payload 4.0.0-internal.cd69eef → 4.0.0-internal.ce66a41

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 (1802) hide show
  1. package/bin.js +17 -24
  2. package/dist/admin/RichText.d.ts +23 -1
  3. package/dist/admin/RichText.d.ts.map +1 -1
  4. package/dist/admin/RichText.js.map +1 -1
  5. package/dist/admin/adapters/devReload.d.ts +13 -0
  6. package/dist/admin/adapters/devReload.d.ts.map +1 -1
  7. package/dist/admin/adapters/devReload.js +14 -1
  8. package/dist/admin/adapters/devReload.js.map +1 -1
  9. package/dist/admin/fields/Array.d.ts +11 -13
  10. package/dist/admin/fields/Array.d.ts.map +1 -1
  11. package/dist/admin/fields/Array.js.map +1 -1
  12. package/dist/admin/fields/Blocks.d.ts +13 -16
  13. package/dist/admin/fields/Blocks.d.ts.map +1 -1
  14. package/dist/admin/fields/Blocks.js.map +1 -1
  15. package/dist/admin/fields/Checkbox.d.ts +11 -13
  16. package/dist/admin/fields/Checkbox.d.ts.map +1 -1
  17. package/dist/admin/fields/Checkbox.js.map +1 -1
  18. package/dist/admin/fields/Code.d.ts +11 -13
  19. package/dist/admin/fields/Code.d.ts.map +1 -1
  20. package/dist/admin/fields/Code.js.map +1 -1
  21. package/dist/admin/fields/Collapsible.d.ts +11 -13
  22. package/dist/admin/fields/Collapsible.d.ts.map +1 -1
  23. package/dist/admin/fields/Collapsible.js.map +1 -1
  24. package/dist/admin/fields/Date.d.ts +11 -13
  25. package/dist/admin/fields/Date.d.ts.map +1 -1
  26. package/dist/admin/fields/Date.js.map +1 -1
  27. package/dist/admin/fields/Email.d.ts +11 -13
  28. package/dist/admin/fields/Email.d.ts.map +1 -1
  29. package/dist/admin/fields/Email.js.map +1 -1
  30. package/dist/admin/fields/Group.d.ts +11 -13
  31. package/dist/admin/fields/Group.d.ts.map +1 -1
  32. package/dist/admin/fields/Group.js.map +1 -1
  33. package/dist/admin/fields/JSON.d.ts +11 -13
  34. package/dist/admin/fields/JSON.d.ts.map +1 -1
  35. package/dist/admin/fields/JSON.js.map +1 -1
  36. package/dist/admin/fields/Join.d.ts +12 -14
  37. package/dist/admin/fields/Join.d.ts.map +1 -1
  38. package/dist/admin/fields/Join.js.map +1 -1
  39. package/dist/admin/fields/Number.d.ts +11 -13
  40. package/dist/admin/fields/Number.d.ts.map +1 -1
  41. package/dist/admin/fields/Number.js.map +1 -1
  42. package/dist/admin/fields/Point.d.ts +11 -13
  43. package/dist/admin/fields/Point.d.ts.map +1 -1
  44. package/dist/admin/fields/Point.js.map +1 -1
  45. package/dist/admin/fields/Radio.d.ts +11 -13
  46. package/dist/admin/fields/Radio.d.ts.map +1 -1
  47. package/dist/admin/fields/Radio.js.map +1 -1
  48. package/dist/admin/fields/Relationship.d.ts +11 -13
  49. package/dist/admin/fields/Relationship.d.ts.map +1 -1
  50. package/dist/admin/fields/Relationship.js.map +1 -1
  51. package/dist/admin/fields/RichText.d.ts +13 -15
  52. package/dist/admin/fields/RichText.d.ts.map +1 -1
  53. package/dist/admin/fields/RichText.js.map +1 -1
  54. package/dist/admin/fields/Row.d.ts +10 -12
  55. package/dist/admin/fields/Row.d.ts.map +1 -1
  56. package/dist/admin/fields/Row.js.map +1 -1
  57. package/dist/admin/fields/Select.d.ts +11 -13
  58. package/dist/admin/fields/Select.d.ts.map +1 -1
  59. package/dist/admin/fields/Select.js.map +1 -1
  60. package/dist/admin/fields/Tabs.d.ts +11 -13
  61. package/dist/admin/fields/Tabs.d.ts.map +1 -1
  62. package/dist/admin/fields/Tabs.js.map +1 -1
  63. package/dist/admin/fields/Text.d.ts +11 -13
  64. package/dist/admin/fields/Text.d.ts.map +1 -1
  65. package/dist/admin/fields/Text.js.map +1 -1
  66. package/dist/admin/fields/Textarea.d.ts +11 -13
  67. package/dist/admin/fields/Textarea.d.ts.map +1 -1
  68. package/dist/admin/fields/Textarea.js.map +1 -1
  69. package/dist/admin/fields/UI.d.ts +3 -5
  70. package/dist/admin/fields/UI.d.ts.map +1 -1
  71. package/dist/admin/fields/UI.js.map +1 -1
  72. package/dist/admin/fields/Upload.d.ts +11 -13
  73. package/dist/admin/fields/Upload.d.ts.map +1 -1
  74. package/dist/admin/fields/Upload.js.map +1 -1
  75. package/dist/admin/forms/Description.d.ts +0 -2
  76. package/dist/admin/forms/Description.d.ts.map +1 -1
  77. package/dist/admin/forms/Description.js.map +1 -1
  78. package/dist/admin/forms/Diff.d.ts +0 -2
  79. package/dist/admin/forms/Diff.d.ts.map +1 -1
  80. package/dist/admin/forms/Diff.js.map +1 -1
  81. package/dist/admin/forms/Error.d.ts +0 -2
  82. package/dist/admin/forms/Error.d.ts.map +1 -1
  83. package/dist/admin/forms/Error.js.map +1 -1
  84. package/dist/admin/forms/Field.d.ts +4 -2
  85. package/dist/admin/forms/Field.d.ts.map +1 -1
  86. package/dist/admin/forms/Field.js.map +1 -1
  87. package/dist/admin/forms/Form.d.ts +2 -0
  88. package/dist/admin/forms/Form.d.ts.map +1 -1
  89. package/dist/admin/forms/Form.js.map +1 -1
  90. package/dist/admin/forms/Label.d.ts +2 -2
  91. package/dist/admin/forms/Label.d.ts.map +1 -1
  92. package/dist/admin/forms/Label.js.map +1 -1
  93. package/dist/admin/functions/index.d.ts +15 -11
  94. package/dist/admin/functions/index.d.ts.map +1 -1
  95. package/dist/admin/functions/index.js.map +1 -1
  96. package/dist/admin/getRequestLocale.d.ts +6 -0
  97. package/dist/admin/getRequestLocale.d.ts.map +1 -0
  98. package/dist/admin/getRequestLocale.js +38 -0
  99. package/dist/admin/getRequestLocale.js.map +1 -0
  100. package/dist/admin/initAdminContext.d.ts +39 -0
  101. package/dist/admin/initAdminContext.d.ts.map +1 -0
  102. package/dist/admin/initAdminContext.js +154 -0
  103. package/dist/admin/initAdminContext.js.map +1 -0
  104. package/dist/admin/types.d.ts +32 -32
  105. package/dist/admin/types.d.ts.map +1 -1
  106. package/dist/admin/types.js.map +1 -1
  107. package/dist/admin/views/dashboard.d.ts +2 -2
  108. package/dist/admin/views/dashboard.d.ts.map +1 -1
  109. package/dist/admin/views/dashboard.js.map +1 -1
  110. package/dist/admin/views/index.d.ts +2 -2
  111. package/dist/admin/views/index.d.ts.map +1 -1
  112. package/dist/admin/views/index.js.map +1 -1
  113. package/dist/admin/views/list.d.ts +9 -0
  114. package/dist/admin/views/list.d.ts.map +1 -1
  115. package/dist/admin/views/list.js.map +1 -1
  116. package/dist/auth/applyUserReadAccess.d.ts +13 -0
  117. package/dist/auth/applyUserReadAccess.d.ts.map +1 -0
  118. package/dist/auth/applyUserReadAccess.js +41 -0
  119. package/dist/auth/applyUserReadAccess.js.map +1 -0
  120. package/dist/auth/baseFields/apiKey/canCreateOrUpdateAPIKey.d.ts +4 -0
  121. package/dist/auth/baseFields/apiKey/canCreateOrUpdateAPIKey.d.ts.map +1 -0
  122. package/dist/auth/baseFields/apiKey/canCreateOrUpdateAPIKey.js +20 -0
  123. package/dist/auth/baseFields/apiKey/canCreateOrUpdateAPIKey.js.map +1 -0
  124. package/dist/auth/baseFields/apiKey/encryptAPIKey.d.ts +4 -0
  125. package/dist/auth/baseFields/apiKey/encryptAPIKey.d.ts.map +1 -0
  126. package/dist/auth/baseFields/apiKey/encryptAPIKey.js +11 -0
  127. package/dist/auth/baseFields/apiKey/encryptAPIKey.js.map +1 -0
  128. package/dist/auth/baseFields/apiKey/getAPIKeyLast4.d.ts +3 -0
  129. package/dist/auth/baseFields/apiKey/getAPIKeyLast4.d.ts.map +1 -0
  130. package/dist/auth/baseFields/apiKey/getAPIKeyLast4.js +5 -0
  131. package/dist/auth/baseFields/apiKey/getAPIKeyLast4.js.map +1 -0
  132. package/dist/auth/baseFields/apiKey/omitAPIKey.d.ts +5 -0
  133. package/dist/auth/baseFields/apiKey/omitAPIKey.d.ts.map +1 -0
  134. package/dist/auth/baseFields/apiKey/omitAPIKey.js +11 -0
  135. package/dist/auth/baseFields/apiKey/omitAPIKey.js.map +1 -0
  136. package/dist/auth/baseFields/apiKey/omitAPIKeyIndex.d.ts +4 -0
  137. package/dist/auth/baseFields/apiKey/omitAPIKeyIndex.d.ts.map +1 -0
  138. package/dist/auth/baseFields/apiKey/omitAPIKeyIndex.js +5 -0
  139. package/dist/auth/baseFields/apiKey/omitAPIKeyIndex.js.map +1 -0
  140. package/dist/auth/baseFields/apiKey/omitEncryptedAPIKey.d.ts +4 -0
  141. package/dist/auth/baseFields/apiKey/omitEncryptedAPIKey.d.ts.map +1 -0
  142. package/dist/auth/baseFields/apiKey/omitEncryptedAPIKey.js +5 -0
  143. package/dist/auth/baseFields/apiKey/omitEncryptedAPIKey.js.map +1 -0
  144. package/dist/auth/baseFields/apiKey/setAPIKeyIndex.d.ts +4 -0
  145. package/dist/auth/baseFields/apiKey/setAPIKeyIndex.d.ts.map +1 -0
  146. package/dist/auth/baseFields/apiKey/setAPIKeyIndex.js +12 -0
  147. package/dist/auth/baseFields/apiKey/setAPIKeyIndex.js.map +1 -0
  148. package/dist/auth/baseFields/apiKey/setKeyLast4.d.ts +4 -0
  149. package/dist/auth/baseFields/apiKey/setKeyLast4.d.ts.map +1 -0
  150. package/dist/auth/baseFields/apiKey/setKeyLast4.js +12 -0
  151. package/dist/auth/baseFields/apiKey/setKeyLast4.js.map +1 -0
  152. package/dist/auth/baseFields/apiKey.d.ts +6 -6
  153. package/dist/auth/baseFields/apiKey.d.ts.map +1 -1
  154. package/dist/auth/baseFields/apiKey.js +88 -57
  155. package/dist/auth/baseFields/apiKey.js.map +1 -1
  156. package/dist/auth/baseFields/auth.d.ts +1 -0
  157. package/dist/auth/baseFields/auth.d.ts.map +1 -1
  158. package/dist/auth/baseFields/auth.js +9 -0
  159. package/dist/auth/baseFields/auth.js.map +1 -1
  160. package/dist/auth/crypto.d.ts +73 -2
  161. package/dist/auth/crypto.d.ts.map +1 -1
  162. package/dist/auth/crypto.js +90 -13
  163. package/dist/auth/crypto.js.map +1 -1
  164. package/dist/auth/defaultUnlockAccess.d.ts +3 -0
  165. package/dist/auth/defaultUnlockAccess.d.ts.map +1 -0
  166. package/dist/auth/defaultUnlockAccess.js +8 -0
  167. package/dist/auth/defaultUnlockAccess.js.map +1 -0
  168. package/dist/auth/endpoints/index.d.ts +1 -0
  169. package/dist/auth/endpoints/index.d.ts.map +1 -1
  170. package/dist/auth/endpoints/index.js +8 -0
  171. package/dist/auth/endpoints/index.js.map +1 -1
  172. package/dist/auth/endpoints/login.d.ts.map +1 -1
  173. package/dist/auth/endpoints/login.js +2 -11
  174. package/dist/auth/endpoints/login.js.map +1 -1
  175. package/dist/auth/endpoints/refresh.d.ts.map +1 -1
  176. package/dist/auth/endpoints/refresh.js +4 -6
  177. package/dist/auth/endpoints/refresh.js.map +1 -1
  178. package/dist/auth/endpoints/revealAPIKey.d.ts +7 -0
  179. package/dist/auth/endpoints/revealAPIKey.d.ts.map +1 -0
  180. package/dist/auth/endpoints/revealAPIKey.js +122 -0
  181. package/dist/auth/endpoints/revealAPIKey.js.map +1 -0
  182. package/dist/auth/executeAccess.d.ts +2 -1
  183. package/dist/auth/executeAccess.d.ts.map +1 -1
  184. package/dist/auth/executeAccess.js +2 -1
  185. package/dist/auth/executeAccess.js.map +1 -1
  186. package/dist/auth/getAccessResults.js +1 -0
  187. package/dist/auth/getAccessResults.js.map +1 -1
  188. package/dist/auth/getAuthFields.d.ts +1 -1
  189. package/dist/auth/getAuthFields.d.ts.map +1 -1
  190. package/dist/auth/getAuthFields.js +7 -4
  191. package/dist/auth/getAuthFields.js.map +1 -1
  192. package/dist/auth/getFieldsToSign.d.ts.map +1 -1
  193. package/dist/auth/getFieldsToSign.js +20 -10
  194. package/dist/auth/getFieldsToSign.js.map +1 -1
  195. package/dist/auth/getLoginOptions.js.map +1 -1
  196. package/dist/auth/jwt.d.ts.map +1 -1
  197. package/dist/auth/jwt.js +2 -0
  198. package/dist/auth/jwt.js.map +1 -1
  199. package/dist/auth/jwtAuth.d.ts +9 -0
  200. package/dist/auth/jwtAuth.d.ts.map +1 -0
  201. package/dist/auth/jwtAuth.js +8 -0
  202. package/dist/auth/jwtAuth.js.map +1 -0
  203. package/dist/auth/loginWithCookie.d.ts +33 -0
  204. package/dist/auth/loginWithCookie.d.ts.map +1 -0
  205. package/dist/auth/loginWithCookie.js +34 -0
  206. package/dist/auth/loginWithCookie.js.map +1 -0
  207. package/dist/auth/operations/access.d.ts.map +1 -1
  208. package/dist/auth/operations/access.js +3 -9
  209. package/dist/auth/operations/access.js.map +1 -1
  210. package/dist/auth/operations/auth.d.ts.map +1 -1
  211. package/dist/auth/operations/auth.js +16 -21
  212. package/dist/auth/operations/auth.js.map +1 -1
  213. package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
  214. package/dist/auth/operations/forgotPassword.js +97 -14
  215. package/dist/auth/operations/forgotPassword.js.map +1 -1
  216. package/dist/auth/operations/local/auth.js +7 -4
  217. package/dist/auth/operations/local/auth.js.map +1 -1
  218. package/dist/auth/operations/local/forgotPassword.d.ts +2 -2
  219. package/dist/auth/operations/local/forgotPassword.d.ts.map +1 -1
  220. package/dist/auth/operations/local/forgotPassword.js +6 -3
  221. package/dist/auth/operations/local/forgotPassword.js.map +1 -1
  222. package/dist/auth/operations/local/login.d.ts +2 -2
  223. package/dist/auth/operations/local/login.d.ts.map +1 -1
  224. package/dist/auth/operations/local/login.js +6 -3
  225. package/dist/auth/operations/local/login.js.map +1 -1
  226. package/dist/auth/operations/local/resetPassword.js +5 -2
  227. package/dist/auth/operations/local/resetPassword.js.map +1 -1
  228. package/dist/auth/operations/local/unlock.d.ts +2 -2
  229. package/dist/auth/operations/local/unlock.d.ts.map +1 -1
  230. package/dist/auth/operations/local/unlock.js +6 -3
  231. package/dist/auth/operations/local/unlock.js.map +1 -1
  232. package/dist/auth/operations/local/verifyEmail.js +5 -2
  233. package/dist/auth/operations/local/verifyEmail.js.map +1 -1
  234. package/dist/auth/operations/login.d.ts.map +1 -1
  235. package/dist/auth/operations/login.js +48 -26
  236. package/dist/auth/operations/login.js.map +1 -1
  237. package/dist/auth/operations/me.d.ts +0 -7
  238. package/dist/auth/operations/me.d.ts.map +1 -1
  239. package/dist/auth/operations/me.js +0 -6
  240. package/dist/auth/operations/me.js.map +1 -1
  241. package/dist/auth/operations/refresh.d.ts +0 -7
  242. package/dist/auth/operations/refresh.d.ts.map +1 -1
  243. package/dist/auth/operations/refresh.js +32 -15
  244. package/dist/auth/operations/refresh.js.map +1 -1
  245. package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
  246. package/dist/auth/operations/registerFirstUser.js +4 -4
  247. package/dist/auth/operations/registerFirstUser.js.map +1 -1
  248. package/dist/auth/operations/resetPassword.d.ts.map +1 -1
  249. package/dist/auth/operations/resetPassword.js +31 -22
  250. package/dist/auth/operations/resetPassword.js.map +1 -1
  251. package/dist/auth/operations/unlock.d.ts.map +1 -1
  252. package/dist/auth/operations/unlock.js +1 -0
  253. package/dist/auth/operations/unlock.js.map +1 -1
  254. package/dist/auth/rotateSecret.d.ts +51 -0
  255. package/dist/auth/rotateSecret.d.ts.map +1 -0
  256. package/dist/auth/rotateSecret.js +131 -0
  257. package/dist/auth/rotateSecret.js.map +1 -0
  258. package/dist/auth/serverFunctions/cookies.d.ts +47 -0
  259. package/dist/auth/serverFunctions/cookies.d.ts.map +1 -0
  260. package/dist/auth/serverFunctions/cookies.js +52 -0
  261. package/dist/auth/serverFunctions/cookies.js.map +1 -0
  262. package/dist/auth/serverFunctions/login.d.ts +29 -0
  263. package/dist/auth/serverFunctions/login.d.ts.map +1 -0
  264. package/dist/auth/serverFunctions/login.js +65 -0
  265. package/dist/auth/serverFunctions/login.js.map +1 -0
  266. package/dist/auth/serverFunctions/logout.d.ts +17 -0
  267. package/dist/auth/serverFunctions/logout.d.ts.map +1 -0
  268. package/dist/auth/serverFunctions/logout.js +59 -0
  269. package/dist/auth/serverFunctions/logout.js.map +1 -0
  270. package/dist/auth/serverFunctions/refresh.d.ts +17 -0
  271. package/dist/auth/serverFunctions/refresh.d.ts.map +1 -0
  272. package/dist/auth/serverFunctions/refresh.js +62 -0
  273. package/dist/auth/serverFunctions/refresh.js.map +1 -0
  274. package/dist/auth/strategies/apiKey.d.ts.map +1 -1
  275. package/dist/auth/strategies/apiKey.js +42 -4
  276. package/dist/auth/strategies/apiKey.js.map +1 -1
  277. package/dist/auth/strategies/jwt.d.ts.map +1 -1
  278. package/dist/auth/strategies/jwt.js +83 -11
  279. package/dist/auth/strategies/jwt.js.map +1 -1
  280. package/dist/auth/strategies/local/authenticate.d.ts +5 -1
  281. package/dist/auth/strategies/local/authenticate.d.ts.map +1 -1
  282. package/dist/auth/strategies/local/authenticate.js +8 -3
  283. package/dist/auth/strategies/local/authenticate.js.map +1 -1
  284. package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts +9 -1
  285. package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts.map +1 -1
  286. package/dist/auth/strategies/local/generatePasswordSaltHash.js +61 -34
  287. package/dist/auth/strategies/local/generatePasswordSaltHash.js.map +1 -1
  288. package/dist/auth/strategies/local/register.d.ts.map +1 -1
  289. package/dist/auth/strategies/local/register.js +1 -0
  290. package/dist/auth/strategies/local/register.js.map +1 -1
  291. package/dist/auth/types.d.ts +36 -20
  292. package/dist/auth/types.d.ts.map +1 -1
  293. package/dist/auth/types.js.map +1 -1
  294. package/dist/auth/withBaseAccess.d.ts +22 -0
  295. package/dist/auth/withBaseAccess.d.ts.map +1 -0
  296. package/dist/auth/withBaseAccess.js +61 -0
  297. package/dist/auth/withBaseAccess.js.map +1 -0
  298. package/dist/{bin → cli/commands/build}/build.d.ts +8 -13
  299. package/dist/cli/commands/build/build.d.ts.map +1 -0
  300. package/dist/{bin → cli/commands/build}/build.js +26 -27
  301. package/dist/cli/commands/build/build.js.map +1 -0
  302. package/dist/cli/commands/build/index.d.ts +2 -0
  303. package/dist/cli/commands/build/index.d.ts.map +1 -0
  304. package/dist/cli/commands/build/index.js +26 -0
  305. package/dist/cli/commands/build/index.js.map +1 -0
  306. package/dist/cli/commands/collections/countDocuments.d.ts +2 -0
  307. package/dist/cli/commands/collections/countDocuments.d.ts.map +1 -0
  308. package/dist/cli/commands/collections/countDocuments.js +37 -0
  309. package/dist/cli/commands/collections/countDocuments.js.map +1 -0
  310. package/dist/cli/commands/collections/countVersions.d.ts +2 -0
  311. package/dist/cli/commands/collections/countVersions.d.ts.map +1 -0
  312. package/dist/cli/commands/collections/countVersions.js +36 -0
  313. package/dist/cli/commands/collections/countVersions.js.map +1 -0
  314. package/dist/cli/commands/collections/createDocuments.d.ts +2 -0
  315. package/dist/cli/commands/collections/createDocuments.d.ts.map +1 -0
  316. package/dist/cli/commands/collections/createDocuments.js +132 -0
  317. package/dist/cli/commands/collections/createDocuments.js.map +1 -0
  318. package/dist/cli/commands/collections/deleteDocuments.d.ts +2 -0
  319. package/dist/cli/commands/collections/deleteDocuments.d.ts.map +1 -0
  320. package/dist/cli/commands/collections/deleteDocuments.js +64 -0
  321. package/dist/cli/commands/collections/deleteDocuments.js.map +1 -0
  322. package/dist/cli/commands/collections/duplicateDocument.d.ts +2 -0
  323. package/dist/cli/commands/collections/duplicateDocument.d.ts.map +1 -0
  324. package/dist/cli/commands/collections/duplicateDocument.js +109 -0
  325. package/dist/cli/commands/collections/duplicateDocument.js.map +1 -0
  326. package/dist/cli/commands/collections/findDistinct.d.ts +2 -0
  327. package/dist/cli/commands/collections/findDistinct.d.ts.map +1 -0
  328. package/dist/cli/commands/collections/findDistinct.js +52 -0
  329. package/dist/cli/commands/collections/findDistinct.js.map +1 -0
  330. package/dist/cli/commands/collections/findDocuments.d.ts +2 -0
  331. package/dist/cli/commands/collections/findDocuments.d.ts.map +1 -0
  332. package/dist/cli/commands/collections/findDocuments.js +79 -0
  333. package/dist/cli/commands/collections/findDocuments.js.map +1 -0
  334. package/dist/cli/commands/collections/findVersionByID.d.ts +2 -0
  335. package/dist/cli/commands/collections/findVersionByID.d.ts.map +1 -0
  336. package/dist/cli/commands/collections/findVersionByID.js +48 -0
  337. package/dist/cli/commands/collections/findVersionByID.js.map +1 -0
  338. package/dist/cli/commands/collections/findVersions.d.ts +2 -0
  339. package/dist/cli/commands/collections/findVersions.d.ts.map +1 -0
  340. package/dist/cli/commands/collections/findVersions.js +57 -0
  341. package/dist/cli/commands/collections/findVersions.js.map +1 -0
  342. package/dist/cli/commands/collections/getCollectionSchema.d.ts +2 -0
  343. package/dist/cli/commands/collections/getCollectionSchema.d.ts.map +1 -0
  344. package/dist/cli/commands/collections/getCollectionSchema.js +61 -0
  345. package/dist/cli/commands/collections/getCollectionSchema.js.map +1 -0
  346. package/dist/cli/commands/collections/restoreVersion.d.ts +2 -0
  347. package/dist/cli/commands/collections/restoreVersion.d.ts.map +1 -0
  348. package/dist/cli/commands/collections/restoreVersion.js +47 -0
  349. package/dist/cli/commands/collections/restoreVersion.js.map +1 -0
  350. package/dist/cli/commands/collections/updateDocument.d.ts +2 -0
  351. package/dist/cli/commands/collections/updateDocument.d.ts.map +1 -0
  352. package/dist/cli/commands/collections/updateDocument.js +192 -0
  353. package/dist/cli/commands/collections/updateDocument.js.map +1 -0
  354. package/dist/cli/commands/data/input.d.ts +28 -0
  355. package/dist/cli/commands/data/input.d.ts.map +1 -0
  356. package/dist/cli/commands/data/input.js +76 -0
  357. package/dist/cli/commands/data/input.js.map +1 -0
  358. package/dist/cli/commands/data/utilities.d.ts +65 -0
  359. package/dist/cli/commands/data/utilities.d.ts.map +1 -0
  360. package/dist/cli/commands/data/utilities.js +67 -0
  361. package/dist/cli/commands/data/utilities.js.map +1 -0
  362. package/dist/cli/commands/generateDBSchema.d.ts +2 -0
  363. package/dist/cli/commands/generateDBSchema.d.ts.map +1 -0
  364. package/dist/cli/commands/generateDBSchema.js +29 -0
  365. package/dist/cli/commands/generateDBSchema.js.map +1 -0
  366. package/dist/cli/commands/generateImportMap/frameworkConventions.d.ts.map +1 -0
  367. package/dist/cli/commands/generateImportMap/frameworkConventions.js.map +1 -0
  368. package/dist/{bin/generateImportMap/index.d.ts → cli/commands/generateImportMap/generateImportMap.d.ts} +8 -4
  369. package/dist/cli/commands/generateImportMap/generateImportMap.d.ts.map +1 -0
  370. package/dist/{bin/generateImportMap/index.js → cli/commands/generateImportMap/generateImportMap.js} +9 -4
  371. package/dist/cli/commands/generateImportMap/generateImportMap.js.map +1 -0
  372. package/dist/cli/commands/generateImportMap/index.d.ts +2 -0
  373. package/dist/cli/commands/generateImportMap/index.d.ts.map +1 -0
  374. package/dist/cli/commands/generateImportMap/index.js +18 -0
  375. package/dist/cli/commands/generateImportMap/index.js.map +1 -0
  376. package/dist/{bin → cli/commands}/generateImportMap/iterateCollections.d.ts +3 -3
  377. package/dist/cli/commands/generateImportMap/iterateCollections.d.ts.map +1 -0
  378. package/dist/cli/commands/generateImportMap/iterateCollections.js.map +1 -0
  379. package/dist/{bin → cli/commands}/generateImportMap/iterateConfig.d.ts +2 -2
  380. package/dist/cli/commands/generateImportMap/iterateConfig.d.ts.map +1 -0
  381. package/dist/{bin → cli/commands}/generateImportMap/iterateConfig.js +1 -1
  382. package/dist/cli/commands/generateImportMap/iterateConfig.js.map +1 -0
  383. package/dist/{bin → cli/commands}/generateImportMap/iterateFields.d.ts +3 -3
  384. package/dist/cli/commands/generateImportMap/iterateFields.d.ts.map +1 -0
  385. package/dist/cli/commands/generateImportMap/iterateFields.js.map +1 -0
  386. package/dist/{bin → cli/commands}/generateImportMap/iterateGlobals.d.ts +3 -3
  387. package/dist/cli/commands/generateImportMap/iterateGlobals.d.ts.map +1 -0
  388. package/dist/cli/commands/generateImportMap/iterateGlobals.js.map +1 -0
  389. package/dist/{bin → cli/commands}/generateImportMap/utilities/addPayloadComponentToImportMap.d.ts +2 -2
  390. package/dist/cli/commands/generateImportMap/utilities/addPayloadComponentToImportMap.d.ts.map +1 -0
  391. package/dist/cli/commands/generateImportMap/utilities/addPayloadComponentToImportMap.js.map +1 -0
  392. package/dist/{bin → cli/commands}/generateImportMap/utilities/getFromImportMap.d.ts +2 -2
  393. package/dist/cli/commands/generateImportMap/utilities/getFromImportMap.d.ts.map +1 -0
  394. package/dist/cli/commands/generateImportMap/utilities/getFromImportMap.js.map +1 -0
  395. package/dist/cli/commands/generateImportMap/utilities/getImportMapToBaseDirPath.d.ts.map +1 -0
  396. package/dist/cli/commands/generateImportMap/utilities/getImportMapToBaseDirPath.js.map +1 -0
  397. package/dist/{bin → cli/commands}/generateImportMap/utilities/parsePayloadComponent.d.ts +1 -1
  398. package/dist/cli/commands/generateImportMap/utilities/parsePayloadComponent.d.ts.map +1 -0
  399. package/dist/cli/commands/generateImportMap/utilities/parsePayloadComponent.js.map +1 -0
  400. package/dist/cli/commands/generateImportMap/utilities/resolveImportMapFilePath.d.ts.map +1 -0
  401. package/dist/{bin → cli/commands}/generateImportMap/utilities/resolveImportMapFilePath.js +1 -1
  402. package/dist/cli/commands/generateImportMap/utilities/resolveImportMapFilePath.js.map +1 -0
  403. package/dist/cli/commands/generateTypes.d.ts +12 -0
  404. package/dist/cli/commands/generateTypes.d.ts.map +1 -0
  405. package/dist/{bin → cli/commands}/generateTypes.js +33 -7
  406. package/dist/cli/commands/generateTypes.js.map +1 -0
  407. package/dist/cli/commands/getConfigInfo.d.ts +2 -0
  408. package/dist/cli/commands/getConfigInfo.d.ts.map +1 -0
  409. package/dist/cli/commands/getConfigInfo.js +23 -0
  410. package/dist/cli/commands/getConfigInfo.js.map +1 -0
  411. package/dist/cli/commands/globals/countGlobalVersions.d.ts +2 -0
  412. package/dist/cli/commands/globals/countGlobalVersions.d.ts.map +1 -0
  413. package/dist/cli/commands/globals/countGlobalVersions.js +36 -0
  414. package/dist/cli/commands/globals/countGlobalVersions.js.map +1 -0
  415. package/dist/cli/commands/globals/findGlobal.d.ts +2 -0
  416. package/dist/cli/commands/globals/findGlobal.d.ts.map +1 -0
  417. package/dist/cli/commands/globals/findGlobal.js +42 -0
  418. package/dist/cli/commands/globals/findGlobal.js.map +1 -0
  419. package/dist/cli/commands/globals/findGlobalVersionByID.d.ts +2 -0
  420. package/dist/cli/commands/globals/findGlobalVersionByID.d.ts.map +1 -0
  421. package/dist/cli/commands/globals/findGlobalVersionByID.js +46 -0
  422. package/dist/cli/commands/globals/findGlobalVersionByID.js.map +1 -0
  423. package/dist/cli/commands/globals/findGlobalVersions.d.ts +2 -0
  424. package/dist/cli/commands/globals/findGlobalVersions.d.ts.map +1 -0
  425. package/dist/cli/commands/globals/findGlobalVersions.js +55 -0
  426. package/dist/cli/commands/globals/findGlobalVersions.js.map +1 -0
  427. package/dist/cli/commands/globals/getGlobalSchema.d.ts +2 -0
  428. package/dist/cli/commands/globals/getGlobalSchema.d.ts.map +1 -0
  429. package/dist/cli/commands/globals/getGlobalSchema.js +46 -0
  430. package/dist/cli/commands/globals/getGlobalSchema.js.map +1 -0
  431. package/dist/cli/commands/globals/restoreGlobalVersion.d.ts +2 -0
  432. package/dist/cli/commands/globals/restoreGlobalVersion.d.ts.map +1 -0
  433. package/dist/cli/commands/globals/restoreGlobalVersion.js +46 -0
  434. package/dist/cli/commands/globals/restoreGlobalVersion.js.map +1 -0
  435. package/dist/cli/commands/globals/updateGlobal.d.ts +2 -0
  436. package/dist/cli/commands/globals/updateGlobal.d.ts.map +1 -0
  437. package/dist/cli/commands/globals/updateGlobal.js +95 -0
  438. package/dist/cli/commands/globals/updateGlobal.js.map +1 -0
  439. package/dist/cli/commands/help.d.ts +2 -0
  440. package/dist/cli/commands/help.d.ts.map +1 -0
  441. package/dist/cli/commands/help.js +42 -0
  442. package/dist/cli/commands/help.js.map +1 -0
  443. package/dist/cli/commands/info.d.ts +2 -0
  444. package/dist/cli/commands/info.d.ts.map +1 -0
  445. package/dist/cli/commands/info.js +78 -0
  446. package/dist/cli/commands/info.js.map +1 -0
  447. package/dist/cli/commands/jobs/handleSchedules.d.ts +2 -0
  448. package/dist/cli/commands/jobs/handleSchedules.d.ts.map +1 -0
  449. package/dist/cli/commands/jobs/handleSchedules.js +17 -0
  450. package/dist/cli/commands/jobs/handleSchedules.js.map +1 -0
  451. package/dist/cli/commands/jobs/run.d.ts +2 -0
  452. package/dist/cli/commands/jobs/run.d.ts.map +1 -0
  453. package/dist/cli/commands/jobs/run.js +30 -0
  454. package/dist/cli/commands/jobs/run.js.map +1 -0
  455. package/dist/cli/commands/migrate/create.d.ts +2 -0
  456. package/dist/cli/commands/migrate/create.d.ts.map +1 -0
  457. package/dist/cli/commands/migrate/create.js +44 -0
  458. package/dist/cli/commands/migrate/create.js.map +1 -0
  459. package/dist/cli/commands/migrate/down.d.ts +2 -0
  460. package/dist/cli/commands/migrate/down.d.ts.map +1 -0
  461. package/dist/cli/commands/migrate/down.js +22 -0
  462. package/dist/cli/commands/migrate/down.js.map +1 -0
  463. package/dist/cli/commands/migrate/fresh.d.ts +2 -0
  464. package/dist/cli/commands/migrate/fresh.d.ts.map +1 -0
  465. package/dist/cli/commands/migrate/fresh.js +28 -0
  466. package/dist/cli/commands/migrate/fresh.js.map +1 -0
  467. package/dist/cli/commands/migrate/initialize.d.ts +11 -0
  468. package/dist/cli/commands/migrate/initialize.d.ts.map +1 -0
  469. package/dist/cli/commands/migrate/initialize.js +17 -0
  470. package/dist/cli/commands/migrate/initialize.js.map +1 -0
  471. package/dist/cli/commands/migrate/refresh.d.ts +2 -0
  472. package/dist/cli/commands/migrate/refresh.d.ts.map +1 -0
  473. package/dist/cli/commands/migrate/refresh.js +22 -0
  474. package/dist/cli/commands/migrate/refresh.js.map +1 -0
  475. package/dist/cli/commands/migrate/reset.d.ts +2 -0
  476. package/dist/cli/commands/migrate/reset.d.ts.map +1 -0
  477. package/dist/cli/commands/migrate/reset.js +22 -0
  478. package/dist/cli/commands/migrate/reset.js.map +1 -0
  479. package/dist/cli/commands/migrate/run.d.ts +2 -0
  480. package/dist/cli/commands/migrate/run.d.ts.map +1 -0
  481. package/dist/cli/commands/migrate/run.js +28 -0
  482. package/dist/cli/commands/migrate/run.js.map +1 -0
  483. package/dist/cli/commands/migrate/status.d.ts +2 -0
  484. package/dist/cli/commands/migrate/status.d.ts.map +1 -0
  485. package/dist/cli/commands/migrate/status.js +22 -0
  486. package/dist/cli/commands/migrate/status.js.map +1 -0
  487. package/dist/cli/commands/run.d.ts +2 -0
  488. package/dist/cli/commands/run.d.ts.map +1 -0
  489. package/dist/cli/commands/run.js +45 -0
  490. package/dist/cli/commands/run.js.map +1 -0
  491. package/dist/cli/defineCLICommand.d.ts +32 -0
  492. package/dist/cli/defineCLICommand.d.ts.map +1 -0
  493. package/dist/cli/defineCLICommand.js +26 -0
  494. package/dist/cli/defineCLICommand.js.map +1 -0
  495. package/dist/cli/index.d.ts +7 -0
  496. package/dist/cli/index.d.ts.map +1 -0
  497. package/dist/cli/index.js +95 -0
  498. package/dist/cli/index.js.map +1 -0
  499. package/dist/cli/program/createHelp.d.ts +8 -0
  500. package/dist/cli/program/createHelp.d.ts.map +1 -0
  501. package/dist/cli/program/createHelp.js +26 -0
  502. package/dist/cli/program/createHelp.js.map +1 -0
  503. package/dist/cli/program/loadCommands.d.ts +12 -0
  504. package/dist/cli/program/loadCommands.d.ts.map +1 -0
  505. package/dist/cli/program/loadCommands.js +62 -0
  506. package/dist/cli/program/loadCommands.js.map +1 -0
  507. package/dist/cli/program/normalizeHelpArguments.d.ts +12 -0
  508. package/dist/cli/program/normalizeHelpArguments.d.ts.map +1 -0
  509. package/dist/cli/program/normalizeHelpArguments.js +34 -0
  510. package/dist/cli/program/normalizeHelpArguments.js.map +1 -0
  511. package/dist/cli/program/registerCommand.d.ts +10 -0
  512. package/dist/cli/program/registerCommand.d.ts.map +1 -0
  513. package/dist/cli/program/registerCommand.js +185 -0
  514. package/dist/cli/program/registerCommand.js.map +1 -0
  515. package/dist/cli/runtime/createRuntime.d.ts +9 -0
  516. package/dist/cli/runtime/createRuntime.d.ts.map +1 -0
  517. package/dist/cli/runtime/createRuntime.js +81 -0
  518. package/dist/cli/runtime/createRuntime.js.map +1 -0
  519. package/dist/cli/runtime/getCommandInput.d.ts +17 -0
  520. package/dist/cli/runtime/getCommandInput.d.ts.map +1 -0
  521. package/dist/cli/runtime/getCommandInput.js +86 -0
  522. package/dist/cli/runtime/getCommandInput.js.map +1 -0
  523. package/dist/cli/runtime/invokeCommand.d.ts +23 -0
  524. package/dist/cli/runtime/invokeCommand.d.ts.map +1 -0
  525. package/dist/cli/runtime/invokeCommand.js +107 -0
  526. package/dist/cli/runtime/invokeCommand.js.map +1 -0
  527. package/dist/cli/runtime/loadEnv.d.ts.map +1 -0
  528. package/dist/{bin → cli/runtime}/loadEnv.js +1 -1
  529. package/dist/cli/runtime/loadEnv.js.map +1 -0
  530. package/dist/cli/runtime/output.d.ts +50 -0
  531. package/dist/cli/runtime/output.d.ts.map +1 -0
  532. package/dist/cli/runtime/output.js +125 -0
  533. package/dist/cli/runtime/output.js.map +1 -0
  534. package/dist/cli/runtime/redirectOutputToStderr.d.ts +8 -0
  535. package/dist/cli/runtime/redirectOutputToStderr.d.ts.map +1 -0
  536. package/dist/cli/runtime/redirectOutputToStderr.js +31 -0
  537. package/dist/cli/runtime/redirectOutputToStderr.js.map +1 -0
  538. package/dist/collections/config/client.d.ts +6 -6
  539. package/dist/collections/config/client.d.ts.map +1 -1
  540. package/dist/collections/config/client.js +12 -11
  541. package/dist/collections/config/client.js.map +1 -1
  542. package/dist/collections/config/defaults.d.ts +6 -4
  543. package/dist/collections/config/defaults.d.ts.map +1 -1
  544. package/dist/collections/config/defaults.js +49 -33
  545. package/dist/collections/config/defaults.js.map +1 -1
  546. package/dist/collections/config/sanitize.d.ts +4 -8
  547. package/dist/collections/config/sanitize.d.ts.map +1 -1
  548. package/dist/collections/config/sanitize.js +100 -28
  549. package/dist/collections/config/sanitize.js.map +1 -1
  550. package/dist/collections/config/types.d.ts +76 -51
  551. package/dist/collections/config/types.d.ts.map +1 -1
  552. package/dist/collections/config/types.js.map +1 -1
  553. package/dist/collections/config/useAsThumbnail.d.ts +6 -0
  554. package/dist/collections/config/useAsThumbnail.d.ts.map +1 -0
  555. package/dist/collections/config/useAsThumbnail.js +21 -0
  556. package/dist/collections/config/useAsThumbnail.js.map +1 -0
  557. package/dist/collections/endpoints/index.d.ts +1 -0
  558. package/dist/collections/endpoints/index.d.ts.map +1 -1
  559. package/dist/collections/endpoints/index.js +6 -5
  560. package/dist/collections/endpoints/index.js.map +1 -1
  561. package/dist/collections/operations/count.d.ts.map +1 -1
  562. package/dist/collections/operations/count.js +65 -70
  563. package/dist/collections/operations/count.js.map +1 -1
  564. package/dist/collections/operations/countVersions.d.ts.map +1 -1
  565. package/dist/collections/operations/countVersions.js +61 -66
  566. package/dist/collections/operations/countVersions.js.map +1 -1
  567. package/dist/collections/operations/create.d.ts.map +1 -1
  568. package/dist/collections/operations/create.js +144 -13
  569. package/dist/collections/operations/create.js.map +1 -1
  570. package/dist/collections/operations/delete.d.ts.map +1 -1
  571. package/dist/collections/operations/delete.js +215 -129
  572. package/dist/collections/operations/delete.js.map +1 -1
  573. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  574. package/dist/collections/operations/deleteByID.js +14 -13
  575. package/dist/collections/operations/deleteByID.js.map +1 -1
  576. package/dist/collections/operations/docAccess.d.ts.map +1 -1
  577. package/dist/collections/operations/docAccess.js +19 -25
  578. package/dist/collections/operations/docAccess.js.map +1 -1
  579. package/dist/collections/operations/find.d.ts.map +1 -1
  580. package/dist/collections/operations/find.js +248 -246
  581. package/dist/collections/operations/find.js.map +1 -1
  582. package/dist/collections/operations/findByID.d.ts.map +1 -1
  583. package/dist/collections/operations/findByID.js +258 -215
  584. package/dist/collections/operations/findByID.js.map +1 -1
  585. package/dist/collections/operations/findDistinct.d.ts.map +1 -1
  586. package/dist/collections/operations/findDistinct.js +235 -154
  587. package/dist/collections/operations/findDistinct.js.map +1 -1
  588. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  589. package/dist/collections/operations/findVersionByID.js +145 -128
  590. package/dist/collections/operations/findVersionByID.js.map +1 -1
  591. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  592. package/dist/collections/operations/findVersions.js +152 -149
  593. package/dist/collections/operations/findVersions.js.map +1 -1
  594. package/dist/collections/operations/inputSchemas.d.ts +877 -0
  595. package/dist/collections/operations/inputSchemas.d.ts.map +1 -0
  596. package/dist/collections/operations/inputSchemas.js +217 -0
  597. package/dist/collections/operations/inputSchemas.js.map +1 -0
  598. package/dist/collections/operations/local/count.d.ts +2 -7
  599. package/dist/collections/operations/local/count.d.ts.map +1 -1
  600. package/dist/collections/operations/local/count.js +6 -3
  601. package/dist/collections/operations/local/count.js.map +1 -1
  602. package/dist/collections/operations/local/countVersions.d.ts +2 -7
  603. package/dist/collections/operations/local/countVersions.d.ts.map +1 -1
  604. package/dist/collections/operations/local/countVersions.js +6 -3
  605. package/dist/collections/operations/local/countVersions.js.map +1 -1
  606. package/dist/collections/operations/local/create.d.ts +2 -7
  607. package/dist/collections/operations/local/create.d.ts.map +1 -1
  608. package/dist/collections/operations/local/create.js +6 -3
  609. package/dist/collections/operations/local/create.js.map +1 -1
  610. package/dist/collections/operations/local/delete.d.ts +2 -7
  611. package/dist/collections/operations/local/delete.d.ts.map +1 -1
  612. package/dist/collections/operations/local/delete.js +6 -3
  613. package/dist/collections/operations/local/delete.js.map +1 -1
  614. package/dist/collections/operations/local/duplicate.d.ts +2 -7
  615. package/dist/collections/operations/local/duplicate.d.ts.map +1 -1
  616. package/dist/collections/operations/local/duplicate.js +6 -3
  617. package/dist/collections/operations/local/duplicate.js.map +1 -1
  618. package/dist/collections/operations/local/find.d.ts +2 -7
  619. package/dist/collections/operations/local/find.d.ts.map +1 -1
  620. package/dist/collections/operations/local/find.js +6 -3
  621. package/dist/collections/operations/local/find.js.map +1 -1
  622. package/dist/collections/operations/local/findByID.d.ts +2 -7
  623. package/dist/collections/operations/local/findByID.d.ts.map +1 -1
  624. package/dist/collections/operations/local/findByID.js +6 -3
  625. package/dist/collections/operations/local/findByID.js.map +1 -1
  626. package/dist/collections/operations/local/findDistinct.d.ts +2 -7
  627. package/dist/collections/operations/local/findDistinct.d.ts.map +1 -1
  628. package/dist/collections/operations/local/findDistinct.js +6 -3
  629. package/dist/collections/operations/local/findDistinct.js.map +1 -1
  630. package/dist/collections/operations/local/findVersionByID.d.ts +2 -7
  631. package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
  632. package/dist/collections/operations/local/findVersionByID.js +6 -3
  633. package/dist/collections/operations/local/findVersionByID.js.map +1 -1
  634. package/dist/collections/operations/local/findVersions.d.ts +2 -7
  635. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  636. package/dist/collections/operations/local/findVersions.js +6 -3
  637. package/dist/collections/operations/local/findVersions.js.map +1 -1
  638. package/dist/collections/operations/local/restoreVersion.d.ts +2 -7
  639. package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
  640. package/dist/collections/operations/local/restoreVersion.js +6 -3
  641. package/dist/collections/operations/local/restoreVersion.js.map +1 -1
  642. package/dist/collections/operations/local/update.d.ts +2 -7
  643. package/dist/collections/operations/local/update.d.ts.map +1 -1
  644. package/dist/collections/operations/local/update.js +6 -3
  645. package/dist/collections/operations/local/update.js.map +1 -1
  646. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  647. package/dist/collections/operations/restoreVersion.js +48 -13
  648. package/dist/collections/operations/restoreVersion.js.map +1 -1
  649. package/dist/collections/operations/update.d.ts.map +1 -1
  650. package/dist/collections/operations/update.js +148 -24
  651. package/dist/collections/operations/update.js.map +1 -1
  652. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  653. package/dist/collections/operations/updateByID.js +80 -2
  654. package/dist/collections/operations/updateByID.js.map +1 -1
  655. package/dist/collections/operations/utilities/prefetchVersionForInheritedReadAccess.d.ts +15 -0
  656. package/dist/collections/operations/utilities/prefetchVersionForInheritedReadAccess.d.ts.map +1 -0
  657. package/dist/collections/operations/utilities/prefetchVersionForInheritedReadAccess.js +54 -0
  658. package/dist/collections/operations/utilities/prefetchVersionForInheritedReadAccess.js.map +1 -0
  659. package/dist/collections/operations/utilities/update.d.ts +2 -2
  660. package/dist/collections/operations/utilities/update.d.ts.map +1 -1
  661. package/dist/collections/operations/utilities/update.js +83 -19
  662. package/dist/collections/operations/utilities/update.js.map +1 -1
  663. package/dist/config/assertNoLegacySharpConfig.d.ts +21 -0
  664. package/dist/config/assertNoLegacySharpConfig.d.ts.map +1 -0
  665. package/dist/config/assertNoLegacySharpConfig.js +50 -0
  666. package/dist/config/assertNoLegacySharpConfig.js.map +1 -0
  667. package/dist/config/build.d.ts.map +1 -1
  668. package/dist/config/build.js +22 -1
  669. package/dist/config/build.js.map +1 -1
  670. package/dist/config/client.d.ts +2 -2
  671. package/dist/config/client.d.ts.map +1 -1
  672. package/dist/config/client.js +5 -6
  673. package/dist/config/client.js.map +1 -1
  674. package/dist/config/defaults.d.ts.map +1 -1
  675. package/dist/config/defaults.js +98 -43
  676. package/dist/config/defaults.js.map +1 -1
  677. package/dist/config/orderable/index.d.ts +1 -1
  678. package/dist/config/orderable/index.d.ts.map +1 -1
  679. package/dist/config/orderable/index.js +73 -16
  680. package/dist/config/orderable/index.js.map +1 -1
  681. package/dist/config/orderable/utils/getJoinScopeContext.d.ts.map +1 -1
  682. package/dist/config/orderable/utils/getJoinScopeContext.js +1 -0
  683. package/dist/config/orderable/utils/getJoinScopeContext.js.map +1 -1
  684. package/dist/config/orderable/utils/resolvePendingTargetKey.d.ts.map +1 -1
  685. package/dist/config/orderable/utils/resolvePendingTargetKey.js +1 -0
  686. package/dist/config/orderable/utils/resolvePendingTargetKey.js.map +1 -1
  687. package/dist/config/sanitize.d.ts +1 -1
  688. package/dist/config/sanitize.d.ts.map +1 -1
  689. package/dist/config/sanitize.js +98 -38
  690. package/dist/config/sanitize.js.map +1 -1
  691. package/dist/config/types.d.ts +527 -441
  692. package/dist/config/types.d.ts.map +1 -1
  693. package/dist/config/types.js.map +1 -1
  694. package/dist/database/createDatabaseAdapter.d.ts +1 -1
  695. package/dist/database/createDatabaseAdapter.d.ts.map +1 -1
  696. package/dist/database/createDatabaseAdapter.js +4 -2
  697. package/dist/database/createDatabaseAdapter.js.map +1 -1
  698. package/dist/database/createSchemaBuildContext.d.ts +12 -0
  699. package/dist/database/createSchemaBuildContext.d.ts.map +1 -0
  700. package/dist/database/createSchemaBuildContext.js +24 -0
  701. package/dist/database/createSchemaBuildContext.js.map +1 -0
  702. package/dist/database/defaultBatchProcessing.d.ts +3 -0
  703. package/dist/database/defaultBatchProcessing.d.ts.map +1 -0
  704. package/dist/database/defaultBatchProcessing.js +93 -0
  705. package/dist/database/defaultBatchProcessing.js.map +1 -0
  706. package/dist/database/defaultCopy.d.ts +3 -0
  707. package/dist/database/defaultCopy.d.ts.map +1 -0
  708. package/dist/database/defaultCopy.js +73 -0
  709. package/dist/database/defaultCopy.js.map +1 -0
  710. package/dist/database/getLocalizedPaths.d.ts +2 -1
  711. package/dist/database/getLocalizedPaths.d.ts.map +1 -1
  712. package/dist/database/getLocalizedPaths.js +12 -3
  713. package/dist/database/getLocalizedPaths.js.map +1 -1
  714. package/dist/database/isNestedRelationshipQuery.d.ts +14 -0
  715. package/dist/database/isNestedRelationshipQuery.d.ts.map +1 -0
  716. package/dist/database/isNestedRelationshipQuery.js +19 -0
  717. package/dist/database/isNestedRelationshipQuery.js.map +1 -0
  718. package/dist/database/migrations/createMigration.d.ts.map +1 -1
  719. package/dist/database/migrations/createMigration.js +4 -0
  720. package/dist/database/migrations/createMigration.js.map +1 -1
  721. package/dist/database/migrations/getMigrations.d.ts.map +1 -1
  722. package/dist/database/migrations/getMigrations.js +1 -0
  723. package/dist/database/migrations/getMigrations.js.map +1 -1
  724. package/dist/database/migrations/getPredefinedMigration.js +2 -2
  725. package/dist/database/migrations/getPredefinedMigration.js.map +1 -1
  726. package/dist/database/migrations/migrate.d.ts.map +1 -1
  727. package/dist/database/migrations/migrate.js +14 -2
  728. package/dist/database/migrations/migrate.js.map +1 -1
  729. package/dist/database/migrations/migrateDown.d.ts +2 -2
  730. package/dist/database/migrations/migrateDown.d.ts.map +1 -1
  731. package/dist/database/migrations/migrateDown.js +17 -4
  732. package/dist/database/migrations/migrateDown.js.map +1 -1
  733. package/dist/database/migrations/migrateRefresh.d.ts +2 -2
  734. package/dist/database/migrations/migrateRefresh.d.ts.map +1 -1
  735. package/dist/database/migrations/migrateRefresh.js +16 -4
  736. package/dist/database/migrations/migrateRefresh.js.map +1 -1
  737. package/dist/database/migrations/migrateReset.d.ts +2 -2
  738. package/dist/database/migrations/migrateReset.d.ts.map +1 -1
  739. package/dist/database/migrations/migrateReset.js +17 -3
  740. package/dist/database/migrations/migrateReset.js.map +1 -1
  741. package/dist/database/migrations/migrateStatus.d.ts +2 -2
  742. package/dist/database/migrations/migrateStatus.d.ts.map +1 -1
  743. package/dist/database/migrations/migrateStatus.js +11 -6
  744. package/dist/database/migrations/migrateStatus.js.map +1 -1
  745. package/dist/database/migrations/migrationsCollection.d.ts.map +1 -1
  746. package/dist/database/migrations/migrationsCollection.js +1 -0
  747. package/dist/database/migrations/migrationsCollection.js.map +1 -1
  748. package/dist/database/prefixWherePaths.d.ts +6 -0
  749. package/dist/database/prefixWherePaths.d.ts.map +1 -0
  750. package/dist/database/prefixWherePaths.js +19 -0
  751. package/dist/database/prefixWherePaths.js.map +1 -0
  752. package/dist/database/queryValidation/validateQueryPaths.d.ts +2 -1
  753. package/dist/database/queryValidation/validateQueryPaths.d.ts.map +1 -1
  754. package/dist/database/queryValidation/validateQueryPaths.js +12 -2
  755. package/dist/database/queryValidation/validateQueryPaths.js.map +1 -1
  756. package/dist/database/queryValidation/validateSearchParams.d.ts +2 -1
  757. package/dist/database/queryValidation/validateSearchParams.d.ts.map +1 -1
  758. package/dist/database/queryValidation/validateSearchParams.js +88 -7
  759. package/dist/database/queryValidation/validateSearchParams.js.map +1 -1
  760. package/dist/database/queryValidation/validateSortQuery.d.ts +23 -0
  761. package/dist/database/queryValidation/validateSortQuery.d.ts.map +1 -0
  762. package/dist/database/queryValidation/validateSortQuery.js +54 -0
  763. package/dist/database/queryValidation/validateSortQuery.js.map +1 -0
  764. package/dist/database/sanitizeJoinQuery.d.ts.map +1 -1
  765. package/dist/database/sanitizeJoinQuery.js +9 -1
  766. package/dist/database/sanitizeJoinQuery.js.map +1 -1
  767. package/dist/database/sanitizeWhereQuery.d.ts +1 -1
  768. package/dist/database/sanitizeWhereQuery.d.ts.map +1 -1
  769. package/dist/database/sanitizeWhereQuery.js +44 -1
  770. package/dist/database/sanitizeWhereQuery.js.map +1 -1
  771. package/dist/database/types.d.ts +94 -8
  772. package/dist/database/types.d.ts.map +1 -1
  773. package/dist/database/types.js.map +1 -1
  774. package/dist/duplicateDocument/index.js +1 -0
  775. package/dist/duplicateDocument/index.js.map +1 -1
  776. package/dist/errors/APIError.d.ts +4 -0
  777. package/dist/errors/APIError.d.ts.map +1 -1
  778. package/dist/errors/APIError.js +5 -1
  779. package/dist/errors/APIError.js.map +1 -1
  780. package/dist/errors/AuthenticationError.d.ts.map +1 -1
  781. package/dist/errors/AuthenticationError.js +1 -0
  782. package/dist/errors/AuthenticationError.js.map +1 -1
  783. package/dist/errors/DuplicateCollection.d.ts.map +1 -1
  784. package/dist/errors/DuplicateCollection.js +1 -0
  785. package/dist/errors/DuplicateCollection.js.map +1 -1
  786. package/dist/errors/DuplicateFieldName.d.ts.map +1 -1
  787. package/dist/errors/DuplicateFieldName.js +1 -0
  788. package/dist/errors/DuplicateFieldName.js.map +1 -1
  789. package/dist/errors/DuplicateGlobal.d.ts.map +1 -1
  790. package/dist/errors/DuplicateGlobal.js +1 -0
  791. package/dist/errors/DuplicateGlobal.js.map +1 -1
  792. package/dist/errors/ErrorDeletingFile.d.ts.map +1 -1
  793. package/dist/errors/ErrorDeletingFile.js +1 -0
  794. package/dist/errors/ErrorDeletingFile.js.map +1 -1
  795. package/dist/errors/FileRetrievalError.d.ts.map +1 -1
  796. package/dist/errors/FileRetrievalError.js +1 -0
  797. package/dist/errors/FileRetrievalError.js.map +1 -1
  798. package/dist/errors/FileUploadError.d.ts.map +1 -1
  799. package/dist/errors/FileUploadError.js +1 -0
  800. package/dist/errors/FileUploadError.js.map +1 -1
  801. package/dist/errors/Forbidden.d.ts.map +1 -1
  802. package/dist/errors/Forbidden.js +1 -0
  803. package/dist/errors/Forbidden.js.map +1 -1
  804. package/dist/errors/InvalidConfiguration.d.ts.map +1 -1
  805. package/dist/errors/InvalidConfiguration.js +1 -0
  806. package/dist/errors/InvalidConfiguration.js.map +1 -1
  807. package/dist/errors/InvalidFieldJoin.d.ts.map +1 -1
  808. package/dist/errors/InvalidFieldJoin.js +1 -0
  809. package/dist/errors/InvalidFieldJoin.js.map +1 -1
  810. package/dist/errors/InvalidFieldName.d.ts.map +1 -1
  811. package/dist/errors/InvalidFieldName.js +1 -0
  812. package/dist/errors/InvalidFieldName.js.map +1 -1
  813. package/dist/errors/InvalidFieldRelationship.d.ts.map +1 -1
  814. package/dist/errors/InvalidFieldRelationship.js +1 -0
  815. package/dist/errors/InvalidFieldRelationship.js.map +1 -1
  816. package/dist/errors/InvalidSchema.d.ts.map +1 -1
  817. package/dist/errors/InvalidSchema.js +1 -0
  818. package/dist/errors/InvalidSchema.js.map +1 -1
  819. package/dist/errors/Locked.d.ts.map +1 -1
  820. package/dist/errors/Locked.js +1 -0
  821. package/dist/errors/Locked.js.map +1 -1
  822. package/dist/errors/LockedAuth.d.ts.map +1 -1
  823. package/dist/errors/LockedAuth.js +1 -0
  824. package/dist/errors/LockedAuth.js.map +1 -1
  825. package/dist/errors/MissingCollectionLabel.d.ts.map +1 -1
  826. package/dist/errors/MissingCollectionLabel.js +1 -0
  827. package/dist/errors/MissingCollectionLabel.js.map +1 -1
  828. package/dist/errors/MissingEditorProp.d.ts.map +1 -1
  829. package/dist/errors/MissingEditorProp.js +1 -0
  830. package/dist/errors/MissingEditorProp.js.map +1 -1
  831. package/dist/errors/MissingFieldInputOptions.d.ts.map +1 -1
  832. package/dist/errors/MissingFieldInputOptions.js +1 -0
  833. package/dist/errors/MissingFieldInputOptions.js.map +1 -1
  834. package/dist/errors/MissingFieldType.d.ts.map +1 -1
  835. package/dist/errors/MissingFieldType.js +1 -0
  836. package/dist/errors/MissingFieldType.js.map +1 -1
  837. package/dist/errors/MissingFile.d.ts.map +1 -1
  838. package/dist/errors/MissingFile.js +1 -0
  839. package/dist/errors/MissingFile.js.map +1 -1
  840. package/dist/errors/NotFound.d.ts.map +1 -1
  841. package/dist/errors/NotFound.js +1 -0
  842. package/dist/errors/NotFound.js.map +1 -1
  843. package/dist/errors/QueryError.d.ts.map +1 -1
  844. package/dist/errors/QueryError.js +1 -0
  845. package/dist/errors/QueryError.js.map +1 -1
  846. package/dist/errors/ReservedFieldName.d.ts.map +1 -1
  847. package/dist/errors/ReservedFieldName.js +1 -0
  848. package/dist/errors/ReservedFieldName.js.map +1 -1
  849. package/dist/errors/TimestampsRequired.d.ts.map +1 -1
  850. package/dist/errors/TimestampsRequired.js +1 -0
  851. package/dist/errors/TimestampsRequired.js.map +1 -1
  852. package/dist/errors/TransformerContractError.d.ts +11 -0
  853. package/dist/errors/TransformerContractError.d.ts.map +1 -0
  854. package/dist/errors/TransformerContractError.js +15 -0
  855. package/dist/errors/TransformerContractError.js.map +1 -0
  856. package/dist/errors/UnauthorizedError.d.ts.map +1 -1
  857. package/dist/errors/UnauthorizedError.js +1 -0
  858. package/dist/errors/UnauthorizedError.js.map +1 -1
  859. package/dist/errors/UnverifiedEmail.d.ts.map +1 -1
  860. package/dist/errors/UnverifiedEmail.js +1 -0
  861. package/dist/errors/UnverifiedEmail.js.map +1 -1
  862. package/dist/errors/ValidationError.d.ts.map +1 -1
  863. package/dist/errors/ValidationError.js +1 -0
  864. package/dist/errors/ValidationError.js.map +1 -1
  865. package/dist/errors/index.d.ts +1 -0
  866. package/dist/errors/index.d.ts.map +1 -1
  867. package/dist/errors/index.js +1 -0
  868. package/dist/errors/index.js.map +1 -1
  869. package/dist/exports/auth.d.ts +5 -0
  870. package/dist/exports/auth.d.ts.map +1 -0
  871. package/dist/exports/auth.js +6 -0
  872. package/dist/exports/auth.js.map +1 -0
  873. package/dist/exports/cli.d.ts +4 -0
  874. package/dist/exports/cli.d.ts.map +1 -0
  875. package/dist/exports/cli.js +4 -0
  876. package/dist/exports/cli.js.map +1 -0
  877. package/dist/exports/cliBuiltin.d.ts +37 -0
  878. package/dist/exports/cliBuiltin.d.ts.map +1 -0
  879. package/dist/exports/cliBuiltin.js +38 -0
  880. package/dist/exports/cliBuiltin.js.map +1 -0
  881. package/dist/exports/internal.d.ts +20 -1
  882. package/dist/exports/internal.d.ts.map +1 -1
  883. package/dist/exports/internal.js +17 -1
  884. package/dist/exports/internal.js.map +1 -1
  885. package/dist/exports/node.d.ts +2 -2
  886. package/dist/exports/node.d.ts.map +1 -1
  887. package/dist/exports/node.js +2 -2
  888. package/dist/exports/node.js.map +1 -1
  889. package/dist/exports/shared.d.ts +11 -4
  890. package/dist/exports/shared.d.ts.map +1 -1
  891. package/dist/exports/shared.js +10 -4
  892. package/dist/exports/shared.js.map +1 -1
  893. package/dist/fields/baseFields/authorship/index.d.ts +30 -0
  894. package/dist/fields/baseFields/authorship/index.d.ts.map +1 -0
  895. package/dist/fields/baseFields/authorship/index.js +151 -0
  896. package/dist/fields/baseFields/authorship/index.js.map +1 -0
  897. package/dist/fields/baseFields/authorship/types.d.ts +28 -0
  898. package/dist/fields/baseFields/authorship/types.d.ts.map +1 -0
  899. package/dist/fields/baseFields/authorship/types.js +10 -0
  900. package/dist/fields/baseFields/authorship/types.js.map +1 -0
  901. package/dist/fields/baseFields/slug/duplicateContext.d.ts +11 -0
  902. package/dist/fields/baseFields/slug/duplicateContext.d.ts.map +1 -0
  903. package/dist/fields/baseFields/slug/duplicateContext.js +21 -0
  904. package/dist/fields/baseFields/slug/duplicateContext.js.map +1 -0
  905. package/dist/fields/baseFields/slug/fillEmptyLocalizedSlugs.d.ts +23 -0
  906. package/dist/fields/baseFields/slug/fillEmptyLocalizedSlugs.d.ts.map +1 -0
  907. package/dist/fields/baseFields/slug/fillEmptyLocalizedSlugs.js +65 -0
  908. package/dist/fields/baseFields/slug/fillEmptyLocalizedSlugs.js.map +1 -0
  909. package/dist/fields/baseFields/slug/generateSlug.d.ts +13 -8
  910. package/dist/fields/baseFields/slug/generateSlug.d.ts.map +1 -1
  911. package/dist/fields/baseFields/slug/generateSlug.js +102 -45
  912. package/dist/fields/baseFields/slug/generateSlug.js.map +1 -1
  913. package/dist/fields/baseFields/slug/generateSlugBeforeDuplicate.d.ts +18 -0
  914. package/dist/fields/baseFields/slug/generateSlugBeforeDuplicate.d.ts.map +1 -0
  915. package/dist/fields/baseFields/slug/generateSlugBeforeDuplicate.js +20 -0
  916. package/dist/fields/baseFields/slug/generateSlugBeforeDuplicate.js.map +1 -0
  917. package/dist/fields/baseFields/slug/getSlugFallbackValue.d.ts +23 -0
  918. package/dist/fields/baseFields/slug/getSlugFallbackValue.d.ts.map +1 -0
  919. package/dist/fields/baseFields/slug/getSlugFallbackValue.js +24 -0
  920. package/dist/fields/baseFields/slug/getSlugFallbackValue.js.map +1 -0
  921. package/dist/fields/baseFields/slug/hasValue.d.ts +3 -0
  922. package/dist/fields/baseFields/slug/hasValue.d.ts.map +1 -0
  923. package/dist/fields/baseFields/slug/hasValue.js +3 -0
  924. package/dist/fields/baseFields/slug/hasValue.js.map +1 -0
  925. package/dist/fields/config/client.d.ts +1 -1
  926. package/dist/fields/config/client.d.ts.map +1 -1
  927. package/dist/fields/config/client.js +1 -1
  928. package/dist/fields/config/client.js.map +1 -1
  929. package/dist/fields/config/reservedFieldNames.js.map +1 -1
  930. package/dist/fields/config/sanitize.d.ts +6 -6
  931. package/dist/fields/config/sanitize.d.ts.map +1 -1
  932. package/dist/fields/config/sanitize.js +32 -22
  933. package/dist/fields/config/sanitize.js.map +1 -1
  934. package/dist/fields/config/types.d.ts +53 -50
  935. package/dist/fields/config/types.d.ts.map +1 -1
  936. package/dist/fields/config/types.js +1 -1
  937. package/dist/fields/config/types.js.map +1 -1
  938. package/dist/fields/hooks/beforeChange/index.d.ts +7 -1
  939. package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
  940. package/dist/fields/hooks/beforeChange/index.js +4 -2
  941. package/dist/fields/hooks/beforeChange/index.js.map +1 -1
  942. package/dist/fields/hooks/beforeChange/promise.d.ts +2 -1
  943. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  944. package/dist/fields/hooks/beforeChange/promise.js +52 -9
  945. package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
  946. package/dist/fields/hooks/beforeChange/traverseFields.d.ts +2 -1
  947. package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
  948. package/dist/fields/hooks/beforeChange/traverseFields.js +3 -2
  949. package/dist/fields/hooks/beforeChange/traverseFields.js.map +1 -1
  950. package/dist/fields/hooks/beforeDuplicate/promise.d.ts.map +1 -1
  951. package/dist/fields/hooks/beforeDuplicate/promise.js +4 -0
  952. package/dist/fields/hooks/beforeDuplicate/promise.js.map +1 -1
  953. package/dist/fields/hooks/beforeValidate/getFallbackValue.d.ts +2 -1
  954. package/dist/fields/hooks/beforeValidate/getFallbackValue.d.ts.map +1 -1
  955. package/dist/fields/hooks/beforeValidate/getFallbackValue.js +2 -2
  956. package/dist/fields/hooks/beforeValidate/getFallbackValue.js.map +1 -1
  957. package/dist/fields/hooks/beforeValidate/index.d.ts +6 -1
  958. package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
  959. package/dist/fields/hooks/beforeValidate/index.js +3 -1
  960. package/dist/fields/hooks/beforeValidate/index.js.map +1 -1
  961. package/dist/fields/hooks/beforeValidate/promise.d.ts +6 -1
  962. package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
  963. package/dist/fields/hooks/beforeValidate/promise.js +29 -12
  964. package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
  965. package/dist/fields/hooks/beforeValidate/stripNullRows.d.ts +10 -0
  966. package/dist/fields/hooks/beforeValidate/stripNullRows.d.ts.map +1 -0
  967. package/dist/fields/hooks/beforeValidate/stripNullRows.js +18 -0
  968. package/dist/fields/hooks/beforeValidate/stripNullRows.js.map +1 -0
  969. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts +6 -1
  970. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
  971. package/dist/fields/hooks/beforeValidate/traverseFields.js +5 -1
  972. package/dist/fields/hooks/beforeValidate/traverseFields.js.map +1 -1
  973. package/dist/fields/validations.d.ts.map +1 -1
  974. package/dist/fields/validations.js +17 -15
  975. package/dist/fields/validations.js.map +1 -1
  976. package/dist/globals/config/client.d.ts +2 -2
  977. package/dist/globals/config/client.d.ts.map +1 -1
  978. package/dist/globals/config/client.js +1 -0
  979. package/dist/globals/config/client.js.map +1 -1
  980. package/dist/globals/config/sanitize.d.ts +3 -7
  981. package/dist/globals/config/sanitize.d.ts.map +1 -1
  982. package/dist/globals/config/sanitize.js +78 -9
  983. package/dist/globals/config/sanitize.js.map +1 -1
  984. package/dist/globals/config/types.d.ts +35 -16
  985. package/dist/globals/config/types.d.ts.map +1 -1
  986. package/dist/globals/config/types.js.map +1 -1
  987. package/dist/globals/operations/countGlobalVersions.d.ts.map +1 -1
  988. package/dist/globals/operations/countGlobalVersions.js +57 -55
  989. package/dist/globals/operations/countGlobalVersions.js.map +1 -1
  990. package/dist/globals/operations/docAccess.d.ts.map +1 -1
  991. package/dist/globals/operations/docAccess.js +19 -25
  992. package/dist/globals/operations/docAccess.js.map +1 -1
  993. package/dist/globals/operations/findOne.d.ts.map +1 -1
  994. package/dist/globals/operations/findOne.js +169 -174
  995. package/dist/globals/operations/findOne.js.map +1 -1
  996. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  997. package/dist/globals/operations/findVersionByID.js +112 -108
  998. package/dist/globals/operations/findVersionByID.js.map +1 -1
  999. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  1000. package/dist/globals/operations/findVersions.js +118 -109
  1001. package/dist/globals/operations/findVersions.js.map +1 -1
  1002. package/dist/globals/operations/inputSchemas.d.ts +365 -0
  1003. package/dist/globals/operations/inputSchemas.d.ts.map +1 -0
  1004. package/dist/globals/operations/inputSchemas.js +104 -0
  1005. package/dist/globals/operations/inputSchemas.js.map +1 -0
  1006. package/dist/globals/operations/local/countVersions.d.ts +2 -7
  1007. package/dist/globals/operations/local/countVersions.d.ts.map +1 -1
  1008. package/dist/globals/operations/local/countVersions.js +6 -3
  1009. package/dist/globals/operations/local/countVersions.js.map +1 -1
  1010. package/dist/globals/operations/local/findOne.d.ts +2 -7
  1011. package/dist/globals/operations/local/findOne.d.ts.map +1 -1
  1012. package/dist/globals/operations/local/findOne.js +6 -3
  1013. package/dist/globals/operations/local/findOne.js.map +1 -1
  1014. package/dist/globals/operations/local/findVersionByID.d.ts +2 -7
  1015. package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
  1016. package/dist/globals/operations/local/findVersionByID.js +6 -3
  1017. package/dist/globals/operations/local/findVersionByID.js.map +1 -1
  1018. package/dist/globals/operations/local/findVersions.d.ts +2 -7
  1019. package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
  1020. package/dist/globals/operations/local/findVersions.js +6 -3
  1021. package/dist/globals/operations/local/findVersions.js.map +1 -1
  1022. package/dist/globals/operations/local/restoreVersion.d.ts +2 -7
  1023. package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
  1024. package/dist/globals/operations/local/restoreVersion.js +6 -3
  1025. package/dist/globals/operations/local/restoreVersion.js.map +1 -1
  1026. package/dist/globals/operations/local/update.d.ts +2 -7
  1027. package/dist/globals/operations/local/update.d.ts.map +1 -1
  1028. package/dist/globals/operations/local/update.js +6 -3
  1029. package/dist/globals/operations/local/update.js.map +1 -1
  1030. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  1031. package/dist/globals/operations/restoreVersion.js +60 -14
  1032. package/dist/globals/operations/restoreVersion.js.map +1 -1
  1033. package/dist/globals/operations/update.d.ts.map +1 -1
  1034. package/dist/globals/operations/update.js +106 -19
  1035. package/dist/globals/operations/update.js.map +1 -1
  1036. package/dist/hierarchy/addHierarchyToCollection.js +2 -0
  1037. package/dist/hierarchy/addHierarchyToCollection.js.map +1 -1
  1038. package/dist/hierarchy/hooks/collectionAfterDelete.d.ts.map +1 -1
  1039. package/dist/hierarchy/hooks/collectionAfterDelete.js +1 -0
  1040. package/dist/hierarchy/hooks/collectionAfterDelete.js.map +1 -1
  1041. package/dist/hierarchy/hooks/collectionBeforeChange.js +1 -0
  1042. package/dist/hierarchy/hooks/collectionBeforeChange.js.map +1 -1
  1043. package/dist/hierarchy/hooks/collectionBeforeDelete.d.ts.map +1 -1
  1044. package/dist/hierarchy/hooks/collectionBeforeDelete.js +1 -0
  1045. package/dist/hierarchy/hooks/collectionBeforeDelete.js.map +1 -1
  1046. package/dist/hierarchy/hooks/ensureSafeCollectionsChange.d.ts.map +1 -1
  1047. package/dist/hierarchy/hooks/ensureSafeCollectionsChange.js +71 -33
  1048. package/dist/hierarchy/hooks/ensureSafeCollectionsChange.js.map +1 -1
  1049. package/dist/hierarchy/resolveHierarchyCollections.js +29 -20
  1050. package/dist/hierarchy/resolveHierarchyCollections.js.map +1 -1
  1051. package/dist/index.bundled.d.ts +3223 -1384
  1052. package/dist/index.d.ts +117 -56
  1053. package/dist/index.d.ts.map +1 -1
  1054. package/dist/index.js +90 -70
  1055. package/dist/index.js.map +1 -1
  1056. package/dist/kv/adapters/DatabaseKVAdapter.d.ts.map +1 -1
  1057. package/dist/kv/adapters/DatabaseKVAdapter.js +2 -1
  1058. package/dist/kv/adapters/DatabaseKVAdapter.js.map +1 -1
  1059. package/dist/llm-instructions/addLLMInstructions.d.ts +5 -0
  1060. package/dist/llm-instructions/addLLMInstructions.d.ts.map +1 -0
  1061. package/dist/llm-instructions/addLLMInstructions.js +31 -0
  1062. package/dist/llm-instructions/addLLMInstructions.js.map +1 -0
  1063. package/dist/llm-instructions/getInstructionTargetAccess.d.ts +8 -0
  1064. package/dist/llm-instructions/getInstructionTargetAccess.d.ts.map +1 -0
  1065. package/dist/llm-instructions/getInstructionTargetAccess.js +40 -0
  1066. package/dist/llm-instructions/getInstructionTargetAccess.js.map +1 -0
  1067. package/dist/llm-instructions/getInstructions.d.ts +8 -0
  1068. package/dist/llm-instructions/getInstructions.d.ts.map +1 -0
  1069. package/dist/llm-instructions/getInstructions.js +46 -0
  1070. package/dist/llm-instructions/getInstructions.js.map +1 -0
  1071. package/dist/llm-instructions/getInstructionsCollection.d.ts +6 -0
  1072. package/dist/llm-instructions/getInstructionsCollection.d.ts.map +1 -0
  1073. package/dist/llm-instructions/getInstructionsCollection.js +367 -0
  1074. package/dist/llm-instructions/getInstructionsCollection.js.map +1 -0
  1075. package/dist/llm-instructions/shared.d.ts +11 -0
  1076. package/dist/llm-instructions/shared.d.ts.map +1 -0
  1077. package/dist/llm-instructions/shared.js +3 -0
  1078. package/dist/llm-instructions/shared.js.map +1 -0
  1079. package/dist/locked-documents/config.d.ts.map +1 -1
  1080. package/dist/locked-documents/config.js +1 -0
  1081. package/dist/locked-documents/config.js.map +1 -1
  1082. package/dist/preferences/config.d.ts.map +1 -1
  1083. package/dist/preferences/config.js +3 -1
  1084. package/dist/preferences/config.js.map +1 -1
  1085. package/dist/preferences/types.d.ts +2 -0
  1086. package/dist/preferences/types.d.ts.map +1 -1
  1087. package/dist/preferences/types.js.map +1 -1
  1088. package/dist/query-presets/access.d.ts.map +1 -1
  1089. package/dist/query-presets/access.js +2 -1
  1090. package/dist/query-presets/access.js.map +1 -1
  1091. package/dist/query-presets/config.d.ts.map +1 -1
  1092. package/dist/query-presets/config.js +1 -0
  1093. package/dist/query-presets/config.js.map +1 -1
  1094. package/dist/query-presets/constraints.js +1 -1
  1095. package/dist/query-presets/constraints.js.map +1 -1
  1096. package/dist/query-presets/preventLockout.js +6 -3
  1097. package/dist/query-presets/preventLockout.js.map +1 -1
  1098. package/dist/queues/config/collection.d.ts.map +1 -1
  1099. package/dist/queues/config/collection.js +44 -43
  1100. package/dist/queues/config/collection.js.map +1 -1
  1101. package/dist/queues/config/global.d.ts +5 -6
  1102. package/dist/queues/config/global.d.ts.map +1 -1
  1103. package/dist/queues/config/global.js +2 -1
  1104. package/dist/queues/config/global.js.map +1 -1
  1105. package/dist/queues/config/types/index.d.ts +33 -25
  1106. package/dist/queues/config/types/index.d.ts.map +1 -1
  1107. package/dist/queues/config/types/index.js.map +1 -1
  1108. package/dist/queues/config/types/taskTypes.d.ts +4 -7
  1109. package/dist/queues/config/types/taskTypes.d.ts.map +1 -1
  1110. package/dist/queues/config/types/taskTypes.js.map +1 -1
  1111. package/dist/queues/config/types/workflowJSONTypes.d.ts +10 -9
  1112. package/dist/queues/config/types/workflowJSONTypes.d.ts.map +1 -1
  1113. package/dist/queues/config/types/workflowJSONTypes.js.map +1 -1
  1114. package/dist/queues/config/types/workflowTypes.d.ts +11 -58
  1115. package/dist/queues/config/types/workflowTypes.d.ts.map +1 -1
  1116. package/dist/queues/config/types/workflowTypes.js.map +1 -1
  1117. package/dist/queues/endpoints/handleSchedules.d.ts.map +1 -1
  1118. package/dist/queues/endpoints/handleSchedules.js +3 -2
  1119. package/dist/queues/endpoints/handleSchedules.js.map +1 -1
  1120. package/dist/queues/endpoints/run.d.ts.map +1 -1
  1121. package/dist/queues/endpoints/run.js +2 -1
  1122. package/dist/queues/endpoints/run.js.map +1 -1
  1123. package/dist/queues/errors/handleTaskError.js +4 -4
  1124. package/dist/queues/errors/handleTaskError.js.map +1 -1
  1125. package/dist/queues/errors/handleWorkflowError.js +1 -1
  1126. package/dist/queues/errors/handleWorkflowError.js.map +1 -1
  1127. package/dist/queues/errors/index.d.ts +6 -0
  1128. package/dist/queues/errors/index.d.ts.map +1 -1
  1129. package/dist/queues/errors/index.js +5 -0
  1130. package/dist/queues/errors/index.js.map +1 -1
  1131. package/dist/queues/localAPI.d.ts +10 -63
  1132. package/dist/queues/localAPI.d.ts.map +1 -1
  1133. package/dist/queues/localAPI.js +87 -78
  1134. package/dist/queues/localAPI.js.map +1 -1
  1135. package/dist/queues/operations/handleSchedules/countRunnableOrActiveJobsForQueue.d.ts +4 -4
  1136. package/dist/queues/operations/handleSchedules/countRunnableOrActiveJobsForQueue.d.ts.map +1 -1
  1137. package/dist/queues/operations/handleSchedules/countRunnableOrActiveJobsForQueue.js.map +1 -1
  1138. package/dist/queues/operations/handleSchedules/index.d.ts +1 -1
  1139. package/dist/queues/operations/handleSchedules/index.d.ts.map +1 -1
  1140. package/dist/queues/operations/handleSchedules/index.js +2 -1
  1141. package/dist/queues/operations/handleSchedules/index.js.map +1 -1
  1142. package/dist/queues/operations/runJobs/heartbeat.d.ts +13 -0
  1143. package/dist/queues/operations/runJobs/heartbeat.d.ts.map +1 -0
  1144. package/dist/queues/operations/runJobs/heartbeat.js +66 -0
  1145. package/dist/queues/operations/runJobs/heartbeat.js.map +1 -0
  1146. package/dist/queues/operations/runJobs/index.d.ts.map +1 -1
  1147. package/dist/queues/operations/runJobs/index.js +133 -84
  1148. package/dist/queues/operations/runJobs/index.js.map +1 -1
  1149. package/dist/queues/operations/runJobs/runJSONJob/index.d.ts.map +1 -1
  1150. package/dist/queues/operations/runJobs/runJSONJob/index.js +6 -3
  1151. package/dist/queues/operations/runJobs/runJSONJob/index.js.map +1 -1
  1152. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js +5 -5
  1153. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js.map +1 -1
  1154. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.d.ts +2 -1
  1155. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.d.ts.map +1 -1
  1156. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.js +39 -8
  1157. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.js.map +1 -1
  1158. package/dist/queues/operations/runJobs/runJob/importHandlerPath.js.map +1 -1
  1159. package/dist/queues/operations/runJobs/runJob/index.d.ts.map +1 -1
  1160. package/dist/queues/operations/runJobs/runJob/index.js +4 -4
  1161. package/dist/queues/operations/runJobs/runJob/index.js.map +1 -1
  1162. package/dist/queues/utilities/updateJob.d.ts.map +1 -1
  1163. package/dist/queues/utilities/updateJob.js +3 -0
  1164. package/dist/queues/utilities/updateJob.js.map +1 -1
  1165. package/dist/types/constants.d.ts +21 -0
  1166. package/dist/types/constants.d.ts.map +1 -1
  1167. package/dist/types/constants.js +23 -0
  1168. package/dist/types/constants.js.map +1 -1
  1169. package/dist/types/index.d.ts +11 -4
  1170. package/dist/types/index.d.ts.map +1 -1
  1171. package/dist/types/index.js.map +1 -1
  1172. package/dist/types/operations.d.ts +9 -0
  1173. package/dist/types/operations.d.ts.map +1 -0
  1174. package/dist/types/operations.js +3 -0
  1175. package/dist/types/operations.js.map +1 -0
  1176. package/dist/uploads/assertClientUploadAccess.d.ts +7 -0
  1177. package/dist/uploads/assertClientUploadAccess.d.ts.map +1 -0
  1178. package/dist/uploads/assertClientUploadAccess.js +29 -0
  1179. package/dist/uploads/assertClientUploadAccess.js.map +1 -0
  1180. package/dist/uploads/assertClientUploadAllowed.d.ts +10 -0
  1181. package/dist/uploads/assertClientUploadAllowed.d.ts.map +1 -0
  1182. package/dist/uploads/assertClientUploadAllowed.js +41 -0
  1183. package/dist/uploads/assertClientUploadAllowed.js.map +1 -0
  1184. package/dist/uploads/checkFileAccess.d.ts.map +1 -1
  1185. package/dist/uploads/checkFileAccess.js +6 -18
  1186. package/dist/uploads/checkFileAccess.js.map +1 -1
  1187. package/dist/uploads/checkFileRestrictions.d.ts +11 -1
  1188. package/dist/uploads/checkFileRestrictions.d.ts.map +1 -1
  1189. package/dist/uploads/checkFileRestrictions.js +91 -26
  1190. package/dist/uploads/checkFileRestrictions.js.map +1 -1
  1191. package/dist/uploads/clientUploadReceipt.d.ts +29 -0
  1192. package/dist/uploads/clientUploadReceipt.d.ts.map +1 -0
  1193. package/dist/uploads/clientUploadReceipt.js +76 -0
  1194. package/dist/uploads/clientUploadReceipt.js.map +1 -0
  1195. package/dist/uploads/deleteAssociatedFiles.d.ts.map +1 -1
  1196. package/dist/uploads/deleteAssociatedFiles.js +59 -11
  1197. package/dist/uploads/deleteAssociatedFiles.js.map +1 -1
  1198. package/dist/uploads/detectSvgFromXml.d.ts +1 -4
  1199. package/dist/uploads/detectSvgFromXml.d.ts.map +1 -1
  1200. package/dist/uploads/detectSvgFromXml.js +2 -41
  1201. package/dist/uploads/detectSvgFromXml.js.map +1 -1
  1202. package/dist/uploads/docWithFilenameExists.d.ts +2 -1
  1203. package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
  1204. package/dist/uploads/docWithFilenameExists.js +27 -10
  1205. package/dist/uploads/docWithFilenameExists.js.map +1 -1
  1206. package/dist/uploads/downloadFileToBuffer.d.ts +11 -0
  1207. package/dist/uploads/downloadFileToBuffer.d.ts.map +1 -0
  1208. package/dist/uploads/downloadFileToBuffer.js +72 -0
  1209. package/dist/uploads/downloadFileToBuffer.js.map +1 -0
  1210. package/dist/uploads/endpoints/getFile.d.ts +17 -0
  1211. package/dist/uploads/endpoints/getFile.d.ts.map +1 -1
  1212. package/dist/uploads/endpoints/getFile.js +46 -12
  1213. package/dist/uploads/endpoints/getFile.js.map +1 -1
  1214. package/dist/uploads/endpoints/index.js +2 -2
  1215. package/dist/uploads/endpoints/index.js.map +1 -1
  1216. package/dist/uploads/endpoints/pasteURL.d.ts +3 -0
  1217. package/dist/uploads/endpoints/pasteURL.d.ts.map +1 -0
  1218. package/dist/uploads/endpoints/{getFileFromURL.js → pasteURL.js} +19 -55
  1219. package/dist/uploads/endpoints/pasteURL.js.map +1 -0
  1220. package/dist/uploads/endpoints/uploadInstructions.d.ts +12 -0
  1221. package/dist/uploads/endpoints/uploadInstructions.d.ts.map +1 -1
  1222. package/dist/uploads/endpoints/uploadInstructions.js +70 -21
  1223. package/dist/uploads/endpoints/uploadInstructions.js.map +1 -1
  1224. package/dist/uploads/fetchAPI-multipart/handlers.d.ts +2 -2
  1225. package/dist/uploads/fetchAPI-multipart/handlers.d.ts.map +1 -1
  1226. package/dist/uploads/fetchAPI-multipart/handlers.js +18 -5
  1227. package/dist/uploads/fetchAPI-multipart/handlers.js.map +1 -1
  1228. package/dist/uploads/fetchAPI-multipart/index.d.ts.map +1 -1
  1229. package/dist/uploads/fetchAPI-multipart/index.js +24 -2
  1230. package/dist/uploads/fetchAPI-multipart/index.js.map +1 -1
  1231. package/dist/uploads/fetchAPI-multipart/isEligibleRequest.js +1 -2
  1232. package/dist/uploads/fetchAPI-multipart/isEligibleRequest.js.map +1 -1
  1233. package/dist/uploads/fetchAPI-multipart/processMultipart.d.ts +0 -6
  1234. package/dist/uploads/fetchAPI-multipart/processMultipart.d.ts.map +1 -1
  1235. package/dist/uploads/fetchAPI-multipart/processMultipart.js +146 -130
  1236. package/dist/uploads/fetchAPI-multipart/processMultipart.js.map +1 -1
  1237. package/dist/uploads/fetchAPI-stream-file/index.d.ts +4 -1
  1238. package/dist/uploads/fetchAPI-stream-file/index.d.ts.map +1 -1
  1239. package/dist/uploads/fetchAPI-stream-file/index.js +9 -2
  1240. package/dist/uploads/fetchAPI-stream-file/index.js.map +1 -1
  1241. package/dist/uploads/fetchWithRedirects.d.ts +19 -0
  1242. package/dist/uploads/fetchWithRedirects.d.ts.map +1 -0
  1243. package/dist/uploads/fetchWithRedirects.js +53 -0
  1244. package/dist/uploads/fetchWithRedirects.js.map +1 -0
  1245. package/dist/uploads/generateFileData.d.ts +31 -1
  1246. package/dist/uploads/generateFileData.d.ts.map +1 -1
  1247. package/dist/uploads/generateFileData.js +259 -199
  1248. package/dist/uploads/generateFileData.js.map +1 -1
  1249. package/dist/uploads/generateImageSizeFilename.d.ts.map +1 -0
  1250. package/dist/uploads/generateImageSizeFilename.js.map +1 -0
  1251. package/dist/uploads/generatePayloadFileURL.d.ts +25 -0
  1252. package/dist/uploads/generatePayloadFileURL.d.ts.map +1 -0
  1253. package/dist/uploads/generatePayloadFileURL.js +64 -0
  1254. package/dist/uploads/generatePayloadFileURL.js.map +1 -0
  1255. package/dist/uploads/getBaseFields.d.ts.map +1 -1
  1256. package/dist/uploads/getBaseFields.js +12 -9
  1257. package/dist/uploads/getBaseFields.js.map +1 -1
  1258. package/dist/uploads/getFileContentRequirement.d.ts +39 -0
  1259. package/dist/uploads/getFileContentRequirement.d.ts.map +1 -0
  1260. package/dist/uploads/getFileContentRequirement.js +45 -0
  1261. package/dist/uploads/getFileContentRequirement.js.map +1 -0
  1262. package/dist/uploads/getFileFromUploadInstructions.d.ts +8 -0
  1263. package/dist/uploads/getFileFromUploadInstructions.d.ts.map +1 -0
  1264. package/dist/uploads/getFileFromUploadInstructions.js +307 -0
  1265. package/dist/uploads/getFileFromUploadInstructions.js.map +1 -0
  1266. package/dist/uploads/getFileTypeFallback.d.ts.map +1 -1
  1267. package/dist/uploads/getFileTypeFallback.js +3 -1
  1268. package/dist/uploads/getFileTypeFallback.js.map +1 -1
  1269. package/dist/uploads/getFileTypeIdentity.d.ts +19 -0
  1270. package/dist/uploads/getFileTypeIdentity.d.ts.map +1 -0
  1271. package/dist/uploads/getFileTypeIdentity.js +34 -0
  1272. package/dist/uploads/getFileTypeIdentity.js.map +1 -0
  1273. package/dist/uploads/getImageSize.d.ts +8 -1
  1274. package/dist/uploads/getImageSize.d.ts.map +1 -1
  1275. package/dist/uploads/getImageSize.js +11 -19
  1276. package/dist/uploads/getImageSize.js.map +1 -1
  1277. package/dist/uploads/hasCropOrResizeEdit.d.ts +7 -0
  1278. package/dist/uploads/hasCropOrResizeEdit.d.ts.map +1 -0
  1279. package/dist/uploads/hasCropOrResizeEdit.js +6 -0
  1280. package/dist/uploads/hasCropOrResizeEdit.js.map +1 -0
  1281. package/dist/uploads/hasFullFileContents.d.ts +13 -0
  1282. package/dist/uploads/hasFullFileContents.d.ts.map +1 -0
  1283. package/dist/uploads/hasFullFileContents.js +12 -0
  1284. package/dist/uploads/hasFullFileContents.js.map +1 -0
  1285. package/dist/uploads/isAnimatedImage.d.ts +8 -0
  1286. package/dist/uploads/isAnimatedImage.d.ts.map +1 -0
  1287. package/dist/uploads/isAnimatedImage.js +22 -0
  1288. package/dist/uploads/isAnimatedImage.js.map +1 -0
  1289. package/dist/uploads/isProcessableImage.d.ts +2 -0
  1290. package/dist/uploads/isProcessableImage.d.ts.map +1 -0
  1291. package/dist/uploads/isProcessableImage.js +7 -0
  1292. package/dist/uploads/isProcessableImage.js.map +1 -0
  1293. package/dist/uploads/parseFilename.d.ts.map +1 -0
  1294. package/dist/uploads/parseFilename.js.map +1 -0
  1295. package/dist/uploads/probeImageSize.d.ts +39 -0
  1296. package/dist/uploads/probeImageSize.d.ts.map +1 -0
  1297. package/dist/uploads/probeImageSize.js +374 -0
  1298. package/dist/uploads/probeImageSize.js.map +1 -0
  1299. package/dist/uploads/resolveURLUploadInput.d.ts +25 -0
  1300. package/dist/uploads/resolveURLUploadInput.d.ts.map +1 -0
  1301. package/dist/uploads/resolveURLUploadInput.js +53 -0
  1302. package/dist/uploads/resolveURLUploadInput.js.map +1 -0
  1303. package/dist/uploads/safeFetch.d.ts.map +1 -1
  1304. package/dist/uploads/safeFetch.js +3 -2
  1305. package/dist/uploads/safeFetch.js.map +1 -1
  1306. package/dist/uploads/sanitizeUploadData.d.ts +26 -0
  1307. package/dist/uploads/sanitizeUploadData.d.ts.map +1 -0
  1308. package/dist/uploads/sanitizeUploadData.js +161 -0
  1309. package/dist/uploads/sanitizeUploadData.js.map +1 -0
  1310. package/dist/uploads/stagedUpload.d.ts +27 -0
  1311. package/dist/uploads/stagedUpload.d.ts.map +1 -0
  1312. package/dist/uploads/stagedUpload.js +197 -0
  1313. package/dist/uploads/stagedUpload.js.map +1 -0
  1314. package/dist/uploads/transformers/createLazySourceGetter.d.ts +15 -0
  1315. package/dist/uploads/transformers/createLazySourceGetter.d.ts.map +1 -0
  1316. package/dist/uploads/transformers/createLazySourceGetter.js +22 -0
  1317. package/dist/uploads/transformers/createLazySourceGetter.js.map +1 -0
  1318. package/dist/uploads/transformers/finalizeFileResponse.d.ts +14 -0
  1319. package/dist/uploads/transformers/finalizeFileResponse.d.ts.map +1 -0
  1320. package/dist/uploads/transformers/finalizeFileResponse.js +49 -0
  1321. package/dist/uploads/transformers/finalizeFileResponse.js.map +1 -0
  1322. package/dist/uploads/transformers/getSourceFileResponse.d.ts +16 -0
  1323. package/dist/uploads/transformers/getSourceFileResponse.d.ts.map +1 -0
  1324. package/dist/uploads/transformers/getSourceFileResponse.js +17 -0
  1325. package/dist/uploads/transformers/getSourceFileResponse.js.map +1 -0
  1326. package/dist/uploads/transformers/handleDynamicFileRequest.d.ts +18 -0
  1327. package/dist/uploads/transformers/handleDynamicFileRequest.d.ts.map +1 -0
  1328. package/dist/uploads/transformers/handleDynamicFileRequest.js +277 -0
  1329. package/dist/uploads/transformers/handleDynamicFileRequest.js.map +1 -0
  1330. package/dist/uploads/transformers/matchesMimeType.d.ts +11 -0
  1331. package/dist/uploads/transformers/matchesMimeType.d.ts.map +1 -0
  1332. package/dist/uploads/transformers/matchesMimeType.js +39 -0
  1333. package/dist/uploads/transformers/matchesMimeType.js.map +1 -0
  1334. package/dist/uploads/transformers/planTransformerPipeline.d.ts +26 -0
  1335. package/dist/uploads/transformers/planTransformerPipeline.d.ts.map +1 -0
  1336. package/dist/uploads/transformers/planTransformerPipeline.js +36 -0
  1337. package/dist/uploads/transformers/planTransformerPipeline.js.map +1 -0
  1338. package/dist/uploads/transformers/resolveUploadDocument.d.ts +46 -0
  1339. package/dist/uploads/transformers/resolveUploadDocument.d.ts.map +1 -0
  1340. package/dist/uploads/transformers/resolveUploadDocument.js +77 -0
  1341. package/dist/uploads/transformers/resolveUploadDocument.js.map +1 -0
  1342. package/dist/uploads/transformers/transformUploadFile.d.ts +18 -0
  1343. package/dist/uploads/transformers/transformUploadFile.d.ts.map +1 -0
  1344. package/dist/uploads/transformers/transformUploadFile.js +30 -0
  1345. package/dist/uploads/transformers/transformUploadFile.js.map +1 -0
  1346. package/dist/uploads/transformers/types.d.ts +71 -0
  1347. package/dist/uploads/transformers/types.d.ts.map +1 -0
  1348. package/dist/uploads/transformers/types.js +6 -0
  1349. package/dist/uploads/transformers/types.js.map +1 -0
  1350. package/dist/uploads/transformers/uploadTransformerBridge.d.ts +48 -0
  1351. package/dist/uploads/transformers/uploadTransformerBridge.d.ts.map +1 -0
  1352. package/dist/uploads/transformers/uploadTransformerBridge.js +22 -0
  1353. package/dist/uploads/transformers/uploadTransformerBridge.js.map +1 -0
  1354. package/dist/uploads/transformers/validateTransformers.d.ts +11 -0
  1355. package/dist/uploads/transformers/validateTransformers.d.ts.map +1 -0
  1356. package/dist/uploads/transformers/validateTransformers.js +67 -0
  1357. package/dist/uploads/transformers/validateTransformers.js.map +1 -0
  1358. package/dist/uploads/transformers/withFileTransformAccessContext.d.ts +13 -0
  1359. package/dist/uploads/transformers/withFileTransformAccessContext.d.ts.map +1 -0
  1360. package/dist/uploads/transformers/withFileTransformAccessContext.js +18 -0
  1361. package/dist/uploads/transformers/withFileTransformAccessContext.js.map +1 -0
  1362. package/dist/uploads/types.d.ts +77 -73
  1363. package/dist/uploads/types.d.ts.map +1 -1
  1364. package/dist/uploads/types.js.map +1 -1
  1365. package/dist/uploads/unlinkTempFiles.d.ts.map +1 -1
  1366. package/dist/uploads/unlinkTempFiles.js +6 -2
  1367. package/dist/uploads/unlinkTempFiles.js.map +1 -1
  1368. package/dist/uploads/uploadContentSecurityPolicy.d.ts +2 -0
  1369. package/dist/uploads/uploadContentSecurityPolicy.d.ts.map +1 -0
  1370. package/dist/uploads/uploadContentSecurityPolicy.js +3 -0
  1371. package/dist/uploads/uploadContentSecurityPolicy.js.map +1 -0
  1372. package/dist/uploads/uploadFiles.d.ts.map +1 -1
  1373. package/dist/uploads/uploadFiles.js +7 -2
  1374. package/dist/uploads/uploadFiles.js.map +1 -1
  1375. package/dist/uploads/validateISOBaseMediaFile.d.ts +4 -0
  1376. package/dist/uploads/validateISOBaseMediaFile.d.ts.map +1 -0
  1377. package/dist/uploads/validateISOBaseMediaFile.js +91 -0
  1378. package/dist/uploads/validateISOBaseMediaFile.js.map +1 -0
  1379. package/dist/uploads/validateSvg.d.ts +10 -4
  1380. package/dist/uploads/validateSvg.d.ts.map +1 -1
  1381. package/dist/uploads/validateSvg.js +280 -40
  1382. package/dist/uploads/validateSvg.js.map +1 -1
  1383. package/dist/uploads/validateUploadFilename.d.ts +3 -0
  1384. package/dist/uploads/validateUploadFilename.d.ts.map +1 -0
  1385. package/dist/uploads/validateUploadFilename.js +13 -0
  1386. package/dist/uploads/validateUploadFilename.js.map +1 -0
  1387. package/dist/uploads/validateUploadURL.d.ts +13 -0
  1388. package/dist/uploads/validateUploadURL.d.ts.map +1 -0
  1389. package/dist/uploads/validateUploadURL.js +37 -0
  1390. package/dist/uploads/validateUploadURL.js.map +1 -0
  1391. package/dist/utilities/addDataAndFileToRequest.d.ts.map +1 -1
  1392. package/dist/utilities/addDataAndFileToRequest.js +14 -46
  1393. package/dist/utilities/addDataAndFileToRequest.js.map +1 -1
  1394. package/dist/utilities/appendNonTrashedFilter.d.ts +1 -1
  1395. package/dist/utilities/appendNonTrashedFilter.d.ts.map +1 -1
  1396. package/dist/utilities/appendNonTrashedFilter.js.map +1 -1
  1397. package/dist/utilities/appendUploadSelectFields.d.ts.map +1 -1
  1398. package/dist/utilities/appendUploadSelectFields.js +4 -3
  1399. package/dist/utilities/appendUploadSelectFields.js.map +1 -1
  1400. package/dist/utilities/batchProcessing.d.ts +23 -0
  1401. package/dist/utilities/batchProcessing.d.ts.map +1 -0
  1402. package/dist/utilities/batchProcessing.js +34 -0
  1403. package/dist/utilities/batchProcessing.js.map +1 -0
  1404. package/dist/utilities/canAccessAdmin.d.ts.map +1 -1
  1405. package/dist/utilities/canAccessAdmin.js +2 -0
  1406. package/dist/utilities/canAccessAdmin.js.map +1 -1
  1407. package/dist/utilities/checkDocumentLockStatus.d.ts +19 -0
  1408. package/dist/utilities/checkDocumentLockStatus.d.ts.map +1 -1
  1409. package/dist/utilities/checkDocumentLockStatus.js +74 -0
  1410. package/dist/utilities/checkDocumentLockStatus.js.map +1 -1
  1411. package/dist/utilities/createPayloadRequest.d.ts +12 -10
  1412. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  1413. package/dist/utilities/createPayloadRequest.js +98 -81
  1414. package/dist/utilities/createPayloadRequest.js.map +1 -1
  1415. package/dist/utilities/createPayloadRequestFromWebRequest.d.ts +14 -0
  1416. package/dist/utilities/createPayloadRequestFromWebRequest.d.ts.map +1 -0
  1417. package/dist/utilities/createPayloadRequestFromWebRequest.js +95 -0
  1418. package/dist/utilities/createPayloadRequestFromWebRequest.js.map +1 -0
  1419. package/dist/utilities/deepCopyObject.d.ts.map +1 -1
  1420. package/dist/utilities/deepCopyObject.js +110 -19
  1421. package/dist/utilities/deepCopyObject.js.map +1 -1
  1422. package/dist/utilities/entityInputSchema/filterFieldsByAccess.d.ts +30 -0
  1423. package/dist/utilities/entityInputSchema/filterFieldsByAccess.d.ts.map +1 -0
  1424. package/dist/utilities/entityInputSchema/filterFieldsByAccess.js +71 -0
  1425. package/dist/utilities/entityInputSchema/filterFieldsByAccess.js.map +1 -0
  1426. package/dist/utilities/entityInputSchema/getEntityInputSchema.d.ts +13 -0
  1427. package/dist/utilities/entityInputSchema/getEntityInputSchema.d.ts.map +1 -0
  1428. package/dist/utilities/entityInputSchema/getEntityInputSchema.js +66 -0
  1429. package/dist/utilities/entityInputSchema/getEntityInputSchema.js.map +1 -0
  1430. package/dist/utilities/entityInputSchema/sanitizeEntitySchema.d.ts +10 -0
  1431. package/dist/utilities/entityInputSchema/sanitizeEntitySchema.d.ts.map +1 -0
  1432. package/dist/utilities/entityInputSchema/sanitizeEntitySchema.js +384 -0
  1433. package/dist/utilities/entityInputSchema/sanitizeEntitySchema.js.map +1 -0
  1434. package/dist/utilities/entityInputSchema/types.d.ts +16 -0
  1435. package/dist/utilities/entityInputSchema/types.d.ts.map +1 -0
  1436. package/dist/utilities/entityInputSchema/types.js +3 -0
  1437. package/dist/utilities/entityInputSchema/types.js.map +1 -0
  1438. package/dist/utilities/entityInputSchema/validateEntityData.d.ts +13 -0
  1439. package/dist/utilities/entityInputSchema/validateEntityData.d.ts.map +1 -0
  1440. package/dist/utilities/entityInputSchema/validateEntityData.js +138 -0
  1441. package/dist/utilities/entityInputSchema/validateEntityData.js.map +1 -0
  1442. package/dist/utilities/fieldPath.d.ts +13 -0
  1443. package/dist/utilities/fieldPath.d.ts.map +1 -0
  1444. package/dist/utilities/fieldPath.js +51 -0
  1445. package/dist/utilities/fieldPath.js.map +1 -0
  1446. package/dist/utilities/fieldValueExists.d.ts +29 -0
  1447. package/dist/utilities/fieldValueExists.d.ts.map +1 -0
  1448. package/dist/utilities/fieldValueExists.js +37 -0
  1449. package/dist/utilities/fieldValueExists.js.map +1 -0
  1450. package/dist/utilities/flattenAllFields.js +1 -1
  1451. package/dist/utilities/flattenAllFields.js.map +1 -1
  1452. package/dist/utilities/formatAdminURL.d.ts +1 -0
  1453. package/dist/utilities/formatAdminURL.d.ts.map +1 -1
  1454. package/dist/utilities/formatAdminURL.js +22 -4
  1455. package/dist/utilities/formatAdminURL.js.map +1 -1
  1456. package/dist/utilities/getEntityPermissions/entityDocExists.d.ts.map +1 -1
  1457. package/dist/utilities/getEntityPermissions/entityDocExists.js +36 -5
  1458. package/dist/utilities/getEntityPermissions/entityDocExists.js.map +1 -1
  1459. package/dist/utilities/getEntityPermissions/getEntityPermissions.d.ts.map +1 -1
  1460. package/dist/utilities/getEntityPermissions/getEntityPermissions.js +1 -0
  1461. package/dist/utilities/getEntityPermissions/getEntityPermissions.js.map +1 -1
  1462. package/dist/utilities/getNextVersion.d.ts +7 -0
  1463. package/dist/utilities/getNextVersion.d.ts.map +1 -0
  1464. package/dist/utilities/getNextVersion.js +20 -0
  1465. package/dist/utilities/getNextVersion.js.map +1 -0
  1466. package/dist/utilities/getObjectDotNotation.d.ts.map +1 -1
  1467. package/dist/utilities/getObjectDotNotation.js +7 -1
  1468. package/dist/utilities/getObjectDotNotation.js.map +1 -1
  1469. package/dist/utilities/getRequestOrigin.d.ts.map +1 -1
  1470. package/dist/utilities/getRequestOrigin.js.map +1 -1
  1471. package/dist/utilities/getSafeRedirect.d.ts.map +1 -1
  1472. package/dist/utilities/getSafeRedirect.js +16 -9
  1473. package/dist/utilities/getSafeRedirect.js.map +1 -1
  1474. package/dist/utilities/getTopLevelFieldNames.d.ts +2 -0
  1475. package/dist/utilities/getTopLevelFieldNames.d.ts.map +1 -0
  1476. package/dist/utilities/getTopLevelFieldNames.js +3 -0
  1477. package/dist/utilities/getTopLevelFieldNames.js.map +1 -0
  1478. package/dist/utilities/getUniqueFieldValue.d.ts +28 -0
  1479. package/dist/utilities/getUniqueFieldValue.d.ts.map +1 -0
  1480. package/dist/utilities/getUniqueFieldValue.js +27 -0
  1481. package/dist/utilities/getUniqueFieldValue.js.map +1 -0
  1482. package/dist/utilities/getVirtualFieldNames.d.ts +14 -0
  1483. package/dist/utilities/getVirtualFieldNames.d.ts.map +1 -0
  1484. package/dist/utilities/getVirtualFieldNames.js +35 -0
  1485. package/dist/utilities/getVirtualFieldNames.js.map +1 -0
  1486. package/dist/utilities/handleEndpoints.d.ts.map +1 -1
  1487. package/dist/utilities/handleEndpoints.js +8 -7
  1488. package/dist/utilities/handleEndpoints.js.map +1 -1
  1489. package/dist/utilities/headersWithCors.js +1 -1
  1490. package/dist/utilities/headersWithCors.js.map +1 -1
  1491. package/dist/utilities/killTransaction.d.ts +7 -0
  1492. package/dist/utilities/killTransaction.d.ts.map +1 -1
  1493. package/dist/utilities/killTransaction.js +7 -0
  1494. package/dist/utilities/killTransaction.js.map +1 -1
  1495. package/dist/utilities/logError.d.ts.map +1 -1
  1496. package/dist/utilities/logError.js +5 -2
  1497. package/dist/utilities/logError.js.map +1 -1
  1498. package/dist/utilities/nextJsDevReloadStrategy.d.ts +7 -0
  1499. package/dist/utilities/nextJsDevReloadStrategy.d.ts.map +1 -0
  1500. package/dist/utilities/nextJsDevReloadStrategy.js +62 -0
  1501. package/dist/utilities/nextJsDevReloadStrategy.js.map +1 -0
  1502. package/dist/utilities/parseDocumentID.d.ts +4 -1
  1503. package/dist/utilities/parseDocumentID.d.ts.map +1 -1
  1504. package/dist/utilities/parseDocumentID.js +7 -1
  1505. package/dist/utilities/parseDocumentID.js.map +1 -1
  1506. package/dist/utilities/parseParams/index.d.ts.map +1 -1
  1507. package/dist/utilities/parseParams/index.js +3 -1
  1508. package/dist/utilities/parseParams/index.js.map +1 -1
  1509. package/dist/utilities/sanitizeUploadPrefix.d.ts +5 -0
  1510. package/dist/utilities/sanitizeUploadPrefix.d.ts.map +1 -0
  1511. package/dist/utilities/sanitizeUploadPrefix.js +18 -0
  1512. package/dist/utilities/sanitizeUploadPrefix.js.map +1 -0
  1513. package/dist/utilities/sharedInputSchemas.d.ts +52 -0
  1514. package/dist/utilities/sharedInputSchemas.d.ts.map +1 -0
  1515. package/dist/utilities/sharedInputSchemas.js +101 -0
  1516. package/dist/utilities/sharedInputSchemas.js.map +1 -0
  1517. package/dist/utilities/telemetry/featureInfo/getFeatureInfo.d.ts +4 -0
  1518. package/dist/utilities/telemetry/featureInfo/getFeatureInfo.d.ts.map +1 -0
  1519. package/dist/utilities/telemetry/featureInfo/getFeatureInfo.js +262 -0
  1520. package/dist/utilities/telemetry/featureInfo/getFeatureInfo.js.map +1 -0
  1521. package/dist/utilities/telemetry/featureInfo/types.d.ts +63 -0
  1522. package/dist/utilities/telemetry/featureInfo/types.d.ts.map +1 -0
  1523. package/dist/utilities/telemetry/featureInfo/types.js +3 -0
  1524. package/dist/utilities/telemetry/featureInfo/types.js.map +1 -0
  1525. package/dist/utilities/telemetry/getProjectContext.d.ts +16 -0
  1526. package/dist/utilities/telemetry/getProjectContext.d.ts.map +1 -0
  1527. package/dist/utilities/telemetry/getProjectContext.js +43 -0
  1528. package/dist/utilities/telemetry/getProjectContext.js.map +1 -0
  1529. package/dist/utilities/telemetry/index.d.ts +6 -1
  1530. package/dist/utilities/telemetry/index.d.ts.map +1 -1
  1531. package/dist/utilities/telemetry/index.js +21 -1
  1532. package/dist/utilities/telemetry/index.js.map +1 -1
  1533. package/dist/utilities/transformPointDataToPayload.d.ts +7 -0
  1534. package/dist/utilities/transformPointDataToPayload.d.ts.map +1 -0
  1535. package/dist/utilities/transformPointDataToPayload.js +28 -0
  1536. package/dist/utilities/transformPointDataToPayload.js.map +1 -0
  1537. package/dist/utilities/traverseFields.d.ts.map +1 -1
  1538. package/dist/utilities/traverseFields.js +25 -36
  1539. package/dist/utilities/traverseFields.js.map +1 -1
  1540. package/dist/utilities/unflatten.d.ts.map +1 -1
  1541. package/dist/utilities/unflatten.js +21 -9
  1542. package/dist/utilities/unflatten.js.map +1 -1
  1543. package/dist/utilities/unflattenData.d.ts +3 -0
  1544. package/dist/utilities/unflattenData.d.ts.map +1 -0
  1545. package/dist/utilities/unflattenData.js +14 -0
  1546. package/dist/utilities/unflattenData.js.map +1 -0
  1547. package/dist/utilities/zod.d.ts +5 -0
  1548. package/dist/utilities/zod.d.ts.map +1 -0
  1549. package/dist/utilities/zod.js +21 -0
  1550. package/dist/utilities/zod.js.map +1 -0
  1551. package/dist/versions/allLocalesPublicationStatus.d.ts +38 -0
  1552. package/dist/versions/allLocalesPublicationStatus.d.ts.map +1 -0
  1553. package/dist/versions/allLocalesPublicationStatus.js +57 -0
  1554. package/dist/versions/allLocalesPublicationStatus.js.map +1 -0
  1555. package/dist/versions/deleteCollectionVersions.d.ts +11 -1
  1556. package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
  1557. package/dist/versions/deleteCollectionVersions.js +10 -3
  1558. package/dist/versions/deleteCollectionVersions.js.map +1 -1
  1559. package/dist/versions/deleteScheduledPublishJobs.d.ts +5 -1
  1560. package/dist/versions/deleteScheduledPublishJobs.d.ts.map +1 -1
  1561. package/dist/versions/deleteScheduledPublishJobs.js +11 -5
  1562. package/dist/versions/deleteScheduledPublishJobs.js.map +1 -1
  1563. package/dist/versions/drafts/appendVersionToQueryKey.d.ts +1 -0
  1564. package/dist/versions/drafts/appendVersionToQueryKey.d.ts.map +1 -1
  1565. package/dist/versions/drafts/appendVersionToQueryKey.js +6 -12
  1566. package/dist/versions/drafts/appendVersionToQueryKey.js.map +1 -1
  1567. package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
  1568. package/dist/versions/getLatestGlobalVersion.js +10 -2
  1569. package/dist/versions/getLatestGlobalVersion.js.map +1 -1
  1570. package/dist/versions/getRestoredStatusesToAuthorize.d.ts +9 -0
  1571. package/dist/versions/getRestoredStatusesToAuthorize.d.ts.map +1 -0
  1572. package/dist/versions/getRestoredStatusesToAuthorize.js +22 -0
  1573. package/dist/versions/getRestoredStatusesToAuthorize.js.map +1 -0
  1574. package/dist/versions/isInheritedReadVersionsAccess.d.ts +6 -0
  1575. package/dist/versions/isInheritedReadVersionsAccess.d.ts.map +1 -0
  1576. package/dist/versions/isInheritedReadVersionsAccess.js +30 -0
  1577. package/dist/versions/isInheritedReadVersionsAccess.js.map +1 -0
  1578. package/dist/versions/payloadPackageList.d.ts.map +1 -1
  1579. package/dist/versions/payloadPackageList.js +0 -1
  1580. package/dist/versions/payloadPackageList.js.map +1 -1
  1581. package/dist/versions/schedule/job.d.ts +2 -2
  1582. package/dist/versions/schedule/job.d.ts.map +1 -1
  1583. package/dist/versions/schedule/job.js +12 -8
  1584. package/dist/versions/schedule/job.js.map +1 -1
  1585. package/dist/versions/schedule/types.d.ts +5 -1
  1586. package/dist/versions/schedule/types.d.ts.map +1 -1
  1587. package/dist/versions/schedule/types.js.map +1 -1
  1588. package/package.json +30 -13
  1589. package/skills/payload/SKILL.md +544 -0
  1590. package/skills/payload/reference/ACCESS-CONTROL-ADVANCED.md +718 -0
  1591. package/skills/payload/reference/ACCESS-CONTROL.md +700 -0
  1592. package/skills/payload/reference/ADAPTERS.md +312 -0
  1593. package/skills/payload/reference/ADVANCED.md +393 -0
  1594. package/skills/payload/reference/COLLECTIONS.md +336 -0
  1595. package/skills/payload/reference/ENDPOINTS.md +650 -0
  1596. package/skills/payload/reference/FIELD-TYPE-GUARDS.md +553 -0
  1597. package/skills/payload/reference/FIELDS.md +748 -0
  1598. package/skills/payload/reference/HOOKS.md +186 -0
  1599. package/skills/payload/reference/PLUGIN-DEVELOPMENT.md +1445 -0
  1600. package/skills/payload/reference/QUERIES.md +282 -0
  1601. package/dist/auth/cookies.spec.js +0 -34
  1602. package/dist/auth/cookies.spec.js.map +0 -1
  1603. package/dist/auth/strategies/local/authenticate.spec.js +0 -83
  1604. package/dist/auth/strategies/local/authenticate.spec.js.map +0 -1
  1605. package/dist/bin/build.d.ts.map +0 -1
  1606. package/dist/bin/build.js.map +0 -1
  1607. package/dist/bin/build.spec.js +0 -594
  1608. package/dist/bin/build.spec.js.map +0 -1
  1609. package/dist/bin/frameworkConventions.d.ts.map +0 -1
  1610. package/dist/bin/frameworkConventions.js.map +0 -1
  1611. package/dist/bin/generateImportMap/generateImportMap.spec.js +0 -176
  1612. package/dist/bin/generateImportMap/generateImportMap.spec.js.map +0 -1
  1613. package/dist/bin/generateImportMap/index.d.ts.map +0 -1
  1614. package/dist/bin/generateImportMap/index.js.map +0 -1
  1615. package/dist/bin/generateImportMap/iterateCollections.d.ts.map +0 -1
  1616. package/dist/bin/generateImportMap/iterateCollections.js.map +0 -1
  1617. package/dist/bin/generateImportMap/iterateConfig.d.ts.map +0 -1
  1618. package/dist/bin/generateImportMap/iterateConfig.js.map +0 -1
  1619. package/dist/bin/generateImportMap/iterateFields.d.ts.map +0 -1
  1620. package/dist/bin/generateImportMap/iterateFields.js.map +0 -1
  1621. package/dist/bin/generateImportMap/iterateGlobals.d.ts.map +0 -1
  1622. package/dist/bin/generateImportMap/iterateGlobals.js.map +0 -1
  1623. package/dist/bin/generateImportMap/utilities/addPayloadComponentToImportMap.d.ts.map +0 -1
  1624. package/dist/bin/generateImportMap/utilities/addPayloadComponentToImportMap.js.map +0 -1
  1625. package/dist/bin/generateImportMap/utilities/getFromImportMap.d.ts.map +0 -1
  1626. package/dist/bin/generateImportMap/utilities/getFromImportMap.js.map +0 -1
  1627. package/dist/bin/generateImportMap/utilities/getImportMapToBaseDirPath.d.ts.map +0 -1
  1628. package/dist/bin/generateImportMap/utilities/getImportMapToBaseDirPath.js.map +0 -1
  1629. package/dist/bin/generateImportMap/utilities/parsePayloadComponent.d.ts.map +0 -1
  1630. package/dist/bin/generateImportMap/utilities/parsePayloadComponent.js.map +0 -1
  1631. package/dist/bin/generateImportMap/utilities/resolveImportMapFilePath.d.ts.map +0 -1
  1632. package/dist/bin/generateImportMap/utilities/resolveImportMapFilePath.js.map +0 -1
  1633. package/dist/bin/generateTypes.d.ts +0 -6
  1634. package/dist/bin/generateTypes.d.ts.map +0 -1
  1635. package/dist/bin/generateTypes.js.map +0 -1
  1636. package/dist/bin/index.d.ts +0 -2
  1637. package/dist/bin/index.d.ts.map +0 -1
  1638. package/dist/bin/index.js +0 -200
  1639. package/dist/bin/index.js.map +0 -1
  1640. package/dist/bin/info.d.ts +0 -2
  1641. package/dist/bin/info.d.ts.map +0 -1
  1642. package/dist/bin/info.js +0 -56
  1643. package/dist/bin/info.js.map +0 -1
  1644. package/dist/bin/loadEnv.d.ts.map +0 -1
  1645. package/dist/bin/loadEnv.js.map +0 -1
  1646. package/dist/bin/migrate.d.ts +0 -15
  1647. package/dist/bin/migrate.d.ts.map +0 -1
  1648. package/dist/bin/migrate.js +0 -102
  1649. package/dist/bin/migrate.js.map +0 -1
  1650. package/dist/collections/config/defaults.spec.js +0 -47
  1651. package/dist/collections/config/defaults.spec.js.map +0 -1
  1652. package/dist/collections/config/sanitize.spec.js +0 -120
  1653. package/dist/collections/config/sanitize.spec.js.map +0 -1
  1654. package/dist/collections/config/useAsTitle.spec.js +0 -187
  1655. package/dist/collections/config/useAsTitle.spec.js.map +0 -1
  1656. package/dist/database/defaultUpdateJobs.d.ts +0 -3
  1657. package/dist/database/defaultUpdateJobs.d.ts.map +0 -1
  1658. package/dist/database/defaultUpdateJobs.js +0 -41
  1659. package/dist/database/defaultUpdateJobs.js.map +0 -1
  1660. package/dist/database/migrations/findMigrationDir.spec.js +0 -47
  1661. package/dist/database/migrations/findMigrationDir.spec.js.map +0 -1
  1662. package/dist/fields/baseFields/slug/countVersions.d.ts +0 -13
  1663. package/dist/fields/baseFields/slug/countVersions.d.ts.map +0 -1
  1664. package/dist/fields/baseFields/slug/countVersions.js +0 -27
  1665. package/dist/fields/baseFields/slug/countVersions.js.map +0 -1
  1666. package/dist/fields/config/reservedFieldNames.spec.js +0 -149
  1667. package/dist/fields/config/reservedFieldNames.spec.js.map +0 -1
  1668. package/dist/fields/config/sanitize.spec.js +0 -745
  1669. package/dist/fields/config/sanitize.spec.js.map +0 -1
  1670. package/dist/fields/isFieldDisabled.spec.js +0 -134
  1671. package/dist/fields/isFieldDisabled.spec.js.map +0 -1
  1672. package/dist/fields/validations.spec.js +0 -990
  1673. package/dist/fields/validations.spec.js.map +0 -1
  1674. package/dist/globals/config/sanitize.spec.js +0 -43
  1675. package/dist/globals/config/sanitize.spec.js.map +0 -1
  1676. package/dist/hierarchy/utils/getLocalizedValue.spec.js +0 -250
  1677. package/dist/hierarchy/utils/getLocalizedValue.spec.js.map +0 -1
  1678. package/dist/locked-documents/config.spec.js +0 -298
  1679. package/dist/locked-documents/config.spec.js.map +0 -1
  1680. package/dist/uploads/checkFileAccess.spec.js +0 -109
  1681. package/dist/uploads/checkFileAccess.spec.js.map +0 -1
  1682. package/dist/uploads/cropImage.d.ts +0 -30
  1683. package/dist/uploads/cropImage.d.ts.map +0 -1
  1684. package/dist/uploads/cropImage.js +0 -58
  1685. package/dist/uploads/cropImage.js.map +0 -1
  1686. package/dist/uploads/endpoints/getFileFromURL.d.ts +0 -3
  1687. package/dist/uploads/endpoints/getFileFromURL.d.ts.map +0 -1
  1688. package/dist/uploads/endpoints/getFileFromURL.js.map +0 -1
  1689. package/dist/uploads/fetchAPI-multipart/isEligibleRequest.spec.js +0 -29
  1690. package/dist/uploads/fetchAPI-multipart/isEligibleRequest.spec.js.map +0 -1
  1691. package/dist/uploads/getExternalFile.d.ts +0 -10
  1692. package/dist/uploads/getExternalFile.d.ts.map +0 -1
  1693. package/dist/uploads/getExternalFile.js +0 -73
  1694. package/dist/uploads/getExternalFile.js.map +0 -1
  1695. package/dist/uploads/getSafeFilename.spec.js +0 -274
  1696. package/dist/uploads/getSafeFilename.spec.js.map +0 -1
  1697. package/dist/uploads/image-resizing/createImageSize.d.ts +0 -24
  1698. package/dist/uploads/image-resizing/createImageSize.d.ts.map +0 -1
  1699. package/dist/uploads/image-resizing/createImageSize.js +0 -23
  1700. package/dist/uploads/image-resizing/createImageSize.js.map +0 -1
  1701. package/dist/uploads/image-resizing/createImageSizes.d.ts +0 -39
  1702. package/dist/uploads/image-resizing/createImageSizes.d.ts.map +0 -1
  1703. package/dist/uploads/image-resizing/createImageSizes.js +0 -208
  1704. package/dist/uploads/image-resizing/createImageSizes.js.map +0 -1
  1705. package/dist/uploads/image-resizing/extractHeightFromImage.d.ts +0 -9
  1706. package/dist/uploads/image-resizing/extractHeightFromImage.d.ts.map +0 -1
  1707. package/dist/uploads/image-resizing/extractHeightFromImage.js +0 -13
  1708. package/dist/uploads/image-resizing/extractHeightFromImage.js.map +0 -1
  1709. package/dist/uploads/image-resizing/generateImageSizeFilename.d.ts.map +0 -1
  1710. package/dist/uploads/image-resizing/generateImageSizeFilename.js.map +0 -1
  1711. package/dist/uploads/image-resizing/getImageResizeAction.d.ts +0 -24
  1712. package/dist/uploads/image-resizing/getImageResizeAction.d.ts.map +0 -1
  1713. package/dist/uploads/image-resizing/getImageResizeAction.js +0 -56
  1714. package/dist/uploads/image-resizing/getImageResizeAction.js.map +0 -1
  1715. package/dist/uploads/image-resizing/parseFilename.d.ts.map +0 -1
  1716. package/dist/uploads/image-resizing/parseFilename.js.map +0 -1
  1717. package/dist/uploads/image-resizing/sanitizeResizeConfig.d.ts +0 -11
  1718. package/dist/uploads/image-resizing/sanitizeResizeConfig.d.ts.map +0 -1
  1719. package/dist/uploads/image-resizing/sanitizeResizeConfig.js +0 -20
  1720. package/dist/uploads/image-resizing/sanitizeResizeConfig.js.map +0 -1
  1721. package/dist/uploads/matchMimeType.spec.js +0 -66
  1722. package/dist/uploads/matchMimeType.spec.js.map +0 -1
  1723. package/dist/uploads/mimeTypeValidator.spec.js +0 -84
  1724. package/dist/uploads/mimeTypeValidator.spec.js.map +0 -1
  1725. package/dist/uploads/optionallyAppendMetadata.d.ts +0 -12
  1726. package/dist/uploads/optionallyAppendMetadata.d.ts.map +0 -1
  1727. package/dist/uploads/optionallyAppendMetadata.js +0 -17
  1728. package/dist/uploads/optionallyAppendMetadata.js.map +0 -1
  1729. package/dist/uploads/tempFile.d.ts +0 -7
  1730. package/dist/uploads/tempFile.d.ts.map +0 -1
  1731. package/dist/uploads/tempFile.js +0 -39
  1732. package/dist/uploads/tempFile.js.map +0 -1
  1733. package/dist/utilities/addDataAndFileToRequest.spec.js +0 -41
  1734. package/dist/utilities/addDataAndFileToRequest.spec.js.map +0 -1
  1735. package/dist/utilities/addSelectGenericsToGeneratedTypes.spec.js +0 -563
  1736. package/dist/utilities/addSelectGenericsToGeneratedTypes.spec.js.map +0 -1
  1737. package/dist/utilities/combineWhereConstraints.spec.js +0 -131
  1738. package/dist/utilities/combineWhereConstraints.spec.js.map +0 -1
  1739. package/dist/utilities/configToJSONSchema.spec.js +0 -1162
  1740. package/dist/utilities/configToJSONSchema.spec.js.map +0 -1
  1741. package/dist/utilities/createLocalReq.d.ts +0 -15
  1742. package/dist/utilities/createLocalReq.d.ts.map +0 -1
  1743. package/dist/utilities/createLocalReq.js +0 -110
  1744. package/dist/utilities/createLocalReq.js.map +0 -1
  1745. package/dist/utilities/createLocalReq.spec.js +0 -125
  1746. package/dist/utilities/createLocalReq.spec.js.map +0 -1
  1747. package/dist/utilities/filterDataToSelectedLocales.spec.js +0 -529
  1748. package/dist/utilities/filterDataToSelectedLocales.spec.js.map +0 -1
  1749. package/dist/utilities/flattenTopLevelFields.spec.js +0 -659
  1750. package/dist/utilities/flattenTopLevelFields.spec.js.map +0 -1
  1751. package/dist/utilities/formatAdminURL.spec.js +0 -168
  1752. package/dist/utilities/formatAdminURL.spec.js.map +0 -1
  1753. package/dist/utilities/formatErrors.spec.js +0 -101
  1754. package/dist/utilities/formatErrors.spec.js.map +0 -1
  1755. package/dist/utilities/formatLabels.spec.js +0 -38
  1756. package/dist/utilities/formatLabels.spec.js.map +0 -1
  1757. package/dist/utilities/getFieldByPath.spec.js +0 -157
  1758. package/dist/utilities/getFieldByPath.spec.js.map +0 -1
  1759. package/dist/utilities/getFieldPermissions.spec.js +0 -78
  1760. package/dist/utilities/getFieldPermissions.spec.js.map +0 -1
  1761. package/dist/utilities/getRequestOrigin.spec.js +0 -151
  1762. package/dist/utilities/getRequestOrigin.spec.js.map +0 -1
  1763. package/dist/utilities/getSafeRedirect.spec.js +0 -84
  1764. package/dist/utilities/getSafeRedirect.spec.js.map +0 -1
  1765. package/dist/utilities/isURLAllowed.spec.js +0 -78
  1766. package/dist/utilities/isURLAllowed.spec.js.map +0 -1
  1767. package/dist/utilities/isolateObjectProperty.spec.js +0 -120
  1768. package/dist/utilities/isolateObjectProperty.spec.js.map +0 -1
  1769. package/dist/utilities/mergeLocalizedData.spec.js +0 -1108
  1770. package/dist/utilities/mergeLocalizedData.spec.js.map +0 -1
  1771. package/dist/utilities/optionsAreEqual.spec.js +0 -319
  1772. package/dist/utilities/optionsAreEqual.spec.js.map +0 -1
  1773. package/dist/utilities/parseParams/index.spec.js +0 -384
  1774. package/dist/utilities/parseParams/index.spec.js.map +0 -1
  1775. package/dist/utilities/profiling.spec.js +0 -53
  1776. package/dist/utilities/profiling.spec.js.map +0 -1
  1777. package/dist/utilities/sanitizePermissions.spec.js +0 -1639
  1778. package/dist/utilities/sanitizePermissions.spec.js.map +0 -1
  1779. package/dist/utilities/sanitizeUserDataForEmail.spec.js +0 -134
  1780. package/dist/utilities/sanitizeUserDataForEmail.spec.js.map +0 -1
  1781. package/dist/utilities/telemetry/index.spec.js +0 -43
  1782. package/dist/utilities/telemetry/index.spec.js.map +0 -1
  1783. package/dist/utilities/traverseFields.spec.js +0 -53
  1784. package/dist/utilities/traverseFields.spec.js.map +0 -1
  1785. package/dist/utilities/validateTimezones.spec.js +0 -493
  1786. package/dist/utilities/validateTimezones.spec.js.map +0 -1
  1787. /package/dist/{bin → cli/commands/generateImportMap}/frameworkConventions.d.ts +0 -0
  1788. /package/dist/{bin → cli/commands/generateImportMap}/frameworkConventions.js +0 -0
  1789. /package/dist/{bin → cli/commands}/generateImportMap/iterateCollections.js +0 -0
  1790. /package/dist/{bin → cli/commands}/generateImportMap/iterateFields.js +0 -0
  1791. /package/dist/{bin → cli/commands}/generateImportMap/iterateGlobals.js +0 -0
  1792. /package/dist/{bin → cli/commands}/generateImportMap/utilities/addPayloadComponentToImportMap.js +0 -0
  1793. /package/dist/{bin → cli/commands}/generateImportMap/utilities/getFromImportMap.js +0 -0
  1794. /package/dist/{bin → cli/commands}/generateImportMap/utilities/getImportMapToBaseDirPath.d.ts +0 -0
  1795. /package/dist/{bin → cli/commands}/generateImportMap/utilities/getImportMapToBaseDirPath.js +0 -0
  1796. /package/dist/{bin → cli/commands}/generateImportMap/utilities/parsePayloadComponent.js +0 -0
  1797. /package/dist/{bin → cli/commands}/generateImportMap/utilities/resolveImportMapFilePath.d.ts +0 -0
  1798. /package/dist/{bin → cli/runtime}/loadEnv.d.ts +0 -0
  1799. /package/dist/uploads/{image-resizing/generateImageSizeFilename.d.ts → generateImageSizeFilename.d.ts} +0 -0
  1800. /package/dist/uploads/{image-resizing/generateImageSizeFilename.js → generateImageSizeFilename.js} +0 -0
  1801. /package/dist/uploads/{image-resizing/parseFilename.d.ts → parseFilename.d.ts} +0 -0
  1802. /package/dist/uploads/{image-resizing/parseFilename.js → parseFilename.js} +0 -0
@@ -5,171 +5,187 @@ import { fileFactory } from './fileFactory.js';
5
5
  import { memHandler, tempFileHandler } from './handlers.js';
6
6
  import { processNested } from './processNested.js';
7
7
  import { createUploadTimer } from './uploadTimer.js';
8
- import { buildFields, debugLog, isFunc, parseFileName } from './utilities.js';
9
- const waitFlushProperty = Symbol('wait flush property symbol');
8
+ import { buildFields, isFunc, parseFileName } from './utilities.js';
10
9
  export const processMultipart = async ({ options, request })=>{
11
- let parsingRequest = true;
12
- let shouldAbortProccessing = false;
13
- let fileCount = 0;
14
- let filesCompleted = 0;
15
- let allFilesHaveResolved;
16
- let failedResolvingFiles;
17
- let busboyFinishedResolve;
18
- let busboyFinishedReject;
19
- const allFilesComplete = new Promise((res, rej)=>{
20
- allFilesHaveResolved = res;
21
- failedResolvingFiles = rej;
22
- });
23
- // Busboy rejects these from a stream event before the awaits below attach, so
24
- // Node reports them as unhandled and kills the process on oversize uploads.
25
- allFilesComplete.catch(()=>{});
26
- const busboyFinished = new Promise((resolve, reject)=>{
27
- busboyFinishedResolve = resolve;
28
- busboyFinishedReject = reject;
29
- });
30
- busboyFinished.catch(()=>{});
10
+ const { requestSizeLimit = Infinity, ...busboyOptions } = options;
31
11
  const result = {
32
12
  fields: undefined,
33
13
  files: undefined
34
14
  };
35
- const headersObject = {};
15
+ const headers = {};
36
16
  request.headers.forEach((value, name)=>{
37
- headersObject[name] = value;
17
+ headers[name] = value;
38
18
  });
39
- const reader = request.body?.getReader();
40
19
  const busboy = Busboy({
41
- ...options,
42
- headers: headersObject
20
+ ...busboyOptions,
21
+ headers
43
22
  });
44
- function abortAndDestroyFile(file, err) {
45
- file.destroy();
46
- shouldAbortProccessing = true;
47
- failedResolvingFiles(err);
48
- }
49
- // Build multipart req.body fields
50
- busboy.on('field', (field, val)=>{
51
- result.fields = buildFields(result.fields, field, val);
23
+ const reader = request.body.getReader();
24
+ const uploads = [];
25
+ const writes = [];
26
+ let failure;
27
+ let requestSize = 0;
28
+ let rejectFinished;
29
+ let resolveFinished;
30
+ const finished = new Promise((resolve, reject)=>{
31
+ resolveFinished = resolve;
32
+ rejectFinished = reject;
33
+ });
34
+ const fail = (err)=>{
35
+ if (failure) {
36
+ return;
37
+ }
38
+ failure = err;
39
+ rejectFinished(err);
40
+ // Busboy may still be updating its current file after emitting a limit event.
41
+ queueMicrotask(()=>{
42
+ for (const upload of uploads){
43
+ upload.clear();
44
+ upload.file.destroy();
45
+ }
46
+ busboy.destroy();
47
+ void reader.cancel(err).catch(()=>{});
48
+ });
49
+ };
50
+ const limitError = ()=>new APIError('Multipart limit has been reached', httpStatus.REQUEST_ENTITY_TOO_LARGE);
51
+ const requestSizeLimitError = ()=>new APIError('Multipart request size limit has been reached', httpStatus.REQUEST_ENTITY_TOO_LARGE);
52
+ busboy.on('filesLimit', ()=>fail(limitError()));
53
+ busboy.on('fieldsLimit', ()=>fail(limitError()));
54
+ busboy.on('partsLimit', ()=>fail(limitError()));
55
+ busboy.on('error', fail);
56
+ busboy.on('field', (field, value, info)=>{
57
+ if (info.valueTruncated || info.nameTruncated) {
58
+ fail(limitError());
59
+ } else if (!failure) {
60
+ result.fields = buildFields(result.fields, field, value);
61
+ }
52
62
  });
53
- // Build req.files fields
54
63
  busboy.on('file', (field, file, info)=>{
55
- fileCount += 1;
56
- // Parse file name(cutting huge names, decoding, etc..).
64
+ if (failure) {
65
+ file.resume();
66
+ return;
67
+ }
57
68
  const { encoding, filename: name, mimeType: mime } = info;
58
69
  const filename = parseFileName(options, name);
59
- const inferredMimeType = filename && filename.endsWith('.glb') && 'model/gltf-binary' || filename && filename.endsWith('.gltf') && 'model/gltf+json' || mime;
60
- // Define methods and handlers for upload process.
61
- const { cleanup, complete, dataHandler, getFilePath, getFileSize, getHash, getWritePromise } = options.useTempFiles ? tempFileHandler(options, field, filename) // Upload into temporary file.
62
- : memHandler(options, field, filename) // Upload into RAM.
63
- ;
64
- const writePromise = options.useTempFiles ? getWritePromise().catch(()=>{
65
- busboy.end();
66
- cleanup();
67
- }) : getWritePromise();
68
- const uploadTimer = createUploadTimer(options.uploadTimeout, ()=>{
69
- return abortAndDestroyFile(file, new APIError(`Upload timeout for ${field}->${filename}, bytes:${getFileSize()}`));
70
+ const mimetype = filename.endsWith('.glb') && 'model/gltf-binary' || filename.endsWith('.gltf') && 'model/gltf+json' || mime;
71
+ const handler = options.useTempFiles ? tempFileHandler(options, field, filename) : memHandler(options, field, filename);
72
+ const timer = createUploadTimer(options.uploadTimeout, ()=>{
73
+ fail(new APIError(`Upload timeout for ${field}->${filename}, bytes:${handler.getFileSize()}`));
74
+ });
75
+ uploads.push({
76
+ cleanup: handler.cleanup,
77
+ clear: timer.clear,
78
+ file
70
79
  });
80
+ // Observe write failures immediately, including failures before file end.
81
+ const write = handler.getWritePromise();
82
+ void write.catch(fail);
83
+ writes.push(write);
71
84
  file.on('limit', ()=>{
72
- debugLog(options, `Size limit reached for ${field}->${filename}, bytes:${getFileSize()}`);
73
- uploadTimer.clear();
74
- if (isFunc(options.limitHandler)) {
75
- options.limitHandler({
76
- request,
77
- size: getFileSize()
78
- });
79
- }
80
- // Return error and cleanup files if abortOnLimit set.
81
- if (options.abortOnLimit) {
82
- debugLog(options, `Upload file size limit reached ${field}->${filename}.`);
83
- cleanup();
84
- abortAndDestroyFile(file, new APIError(options.responseOnLimit, httpStatus.REQUEST_ENTITY_TOO_LARGE, {
85
- size: getFileSize()
86
- }));
85
+ timer.clear();
86
+ try {
87
+ if (isFunc(options.limitHandler)) {
88
+ options.limitHandler({
89
+ request,
90
+ size: handler.getFileSize()
91
+ });
92
+ }
93
+ if (options.abortOnLimit) {
94
+ fail(new APIError(options.responseOnLimit, httpStatus.REQUEST_ENTITY_TOO_LARGE, {
95
+ size: handler.getFileSize()
96
+ }));
97
+ }
98
+ } catch (err) {
99
+ fail(err);
87
100
  }
88
101
  });
89
102
  file.on('data', (data)=>{
90
- uploadTimer.set();
91
- dataHandler(data);
103
+ if (failure) {
104
+ return;
105
+ }
106
+ timer.set();
107
+ const pending = handler.dataHandler(data);
108
+ if (pending) {
109
+ file.pause();
110
+ void pending.then(()=>{
111
+ if (!failure) {
112
+ file.resume();
113
+ }
114
+ }, fail);
115
+ }
92
116
  });
117
+ file.on('error', fail);
93
118
  file.on('end', ()=>{
94
- const size = getFileSize();
95
- debugLog(options, `Upload finished ${field}->${filename}, bytes:${size}`);
96
- uploadTimer.clear();
119
+ timer.clear();
120
+ if (failure) {
121
+ return;
122
+ }
123
+ const size = handler.getFileSize();
124
+ const buffer = handler.complete();
97
125
  if (!name && size === 0) {
98
- fileCount -= 1;
99
- if (options.useTempFiles) {
100
- cleanup();
101
- debugLog(options, `Removing the empty file ${field}->${filename}`);
102
- }
103
- return debugLog(options, `Don't add file instance if original name and size are empty`);
126
+ const cleanup = Promise.resolve(handler.cleanup()).then(()=>true);
127
+ void cleanup.catch(fail);
128
+ writes.push(cleanup);
129
+ return;
104
130
  }
105
- filesCompleted += 1;
106
131
  result.files = buildFields(result.files, field, fileFactory({
107
132
  name: filename,
108
- buffer: complete(),
133
+ buffer,
109
134
  encoding,
110
- hash: getHash(),
111
- mimetype: inferredMimeType,
135
+ hash: handler.getHash(),
136
+ mimetype,
112
137
  size,
113
- tempFilePath: getFilePath(),
114
- truncated: Boolean('truncated' in file && file.truncated) || false
138
+ tempFilePath: handler.getFilePath(),
139
+ truncated: Boolean(file.truncated)
115
140
  }, options));
116
- if (!request[waitFlushProperty]) {
117
- request[waitFlushProperty] = [];
118
- }
119
- request[waitFlushProperty].push(writePromise);
120
- if (filesCompleted === fileCount) {
121
- allFilesHaveResolved();
122
- }
123
- });
124
- file.on('error', (err)=>{
125
- uploadTimer.clear();
126
- debugLog(options, `File Error: ${err.message}`);
127
- cleanup();
128
- failedResolvingFiles(err);
129
141
  });
130
- // Start upload process.
131
- debugLog(options, `New upload started ${field}->${filename}, bytes:${getFileSize()}`);
132
- uploadTimer.set();
142
+ timer.set();
133
143
  });
134
- busboy.on('finish', async ()=>{
135
- debugLog(options, `Busboy finished parsing request.`);
136
- if (options.parseNested) {
137
- result.fields = processNested(result.fields);
138
- result.files = processNested(result.files);
139
- }
140
- if (request[waitFlushProperty]) {
141
- try {
142
- await Promise.all(request[waitFlushProperty]).then(()=>{
143
- delete request[waitFlushProperty];
144
+ busboy.on('finish', ()=>{
145
+ void Promise.all(writes).then(()=>resolveFinished(), fail);
146
+ });
147
+ // Waiting for each write callback bounds the parser queue and respects its backpressure.
148
+ const pump = async ()=>{
149
+ try {
150
+ while(!failure){
151
+ const { done, value } = await reader.read();
152
+ if (failure) {
153
+ break;
154
+ }
155
+ if (done) {
156
+ busboy.end();
157
+ break;
158
+ }
159
+ requestSize += value.byteLength;
160
+ if (requestSize > requestSizeLimit) {
161
+ const err = requestSizeLimitError();
162
+ fail(err);
163
+ await reader.cancel(err).catch(()=>{});
164
+ break;
165
+ }
166
+ await new Promise((resolve, reject)=>{
167
+ busboy.write(value, (err)=>err ? reject(err) : resolve());
144
168
  });
145
- } catch (err) {
146
- debugLog(options, `Error waiting for file write promises: ${err}`);
147
169
  }
170
+ } finally{
171
+ reader.releaseLock();
148
172
  }
149
- busboyFinishedResolve();
150
- });
151
- busboy.on('error', (err = new APIError('Busboy error parsing multipart request', httpStatus.BAD_REQUEST))=>{
152
- debugLog(options, `Busboy error`);
153
- const busboyError = err instanceof Error ? err : new APIError('Busboy error parsing multipart request', httpStatus.BAD_REQUEST);
154
- busboyFinishedReject(busboyError);
155
- });
156
- while(parsingRequest){
157
- const { done, value } = await reader.read();
158
- if (done) {
159
- parsingRequest = false;
160
- busboy.end();
173
+ };
174
+ void pump().catch(fail);
175
+ try {
176
+ await finished;
177
+ if (options.parseNested) {
178
+ result.fields = processNested(result.fields);
179
+ result.files = processNested(result.files);
161
180
  }
162
- if (value && !shouldAbortProccessing) {
163
- busboy.write(value);
181
+ return result;
182
+ } catch (err) {
183
+ for (const upload of uploads){
184
+ upload.clear();
164
185
  }
186
+ await Promise.all(uploads.map(async ({ cleanup })=>cleanup()));
187
+ throw err;
165
188
  }
166
- if (fileCount !== 0) {
167
- await allFilesComplete.catch((e)=>{
168
- throw e;
169
- });
170
- }
171
- await busboyFinished;
172
- return result;
173
189
  };
174
190
 
175
191
  //# sourceMappingURL=processMultipart.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/uploads/fetchAPI-multipart/processMultipart.ts"],"sourcesContent":["import type { Readable } from 'stream'\n\nimport Busboy from 'busboy'\nimport { status as httpStatus } from 'http-status'\n\nimport type { FetchAPIFileUploadOptions } from '../../config/types.js'\nimport type { FetchAPIFileUploadResponse } from './index.js'\n\nimport { APIError } from '../../errors/APIError.js'\nimport { fileFactory } from './fileFactory.js'\nimport { memHandler, tempFileHandler } from './handlers.js'\nimport { processNested } from './processNested.js'\nimport { createUploadTimer } from './uploadTimer.js'\nimport { buildFields, debugLog, isFunc, parseFileName } from './utilities.js'\n\nconst waitFlushProperty = Symbol('wait flush property symbol')\n\ndeclare global {\n interface Request {\n [waitFlushProperty]?: Promise<any>[]\n }\n}\n\ntype ProcessMultipart = (args: {\n options: FetchAPIFileUploadOptions\n request: Request\n}) => Promise<FetchAPIFileUploadResponse>\nexport const processMultipart: ProcessMultipart = async ({ options, request }) => {\n let parsingRequest = true\n\n let shouldAbortProccessing = false\n let fileCount = 0\n let filesCompleted = 0\n let allFilesHaveResolved: (value?: unknown) => void\n let failedResolvingFiles: (err: Error) => void\n let busboyFinishedResolve: () => void\n let busboyFinishedReject: (err: Error) => void\n\n const allFilesComplete = new Promise((res, rej) => {\n allFilesHaveResolved = res\n failedResolvingFiles = rej\n })\n\n // Busboy rejects these from a stream event before the awaits below attach, so\n // Node reports them as unhandled and kills the process on oversize uploads.\n allFilesComplete.catch(() => {})\n\n const busboyFinished = new Promise<void>((resolve, reject) => {\n busboyFinishedResolve = resolve\n busboyFinishedReject = reject\n })\n\n busboyFinished.catch(() => {})\n\n const result: FetchAPIFileUploadResponse = {\n fields: undefined!,\n files: undefined!,\n }\n\n const headersObject: Record<string, string> = {}\n request.headers.forEach((value, name) => {\n headersObject[name] = value\n })\n\n const reader = request.body?.getReader()\n\n const busboy = Busboy({ ...options, headers: headersObject })\n\n function abortAndDestroyFile(file: Readable, err: APIError) {\n file.destroy()\n shouldAbortProccessing = true\n failedResolvingFiles(err)\n }\n\n // Build multipart req.body fields\n busboy.on('field', (field, val) => {\n result.fields = buildFields(result.fields, field, val)\n })\n\n // Build req.files fields\n busboy.on('file', (field, file, info) => {\n fileCount += 1\n // Parse file name(cutting huge names, decoding, etc..).\n const { encoding, filename: name, mimeType: mime } = info\n const filename = parseFileName(options, name)\n\n const inferredMimeType =\n (filename && filename.endsWith('.glb') && 'model/gltf-binary') ||\n (filename && filename.endsWith('.gltf') && 'model/gltf+json') ||\n mime\n\n // Define methods and handlers for upload process.\n const { cleanup, complete, dataHandler, getFilePath, getFileSize, getHash, getWritePromise } =\n options.useTempFiles\n ? tempFileHandler(options, field, filename) // Upload into temporary file.\n : memHandler(options, field, filename) // Upload into RAM.\n\n const writePromise = options.useTempFiles\n ? getWritePromise().catch(() => {\n busboy.end()\n cleanup()\n })\n : getWritePromise()\n\n const uploadTimer = createUploadTimer(options.uploadTimeout, () => {\n return abortAndDestroyFile(\n file,\n new APIError(`Upload timeout for ${field}->${filename}, bytes:${getFileSize()}`),\n )\n })\n\n file.on('limit', () => {\n debugLog(options, `Size limit reached for ${field}->${filename}, bytes:${getFileSize()}`)\n uploadTimer.clear()\n\n if (isFunc(options.limitHandler)) {\n options.limitHandler({ request, size: getFileSize() })\n }\n\n // Return error and cleanup files if abortOnLimit set.\n if (options.abortOnLimit) {\n debugLog(options, `Upload file size limit reached ${field}->${filename}.`)\n cleanup()\n abortAndDestroyFile(\n file,\n new APIError(options.responseOnLimit!, httpStatus.REQUEST_ENTITY_TOO_LARGE, {\n size: getFileSize(),\n }),\n )\n }\n })\n\n file.on('data', (data) => {\n uploadTimer.set()\n dataHandler(data)\n })\n\n file.on('end', () => {\n const size = getFileSize()\n debugLog(options, `Upload finished ${field}->${filename}, bytes:${size}`)\n uploadTimer.clear()\n\n if (!name && size === 0) {\n fileCount -= 1\n if (options.useTempFiles) {\n cleanup()\n debugLog(options, `Removing the empty file ${field}->${filename}`)\n }\n return debugLog(options, `Don't add file instance if original name and size are empty`)\n }\n\n filesCompleted += 1\n\n result.files = buildFields(\n result.files,\n field,\n fileFactory(\n {\n name: filename,\n buffer: complete(),\n encoding,\n hash: getHash(),\n mimetype: inferredMimeType,\n size,\n tempFilePath: getFilePath(),\n truncated: Boolean('truncated' in file && file.truncated) || false,\n },\n options,\n ),\n )\n\n if (!request[waitFlushProperty]) {\n request[waitFlushProperty] = []\n }\n request[waitFlushProperty].push(writePromise)\n\n if (filesCompleted === fileCount) {\n allFilesHaveResolved()\n }\n })\n\n file.on('error', (err) => {\n uploadTimer.clear()\n debugLog(options, `File Error: ${err.message}`)\n cleanup()\n failedResolvingFiles(err)\n })\n\n // Start upload process.\n debugLog(options, `New upload started ${field}->${filename}, bytes:${getFileSize()}`)\n uploadTimer.set()\n })\n\n busboy.on('finish', async () => {\n debugLog(options, `Busboy finished parsing request.`)\n if (options.parseNested) {\n result.fields = processNested(result.fields)\n result.files = processNested(result.files)\n }\n\n if (request[waitFlushProperty]) {\n try {\n await Promise.all(request[waitFlushProperty]).then(() => {\n delete request[waitFlushProperty]\n })\n } catch (err) {\n debugLog(options, `Error waiting for file write promises: ${err}`)\n }\n }\n\n busboyFinishedResolve()\n })\n\n busboy.on(\n 'error',\n (err = new APIError('Busboy error parsing multipart request', httpStatus.BAD_REQUEST)) => {\n debugLog(options, `Busboy error`)\n const busboyError =\n err instanceof Error\n ? err\n : new APIError('Busboy error parsing multipart request', httpStatus.BAD_REQUEST)\n\n busboyFinishedReject(busboyError)\n },\n )\n\n while (parsingRequest) {\n const { done, value } = await reader!.read()\n\n if (done) {\n parsingRequest = false\n busboy.end()\n }\n\n if (value && !shouldAbortProccessing) {\n busboy.write(value)\n }\n }\n\n if (fileCount !== 0) {\n await allFilesComplete.catch((e) => {\n throw e\n })\n }\n\n await busboyFinished\n\n return result\n}\n"],"names":["Busboy","status","httpStatus","APIError","fileFactory","memHandler","tempFileHandler","processNested","createUploadTimer","buildFields","debugLog","isFunc","parseFileName","waitFlushProperty","Symbol","processMultipart","options","request","parsingRequest","shouldAbortProccessing","fileCount","filesCompleted","allFilesHaveResolved","failedResolvingFiles","busboyFinishedResolve","busboyFinishedReject","allFilesComplete","Promise","res","rej","catch","busboyFinished","resolve","reject","result","fields","undefined","files","headersObject","headers","forEach","value","name","reader","body","getReader","busboy","abortAndDestroyFile","file","err","destroy","on","field","val","info","encoding","filename","mimeType","mime","inferredMimeType","endsWith","cleanup","complete","dataHandler","getFilePath","getFileSize","getHash","getWritePromise","useTempFiles","writePromise","end","uploadTimer","uploadTimeout","clear","limitHandler","size","abortOnLimit","responseOnLimit","REQUEST_ENTITY_TOO_LARGE","data","set","buffer","hash","mimetype","tempFilePath","truncated","Boolean","push","message","parseNested","all","then","BAD_REQUEST","busboyError","Error","done","read","write","e"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/uploads/fetchAPI-multipart/processMultipart.ts"],"sourcesContent":["import type { Readable } from 'stream'\n\nimport Busboy from 'busboy'\nimport { status as httpStatus } from 'http-status'\n\nimport type { FetchAPIFileUploadOptions } from '../../config/types.js'\nimport type { FetchAPIFileUploadResponse } from './index.js'\n\nimport { APIError } from '../../errors/APIError.js'\nimport { fileFactory } from './fileFactory.js'\nimport { memHandler, tempFileHandler } from './handlers.js'\nimport { processNested } from './processNested.js'\nimport { createUploadTimer } from './uploadTimer.js'\nimport { buildFields, isFunc, parseFileName } from './utilities.js'\n\ntype ProcessMultipart = (args: {\n options: FetchAPIFileUploadOptions\n request: Request\n}) => Promise<FetchAPIFileUploadResponse>\n\nexport const processMultipart: ProcessMultipart = async ({ options, request }) => {\n const { requestSizeLimit = Infinity, ...busboyOptions } = options\n const result: FetchAPIFileUploadResponse = { fields: undefined!, files: undefined! }\n const headers: Record<string, string> = {}\n request.headers.forEach((value, name) => {\n headers[name] = value\n })\n const busboy = Busboy({ ...busboyOptions, headers })\n const reader = request.body!.getReader()\n const uploads: { cleanup: () => Promise<void> | void; clear: () => void; file: Readable }[] = []\n const writes: Promise<boolean>[] = []\n let failure: Error | undefined\n let requestSize = 0\n let rejectFinished: (err: Error) => void\n let resolveFinished: () => void\n const finished = new Promise<void>((resolve, reject) => {\n resolveFinished = resolve\n rejectFinished = reject\n })\n\n const fail = (err: Error) => {\n if (failure) {\n return\n }\n failure = err\n rejectFinished(err)\n // Busboy may still be updating its current file after emitting a limit event.\n queueMicrotask(() => {\n for (const upload of uploads) {\n upload.clear()\n upload.file.destroy()\n }\n busboy.destroy()\n void reader.cancel(err).catch(() => {})\n })\n }\n const limitError = () =>\n new APIError('Multipart limit has been reached', httpStatus.REQUEST_ENTITY_TOO_LARGE)\n const requestSizeLimitError = () =>\n new APIError(\n 'Multipart request size limit has been reached',\n httpStatus.REQUEST_ENTITY_TOO_LARGE,\n )\n\n busboy.on('filesLimit', () => fail(limitError()))\n busboy.on('fieldsLimit', () => fail(limitError()))\n busboy.on('partsLimit', () => fail(limitError()))\n busboy.on('error', fail)\n busboy.on('field', (field, value, info) => {\n if (info.valueTruncated || info.nameTruncated) {\n fail(limitError())\n } else if (!failure) {\n result.fields = buildFields(result.fields, field, value)\n }\n })\n\n busboy.on('file', (field, file, info) => {\n if (failure) {\n file.resume()\n return\n }\n const { encoding, filename: name, mimeType: mime } = info\n const filename = parseFileName(options, name)\n const mimetype =\n (filename.endsWith('.glb') && 'model/gltf-binary') ||\n (filename.endsWith('.gltf') && 'model/gltf+json') ||\n mime\n const handler = options.useTempFiles\n ? tempFileHandler(options, field, filename)\n : memHandler(options, field, filename)\n const timer = createUploadTimer(options.uploadTimeout, () => {\n fail(new APIError(`Upload timeout for ${field}->${filename}, bytes:${handler.getFileSize()}`))\n })\n uploads.push({ cleanup: handler.cleanup, clear: timer.clear, file })\n // Observe write failures immediately, including failures before file end.\n const write = handler.getWritePromise()\n void write.catch(fail)\n writes.push(write)\n\n file.on('limit', () => {\n timer.clear()\n try {\n if (isFunc(options.limitHandler)) {\n options.limitHandler({ request, size: handler.getFileSize() })\n }\n if (options.abortOnLimit) {\n fail(\n new APIError(options.responseOnLimit!, httpStatus.REQUEST_ENTITY_TOO_LARGE, {\n size: handler.getFileSize(),\n }),\n )\n }\n } catch (err) {\n fail(err as Error)\n }\n })\n file.on('data', (data: Buffer) => {\n if (failure) {\n return\n }\n timer.set()\n const pending = handler.dataHandler(data)\n if (pending) {\n file.pause()\n void pending.then(() => {\n if (!failure) {\n file.resume()\n }\n }, fail)\n }\n })\n file.on('error', fail)\n file.on('end', () => {\n timer.clear()\n if (failure) {\n return\n }\n const size = handler.getFileSize()\n const buffer = handler.complete()\n if (!name && size === 0) {\n const cleanup = Promise.resolve(handler.cleanup()).then(() => true)\n void cleanup.catch(fail)\n writes.push(cleanup)\n return\n }\n result.files = buildFields(\n result.files,\n field,\n fileFactory(\n {\n name: filename,\n buffer,\n encoding,\n hash: handler.getHash(),\n mimetype,\n size,\n tempFilePath: handler.getFilePath(),\n truncated: Boolean(file.truncated),\n },\n options,\n ),\n )\n })\n timer.set()\n })\n busboy.on('finish', () => {\n void Promise.all(writes).then(() => resolveFinished(), fail)\n })\n\n // Waiting for each write callback bounds the parser queue and respects its backpressure.\n const pump = async () => {\n try {\n while (!failure) {\n const { done, value } = await reader.read()\n if (failure) {\n break\n }\n if (done) {\n busboy.end()\n break\n }\n requestSize += value.byteLength\n if (requestSize > requestSizeLimit) {\n const err = requestSizeLimitError()\n fail(err)\n await reader.cancel(err).catch(() => {})\n break\n }\n await new Promise<void>((resolve, reject) => {\n busboy.write(value, (err?: Error | null) => (err ? reject(err) : resolve()))\n })\n }\n } finally {\n reader.releaseLock()\n }\n }\n void pump().catch(fail)\n\n try {\n await finished\n if (options.parseNested) {\n result.fields = processNested(result.fields)\n result.files = processNested(result.files)\n }\n return result\n } catch (err) {\n for (const upload of uploads) {\n upload.clear()\n }\n await Promise.all(uploads.map(async ({ cleanup }) => cleanup()))\n throw err\n }\n}\n"],"names":["Busboy","status","httpStatus","APIError","fileFactory","memHandler","tempFileHandler","processNested","createUploadTimer","buildFields","isFunc","parseFileName","processMultipart","options","request","requestSizeLimit","Infinity","busboyOptions","result","fields","undefined","files","headers","forEach","value","name","busboy","reader","body","getReader","uploads","writes","failure","requestSize","rejectFinished","resolveFinished","finished","Promise","resolve","reject","fail","err","queueMicrotask","upload","clear","file","destroy","cancel","catch","limitError","REQUEST_ENTITY_TOO_LARGE","requestSizeLimitError","on","field","info","valueTruncated","nameTruncated","resume","encoding","filename","mimeType","mime","mimetype","endsWith","handler","useTempFiles","timer","uploadTimeout","getFileSize","push","cleanup","write","getWritePromise","limitHandler","size","abortOnLimit","responseOnLimit","data","set","pending","dataHandler","pause","then","buffer","complete","hash","getHash","tempFilePath","getFilePath","truncated","Boolean","all","pump","done","read","end","byteLength","releaseLock","parseNested","map"],"mappings":"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"}
@@ -1,5 +1,8 @@
1
1
  import fs from 'fs';
2
- export declare function iteratorToStream(iterator: AsyncIterator<Uint8Array>): import("stream/web").ReadableStream<any>;
2
+ export declare function iteratorToStream({ iterator, onCancel, }: {
3
+ iterator: AsyncIterator<Uint8Array>;
4
+ onCancel?: () => void;
5
+ }): import("stream/web").ReadableStream<any>;
3
6
  export declare function nodeStreamToIterator(stream: fs.ReadStream): AsyncGenerator<Uint8Array<any>, void, unknown>;
4
7
  export declare function streamFile({ filePath, options, }: {
5
8
  filePath: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/uploads/fetchAPI-stream-file/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAEnB,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,4CAWnE;AAED,wBAAuB,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,kDAIhE;AAED,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,OAAO,GACR,EAAE;IACD,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAC3C,GAAG,cAAc,CAIjB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/uploads/fetchAPI-stream-file/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAEnB,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,CAAA;IACnC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;CACtB,4CAcA;AAED,wBAAuB,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,kDAIhE;AAED,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,OAAO,GACR,EAAE;IACD,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAC3C,GAAG,cAAc,CAQjB"}
@@ -1,6 +1,9 @@
1
1
  import fs from 'fs';
2
- export function iteratorToStream(iterator) {
2
+ export function iteratorToStream({ iterator, onCancel }) {
3
3
  return new ReadableStream({
4
+ cancel () {
5
+ onCancel?.();
6
+ },
4
7
  async pull (controller) {
5
8
  const { done, value } = await iterator.next();
6
9
  if (done) {
@@ -18,7 +21,11 @@ export async function* nodeStreamToIterator(stream) {
18
21
  }
19
22
  export function streamFile({ filePath, options }) {
20
23
  const nodeStream = fs.createReadStream(filePath, options);
21
- const data = iteratorToStream(nodeStreamToIterator(nodeStream));
24
+ // Destroying the read stream on cancel releases the file handle, even if nothing was read yet.
25
+ const data = iteratorToStream({
26
+ iterator: nodeStreamToIterator(nodeStream),
27
+ onCancel: ()=>nodeStream.destroy()
28
+ });
22
29
  return data;
23
30
  }
24
31
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/uploads/fetchAPI-stream-file/index.ts"],"sourcesContent":["import fs from 'fs'\n\nexport function iteratorToStream(iterator: AsyncIterator<Uint8Array>) {\n return new ReadableStream({\n async pull(controller) {\n const { done, value } = await iterator.next()\n if (done) {\n controller.close()\n } else {\n controller.enqueue(value)\n }\n },\n })\n}\n\nexport async function* nodeStreamToIterator(stream: fs.ReadStream) {\n for await (const chunk of stream) {\n yield new Uint8Array(chunk)\n }\n}\n\nexport function streamFile({\n filePath,\n options,\n}: {\n filePath: string\n options?: { end?: number; start?: number }\n}): ReadableStream {\n const nodeStream = fs.createReadStream(filePath, options)\n const data: ReadableStream = iteratorToStream(nodeStreamToIterator(nodeStream))\n return data\n}\n"],"names":["fs","iteratorToStream","iterator","ReadableStream","pull","controller","done","value","next","close","enqueue","nodeStreamToIterator","stream","chunk","Uint8Array","streamFile","filePath","options","nodeStream","createReadStream","data"],"mappings":"AAAA,OAAOA,QAAQ,KAAI;AAEnB,OAAO,SAASC,iBAAiBC,QAAmC;IAClE,OAAO,IAAIC,eAAe;QACxB,MAAMC,MAAKC,UAAU;YACnB,MAAM,EAAEC,IAAI,EAAEC,KAAK,EAAE,GAAG,MAAML,SAASM,IAAI;YAC3C,IAAIF,MAAM;gBACRD,WAAWI,KAAK;YAClB,OAAO;gBACLJ,WAAWK,OAAO,CAACH;YACrB;QACF;IACF;AACF;AAEA,OAAO,gBAAgBI,qBAAqBC,MAAqB;IAC/D,WAAW,MAAMC,SAASD,OAAQ;QAChC,MAAM,IAAIE,WAAWD;IACvB;AACF;AAEA,OAAO,SAASE,WAAW,EACzBC,QAAQ,EACRC,OAAO,EAIR;IACC,MAAMC,aAAalB,GAAGmB,gBAAgB,CAACH,UAAUC;IACjD,MAAMG,OAAuBnB,iBAAiBU,qBAAqBO;IACnE,OAAOE;AACT"}
1
+ {"version":3,"sources":["../../../src/uploads/fetchAPI-stream-file/index.ts"],"sourcesContent":["import fs from 'fs'\n\nexport function iteratorToStream({\n iterator,\n onCancel,\n}: {\n iterator: AsyncIterator<Uint8Array>\n onCancel?: () => void\n}) {\n return new ReadableStream({\n cancel() {\n onCancel?.()\n },\n async pull(controller) {\n const { done, value } = await iterator.next()\n if (done) {\n controller.close()\n } else {\n controller.enqueue(value)\n }\n },\n })\n}\n\nexport async function* nodeStreamToIterator(stream: fs.ReadStream) {\n for await (const chunk of stream) {\n yield new Uint8Array(chunk)\n }\n}\n\nexport function streamFile({\n filePath,\n options,\n}: {\n filePath: string\n options?: { end?: number; start?: number }\n}): ReadableStream {\n const nodeStream = fs.createReadStream(filePath, options)\n // Destroying the read stream on cancel releases the file handle, even if nothing was read yet.\n const data: ReadableStream = iteratorToStream({\n iterator: nodeStreamToIterator(nodeStream),\n onCancel: () => nodeStream.destroy(),\n })\n return data\n}\n"],"names":["fs","iteratorToStream","iterator","onCancel","ReadableStream","cancel","pull","controller","done","value","next","close","enqueue","nodeStreamToIterator","stream","chunk","Uint8Array","streamFile","filePath","options","nodeStream","createReadStream","data","destroy"],"mappings":"AAAA,OAAOA,QAAQ,KAAI;AAEnB,OAAO,SAASC,iBAAiB,EAC/BC,QAAQ,EACRC,QAAQ,EAIT;IACC,OAAO,IAAIC,eAAe;QACxBC;YACEF;QACF;QACA,MAAMG,MAAKC,UAAU;YACnB,MAAM,EAAEC,IAAI,EAAEC,KAAK,EAAE,GAAG,MAAMP,SAASQ,IAAI;YAC3C,IAAIF,MAAM;gBACRD,WAAWI,KAAK;YAClB,OAAO;gBACLJ,WAAWK,OAAO,CAACH;YACrB;QACF;IACF;AACF;AAEA,OAAO,gBAAgBI,qBAAqBC,MAAqB;IAC/D,WAAW,MAAMC,SAASD,OAAQ;QAChC,MAAM,IAAIE,WAAWD;IACvB;AACF;AAEA,OAAO,SAASE,WAAW,EACzBC,QAAQ,EACRC,OAAO,EAIR;IACC,MAAMC,aAAapB,GAAGqB,gBAAgB,CAACH,UAAUC;IACjD,+FAA+F;IAC/F,MAAMG,OAAuBrB,iBAAiB;QAC5CC,UAAUW,qBAAqBO;QAC/BjB,UAAU,IAAMiB,WAAWG,OAAO;IACpC;IACA,OAAOD;AACT"}
@@ -0,0 +1,19 @@
1
+ import type { AllowList, UploadConfig } from './types.js';
2
+ export declare const parseFileURL: (url: string, base?: URL) => URL;
3
+ /**
4
+ * Fetches a file, checking each redirect against the allow list and SSRF restrictions.
5
+ * Returns the unread response so callers can either stream it or buffer it into a Payload File.
6
+ * Callers enforce any initial URL restrictions; existing uploads may also use same-origin URLs.
7
+ */
8
+ export declare const fetchWithRedirects: ({ allowList, getHeaders, headers, skipSafeFetch, timeout, url, }: {
9
+ allowList?: AllowList;
10
+ getHeaders?: (url: string) => Record<string, string>;
11
+ headers?: Record<string, string>;
12
+ skipSafeFetch?: UploadConfig['skipSafeFetch'];
13
+ timeout?: number;
14
+ url: string;
15
+ }) => Promise<{
16
+ response: Response;
17
+ url: string;
18
+ }>;
19
+ //# sourceMappingURL=fetchWithRedirects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchWithRedirects.d.ts","sourceRoot":"","sources":["../../src/uploads/fetchWithRedirects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAMzD,eAAO,MAAM,YAAY,QAAS,MAAM,SAAS,GAAG,KAAG,GAgBtD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,qEAO5B;IACD,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,aAAa,CAAC,EAAE,YAAY,CAAC,eAAe,CAAC,CAAA;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,MAAM,CAAA;CACZ,KAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAqC9C,CAAA"}
@@ -0,0 +1,53 @@
1
+ import { APIError } from '../errors/APIError.js';
2
+ import { isURLAllowed } from '../utilities/isURLAllowed.js';
3
+ import { safeFetch } from './safeFetch.js';
4
+ export const parseFileURL = (url, base)=>{
5
+ try {
6
+ const parsedURL = new URL(url, base);
7
+ if (parsedURL.protocol !== 'http:' && parsedURL.protocol !== 'https:') {
8
+ throw new APIError('External file URLs must use HTTP or HTTPS.', 400);
9
+ }
10
+ return parsedURL;
11
+ } catch (error) {
12
+ if (error instanceof APIError) {
13
+ throw error;
14
+ }
15
+ throw new APIError('Invalid external file URL.', 400);
16
+ }
17
+ };
18
+ /**
19
+ * Fetches a file, checking each redirect against the allow list and SSRF restrictions.
20
+ * Returns the unread response so callers can either stream it or buffer it into a Payload File.
21
+ * Callers enforce any initial URL restrictions; existing uploads may also use same-origin URLs.
22
+ */ export const fetchWithRedirects = async ({ allowList, getHeaders, headers, skipSafeFetch, timeout, url })=>{
23
+ const maxRedirects = 3;
24
+ for(let redirectCount = 0;; redirectCount++){
25
+ // Explicitly allowed URLs may point to private hosts, such as an internal CDN.
26
+ const shouldSkipSafeFetch = skipSafeFetch === true || Array.isArray(skipSafeFetch) && isURLAllowed(url, skipSafeFetch) || allowList && isURLAllowed(url, allowList);
27
+ const response = await (shouldSkipSafeFetch ? fetch : safeFetch)(url, {
28
+ credentials: 'include',
29
+ headers: getHeaders ? getHeaders(url) : headers,
30
+ redirect: 'manual',
31
+ signal: timeout ? AbortSignal.timeout(timeout) : undefined
32
+ });
33
+ if (response.status >= 300 && response.status < 400) {
34
+ if (redirectCount >= maxRedirects) {
35
+ throw new APIError(`Too many redirects (max ${maxRedirects})`, 403);
36
+ }
37
+ const location = response.headers.get('location');
38
+ if (location) {
39
+ url = parseFileURL(location, parseFileURL(url)).href;
40
+ if (allowList && !isURLAllowed(url, allowList)) {
41
+ throw new APIError('Redirect target is not allowed.', 400);
42
+ }
43
+ continue;
44
+ }
45
+ }
46
+ return {
47
+ response,
48
+ url
49
+ };
50
+ }
51
+ };
52
+
53
+ //# sourceMappingURL=fetchWithRedirects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/uploads/fetchWithRedirects.ts"],"sourcesContent":["import type { AllowList, UploadConfig } from './types.js'\n\nimport { APIError } from '../errors/APIError.js'\nimport { isURLAllowed } from '../utilities/isURLAllowed.js'\nimport { safeFetch } from './safeFetch.js'\n\nexport const parseFileURL = (url: string, base?: URL): URL => {\n try {\n const parsedURL = new URL(url, base)\n\n if (parsedURL.protocol !== 'http:' && parsedURL.protocol !== 'https:') {\n throw new APIError('External file URLs must use HTTP or HTTPS.', 400)\n }\n\n return parsedURL\n } catch (error) {\n if (error instanceof APIError) {\n throw error\n }\n\n throw new APIError('Invalid external file URL.', 400)\n }\n}\n\n/**\n * Fetches a file, checking each redirect against the allow list and SSRF restrictions.\n * Returns the unread response so callers can either stream it or buffer it into a Payload File.\n * Callers enforce any initial URL restrictions; existing uploads may also use same-origin URLs.\n */\nexport const fetchWithRedirects = async ({\n allowList,\n getHeaders,\n headers,\n skipSafeFetch,\n timeout,\n url,\n}: {\n allowList?: AllowList\n getHeaders?: (url: string) => Record<string, string>\n headers?: Record<string, string>\n skipSafeFetch?: UploadConfig['skipSafeFetch']\n timeout?: number\n url: string\n}): Promise<{ response: Response; url: string }> => {\n const maxRedirects = 3\n\n for (let redirectCount = 0; ; redirectCount++) {\n // Explicitly allowed URLs may point to private hosts, such as an internal CDN.\n const shouldSkipSafeFetch =\n skipSafeFetch === true ||\n (Array.isArray(skipSafeFetch) && isURLAllowed(url, skipSafeFetch)) ||\n (allowList && isURLAllowed(url, allowList))\n\n const response = await (shouldSkipSafeFetch ? fetch : safeFetch)(url, {\n credentials: 'include',\n headers: getHeaders ? getHeaders(url) : headers,\n redirect: 'manual',\n signal: timeout ? AbortSignal.timeout(timeout) : undefined,\n })\n\n if (response.status >= 300 && response.status < 400) {\n if (redirectCount >= maxRedirects) {\n throw new APIError(`Too many redirects (max ${maxRedirects})`, 403)\n }\n\n const location = response.headers.get('location')\n\n if (location) {\n url = parseFileURL(location, parseFileURL(url)).href\n\n if (allowList && !isURLAllowed(url, allowList)) {\n throw new APIError('Redirect target is not allowed.', 400)\n }\n\n continue\n }\n }\n\n return { response, url }\n }\n}\n"],"names":["APIError","isURLAllowed","safeFetch","parseFileURL","url","base","parsedURL","URL","protocol","error","fetchWithRedirects","allowList","getHeaders","headers","skipSafeFetch","timeout","maxRedirects","redirectCount","shouldSkipSafeFetch","Array","isArray","response","fetch","credentials","redirect","signal","AbortSignal","undefined","status","location","get","href"],"mappings":"AAEA,SAASA,QAAQ,QAAQ,wBAAuB;AAChD,SAASC,YAAY,QAAQ,+BAA8B;AAC3D,SAASC,SAAS,QAAQ,iBAAgB;AAE1C,OAAO,MAAMC,eAAe,CAACC,KAAaC;IACxC,IAAI;QACF,MAAMC,YAAY,IAAIC,IAAIH,KAAKC;QAE/B,IAAIC,UAAUE,QAAQ,KAAK,WAAWF,UAAUE,QAAQ,KAAK,UAAU;YACrE,MAAM,IAAIR,SAAS,8CAA8C;QACnE;QAEA,OAAOM;IACT,EAAE,OAAOG,OAAO;QACd,IAAIA,iBAAiBT,UAAU;YAC7B,MAAMS;QACR;QAEA,MAAM,IAAIT,SAAS,8BAA8B;IACnD;AACF,EAAC;AAED;;;;CAIC,GACD,OAAO,MAAMU,qBAAqB,OAAO,EACvCC,SAAS,EACTC,UAAU,EACVC,OAAO,EACPC,aAAa,EACbC,OAAO,EACPX,GAAG,EAQJ;IACC,MAAMY,eAAe;IAErB,IAAK,IAAIC,gBAAgB,IAAKA,gBAAiB;QAC7C,+EAA+E;QAC/E,MAAMC,sBACJJ,kBAAkB,QACjBK,MAAMC,OAAO,CAACN,kBAAkBb,aAAaG,KAAKU,kBAClDH,aAAaV,aAAaG,KAAKO;QAElC,MAAMU,WAAW,MAAM,AAACH,CAAAA,sBAAsBI,QAAQpB,SAAQ,EAAGE,KAAK;YACpEmB,aAAa;YACbV,SAASD,aAAaA,WAAWR,OAAOS;YACxCW,UAAU;YACVC,QAAQV,UAAUW,YAAYX,OAAO,CAACA,WAAWY;QACnD;QAEA,IAAIN,SAASO,MAAM,IAAI,OAAOP,SAASO,MAAM,GAAG,KAAK;YACnD,IAAIX,iBAAiBD,cAAc;gBACjC,MAAM,IAAIhB,SAAS,CAAC,wBAAwB,EAAEgB,aAAa,CAAC,CAAC,EAAE;YACjE;YAEA,MAAMa,WAAWR,SAASR,OAAO,CAACiB,GAAG,CAAC;YAEtC,IAAID,UAAU;gBACZzB,MAAMD,aAAa0B,UAAU1B,aAAaC,MAAM2B,IAAI;gBAEpD,IAAIpB,aAAa,CAACV,aAAaG,KAAKO,YAAY;oBAC9C,MAAM,IAAIX,SAAS,mCAAmC;gBACxD;gBAEA;YACF;QACF;QAEA,OAAO;YAAEqB;YAAUjB;QAAI;IACzB;AACF,EAAC"}
@@ -1,12 +1,14 @@
1
1
  import type { Collection } from '../collections/config/types.js';
2
2
  import type { SanitizedConfig } from '../config/types.js';
3
3
  import type { PayloadRequest } from '../types/index.js';
4
+ import type { ExternalUploadSource } from './sanitizeUploadData.js';
4
5
  import type { FileToSave } from './types.js';
5
6
  type Args<T> = {
6
7
  collection: Collection;
7
8
  config: SanitizedConfig;
8
9
  data: T;
9
10
  draft?: boolean;
11
+ externalUploadSource?: ExternalUploadSource;
10
12
  isDuplicating?: boolean;
11
13
  operation: 'create' | 'update';
12
14
  originalDoc?: T;
@@ -18,6 +20,34 @@ type Result<T> = Promise<{
18
20
  data: T;
19
21
  files: FileToSave[];
20
22
  }>;
21
- export declare const generateFileData: <T>({ collection: { config: collectionConfig }, data, draft, isDuplicating, operation, originalDoc, overwriteExistingFiles, req, throwOnMissingFile, }: Args<T>) => Result<T>;
23
+ export type TempFileHandling = {
24
+ sourcePath: string;
25
+ type: 'copyFromTempFile';
26
+ } | {
27
+ type: 'skip';
28
+ } | {
29
+ type: 'useBuffer';
30
+ };
31
+ /**
32
+ * Decides how to get a file's bytes onto disk when no transformer rewrote it (a transformed
33
+ * file is already an in-memory buffer, so it always takes the `useBuffer` path). Copies straight
34
+ * from the temp file when possible, rather than reading a potentially large temp file into memory
35
+ * just to write it back out - see the `generateFileData` function doc for why.
36
+ */
37
+ export declare const resolveTempFileHandling: ({ disableLocalStorage, hasProcessedBuffer, tempFilePath, }: {
38
+ disableLocalStorage: boolean;
39
+ hasProcessedBuffer: boolean;
40
+ tempFilePath: string | undefined;
41
+ }) => TempFileHandling;
42
+ /**
43
+ * Builds the document's file metadata and the list of files to write to disk.
44
+ *
45
+ * A large client upload may arrive as a temp file instead of an in-memory buffer (see
46
+ * getFileFromUploadInstructions.ts), and `file.data` can hold only a partial probe rather than
47
+ * the full file. To avoid loading such files into memory unnecessarily, no transformer runs
48
+ * unless the full bytes are available, this skips reading a temp file entirely when local
49
+ * storage is disabled, and copies it straight to its destination when local storage is enabled.
50
+ */
51
+ export declare const generateFileData: <T>({ collection: { config: collectionConfig }, data, draft, externalUploadSource, isDuplicating, operation, originalDoc, overwriteExistingFiles, req, throwOnMissingFile, }: Args<T>) => Result<T>;
22
52
  export {};
23
53
  //# sourceMappingURL=generateFileData.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generateFileData.d.ts","sourceRoot":"","sources":["../../src/uploads/generateFileData.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAY,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,KAAK,EAAY,UAAU,EAAgC,MAAM,YAAY,CAAA;AAcpF,KAAK,IAAI,CAAC,CAAC,IAAI;IACb,UAAU,EAAE,UAAU,CAAA;IACtB,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,CAAC,CAAA;IACP,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC9B,WAAW,CAAC,EAAE,CAAC,CAAA;IACf,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,GAAG,EAAE,cAAc,CAAA;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED,KAAK,MAAM,CAAC,CAAC,IAAI,OAAO,CAAC;IACvB,IAAI,EAAE,CAAC,CAAA;IACP,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB,CAAC,CAAA;AA6BF,eAAO,MAAM,gBAAgB,GAAU,CAAC,sJAUrC,IAAI,CAAC,CAAC,CAAC,KAAG,MAAM,CAAC,CAAC,CAmWpB,CAAA"}
1
+ {"version":3,"file":"generateFileData.d.ts","sourceRoot":"","sources":["../../src/uploads/generateFileData.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAY,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAEnE,OAAO,KAAK,EAAuB,UAAU,EAAe,MAAM,YAAY,CAAA;AAsB9E,KAAK,IAAI,CAAC,CAAC,IAAI;IACb,UAAU,EAAE,UAAU,CAAA;IACtB,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,CAAC,CAAA;IACP,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC9B,WAAW,CAAC,EAAE,CAAC,CAAA;IACf,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,GAAG,EAAE,cAAc,CAAA;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED,KAAK,MAAM,CAAC,CAAC,IAAI,OAAO,CAAC;IACvB,IAAI,EAAE,CAAC,CAAA;IACP,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB,CAAC,CAAA;AA6BF,MAAM,MAAM,gBAAgB,GACxB;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,kBAAkB,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,CAAA;AAEzB;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,+DAIjC;IACD,mBAAmB,EAAE,OAAO,CAAA;IAC5B,kBAAkB,EAAE,OAAO,CAAA;IAC3B,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;CACjC,KAAG,gBAQH,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GAAU,CAAC,4KAWrC,IAAI,CAAC,CAAC,CAAC,KAAG,MAAM,CAAC,CAAC,CA4ZpB,CAAA"}