@payloadcms/next 3.0.0-canary.291e44c → 3.0.0-canary.2d0dd26

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 (443) hide show
  1. package/dist/cjs/withPayload.cjs +166 -0
  2. package/dist/cjs/withPayload.cjs.map +1 -0
  3. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -1
  4. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +1 -0
  5. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  6. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +1 -1
  7. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  8. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +13 -15
  9. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  10. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +70 -68
  11. package/dist/elements/DocumentHeader/Tabs/index.d.ts +2 -2
  12. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  13. package/dist/elements/DocumentHeader/Tabs/index.js +9 -14
  14. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  15. package/dist/elements/DocumentHeader/Tabs/index.scss +41 -39
  16. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +1 -1
  17. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +13 -28
  18. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  19. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  20. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +1 -1
  21. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  22. package/dist/elements/DocumentHeader/index.d.ts +2 -3
  23. package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
  24. package/dist/elements/DocumentHeader/index.js +9 -12
  25. package/dist/elements/DocumentHeader/index.js.map +1 -1
  26. package/dist/elements/DocumentHeader/index.scss +44 -42
  27. package/dist/elements/FormHeader/index.scss +7 -5
  28. package/dist/elements/Logo/index.d.ts.map +1 -1
  29. package/dist/elements/Logo/index.js +5 -6
  30. package/dist/elements/Logo/index.js.map +1 -1
  31. package/dist/elements/Nav/NavWrapper/index.scss +20 -18
  32. package/dist/elements/Nav/getNavPrefs.d.ts +6 -0
  33. package/dist/elements/Nav/getNavPrefs.d.ts.map +1 -0
  34. package/dist/elements/Nav/getNavPrefs.js +26 -0
  35. package/dist/elements/Nav/getNavPrefs.js.map +1 -0
  36. package/dist/elements/Nav/index.client.d.ts +6 -1
  37. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  38. package/dist/elements/Nav/index.client.js +44 -94
  39. package/dist/elements/Nav/index.client.js.map +1 -1
  40. package/dist/elements/Nav/index.d.ts.map +1 -1
  41. package/dist/elements/Nav/index.js +66 -23
  42. package/dist/elements/Nav/index.js.map +1 -1
  43. package/dist/elements/Nav/index.scss +127 -125
  44. package/dist/exports/layouts.d.ts +1 -0
  45. package/dist/exports/layouts.d.ts.map +1 -1
  46. package/dist/exports/layouts.js +1 -0
  47. package/dist/exports/layouts.js.map +1 -1
  48. package/dist/exports/routes.d.ts +1 -1
  49. package/dist/exports/routes.d.ts.map +1 -1
  50. package/dist/exports/routes.js +1 -1
  51. package/dist/exports/routes.js.map +1 -1
  52. package/dist/exports/utilities.d.ts +2 -1
  53. package/dist/exports/utilities.d.ts.map +1 -1
  54. package/dist/exports/utilities.js +3 -1
  55. package/dist/exports/utilities.js.map +1 -1
  56. package/dist/exports/views.d.ts +0 -2
  57. package/dist/exports/views.d.ts.map +1 -1
  58. package/dist/exports/views.js +0 -2
  59. package/dist/exports/views.js.map +1 -1
  60. package/dist/fetchAPI-multipart/isEligibleRequest.js +1 -1
  61. package/dist/fetchAPI-multipart/isEligibleRequest.js.map +1 -1
  62. package/dist/fetchAPI-multipart/processMultipart.d.ts.map +1 -1
  63. package/dist/fetchAPI-multipart/processMultipart.js +9 -11
  64. package/dist/fetchAPI-multipart/processMultipart.js.map +1 -1
  65. package/dist/layouts/Root/NestProviders.d.ts +11 -0
  66. package/dist/layouts/Root/NestProviders.d.ts.map +1 -0
  67. package/dist/layouts/Root/NestProviders.js +21 -0
  68. package/dist/layouts/Root/NestProviders.js.map +1 -0
  69. package/dist/layouts/Root/checkDependencies.d.ts +2 -0
  70. package/dist/layouts/Root/checkDependencies.d.ts.map +1 -0
  71. package/dist/layouts/Root/checkDependencies.js +49 -0
  72. package/dist/layouts/Root/checkDependencies.js.map +1 -0
  73. package/dist/layouts/Root/index.d.ts +4 -3
  74. package/dist/layouts/Root/index.d.ts.map +1 -1
  75. package/dist/layouts/Root/index.js +35 -96
  76. package/dist/layouts/Root/index.js.map +1 -1
  77. package/dist/prod/styles.css +1 -1
  78. package/dist/routes/rest/collections/create.d.ts.map +1 -1
  79. package/dist/routes/rest/collections/create.js +5 -1
  80. package/dist/routes/rest/collections/create.js.map +1 -1
  81. package/dist/routes/rest/collections/delete.d.ts.map +1 -1
  82. package/dist/routes/rest/collections/delete.js +8 -0
  83. package/dist/routes/rest/collections/delete.js.map +1 -1
  84. package/dist/routes/rest/collections/deleteByID.d.ts.map +1 -1
  85. package/dist/routes/rest/collections/deleteByID.js +7 -1
  86. package/dist/routes/rest/collections/deleteByID.js.map +1 -1
  87. package/dist/routes/rest/collections/duplicate.d.ts.map +1 -1
  88. package/dist/routes/rest/collections/duplicate.js +5 -1
  89. package/dist/routes/rest/collections/duplicate.js.map +1 -1
  90. package/dist/routes/rest/collections/find.d.ts.map +1 -1
  91. package/dist/routes/rest/collections/find.js +7 -1
  92. package/dist/routes/rest/collections/find.js.map +1 -1
  93. package/dist/routes/rest/collections/findByID.d.ts.map +1 -1
  94. package/dist/routes/rest/collections/findByID.js +5 -1
  95. package/dist/routes/rest/collections/findByID.js.map +1 -1
  96. package/dist/routes/rest/collections/findVersionByID.d.ts.map +1 -1
  97. package/dist/routes/rest/collections/findVersionByID.js +5 -1
  98. package/dist/routes/rest/collections/findVersionByID.js.map +1 -1
  99. package/dist/routes/rest/collections/findVersions.d.ts.map +1 -1
  100. package/dist/routes/rest/collections/findVersions.js +7 -1
  101. package/dist/routes/rest/collections/findVersions.js.map +1 -1
  102. package/dist/routes/rest/collections/restoreVersion.d.ts.map +1 -1
  103. package/dist/routes/rest/collections/restoreVersion.js +2 -0
  104. package/dist/routes/rest/collections/restoreVersion.js.map +1 -1
  105. package/dist/routes/rest/collections/update.d.ts.map +1 -1
  106. package/dist/routes/rest/collections/update.js +10 -0
  107. package/dist/routes/rest/collections/update.js.map +1 -1
  108. package/dist/routes/rest/collections/updateByID.d.ts.map +1 -1
  109. package/dist/routes/rest/collections/updateByID.js +7 -1
  110. package/dist/routes/rest/collections/updateByID.js.map +1 -1
  111. package/dist/routes/rest/globals/findOne.d.ts.map +1 -1
  112. package/dist/routes/rest/globals/findOne.js +5 -1
  113. package/dist/routes/rest/globals/findOne.js.map +1 -1
  114. package/dist/routes/rest/globals/findVersionByID.d.ts.map +1 -1
  115. package/dist/routes/rest/globals/findVersionByID.js +5 -1
  116. package/dist/routes/rest/globals/findVersionByID.js.map +1 -1
  117. package/dist/routes/rest/globals/findVersions.d.ts.map +1 -1
  118. package/dist/routes/rest/globals/findVersions.js +7 -1
  119. package/dist/routes/rest/globals/findVersions.js.map +1 -1
  120. package/dist/routes/rest/globals/restoreVersion.d.ts.map +1 -1
  121. package/dist/routes/rest/globals/restoreVersion.js +2 -0
  122. package/dist/routes/rest/globals/restoreVersion.js.map +1 -1
  123. package/dist/routes/rest/globals/update.d.ts.map +1 -1
  124. package/dist/routes/rest/globals/update.js +5 -1
  125. package/dist/routes/rest/globals/update.js.map +1 -1
  126. package/dist/routes/rest/index.d.ts +5 -0
  127. package/dist/routes/rest/index.d.ts.map +1 -1
  128. package/dist/routes/rest/index.js +73 -10
  129. package/dist/routes/rest/index.js.map +1 -1
  130. package/dist/routes/rest/og/image.d.ts +4 -2
  131. package/dist/routes/rest/og/image.d.ts.map +1 -1
  132. package/dist/routes/rest/og/image.js +7 -3
  133. package/dist/routes/rest/og/image.js.map +1 -1
  134. package/dist/routes/rest/og/index.d.ts.map +1 -1
  135. package/dist/routes/rest/og/index.js +7 -12
  136. package/dist/routes/rest/og/index.js.map +1 -1
  137. package/dist/routes/rest/routeError.d.ts.map +1 -1
  138. package/dist/routes/rest/routeError.js +10 -50
  139. package/dist/routes/rest/routeError.js.map +1 -1
  140. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts +1 -1
  141. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts.map +1 -1
  142. package/dist/routes/rest/utilities/sanitizeJoinParams.js +9 -5
  143. package/dist/routes/rest/utilities/sanitizeJoinParams.js.map +1 -1
  144. package/dist/routes/rest/utilities/sanitizePopulate.d.ts +3 -0
  145. package/dist/routes/rest/utilities/sanitizePopulate.d.ts.map +1 -0
  146. package/dist/routes/rest/utilities/sanitizePopulate.js +11 -0
  147. package/dist/routes/rest/utilities/sanitizePopulate.js.map +1 -0
  148. package/dist/routes/rest/utilities/sanitizeSelect.d.ts +6 -0
  149. package/dist/routes/rest/utilities/sanitizeSelect.d.ts.map +1 -0
  150. package/dist/routes/rest/utilities/sanitizeSelect.js +17 -0
  151. package/dist/routes/rest/utilities/sanitizeSelect.js.map +1 -0
  152. package/dist/templates/Default/Wrapper/index.scss +38 -36
  153. package/dist/templates/Default/index.d.ts +2 -1
  154. package/dist/templates/Default/index.d.ts.map +1 -1
  155. package/dist/templates/Default/index.js +97 -41
  156. package/dist/templates/Default/index.js.map +1 -1
  157. package/dist/templates/Default/index.scss +60 -58
  158. package/dist/templates/Minimal/index.scss +22 -20
  159. package/dist/utilities/addLocalesToRequest.d.ts.map +1 -1
  160. package/dist/utilities/addLocalesToRequest.js +18 -8
  161. package/dist/utilities/addLocalesToRequest.js.map +1 -1
  162. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  163. package/dist/utilities/createPayloadRequest.js +15 -13
  164. package/dist/utilities/createPayloadRequest.js.map +1 -1
  165. package/dist/utilities/getClientConfig.d.ts +8 -0
  166. package/dist/utilities/getClientConfig.d.ts.map +1 -0
  167. package/dist/utilities/getClientConfig.js +16 -0
  168. package/dist/utilities/getClientConfig.js.map +1 -0
  169. package/dist/utilities/getPayloadHMR.d.ts +1 -2
  170. package/dist/utilities/getPayloadHMR.d.ts.map +1 -1
  171. package/dist/utilities/getPayloadHMR.js +4 -102
  172. package/dist/utilities/getPayloadHMR.js.map +1 -1
  173. package/dist/utilities/getRequestLocales.d.ts.map +1 -1
  174. package/dist/utilities/getRequestLocales.js +10 -6
  175. package/dist/utilities/getRequestLocales.js.map +1 -1
  176. package/dist/utilities/handleServerFunctions.d.ts +3 -0
  177. package/dist/utilities/handleServerFunctions.d.ts.map +1 -0
  178. package/dist/utilities/handleServerFunctions.js +35 -0
  179. package/dist/utilities/handleServerFunctions.js.map +1 -0
  180. package/dist/utilities/initPage/handleAdminPage.d.ts +5 -3
  181. package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
  182. package/dist/utilities/initPage/handleAdminPage.js +10 -1
  183. package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
  184. package/dist/utilities/initPage/handleAuthRedirect.js +2 -2
  185. package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
  186. package/dist/utilities/initPage/index.d.ts.map +1 -1
  187. package/dist/utilities/initPage/index.js +11 -5
  188. package/dist/utilities/initPage/index.js.map +1 -1
  189. package/dist/utilities/initPage/isCustomAdminView.d.ts +10 -0
  190. package/dist/utilities/initPage/isCustomAdminView.d.ts.map +1 -0
  191. package/dist/utilities/initPage/isCustomAdminView.js +31 -0
  192. package/dist/utilities/initPage/isCustomAdminView.js.map +1 -0
  193. package/dist/utilities/initPage/shared.d.ts.map +1 -1
  194. package/dist/utilities/initPage/shared.js +2 -1
  195. package/dist/utilities/initPage/shared.js.map +1 -1
  196. package/dist/utilities/initReq.d.ts +3 -3
  197. package/dist/utilities/initReq.d.ts.map +1 -1
  198. package/dist/utilities/initReq.js +5 -6
  199. package/dist/utilities/initReq.js.map +1 -1
  200. package/dist/views/API/LocaleSelector/index.js +2 -2
  201. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  202. package/dist/views/API/RenderJSON/index.scss +68 -66
  203. package/dist/views/API/index.client.d.ts.map +1 -1
  204. package/dist/views/API/index.client.js +16 -16
  205. package/dist/views/API/index.client.js.map +1 -1
  206. package/dist/views/Account/Settings/index.js +0 -1
  207. package/dist/views/Account/Settings/index.js.map +1 -1
  208. package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
  209. package/dist/views/Account/ToggleTheme/index.js +2 -0
  210. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  211. package/dist/views/Account/index.d.ts.map +1 -1
  212. package/dist/views/Account/index.js +82 -29
  213. package/dist/views/Account/index.js.map +1 -1
  214. package/dist/views/CreateFirstUser/index.client.d.ts +3 -1
  215. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  216. package/dist/views/CreateFirstUser/index.client.js +83 -108
  217. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  218. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  219. package/dist/views/CreateFirstUser/index.js +36 -4
  220. package/dist/views/CreateFirstUser/index.js.map +1 -1
  221. package/dist/views/Dashboard/Default/index.d.ts +5 -3
  222. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  223. package/dist/views/Dashboard/Default/index.js +58 -47
  224. package/dist/views/Dashboard/Default/index.js.map +1 -1
  225. package/dist/views/Dashboard/index.d.ts.map +1 -1
  226. package/dist/views/Dashboard/index.js +55 -37
  227. package/dist/views/Dashboard/index.js.map +1 -1
  228. package/dist/views/Document/getDocPreferences.d.ts +11 -0
  229. package/dist/views/Document/getDocPreferences.d.ts.map +1 -0
  230. package/dist/views/Document/getDocPreferences.js +44 -0
  231. package/dist/views/Document/getDocPreferences.js.map +1 -0
  232. package/dist/views/Document/getDocumentData.d.ts +10 -11
  233. package/dist/views/Document/getDocumentData.d.ts.map +1 -1
  234. package/dist/views/Document/getDocumentData.js +35 -45
  235. package/dist/views/Document/getDocumentData.js.map +1 -1
  236. package/dist/views/Document/getDocumentPermissions.d.ts +2 -2
  237. package/dist/views/Document/getDocumentPermissions.d.ts.map +1 -1
  238. package/dist/views/Document/getDocumentPermissions.js +10 -7
  239. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  240. package/dist/views/Document/getIsLocked.d.ts +16 -0
  241. package/dist/views/Document/getIsLocked.d.ts.map +1 -0
  242. package/dist/views/Document/getIsLocked.js +55 -0
  243. package/dist/views/Document/getIsLocked.js.map +1 -0
  244. package/dist/views/Document/getVersions.d.ts +19 -0
  245. package/dist/views/Document/getVersions.d.ts.map +1 -0
  246. package/dist/views/Document/getVersions.js +181 -0
  247. package/dist/views/Document/getVersions.js.map +1 -0
  248. package/dist/views/Document/getViewsFromConfig.d.ts +3 -3
  249. package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
  250. package/dist/views/Document/getViewsFromConfig.js +30 -25
  251. package/dist/views/Document/getViewsFromConfig.js.map +1 -1
  252. package/dist/views/Document/handleServerFunction.d.ts +25 -0
  253. package/dist/views/Document/handleServerFunction.d.ts.map +1 -0
  254. package/dist/views/Document/handleServerFunction.js +159 -0
  255. package/dist/views/Document/handleServerFunction.js.map +1 -0
  256. package/dist/views/Document/index.d.ts +5 -1
  257. package/dist/views/Document/index.d.ts.map +1 -1
  258. package/dist/views/Document/index.js +184 -73
  259. package/dist/views/Document/index.js.map +1 -1
  260. package/dist/views/Document/renderDocumentSlots.d.ts +12 -0
  261. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -0
  262. package/dist/views/Document/renderDocumentSlots.js +92 -0
  263. package/dist/views/Document/renderDocumentSlots.js.map +1 -0
  264. package/dist/views/Edit/index.d.ts +3 -2
  265. package/dist/views/Edit/index.d.ts.map +1 -1
  266. package/dist/views/Edit/index.js +7 -3
  267. package/dist/views/Edit/index.js.map +1 -1
  268. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  269. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +5 -1
  270. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  271. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  272. package/dist/views/ForgotPassword/index.js +2 -0
  273. package/dist/views/ForgotPassword/index.js.map +1 -1
  274. package/dist/views/List/handleServerFunction.d.ts +27 -0
  275. package/dist/views/List/handleServerFunction.d.ts.map +1 -0
  276. package/dist/views/List/handleServerFunction.js +158 -0
  277. package/dist/views/List/handleServerFunction.js.map +1 -0
  278. package/dist/views/List/index.d.ts +12 -2
  279. package/dist/views/List/index.d.ts.map +1 -1
  280. package/dist/views/List/index.js +145 -85
  281. package/dist/views/List/index.js.map +1 -1
  282. package/dist/views/List/renderListViewSlots.d.ts +12 -0
  283. package/dist/views/List/renderListViewSlots.d.ts.map +1 -0
  284. package/dist/views/List/renderListViewSlots.js +56 -0
  285. package/dist/views/List/renderListViewSlots.js.map +1 -0
  286. package/dist/views/LivePreview/Context/sizeReducer.d.ts +1 -1
  287. package/dist/views/LivePreview/Context/sizeReducer.d.ts.map +1 -1
  288. package/dist/views/LivePreview/Context/sizeReducer.js +4 -4
  289. package/dist/views/LivePreview/Context/sizeReducer.js.map +1 -1
  290. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  291. package/dist/views/LivePreview/index.client.js +52 -42
  292. package/dist/views/LivePreview/index.client.js.map +1 -1
  293. package/dist/views/LivePreview/index.d.ts.map +1 -1
  294. package/dist/views/LivePreview/index.js +5 -36
  295. package/dist/views/LivePreview/index.js.map +1 -1
  296. package/dist/views/Login/LoginField/index.d.ts.map +1 -1
  297. package/dist/views/Login/LoginField/index.js +6 -1
  298. package/dist/views/Login/LoginField/index.js.map +1 -1
  299. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  300. package/dist/views/Login/LoginForm/index.js +4 -2
  301. package/dist/views/Login/LoginForm/index.js.map +1 -1
  302. package/dist/views/Login/index.d.ts.map +1 -1
  303. package/dist/views/Login/index.js +26 -20
  304. package/dist/views/Login/index.js.map +1 -1
  305. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  306. package/dist/views/Logout/LogoutClient.js +79 -56
  307. package/dist/views/Logout/LogoutClient.js.map +1 -1
  308. package/dist/views/NotFound/index.d.ts.map +1 -1
  309. package/dist/views/NotFound/index.js +3 -0
  310. package/dist/views/NotFound/index.js.map +1 -1
  311. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts.map +1 -1
  312. package/dist/views/ResetPassword/ResetPasswordForm/index.js +13 -12
  313. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  314. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  315. package/dist/views/ResetPassword/index.js +2 -0
  316. package/dist/views/ResetPassword/index.js.map +1 -1
  317. package/dist/views/Root/getViewFromConfig.d.ts +3 -1
  318. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
  319. package/dist/views/Root/getViewFromConfig.js +128 -7
  320. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  321. package/dist/views/Root/index.d.ts.map +1 -1
  322. package/dist/views/Root/index.js +35 -15
  323. package/dist/views/Root/index.js.map +1 -1
  324. package/dist/views/Version/Default/index.d.ts.map +1 -1
  325. package/dist/views/Version/Default/index.js +3 -5
  326. package/dist/views/Version/Default/index.js.map +1 -1
  327. package/dist/views/Version/Default/types.d.ts +2 -2
  328. package/dist/views/Version/Default/types.d.ts.map +1 -1
  329. package/dist/views/Version/Default/types.js.map +1 -1
  330. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts +4 -2
  331. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts.map +1 -1
  332. package/dist/views/Version/RenderFieldsToDiff/fields/types.js.map +1 -1
  333. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  334. package/dist/views/Version/RenderFieldsToDiff/index.js +3 -3
  335. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  336. package/dist/views/Version/RenderFieldsToDiff/types.d.ts +4 -2
  337. package/dist/views/Version/RenderFieldsToDiff/types.d.ts.map +1 -1
  338. package/dist/views/Version/RenderFieldsToDiff/types.js.map +1 -1
  339. package/dist/views/Version/Restore/index.js +1 -1
  340. package/dist/views/Version/Restore/index.js.map +1 -1
  341. package/dist/views/Version/index.d.ts.map +1 -1
  342. package/dist/views/Version/index.js.map +1 -1
  343. package/dist/views/Versions/buildColumns.d.ts +3 -2
  344. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  345. package/dist/views/Versions/buildColumns.js +33 -61
  346. package/dist/views/Versions/buildColumns.js.map +1 -1
  347. package/dist/views/Versions/cells/AutosaveCell/index.d.ts +7 -0
  348. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
  349. package/dist/views/Versions/cells/AutosaveCell/index.js +48 -37
  350. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  351. package/dist/views/Versions/cells/CreatedAt/index.d.ts +4 -0
  352. package/dist/views/Versions/cells/CreatedAt/index.d.ts.map +1 -1
  353. package/dist/views/Versions/cells/CreatedAt/index.js +43 -44
  354. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  355. package/dist/views/Versions/cells/ID/index.d.ts +3 -1
  356. package/dist/views/Versions/cells/ID/index.d.ts.map +1 -1
  357. package/dist/views/Versions/cells/ID/index.js +7 -19
  358. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  359. package/dist/views/Versions/getLatestVersion.js +1 -1
  360. package/dist/views/Versions/getLatestVersion.js.map +1 -1
  361. package/dist/views/Versions/index.client.d.ts.map +1 -1
  362. package/dist/views/Versions/index.client.js +53 -51
  363. package/dist/views/Versions/index.client.js.map +1 -1
  364. package/dist/views/Versions/index.d.ts.map +1 -1
  365. package/dist/views/Versions/index.js +5 -6
  366. package/dist/views/Versions/index.js.map +1 -1
  367. package/dist/withPayload.d.ts.map +1 -1
  368. package/dist/withPayload.js +19 -1
  369. package/dist/withPayload.js.map +1 -1
  370. package/license.md +22 -0
  371. package/package.json +21 -14
  372. package/dist/cjs/withPayload.js +0 -111
  373. package/dist/cjs/withPayload.js.map +0 -1
  374. package/dist/elements/DocumentLocked/index.d.ts +0 -12
  375. package/dist/elements/DocumentLocked/index.d.ts.map +0 -1
  376. package/dist/elements/DocumentLocked/index.js +0 -142
  377. package/dist/elements/DocumentLocked/index.js.map +0 -1
  378. package/dist/elements/DocumentLocked/index.scss +0 -37
  379. package/dist/elements/DocumentTakeOver/index.d.ts +0 -8
  380. package/dist/elements/DocumentTakeOver/index.d.ts.map +0 -1
  381. package/dist/elements/DocumentTakeOver/index.js +0 -98
  382. package/dist/elements/DocumentTakeOver/index.js.map +0 -1
  383. package/dist/elements/DocumentTakeOver/index.scss +0 -37
  384. package/dist/elements/EmailAndUsername/index.d.ts +0 -14
  385. package/dist/elements/EmailAndUsername/index.d.ts.map +0 -1
  386. package/dist/elements/EmailAndUsername/index.js +0 -121
  387. package/dist/elements/EmailAndUsername/index.js.map +0 -1
  388. package/dist/elements/LeaveWithoutSaving/index.d.ts +0 -4
  389. package/dist/elements/LeaveWithoutSaving/index.d.ts.map +0 -1
  390. package/dist/elements/LeaveWithoutSaving/index.js +0 -162
  391. package/dist/elements/LeaveWithoutSaving/index.js.map +0 -1
  392. package/dist/elements/LeaveWithoutSaving/index.scss +0 -37
  393. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts +0 -9
  394. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +0 -1
  395. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +0 -136
  396. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +0 -1
  397. package/dist/routes/rest/buildFormState.d.ts +0 -5
  398. package/dist/routes/rest/buildFormState.d.ts.map +0 -1
  399. package/dist/routes/rest/buildFormState.js +0 -46
  400. package/dist/routes/rest/buildFormState.js.map +0 -1
  401. package/dist/views/Edit/Default/Auth/APIKey.d.ts +0 -6
  402. package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +0 -1
  403. package/dist/views/Edit/Default/Auth/APIKey.js +0 -131
  404. package/dist/views/Edit/Default/Auth/APIKey.js.map +0 -1
  405. package/dist/views/Edit/Default/Auth/index.d.ts +0 -5
  406. package/dist/views/Edit/Default/Auth/index.d.ts.map +0 -1
  407. package/dist/views/Edit/Default/Auth/index.js +0 -307
  408. package/dist/views/Edit/Default/Auth/index.js.map +0 -1
  409. package/dist/views/Edit/Default/Auth/index.scss +0 -78
  410. package/dist/views/Edit/Default/Auth/types.d.ts +0 -17
  411. package/dist/views/Edit/Default/Auth/types.d.ts.map +0 -1
  412. package/dist/views/Edit/Default/Auth/types.js +0 -2
  413. package/dist/views/Edit/Default/Auth/types.js.map +0 -1
  414. package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts +0 -11
  415. package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts.map +0 -1
  416. package/dist/views/Edit/Default/SetDocumentStepNav/index.js +0 -130
  417. package/dist/views/Edit/Default/SetDocumentStepNav/index.js.map +0 -1
  418. package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts +0 -8
  419. package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts.map +0 -1
  420. package/dist/views/Edit/Default/SetDocumentTitle/index.js +0 -81
  421. package/dist/views/Edit/Default/SetDocumentTitle/index.js.map +0 -1
  422. package/dist/views/Edit/Default/index.d.ts +0 -4
  423. package/dist/views/Edit/Default/index.d.ts.map +0 -1
  424. package/dist/views/Edit/Default/index.js +0 -342
  425. package/dist/views/Edit/Default/index.js.map +0 -1
  426. package/dist/views/Edit/Default/index.scss +0 -23
  427. package/dist/views/Edit/Default/types.d.ts +0 -6
  428. package/dist/views/Edit/Default/types.d.ts.map +0 -1
  429. package/dist/views/Edit/Default/types.js +0 -2
  430. package/dist/views/Edit/Default/types.js.map +0 -1
  431. package/dist/views/Edit/index.client.d.ts +0 -3
  432. package/dist/views/Edit/index.client.d.ts.map +0 -1
  433. package/dist/views/Edit/index.client.js +0 -54
  434. package/dist/views/Edit/index.client.js.map +0 -1
  435. package/dist/views/List/Default/index.d.ts +0 -4
  436. package/dist/views/List/Default/index.d.ts.map +0 -1
  437. package/dist/views/List/Default/index.js +0 -387
  438. package/dist/views/List/Default/index.js.map +0 -1
  439. package/dist/views/List/Default/index.scss +0 -179
  440. package/dist/views/List/Default/types.d.ts +0 -15
  441. package/dist/views/List/Default/types.d.ts.map +0 -1
  442. package/dist/views/List/Default/types.js +0 -2
  443. package/dist/views/List/Default/types.js.map +0 -1
@@ -1,160 +1,162 @@
1
1
  @import '../../scss/styles.scss';
2
2
 
3
- .nav {
4
- position: sticky;
5
- top: 0;
6
- left: 0;
7
- flex-shrink: 0;
8
- height: 100vh;
9
- width: var(--nav-width);
10
- border-right: 1px solid var(--theme-elevation-100);
11
- opacity: 0;
12
- overflow: hidden;
13
-
14
- [dir='rtl'] & {
15
- border-right: none;
16
- border-left: 1px solid var(--theme-elevation-100);
17
- }
18
-
19
- &--nav-animate {
20
- transition: opacity var(--nav-trans-time) ease-in-out;
21
- }
22
-
23
- &--nav-open {
24
- opacity: 1;
25
- }
26
-
27
- &__header {
28
- position: absolute;
3
+ @layer payload-default {
4
+ .nav {
5
+ position: sticky;
29
6
  top: 0;
30
- width: 100vw;
31
- height: var(--app-header-height);
32
- }
33
-
34
- &__header-content {
35
- z-index: 1;
36
- position: relative;
37
- height: 100%;
38
- width: 100%;
39
- }
7
+ left: 0;
8
+ flex-shrink: 0;
9
+ height: 100vh;
10
+ width: var(--nav-width);
11
+ border-right: 1px solid var(--theme-elevation-100);
12
+ opacity: 0;
13
+ overflow: hidden;
14
+
15
+ [dir='rtl'] & {
16
+ border-right: none;
17
+ border-left: 1px solid var(--theme-elevation-100);
18
+ }
40
19
 
41
- &__mobile-close {
42
- display: none;
43
- background: none;
44
- border: 0;
45
- outline: 0;
46
- padding: base(0.8) 0;
47
- }
20
+ &--nav-animate {
21
+ transition: opacity var(--nav-trans-time) ease-in-out;
22
+ }
48
23
 
49
- &__scroll {
50
- height: 100%;
51
- display: flex;
52
- flex-direction: column;
53
- padding: var(--app-header-height) base(1) base(2) base(1);
54
- overflow-y: auto;
24
+ &--nav-open {
25
+ opacity: 1;
26
+ }
55
27
 
56
- // remove the scrollbar here to prevent layout shift as nav groups are toggled
57
- &::-webkit-scrollbar {
58
- display: none;
28
+ &__header {
29
+ position: absolute;
30
+ top: 0;
31
+ width: 100vw;
32
+ height: var(--app-header-height);
59
33
  }
60
- }
61
34
 
62
- &__wrap {
63
- width: 100%;
64
- display: flex;
65
- flex-direction: column;
66
- align-items: flex-start;
67
- flex-grow: 1;
68
- }
35
+ &__header-content {
36
+ z-index: 1;
37
+ position: relative;
38
+ height: 100%;
39
+ width: 100%;
40
+ }
69
41
 
70
- &__label {
71
- color: var(--theme-elevation-400);
72
- }
42
+ &__mobile-close {
43
+ display: none;
44
+ background: none;
45
+ border: 0;
46
+ outline: 0;
47
+ padding: base(0.8) 0;
48
+ }
73
49
 
74
- &__controls {
75
- margin-top: auto;
76
- margin-bottom: 0;
50
+ &__scroll {
51
+ height: 100%;
52
+ display: flex;
53
+ flex-direction: column;
54
+ padding: var(--app-header-height) base(1) base(2) base(1);
55
+ overflow-y: auto;
77
56
 
78
- > * {
79
- margin-top: base(1);
57
+ // remove the scrollbar here to prevent layout shift as nav groups are toggled
58
+ &::-webkit-scrollbar {
59
+ display: none;
60
+ }
80
61
  }
81
62
 
82
- a:focus-visible {
83
- outline: var(--accessibility-outline);
63
+ &__wrap {
64
+ width: 100%;
65
+ display: flex;
66
+ flex-direction: column;
67
+ align-items: flex-start;
68
+ flex-grow: 1;
84
69
  }
85
- }
86
70
 
87
- &__log-out {
88
- &:hover {
89
- g {
90
- transform: translateX(-#{base(0.125)});
91
- }
71
+ &__label {
72
+ color: var(--theme-elevation-400);
92
73
  }
93
- }
94
74
 
95
- nav {
96
- a {
97
- position: relative;
98
- padding-block: base(0.125);
99
- padding-inline-start: 0;
100
- padding-inline-end: base(1.5);
101
- display: flex;
102
- text-decoration: none;
75
+ &__controls {
76
+ margin-top: auto;
77
+ margin-bottom: 0;
103
78
 
104
- &:focus:not(:focus-visible) {
105
- box-shadow: none;
106
- font-weight: 600;
79
+ > * {
80
+ margin-top: base(1);
107
81
  }
108
82
 
109
- &:hover,
110
- &:focus-visible {
111
- text-decoration: underline;
83
+ a:focus-visible {
84
+ outline: var(--accessibility-outline);
112
85
  }
86
+ }
113
87
 
114
- &.active {
115
- font-weight: normal;
116
- padding-left: 0;
117
- font-weight: 600;
88
+ &__log-out {
89
+ &:hover {
90
+ g {
91
+ transform: translateX(-#{base(0.125)});
92
+ }
118
93
  }
119
94
  }
120
- }
121
95
 
122
- &__link {
123
- display: flex;
124
- align-items: center;
125
- }
126
-
127
- &__link-indicator {
128
- position: absolute;
129
- display: block;
130
- // top: 0;
131
- inset-inline-start: base(-1);
132
- width: 2px;
133
- height: 16px;
134
- border-start-end-radius: 2px;
135
- border-end-end-radius: 2px;
136
- background: var(--theme-text);
137
- }
96
+ nav {
97
+ a {
98
+ position: relative;
99
+ padding-block: base(0.125);
100
+ padding-inline-start: 0;
101
+ padding-inline-end: base(1.5);
102
+ display: flex;
103
+ text-decoration: none;
104
+
105
+ &:focus:not(:focus-visible) {
106
+ box-shadow: none;
107
+ font-weight: 600;
108
+ }
109
+
110
+ &:hover,
111
+ &:focus-visible {
112
+ text-decoration: underline;
113
+ }
114
+
115
+ &.active {
116
+ font-weight: normal;
117
+ padding-left: 0;
118
+ font-weight: 600;
119
+ }
120
+ }
121
+ }
138
122
 
139
- @include mid-break {
140
- &__scroll {
141
- padding: var(--app-header-height) base(0.5) base(2);
123
+ &__link {
124
+ display: flex;
125
+ align-items: center;
142
126
  }
143
- }
144
127
 
145
- @include small-break {
146
- &__scroll {
147
- padding: var(--app-header-height) var(--gutter-h) base(2);
128
+ &__link-indicator {
129
+ position: absolute;
130
+ display: block;
131
+ // top: 0;
132
+ inset-inline-start: base(-1);
133
+ width: 2px;
134
+ height: 16px;
135
+ border-start-end-radius: 2px;
136
+ border-end-end-radius: 2px;
137
+ background: var(--theme-text);
148
138
  }
149
139
 
150
- nav a {
151
- font-size: base(0.875);
152
- line-height: base(1.5);
140
+ @include mid-break {
141
+ &__scroll {
142
+ padding: var(--app-header-height) base(0.5) base(2);
143
+ }
153
144
  }
154
145
 
155
- &__mobile-close {
156
- display: flex;
157
- align-items: center;
146
+ @include small-break {
147
+ &__scroll {
148
+ padding: var(--app-header-height) var(--gutter-h) base(2);
149
+ }
150
+
151
+ nav a {
152
+ font-size: base(0.875);
153
+ line-height: base(1.5);
154
+ }
155
+
156
+ &__mobile-close {
157
+ display: flex;
158
+ align-items: center;
159
+ }
158
160
  }
159
161
  }
160
162
  }
@@ -1,2 +1,3 @@
1
1
  export { metadata, RootLayout } from '../layouts/Root/index.js';
2
+ export { handleServerFunctions } from '../utilities/handleServerFunctions.js';
2
3
  //# sourceMappingURL=layouts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"layouts.d.ts","sourceRoot":"","sources":["../../src/exports/layouts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA"}
1
+ {"version":3,"file":"layouts.d.ts","sourceRoot":"","sources":["../../src/exports/layouts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAA"}
@@ -1,2 +1,3 @@
1
1
  export { metadata, RootLayout } from '../layouts/Root/index.js';
2
+ export { handleServerFunctions } from '../utilities/handleServerFunctions.js';
2
3
  //# sourceMappingURL=layouts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"layouts.js","names":["metadata","RootLayout"],"sources":["../../src/exports/layouts.ts"],"sourcesContent":["export { metadata, RootLayout } from '../layouts/Root/index.js'\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,UAAU,QAAQ","ignoreList":[]}
1
+ {"version":3,"file":"layouts.js","names":["metadata","RootLayout","handleServerFunctions"],"sources":["../../src/exports/layouts.ts"],"sourcesContent":["export { metadata, RootLayout } from '../layouts/Root/index.js'\nexport { handleServerFunctions } from '../utilities/handleServerFunctions.js'\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,UAAU,QAAQ;AACrC,SAASC,qBAAqB,QAAQ","ignoreList":[]}
@@ -1,3 +1,3 @@
1
1
  export { GRAPHQL_PLAYGROUND_GET, GRAPHQL_POST } from '../routes/graphql/index.js';
2
- export { DELETE as REST_DELETE, GET as REST_GET, OPTIONS as REST_OPTIONS, PATCH as REST_PATCH, POST as REST_POST, } from '../routes/rest/index.js';
2
+ export { DELETE as REST_DELETE, GET as REST_GET, OPTIONS as REST_OPTIONS, PATCH as REST_PATCH, POST as REST_POST, PUT as REST_PUT, } from '../routes/rest/index.js';
3
3
  //# sourceMappingURL=routes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/exports/routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAEjF,OAAO,EACL,MAAM,IAAI,WAAW,EACrB,GAAG,IAAI,QAAQ,EACf,OAAO,IAAI,YAAY,EACvB,KAAK,IAAI,UAAU,EACnB,IAAI,IAAI,SAAS,GAClB,MAAM,yBAAyB,CAAA"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/exports/routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAEjF,OAAO,EACL,MAAM,IAAI,WAAW,EACrB,GAAG,IAAI,QAAQ,EACf,OAAO,IAAI,YAAY,EACvB,KAAK,IAAI,UAAU,EACnB,IAAI,IAAI,SAAS,EACjB,GAAG,IAAI,QAAQ,GAChB,MAAM,yBAAyB,CAAA"}
@@ -1,3 +1,3 @@
1
1
  export { GRAPHQL_PLAYGROUND_GET, GRAPHQL_POST } from '../routes/graphql/index.js';
2
- export { DELETE as REST_DELETE, GET as REST_GET, OPTIONS as REST_OPTIONS, PATCH as REST_PATCH, POST as REST_POST } from '../routes/rest/index.js';
2
+ export { DELETE as REST_DELETE, GET as REST_GET, OPTIONS as REST_OPTIONS, PATCH as REST_PATCH, POST as REST_POST, PUT as REST_PUT } from '../routes/rest/index.js';
3
3
  //# sourceMappingURL=routes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","names":["GRAPHQL_PLAYGROUND_GET","GRAPHQL_POST","DELETE","REST_DELETE","GET","REST_GET","OPTIONS","REST_OPTIONS","PATCH","REST_PATCH","POST","REST_POST"],"sources":["../../src/exports/routes.ts"],"sourcesContent":["export { GRAPHQL_PLAYGROUND_GET, GRAPHQL_POST } from '../routes/graphql/index.js'\n\nexport {\n DELETE as REST_DELETE,\n GET as REST_GET,\n OPTIONS as REST_OPTIONS,\n PATCH as REST_PATCH,\n POST as REST_POST,\n} from '../routes/rest/index.js'\n"],"mappings":"AAAA,SAASA,sBAAsB,EAAEC,YAAY,QAAQ;AAErD,SACEC,MAAA,IAAUC,WAAW,EACrBC,GAAA,IAAOC,QAAQ,EACfC,OAAA,IAAWC,YAAY,EACvBC,KAAA,IAASC,UAAU,EACnBC,IAAA,IAAQC,SAAS,QACZ","ignoreList":[]}
1
+ {"version":3,"file":"routes.js","names":["GRAPHQL_PLAYGROUND_GET","GRAPHQL_POST","DELETE","REST_DELETE","GET","REST_GET","OPTIONS","REST_OPTIONS","PATCH","REST_PATCH","POST","REST_POST","PUT","REST_PUT"],"sources":["../../src/exports/routes.ts"],"sourcesContent":["export { GRAPHQL_PLAYGROUND_GET, GRAPHQL_POST } from '../routes/graphql/index.js'\n\nexport {\n DELETE as REST_DELETE,\n GET as REST_GET,\n OPTIONS as REST_OPTIONS,\n PATCH as REST_PATCH,\n POST as REST_POST,\n PUT as REST_PUT,\n} from '../routes/rest/index.js'\n"],"mappings":"AAAA,SAASA,sBAAsB,EAAEC,YAAY,QAAQ;AAErD,SACEC,MAAA,IAAUC,WAAW,EACrBC,GAAA,IAAOC,QAAQ,EACfC,OAAA,IAAWC,YAAY,EACvBC,KAAA,IAASC,UAAU,EACnBC,IAAA,IAAQC,SAAS,EACjBC,GAAA,IAAOC,QAAQ,QACV","ignoreList":[]}
@@ -2,6 +2,7 @@ export { addDataAndFileToRequest } from '../utilities/addDataAndFileToRequest.js
2
2
  export { addLocalesToRequestFromData, sanitizeLocales } from '../utilities/addLocalesToRequest.js';
3
3
  export { createPayloadRequest } from '../utilities/createPayloadRequest.js';
4
4
  export { getNextRequestI18n } from '../utilities/getNextRequestI18n.js';
5
- export { getPayloadHMR, reload } from '../utilities/getPayloadHMR.js';
5
+ export { getPayloadHMR } from '../utilities/getPayloadHMR.js';
6
6
  export { headersWithCors } from '../utilities/headersWithCors.js';
7
+ export { mergeHeaders } from '../utilities/mergeHeaders.js';
7
8
  //# sourceMappingURL=utilities.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../src/exports/utilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAA;AACjF,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAClG,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAA;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA"}
1
+ {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../src/exports/utilities.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAA;AACjF,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAClG,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAA;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA"}
@@ -1,7 +1,9 @@
1
+ // NOTICE: Server-only utilities, do not import anything client-side here.
1
2
  export { addDataAndFileToRequest } from '../utilities/addDataAndFileToRequest.js';
2
3
  export { addLocalesToRequestFromData, sanitizeLocales } from '../utilities/addLocalesToRequest.js';
3
4
  export { createPayloadRequest } from '../utilities/createPayloadRequest.js';
4
5
  export { getNextRequestI18n } from '../utilities/getNextRequestI18n.js';
5
- export { getPayloadHMR, reload } from '../utilities/getPayloadHMR.js';
6
+ export { getPayloadHMR } from '../utilities/getPayloadHMR.js';
6
7
  export { headersWithCors } from '../utilities/headersWithCors.js';
8
+ export { mergeHeaders } from '../utilities/mergeHeaders.js';
7
9
  //# sourceMappingURL=utilities.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.js","names":["addDataAndFileToRequest","addLocalesToRequestFromData","sanitizeLocales","createPayloadRequest","getNextRequestI18n","getPayloadHMR","reload","headersWithCors"],"sources":["../../src/exports/utilities.ts"],"sourcesContent":["export { addDataAndFileToRequest } from '../utilities/addDataAndFileToRequest.js'\nexport { addLocalesToRequestFromData, sanitizeLocales } from '../utilities/addLocalesToRequest.js'\nexport { createPayloadRequest } from '../utilities/createPayloadRequest.js'\nexport { getNextRequestI18n } from '../utilities/getNextRequestI18n.js'\nexport { getPayloadHMR, reload } from '../utilities/getPayloadHMR.js'\nexport { headersWithCors } from '../utilities/headersWithCors.js'\n"],"mappings":"AAAA,SAASA,uBAAuB,QAAQ;AACxC,SAASC,2BAA2B,EAAEC,eAAe,QAAQ;AAC7D,SAASC,oBAAoB,QAAQ;AACrC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,aAAa,EAAEC,MAAM,QAAQ;AACtC,SAASC,eAAe,QAAQ","ignoreList":[]}
1
+ {"version":3,"file":"utilities.js","names":["addDataAndFileToRequest","addLocalesToRequestFromData","sanitizeLocales","createPayloadRequest","getNextRequestI18n","getPayloadHMR","headersWithCors","mergeHeaders"],"sources":["../../src/exports/utilities.ts"],"sourcesContent":["// NOTICE: Server-only utilities, do not import anything client-side here.\nexport { addDataAndFileToRequest } from '../utilities/addDataAndFileToRequest.js'\nexport { addLocalesToRequestFromData, sanitizeLocales } from '../utilities/addLocalesToRequest.js'\nexport { createPayloadRequest } from '../utilities/createPayloadRequest.js'\nexport { getNextRequestI18n } from '../utilities/getNextRequestI18n.js'\nexport { getPayloadHMR } from '../utilities/getPayloadHMR.js'\nexport { headersWithCors } from '../utilities/headersWithCors.js'\nexport { mergeHeaders } from '../utilities/mergeHeaders.js'\n"],"mappings":"AAAA;AACA,SAASA,uBAAuB,QAAQ;AACxC,SAASC,2BAA2B,EAAEC,eAAe,QAAQ;AAC7D,SAASC,oBAAoB,QAAQ;AACrC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,aAAa,QAAQ;AAC9B,SAASC,eAAe,QAAQ;AAChC,SAASC,YAAY,QAAQ","ignoreList":[]}
@@ -1,5 +1,3 @@
1
- export { DefaultEditView as EditView } from '../views/Edit/Default/index.js';
2
- export { DefaultListView as ListView } from '../views/List/Default/index.js';
3
1
  export { NotFoundPage } from '../views/NotFound/index.js';
4
2
  export { generatePageMetadata, type GenerateViewMetadata, RootPage } from '../views/Root/index.js';
5
3
  //# sourceMappingURL=views.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"views.d.ts","sourceRoot":"","sources":["../../src/exports/views.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,IAAI,QAAQ,EAAE,MAAM,gCAAgC,CAAA;AAC5E,OAAO,EAAE,eAAe,IAAI,QAAQ,EAAE,MAAM,gCAAgC,CAAA;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EAAE,oBAAoB,EAAE,KAAK,oBAAoB,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA"}
1
+ {"version":3,"file":"views.d.ts","sourceRoot":"","sources":["../../src/exports/views.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EAAE,oBAAoB,EAAE,KAAK,oBAAoB,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA"}
@@ -1,5 +1,3 @@
1
- export { DefaultEditView as EditView } from '../views/Edit/Default/index.js';
2
- export { DefaultListView as ListView } from '../views/List/Default/index.js';
3
1
  export { NotFoundPage } from '../views/NotFound/index.js';
4
2
  export { generatePageMetadata, RootPage } from '../views/Root/index.js';
5
3
  //# sourceMappingURL=views.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"views.js","names":["DefaultEditView","EditView","DefaultListView","ListView","NotFoundPage","generatePageMetadata","RootPage"],"sources":["../../src/exports/views.ts"],"sourcesContent":["export { DefaultEditView as EditView } from '../views/Edit/Default/index.js'\nexport { DefaultListView as ListView } from '../views/List/Default/index.js'\nexport { NotFoundPage } from '../views/NotFound/index.js'\nexport { generatePageMetadata, type GenerateViewMetadata, RootPage } from '../views/Root/index.js'\n"],"mappings":"AAAA,SAASA,eAAA,IAAmBC,QAAQ,QAAQ;AAC5C,SAASC,eAAA,IAAmBC,QAAQ,QAAQ;AAC5C,SAASC,YAAY,QAAQ;AAC7B,SAASC,oBAAoB,EAA6BC,QAAQ,QAAQ","ignoreList":[]}
1
+ {"version":3,"file":"views.js","names":["NotFoundPage","generatePageMetadata","RootPage"],"sources":["../../src/exports/views.ts"],"sourcesContent":["export { NotFoundPage } from '../views/NotFound/index.js'\nexport { generatePageMetadata, type GenerateViewMetadata, RootPage } from '../views/Root/index.js'\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ;AAC7B,SAASC,oBAAoB,EAA6BC,QAAQ,QAAQ","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  const ACCEPTABLE_CONTENT_TYPE = /multipart\/['"()+-_]+(?:; ?['"()+-_]*)+$/i;
2
- const UNACCEPTABLE_METHODS = new Set(['GET', 'HEAD', 'DELETE', 'OPTIONS', 'CONNECT', 'TRACE']);
2
+ const UNACCEPTABLE_METHODS = new Set(['CONNECT', 'DELETE', 'GET', 'HEAD', 'OPTIONS', 'TRACE']);
3
3
  const hasBody = req => {
4
4
  return Boolean(req.headers.get('transfer-encoding') || req.headers.get('content-length') && req.headers.get('content-length') !== '0');
5
5
  };
@@ -1 +1 @@
1
- {"version":3,"file":"isEligibleRequest.js","names":["ACCEPTABLE_CONTENT_TYPE","UNACCEPTABLE_METHODS","Set","hasBody","req","Boolean","headers","get","hasAcceptableMethod","has","method","hasAcceptableContentType","contType","includes","test","isEligibleRequest","e"],"sources":["../../src/fetchAPI-multipart/isEligibleRequest.ts"],"sourcesContent":["const ACCEPTABLE_CONTENT_TYPE = /multipart\\/['\"()+-_]+(?:; ?['\"()+-_]*)+$/i\nconst UNACCEPTABLE_METHODS = new Set(['GET', 'HEAD', 'DELETE', 'OPTIONS', 'CONNECT', 'TRACE'])\n\nconst hasBody = (req: Request): boolean => {\n return Boolean(\n req.headers.get('transfer-encoding') ||\n (req.headers.get('content-length') && req.headers.get('content-length') !== '0'),\n )\n}\n\nconst hasAcceptableMethod = (req: Request): boolean => !UNACCEPTABLE_METHODS.has(req.method)\n\nconst hasAcceptableContentType = (req: Request): boolean => {\n const contType = req.headers.get('content-type')\n return contType.includes('boundary=') && ACCEPTABLE_CONTENT_TYPE.test(contType)\n}\n\nexport const isEligibleRequest = (req: Request): boolean => {\n try {\n return hasBody(req) && hasAcceptableMethod(req) && hasAcceptableContentType(req)\n } catch (e) {\n return false\n }\n}\n"],"mappings":"AAAA,MAAMA,uBAAA,GAA0B;AAChC,MAAMC,oBAAA,GAAuB,IAAIC,GAAA,CAAI,CAAC,OAAO,QAAQ,UAAU,WAAW,WAAW,QAAQ;AAE7F,MAAMC,OAAA,GAAWC,GAAA;EACf,OAAOC,OAAA,CACLD,GAAA,CAAIE,OAAO,CAACC,GAAG,CAAC,wBACbH,GAAA,CAAIE,OAAO,CAACC,GAAG,CAAC,qBAAqBH,GAAA,CAAIE,OAAO,CAACC,GAAG,CAAC,sBAAsB;AAElF;AAEA,MAAMC,mBAAA,GAAuBJ,GAAA,IAA0B,CAACH,oBAAA,CAAqBQ,GAAG,CAACL,GAAA,CAAIM,MAAM;AAE3F,MAAMC,wBAAA,GAA4BP,GAAA;EAChC,MAAMQ,QAAA,GAAWR,GAAA,CAAIE,OAAO,CAACC,GAAG,CAAC;EACjC,OAAOK,QAAA,CAASC,QAAQ,CAAC,gBAAgBb,uBAAA,CAAwBc,IAAI,CAACF,QAAA;AACxE;AAEA,OAAO,MAAMG,iBAAA,GAAqBX,GAAA;EAChC,IAAI;IACF,OAAOD,OAAA,CAAQC,GAAA,KAAQI,mBAAA,CAAoBJ,GAAA,KAAQO,wBAAA,CAAyBP,GAAA;EAC9E,EAAE,OAAOY,CAAA,EAAG;IACV,OAAO;EACT;AACF","ignoreList":[]}
1
+ {"version":3,"file":"isEligibleRequest.js","names":["ACCEPTABLE_CONTENT_TYPE","UNACCEPTABLE_METHODS","Set","hasBody","req","Boolean","headers","get","hasAcceptableMethod","has","method","hasAcceptableContentType","contType","includes","test","isEligibleRequest","e"],"sources":["../../src/fetchAPI-multipart/isEligibleRequest.ts"],"sourcesContent":["const ACCEPTABLE_CONTENT_TYPE = /multipart\\/['\"()+-_]+(?:; ?['\"()+-_]*)+$/i\nconst UNACCEPTABLE_METHODS = new Set(['CONNECT', 'DELETE', 'GET', 'HEAD', 'OPTIONS', 'TRACE'])\n\nconst hasBody = (req: Request): boolean => {\n return Boolean(\n req.headers.get('transfer-encoding') ||\n (req.headers.get('content-length') && req.headers.get('content-length') !== '0'),\n )\n}\n\nconst hasAcceptableMethod = (req: Request): boolean => !UNACCEPTABLE_METHODS.has(req.method)\n\nconst hasAcceptableContentType = (req: Request): boolean => {\n const contType = req.headers.get('content-type')\n return contType.includes('boundary=') && ACCEPTABLE_CONTENT_TYPE.test(contType)\n}\n\nexport const isEligibleRequest = (req: Request): boolean => {\n try {\n return hasBody(req) && hasAcceptableMethod(req) && hasAcceptableContentType(req)\n } catch (e) {\n return false\n }\n}\n"],"mappings":"AAAA,MAAMA,uBAAA,GAA0B;AAChC,MAAMC,oBAAA,GAAuB,IAAIC,GAAA,CAAI,CAAC,WAAW,UAAU,OAAO,QAAQ,WAAW,QAAQ;AAE7F,MAAMC,OAAA,GAAWC,GAAA;EACf,OAAOC,OAAA,CACLD,GAAA,CAAIE,OAAO,CAACC,GAAG,CAAC,wBACbH,GAAA,CAAIE,OAAO,CAACC,GAAG,CAAC,qBAAqBH,GAAA,CAAIE,OAAO,CAACC,GAAG,CAAC,sBAAsB;AAElF;AAEA,MAAMC,mBAAA,GAAuBJ,GAAA,IAA0B,CAACH,oBAAA,CAAqBQ,GAAG,CAACL,GAAA,CAAIM,MAAM;AAE3F,MAAMC,wBAAA,GAA4BP,GAAA;EAChC,MAAMQ,QAAA,GAAWR,GAAA,CAAIE,OAAO,CAACC,GAAG,CAAC;EACjC,OAAOK,QAAA,CAASC,QAAQ,CAAC,gBAAgBb,uBAAA,CAAwBc,IAAI,CAACF,QAAA;AACxE;AAEA,OAAO,MAAMG,iBAAA,GAAqBX,GAAA;EAChC,IAAI;IACF,OAAOD,OAAA,CAAQC,GAAA,KAAQI,mBAAA,CAAoBJ,GAAA,KAAQO,wBAAA,CAAyBP,GAAA;EAC9E,EAAE,OAAOY,CAAA,EAAG;IACV,OAAO;EACT;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"processMultipart.d.ts","sourceRoot":"","sources":["../../src/fetchAPI-multipart/processMultipart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAOxD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAA;AAU5D,KAAK,gBAAgB,GAAG,CAAC,IAAI,EAAE;IAC7B,OAAO,EAAE,yBAAyB,CAAA;IAClC,OAAO,EAAE,OAAO,CAAA;CACjB,KAAK,OAAO,CAAC,0BAA0B,CAAC,CAAA;AACzC,eAAO,MAAM,gBAAgB,EAAE,gBAsM9B,CAAA"}
1
+ {"version":3,"file":"processMultipart.d.ts","sourceRoot":"","sources":["../../src/fetchAPI-multipart/processMultipart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAOxD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAA;AAU5D,KAAK,gBAAgB,GAAG,CAAC,IAAI,EAAE;IAC7B,OAAO,EAAE,yBAAyB,CAAA;IAClC,OAAO,EAAE,OAAO,CAAA;CACjB,KAAK,OAAO,CAAC,0BAA0B,CAAC,CAAA;AACzC,eAAO,MAAM,gBAAgB,EAAE,gBAmM9B,CAAA"}
@@ -12,6 +12,7 @@ export const processMultipart = async ({
12
12
  request
13
13
  }) => {
14
14
  let parsingRequest = true;
15
+ let shouldAbortProccessing = false;
15
16
  let fileCount = 0;
16
17
  let filesCompleted = 0;
17
18
  let allFilesHaveResolved;
@@ -28,15 +29,16 @@ export const processMultipart = async ({
28
29
  request.headers.forEach((value, name) => {
29
30
  headersObject[name] = value;
30
31
  });
31
- function abortAndDestroyFile(file, err) {
32
- file.destroy();
33
- parsingRequest = false;
34
- failedResolvingFiles(err);
35
- }
32
+ const reader = request.body.getReader();
36
33
  const busboy = Busboy({
37
34
  ...options,
38
35
  headers: headersObject
39
36
  });
37
+ function abortAndDestroyFile(file, err) {
38
+ file.destroy();
39
+ shouldAbortProccessing = true;
40
+ failedResolvingFiles(err);
41
+ }
40
42
  // Build multipart req.body fields
41
43
  busboy.on('field', (field, val) => {
42
44
  result.fields = buildFields(result.fields, field, val);
@@ -113,7 +115,7 @@ export const processMultipart = async ({
113
115
  mimetype: mime,
114
116
  size,
115
117
  tempFilePath: getFilePath(),
116
- truncated: Boolean('truncated' in file && file.truncated)
118
+ truncated: Boolean('truncated' in file && file.truncated) || false
117
119
  }, options));
118
120
  if (!request[waitFlushProperty]) {
119
121
  request[waitFlushProperty] = [];
@@ -133,7 +135,6 @@ export const processMultipart = async ({
133
135
  debugLog(options, `New upload started ${field}->${filename}, bytes:${getFileSize()}`);
134
136
  uploadTimer.set();
135
137
  });
136
- // TODO: Valid eslint error - this will likely be a floating promise. Evaluate if we need to handle this differently.
137
138
  busboy.on('finish', async () => {
138
139
  debugLog(options, `Busboy finished parsing request.`);
139
140
  if (options.parseNested) {
@@ -153,11 +154,8 @@ export const processMultipart = async ({
153
154
  });
154
155
  busboy.on('error', (err = new APIError('Busboy error parsing multipart request', httpStatus.BAD_REQUEST)) => {
155
156
  debugLog(options, `Busboy error`);
156
- parsingRequest = false;
157
157
  throw err;
158
158
  });
159
- const reader = request.body.getReader();
160
- // Start parsing request
161
159
  while (parsingRequest) {
162
160
  const {
163
161
  done,
@@ -166,7 +164,7 @@ export const processMultipart = async ({
166
164
  if (done) {
167
165
  parsingRequest = false;
168
166
  }
169
- if (value) {
167
+ if (value && !shouldAbortProccessing) {
170
168
  busboy.write(value);
171
169
  }
172
170
  }
@@ -1 +1 @@
1
- {"version":3,"file":"processMultipart.js","names":["Busboy","httpStatus","APIError","fileFactory","memHandler","tempFileHandler","processNested","createUploadTimer","buildFields","debugLog","isFunc","parseFileName","waitFlushProperty","Symbol","processMultipart","options","request","parsingRequest","fileCount","filesCompleted","allFilesHaveResolved","failedResolvingFiles","allFilesComplete","Promise","res","rej","result","fields","undefined","files","headersObject","headers","forEach","value","name","abortAndDestroyFile","file","err","destroy","busboy","on","field","val","info","encoding","filename","mimeType","mime","cleanup","complete","dataHandler","getFilePath","getFileSize","getHash","getWritePromise","useTempFiles","writePromise","catch","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","reader","body","getReader","done","read","write","e"],"sources":["../../src/fetchAPI-multipart/processMultipart.ts"],"sourcesContent":["import type { FetchAPIFileUploadOptions } from 'payload'\nimport type { Readable } from 'stream'\n\nimport Busboy from 'busboy'\nimport httpStatus from 'http-status'\nimport { APIError } from 'payload'\n\nimport type { FetchAPIFileUploadResponse } from './index.js'\n\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\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 fileCount = 0\n let filesCompleted = 0\n let allFilesHaveResolved: (value?: unknown) => void\n let failedResolvingFiles: (err: Error) => void\n\n const allFilesComplete = new Promise((res, rej) => {\n allFilesHaveResolved = res\n failedResolvingFiles = rej\n })\n\n const result: FetchAPIFileUploadResponse = {\n fields: undefined,\n files: undefined,\n }\n\n const headersObject = {}\n request.headers.forEach((value, name) => {\n headersObject[name] = value\n })\n\n function abortAndDestroyFile(file: Readable, err: APIError) {\n file.destroy()\n parsingRequest = false\n failedResolvingFiles(err)\n }\n\n const busboy = Busboy({ ...options, headers: headersObject })\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 // 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((err) => {\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: mime,\n size,\n tempFilePath: getFilePath(),\n truncated: Boolean('truncated' in file && file.truncated),\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 // TODO: Valid eslint error - this will likely be a floating promise. Evaluate if we need to handle this differently.\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 return result\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 parsingRequest = false\n throw err\n },\n )\n\n const reader = request.body.getReader()\n\n // Start parsing request\n while (parsingRequest) {\n const { done, value } = await reader.read()\n\n if (done) {\n parsingRequest = false\n }\n\n if (value) {\n busboy.write(value)\n }\n }\n\n if (fileCount !== 0) {\n await allFilesComplete.catch((e) => {\n throw e\n })\n }\n\n return result\n}\n"],"mappings":"AAGA,OAAOA,MAAA,MAAY;AACnB,OAAOC,UAAA,MAAgB;AACvB,SAASC,QAAQ,QAAQ;AAIzB,SAASC,WAAW,QAAQ;AAC5B,SAASC,UAAU,EAAEC,eAAe,QAAQ;AAC5C,SAASC,aAAa,QAAQ;AAC9B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,WAAW,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,aAAa,QAAQ;AAE7D,MAAMC,iBAAA,GAAoBC,MAAA,CAAO;AAMjC,OAAO,MAAMC,gBAAA,GAAqC,MAAAA,CAAO;EAAEC,OAAO;EAAEC;AAAO,CAAE;EAC3E,IAAIC,cAAA,GAAiB;EAErB,IAAIC,SAAA,GAAY;EAChB,IAAIC,cAAA,GAAiB;EACrB,IAAIC,oBAAA;EACJ,IAAIC,oBAAA;EAEJ,MAAMC,gBAAA,GAAmB,IAAIC,OAAA,CAAQ,CAACC,GAAA,EAAKC,GAAA;IACzCL,oBAAA,GAAuBI,GAAA;IACvBH,oBAAA,GAAuBI,GAAA;EACzB;EAEA,MAAMC,MAAA,GAAqC;IACzCC,MAAA,EAAQC,SAAA;IACRC,KAAA,EAAOD;EACT;EAEA,MAAME,aAAA,GAAgB,CAAC;EACvBd,OAAA,CAAQe,OAAO,CAACC,OAAO,CAAC,CAACC,KAAA,EAAOC,IAAA;IAC9BJ,aAAa,CAACI,IAAA,CAAK,GAAGD,KAAA;EACxB;EAEA,SAASE,oBAAoBC,IAAc,EAAEC,GAAa;IACxDD,IAAA,CAAKE,OAAO;IACZrB,cAAA,GAAiB;IACjBI,oBAAA,CAAqBgB,GAAA;EACvB;EAEA,MAAME,MAAA,GAASvC,MAAA,CAAO;IAAE,GAAGe,OAAO;IAAEgB,OAAA,EAASD;EAAc;EAE3D;EACAS,MAAA,CAAOC,EAAE,CAAC,SAAS,CAACC,KAAA,EAAOC,GAAA;IACzBhB,MAAA,CAAOC,MAAM,GAAGnB,WAAA,CAAYkB,MAAA,CAAOC,MAAM,EAAEc,KAAA,EAAOC,GAAA;EACpD;EAEA;EACAH,MAAA,CAAOC,EAAE,CAAC,QAAQ,CAACC,KAAA,EAAOL,IAAA,EAAMO,IAAA;IAC9BzB,SAAA,IAAa;IACb;IACA,MAAM;MAAE0B,QAAQ;MAAEC,QAAA,EAAUX,IAAI;MAAEY,QAAA,EAAUC;IAAI,CAAE,GAAGJ,IAAA;IACrD,MAAME,QAAA,GAAWlC,aAAA,CAAcI,OAAA,EAASmB,IAAA;IAExC;IACA,MAAM;MAAEc,OAAO;MAAEC,QAAQ;MAAEC,WAAW;MAAEC,WAAW;MAAEC,WAAW;MAAEC,OAAO;MAAEC;IAAe,CAAE,GAC1FvC,OAAA,CAAQwC,YAAY,GAChBlD,eAAA,CAAgBU,OAAA,EAAS0B,KAAA,EAAOI,QAAA,EAAU;IAAA,EAC1CzC,UAAA,CAAWW,OAAA,EAAS0B,KAAA,EAAOI,QAAA,EAAU;IAAA;IAE3C,MAAMW,YAAA,GAAezC,OAAA,CAAQwC,YAAY,GACrCD,eAAA,GAAkBG,KAAK,CAAEpB,GAAA;MACvBE,MAAA,CAAOmB,GAAG;MACVV,OAAA;IACF,KACAM,eAAA;IAEJ,MAAMK,WAAA,GAAcpD,iBAAA,CAAkBQ,OAAA,CAAQ6C,aAAa,EAAE;MAC3D,OAAOzB,mBAAA,CACLC,IAAA,EACA,IAAIlC,QAAA,CAAS,sBAAsBuC,KAAA,KAAUI,QAAA,WAAmBO,WAAA,IAAe;IAEnF;IAEAhB,IAAA,CAAKI,EAAE,CAAC,SAAS;MACf/B,QAAA,CAASM,OAAA,EAAS,0BAA0B0B,KAAA,KAAUI,QAAA,WAAmBO,WAAA,IAAe;MACxFO,WAAA,CAAYE,KAAK;MAEjB,IAAInD,MAAA,CAAOK,OAAA,CAAQ+C,YAAY,GAAG;QAChC/C,OAAA,CAAQ+C,YAAY,CAAC;UAAE9C,OAAA;UAAS+C,IAAA,EAAMX,WAAA;QAAc;MACtD;MAEA;MACA,IAAIrC,OAAA,CAAQiD,YAAY,EAAE;QACxBvD,QAAA,CAASM,OAAA,EAAS,kCAAkC0B,KAAA,KAAUI,QAAA,GAAW;QACzEG,OAAA;QACAb,mBAAA,CACEC,IAAA,EACA,IAAIlC,QAAA,CAASa,OAAA,CAAQkD,eAAe,EAAEhE,UAAA,CAAWiE,wBAAwB,EAAE;UACzEH,IAAA,EAAMX,WAAA;QACR;MAEJ;IACF;IAEAhB,IAAA,CAAKI,EAAE,CAAC,QAAS2B,IAAA;MACfR,WAAA,CAAYS,GAAG;MACflB,WAAA,CAAYiB,IAAA;IACd;IAEA/B,IAAA,CAAKI,EAAE,CAAC,OAAO;MACb,MAAMuB,IAAA,GAAOX,WAAA;MACb3C,QAAA,CAASM,OAAA,EAAS,mBAAmB0B,KAAA,KAAUI,QAAA,WAAmBkB,IAAA,EAAM;MACxEJ,WAAA,CAAYE,KAAK;MAEjB,IAAI,CAAC3B,IAAA,IAAQ6B,IAAA,KAAS,GAAG;QACvB7C,SAAA,IAAa;QACb,IAAIH,OAAA,CAAQwC,YAAY,EAAE;UACxBP,OAAA;UACAvC,QAAA,CAASM,OAAA,EAAS,2BAA2B0B,KAAA,KAAUI,QAAA,EAAU;QACnE;QACA,OAAOpC,QAAA,CAASM,OAAA,EAAS,6DAA6D;MACxF;MAEAI,cAAA,IAAkB;MAElBO,MAAA,CAAOG,KAAK,GAAGrB,WAAA,CACbkB,MAAA,CAAOG,KAAK,EACZY,KAAA,EACAtC,WAAA,CACE;QACE+B,IAAA,EAAMW,QAAA;QACNwB,MAAA,EAAQpB,QAAA;QACRL,QAAA;QACA0B,IAAA,EAAMjB,OAAA;QACNkB,QAAA,EAAUxB,IAAA;QACVgB,IAAA;QACAS,YAAA,EAAcrB,WAAA;QACdsB,SAAA,EAAWC,OAAA,CAAQ,eAAetC,IAAA,IAAQA,IAAA,CAAKqC,SAAS;MAC1D,GACA1D,OAAA;MAIJ,IAAI,CAACC,OAAO,CAACJ,iBAAA,CAAkB,EAAE;QAC/BI,OAAO,CAACJ,iBAAA,CAAkB,GAAG,EAAE;MACjC;MACAI,OAAO,CAACJ,iBAAA,CAAkB,CAAC+D,IAAI,CAACnB,YAAA;MAEhC,IAAIrC,cAAA,KAAmBD,SAAA,EAAW;QAChCE,oBAAA;MACF;IACF;IAEAgB,IAAA,CAAKI,EAAE,CAAC,SAAUH,GAAA;MAChBsB,WAAA,CAAYE,KAAK;MACjBpD,QAAA,CAASM,OAAA,EAAS,eAAesB,GAAA,CAAIuC,OAAO,EAAE;MAC9C5B,OAAA;MACA3B,oBAAA,CAAqBgB,GAAA;IACvB;IAEA;IACA5B,QAAA,CAASM,OAAA,EAAS,sBAAsB0B,KAAA,KAAUI,QAAA,WAAmBO,WAAA,IAAe;IACpFO,WAAA,CAAYS,GAAG;EACjB;EAEA;EAEA7B,MAAA,CAAOC,EAAE,CAAC,UAAU;IAClB/B,QAAA,CAASM,OAAA,EAAS,kCAAkC;IACpD,IAAIA,OAAA,CAAQ8D,WAAW,EAAE;MACvBnD,MAAA,CAAOC,MAAM,GAAGrB,aAAA,CAAcoB,MAAA,CAAOC,MAAM;MAC3CD,MAAA,CAAOG,KAAK,GAAGvB,aAAA,CAAcoB,MAAA,CAAOG,KAAK;IAC3C;IAEA,IAAIb,OAAO,CAACJ,iBAAA,CAAkB,EAAE;MAC9B,IAAI;QACF,MAAMW,OAAA,CAAQuD,GAAG,CAAC9D,OAAO,CAACJ,iBAAA,CAAkB,EAAEmE,IAAI,CAAC;UACjD,OAAO/D,OAAO,CAACJ,iBAAA,CAAkB;QACnC;MACF,EAAE,OAAOyB,GAAA,EAAK;QACZ5B,QAAA,CAASM,OAAA,EAAS,0CAA0CsB,GAAA,EAAK;MACnE;IACF;IAEA,OAAOX,MAAA;EACT;EAEAa,MAAA,CAAOC,EAAE,CACP,SACA,CAACH,GAAA,GAAM,IAAInC,QAAA,CAAS,0CAA0CD,UAAA,CAAW+E,WAAW,CAAC;IACnFvE,QAAA,CAASM,OAAA,EAAS,cAAc;IAChCE,cAAA,GAAiB;IACjB,MAAMoB,GAAA;EACR;EAGF,MAAM4C,MAAA,GAASjE,OAAA,CAAQkE,IAAI,CAACC,SAAS;EAErC;EACA,OAAOlE,cAAA,EAAgB;IACrB,MAAM;MAAEmE,IAAI;MAAEnD;IAAK,CAAE,GAAG,MAAMgD,MAAA,CAAOI,IAAI;IAEzC,IAAID,IAAA,EAAM;MACRnE,cAAA,GAAiB;IACnB;IAEA,IAAIgB,KAAA,EAAO;MACTM,MAAA,CAAO+C,KAAK,CAACrD,KAAA;IACf;EACF;EAEA,IAAIf,SAAA,KAAc,GAAG;IACnB,MAAMI,gBAAA,CAAiBmC,KAAK,CAAE8B,CAAA;MAC5B,MAAMA,CAAA;IACR;EACF;EAEA,OAAO7D,MAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"processMultipart.js","names":["Busboy","httpStatus","APIError","fileFactory","memHandler","tempFileHandler","processNested","createUploadTimer","buildFields","debugLog","isFunc","parseFileName","waitFlushProperty","Symbol","processMultipart","options","request","parsingRequest","shouldAbortProccessing","fileCount","filesCompleted","allFilesHaveResolved","failedResolvingFiles","allFilesComplete","Promise","res","rej","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","cleanup","complete","dataHandler","getFilePath","getFileSize","getHash","getWritePromise","useTempFiles","writePromise","catch","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","done","read","write","e"],"sources":["../../src/fetchAPI-multipart/processMultipart.ts"],"sourcesContent":["import type { FetchAPIFileUploadOptions } from 'payload'\nimport type { Readable } from 'stream'\n\nimport Busboy from 'busboy'\nimport httpStatus from 'http-status'\nimport { APIError } from 'payload'\n\nimport type { FetchAPIFileUploadResponse } from './index.js'\n\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\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\n const allFilesComplete = new Promise((res, rej) => {\n allFilesHaveResolved = res\n failedResolvingFiles = rej\n })\n\n const result: FetchAPIFileUploadResponse = {\n fields: undefined,\n files: undefined,\n }\n\n const headersObject = {}\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 // 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((err) => {\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: mime,\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 return result\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 throw err\n },\n )\n\n while (parsingRequest) {\n const { done, value } = await reader.read()\n\n if (done) {\n parsingRequest = false\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 return result\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ import type { Config, ImportMap } from 'payload';
2
+ import '@payloadcms/ui/scss/app.scss';
3
+ import React from 'react';
4
+ type Args = {
5
+ readonly children: React.ReactNode;
6
+ readonly importMap: ImportMap;
7
+ readonly providers: Config['admin']['components']['providers'];
8
+ };
9
+ export declare function NestProviders({ children, importMap, providers }: Args): React.ReactNode;
10
+ export {};
11
+ //# sourceMappingURL=NestProviders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NestProviders.d.ts","sourceRoot":"","sources":["../../../src/layouts/Root/NestProviders.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAGhD,OAAO,8BAA8B,CAAA;AACrC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,KAAK,IAAI,GAAG;IACV,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,WAAW,CAAC,CAAA;CAC/D,CAAA;AAED,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,IAAI,GAAG,KAAK,CAAC,SAAS,CAiBvF"}
@@ -0,0 +1,21 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
3
+ import React from 'react';
4
+ export function NestProviders({
5
+ children,
6
+ importMap,
7
+ providers
8
+ }) {
9
+ return /*#__PURE__*/_jsx(RenderServerComponent, {
10
+ clientProps: {
11
+ children: providers.length > 1 ? /*#__PURE__*/_jsx(NestProviders, {
12
+ importMap: importMap,
13
+ providers: providers.slice(1),
14
+ children: children
15
+ }) : children
16
+ },
17
+ Component: providers[0],
18
+ importMap: importMap
19
+ });
20
+ }
21
+ //# sourceMappingURL=NestProviders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NestProviders.js","names":["RenderServerComponent","React","NestProviders","children","importMap","providers","_jsx","clientProps","length","slice","Component"],"sources":["../../../src/layouts/Root/NestProviders.tsx"],"sourcesContent":["import type { Config, ImportMap } from 'payload'\n\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport '@payloadcms/ui/scss/app.scss'\nimport React from 'react'\n\ntype Args = {\n readonly children: React.ReactNode\n readonly importMap: ImportMap\n readonly providers: Config['admin']['components']['providers']\n}\n\nexport function NestProviders({ children, importMap, providers }: Args): React.ReactNode {\n return (\n <RenderServerComponent\n clientProps={{\n children:\n providers.length > 1 ? (\n <NestProviders importMap={importMap} providers={providers.slice(1)}>\n {children}\n </NestProviders>\n ) : (\n children\n ),\n }}\n Component={providers[0]}\n importMap={importMap}\n />\n )\n}\n"],"mappings":";AAEA,SAASA,qBAAqB,QAAQ;AAEtC,OAAOC,KAAA,MAAW;AAQlB,OAAO,SAASC,cAAc;EAAEC,QAAQ;EAAEC,SAAS;EAAEC;AAAS,CAAQ;EACpE,oBACEC,IAAA,CAACN,qBAAA;IACCO,WAAA,EAAa;MACXJ,QAAA,EACEE,SAAA,CAAUG,MAAM,GAAG,iBACjBF,IAAA,CAACJ,aAAA;QAAcE,SAAA,EAAWA,SAAA;QAAWC,SAAA,EAAWA,SAAA,CAAUI,KAAK,CAAC;kBAC7DN;WAGHA;IAEN;IACAO,SAAA,EAAWL,SAAS,CAAC,EAAE;IACvBD,SAAA,EAAWA;;AAGjB","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export declare const checkDependencies: () => Promise<void>;
2
+ //# sourceMappingURL=checkDependencies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkDependencies.d.ts","sourceRoot":"","sources":["../../../src/layouts/Root/checkDependencies.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,iBAAiB,qBAmC7B,CAAA"}