@payloadcms/next 3.0.0-canary.294ea5c → 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 (615) 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 +16 -18
  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 +18 -17
  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 +16 -27
  18. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  19. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts +1 -1
  20. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  21. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +3 -3
  22. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  23. package/dist/elements/DocumentHeader/index.d.ts +2 -3
  24. package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
  25. package/dist/elements/DocumentHeader/index.js +9 -12
  26. package/dist/elements/DocumentHeader/index.js.map +1 -1
  27. package/dist/elements/DocumentHeader/index.scss +44 -42
  28. package/dist/elements/FormHeader/index.d.ts +9 -0
  29. package/dist/elements/FormHeader/index.d.ts.map +1 -0
  30. package/dist/elements/FormHeader/index.js +20 -0
  31. package/dist/elements/FormHeader/index.js.map +1 -0
  32. package/dist/elements/FormHeader/index.scss +8 -0
  33. package/dist/elements/Logo/index.d.ts.map +1 -1
  34. package/dist/elements/Logo/index.js +5 -6
  35. package/dist/elements/Logo/index.js.map +1 -1
  36. package/dist/elements/Nav/NavWrapper/index.scss +21 -14
  37. package/dist/elements/Nav/getNavPrefs.d.ts +6 -0
  38. package/dist/elements/Nav/getNavPrefs.d.ts.map +1 -0
  39. package/dist/elements/Nav/getNavPrefs.js +26 -0
  40. package/dist/elements/Nav/getNavPrefs.js.map +1 -0
  41. package/dist/elements/Nav/index.client.d.ts +6 -1
  42. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  43. package/dist/elements/Nav/index.client.js +45 -95
  44. package/dist/elements/Nav/index.client.js.map +1 -1
  45. package/dist/elements/Nav/index.d.ts.map +1 -1
  46. package/dist/elements/Nav/index.js +66 -23
  47. package/dist/elements/Nav/index.js.map +1 -1
  48. package/dist/elements/Nav/index.scss +127 -121
  49. package/dist/exports/layouts.d.ts +2 -1
  50. package/dist/exports/layouts.d.ts.map +1 -1
  51. package/dist/exports/layouts.js +2 -1
  52. package/dist/exports/layouts.js.map +1 -1
  53. package/dist/exports/routes.d.ts +1 -1
  54. package/dist/exports/routes.d.ts.map +1 -1
  55. package/dist/exports/routes.js +1 -1
  56. package/dist/exports/routes.js.map +1 -1
  57. package/dist/exports/utilities.d.ts +2 -1
  58. package/dist/exports/utilities.d.ts.map +1 -1
  59. package/dist/exports/utilities.js +3 -1
  60. package/dist/exports/utilities.js.map +1 -1
  61. package/dist/exports/views.d.ts +1 -3
  62. package/dist/exports/views.d.ts.map +1 -1
  63. package/dist/exports/views.js +1 -3
  64. package/dist/exports/views.js.map +1 -1
  65. package/dist/fetchAPI-multipart/fileFactory.d.ts +2 -1
  66. package/dist/fetchAPI-multipart/fileFactory.d.ts.map +1 -1
  67. package/dist/fetchAPI-multipart/fileFactory.js.map +1 -1
  68. package/dist/fetchAPI-multipart/handlers.d.ts +1 -1
  69. package/dist/fetchAPI-multipart/handlers.d.ts.map +1 -1
  70. package/dist/fetchAPI-multipart/handlers.js +3 -1
  71. package/dist/fetchAPI-multipart/handlers.js.map +1 -1
  72. package/dist/fetchAPI-multipart/index.d.ts +1 -101
  73. package/dist/fetchAPI-multipart/index.d.ts.map +1 -1
  74. package/dist/fetchAPI-multipart/index.js +1 -1
  75. package/dist/fetchAPI-multipart/index.js.map +1 -1
  76. package/dist/fetchAPI-multipart/isEligibleRequest.js +1 -1
  77. package/dist/fetchAPI-multipart/isEligibleRequest.js.map +1 -1
  78. package/dist/fetchAPI-multipart/processMultipart.d.ts +2 -1
  79. package/dist/fetchAPI-multipart/processMultipart.d.ts.map +1 -1
  80. package/dist/fetchAPI-multipart/processMultipart.js +9 -10
  81. package/dist/fetchAPI-multipart/processMultipart.js.map +1 -1
  82. package/dist/fetchAPI-multipart/processNested.d.ts.map +1 -1
  83. package/dist/fetchAPI-multipart/processNested.js +8 -4
  84. package/dist/fetchAPI-multipart/processNested.js.map +1 -1
  85. package/dist/fetchAPI-multipart/uploadTimer.d.ts.map +1 -1
  86. package/dist/fetchAPI-multipart/uploadTimer.js +3 -1
  87. package/dist/fetchAPI-multipart/uploadTimer.js.map +1 -1
  88. package/dist/fetchAPI-multipart/utilities.d.ts +1 -1
  89. package/dist/fetchAPI-multipart/utilities.d.ts.map +1 -1
  90. package/dist/fetchAPI-multipart/utilities.js +32 -12
  91. package/dist/fetchAPI-multipart/utilities.js.map +1 -1
  92. package/dist/layouts/Root/NestProviders.d.ts +11 -0
  93. package/dist/layouts/Root/NestProviders.d.ts.map +1 -0
  94. package/dist/layouts/Root/NestProviders.js +21 -0
  95. package/dist/layouts/Root/NestProviders.js.map +1 -0
  96. package/dist/layouts/Root/checkDependencies.d.ts +2 -0
  97. package/dist/layouts/Root/checkDependencies.d.ts.map +1 -0
  98. package/dist/layouts/Root/checkDependencies.js +49 -0
  99. package/dist/layouts/Root/checkDependencies.js.map +1 -0
  100. package/dist/layouts/Root/index.d.ts +4 -3
  101. package/dist/layouts/Root/index.d.ts.map +1 -1
  102. package/dist/layouts/Root/index.js +42 -71
  103. package/dist/layouts/Root/index.js.map +1 -1
  104. package/dist/prod/styles.css +1 -1
  105. package/dist/routes/graphql/handler.d.ts.map +1 -1
  106. package/dist/routes/graphql/handler.js +23 -11
  107. package/dist/routes/graphql/handler.js.map +1 -1
  108. package/dist/routes/rest/auth/login.js +2 -2
  109. package/dist/routes/rest/auth/login.js.map +1 -1
  110. package/dist/routes/rest/auth/logout.d.ts.map +1 -1
  111. package/dist/routes/rest/auth/logout.js +3 -2
  112. package/dist/routes/rest/auth/logout.js.map +1 -1
  113. package/dist/routes/rest/auth/refresh.js +2 -2
  114. package/dist/routes/rest/auth/refresh.js.map +1 -1
  115. package/dist/routes/rest/auth/registerFirstUser.js +2 -2
  116. package/dist/routes/rest/auth/registerFirstUser.js.map +1 -1
  117. package/dist/routes/rest/auth/resetPassword.js +2 -2
  118. package/dist/routes/rest/auth/resetPassword.js.map +1 -1
  119. package/dist/routes/rest/collections/create.d.ts.map +1 -1
  120. package/dist/routes/rest/collections/create.js +5 -1
  121. package/dist/routes/rest/collections/create.js.map +1 -1
  122. package/dist/routes/rest/collections/delete.d.ts.map +1 -1
  123. package/dist/routes/rest/collections/delete.js +8 -0
  124. package/dist/routes/rest/collections/delete.js.map +1 -1
  125. package/dist/routes/rest/collections/deleteByID.d.ts.map +1 -1
  126. package/dist/routes/rest/collections/deleteByID.js +7 -1
  127. package/dist/routes/rest/collections/deleteByID.js.map +1 -1
  128. package/dist/routes/rest/collections/duplicate.d.ts.map +1 -1
  129. package/dist/routes/rest/collections/duplicate.js +5 -1
  130. package/dist/routes/rest/collections/duplicate.js.map +1 -1
  131. package/dist/routes/rest/collections/find.d.ts.map +1 -1
  132. package/dist/routes/rest/collections/find.js +10 -1
  133. package/dist/routes/rest/collections/find.js.map +1 -1
  134. package/dist/routes/rest/collections/findByID.d.ts.map +1 -1
  135. package/dist/routes/rest/collections/findByID.js +7 -1
  136. package/dist/routes/rest/collections/findByID.js.map +1 -1
  137. package/dist/routes/rest/collections/findVersionByID.d.ts.map +1 -1
  138. package/dist/routes/rest/collections/findVersionByID.js +5 -1
  139. package/dist/routes/rest/collections/findVersionByID.js.map +1 -1
  140. package/dist/routes/rest/collections/findVersions.d.ts.map +1 -1
  141. package/dist/routes/rest/collections/findVersions.js +7 -1
  142. package/dist/routes/rest/collections/findVersions.js.map +1 -1
  143. package/dist/routes/rest/collections/restoreVersion.d.ts.map +1 -1
  144. package/dist/routes/rest/collections/restoreVersion.js +2 -0
  145. package/dist/routes/rest/collections/restoreVersion.js.map +1 -1
  146. package/dist/routes/rest/collections/update.d.ts.map +1 -1
  147. package/dist/routes/rest/collections/update.js +10 -0
  148. package/dist/routes/rest/collections/update.js.map +1 -1
  149. package/dist/routes/rest/collections/updateByID.d.ts.map +1 -1
  150. package/dist/routes/rest/collections/updateByID.js +15 -3
  151. package/dist/routes/rest/collections/updateByID.js.map +1 -1
  152. package/dist/routes/rest/files/checkFileAccess.d.ts.map +1 -1
  153. package/dist/routes/rest/files/checkFileAccess.js +7 -2
  154. package/dist/routes/rest/files/checkFileAccess.js.map +1 -1
  155. package/dist/routes/rest/files/getFile.d.ts.map +1 -1
  156. package/dist/routes/rest/files/getFile.js +6 -2
  157. package/dist/routes/rest/files/getFile.js.map +1 -1
  158. package/dist/routes/rest/globals/findOne.d.ts.map +1 -1
  159. package/dist/routes/rest/globals/findOne.js +5 -1
  160. package/dist/routes/rest/globals/findOne.js.map +1 -1
  161. package/dist/routes/rest/globals/findVersionByID.d.ts.map +1 -1
  162. package/dist/routes/rest/globals/findVersionByID.js +5 -1
  163. package/dist/routes/rest/globals/findVersionByID.js.map +1 -1
  164. package/dist/routes/rest/globals/findVersions.d.ts.map +1 -1
  165. package/dist/routes/rest/globals/findVersions.js +7 -1
  166. package/dist/routes/rest/globals/findVersions.js.map +1 -1
  167. package/dist/routes/rest/globals/restoreVersion.d.ts.map +1 -1
  168. package/dist/routes/rest/globals/restoreVersion.js +2 -0
  169. package/dist/routes/rest/globals/restoreVersion.js.map +1 -1
  170. package/dist/routes/rest/globals/update.d.ts.map +1 -1
  171. package/dist/routes/rest/globals/update.js +13 -3
  172. package/dist/routes/rest/globals/update.js.map +1 -1
  173. package/dist/routes/rest/index.d.ts +17 -12
  174. package/dist/routes/rest/index.d.ts.map +1 -1
  175. package/dist/routes/rest/index.js +132 -39
  176. package/dist/routes/rest/index.js.map +1 -1
  177. package/dist/routes/rest/og/image.d.ts +4 -2
  178. package/dist/routes/rest/og/image.d.ts.map +1 -1
  179. package/dist/routes/rest/og/image.js +14 -10
  180. package/dist/routes/rest/og/image.js.map +1 -1
  181. package/dist/routes/rest/og/index.d.ts.map +1 -1
  182. package/dist/routes/rest/og/index.js +7 -12
  183. package/dist/routes/rest/og/index.js.map +1 -1
  184. package/dist/routes/rest/routeError.d.ts +2 -7
  185. package/dist/routes/rest/routeError.d.ts.map +1 -1
  186. package/dist/routes/rest/routeError.js +43 -69
  187. package/dist/routes/rest/routeError.js.map +1 -1
  188. package/dist/routes/rest/utilities/sanitizeCollectionID.d.ts.map +1 -1
  189. package/dist/routes/rest/utilities/sanitizeCollectionID.js +6 -2
  190. package/dist/routes/rest/utilities/sanitizeCollectionID.js.map +1 -1
  191. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts +13 -0
  192. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts.map +1 -0
  193. package/dist/routes/rest/utilities/sanitizeJoinParams.js +21 -0
  194. package/dist/routes/rest/utilities/sanitizeJoinParams.js.map +1 -0
  195. package/dist/routes/rest/utilities/sanitizePopulate.d.ts +3 -0
  196. package/dist/routes/rest/utilities/sanitizePopulate.d.ts.map +1 -0
  197. package/dist/routes/rest/utilities/sanitizePopulate.js +11 -0
  198. package/dist/routes/rest/utilities/sanitizePopulate.js.map +1 -0
  199. package/dist/routes/rest/utilities/sanitizeSelect.d.ts +6 -0
  200. package/dist/routes/rest/utilities/sanitizeSelect.d.ts.map +1 -0
  201. package/dist/routes/rest/utilities/sanitizeSelect.js +17 -0
  202. package/dist/routes/rest/utilities/sanitizeSelect.js.map +1 -0
  203. package/dist/scss/app.scss +166 -162
  204. package/dist/scss/colors.scss +256 -254
  205. package/dist/scss/resets.scss +9 -7
  206. package/dist/scss/toastify.scss +42 -40
  207. package/dist/scss/toasts.scss +105 -103
  208. package/dist/scss/type.scss +80 -79
  209. package/dist/templates/Default/Wrapper/index.scss +37 -36
  210. package/dist/templates/Default/index.d.ts +2 -1
  211. package/dist/templates/Default/index.d.ts.map +1 -1
  212. package/dist/templates/Default/index.js +101 -31
  213. package/dist/templates/Default/index.js.map +1 -1
  214. package/dist/templates/Default/index.scss +62 -50
  215. package/dist/templates/Minimal/index.scss +22 -20
  216. package/dist/utilities/addDataAndFileToRequest.d.ts.map +1 -1
  217. package/dist/utilities/addDataAndFileToRequest.js.map +1 -1
  218. package/dist/utilities/addLocalesToRequest.d.ts.map +1 -1
  219. package/dist/utilities/addLocalesToRequest.js +24 -10
  220. package/dist/utilities/addLocalesToRequest.js.map +1 -1
  221. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  222. package/dist/utilities/createPayloadRequest.js +21 -13
  223. package/dist/utilities/createPayloadRequest.js.map +1 -1
  224. package/dist/utilities/getClientConfig.d.ts +8 -0
  225. package/dist/utilities/getClientConfig.d.ts.map +1 -0
  226. package/dist/utilities/getClientConfig.js +16 -0
  227. package/dist/utilities/getClientConfig.js.map +1 -0
  228. package/dist/utilities/getNextRequestI18n.d.ts.map +1 -1
  229. package/dist/utilities/getNextRequestI18n.js +2 -2
  230. package/dist/utilities/getNextRequestI18n.js.map +1 -1
  231. package/dist/utilities/getPayloadHMR.d.ts +1 -2
  232. package/dist/utilities/getPayloadHMR.d.ts.map +1 -1
  233. package/dist/utilities/getPayloadHMR.js +4 -102
  234. package/dist/utilities/getPayloadHMR.js.map +1 -1
  235. package/dist/utilities/getRequestLocales.d.ts.map +1 -1
  236. package/dist/utilities/getRequestLocales.js +10 -6
  237. package/dist/utilities/getRequestLocales.js.map +1 -1
  238. package/dist/utilities/getRequestTheme.d.ts.map +1 -1
  239. package/dist/utilities/getRequestTheme.js +3 -0
  240. package/dist/utilities/getRequestTheme.js.map +1 -1
  241. package/dist/utilities/handleServerFunctions.d.ts +3 -0
  242. package/dist/utilities/handleServerFunctions.d.ts.map +1 -0
  243. package/dist/utilities/handleServerFunctions.js +35 -0
  244. package/dist/utilities/handleServerFunctions.js.map +1 -0
  245. package/dist/utilities/headersWithCors.d.ts.map +1 -1
  246. package/dist/utilities/headersWithCors.js.map +1 -1
  247. package/dist/utilities/initPage/handleAdminPage.d.ts +13 -11
  248. package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
  249. package/dist/utilities/initPage/handleAdminPage.js +16 -20
  250. package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
  251. package/dist/utilities/initPage/handleAuthRedirect.d.ts +6 -3
  252. package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +1 -1
  253. package/dist/utilities/initPage/handleAuthRedirect.js +23 -34
  254. package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
  255. package/dist/utilities/initPage/index.d.ts +1 -1
  256. package/dist/utilities/initPage/index.d.ts.map +1 -1
  257. package/dist/utilities/initPage/index.js +57 -48
  258. package/dist/utilities/initPage/index.js.map +1 -1
  259. package/dist/utilities/initPage/isCustomAdminView.d.ts +10 -0
  260. package/dist/utilities/initPage/isCustomAdminView.d.ts.map +1 -0
  261. package/dist/utilities/initPage/isCustomAdminView.js +31 -0
  262. package/dist/utilities/initPage/isCustomAdminView.js.map +1 -0
  263. package/dist/utilities/initPage/shared.d.ts +2 -2
  264. package/dist/utilities/initPage/shared.d.ts.map +1 -1
  265. package/dist/utilities/initPage/shared.js +19 -13
  266. package/dist/utilities/initPage/shared.js.map +1 -1
  267. package/dist/utilities/initReq.d.ts +11 -0
  268. package/dist/utilities/initReq.d.ts.map +1 -0
  269. package/dist/utilities/initReq.js +45 -0
  270. package/dist/utilities/initReq.js.map +1 -0
  271. package/dist/utilities/timestamp.d.ts.map +1 -1
  272. package/dist/utilities/timestamp.js +3 -1
  273. package/dist/utilities/timestamp.js.map +1 -1
  274. package/dist/views/API/LocaleSelector/index.js +2 -2
  275. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  276. package/dist/views/API/RenderJSON/index.d.ts +1 -1
  277. package/dist/views/API/RenderJSON/index.d.ts.map +1 -1
  278. package/dist/views/API/RenderJSON/index.js.map +1 -1
  279. package/dist/views/API/RenderJSON/index.scss +68 -66
  280. package/dist/views/API/index.client.d.ts.map +1 -1
  281. package/dist/views/API/index.client.js +16 -16
  282. package/dist/views/API/index.client.js.map +1 -1
  283. package/dist/views/API/index.scss +98 -96
  284. package/dist/views/Account/Settings/index.d.ts +2 -1
  285. package/dist/views/Account/Settings/index.d.ts.map +1 -1
  286. package/dist/views/Account/Settings/index.js +3 -3
  287. package/dist/views/Account/Settings/index.js.map +1 -1
  288. package/dist/views/Account/Settings/index.scss +37 -35
  289. package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
  290. package/dist/views/Account/ToggleTheme/index.js +2 -0
  291. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  292. package/dist/views/Account/index.d.ts.map +1 -1
  293. package/dist/views/Account/index.js +86 -31
  294. package/dist/views/Account/index.js.map +1 -1
  295. package/dist/views/CreateFirstUser/index.client.d.ts +4 -2
  296. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  297. package/dist/views/CreateFirstUser/index.client.js +86 -92
  298. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  299. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  300. package/dist/views/CreateFirstUser/index.js +36 -4
  301. package/dist/views/CreateFirstUser/index.js.map +1 -1
  302. package/dist/views/CreateFirstUser/index.scss +18 -6
  303. package/dist/views/Dashboard/Default/index.d.ts +11 -2
  304. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  305. package/dist/views/Dashboard/Default/index.js +70 -47
  306. package/dist/views/Dashboard/Default/index.js.map +1 -1
  307. package/dist/views/Dashboard/Default/index.scss +53 -46
  308. package/dist/views/Dashboard/index.d.ts.map +1 -1
  309. package/dist/views/Dashboard/index.js +57 -24
  310. package/dist/views/Dashboard/index.js.map +1 -1
  311. package/dist/views/Document/getDocPreferences.d.ts +11 -0
  312. package/dist/views/Document/getDocPreferences.d.ts.map +1 -0
  313. package/dist/views/Document/getDocPreferences.js +44 -0
  314. package/dist/views/Document/getDocPreferences.js.map +1 -0
  315. package/dist/views/Document/getDocumentData.d.ts +10 -8
  316. package/dist/views/Document/getDocumentData.d.ts.map +1 -1
  317. package/dist/views/Document/getDocumentData.js +35 -34
  318. package/dist/views/Document/getDocumentData.js.map +1 -1
  319. package/dist/views/Document/getDocumentPermissions.d.ts +2 -2
  320. package/dist/views/Document/getDocumentPermissions.d.ts.map +1 -1
  321. package/dist/views/Document/getDocumentPermissions.js +14 -8
  322. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  323. package/dist/views/Document/getIsLocked.d.ts +16 -0
  324. package/dist/views/Document/getIsLocked.d.ts.map +1 -0
  325. package/dist/views/Document/getIsLocked.js +55 -0
  326. package/dist/views/Document/getIsLocked.js.map +1 -0
  327. package/dist/views/Document/getMetaBySegment.d.ts +2 -2
  328. package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
  329. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  330. package/dist/views/Document/getVersions.d.ts +19 -0
  331. package/dist/views/Document/getVersions.d.ts.map +1 -0
  332. package/dist/views/Document/getVersions.js +181 -0
  333. package/dist/views/Document/getVersions.js.map +1 -0
  334. package/dist/views/Document/getViewsFromConfig.d.ts +3 -3
  335. package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
  336. package/dist/views/Document/getViewsFromConfig.js +30 -25
  337. package/dist/views/Document/getViewsFromConfig.js.map +1 -1
  338. package/dist/views/Document/handleServerFunction.d.ts +25 -0
  339. package/dist/views/Document/handleServerFunction.d.ts.map +1 -0
  340. package/dist/views/Document/handleServerFunction.js +159 -0
  341. package/dist/views/Document/handleServerFunction.js.map +1 -0
  342. package/dist/views/Document/index.d.ts +5 -1
  343. package/dist/views/Document/index.d.ts.map +1 -1
  344. package/dist/views/Document/index.js +184 -73
  345. package/dist/views/Document/index.js.map +1 -1
  346. package/dist/views/Document/renderDocumentSlots.d.ts +12 -0
  347. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -0
  348. package/dist/views/Document/renderDocumentSlots.js +92 -0
  349. package/dist/views/Document/renderDocumentSlots.js.map +1 -0
  350. package/dist/views/Edit/index.d.ts +3 -2
  351. package/dist/views/Edit/index.d.ts.map +1 -1
  352. package/dist/views/Edit/index.js +7 -3
  353. package/dist/views/Edit/index.js.map +1 -1
  354. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  355. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +17 -12
  356. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  357. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  358. package/dist/views/ForgotPassword/index.js +11 -9
  359. package/dist/views/ForgotPassword/index.js.map +1 -1
  360. package/dist/views/List/handleServerFunction.d.ts +27 -0
  361. package/dist/views/List/handleServerFunction.d.ts.map +1 -0
  362. package/dist/views/List/handleServerFunction.js +158 -0
  363. package/dist/views/List/handleServerFunction.js.map +1 -0
  364. package/dist/views/List/index.d.ts +12 -2
  365. package/dist/views/List/index.d.ts.map +1 -1
  366. package/dist/views/List/index.js +146 -85
  367. package/dist/views/List/index.js.map +1 -1
  368. package/dist/views/List/renderListViewSlots.d.ts +12 -0
  369. package/dist/views/List/renderListViewSlots.d.ts.map +1 -0
  370. package/dist/views/List/renderListViewSlots.js +56 -0
  371. package/dist/views/List/renderListViewSlots.js.map +1 -0
  372. package/dist/views/LivePreview/Context/context.d.ts +1 -1
  373. package/dist/views/LivePreview/Context/context.d.ts.map +1 -1
  374. package/dist/views/LivePreview/Context/context.js.map +1 -1
  375. package/dist/views/LivePreview/Context/index.d.ts.map +1 -1
  376. package/dist/views/LivePreview/Context/index.js +3 -1
  377. package/dist/views/LivePreview/Context/index.js.map +1 -1
  378. package/dist/views/LivePreview/Context/sizeReducer.d.ts +1 -1
  379. package/dist/views/LivePreview/Context/sizeReducer.d.ts.map +1 -1
  380. package/dist/views/LivePreview/Context/sizeReducer.js +4 -4
  381. package/dist/views/LivePreview/Context/sizeReducer.js.map +1 -1
  382. package/dist/views/LivePreview/Device/index.d.ts.map +1 -1
  383. package/dist/views/LivePreview/Device/index.js +5 -1
  384. package/dist/views/LivePreview/Device/index.js.map +1 -1
  385. package/dist/views/LivePreview/IFrame/index.scss +8 -6
  386. package/dist/views/LivePreview/Preview/index.scss +32 -30
  387. package/dist/views/LivePreview/Toolbar/Controls/index.js +1 -1
  388. package/dist/views/LivePreview/Toolbar/Controls/index.js.map +1 -1
  389. package/dist/views/LivePreview/Toolbar/Controls/index.scss +49 -47
  390. package/dist/views/LivePreview/Toolbar/SizeInput/index.d.ts.map +1 -1
  391. package/dist/views/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  392. package/dist/views/LivePreview/Toolbar/SizeInput/index.scss +11 -9
  393. package/dist/views/LivePreview/Toolbar/index.scss +33 -31
  394. package/dist/views/LivePreview/ToolbarArea/index.scss +5 -3
  395. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  396. package/dist/views/LivePreview/index.client.js +234 -210
  397. package/dist/views/LivePreview/index.client.js.map +1 -1
  398. package/dist/views/LivePreview/index.d.ts.map +1 -1
  399. package/dist/views/LivePreview/index.js +5 -36
  400. package/dist/views/LivePreview/index.js.map +1 -1
  401. package/dist/views/LivePreview/index.scss +48 -46
  402. package/dist/views/LivePreview/usePopupWindow.d.ts +1 -1
  403. package/dist/views/LivePreview/usePopupWindow.d.ts.map +1 -1
  404. package/dist/views/LivePreview/usePopupWindow.js +119 -74
  405. package/dist/views/LivePreview/usePopupWindow.js.map +1 -1
  406. package/dist/views/Login/LoginField/index.d.ts.map +1 -1
  407. package/dist/views/Login/LoginField/index.js +6 -1
  408. package/dist/views/Login/LoginField/index.js.map +1 -1
  409. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  410. package/dist/views/Login/LoginForm/index.js +31 -13
  411. package/dist/views/Login/LoginForm/index.js.map +1 -1
  412. package/dist/views/Login/LoginForm/index.scss +8 -6
  413. package/dist/views/Login/index.d.ts.map +1 -1
  414. package/dist/views/Login/index.js +26 -20
  415. package/dist/views/Login/index.js.map +1 -1
  416. package/dist/views/Login/index.scss +8 -6
  417. package/dist/views/Logout/LogoutClient.d.ts +1 -0
  418. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  419. package/dist/views/Logout/LogoutClient.js +82 -57
  420. package/dist/views/Logout/LogoutClient.js.map +1 -1
  421. package/dist/views/Logout/index.d.ts.map +1 -1
  422. package/dist/views/Logout/index.js +1 -1
  423. package/dist/views/Logout/index.js.map +1 -1
  424. package/dist/views/Logout/index.scss +19 -14
  425. package/dist/views/NotFound/index.client.d.ts.map +1 -1
  426. package/dist/views/NotFound/index.client.js +8 -5
  427. package/dist/views/NotFound/index.client.js.map +1 -1
  428. package/dist/views/NotFound/index.d.ts +5 -5
  429. package/dist/views/NotFound/index.d.ts.map +1 -1
  430. package/dist/views/NotFound/index.js +7 -2
  431. package/dist/views/NotFound/index.js.map +1 -1
  432. package/dist/views/NotFound/index.scss +41 -21
  433. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts +7 -0
  434. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts.map +1 -0
  435. package/dist/views/ResetPassword/{index.client.js → ResetPasswordForm/index.js} +26 -25
  436. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -0
  437. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  438. package/dist/views/ResetPassword/index.js +48 -45
  439. package/dist/views/ResetPassword/index.js.map +1 -1
  440. package/dist/views/ResetPassword/index.scss +9 -3
  441. package/dist/views/Root/getViewFromConfig.d.ts +3 -1
  442. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
  443. package/dist/views/Root/getViewFromConfig.js +131 -16
  444. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  445. package/dist/views/Root/index.d.ts +5 -5
  446. package/dist/views/Root/index.d.ts.map +1 -1
  447. package/dist/views/Root/index.js +44 -19
  448. package/dist/views/Root/index.js.map +1 -1
  449. package/dist/views/Root/isPathMatchingRoute.d.ts.map +1 -1
  450. package/dist/views/Root/isPathMatchingRoute.js +6 -2
  451. package/dist/views/Root/isPathMatchingRoute.js.map +1 -1
  452. package/dist/views/Root/meta.d.ts +5 -5
  453. package/dist/views/Root/meta.d.ts.map +1 -1
  454. package/dist/views/Root/meta.js +3 -2
  455. package/dist/views/Root/meta.js.map +1 -1
  456. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  457. package/dist/views/Unauthorized/index.js +15 -8
  458. package/dist/views/Unauthorized/index.js.map +1 -1
  459. package/dist/views/Unauthorized/index.scss +4 -31
  460. package/dist/views/Verify/index.client.d.ts +7 -0
  461. package/dist/views/Verify/index.client.d.ts.map +1 -0
  462. package/dist/views/Verify/index.client.js +46 -0
  463. package/dist/views/Verify/index.client.js.map +1 -0
  464. package/dist/views/Verify/index.d.ts.map +1 -1
  465. package/dist/views/Verify/index.js +13 -11
  466. package/dist/views/Verify/index.js.map +1 -1
  467. package/dist/views/Verify/index.scss +13 -11
  468. package/dist/views/Version/Default/index.d.ts.map +1 -1
  469. package/dist/views/Version/Default/index.js +5 -5
  470. package/dist/views/Version/Default/index.js.map +1 -1
  471. package/dist/views/Version/Default/index.scss +52 -50
  472. package/dist/views/Version/Default/types.d.ts +2 -2
  473. package/dist/views/Version/Default/types.d.ts.map +1 -1
  474. package/dist/views/Version/Default/types.js.map +1 -1
  475. package/dist/views/Version/RenderFieldsToDiff/Label/index.scss +5 -3
  476. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -1
  477. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +4 -2
  478. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  479. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +29 -27
  480. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js +1 -1
  481. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js.map +1 -1
  482. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.scss +11 -9
  483. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +12 -10
  484. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
  485. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +3 -1
  486. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  487. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +12 -10
  488. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -1
  489. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +9 -3
  490. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  491. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +12 -10
  492. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts +4 -2
  493. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts.map +1 -1
  494. package/dist/views/Version/RenderFieldsToDiff/fields/types.js.map +1 -1
  495. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  496. package/dist/views/Version/RenderFieldsToDiff/index.js +10 -6
  497. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  498. package/dist/views/Version/RenderFieldsToDiff/index.scss +12 -10
  499. package/dist/views/Version/RenderFieldsToDiff/types.d.ts +4 -2
  500. package/dist/views/Version/RenderFieldsToDiff/types.d.ts.map +1 -1
  501. package/dist/views/Version/RenderFieldsToDiff/types.js.map +1 -1
  502. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  503. package/dist/views/Version/Restore/index.js +32 -30
  504. package/dist/views/Version/Restore/index.js.map +1 -1
  505. package/dist/views/Version/Restore/index.scss +60 -42
  506. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  507. package/dist/views/Version/SelectComparison/index.js +27 -4
  508. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  509. package/dist/views/Version/SelectComparison/index.scss +12 -10
  510. package/dist/views/Version/SelectComparison/types.d.ts +1 -0
  511. package/dist/views/Version/SelectComparison/types.d.ts.map +1 -1
  512. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  513. package/dist/views/Version/SelectLocales/index.d.ts.map +1 -1
  514. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  515. package/dist/views/Version/SelectLocales/index.scss +6 -4
  516. package/dist/views/Version/index.d.ts.map +1 -1
  517. package/dist/views/Version/index.js +2 -0
  518. package/dist/views/Version/index.js.map +1 -1
  519. package/dist/views/Versions/buildColumns.d.ts +3 -2
  520. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  521. package/dist/views/Versions/buildColumns.js +47 -60
  522. package/dist/views/Versions/buildColumns.js.map +1 -1
  523. package/dist/views/Versions/cells/AutosaveCell/index.d.ts +7 -0
  524. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
  525. package/dist/views/Versions/cells/AutosaveCell/index.js +66 -27
  526. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  527. package/dist/views/Versions/cells/CreatedAt/index.d.ts +4 -0
  528. package/dist/views/Versions/cells/CreatedAt/index.d.ts.map +1 -1
  529. package/dist/views/Versions/cells/CreatedAt/index.js +43 -44
  530. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  531. package/dist/views/Versions/cells/ID/index.d.ts +3 -1
  532. package/dist/views/Versions/cells/ID/index.d.ts.map +1 -1
  533. package/dist/views/Versions/cells/ID/index.js +7 -19
  534. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  535. package/dist/views/Versions/getLatestVersion.d.ts +1 -0
  536. package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
  537. package/dist/views/Versions/getLatestVersion.js +15 -4
  538. package/dist/views/Versions/getLatestVersion.js.map +1 -1
  539. package/dist/views/Versions/index.client.d.ts.map +1 -1
  540. package/dist/views/Versions/index.client.js +53 -51
  541. package/dist/views/Versions/index.client.js.map +1 -1
  542. package/dist/views/Versions/index.d.ts.map +1 -1
  543. package/dist/views/Versions/index.js +35 -13
  544. package/dist/views/Versions/index.js.map +1 -1
  545. package/dist/views/Versions/index.scss +78 -76
  546. package/dist/withPayload.d.ts.map +1 -1
  547. package/dist/withPayload.js +23 -5
  548. package/dist/withPayload.js.map +1 -1
  549. package/license.md +22 -0
  550. package/package.json +37 -22
  551. package/dist/cjs/withPayload.js +0 -111
  552. package/dist/cjs/withPayload.js.map +0 -1
  553. package/dist/elements/EmailAndUsername/index.d.ts +0 -14
  554. package/dist/elements/EmailAndUsername/index.d.ts.map +0 -1
  555. package/dist/elements/EmailAndUsername/index.js +0 -121
  556. package/dist/elements/EmailAndUsername/index.js.map +0 -1
  557. package/dist/elements/LeaveWithoutSaving/index.d.ts +0 -4
  558. package/dist/elements/LeaveWithoutSaving/index.d.ts.map +0 -1
  559. package/dist/elements/LeaveWithoutSaving/index.js +0 -162
  560. package/dist/elements/LeaveWithoutSaving/index.js.map +0 -1
  561. package/dist/elements/LeaveWithoutSaving/index.scss +0 -37
  562. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts +0 -9
  563. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +0 -1
  564. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +0 -134
  565. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +0 -1
  566. package/dist/routes/rest/buildFormState.d.ts +0 -5
  567. package/dist/routes/rest/buildFormState.d.ts.map +0 -1
  568. package/dist/routes/rest/buildFormState.js +0 -46
  569. package/dist/routes/rest/buildFormState.js.map +0 -1
  570. package/dist/views/Edit/Default/Auth/APIKey.d.ts +0 -6
  571. package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +0 -1
  572. package/dist/views/Edit/Default/Auth/APIKey.js +0 -131
  573. package/dist/views/Edit/Default/Auth/APIKey.js.map +0 -1
  574. package/dist/views/Edit/Default/Auth/index.d.ts +0 -5
  575. package/dist/views/Edit/Default/Auth/index.d.ts.map +0 -1
  576. package/dist/views/Edit/Default/Auth/index.js +0 -307
  577. package/dist/views/Edit/Default/Auth/index.js.map +0 -1
  578. package/dist/views/Edit/Default/Auth/index.scss +0 -76
  579. package/dist/views/Edit/Default/Auth/types.d.ts +0 -17
  580. package/dist/views/Edit/Default/Auth/types.d.ts.map +0 -1
  581. package/dist/views/Edit/Default/Auth/types.js +0 -2
  582. package/dist/views/Edit/Default/Auth/types.js.map +0 -1
  583. package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts +0 -11
  584. package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts.map +0 -1
  585. package/dist/views/Edit/Default/SetDocumentStepNav/index.js +0 -130
  586. package/dist/views/Edit/Default/SetDocumentStepNav/index.js.map +0 -1
  587. package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts +0 -8
  588. package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts.map +0 -1
  589. package/dist/views/Edit/Default/SetDocumentTitle/index.js +0 -81
  590. package/dist/views/Edit/Default/SetDocumentTitle/index.js.map +0 -1
  591. package/dist/views/Edit/Default/index.d.ts +0 -4
  592. package/dist/views/Edit/Default/index.d.ts.map +0 -1
  593. package/dist/views/Edit/Default/index.js +0 -212
  594. package/dist/views/Edit/Default/index.js.map +0 -1
  595. package/dist/views/Edit/Default/index.scss +0 -21
  596. package/dist/views/Edit/Default/types.d.ts +0 -6
  597. package/dist/views/Edit/Default/types.d.ts.map +0 -1
  598. package/dist/views/Edit/Default/types.js +0 -2
  599. package/dist/views/Edit/Default/types.js.map +0 -1
  600. package/dist/views/Edit/index.client.d.ts +0 -3
  601. package/dist/views/Edit/index.client.d.ts.map +0 -1
  602. package/dist/views/Edit/index.client.js +0 -54
  603. package/dist/views/Edit/index.client.js.map +0 -1
  604. package/dist/views/List/Default/index.d.ts +0 -4
  605. package/dist/views/List/Default/index.d.ts.map +0 -1
  606. package/dist/views/List/Default/index.js +0 -363
  607. package/dist/views/List/Default/index.js.map +0 -1
  608. package/dist/views/List/Default/index.scss +0 -177
  609. package/dist/views/List/Default/types.d.ts +0 -15
  610. package/dist/views/List/Default/types.d.ts.map +0 -1
  611. package/dist/views/List/Default/types.js +0 -2
  612. package/dist/views/List/Default/types.js.map +0 -1
  613. package/dist/views/ResetPassword/index.client.d.ts +0 -7
  614. package/dist/views/ResetPassword/index.client.d.ts.map +0 -1
  615. package/dist/views/ResetPassword/index.client.js.map +0 -1
@@ -1,9 +1,11 @@
1
- import type { MappedComponent } from 'payload';
1
+ import type { ImportMap, PayloadComponent } from 'payload';
2
2
  import React from 'react';
3
3
  export declare const OGImage: React.FC<{
4
- Icon: MappedComponent;
5
4
  description?: string;
5
+ Fallback: React.ComponentType;
6
6
  fontFamily?: string;
7
+ Icon: PayloadComponent;
8
+ importMap: ImportMap;
7
9
  leader?: string;
8
10
  title?: string;
9
11
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/og/image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAG9C,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;IAC7B,IAAI,EAAE,eAAe,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAqFA,CAAA"}
1
+ {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/og/image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAG1D,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAA;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,gBAAgB,CAAA;IACtB,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CA+FA,CAAA"}
@@ -1,10 +1,12 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { RenderComponent } from '@payloadcms/ui/shared';
2
+ import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
3
3
  import React from 'react';
4
4
  export const OGImage = ({
5
- Icon,
6
5
  description,
6
+ Fallback,
7
7
  fontFamily = 'Arial, sans-serif',
8
+ Icon,
9
+ importMap,
8
10
  leader,
9
11
  title
10
12
  }) => {
@@ -36,27 +38,27 @@ export const OGImage = ({
36
38
  children: leader
37
39
  }), /*#__PURE__*/_jsx("p", {
38
40
  style: {
39
- WebkitBoxOrient: 'vertical',
40
- WebkitLineClamp: 2,
41
41
  display: '-webkit-box',
42
42
  fontSize: 90,
43
43
  lineHeight: 1,
44
44
  marginBottom: 0,
45
45
  marginTop: 0,
46
- textOverflow: 'ellipsis'
46
+ textOverflow: 'ellipsis',
47
+ WebkitBoxOrient: 'vertical',
48
+ WebkitLineClamp: 2
47
49
  },
48
50
  children: title
49
51
  }), description && /*#__PURE__*/_jsx("p", {
50
52
  style: {
51
- WebkitBoxOrient: 'vertical',
52
- WebkitLineClamp: 2,
53
53
  display: '-webkit-box',
54
54
  flexGrow: 1,
55
55
  fontSize: 30,
56
56
  lineHeight: 1,
57
57
  marginBottom: 0,
58
58
  marginTop: 40,
59
- textOverflow: 'ellipsis'
59
+ textOverflow: 'ellipsis',
60
+ WebkitBoxOrient: 'vertical',
61
+ WebkitLineClamp: 2
60
62
  },
61
63
  children: description
62
64
  })]
@@ -69,11 +71,13 @@ export const OGImage = ({
69
71
  justifyContent: 'center',
70
72
  width: '38px'
71
73
  },
72
- children: /*#__PURE__*/_jsx(RenderComponent, {
74
+ children: /*#__PURE__*/_jsx(RenderServerComponent, {
73
75
  clientProps: {
74
76
  fill: 'white'
75
77
  },
76
- mappedComponent: Icon
78
+ Component: Icon,
79
+ Fallback: Fallback,
80
+ importMap: importMap
77
81
  })
78
82
  })]
79
83
  });
@@ -1 +1 @@
1
- {"version":3,"file":"image.js","names":["RenderComponent","React","OGImage","Icon","description","fontFamily","leader","title","_jsxs","style","backgroundColor","color","display","flexDirection","height","justifyContent","padding","width","flexGrow","fontSize","_jsx","marginBottom","WebkitBoxOrient","WebkitLineClamp","lineHeight","marginTop","textOverflow","alignItems","flexShrink","clientProps","fill","mappedComponent"],"sources":["../../../../src/routes/rest/og/image.tsx"],"sourcesContent":["import type { MappedComponent } from 'payload'\n\nimport { RenderComponent } from '@payloadcms/ui/shared'\nimport React from 'react'\n\nexport const OGImage: React.FC<{\n Icon: MappedComponent\n description?: string\n fontFamily?: string\n leader?: string\n title?: string\n}> = ({ Icon, description, fontFamily = 'Arial, sans-serif', leader, title }) => {\n return (\n <div\n style={{\n backgroundColor: '#000',\n color: '#fff',\n display: 'flex',\n flexDirection: 'column',\n fontFamily,\n height: '100%',\n justifyContent: 'space-between',\n padding: '100px',\n width: '100%',\n }}\n >\n <div\n style={{\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n fontSize: 50,\n height: '100%',\n }}\n >\n {leader && (\n <div\n style={{\n fontSize: 30,\n marginBottom: 10,\n }}\n >\n {leader}\n </div>\n )}\n <p\n style={{\n WebkitBoxOrient: 'vertical',\n WebkitLineClamp: 2,\n display: '-webkit-box',\n fontSize: 90,\n lineHeight: 1,\n marginBottom: 0,\n marginTop: 0,\n textOverflow: 'ellipsis',\n }}\n >\n {title}\n </p>\n {description && (\n <p\n style={{\n WebkitBoxOrient: 'vertical',\n WebkitLineClamp: 2,\n display: '-webkit-box',\n flexGrow: 1,\n fontSize: 30,\n lineHeight: 1,\n marginBottom: 0,\n marginTop: 40,\n textOverflow: 'ellipsis',\n }}\n >\n {description}\n </p>\n )}\n </div>\n <div\n style={{\n alignItems: 'flex-end',\n display: 'flex',\n flexShrink: 0,\n height: '38px',\n justifyContent: 'center',\n width: '38px',\n }}\n >\n <RenderComponent\n clientProps={{\n fill: 'white',\n }}\n mappedComponent={Icon}\n />\n </div>\n </div>\n )\n}\n"],"mappings":";AAEA,SAASA,eAAe,QAAQ;AAChC,OAAOC,KAAA,MAAW;AAElB,OAAO,MAAMC,OAAA,GAMRA,CAAC;EAAEC,IAAI;EAAEC,WAAW;EAAEC,UAAA,GAAa,mBAAmB;EAAEC,MAAM;EAAEC;AAAK,CAAE;EAC1E,oBACEC,KAAA,CAAC;IACCC,KAAA,EAAO;MACLC,eAAA,EAAiB;MACjBC,KAAA,EAAO;MACPC,OAAA,EAAS;MACTC,aAAA,EAAe;MACfR,UAAA;MACAS,MAAA,EAAQ;MACRC,cAAA,EAAgB;MAChBC,OAAA,EAAS;MACTC,KAAA,EAAO;IACT;4BAEAT,KAAA,CAAC;MACCC,KAAA,EAAO;QACLG,OAAA,EAAS;QACTC,aAAA,EAAe;QACfK,QAAA,EAAU;QACVC,QAAA,EAAU;QACVL,MAAA,EAAQ;MACV;iBAECR,MAAA,iBACCc,IAAA,CAAC;QACCX,KAAA,EAAO;UACLU,QAAA,EAAU;UACVE,YAAA,EAAc;QAChB;kBAECf;uBAGLc,IAAA,CAAC;QACCX,KAAA,EAAO;UACLa,eAAA,EAAiB;UACjBC,eAAA,EAAiB;UACjBX,OAAA,EAAS;UACTO,QAAA,EAAU;UACVK,UAAA,EAAY;UACZH,YAAA,EAAc;UACdI,SAAA,EAAW;UACXC,YAAA,EAAc;QAChB;kBAECnB;UAEFH,WAAA,iBACCgB,IAAA,CAAC;QACCX,KAAA,EAAO;UACLa,eAAA,EAAiB;UACjBC,eAAA,EAAiB;UACjBX,OAAA,EAAS;UACTM,QAAA,EAAU;UACVC,QAAA,EAAU;UACVK,UAAA,EAAY;UACZH,YAAA,EAAc;UACdI,SAAA,EAAW;UACXC,YAAA,EAAc;QAChB;kBAECtB;;qBAIPgB,IAAA,CAAC;MACCX,KAAA,EAAO;QACLkB,UAAA,EAAY;QACZf,OAAA,EAAS;QACTgB,UAAA,EAAY;QACZd,MAAA,EAAQ;QACRC,cAAA,EAAgB;QAChBE,KAAA,EAAO;MACT;gBAEA,aAAAG,IAAA,CAACpB,eAAA;QACC6B,WAAA,EAAa;UACXC,IAAA,EAAM;QACR;QACAC,eAAA,EAAiB5B;;;;AAK3B","ignoreList":[]}
1
+ {"version":3,"file":"image.js","names":["RenderServerComponent","React","OGImage","description","Fallback","fontFamily","Icon","importMap","leader","title","_jsxs","style","backgroundColor","color","display","flexDirection","height","justifyContent","padding","width","flexGrow","fontSize","_jsx","marginBottom","lineHeight","marginTop","textOverflow","WebkitBoxOrient","WebkitLineClamp","alignItems","flexShrink","clientProps","fill","Component"],"sources":["../../../../src/routes/rest/og/image.tsx"],"sourcesContent":["import type { ImportMap, PayloadComponent } from 'payload'\n\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport React from 'react'\n\nexport const OGImage: React.FC<{\n description?: string\n Fallback: React.ComponentType\n fontFamily?: string\n Icon: PayloadComponent\n importMap: ImportMap\n leader?: string\n title?: string\n}> = ({\n description,\n Fallback,\n fontFamily = 'Arial, sans-serif',\n Icon,\n importMap,\n leader,\n title,\n}) => {\n return (\n <div\n style={{\n backgroundColor: '#000',\n color: '#fff',\n display: 'flex',\n flexDirection: 'column',\n fontFamily,\n height: '100%',\n justifyContent: 'space-between',\n padding: '100px',\n width: '100%',\n }}\n >\n <div\n style={{\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n fontSize: 50,\n height: '100%',\n }}\n >\n {leader && (\n <div\n style={{\n fontSize: 30,\n marginBottom: 10,\n }}\n >\n {leader}\n </div>\n )}\n <p\n style={{\n display: '-webkit-box',\n fontSize: 90,\n lineHeight: 1,\n marginBottom: 0,\n marginTop: 0,\n textOverflow: 'ellipsis',\n WebkitBoxOrient: 'vertical',\n WebkitLineClamp: 2,\n }}\n >\n {title}\n </p>\n {description && (\n <p\n style={{\n display: '-webkit-box',\n flexGrow: 1,\n fontSize: 30,\n lineHeight: 1,\n marginBottom: 0,\n marginTop: 40,\n textOverflow: 'ellipsis',\n WebkitBoxOrient: 'vertical',\n WebkitLineClamp: 2,\n }}\n >\n {description}\n </p>\n )}\n </div>\n <div\n style={{\n alignItems: 'flex-end',\n display: 'flex',\n flexShrink: 0,\n height: '38px',\n justifyContent: 'center',\n width: '38px',\n }}\n >\n <RenderServerComponent\n clientProps={{\n fill: 'white',\n }}\n Component={Icon}\n Fallback={Fallback}\n importMap={importMap}\n />\n </div>\n </div>\n )\n}\n"],"mappings":";AAEA,SAASA,qBAAqB,QAAQ;AACtC,OAAOC,KAAA,MAAW;AAElB,OAAO,MAAMC,OAAA,GAQRA,CAAC;EACJC,WAAW;EACXC,QAAQ;EACRC,UAAA,GAAa,mBAAmB;EAChCC,IAAI;EACJC,SAAS;EACTC,MAAM;EACNC;AAAK,CACN;EACC,oBACEC,KAAA,CAAC;IACCC,KAAA,EAAO;MACLC,eAAA,EAAiB;MACjBC,KAAA,EAAO;MACPC,OAAA,EAAS;MACTC,aAAA,EAAe;MACfV,UAAA;MACAW,MAAA,EAAQ;MACRC,cAAA,EAAgB;MAChBC,OAAA,EAAS;MACTC,KAAA,EAAO;IACT;4BAEAT,KAAA,CAAC;MACCC,KAAA,EAAO;QACLG,OAAA,EAAS;QACTC,aAAA,EAAe;QACfK,QAAA,EAAU;QACVC,QAAA,EAAU;QACVL,MAAA,EAAQ;MACV;iBAECR,MAAA,iBACCc,IAAA,CAAC;QACCX,KAAA,EAAO;UACLU,QAAA,EAAU;UACVE,YAAA,EAAc;QAChB;kBAECf;uBAGLc,IAAA,CAAC;QACCX,KAAA,EAAO;UACLG,OAAA,EAAS;UACTO,QAAA,EAAU;UACVG,UAAA,EAAY;UACZD,YAAA,EAAc;UACdE,SAAA,EAAW;UACXC,YAAA,EAAc;UACdC,eAAA,EAAiB;UACjBC,eAAA,EAAiB;QACnB;kBAECnB;UAEFN,WAAA,iBACCmB,IAAA,CAAC;QACCX,KAAA,EAAO;UACLG,OAAA,EAAS;UACTM,QAAA,EAAU;UACVC,QAAA,EAAU;UACVG,UAAA,EAAY;UACZD,YAAA,EAAc;UACdE,SAAA,EAAW;UACXC,YAAA,EAAc;UACdC,eAAA,EAAiB;UACjBC,eAAA,EAAiB;QACnB;kBAECzB;;qBAIPmB,IAAA,CAAC;MACCX,KAAA,EAAO;QACLkB,UAAA,EAAY;QACZf,OAAA,EAAS;QACTgB,UAAA,EAAY;QACZd,MAAA,EAAQ;QACRC,cAAA,EAAgB;QAChBE,KAAA,EAAO;MACT;gBAEA,aAAAG,IAAA,CAACtB,qBAAA;QACC+B,WAAA,EAAa;UACXC,IAAA,EAAM;QACR;QACAC,SAAA,EAAW3B,IAAA;QACXF,QAAA,EAAUA,QAAA;QACVG,SAAA,EAAWA;;;;AAKrB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/og/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAI7C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAU7C,eAAO,MAAM,OAAO,WAAW,CAAA;AAE/B,eAAO,MAAM,WAAW,cAAc,CAAA;AAEtC,eAAO,MAAM,eAAe,YAAmB;IAAE,GAAG,EAAE,cAAc,CAAA;CAAE;;mBAwErE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/og/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAI7C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAU7C,eAAO,MAAM,OAAO,WAAW,CAAA;AAE/B,eAAO,MAAM,WAAW,cAAc,CAAA;AAEtC,eAAO,MAAM,eAAe,YAAmB;IAAE,GAAG,EAAE,cAAc,CAAA;CAAE;;mBA8DrE,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { PayloadIcon, getCreateMappedComponent } from '@payloadcms/ui/shared';
2
+ import { PayloadIcon } from '@payloadcms/ui/shared';
3
3
  import fs from 'fs/promises';
4
4
  import { ImageResponse } from 'next/og.js';
5
5
  import { NextResponse } from 'next/server.js';
@@ -31,11 +31,6 @@ export const generateOGImage = async ({
31
31
  const hasLeader = searchParams.has('leader');
32
32
  const leader = hasLeader ? searchParams.get('leader')?.slice(0, 100).replace('-', ' ') : '';
33
33
  const description = searchParams.has('description') ? searchParams.get('description') : '';
34
- const createMappedComponent = getCreateMappedComponent({
35
- importMap: req.payload.importMap,
36
- serverProps: {}
37
- });
38
- const mappedIcon = createMappedComponent(config.admin?.components?.graphics?.Icon, undefined, PayloadIcon, 'config.admin.components.graphics.Icon');
39
34
  let fontData;
40
35
  try {
41
36
  // TODO: replace with `.woff2` file when supported
@@ -43,14 +38,15 @@ export const generateOGImage = async ({
43
38
  // Or better yet, use a CDN like Google Fonts if ever supported
44
39
  fontData = fs.readFile(path.join(dirname, 'roboto-regular.woff'));
45
40
  } catch (e) {
46
- console.error(`Error reading font file or not readable: ${e.message}`) // eslint-disable-line no-console
47
- ;
41
+ req.payload.logger.error(`Error reading font file or not readable: ${e.message}`);
48
42
  }
49
43
  const fontFamily = 'Roboto, sans-serif';
50
- return new ImageResponse( /*#__PURE__*/_jsx(OGImage, {
51
- Icon: mappedIcon,
44
+ return new ImageResponse(/*#__PURE__*/_jsx(OGImage, {
52
45
  description: description,
46
+ Fallback: PayloadIcon,
53
47
  fontFamily: fontFamily,
48
+ Icon: config.admin?.components?.graphics?.Icon,
49
+ importMap: req.payload.importMap,
54
50
  leader: leader,
55
51
  title: title
56
52
  }), {
@@ -66,8 +62,7 @@ export const generateOGImage = async ({
66
62
  width: 1200
67
63
  });
68
64
  } catch (e) {
69
- console.error(`${e.message}`) // eslint-disable-line no-console
70
- ;
65
+ req.payload.logger.error(`Error generating Open Graph image: ${e.message}`);
71
66
  return NextResponse.json({
72
67
  error: `Internal Server Error: ${e.message}`
73
68
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["PayloadIcon","getCreateMappedComponent","fs","ImageResponse","NextResponse","path","React","fileURLToPath","OGImage","filename","import","meta","url","dirname","runtime","contentType","generateOGImage","req","config","payload","admin","defaultOGImageType","json","error","status","searchParams","URL","hasTitle","has","title","get","slice","hasLeader","leader","replace","description","createMappedComponent","importMap","serverProps","mappedIcon","components","graphics","Icon","undefined","fontData","readFile","join","e","console","message","fontFamily","_jsx","fonts","name","data","style","weight","height","width"],"sources":["../../../../src/routes/rest/og/index.tsx"],"sourcesContent":["import type { PayloadRequest } from 'payload'\n\nimport { PayloadIcon, getCreateMappedComponent } from '@payloadcms/ui/shared'\nimport fs from 'fs/promises'\nimport { ImageResponse } from 'next/og.js'\nimport { NextResponse } from 'next/server.js'\nimport path from 'path'\nimport React from 'react'\nimport { fileURLToPath } from 'url'\n\nimport { OGImage } from './image.js'\n\nconst filename = fileURLToPath(import.meta.url)\nconst dirname = path.dirname(filename)\n\nexport const runtime = 'nodejs'\n\nexport const contentType = 'image/png'\n\nexport const generateOGImage = async ({ req }: { req: PayloadRequest }) => {\n const config = req.payload.config\n\n if (config.admin.meta.defaultOGImageType === 'off') {\n return NextResponse.json({ error: `Open Graph images are disabled` }, { status: 400 })\n }\n\n try {\n const { searchParams } = new URL(req.url)\n\n const hasTitle = searchParams.has('title')\n const title = hasTitle ? searchParams.get('title')?.slice(0, 100) : ''\n const hasLeader = searchParams.has('leader')\n const leader = hasLeader ? searchParams.get('leader')?.slice(0, 100).replace('-', ' ') : ''\n const description = searchParams.has('description') ? searchParams.get('description') : ''\n\n const createMappedComponent = getCreateMappedComponent({\n importMap: req.payload.importMap,\n serverProps: {},\n })\n\n const mappedIcon = createMappedComponent(\n config.admin?.components?.graphics?.Icon,\n undefined,\n PayloadIcon,\n 'config.admin.components.graphics.Icon',\n )\n\n let fontData\n\n try {\n // TODO: replace with `.woff2` file when supported\n // See https://github.com/vercel/next.js/issues/63935\n // Or better yet, use a CDN like Google Fonts if ever supported\n fontData = fs.readFile(path.join(dirname, 'roboto-regular.woff'))\n } catch (e) {\n console.error(`Error reading font file or not readable: ${e.message}`) // eslint-disable-line no-console\n }\n\n const fontFamily = 'Roboto, sans-serif'\n\n return new ImageResponse(\n (\n <OGImage\n Icon={mappedIcon}\n description={description}\n fontFamily={fontFamily}\n leader={leader}\n title={title}\n />\n ),\n {\n ...(fontData\n ? {\n fonts: [\n {\n name: 'Roboto',\n data: await fontData,\n style: 'normal',\n weight: 400,\n },\n ],\n }\n : {}),\n height: 630,\n width: 1200,\n },\n )\n } catch (e: any) {\n console.error(`${e.message}`) // eslint-disable-line no-console\n return NextResponse.json({ error: `Internal Server Error: ${e.message}` }, { status: 500 })\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["PayloadIcon","fs","ImageResponse","NextResponse","path","React","fileURLToPath","OGImage","filename","import","meta","url","dirname","runtime","contentType","generateOGImage","req","config","payload","admin","defaultOGImageType","json","error","status","searchParams","URL","hasTitle","has","title","get","slice","hasLeader","leader","replace","description","fontData","readFile","join","e","logger","message","fontFamily","_jsx","Fallback","Icon","components","graphics","importMap","fonts","name","data","style","weight","height","width"],"sources":["../../../../src/routes/rest/og/index.tsx"],"sourcesContent":["import type { PayloadRequest } from 'payload'\n\nimport { PayloadIcon } from '@payloadcms/ui/shared'\nimport fs from 'fs/promises'\nimport { ImageResponse } from 'next/og.js'\nimport { NextResponse } from 'next/server.js'\nimport path from 'path'\nimport React from 'react'\nimport { fileURLToPath } from 'url'\n\nimport { OGImage } from './image.js'\n\nconst filename = fileURLToPath(import.meta.url)\nconst dirname = path.dirname(filename)\n\nexport const runtime = 'nodejs'\n\nexport const contentType = 'image/png'\n\nexport const generateOGImage = async ({ req }: { req: PayloadRequest }) => {\n const config = req.payload.config\n\n if (config.admin.meta.defaultOGImageType === 'off') {\n return NextResponse.json({ error: `Open Graph images are disabled` }, { status: 400 })\n }\n\n try {\n const { searchParams } = new URL(req.url)\n\n const hasTitle = searchParams.has('title')\n const title = hasTitle ? searchParams.get('title')?.slice(0, 100) : ''\n const hasLeader = searchParams.has('leader')\n const leader = hasLeader ? searchParams.get('leader')?.slice(0, 100).replace('-', ' ') : ''\n const description = searchParams.has('description') ? searchParams.get('description') : ''\n\n let fontData\n\n try {\n // TODO: replace with `.woff2` file when supported\n // See https://github.com/vercel/next.js/issues/63935\n // Or better yet, use a CDN like Google Fonts if ever supported\n fontData = fs.readFile(path.join(dirname, 'roboto-regular.woff'))\n } catch (e) {\n req.payload.logger.error(`Error reading font file or not readable: ${e.message}`)\n }\n\n const fontFamily = 'Roboto, sans-serif'\n\n return new ImageResponse(\n (\n <OGImage\n description={description}\n Fallback={PayloadIcon}\n fontFamily={fontFamily}\n Icon={config.admin?.components?.graphics?.Icon}\n importMap={req.payload.importMap}\n leader={leader}\n title={title}\n />\n ),\n {\n ...(fontData\n ? {\n fonts: [\n {\n name: 'Roboto',\n data: await fontData,\n style: 'normal',\n weight: 400,\n },\n ],\n }\n : {}),\n height: 630,\n width: 1200,\n },\n )\n } catch (e: any) {\n req.payload.logger.error(`Error generating Open Graph image: ${e.message}`)\n return NextResponse.json({ error: `Internal Server Error: ${e.message}` }, { status: 500 })\n }\n}\n"],"mappings":";AAEA,SAASA,WAAW,QAAQ;AAC5B,OAAOC,EAAA,MAAQ;AACf,SAASC,aAAa,QAAQ;AAC9B,SAASC,YAAY,QAAQ;AAC7B,OAAOC,IAAA,MAAU;AACjB,OAAOC,KAAA,MAAW;AAClB,SAASC,aAAa,QAAQ;AAE9B,SAASC,OAAO,QAAQ;AAExB,MAAMC,QAAA,GAAWF,aAAA,CAAcG,MAAA,CAAAC,IAAA,CAAYC,GAAG;AAC9C,MAAMC,OAAA,GAAUR,IAAA,CAAKQ,OAAO,CAACJ,QAAA;AAE7B,OAAO,MAAMK,OAAA,GAAU;AAEvB,OAAO,MAAMC,WAAA,GAAc;AAE3B,OAAO,MAAMC,eAAA,GAAkB,MAAAA,CAAO;EAAEC;AAAG,CAA2B;EACpE,MAAMC,MAAA,GAASD,GAAA,CAAIE,OAAO,CAACD,MAAM;EAEjC,IAAIA,MAAA,CAAOE,KAAK,CAACT,IAAI,CAACU,kBAAkB,KAAK,OAAO;IAClD,OAAOjB,YAAA,CAAakB,IAAI,CAAC;MAAEC,KAAA,EAAO;IAAiC,GAAG;MAAEC,MAAA,EAAQ;IAAI;EACtF;EAEA,IAAI;IACF,MAAM;MAAEC;IAAY,CAAE,GAAG,IAAIC,GAAA,CAAIT,GAAA,CAAIL,GAAG;IAExC,MAAMe,QAAA,GAAWF,YAAA,CAAaG,GAAG,CAAC;IAClC,MAAMC,KAAA,GAAQF,QAAA,GAAWF,YAAA,CAAaK,GAAG,CAAC,UAAUC,KAAA,CAAM,GAAG,OAAO;IACpE,MAAMC,SAAA,GAAYP,YAAA,CAAaG,GAAG,CAAC;IACnC,MAAMK,MAAA,GAASD,SAAA,GAAYP,YAAA,CAAaK,GAAG,CAAC,WAAWC,KAAA,CAAM,GAAG,KAAKG,OAAA,CAAQ,KAAK,OAAO;IACzF,MAAMC,WAAA,GAAcV,YAAA,CAAaG,GAAG,CAAC,iBAAiBH,YAAA,CAAaK,GAAG,CAAC,iBAAiB;IAExF,IAAIM,QAAA;IAEJ,IAAI;MACF;MACA;MACA;MACAA,QAAA,GAAWlC,EAAA,CAAGmC,QAAQ,CAAChC,IAAA,CAAKiC,IAAI,CAACzB,OAAA,EAAS;IAC5C,EAAE,OAAO0B,CAAA,EAAG;MACVtB,GAAA,CAAIE,OAAO,CAACqB,MAAM,CAACjB,KAAK,CAAC,4CAA4CgB,CAAA,CAAEE,OAAO,EAAE;IAClF;IAEA,MAAMC,UAAA,GAAa;IAEnB,OAAO,IAAIvC,aAAA,cAEPwC,IAAA,CAACnC,OAAA;MACC2B,WAAA,EAAaA,WAAA;MACbS,QAAA,EAAU3C,WAAA;MACVyC,UAAA,EAAYA,UAAA;MACZG,IAAA,EAAM3B,MAAA,CAAOE,KAAK,EAAE0B,UAAA,EAAYC,QAAA,EAAUF,IAAA;MAC1CG,SAAA,EAAW/B,GAAA,CAAIE,OAAO,CAAC6B,SAAS;MAChCf,MAAA,EAAQA,MAAA;MACRJ,KAAA,EAAOA;QAGX;MACE,IAAIO,QAAA,GACA;QACEa,KAAA,EAAO,CACL;UACEC,IAAA,EAAM;UACNC,IAAA,EAAM,MAAMf,QAAA;UACZgB,KAAA,EAAO;UACPC,MAAA,EAAQ;QACV;MAEJ,IACA,CAAC,CAAC;MACNC,MAAA,EAAQ;MACRC,KAAA,EAAO;IACT;EAEJ,EAAE,OAAOhB,CAAA,EAAQ;IACftB,GAAA,CAAIE,OAAO,CAACqB,MAAM,CAACjB,KAAK,CAAC,sCAAsCgB,CAAA,CAAEE,OAAO,EAAE;IAC1E,OAAOrC,YAAA,CAAakB,IAAI,CAAC;MAAEC,KAAA,EAAO,0BAA0BgB,CAAA,CAAEE,OAAO;IAAG,GAAG;MAAEjB,MAAA,EAAQ;IAAI;EAC3F;AACF","ignoreList":[]}
@@ -1,14 +1,9 @@
1
1
  import type { Collection, PayloadRequest, SanitizedConfig } from 'payload';
2
2
  import { APIError } from 'payload';
3
- export type ErrorResponse = {
4
- data?: any;
5
- errors: unknown[];
6
- stack?: string;
7
- };
8
- export declare const routeError: ({ collection, config: configArg, err, req, }: {
3
+ export declare const routeError: ({ collection, config: configArg, err, req: incomingReq, }: {
9
4
  collection?: Collection;
10
5
  config: Promise<SanitizedConfig> | SanitizedConfig;
11
6
  err: APIError;
12
- req: Partial<PayloadRequest>;
7
+ req: PayloadRequest | Request;
13
8
  }) => Promise<Response>;
14
9
  //# sourceMappingURL=routeError.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"routeError.d.ts","sourceRoot":"","sources":["../../../src/routes/rest/routeError.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAG1E,OAAO,EAAE,QAAQ,EAAqC,MAAM,SAAS,CAAA;AAKrE,MAAM,MAAM,aAAa,GAAG;IAAE,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,OAAO,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AA+D7E,eAAO,MAAM,UAAU,iDAKpB;IACD,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,GAAG,EAAE,QAAQ,CAAA;IACb,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;CAC7B,sBA8DA,CAAA"}
1
+ {"version":3,"file":"routeError.d.ts","sourceRoot":"","sources":["../../../src/routes/rest/routeError.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAe,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAGvF,OAAO,EAAE,QAAQ,EAA4B,MAAM,SAAS,CAAA;AAK5D,eAAO,MAAM,UAAU,8DAKpB;IACD,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,GAAG,EAAE,QAAQ,CAAA;IACb,GAAG,EAAE,cAAc,GAAG,OAAO,CAAA;CAC9B,sBAqFA,CAAA"}
@@ -1,63 +1,17 @@
1
1
  import httpStatus from 'http-status';
2
- import { APIError, APIErrorName, ValidationErrorName } from 'payload';
3
- import { getPayloadHMR } from '../../utilities/getPayloadHMR.js';
2
+ import { APIError, formatErrors, getPayload } from 'payload';
4
3
  import { headersWithCors } from '../../utilities/headersWithCors.js';
5
- const formatErrors = incoming => {
6
- if (incoming) {
7
- // Cannot use `instanceof` to check error type: https://github.com/microsoft/TypeScript/issues/13965
8
- // Instead, get the prototype of the incoming error and check its constructor name
9
- const proto = Object.getPrototypeOf(incoming);
10
- // Payload 'ValidationError' and 'APIError'
11
- if ((proto.constructor.name === ValidationErrorName || proto.constructor.name === APIErrorName) && incoming.data) {
12
- return {
13
- errors: [{
14
- name: incoming.name,
15
- data: incoming.data,
16
- message: incoming.message
17
- }]
18
- };
19
- }
20
- // Mongoose 'ValidationError': https://mongoosejs.com/docs/api/error.html#Error.ValidationError
21
- if (proto.constructor.name === ValidationErrorName && 'errors' in incoming && incoming.errors) {
22
- return {
23
- errors: Object.keys(incoming.errors).reduce((acc, key) => {
24
- acc.push({
25
- field: incoming.errors[key].path,
26
- message: incoming.errors[key].message
27
- });
28
- return acc;
29
- }, [])
30
- };
31
- }
32
- if (Array.isArray(incoming.message)) {
33
- return {
34
- errors: incoming.message
35
- };
36
- }
37
- if (incoming.name) {
38
- return {
39
- errors: [{
40
- message: incoming.message
41
- }]
42
- };
43
- }
44
- }
45
- return {
46
- errors: [{
47
- message: 'An unknown error occurred.'
48
- }]
49
- };
50
- };
4
+ import { mergeHeaders } from '../../utilities/mergeHeaders.js';
51
5
  export const routeError = async ({
52
6
  collection,
53
7
  config: configArg,
54
8
  err,
55
- req
9
+ req: incomingReq
56
10
  }) => {
57
- let payload = req?.payload;
11
+ let payload = 'payload' in incomingReq && incomingReq?.payload;
58
12
  if (!payload) {
59
13
  try {
60
- payload = await getPayloadHMR({
14
+ payload = await getPayload({
61
15
  config: configArg
62
16
  });
63
17
  } catch (e) {
@@ -68,6 +22,7 @@ export const routeError = async ({
68
22
  });
69
23
  }
70
24
  }
25
+ const req = incomingReq;
71
26
  req.payload = payload;
72
27
  const headers = headersWithCors({
73
28
  headers: new Headers(),
@@ -79,7 +34,14 @@ export const routeError = async ({
79
34
  } = payload;
80
35
  let response = formatErrors(err);
81
36
  let status = err.status || httpStatus.INTERNAL_SERVER_ERROR;
82
- logger.error(err.stack);
37
+ const level = payload.config.loggingLevels[err.name] ?? 'error';
38
+ if (level) {
39
+ logger[level](level === 'info' ? {
40
+ msg: err.message
41
+ } : {
42
+ err
43
+ });
44
+ }
83
45
  // Internal server errors can contain anything, including potentially sensitive data.
84
46
  // Therefore, error details will be hidden from the response unless `config.debug` is `true`
85
47
  if (!config.debug && status === httpStatus.INTERNAL_SERVER_ERROR) {
@@ -88,26 +50,38 @@ export const routeError = async ({
88
50
  if (config.debug && config.debug === true) {
89
51
  response.stack = err.stack;
90
52
  }
91
- if (collection && typeof collection.config.hooks.afterError === 'function') {
92
- ({
93
- response,
94
- status
95
- } = collection.config.hooks.afterError(err, response, req?.context, collection.config) || {
96
- response,
97
- status
98
- });
53
+ if (collection) {
54
+ await collection.config.hooks.afterError?.reduce(async (promise, hook) => {
55
+ await promise;
56
+ const result = await hook({
57
+ collection: collection.config,
58
+ context: req.context,
59
+ error: err,
60
+ req,
61
+ result: response
62
+ });
63
+ if (result) {
64
+ response = result.response || response;
65
+ status = result.status || status;
66
+ }
67
+ }, Promise.resolve());
99
68
  }
100
- if (typeof config.hooks.afterError === 'function') {
101
- ({
102
- response,
103
- status
104
- } = config.hooks.afterError(err, response, req?.context, collection?.config) || {
105
- response,
106
- status
69
+ await config.hooks.afterError?.reduce(async (promise, hook) => {
70
+ await promise;
71
+ const result = await hook({
72
+ collection: collection?.config,
73
+ context: req.context,
74
+ error: err,
75
+ req,
76
+ result: response
107
77
  });
108
- }
78
+ if (result) {
79
+ response = result.response || response;
80
+ status = result.status || status;
81
+ }
82
+ }, Promise.resolve());
109
83
  return Response.json(response, {
110
- headers,
84
+ headers: req.responseHeaders ? mergeHeaders(req.responseHeaders, headers) : headers,
111
85
  status
112
86
  });
113
87
  };
@@ -1 +1 @@
1
- {"version":3,"file":"routeError.js","names":["httpStatus","APIError","APIErrorName","ValidationErrorName","getPayloadHMR","headersWithCors","formatErrors","incoming","proto","Object","getPrototypeOf","constructor","name","data","errors","message","keys","reduce","acc","key","push","field","path","Array","isArray","routeError","collection","config","configArg","err","req","payload","e","Response","json","status","INTERNAL_SERVER_ERROR","headers","Headers","logger","response","error","stack","debug","hooks","afterError","context"],"sources":["../../../src/routes/rest/routeError.ts"],"sourcesContent":["import type { Collection, PayloadRequest, SanitizedConfig } from 'payload'\n\nimport httpStatus from 'http-status'\nimport { APIError, APIErrorName, ValidationErrorName } from 'payload'\n\nimport { getPayloadHMR } from '../../utilities/getPayloadHMR.js'\nimport { headersWithCors } from '../../utilities/headersWithCors.js'\n\nexport type ErrorResponse = { data?: any; errors: unknown[]; stack?: string }\n\nconst formatErrors = (incoming: { [key: string]: unknown } | APIError): ErrorResponse => {\n if (incoming) {\n // Cannot use `instanceof` to check error type: https://github.com/microsoft/TypeScript/issues/13965\n // Instead, get the prototype of the incoming error and check its constructor name\n const proto = Object.getPrototypeOf(incoming)\n\n // Payload 'ValidationError' and 'APIError'\n if (\n (proto.constructor.name === ValidationErrorName || proto.constructor.name === APIErrorName) &&\n incoming.data\n ) {\n return {\n errors: [\n {\n name: incoming.name,\n data: incoming.data,\n message: incoming.message,\n },\n ],\n }\n }\n\n // Mongoose 'ValidationError': https://mongoosejs.com/docs/api/error.html#Error.ValidationError\n if (proto.constructor.name === ValidationErrorName && 'errors' in incoming && incoming.errors) {\n return {\n errors: Object.keys(incoming.errors).reduce((acc, key) => {\n acc.push({\n field: incoming.errors[key].path,\n message: incoming.errors[key].message,\n })\n return acc\n }, []),\n }\n }\n\n if (Array.isArray(incoming.message)) {\n return {\n errors: incoming.message,\n }\n }\n\n if (incoming.name) {\n return {\n errors: [\n {\n message: incoming.message,\n },\n ],\n }\n }\n }\n\n return {\n errors: [\n {\n message: 'An unknown error occurred.',\n },\n ],\n }\n}\n\nexport const routeError = async ({\n collection,\n config: configArg,\n err,\n req,\n}: {\n collection?: Collection\n config: Promise<SanitizedConfig> | SanitizedConfig\n err: APIError\n req: Partial<PayloadRequest>\n}) => {\n let payload = req?.payload\n\n if (!payload) {\n try {\n payload = await getPayloadHMR({ config: configArg })\n } catch (e) {\n return Response.json(\n {\n message: 'There was an error initializing Payload',\n },\n { status: httpStatus.INTERNAL_SERVER_ERROR },\n )\n }\n }\n\n req.payload = payload\n const headers = headersWithCors({\n headers: new Headers(),\n req,\n })\n\n const { config, logger } = payload\n\n let response = formatErrors(err)\n\n let status = err.status || httpStatus.INTERNAL_SERVER_ERROR\n\n logger.error(err.stack)\n\n // Internal server errors can contain anything, including potentially sensitive data.\n // Therefore, error details will be hidden from the response unless `config.debug` is `true`\n if (!config.debug && status === httpStatus.INTERNAL_SERVER_ERROR) {\n response = formatErrors(new APIError('Something went wrong.'))\n }\n\n if (config.debug && config.debug === true) {\n response.stack = err.stack\n }\n\n if (collection && typeof collection.config.hooks.afterError === 'function') {\n ;({ response, status } = collection.config.hooks.afterError(\n err,\n response,\n req?.context,\n collection.config,\n ) || { response, status })\n }\n\n if (typeof config.hooks.afterError === 'function') {\n ;({ response, status } = config.hooks.afterError(\n err,\n response,\n req?.context,\n collection?.config,\n ) || {\n response,\n status,\n })\n }\n\n return Response.json(response, { headers, status })\n}\n"],"mappings":"AAEA,OAAOA,UAAA,MAAgB;AACvB,SAASC,QAAQ,EAAEC,YAAY,EAAEC,mBAAmB,QAAQ;AAE5D,SAASC,aAAa,QAAQ;AAC9B,SAASC,eAAe,QAAQ;AAIhC,MAAMC,YAAA,GAAgBC,QAAA;EACpB,IAAIA,QAAA,EAAU;IACZ;IACA;IACA,MAAMC,KAAA,GAAQC,MAAA,CAAOC,cAAc,CAACH,QAAA;IAEpC;IACA,IACE,CAACC,KAAA,CAAMG,WAAW,CAACC,IAAI,KAAKT,mBAAA,IAAuBK,KAAA,CAAMG,WAAW,CAACC,IAAI,KAAKV,YAAW,KACzFK,QAAA,CAASM,IAAI,EACb;MACA,OAAO;QACLC,MAAA,EAAQ,CACN;UACEF,IAAA,EAAML,QAAA,CAASK,IAAI;UACnBC,IAAA,EAAMN,QAAA,CAASM,IAAI;UACnBE,OAAA,EAASR,QAAA,CAASQ;QACpB;MAEJ;IACF;IAEA;IACA,IAAIP,KAAA,CAAMG,WAAW,CAACC,IAAI,KAAKT,mBAAA,IAAuB,YAAYI,QAAA,IAAYA,QAAA,CAASO,MAAM,EAAE;MAC7F,OAAO;QACLA,MAAA,EAAQL,MAAA,CAAOO,IAAI,CAACT,QAAA,CAASO,MAAM,EAAEG,MAAM,CAAC,CAACC,GAAA,EAAKC,GAAA;UAChDD,GAAA,CAAIE,IAAI,CAAC;YACPC,KAAA,EAAOd,QAAA,CAASO,MAAM,CAACK,GAAA,CAAI,CAACG,IAAI;YAChCP,OAAA,EAASR,QAAA,CAASO,MAAM,CAACK,GAAA,CAAI,CAACJ;UAChC;UACA,OAAOG,GAAA;QACT,GAAG,EAAE;MACP;IACF;IAEA,IAAIK,KAAA,CAAMC,OAAO,CAACjB,QAAA,CAASQ,OAAO,GAAG;MACnC,OAAO;QACLD,MAAA,EAAQP,QAAA,CAASQ;MACnB;IACF;IAEA,IAAIR,QAAA,CAASK,IAAI,EAAE;MACjB,OAAO;QACLE,MAAA,EAAQ,CACN;UACEC,OAAA,EAASR,QAAA,CAASQ;QACpB;MAEJ;IACF;EACF;EAEA,OAAO;IACLD,MAAA,EAAQ,CACN;MACEC,OAAA,EAAS;IACX;EAEJ;AACF;AAEA,OAAO,MAAMU,UAAA,GAAa,MAAAA,CAAO;EAC/BC,UAAU;EACVC,MAAA,EAAQC,SAAS;EACjBC,GAAG;EACHC;AAAG,CAMJ;EACC,IAAIC,OAAA,GAAUD,GAAA,EAAKC,OAAA;EAEnB,IAAI,CAACA,OAAA,EAAS;IACZ,IAAI;MACFA,OAAA,GAAU,MAAM3B,aAAA,CAAc;QAAEuB,MAAA,EAAQC;MAAU;IACpD,EAAE,OAAOI,CAAA,EAAG;MACV,OAAOC,QAAA,CAASC,IAAI,CAClB;QACEnB,OAAA,EAAS;MACX,GACA;QAAEoB,MAAA,EAAQnC,UAAA,CAAWoC;MAAsB;IAE/C;EACF;EAEAN,GAAA,CAAIC,OAAO,GAAGA,OAAA;EACd,MAAMM,OAAA,GAAUhC,eAAA,CAAgB;IAC9BgC,OAAA,EAAS,IAAIC,OAAA;IACbR;EACF;EAEA,MAAM;IAAEH,MAAM;IAAEY;EAAM,CAAE,GAAGR,OAAA;EAE3B,IAAIS,QAAA,GAAWlC,YAAA,CAAauB,GAAA;EAE5B,IAAIM,MAAA,GAASN,GAAA,CAAIM,MAAM,IAAInC,UAAA,CAAWoC,qBAAqB;EAE3DG,MAAA,CAAOE,KAAK,CAACZ,GAAA,CAAIa,KAAK;EAEtB;EACA;EACA,IAAI,CAACf,MAAA,CAAOgB,KAAK,IAAIR,MAAA,KAAWnC,UAAA,CAAWoC,qBAAqB,EAAE;IAChEI,QAAA,GAAWlC,YAAA,CAAa,IAAIL,QAAA,CAAS;EACvC;EAEA,IAAI0B,MAAA,CAAOgB,KAAK,IAAIhB,MAAA,CAAOgB,KAAK,KAAK,MAAM;IACzCH,QAAA,CAASE,KAAK,GAAGb,GAAA,CAAIa,KAAK;EAC5B;EAEA,IAAIhB,UAAA,IAAc,OAAOA,UAAA,CAAWC,MAAM,CAACiB,KAAK,CAACC,UAAU,KAAK,YAAY;IACxE;MAAEL,QAAQ;MAAEL;IAAM,CAAE,GAAGT,UAAA,CAAWC,MAAM,CAACiB,KAAK,CAACC,UAAU,CACzDhB,GAAA,EACAW,QAAA,EACAV,GAAA,EAAKgB,OAAA,EACLpB,UAAA,CAAWC,MAAM,KACd;MAAEa,QAAA;MAAUL;IAAO;EAC1B;EAEA,IAAI,OAAOR,MAAA,CAAOiB,KAAK,CAACC,UAAU,KAAK,YAAY;IAC/C;MAAEL,QAAQ;MAAEL;IAAM,CAAE,GAAGR,MAAA,CAAOiB,KAAK,CAACC,UAAU,CAC9ChB,GAAA,EACAW,QAAA,EACAV,GAAA,EAAKgB,OAAA,EACLpB,UAAA,EAAYC,MAAA,KACT;MACHa,QAAA;MACAL;IACF;EACF;EAEA,OAAOF,QAAA,CAASC,IAAI,CAACM,QAAA,EAAU;IAAEH,OAAA;IAASF;EAAO;AACnD","ignoreList":[]}
1
+ {"version":3,"file":"routeError.js","names":["httpStatus","APIError","formatErrors","getPayload","headersWithCors","mergeHeaders","routeError","collection","config","configArg","err","req","incomingReq","payload","e","Response","json","message","status","INTERNAL_SERVER_ERROR","headers","Headers","logger","response","level","loggingLevels","name","msg","debug","stack","hooks","afterError","reduce","promise","hook","result","context","error","Promise","resolve","responseHeaders"],"sources":["../../../src/routes/rest/routeError.ts"],"sourcesContent":["import type { Collection, ErrorResult, PayloadRequest, SanitizedConfig } from 'payload'\n\nimport httpStatus from 'http-status'\nimport { APIError, formatErrors, getPayload } from 'payload'\n\nimport { headersWithCors } from '../../utilities/headersWithCors.js'\nimport { mergeHeaders } from '../../utilities/mergeHeaders.js'\n\nexport const routeError = async ({\n collection,\n config: configArg,\n err,\n req: incomingReq,\n}: {\n collection?: Collection\n config: Promise<SanitizedConfig> | SanitizedConfig\n err: APIError\n req: PayloadRequest | Request\n}) => {\n let payload = 'payload' in incomingReq && incomingReq?.payload\n\n if (!payload) {\n try {\n payload = await getPayload({ config: configArg })\n } catch (e) {\n return Response.json(\n {\n message: 'There was an error initializing Payload',\n },\n { status: httpStatus.INTERNAL_SERVER_ERROR },\n )\n }\n }\n\n const req = incomingReq as PayloadRequest\n\n req.payload = payload\n const headers = headersWithCors({\n headers: new Headers(),\n req,\n })\n\n const { config, logger } = payload\n\n let response = formatErrors(err)\n\n let status = err.status || httpStatus.INTERNAL_SERVER_ERROR\n\n const level = payload.config.loggingLevels[err.name] ?? 'error'\n if (level) {\n logger[level](level === 'info' ? { msg: err.message } : { err })\n }\n\n // Internal server errors can contain anything, including potentially sensitive data.\n // Therefore, error details will be hidden from the response unless `config.debug` is `true`\n if (!config.debug && status === httpStatus.INTERNAL_SERVER_ERROR) {\n response = formatErrors(new APIError('Something went wrong.'))\n }\n\n if (config.debug && config.debug === true) {\n response.stack = err.stack\n }\n\n if (collection) {\n await collection.config.hooks.afterError?.reduce(async (promise, hook) => {\n await promise\n\n const result = await hook({\n collection: collection.config,\n context: req.context,\n error: err,\n req,\n result: response,\n })\n\n if (result) {\n response = (result.response as ErrorResult) || response\n status = result.status || status\n }\n }, Promise.resolve())\n }\n\n await config.hooks.afterError?.reduce(async (promise, hook) => {\n await promise\n\n const result = await hook({\n collection: collection?.config,\n context: req.context,\n error: err,\n req,\n result: response,\n })\n\n if (result) {\n response = (result.response as ErrorResult) || response\n status = result.status || status\n }\n }, Promise.resolve())\n\n return Response.json(response, {\n headers: req.responseHeaders ? mergeHeaders(req.responseHeaders, headers) : headers,\n status,\n })\n}\n"],"mappings":"AAEA,OAAOA,UAAA,MAAgB;AACvB,SAASC,QAAQ,EAAEC,YAAY,EAAEC,UAAU,QAAQ;AAEnD,SAASC,eAAe,QAAQ;AAChC,SAASC,YAAY,QAAQ;AAE7B,OAAO,MAAMC,UAAA,GAAa,MAAAA,CAAO;EAC/BC,UAAU;EACVC,MAAA,EAAQC,SAAS;EACjBC,GAAG;EACHC,GAAA,EAAKC;AAAW,CAMjB;EACC,IAAIC,OAAA,GAAU,aAAaD,WAAA,IAAeA,WAAA,EAAaC,OAAA;EAEvD,IAAI,CAACA,OAAA,EAAS;IACZ,IAAI;MACFA,OAAA,GAAU,MAAMV,UAAA,CAAW;QAAEK,MAAA,EAAQC;MAAU;IACjD,EAAE,OAAOK,CAAA,EAAG;MACV,OAAOC,QAAA,CAASC,IAAI,CAClB;QACEC,OAAA,EAAS;MACX,GACA;QAAEC,MAAA,EAAQlB,UAAA,CAAWmB;MAAsB;IAE/C;EACF;EAEA,MAAMR,GAAA,GAAMC,WAAA;EAEZD,GAAA,CAAIE,OAAO,GAAGA,OAAA;EACd,MAAMO,OAAA,GAAUhB,eAAA,CAAgB;IAC9BgB,OAAA,EAAS,IAAIC,OAAA;IACbV;EACF;EAEA,MAAM;IAAEH,MAAM;IAAEc;EAAM,CAAE,GAAGT,OAAA;EAE3B,IAAIU,QAAA,GAAWrB,YAAA,CAAaQ,GAAA;EAE5B,IAAIQ,MAAA,GAASR,GAAA,CAAIQ,MAAM,IAAIlB,UAAA,CAAWmB,qBAAqB;EAE3D,MAAMK,KAAA,GAAQX,OAAA,CAAQL,MAAM,CAACiB,aAAa,CAACf,GAAA,CAAIgB,IAAI,CAAC,IAAI;EACxD,IAAIF,KAAA,EAAO;IACTF,MAAM,CAACE,KAAA,CAAM,CAACA,KAAA,KAAU,SAAS;MAAEG,GAAA,EAAKjB,GAAA,CAAIO;IAAQ,IAAI;MAAEP;IAAI;EAChE;EAEA;EACA;EACA,IAAI,CAACF,MAAA,CAAOoB,KAAK,IAAIV,MAAA,KAAWlB,UAAA,CAAWmB,qBAAqB,EAAE;IAChEI,QAAA,GAAWrB,YAAA,CAAa,IAAID,QAAA,CAAS;EACvC;EAEA,IAAIO,MAAA,CAAOoB,KAAK,IAAIpB,MAAA,CAAOoB,KAAK,KAAK,MAAM;IACzCL,QAAA,CAASM,KAAK,GAAGnB,GAAA,CAAImB,KAAK;EAC5B;EAEA,IAAItB,UAAA,EAAY;IACd,MAAMA,UAAA,CAAWC,MAAM,CAACsB,KAAK,CAACC,UAAU,EAAEC,MAAA,CAAO,OAAOC,OAAA,EAASC,IAAA;MAC/D,MAAMD,OAAA;MAEN,MAAME,MAAA,GAAS,MAAMD,IAAA,CAAK;QACxB3B,UAAA,EAAYA,UAAA,CAAWC,MAAM;QAC7B4B,OAAA,EAASzB,GAAA,CAAIyB,OAAO;QACpBC,KAAA,EAAO3B,GAAA;QACPC,GAAA;QACAwB,MAAA,EAAQZ;MACV;MAEA,IAAIY,MAAA,EAAQ;QACVZ,QAAA,GAAWY,MAAC,CAAOZ,QAAQ,IAAoBA,QAAA;QAC/CL,MAAA,GAASiB,MAAA,CAAOjB,MAAM,IAAIA,MAAA;MAC5B;IACF,GAAGoB,OAAA,CAAQC,OAAO;EACpB;EAEA,MAAM/B,MAAA,CAAOsB,KAAK,CAACC,UAAU,EAAEC,MAAA,CAAO,OAAOC,OAAA,EAASC,IAAA;IACpD,MAAMD,OAAA;IAEN,MAAME,MAAA,GAAS,MAAMD,IAAA,CAAK;MACxB3B,UAAA,EAAYA,UAAA,EAAYC,MAAA;MACxB4B,OAAA,EAASzB,GAAA,CAAIyB,OAAO;MACpBC,KAAA,EAAO3B,GAAA;MACPC,GAAA;MACAwB,MAAA,EAAQZ;IACV;IAEA,IAAIY,MAAA,EAAQ;MACVZ,QAAA,GAAWY,MAAC,CAAOZ,QAAQ,IAAoBA,QAAA;MAC/CL,MAAA,GAASiB,MAAA,CAAOjB,MAAM,IAAIA,MAAA;IAC5B;EACF,GAAGoB,OAAA,CAAQC,OAAO;EAElB,OAAOxB,QAAA,CAASC,IAAI,CAACO,QAAA,EAAU;IAC7BH,OAAA,EAAST,GAAA,CAAI6B,eAAe,GAAGnC,YAAA,CAAaM,GAAA,CAAI6B,eAAe,EAAEpB,OAAA,IAAWA,OAAA;IAC5EF;EACF;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"sanitizeCollectionID.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/utilities/sanitizeCollectionID.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,KAAK,IAAI,GAAG;IACV,cAAc,EAAE,MAAM,CAAA;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,oBAAoB,oCAAqC,IAAI,KAAG,MAAM,GAAG,MAcrF,CAAA"}
1
+ {"version":3,"file":"sanitizeCollectionID.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/utilities/sanitizeCollectionID.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,KAAK,IAAI,GAAG;IACV,cAAc,EAAE,MAAM,CAAA;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,oBAAoB,oCAAqC,IAAI,KAAG,MAAM,GAAG,MAkBrF,CAAA"}
@@ -8,9 +8,13 @@ export const sanitizeCollectionID = ({
8
8
  // If default db ID type is a number, we should sanitize
9
9
  let shouldSanitize = Boolean(payload.db.defaultIDType === 'number');
10
10
  // UNLESS the customIDType for this collection is text.... then we leave it
11
- if (shouldSanitize && collection.customIDType === 'text') shouldSanitize = false;
11
+ if (shouldSanitize && collection.customIDType === 'text') {
12
+ shouldSanitize = false;
13
+ }
12
14
  // If we still should sanitize, parse float
13
- if (shouldSanitize) sanitizedID = parseFloat(sanitizedID);
15
+ if (shouldSanitize) {
16
+ sanitizedID = parseFloat(sanitizedID);
17
+ }
14
18
  return sanitizedID;
15
19
  };
16
20
  //# sourceMappingURL=sanitizeCollectionID.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sanitizeCollectionID.js","names":["sanitizeCollectionID","id","collectionSlug","payload","sanitizedID","collection","collections","shouldSanitize","Boolean","db","defaultIDType","customIDType","parseFloat"],"sources":["../../../../src/routes/rest/utilities/sanitizeCollectionID.ts"],"sourcesContent":["import type { Payload } from 'payload'\n\ntype Args = {\n collectionSlug: string\n id: string\n payload: Payload\n}\n\nexport const sanitizeCollectionID = ({ id, collectionSlug, payload }: Args): number | string => {\n let sanitizedID: number | string = id\n const collection = payload.collections[collectionSlug]\n\n // If default db ID type is a number, we should sanitize\n let shouldSanitize = Boolean(payload.db.defaultIDType === 'number')\n\n // UNLESS the customIDType for this collection is text.... then we leave it\n if (shouldSanitize && collection.customIDType === 'text') shouldSanitize = false\n\n // If we still should sanitize, parse float\n if (shouldSanitize) sanitizedID = parseFloat(sanitizedID)\n\n return sanitizedID\n}\n"],"mappings":"AAQA,OAAO,MAAMA,oBAAA,GAAuBA,CAAC;EAAEC,EAAE;EAAEC,cAAc;EAAEC;AAAO,CAAQ;EACxE,IAAIC,WAAA,GAA+BH,EAAA;EACnC,MAAMI,UAAA,GAAaF,OAAA,CAAQG,WAAW,CAACJ,cAAA,CAAe;EAEtD;EACA,IAAIK,cAAA,GAAiBC,OAAA,CAAQL,OAAA,CAAQM,EAAE,CAACC,aAAa,KAAK;EAE1D;EACA,IAAIH,cAAA,IAAkBF,UAAA,CAAWM,YAAY,KAAK,QAAQJ,cAAA,GAAiB;EAE3E;EACA,IAAIA,cAAA,EAAgBH,WAAA,GAAcQ,UAAA,CAAWR,WAAA;EAE7C,OAAOA,WAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"sanitizeCollectionID.js","names":["sanitizeCollectionID","id","collectionSlug","payload","sanitizedID","collection","collections","shouldSanitize","Boolean","db","defaultIDType","customIDType","parseFloat"],"sources":["../../../../src/routes/rest/utilities/sanitizeCollectionID.ts"],"sourcesContent":["import type { Payload } from 'payload'\n\ntype Args = {\n collectionSlug: string\n id: string\n payload: Payload\n}\n\nexport const sanitizeCollectionID = ({ id, collectionSlug, payload }: Args): number | string => {\n let sanitizedID: number | string = id\n const collection = payload.collections[collectionSlug]\n\n // If default db ID type is a number, we should sanitize\n let shouldSanitize = Boolean(payload.db.defaultIDType === 'number')\n\n // UNLESS the customIDType for this collection is text.... then we leave it\n if (shouldSanitize && collection.customIDType === 'text') {\n shouldSanitize = false\n }\n\n // If we still should sanitize, parse float\n if (shouldSanitize) {\n sanitizedID = parseFloat(sanitizedID)\n }\n\n return sanitizedID\n}\n"],"mappings":"AAQA,OAAO,MAAMA,oBAAA,GAAuBA,CAAC;EAAEC,EAAE;EAAEC,cAAc;EAAEC;AAAO,CAAQ;EACxE,IAAIC,WAAA,GAA+BH,EAAA;EACnC,MAAMI,UAAA,GAAaF,OAAA,CAAQG,WAAW,CAACJ,cAAA,CAAe;EAEtD;EACA,IAAIK,cAAA,GAAiBC,OAAA,CAAQL,OAAA,CAAQM,EAAE,CAACC,aAAa,KAAK;EAE1D;EACA,IAAIH,cAAA,IAAkBF,UAAA,CAAWM,YAAY,KAAK,QAAQ;IACxDJ,cAAA,GAAiB;EACnB;EAEA;EACA,IAAIA,cAAA,EAAgB;IAClBH,WAAA,GAAcQ,UAAA,CAAWR,WAAA;EAC3B;EAEA,OAAOA,WAAA;AACT","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ import type { JoinQuery } from 'payload';
2
+ /**
3
+ * Convert request JoinQuery object from strings to numbers
4
+ * @param joins
5
+ */
6
+ export declare const sanitizeJoinParams: (joins?: {
7
+ [schemaPath: string]: {
8
+ limit?: unknown;
9
+ sort?: string;
10
+ where?: unknown;
11
+ } | false;
12
+ } | false) => JoinQuery;
13
+ //# sourceMappingURL=sanitizeJoinParams.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitizeJoinParams.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/utilities/sanitizeJoinParams.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAIxC;;;GAGG;AACH,eAAO,MAAM,kBAAkB,WAEzB;IACE,CAAC,UAAU,EAAE,MAAM,GACf;QACE,KAAK,CAAC,EAAE,OAAO,CAAA;QACf,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,KAAK,CAAC,EAAE,OAAO,CAAA;KAChB,GACD,KAAK,CAAA;CACV,GACD,KAAK,KACR,SAgBF,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { isNumber } from 'payload/shared';
2
+ /**
3
+ * Convert request JoinQuery object from strings to numbers
4
+ * @param joins
5
+ */
6
+ export const sanitizeJoinParams = (joins = {}) => {
7
+ const joinQuery = {};
8
+ Object.keys(joins).forEach(schemaPath => {
9
+ if (joins[schemaPath] === 'false' || joins[schemaPath] === false) {
10
+ joinQuery[schemaPath] = false;
11
+ } else {
12
+ joinQuery[schemaPath] = {
13
+ limit: isNumber(joins[schemaPath]?.limit) ? Number(joins[schemaPath].limit) : undefined,
14
+ sort: joins[schemaPath]?.sort ? joins[schemaPath].sort : undefined,
15
+ where: joins[schemaPath]?.where ? joins[schemaPath].where : undefined
16
+ };
17
+ }
18
+ });
19
+ return joinQuery;
20
+ };
21
+ //# sourceMappingURL=sanitizeJoinParams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitizeJoinParams.js","names":["isNumber","sanitizeJoinParams","joins","joinQuery","Object","keys","forEach","schemaPath","limit","Number","undefined","sort","where"],"sources":["../../../../src/routes/rest/utilities/sanitizeJoinParams.ts"],"sourcesContent":["import type { JoinQuery } from 'payload'\n\nimport { isNumber } from 'payload/shared'\n\n/**\n * Convert request JoinQuery object from strings to numbers\n * @param joins\n */\nexport const sanitizeJoinParams = (\n joins:\n | {\n [schemaPath: string]:\n | {\n limit?: unknown\n sort?: string\n where?: unknown\n }\n | false\n }\n | false = {},\n): JoinQuery => {\n const joinQuery = {}\n\n Object.keys(joins).forEach((schemaPath) => {\n if (joins[schemaPath] === 'false' || joins[schemaPath] === false) {\n joinQuery[schemaPath] = false\n } else {\n joinQuery[schemaPath] = {\n limit: isNumber(joins[schemaPath]?.limit) ? Number(joins[schemaPath].limit) : undefined,\n sort: joins[schemaPath]?.sort ? joins[schemaPath].sort : undefined,\n where: joins[schemaPath]?.where ? joins[schemaPath].where : undefined,\n }\n }\n })\n\n return joinQuery\n}\n"],"mappings":"AAEA,SAASA,QAAQ,QAAQ;AAEzB;;;;AAIA,OAAO,MAAMC,kBAAA,GAAqBA,CAChCC,KAAA,GAUY,CAAC,CAAC;EAEd,MAAMC,SAAA,GAAY,CAAC;EAEnBC,MAAA,CAAOC,IAAI,CAACH,KAAA,EAAOI,OAAO,CAAEC,UAAA;IAC1B,IAAIL,KAAK,CAACK,UAAA,CAAW,KAAK,WAAWL,KAAK,CAACK,UAAA,CAAW,KAAK,OAAO;MAChEJ,SAAS,CAACI,UAAA,CAAW,GAAG;IAC1B,OAAO;MACLJ,SAAS,CAACI,UAAA,CAAW,GAAG;QACtBC,KAAA,EAAOR,QAAA,CAASE,KAAK,CAACK,UAAA,CAAW,EAAEC,KAAA,IAASC,MAAA,CAAOP,KAAK,CAACK,UAAA,CAAW,CAACC,KAAK,IAAIE,SAAA;QAC9EC,IAAA,EAAMT,KAAK,CAACK,UAAA,CAAW,EAAEI,IAAA,GAAOT,KAAK,CAACK,UAAA,CAAW,CAACI,IAAI,GAAGD,SAAA;QACzDE,KAAA,EAAOV,KAAK,CAACK,UAAA,CAAW,EAAEK,KAAA,GAAQV,KAAK,CAACK,UAAA,CAAW,CAACK,KAAK,GAAGF;MAC9D;IACF;EACF;EAEA,OAAOP,SAAA;AACT","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ import type { PopulateType } from 'payload';
2
+ export declare const sanitizePopulate: (unsanitizedPopulate: unknown) => PopulateType | undefined;
3
+ //# sourceMappingURL=sanitizePopulate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitizePopulate.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/utilities/sanitizePopulate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAI3C,eAAO,MAAM,gBAAgB,wBAAyB,OAAO,KAAG,YAAY,GAAG,SAU9E,CAAA"}
@@ -0,0 +1,11 @@
1
+ import { sanitizeSelect } from './sanitizeSelect.js';
2
+ export const sanitizePopulate = unsanitizedPopulate => {
3
+ if (!unsanitizedPopulate || typeof unsanitizedPopulate !== 'object') {
4
+ return;
5
+ }
6
+ for (const k in unsanitizedPopulate) {
7
+ unsanitizedPopulate[k] = sanitizeSelect(unsanitizedPopulate[k]);
8
+ }
9
+ return unsanitizedPopulate;
10
+ };
11
+ //# sourceMappingURL=sanitizePopulate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitizePopulate.js","names":["sanitizeSelect","sanitizePopulate","unsanitizedPopulate","k"],"sources":["../../../../src/routes/rest/utilities/sanitizePopulate.ts"],"sourcesContent":["import type { PopulateType } from 'payload'\n\nimport { sanitizeSelect } from './sanitizeSelect.js'\n\nexport const sanitizePopulate = (unsanitizedPopulate: unknown): PopulateType | undefined => {\n if (!unsanitizedPopulate || typeof unsanitizedPopulate !== 'object') {\n return\n }\n\n for (const k in unsanitizedPopulate) {\n unsanitizedPopulate[k] = sanitizeSelect(unsanitizedPopulate[k])\n }\n\n return unsanitizedPopulate as PopulateType\n}\n"],"mappings":"AAEA,SAASA,cAAc,QAAQ;AAE/B,OAAO,MAAMC,gBAAA,GAAoBC,mBAAA;EAC/B,IAAI,CAACA,mBAAA,IAAuB,OAAOA,mBAAA,KAAwB,UAAU;IACnE;EACF;EAEA,KAAK,MAAMC,CAAA,IAAKD,mBAAA,EAAqB;IACnCA,mBAAmB,CAACC,CAAA,CAAE,GAAGH,cAAA,CAAeE,mBAAmB,CAACC,CAAA,CAAE;EAChE;EAEA,OAAOD,mBAAA;AACT","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ import type { SelectType } from 'payload';
2
+ /**
3
+ * Sanitizes REST select query to SelectType
4
+ */
5
+ export declare const sanitizeSelect: (unsanitizedSelect: unknown) => SelectType | undefined;
6
+ //# sourceMappingURL=sanitizeSelect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitizeSelect.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/utilities/sanitizeSelect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC;;GAEG;AACH,eAAO,MAAM,cAAc,sBAAuB,OAAO,KAAG,UAAU,GAAG,SAcxE,CAAA"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Sanitizes REST select query to SelectType
3
+ */export const sanitizeSelect = unsanitizedSelect => {
4
+ if (unsanitizedSelect && typeof unsanitizedSelect === 'object') {
5
+ for (const k in unsanitizedSelect) {
6
+ if (unsanitizedSelect[k] === 'true') {
7
+ unsanitizedSelect[k] = true;
8
+ } else if (unsanitizedSelect[k] === 'false') {
9
+ unsanitizedSelect[k] = false;
10
+ } else if (typeof unsanitizedSelect[k] === 'object') {
11
+ sanitizeSelect(unsanitizedSelect[k]);
12
+ }
13
+ }
14
+ }
15
+ return unsanitizedSelect;
16
+ };
17
+ //# sourceMappingURL=sanitizeSelect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitizeSelect.js","names":["sanitizeSelect","unsanitizedSelect","k"],"sources":["../../../../src/routes/rest/utilities/sanitizeSelect.ts"],"sourcesContent":["import type { SelectType } from 'payload'\n\n/**\n * Sanitizes REST select query to SelectType\n */\nexport const sanitizeSelect = (unsanitizedSelect: unknown): SelectType | undefined => {\n if (unsanitizedSelect && typeof unsanitizedSelect === 'object') {\n for (const k in unsanitizedSelect) {\n if (unsanitizedSelect[k] === 'true') {\n unsanitizedSelect[k] = true\n } else if (unsanitizedSelect[k] === 'false') {\n unsanitizedSelect[k] = false\n } else if (typeof unsanitizedSelect[k] === 'object') {\n sanitizeSelect(unsanitizedSelect[k])\n }\n }\n }\n\n return unsanitizedSelect as SelectType\n}\n"],"mappings":"AAEA;;GAGA,OAAO,MAAMA,cAAA,GAAkBC,iBAAA;EAC7B,IAAIA,iBAAA,IAAqB,OAAOA,iBAAA,KAAsB,UAAU;IAC9D,KAAK,MAAMC,CAAA,IAAKD,iBAAA,EAAmB;MACjC,IAAIA,iBAAiB,CAACC,CAAA,CAAE,KAAK,QAAQ;QACnCD,iBAAiB,CAACC,CAAA,CAAE,GAAG;MACzB,OAAO,IAAID,iBAAiB,CAACC,CAAA,CAAE,KAAK,SAAS;QAC3CD,iBAAiB,CAACC,CAAA,CAAE,GAAG;MACzB,OAAO,IAAI,OAAOD,iBAAiB,CAACC,CAAA,CAAE,KAAK,UAAU;QACnDF,cAAA,CAAeC,iBAAiB,CAACC,CAAA,CAAE;MACrC;IACF;EACF;EAEA,OAAOD,iBAAA;AACT","ignoreList":[]}