@payloadcms/next 3.0.0-canary.926cbeb → 3.0.0-canary.93a7bbd

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 (410) hide show
  1. package/dist/cjs/withPayload.cjs +18 -11
  2. package/dist/cjs/withPayload.cjs.map +1 -1
  3. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -1
  4. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +5 -1
  5. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  6. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +3 -1
  7. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  8. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +16 -3
  9. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  10. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +7 -5
  11. package/dist/elements/DocumentHeader/Tabs/getCustomViews.js +2 -2
  12. package/dist/elements/DocumentHeader/Tabs/getCustomViews.js.map +1 -1
  13. package/dist/elements/DocumentHeader/Tabs/getViewConfig.js +2 -2
  14. package/dist/elements/DocumentHeader/Tabs/getViewConfig.js.map +1 -1
  15. package/dist/elements/DocumentHeader/Tabs/index.d.ts +2 -2
  16. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  17. package/dist/elements/DocumentHeader/Tabs/index.js +27 -17
  18. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  19. package/dist/elements/DocumentHeader/Tabs/index.scss +0 -1
  20. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +1 -1
  21. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +3 -5
  22. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  23. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts +4 -2
  24. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  25. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +15 -15
  26. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  27. package/dist/elements/DocumentHeader/index.d.ts +2 -2
  28. package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
  29. package/dist/elements/DocumentHeader/index.js +2 -2
  30. package/dist/elements/DocumentHeader/index.js.map +1 -1
  31. package/dist/elements/DocumentHeader/index.scss +0 -2
  32. package/dist/elements/EmailAndUsername/index.d.ts +14 -0
  33. package/dist/elements/EmailAndUsername/index.d.ts.map +1 -0
  34. package/dist/elements/EmailAndUsername/index.js +89 -0
  35. package/dist/elements/EmailAndUsername/index.js.map +1 -0
  36. package/dist/elements/LeaveWithoutSaving/index.d.ts.map +1 -1
  37. package/dist/elements/LeaveWithoutSaving/index.js +2 -0
  38. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  39. package/dist/elements/LeaveWithoutSaving/index.scss +1 -0
  40. package/dist/elements/Logo/index.d.ts.map +1 -1
  41. package/dist/elements/Logo/index.js +8 -5
  42. package/dist/elements/Logo/index.js.map +1 -1
  43. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  44. package/dist/elements/Nav/index.client.js +20 -11
  45. package/dist/elements/Nav/index.client.js.map +1 -1
  46. package/dist/elements/Nav/index.d.ts.map +1 -1
  47. package/dist/elements/Nav/index.js +21 -27
  48. package/dist/elements/Nav/index.js.map +1 -1
  49. package/dist/elements/Nav/index.scss +17 -14
  50. package/dist/layouts/Root/index.d.ts +5 -4
  51. package/dist/layouts/Root/index.d.ts.map +1 -1
  52. package/dist/layouts/Root/index.js +26 -32
  53. package/dist/layouts/Root/index.js.map +1 -1
  54. package/dist/prod/styles.css +1 -1
  55. package/dist/routes/graphql/handler.d.ts.map +1 -1
  56. package/dist/routes/graphql/handler.js +1 -5
  57. package/dist/routes/graphql/handler.js.map +1 -1
  58. package/dist/routes/rest/auth/login.d.ts.map +1 -1
  59. package/dist/routes/rest/auth/login.js +1 -1
  60. package/dist/routes/rest/auth/login.js.map +1 -1
  61. package/dist/routes/rest/auth/unlock.d.ts.map +1 -1
  62. package/dist/routes/rest/auth/unlock.js +7 -3
  63. package/dist/routes/rest/auth/unlock.js.map +1 -1
  64. package/dist/routes/rest/buildFormState.js +4 -4
  65. package/dist/routes/rest/buildFormState.js.map +1 -1
  66. package/dist/routes/rest/collections/restoreVersion.d.ts.map +1 -1
  67. package/dist/routes/rest/collections/restoreVersion.js +2 -0
  68. package/dist/routes/rest/collections/restoreVersion.js.map +1 -1
  69. package/dist/routes/rest/globals/restoreVersion.d.ts.map +1 -1
  70. package/dist/routes/rest/globals/restoreVersion.js +2 -0
  71. package/dist/routes/rest/globals/restoreVersion.js.map +1 -1
  72. package/dist/routes/rest/index.d.ts.map +1 -1
  73. package/dist/routes/rest/index.js +30 -5
  74. package/dist/routes/rest/index.js.map +1 -1
  75. package/dist/routes/rest/og/image.d.ts +2 -1
  76. package/dist/routes/rest/og/image.d.ts.map +1 -1
  77. package/dist/routes/rest/og/image.js +6 -2
  78. package/dist/routes/rest/og/image.js.map +1 -1
  79. package/dist/routes/rest/og/index.d.ts.map +1 -1
  80. package/dist/routes/rest/og/index.js +7 -3
  81. package/dist/routes/rest/og/index.js.map +1 -1
  82. package/dist/routes/rest/routeError.d.ts.map +1 -1
  83. package/dist/routes/rest/routeError.js +3 -3
  84. package/dist/routes/rest/routeError.js.map +1 -1
  85. package/dist/scss/app.scss +10 -15
  86. package/dist/scss/colors.scss +76 -76
  87. package/dist/scss/toastify.scss +59 -0
  88. package/dist/scss/toasts.scss +75 -45
  89. package/dist/scss/type.scss +15 -23
  90. package/dist/scss/vars.scss +26 -47
  91. package/dist/templates/Default/index.d.ts +2 -2
  92. package/dist/templates/Default/index.d.ts.map +1 -1
  93. package/dist/templates/Default/index.js +16 -23
  94. package/dist/templates/Default/index.js.map +1 -1
  95. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  96. package/dist/utilities/createPayloadRequest.js +11 -8
  97. package/dist/utilities/createPayloadRequest.js.map +1 -1
  98. package/dist/utilities/getNextRequestI18n.d.ts +3 -3
  99. package/dist/utilities/getNextRequestI18n.d.ts.map +1 -1
  100. package/dist/utilities/getNextRequestI18n.js +3 -1
  101. package/dist/utilities/getNextRequestI18n.js.map +1 -1
  102. package/dist/utilities/getPayloadHMR.d.ts.map +1 -1
  103. package/dist/utilities/getPayloadHMR.js +24 -9
  104. package/dist/utilities/getPayloadHMR.js.map +1 -1
  105. package/dist/utilities/headersWithCors.d.ts.map +1 -1
  106. package/dist/utilities/headersWithCors.js +19 -3
  107. package/dist/utilities/headersWithCors.js.map +1 -1
  108. package/dist/utilities/initPage/handleAdminPage.d.ts +4 -0
  109. package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
  110. package/dist/utilities/initPage/handleAdminPage.js +17 -4
  111. package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
  112. package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +1 -1
  113. package/dist/utilities/initPage/handleAuthRedirect.js +16 -4
  114. package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
  115. package/dist/utilities/initPage/index.d.ts +1 -1
  116. package/dist/utilities/initPage/index.d.ts.map +1 -1
  117. package/dist/utilities/initPage/index.js +4 -3
  118. package/dist/utilities/initPage/index.js.map +1 -1
  119. package/dist/utilities/initPage/shared.d.ts +14 -2
  120. package/dist/utilities/initPage/shared.d.ts.map +1 -1
  121. package/dist/utilities/initPage/shared.js +14 -4
  122. package/dist/utilities/initPage/shared.js.map +1 -1
  123. package/dist/utilities/initPage/types.d.ts +2 -1
  124. package/dist/utilities/initPage/types.d.ts.map +1 -1
  125. package/dist/utilities/initPage/types.js.map +1 -1
  126. package/dist/utilities/mergeHeaders.d.ts +1 -1
  127. package/dist/utilities/mergeHeaders.d.ts.map +1 -1
  128. package/dist/utilities/mergeHeaders.js +7 -33
  129. package/dist/utilities/mergeHeaders.js.map +1 -1
  130. package/dist/utilities/meta.d.ts +2 -2
  131. package/dist/utilities/meta.d.ts.map +1 -1
  132. package/dist/utilities/meta.js +3 -5
  133. package/dist/utilities/meta.js.map +1 -1
  134. package/dist/views/API/LocaleSelector/index.d.ts +2 -2
  135. package/dist/views/API/LocaleSelector/index.d.ts.map +1 -1
  136. package/dist/views/API/LocaleSelector/index.js +7 -5
  137. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  138. package/dist/views/API/index.client.d.ts.map +1 -1
  139. package/dist/views/API/index.client.js +39 -33
  140. package/dist/views/API/index.client.js.map +1 -1
  141. package/dist/views/API/index.d.ts +2 -2
  142. package/dist/views/API/index.d.ts.map +1 -1
  143. package/dist/views/API/index.js.map +1 -1
  144. package/dist/views/API/index.scss +1 -2
  145. package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
  146. package/dist/views/Account/ToggleTheme/index.js +18 -16
  147. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  148. package/dist/views/Account/index.client.d.ts +3 -0
  149. package/dist/views/Account/index.client.d.ts.map +1 -0
  150. package/dist/views/Account/index.client.js +21 -0
  151. package/dist/views/Account/index.client.js.map +1 -0
  152. package/dist/views/Account/index.d.ts.map +1 -1
  153. package/dist/views/Account/index.js +38 -45
  154. package/dist/views/Account/index.js.map +1 -1
  155. package/dist/views/CreateFirstUser/index.client.d.ts +2 -1
  156. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  157. package/dist/views/CreateFirstUser/index.client.js +22 -20
  158. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  159. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  160. package/dist/views/CreateFirstUser/index.js +11 -29
  161. package/dist/views/CreateFirstUser/index.js.map +1 -1
  162. package/dist/views/CreateFirstUser/index.scss +4 -0
  163. package/dist/views/Dashboard/Default/index.d.ts +2 -2
  164. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  165. package/dist/views/Dashboard/Default/index.js +33 -30
  166. package/dist/views/Dashboard/Default/index.js.map +1 -1
  167. package/dist/views/Dashboard/Default/index.scss +11 -7
  168. package/dist/views/Dashboard/index.d.ts.map +1 -1
  169. package/dist/views/Dashboard/index.js +26 -30
  170. package/dist/views/Dashboard/index.js.map +1 -1
  171. package/dist/views/Document/getCustomViewByKey.d.ts.map +1 -1
  172. package/dist/views/Document/getCustomViewByKey.js +1 -2
  173. package/dist/views/Document/getCustomViewByKey.js.map +1 -1
  174. package/dist/views/Document/getCustomViewByRoute.js +2 -2
  175. package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
  176. package/dist/views/Document/getDocumentData.d.ts +1 -0
  177. package/dist/views/Document/getDocumentData.d.ts.map +1 -1
  178. package/dist/views/Document/getDocumentData.js +4 -3
  179. package/dist/views/Document/getDocumentData.js.map +1 -1
  180. package/dist/views/Document/getMetaBySegment.d.ts +2 -2
  181. package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
  182. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  183. package/dist/views/Document/getViewsFromConfig.d.ts +9 -4
  184. package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
  185. package/dist/views/Document/getViewsFromConfig.js +125 -49
  186. package/dist/views/Document/getViewsFromConfig.js.map +1 -1
  187. package/dist/views/Document/index.d.ts.map +1 -1
  188. package/dist/views/Document/index.js +39 -48
  189. package/dist/views/Document/index.js.map +1 -1
  190. package/dist/views/Edit/Default/Auth/APIKey.d.ts +2 -2
  191. package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
  192. package/dist/views/Edit/Default/Auth/APIKey.js +35 -7
  193. package/dist/views/Edit/Default/Auth/APIKey.js.map +1 -1
  194. package/dist/views/Edit/Default/Auth/index.d.ts.map +1 -1
  195. package/dist/views/Edit/Default/Auth/index.js +93 -46
  196. package/dist/views/Edit/Default/Auth/index.js.map +1 -1
  197. package/dist/views/Edit/Default/Auth/index.scss +17 -2
  198. package/dist/views/Edit/Default/Auth/types.d.ts +4 -1
  199. package/dist/views/Edit/Default/Auth/types.d.ts.map +1 -1
  200. package/dist/views/Edit/Default/Auth/types.js.map +1 -1
  201. package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts.map +1 -1
  202. package/dist/views/Edit/Default/SetDocumentStepNav/index.js +15 -5
  203. package/dist/views/Edit/Default/SetDocumentStepNav/index.js.map +1 -1
  204. package/dist/views/Edit/Default/index.d.ts.map +1 -1
  205. package/dist/views/Edit/Default/index.js +42 -38
  206. package/dist/views/Edit/Default/index.js.map +1 -1
  207. package/dist/views/Edit/Default/index.scss +2 -2
  208. package/dist/views/Edit/index.client.d.ts.map +1 -1
  209. package/dist/views/Edit/index.client.js +11 -6
  210. package/dist/views/Edit/index.client.js.map +1 -1
  211. package/dist/views/Edit/index.d.ts +2 -2
  212. package/dist/views/Edit/index.d.ts.map +1 -1
  213. package/dist/views/Edit/index.js.map +1 -1
  214. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  215. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +11 -7
  216. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  217. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  218. package/dist/views/ForgotPassword/index.js +12 -4
  219. package/dist/views/ForgotPassword/index.js.map +1 -1
  220. package/dist/views/List/Default/index.d.ts.map +1 -1
  221. package/dist/views/List/Default/index.js +52 -43
  222. package/dist/views/List/Default/index.js.map +1 -1
  223. package/dist/views/List/Default/index.scss +7 -17
  224. package/dist/views/List/index.d.ts.map +1 -1
  225. package/dist/views/List/index.js +72 -46
  226. package/dist/views/List/index.js.map +1 -1
  227. package/dist/views/List/meta.d.ts +2 -2
  228. package/dist/views/List/meta.d.ts.map +1 -1
  229. package/dist/views/List/meta.js +1 -1
  230. package/dist/views/List/meta.js.map +1 -1
  231. package/dist/views/LivePreview/Context/context.d.ts +1 -1
  232. package/dist/views/LivePreview/Context/context.d.ts.map +1 -1
  233. package/dist/views/LivePreview/Context/context.js.map +1 -1
  234. package/dist/views/LivePreview/Context/index.d.ts +3 -3
  235. package/dist/views/LivePreview/Context/index.d.ts.map +1 -1
  236. package/dist/views/LivePreview/Context/index.js.map +1 -1
  237. package/dist/views/LivePreview/Preview/index.js +1 -1
  238. package/dist/views/LivePreview/Preview/index.js.map +1 -1
  239. package/dist/views/LivePreview/Toolbar/index.d.ts +2 -2
  240. package/dist/views/LivePreview/Toolbar/index.d.ts.map +1 -1
  241. package/dist/views/LivePreview/Toolbar/index.js.map +1 -1
  242. package/dist/views/LivePreview/index.client.d.ts +3 -3
  243. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  244. package/dist/views/LivePreview/index.client.js +84 -93
  245. package/dist/views/LivePreview/index.client.js.map +1 -1
  246. package/dist/views/LivePreview/index.d.ts +2 -2
  247. package/dist/views/LivePreview/index.d.ts.map +1 -1
  248. package/dist/views/LivePreview/index.js.map +1 -1
  249. package/dist/views/LivePreview/usePopupWindow.d.ts +2 -1
  250. package/dist/views/LivePreview/usePopupWindow.d.ts.map +1 -1
  251. package/dist/views/LivePreview/usePopupWindow.js +1 -1
  252. package/dist/views/LivePreview/usePopupWindow.js.map +1 -1
  253. package/dist/views/Login/LoginField/index.d.ts +9 -0
  254. package/dist/views/Login/LoginField/index.d.ts.map +1 -0
  255. package/dist/views/Login/LoginField/index.js +49 -0
  256. package/dist/views/Login/LoginField/index.js.map +1 -0
  257. package/dist/views/Login/LoginForm/index.d.ts +3 -0
  258. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  259. package/dist/views/Login/LoginForm/index.js +35 -74
  260. package/dist/views/Login/LoginForm/index.js.map +1 -1
  261. package/dist/views/Login/index.d.ts.map +1 -1
  262. package/dist/views/Login/index.js +28 -27
  263. package/dist/views/Login/index.js.map +1 -1
  264. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  265. package/dist/views/Logout/LogoutClient.js +7 -2
  266. package/dist/views/Logout/LogoutClient.js.map +1 -1
  267. package/dist/views/Logout/index.d.ts +2 -2
  268. package/dist/views/Logout/index.d.ts.map +1 -1
  269. package/dist/views/Logout/index.js +2 -2
  270. package/dist/views/Logout/index.js.map +1 -1
  271. package/dist/views/NotFound/index.client.d.ts.map +1 -1
  272. package/dist/views/NotFound/index.client.js +3 -2
  273. package/dist/views/NotFound/index.client.js.map +1 -1
  274. package/dist/views/NotFound/index.d.ts +4 -3
  275. package/dist/views/NotFound/index.d.ts.map +1 -1
  276. package/dist/views/NotFound/index.js +19 -23
  277. package/dist/views/NotFound/index.js.map +1 -1
  278. package/dist/views/NotFound/meta.d.ts +2 -2
  279. package/dist/views/NotFound/meta.d.ts.map +1 -1
  280. package/dist/views/NotFound/meta.js.map +1 -1
  281. package/dist/views/ResetPassword/index.client.d.ts +1 -1
  282. package/dist/views/ResetPassword/index.client.d.ts.map +1 -1
  283. package/dist/views/ResetPassword/index.client.js +23 -32
  284. package/dist/views/ResetPassword/index.client.js.map +1 -1
  285. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  286. package/dist/views/ResetPassword/index.js +7 -3
  287. package/dist/views/ResetPassword/index.js.map +1 -1
  288. package/dist/views/Root/getCustomViewByRoute.d.ts +3 -2
  289. package/dist/views/Root/getCustomViewByRoute.d.ts.map +1 -1
  290. package/dist/views/Root/getCustomViewByRoute.js +13 -10
  291. package/dist/views/Root/getCustomViewByRoute.js.map +1 -1
  292. package/dist/views/Root/getViewFromConfig.d.ts +10 -4
  293. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
  294. package/dist/views/Root/getViewFromConfig.js +31 -10
  295. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  296. package/dist/views/Root/index.d.ts +8 -7
  297. package/dist/views/Root/index.d.ts.map +1 -1
  298. package/dist/views/Root/index.js +27 -13
  299. package/dist/views/Root/index.js.map +1 -1
  300. package/dist/views/Unauthorized/index.d.ts +2 -2
  301. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  302. package/dist/views/Unauthorized/index.js +1 -0
  303. package/dist/views/Unauthorized/index.js.map +1 -1
  304. package/dist/views/Verify/index.d.ts.map +1 -1
  305. package/dist/views/Verify/index.js +9 -2
  306. package/dist/views/Verify/index.js.map +1 -1
  307. package/dist/views/Version/Default/SetStepNav.d.ts +8 -10
  308. package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -1
  309. package/dist/views/Version/Default/SetStepNav.js +34 -19
  310. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  311. package/dist/views/Version/Default/index.d.ts.map +1 -1
  312. package/dist/views/Version/Default/index.js +25 -30
  313. package/dist/views/Version/Default/index.js.map +1 -1
  314. package/dist/views/Version/Default/types.d.ts +8 -8
  315. package/dist/views/Version/Default/types.d.ts.map +1 -1
  316. package/dist/views/Version/Default/types.js.map +1 -1
  317. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts +2 -2
  318. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -1
  319. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +20 -20
  320. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  321. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.d.ts +2 -2
  322. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.d.ts.map +1 -1
  323. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js +4 -4
  324. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js.map +1 -1
  325. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts +3 -2
  326. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
  327. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +44 -24
  328. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  329. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts +3 -6
  330. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
  331. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +1 -1
  332. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  333. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +3 -5
  334. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
  335. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +2 -2
  336. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  337. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts +3 -2
  338. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -1
  339. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +1 -1
  340. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  341. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +21 -28
  342. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
  343. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +4 -3
  344. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  345. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts +15 -16
  346. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts.map +1 -1
  347. package/dist/views/Version/RenderFieldsToDiff/fields/types.js.map +1 -1
  348. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  349. package/dist/views/Version/RenderFieldsToDiff/index.js +12 -8
  350. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  351. package/dist/views/Version/RenderFieldsToDiff/types.d.ts +11 -12
  352. package/dist/views/Version/RenderFieldsToDiff/types.d.ts.map +1 -1
  353. package/dist/views/Version/RenderFieldsToDiff/types.js.map +1 -1
  354. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  355. package/dist/views/Version/Restore/index.js +46 -13
  356. package/dist/views/Version/Restore/index.js.map +1 -1
  357. package/dist/views/Version/Restore/index.scss +31 -0
  358. package/dist/views/Version/Restore/types.d.ts +1 -0
  359. package/dist/views/Version/Restore/types.d.ts.map +1 -1
  360. package/dist/views/Version/Restore/types.js.map +1 -1
  361. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  362. package/dist/views/Version/SelectComparison/index.js +50 -29
  363. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  364. package/dist/views/Version/SelectComparison/index.scss +1 -1
  365. package/dist/views/Version/SelectComparison/types.d.ts +2 -1
  366. package/dist/views/Version/SelectComparison/types.d.ts.map +1 -1
  367. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  368. package/dist/views/Version/index.d.ts +2 -2
  369. package/dist/views/Version/index.d.ts.map +1 -1
  370. package/dist/views/Version/index.js +52 -46
  371. package/dist/views/Version/index.js.map +1 -1
  372. package/dist/views/Versions/buildColumns.d.ts +3 -1
  373. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  374. package/dist/views/Versions/buildColumns.js +43 -16
  375. package/dist/views/Versions/buildColumns.js.map +1 -1
  376. package/dist/views/Versions/cells/AutosaveCell/index.d.ts +7 -1
  377. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
  378. package/dist/views/Versions/cells/AutosaveCell/index.js +31 -13
  379. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  380. package/dist/views/Versions/cells/CreatedAt/index.d.ts.map +1 -1
  381. package/dist/views/Versions/cells/CreatedAt/index.js +10 -4
  382. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  383. package/dist/views/Versions/getLatestVersion.d.ts +14 -0
  384. package/dist/views/Versions/getLatestVersion.d.ts.map +1 -0
  385. package/dist/views/Versions/getLatestVersion.js +34 -0
  386. package/dist/views/Versions/getLatestVersion.js.map +1 -0
  387. package/dist/views/Versions/index.client.d.ts +4 -4
  388. package/dist/views/Versions/index.client.d.ts.map +1 -1
  389. package/dist/views/Versions/index.client.js +11 -8
  390. package/dist/views/Versions/index.client.js.map +1 -1
  391. package/dist/views/Versions/index.d.ts +2 -2
  392. package/dist/views/Versions/index.d.ts.map +1 -1
  393. package/dist/views/Versions/index.js +42 -2
  394. package/dist/views/Versions/index.js.map +1 -1
  395. package/dist/withPayload.d.ts.map +1 -1
  396. package/dist/withPayload.js +18 -11
  397. package/dist/withPayload.js.map +1 -1
  398. package/package.json +20 -26
  399. package/dist/prod/index.js +0 -62
  400. package/dist/prod/payload/payload-favicon-dark.png +0 -0
  401. package/dist/prod/payload/payload-favicon-light.png +0 -0
  402. package/dist/prod/payload/static-og-image.png +0 -0
  403. package/dist/views/Version/shared.d.ts +0 -9
  404. package/dist/views/Version/shared.d.ts.map +0 -1
  405. package/dist/views/Version/shared.js +0 -10
  406. package/dist/views/Version/shared.js.map +0 -1
  407. package/dist/webpackEntry.d.ts +0 -5
  408. package/dist/webpackEntry.d.ts.map +0 -1
  409. package/dist/webpackEntry.js +0 -6
  410. package/dist/webpackEntry.js.map +0 -1
@@ -15,17 +15,10 @@
15
15
  font-weight: 500;
16
16
  }
17
17
 
18
- %jumbo {
19
- font-size: base(2.5);
20
- line-height: 1;
21
- margin: 0 0 base(2);
22
- }
23
-
24
18
  %h1 {
25
19
  margin: 0 0 base(1);
26
- font-size: base(2);
27
- line-height: 1.15;
28
- letter-spacing: -1px;
20
+ font-size: base(1.6);
21
+ line-height: base(1.8);
29
22
 
30
23
  @include small-break {
31
24
  letter-spacing: -0.5px;
@@ -35,9 +28,8 @@
35
28
 
36
29
  %h2 {
37
30
  margin: 0 0 base(1);
38
- font-size: base(1.25);
39
- line-height: 1.15;
40
- letter-spacing: -0.5px;
31
+ font-size: base(1.3);
32
+ line-height: base(1.6);
41
33
 
42
34
  @include small-break {
43
35
  font-size: base(0.85);
@@ -46,9 +38,8 @@
46
38
 
47
39
  %h3 {
48
40
  margin: 0 0 base(1);
49
- font-size: base(0.925);
50
- line-height: 1.25;
51
- letter-spacing: -0.5px;
41
+ font-size: base(1);
42
+ line-height: base(1.2);
52
43
 
53
44
  @include small-break {
54
45
  font-size: base(0.65);
@@ -58,27 +49,27 @@
58
49
 
59
50
  %h4 {
60
51
  margin: 0 0 $baseline;
61
- font-size: base(0.75);
62
- line-height: 1.5;
52
+ font-size: base(0.8);
53
+ line-height: base(1);
63
54
  letter-spacing: -0.375px;
64
55
  }
65
56
 
66
57
  %h5 {
67
58
  margin: 0;
68
- font-size: base(0.5625);
69
- line-height: 1.5;
59
+ font-size: base(0.65);
60
+ line-height: base(0.8);
70
61
  }
71
62
 
72
63
  %h6 {
73
64
  margin: 0;
74
- font-size: base(0.5);
75
- line-height: 1.5;
65
+ font-size: base(0.6);
66
+ line-height: base(0.8);
76
67
  }
77
68
 
78
69
  %small {
79
70
  margin: 0;
80
- font-size: 11px;
81
- line-height: 1.5;
71
+ font-size: 12px;
72
+ line-height: 20px;
82
73
  }
83
74
 
84
75
  /////////////////////////////
@@ -105,6 +96,7 @@
105
96
  font-size: $baseline-body-size;
106
97
  line-height: $baseline-px;
107
98
  font-weight: normal;
99
+ font-family: var(--font-body);
108
100
  }
109
101
 
110
102
  %code {
@@ -13,7 +13,7 @@ $breakpoint-l-width: 1440px !default;
13
13
  // BASELINE GRID
14
14
  //////////////////////////////
15
15
 
16
- $baseline-px: 25px !default;
16
+ $baseline-px: 20px !default;
17
17
  $baseline-body-size: 13px !default;
18
18
  $baseline: math.div($baseline-px, $baseline-body-size) + rem;
19
19
 
@@ -40,7 +40,7 @@ $color-purple: #f3ddf3 !default;
40
40
 
41
41
  $style-radius-s: 3px !default;
42
42
  $style-radius-m: 4px !default;
43
- $style-radius-l: 9px !default;
43
+ $style-radius-l: 8px !default;
44
44
  $style-stroke-width: 1px !default;
45
45
 
46
46
  $style-stroke-width-s: 1px !default;
@@ -50,8 +50,8 @@ $style-stroke-width-m: 2px !default;
50
50
  // MISC
51
51
  //////////////////////////////
52
52
 
53
- $top-header-offset: calc(var(--base) - 1px);
54
- $top-header-offset-m: calc(var(--base) * 3);
53
+ $top-header-offset: calc(base(1) - 1px);
54
+ $top-header-offset-m: base(3);
55
55
  $focus-box-shadow: 0 0 0 $style-stroke-width-m var(--theme-success-500);
56
56
 
57
57
  //////////////////////////////
@@ -59,41 +59,19 @@ $focus-box-shadow: 0 0 0 $style-stroke-width-m var(--theme-success-500);
59
59
  //////////////////////////////
60
60
 
61
61
  @mixin shadow-sm {
62
- box-shadow:
63
- 0 2px 3px 0 rgba(0, 2, 4, 0.05),
64
- 0 10px 4px -8px rgba(0, 2, 4, 0.02);
62
+ box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.1);
65
63
  }
66
64
 
67
65
  @mixin shadow-m {
68
- box-shadow:
69
- 0 0 30px 0 rgb(0 2 4 / 12%),
70
- 0 30px 25px -8px rgb(0 2 4 / 10%);
66
+ box-shadow: 0 4px 8px -3px rgba(0, 0, 0, 0.1);
71
67
  }
72
68
 
73
69
  @mixin shadow-lg {
74
- box-shadow:
75
- 0 20px 35px -10px rgba(0, 2, 4, 0.2),
76
- 0 6px 4px -4px rgba(0, 2, 4, 0.02);
70
+ box-shadow: 0 -2px 16px -2px rgba(0, 0, 0, 0.2);
77
71
  }
78
72
 
79
73
  @mixin shadow-lg-top {
80
- box-shadow:
81
- 0 -20px 35px -10px rgba(0, 2, 4, 0.2),
82
- 0 -6px 4px -4px rgba(0, 2, 4, 0.02);
83
- }
84
-
85
- @mixin shadow {
86
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.07);
87
-
88
- &:hover {
89
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
90
- }
91
- }
92
-
93
- @mixin inputShadowActive {
94
- box-shadow:
95
- 0 2px 3px 0 rgba(0, 2, 4, 0.16),
96
- 0 6px 4px -4px rgba(0, 2, 4, 0.13);
74
+ box-shadow: 0 2px 16px -2px rgba(0, 0, 0, 0.2);
97
75
  }
98
76
 
99
77
  @mixin inputShadow {
@@ -101,15 +79,7 @@ $focus-box-shadow: 0 0 0 $style-stroke-width-m var(--theme-success-500);
101
79
 
102
80
  &:not(:disabled) {
103
81
  &:hover {
104
- box-shadow:
105
- 0 2px 3px 0 rgba(0, 2, 4, 0.13),
106
- 0 6px 4px -4px rgba(0, 2, 4, 0.1);
107
- }
108
-
109
- &:active,
110
- &:focus-within,
111
- &:focus {
112
- @include inputShadowActive;
82
+ box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.2);
113
83
  }
114
84
  }
115
85
  }
@@ -147,19 +117,33 @@ $focus-box-shadow: 0 0 0 $style-stroke-width-m var(--theme-success-500);
147
117
  @include blur-bg(var(--theme-bg), 0.3);
148
118
  }
149
119
 
120
+ @mixin readOnly {
121
+ background: var(--theme-elevation-100);
122
+ color: var(--theme-elevation-400);
123
+ box-shadow: none;
124
+
125
+ &:hover {
126
+ border-color: var(--theme-elevation-150);
127
+ box-shadow: none;
128
+ }
129
+ }
130
+
150
131
  @mixin formInput() {
151
132
  @include inputShadow;
152
133
  font-family: var(--font-body);
153
134
  width: 100%;
154
135
  border: 1px solid var(--theme-elevation-150);
136
+ border-radius: var(--style-radius-s);
155
137
  background: var(--theme-input-bg);
156
138
  color: var(--theme-elevation-800);
157
- border-radius: 0;
158
139
  font-size: 1rem;
159
140
  height: base(2);
160
141
  line-height: base(1);
161
- padding: base(0.5) base(0.75);
142
+ padding: base(0.4) base(0.75);
162
143
  -webkit-appearance: none;
144
+ transition-property: border, box-shadow;
145
+ transition-duration: 100ms;
146
+ transition-timing-function: cubic-bezier(0, 0.2, 0.2, 1);
163
147
 
164
148
  &[data-rtl='true'] {
165
149
  direction: rtl;
@@ -189,12 +173,7 @@ $focus-box-shadow: 0 0 0 $style-stroke-width-m var(--theme-success-500);
189
173
  }
190
174
 
191
175
  &:disabled {
192
- background: var(--theme-elevation-200);
193
- color: var(--theme-elevation-450);
194
-
195
- &:hover {
196
- border-color: var(--theme-elevation-150);
197
- }
176
+ @include readOnly;
198
177
  }
199
178
  }
200
179
 
@@ -1,10 +1,10 @@
1
1
  import type { ServerProps, VisibleEntities } from 'payload';
2
2
  import React from 'react';
3
3
  import './index.scss';
4
- export type DefaultTemplateProps = ServerProps & {
4
+ export type DefaultTemplateProps = {
5
5
  children?: React.ReactNode;
6
6
  className?: string;
7
7
  visibleEntities: VisibleEntities;
8
- };
8
+ } & ServerProps;
9
9
  export declare const DefaultTemplate: React.FC<DefaultTemplateProps>;
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/templates/Default/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI3D,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG;IAC/C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,eAAe,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA6D1D,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/templates/Default/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI5E,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,eAAe,CAAA;CACjC,GAAG,WAAW,CAAA;AAEf,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA2D1D,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { AppHeader, EntityVisibilityProvider, NavToggler } from '@payloadcms/ui';
3
- import { RenderCustomComponent } from '@payloadcms/ui/shared';
3
+ import { RenderComponent, getCreateMappedComponent } from '@payloadcms/ui/shared';
4
4
  import React from 'react';
5
5
  import { DefaultNav } from '../../elements/Nav/index.js';
6
6
  import { NavHamburger } from './NavHamburger/index.js';
@@ -10,15 +10,19 @@ export const DefaultTemplate = ({ children, className, i18n, locale, params, pay
10
10
  const { admin: { components: { Nav: CustomNav } = {
11
11
  Nav: undefined
12
12
  } } = {} } = payload.config || {};
13
- const navProps = {
14
- i18n,
15
- locale,
16
- params,
17
- payload,
18
- permissions,
19
- searchParams,
20
- user
21
- };
13
+ const createMappedComponent = getCreateMappedComponent({
14
+ importMap: payload.importMap,
15
+ serverProps: {
16
+ i18n,
17
+ locale,
18
+ params,
19
+ payload,
20
+ permissions,
21
+ searchParams,
22
+ user
23
+ }
24
+ });
25
+ const MappedDefaultNav = createMappedComponent(CustomNav, undefined, DefaultNav, 'CustomNav');
22
26
  return /*#__PURE__*/ _jsx(EntityVisibilityProvider, {
23
27
  visibleEntities: visibleEntities,
24
28
  children: /*#__PURE__*/ _jsxs("div", {
@@ -35,19 +39,8 @@ export const DefaultTemplate = ({ children, className, i18n, locale, params, pay
35
39
  baseClass: baseClass,
36
40
  className: className,
37
41
  children: [
38
- /*#__PURE__*/ _jsx(RenderCustomComponent, {
39
- CustomComponent: CustomNav,
40
- DefaultComponent: DefaultNav,
41
- componentProps: navProps,
42
- serverOnlyProps: {
43
- i18n,
44
- locale,
45
- params,
46
- payload,
47
- permissions,
48
- searchParams,
49
- user
50
- }
42
+ /*#__PURE__*/ _jsx(RenderComponent, {
43
+ mappedComponent: MappedDefaultNav
51
44
  }),
52
45
  /*#__PURE__*/ _jsxs("div", {
53
46
  className: `${baseClass}__wrap`,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/templates/Default/index.tsx"],"sourcesContent":["import type { ServerProps, VisibleEntities } from 'payload'\n\nimport { AppHeader, EntityVisibilityProvider, NavToggler } from '@payloadcms/ui'\nimport { RenderCustomComponent } from '@payloadcms/ui/shared'\nimport React from 'react'\n\nimport { DefaultNav, type NavProps } from '../../elements/Nav/index.js'\nimport { NavHamburger } from './NavHamburger/index.js'\nimport { Wrapper } from './Wrapper/index.js'\nimport './index.scss'\n\nconst baseClass = 'template-default'\n\nexport type DefaultTemplateProps = ServerProps & {\n children?: React.ReactNode\n className?: string\n visibleEntities: VisibleEntities\n}\n\nexport const DefaultTemplate: React.FC<DefaultTemplateProps> = ({\n children,\n className,\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n visibleEntities,\n}) => {\n const {\n admin: {\n components: { Nav: CustomNav } = {\n Nav: undefined,\n },\n } = {},\n } = payload.config || {}\n\n const navProps: NavProps = {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }\n\n return (\n <EntityVisibilityProvider visibleEntities={visibleEntities}>\n <div>\n <div className={`${baseClass}__nav-toggler-wrapper`} id=\"nav-toggler\">\n <NavToggler className={`${baseClass}__nav-toggler`}>\n <NavHamburger />\n </NavToggler>\n </div>\n <Wrapper baseClass={baseClass} className={className}>\n <RenderCustomComponent\n CustomComponent={CustomNav}\n DefaultComponent={DefaultNav}\n componentProps={navProps}\n serverOnlyProps={{\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n <div className={`${baseClass}__wrap`}>\n <AppHeader />\n {children}\n </div>\n </Wrapper>\n </div>\n </EntityVisibilityProvider>\n )\n}\n"],"names":["AppHeader","EntityVisibilityProvider","NavToggler","RenderCustomComponent","React","DefaultNav","NavHamburger","Wrapper","baseClass","DefaultTemplate","children","className","i18n","locale","params","payload","permissions","searchParams","user","visibleEntities","admin","components","Nav","CustomNav","undefined","config","navProps","div","id","CustomComponent","DefaultComponent","componentProps","serverOnlyProps"],"mappings":";AAEA,SAASA,SAAS,EAAEC,wBAAwB,EAAEC,UAAU,QAAQ,iBAAgB;AAChF,SAASC,qBAAqB,QAAQ,wBAAuB;AAC7D,OAAOC,WAAW,QAAO;AAEzB,SAASC,UAAU,QAAuB,8BAA6B;AACvE,SAASC,YAAY,QAAQ,0BAAyB;AACtD,SAASC,OAAO,QAAQ,qBAAoB;AAG5C,MAAMC,YAAY;AAQlB,OAAO,MAAMC,kBAAkD,CAAC,EAC9DC,QAAQ,EACRC,SAAS,EACTC,IAAI,EACJC,MAAM,EACNC,MAAM,EACNC,OAAO,EACPC,WAAW,EACXC,YAAY,EACZC,IAAI,EACJC,eAAe,EAChB;IACC,MAAM,EACJC,OAAO,EACLC,YAAY,EAAEC,KAAKC,SAAS,EAAE,GAAG;QAC/BD,KAAKE;IACP,CAAC,EACF,GAAG,CAAC,CAAC,EACP,GAAGT,QAAQU,MAAM,IAAI,CAAC;IAEvB,MAAMC,WAAqB;QACzBd;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;IACF;IAEA,qBACE,KAACjB;QAAyBkB,iBAAiBA;kBACzC,cAAA,MAACQ;;8BACC,KAACA;oBAAIhB,WAAW,CAAC,EAAEH,UAAU,qBAAqB,CAAC;oBAAEoB,IAAG;8BACtD,cAAA,KAAC1B;wBAAWS,WAAW,CAAC,EAAEH,UAAU,aAAa,CAAC;kCAChD,cAAA,KAACF;;;8BAGL,MAACC;oBAAQC,WAAWA;oBAAWG,WAAWA;;sCACxC,KAACR;4BACC0B,iBAAiBN;4BACjBO,kBAAkBzB;4BAClB0B,gBAAgBL;4BAChBM,iBAAiB;gCACfpB;gCACAC;gCACAC;gCACAC;gCACAC;gCACAC;gCACAC;4BACF;;sCAEF,MAACS;4BAAIhB,WAAW,CAAC,EAAEH,UAAU,MAAM,CAAC;;8CAClC,KAACR;gCACAU;;;;;;;;AAMb,EAAC"}
1
+ {"version":3,"sources":["../../../src/templates/Default/index.tsx"],"sourcesContent":["import type { MappedComponent, ServerProps, VisibleEntities } from 'payload'\n\nimport { AppHeader, EntityVisibilityProvider, NavToggler } from '@payloadcms/ui'\nimport { RenderComponent, getCreateMappedComponent } from '@payloadcms/ui/shared'\nimport React from 'react'\n\nimport { DefaultNav } from '../../elements/Nav/index.js'\nimport { NavHamburger } from './NavHamburger/index.js'\nimport { Wrapper } from './Wrapper/index.js'\nimport './index.scss'\n\nconst baseClass = 'template-default'\n\nexport type DefaultTemplateProps = {\n children?: React.ReactNode\n className?: string\n visibleEntities: VisibleEntities\n} & ServerProps\n\nexport const DefaultTemplate: React.FC<DefaultTemplateProps> = ({\n children,\n className,\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n visibleEntities,\n}) => {\n const {\n admin: {\n components: { Nav: CustomNav } = {\n Nav: undefined,\n },\n } = {},\n } = payload.config || {}\n\n const createMappedComponent = getCreateMappedComponent({\n importMap: payload.importMap,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n },\n })\n\n const MappedDefaultNav: MappedComponent = createMappedComponent(\n CustomNav,\n undefined,\n DefaultNav,\n 'CustomNav',\n )\n\n return (\n <EntityVisibilityProvider visibleEntities={visibleEntities}>\n <div>\n <div className={`${baseClass}__nav-toggler-wrapper`} id=\"nav-toggler\">\n <NavToggler className={`${baseClass}__nav-toggler`}>\n <NavHamburger />\n </NavToggler>\n </div>\n <Wrapper baseClass={baseClass} className={className}>\n <RenderComponent mappedComponent={MappedDefaultNav} />\n\n <div className={`${baseClass}__wrap`}>\n <AppHeader />\n {children}\n </div>\n </Wrapper>\n </div>\n </EntityVisibilityProvider>\n )\n}\n"],"names":["AppHeader","EntityVisibilityProvider","NavToggler","RenderComponent","getCreateMappedComponent","React","DefaultNav","NavHamburger","Wrapper","baseClass","DefaultTemplate","children","className","i18n","locale","params","payload","permissions","searchParams","user","visibleEntities","admin","components","Nav","CustomNav","undefined","config","createMappedComponent","importMap","serverProps","MappedDefaultNav","div","id","mappedComponent"],"mappings":";AAEA,SAASA,SAAS,EAAEC,wBAAwB,EAAEC,UAAU,QAAQ,iBAAgB;AAChF,SAASC,eAAe,EAAEC,wBAAwB,QAAQ,wBAAuB;AACjF,OAAOC,WAAW,QAAO;AAEzB,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,YAAY,QAAQ,0BAAyB;AACtD,SAASC,OAAO,QAAQ,qBAAoB;AAG5C,MAAMC,YAAY;AAQlB,OAAO,MAAMC,kBAAkD,CAAC,EAC9DC,QAAQ,EACRC,SAAS,EACTC,IAAI,EACJC,MAAM,EACNC,MAAM,EACNC,OAAO,EACPC,WAAW,EACXC,YAAY,EACZC,IAAI,EACJC,eAAe,EAChB;IACC,MAAM,EACJC,OAAO,EACLC,YAAY,EAAEC,KAAKC,SAAS,EAAE,GAAG;QAC/BD,KAAKE;IACP,CAAC,EACF,GAAG,CAAC,CAAC,EACP,GAAGT,QAAQU,MAAM,IAAI,CAAC;IAEvB,MAAMC,wBAAwBvB,yBAAyB;QACrDwB,WAAWZ,QAAQY,SAAS;QAC5BC,aAAa;YACXhB;YACAC;YACAC;YACAC;YACAC;YACAC;YACAC;QACF;IACF;IAEA,MAAMW,mBAAoCH,sBACxCH,WACAC,WACAnB,YACA;IAGF,qBACE,KAACL;QAAyBmB,iBAAiBA;kBACzC,cAAA,MAACW;;8BACC,KAACA;oBAAInB,WAAW,CAAC,EAAEH,UAAU,qBAAqB,CAAC;oBAAEuB,IAAG;8BACtD,cAAA,KAAC9B;wBAAWU,WAAW,CAAC,EAAEH,UAAU,aAAa,CAAC;kCAChD,cAAA,KAACF;;;8BAGL,MAACC;oBAAQC,WAAWA;oBAAWG,WAAWA;;sCACxC,KAACT;4BAAgB8B,iBAAiBH;;sCAElC,MAACC;4BAAInB,WAAW,CAAC,EAAEH,UAAU,MAAM,CAAC;;8CAClC,KAACT;gCACAW;;;;;;;;AAMb,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"createPayloadRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/createPayloadRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkC,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAW9F,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,MAAM,CAAC,EAAE;QACP,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;IACD,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,oBAAoB,gDAI9B,IAAI,KAAG,OAAO,CAAC,cAAc,CAuF/B,CAAA"}
1
+ {"version":3,"file":"createPayloadRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/createPayloadRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkC,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAW9F,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,MAAM,CAAC,EAAE;QACP,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;IACD,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,oBAAoB,gDAI9B,IAAI,KAAG,OAAO,CAAC,cAAc,CA4F/B,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { initI18n } from '@payloadcms/translations';
2
2
  import { executeAuthStrategies, getDataLoader, parseCookies } from 'payload';
3
- import qs from 'qs';
3
+ import * as qs from 'qs-esm';
4
4
  import { URL } from 'url';
5
5
  import { sanitizeLocales } from './addLocalesToRequest.js';
6
6
  import { getPayloadHMR } from './getPayloadHMR.js';
@@ -26,6 +26,13 @@ export const createPayloadRequest = async ({ config: configPromise, params, requ
26
26
  });
27
27
  let locale;
28
28
  let fallbackLocale;
29
+ const overrideHttpMethod = request.headers.get('X-HTTP-Method-Override');
30
+ const queryToParse = overrideHttpMethod === 'GET' ? await request.text() : urlProperties.search;
31
+ const query = queryToParse ? qs.parse(queryToParse, {
32
+ arrayLimit: 1000,
33
+ depth: 10,
34
+ ignoreQueryPrefix: true
35
+ }) : {};
29
36
  if (config.localization) {
30
37
  const locales = sanitizeLocales({
31
38
  fallbackLocale: searchParams.get('fallback-locale'),
@@ -34,14 +41,10 @@ export const createPayloadRequest = async ({ config: configPromise, params, requ
34
41
  });
35
42
  locale = locales.locale;
36
43
  fallbackLocale = locales.fallbackLocale;
44
+ // Override if query params are present, in order to respect HTTP method override
45
+ if (query.locale) locale = query.locale;
46
+ if (query?.['fallback-locale']) fallbackLocale = query['fallback-locale'];
37
47
  }
38
- const overrideHttpMethod = request.headers.get('X-HTTP-Method-Override');
39
- const queryToParse = overrideHttpMethod === 'GET' ? await request.text() : urlProperties.search;
40
- const query = queryToParse ? qs.parse(queryToParse, {
41
- arrayLimit: 1000,
42
- depth: 10,
43
- ignoreQueryPrefix: true
44
- }) : {};
45
48
  const customRequest = {
46
49
  context: {},
47
50
  fallbackLocale,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/createPayloadRequest.ts"],"sourcesContent":["import type { CustomPayloadRequestProperties, PayloadRequest, SanitizedConfig } from 'payload'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { executeAuthStrategies, getDataLoader, parseCookies } from 'payload'\nimport qs from 'qs'\nimport { URL } from 'url'\n\nimport { sanitizeLocales } from './addLocalesToRequest.js'\nimport { getPayloadHMR } from './getPayloadHMR.js'\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\ntype Args = {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: {\n collection: string\n }\n request: Request\n}\n\nexport const createPayloadRequest = async ({\n config: configPromise,\n params,\n request,\n}: Args): Promise<PayloadRequest> => {\n const cookies = parseCookies(request.headers)\n const payload = await getPayloadHMR({ config: configPromise })\n\n const { config } = payload\n\n const urlProperties = new URL(request.url)\n const { pathname, searchParams } = urlProperties\n\n const isGraphQL =\n !config.graphQL.disable && pathname === `${config.routes.api}${config.routes.graphQL}`\n\n const language = getRequestLanguage({\n config,\n cookies,\n headers: request.headers,\n })\n\n const i18n = await initI18n({\n config: config.i18n,\n context: 'api',\n language,\n })\n\n let locale\n let fallbackLocale\n if (config.localization) {\n const locales = sanitizeLocales({\n fallbackLocale: searchParams.get('fallback-locale'),\n locale: searchParams.get('locale'),\n localization: payload.config.localization,\n })\n locale = locales.locale\n fallbackLocale = locales.fallbackLocale\n }\n\n const overrideHttpMethod = request.headers.get('X-HTTP-Method-Override')\n const queryToParse = overrideHttpMethod === 'GET' ? await request.text() : urlProperties.search\n\n const query = queryToParse\n ? qs.parse(queryToParse, {\n arrayLimit: 1000,\n depth: 10,\n ignoreQueryPrefix: true,\n })\n : {}\n\n const customRequest: CustomPayloadRequestProperties = {\n context: {},\n fallbackLocale,\n hash: urlProperties.hash,\n host: urlProperties.host,\n href: urlProperties.href,\n i18n,\n locale,\n origin: urlProperties.origin,\n pathname: urlProperties.pathname,\n payload,\n payloadAPI: isGraphQL ? 'GraphQL' : 'REST',\n payloadDataLoader: undefined,\n payloadUploadSizes: {},\n port: urlProperties.port,\n protocol: urlProperties.protocol,\n query,\n routeParams: params || {},\n search: urlProperties.search,\n searchParams: urlProperties.searchParams,\n t: i18n.t,\n transactionID: undefined,\n user: null,\n }\n\n const req: PayloadRequest = Object.assign(request, customRequest)\n\n req.payloadDataLoader = getDataLoader(req)\n\n const { responseHeaders, user } = await executeAuthStrategies({\n headers: req.headers,\n isGraphQL,\n payload,\n })\n\n req.user = user\n\n if (responseHeaders) req.responseHeaders = responseHeaders\n\n return req\n}\n"],"names":["initI18n","executeAuthStrategies","getDataLoader","parseCookies","qs","URL","sanitizeLocales","getPayloadHMR","getRequestLanguage","createPayloadRequest","config","configPromise","params","request","cookies","headers","payload","urlProperties","url","pathname","searchParams","isGraphQL","graphQL","disable","routes","api","language","i18n","context","locale","fallbackLocale","localization","locales","get","overrideHttpMethod","queryToParse","text","search","query","parse","arrayLimit","depth","ignoreQueryPrefix","customRequest","hash","host","href","origin","payloadAPI","payloadDataLoader","undefined","payloadUploadSizes","port","protocol","routeParams","t","transactionID","user","req","Object","assign","responseHeaders"],"mappings":"AAEA,SAASA,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,qBAAqB,EAAEC,aAAa,EAAEC,YAAY,QAAQ,UAAS;AAC5E,OAAOC,QAAQ,KAAI;AACnB,SAASC,GAAG,QAAQ,MAAK;AAEzB,SAASC,eAAe,QAAQ,2BAA0B;AAC1D,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,kBAAkB,QAAQ,0BAAyB;AAU5D,OAAO,MAAMC,uBAAuB,OAAO,EACzCC,QAAQC,aAAa,EACrBC,MAAM,EACNC,OAAO,EACF;IACL,MAAMC,UAAUX,aAAaU,QAAQE,OAAO;IAC5C,MAAMC,UAAU,MAAMT,cAAc;QAAEG,QAAQC;IAAc;IAE5D,MAAM,EAAED,MAAM,EAAE,GAAGM;IAEnB,MAAMC,gBAAgB,IAAIZ,IAAIQ,QAAQK,GAAG;IACzC,MAAM,EAAEC,QAAQ,EAAEC,YAAY,EAAE,GAAGH;IAEnC,MAAMI,YACJ,CAACX,OAAOY,OAAO,CAACC,OAAO,IAAIJ,aAAa,CAAC,EAAET,OAAOc,MAAM,CAACC,GAAG,CAAC,EAAEf,OAAOc,MAAM,CAACF,OAAO,CAAC,CAAC;IAExF,MAAMI,WAAWlB,mBAAmB;QAClCE;QACAI;QACAC,SAASF,QAAQE,OAAO;IAC1B;IAEA,MAAMY,OAAO,MAAM3B,SAAS;QAC1BU,QAAQA,OAAOiB,IAAI;QACnBC,SAAS;QACTF;IACF;IAEA,IAAIG;IACJ,IAAIC;IACJ,IAAIpB,OAAOqB,YAAY,EAAE;QACvB,MAAMC,UAAU1B,gBAAgB;YAC9BwB,gBAAgBV,aAAaa,GAAG,CAAC;YACjCJ,QAAQT,aAAaa,GAAG,CAAC;YACzBF,cAAcf,QAAQN,MAAM,CAACqB,YAAY;QAC3C;QACAF,SAASG,QAAQH,MAAM;QACvBC,iBAAiBE,QAAQF,cAAc;IACzC;IAEA,MAAMI,qBAAqBrB,QAAQE,OAAO,CAACkB,GAAG,CAAC;IAC/C,MAAME,eAAeD,uBAAuB,QAAQ,MAAMrB,QAAQuB,IAAI,KAAKnB,cAAcoB,MAAM;IAE/F,MAAMC,QAAQH,eACV/B,GAAGmC,KAAK,CAACJ,cAAc;QACrBK,YAAY;QACZC,OAAO;QACPC,mBAAmB;IACrB,KACA,CAAC;IAEL,MAAMC,gBAAgD;QACpDf,SAAS,CAAC;QACVE;QACAc,MAAM3B,cAAc2B,IAAI;QACxBC,MAAM5B,cAAc4B,IAAI;QACxBC,MAAM7B,cAAc6B,IAAI;QACxBnB;QACAE;QACAkB,QAAQ9B,cAAc8B,MAAM;QAC5B5B,UAAUF,cAAcE,QAAQ;QAChCH;QACAgC,YAAY3B,YAAY,YAAY;QACpC4B,mBAAmBC;QACnBC,oBAAoB,CAAC;QACrBC,MAAMnC,cAAcmC,IAAI;QACxBC,UAAUpC,cAAcoC,QAAQ;QAChCf;QACAgB,aAAa1C,UAAU,CAAC;QACxByB,QAAQpB,cAAcoB,MAAM;QAC5BjB,cAAcH,cAAcG,YAAY;QACxCmC,GAAG5B,KAAK4B,CAAC;QACTC,eAAeN;QACfO,MAAM;IACR;IAEA,MAAMC,MAAsBC,OAAOC,MAAM,CAAC/C,SAAS8B;IAEnDe,IAAIT,iBAAiB,GAAG/C,cAAcwD;IAEtC,MAAM,EAAEG,eAAe,EAAEJ,IAAI,EAAE,GAAG,MAAMxD,sBAAsB;QAC5Dc,SAAS2C,IAAI3C,OAAO;QACpBM;QACAL;IACF;IAEA0C,IAAID,IAAI,GAAGA;IAEX,IAAII,iBAAiBH,IAAIG,eAAe,GAAGA;IAE3C,OAAOH;AACT,EAAC"}
1
+ {"version":3,"sources":["../../src/utilities/createPayloadRequest.ts"],"sourcesContent":["import type { CustomPayloadRequestProperties, PayloadRequest, SanitizedConfig } from 'payload'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { executeAuthStrategies, getDataLoader, parseCookies } from 'payload'\nimport * as qs from 'qs-esm'\nimport { URL } from 'url'\n\nimport { sanitizeLocales } from './addLocalesToRequest.js'\nimport { getPayloadHMR } from './getPayloadHMR.js'\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\ntype Args = {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: {\n collection: string\n }\n request: Request\n}\n\nexport const createPayloadRequest = async ({\n config: configPromise,\n params,\n request,\n}: Args): Promise<PayloadRequest> => {\n const cookies = parseCookies(request.headers)\n const payload = await getPayloadHMR({ config: configPromise })\n\n const { config } = payload\n\n const urlProperties = new URL(request.url)\n const { pathname, searchParams } = urlProperties\n\n const isGraphQL =\n !config.graphQL.disable && pathname === `${config.routes.api}${config.routes.graphQL}`\n\n const language = getRequestLanguage({\n config,\n cookies,\n headers: request.headers,\n })\n\n const i18n = await initI18n({\n config: config.i18n,\n context: 'api',\n language,\n })\n\n let locale\n let fallbackLocale\n\n const overrideHttpMethod = request.headers.get('X-HTTP-Method-Override')\n const queryToParse = overrideHttpMethod === 'GET' ? await request.text() : urlProperties.search\n\n const query = queryToParse\n ? qs.parse(queryToParse, {\n arrayLimit: 1000,\n depth: 10,\n ignoreQueryPrefix: true,\n })\n : {}\n\n if (config.localization) {\n const locales = sanitizeLocales({\n fallbackLocale: searchParams.get('fallback-locale'),\n locale: searchParams.get('locale'),\n localization: payload.config.localization,\n })\n locale = locales.locale\n fallbackLocale = locales.fallbackLocale\n\n // Override if query params are present, in order to respect HTTP method override\n if (query.locale) locale = query.locale\n if (query?.['fallback-locale']) fallbackLocale = query['fallback-locale']\n }\n\n const customRequest: CustomPayloadRequestProperties = {\n context: {},\n fallbackLocale,\n hash: urlProperties.hash,\n host: urlProperties.host,\n href: urlProperties.href,\n i18n,\n locale,\n origin: urlProperties.origin,\n pathname: urlProperties.pathname,\n payload,\n payloadAPI: isGraphQL ? 'GraphQL' : 'REST',\n payloadDataLoader: undefined,\n payloadUploadSizes: {},\n port: urlProperties.port,\n protocol: urlProperties.protocol,\n query,\n routeParams: params || {},\n search: urlProperties.search,\n searchParams: urlProperties.searchParams,\n t: i18n.t,\n transactionID: undefined,\n user: null,\n }\n\n const req: PayloadRequest = Object.assign(request, customRequest)\n\n req.payloadDataLoader = getDataLoader(req)\n\n const { responseHeaders, user } = await executeAuthStrategies({\n headers: req.headers,\n isGraphQL,\n payload,\n })\n\n req.user = user\n\n if (responseHeaders) req.responseHeaders = responseHeaders\n\n return req\n}\n"],"names":["initI18n","executeAuthStrategies","getDataLoader","parseCookies","qs","URL","sanitizeLocales","getPayloadHMR","getRequestLanguage","createPayloadRequest","config","configPromise","params","request","cookies","headers","payload","urlProperties","url","pathname","searchParams","isGraphQL","graphQL","disable","routes","api","language","i18n","context","locale","fallbackLocale","overrideHttpMethod","get","queryToParse","text","search","query","parse","arrayLimit","depth","ignoreQueryPrefix","localization","locales","customRequest","hash","host","href","origin","payloadAPI","payloadDataLoader","undefined","payloadUploadSizes","port","protocol","routeParams","t","transactionID","user","req","Object","assign","responseHeaders"],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import type { I18n } from '@payloadcms/translations';
1
+ import type { ClientTranslationsObject, I18nClient } from '@payloadcms/translations';
2
2
  import type { SanitizedConfig } from 'payload';
3
3
  /**
4
4
  * In the context of Next.js, this function initializes the i18n object for the current request.
5
5
  *
6
6
  * It must be called on the server side, and within the lifecycle of a request since it relies on the request headers and cookies.
7
7
  */
8
- export declare const getNextRequestI18n: ({ config }: {
8
+ export declare const getNextRequestI18n: <TAdditionalTranslations = {}, TAdditionalClientTranslationKeys extends string = never>({ config, }: {
9
9
  config: SanitizedConfig;
10
- }) => Promise<I18n>;
10
+ }) => Promise<[TAdditionalClientTranslationKeys] extends [never] ? I18nClient : TAdditionalTranslations extends object ? I18nClient<TAdditionalTranslations, TAdditionalClientTranslationKeys> : I18nClient<ClientTranslationsObject, TAdditionalClientTranslationKeys>>;
11
11
  //# sourceMappingURL=getNextRequestI18n.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getNextRequestI18n.d.ts","sourceRoot":"","sources":["../../src/utilities/getNextRequestI18n.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAO9C;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,eAAsB;IAAE,MAAM,EAAE,eAAe,CAAA;CAAE,KAAG,OAAO,CAAC,IAAI,CAK3F,CAAA"}
1
+ {"version":3,"file":"getNextRequestI18n.d.ts","sourceRoot":"","sources":["../../src/utilities/getNextRequestI18n.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EAIxB,UAAU,EACX,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAO9C;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,uBAAuB,OACvB,gCAAgC,SAAS,MAAM,uBAG9C;IACD,MAAM,EAAE,eAAe,CAAA;CACxB,KAAG,OAAO,CACT,CAAC,gCAAgC,CAAC,SAAS,CAAC,KAAK,CAAC,GAC9C,UAAU,GACV,uBAAuB,SAAS,MAAM,GACpC,UAAU,CAAC,uBAAuB,EAAE,gCAAgC,CAAC,GACrE,UAAU,CAAC,wBAAwB,EAAE,gCAAgC,CAAC,CAO7E,CAAA"}
@@ -5,7 +5,8 @@ import { getRequestLanguage } from './getRequestLanguage.js';
5
5
  * In the context of Next.js, this function initializes the i18n object for the current request.
6
6
  *
7
7
  * It must be called on the server side, and within the lifecycle of a request since it relies on the request headers and cookies.
8
- */ export const getNextRequestI18n = async ({ config })=>initI18n({
8
+ */ export const getNextRequestI18n = async ({ config })=>{
9
+ return await initI18n({
9
10
  config: config.i18n,
10
11
  context: 'client',
11
12
  language: getRequestLanguage({
@@ -14,5 +15,6 @@ import { getRequestLanguage } from './getRequestLanguage.js';
14
15
  headers: headers()
15
16
  })
16
17
  });
18
+ };
17
19
 
18
20
  //# sourceMappingURL=getNextRequestI18n.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/getNextRequestI18n.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { SanitizedConfig } from 'payload'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { cookies, headers } from 'next/headers.js'\n\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\n/**\n * In the context of Next.js, this function initializes the i18n object for the current request.\n *\n * It must be called on the server side, and within the lifecycle of a request since it relies on the request headers and cookies.\n */\nexport const getNextRequestI18n = async ({ config }: { config: SanitizedConfig }): Promise<I18n> =>\n initI18n({\n config: config.i18n,\n context: 'client',\n language: getRequestLanguage({ config, cookies: cookies(), headers: headers() }),\n })\n"],"names":["initI18n","cookies","headers","getRequestLanguage","getNextRequestI18n","config","i18n","context","language"],"mappings":"AAGA,SAASA,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,OAAO,EAAEC,OAAO,QAAQ,kBAAiB;AAElD,SAASC,kBAAkB,QAAQ,0BAAyB;AAE5D;;;;CAIC,GACD,OAAO,MAAMC,qBAAqB,OAAO,EAAEC,MAAM,EAA+B,GAC9EL,SAAS;QACPK,QAAQA,OAAOC,IAAI;QACnBC,SAAS;QACTC,UAAUL,mBAAmB;YAAEE;YAAQJ,SAASA;YAAWC,SAASA;QAAU;IAChF,GAAE"}
1
+ {"version":3,"sources":["../../src/utilities/getNextRequestI18n.ts"],"sourcesContent":["import type {\n ClientTranslationsObject,\n DefaultTranslationKeys,\n DefaultTranslationsObject,\n I18n,\n I18nClient,\n} from '@payloadcms/translations'\nimport type { SanitizedConfig } from 'payload'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { cookies, headers } from 'next/headers.js'\n\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\n/**\n * In the context of Next.js, this function initializes the i18n object for the current request.\n *\n * It must be called on the server side, and within the lifecycle of a request since it relies on the request headers and cookies.\n */\nexport const getNextRequestI18n = async <\n TAdditionalTranslations = {},\n TAdditionalClientTranslationKeys extends string = never,\n>({\n config,\n}: {\n config: SanitizedConfig\n}): Promise<\n [TAdditionalClientTranslationKeys] extends [never]\n ? I18nClient\n : TAdditionalTranslations extends object\n ? I18nClient<TAdditionalTranslations, TAdditionalClientTranslationKeys>\n : I18nClient<ClientTranslationsObject, TAdditionalClientTranslationKeys>\n> => {\n return (await initI18n({\n config: config.i18n,\n context: 'client',\n language: getRequestLanguage({ config, cookies: cookies(), headers: headers() }),\n })) as any\n}\n"],"names":["initI18n","cookies","headers","getRequestLanguage","getNextRequestI18n","config","i18n","context","language"],"mappings":"AASA,SAASA,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,OAAO,EAAEC,OAAO,QAAQ,kBAAiB;AAElD,SAASC,kBAAkB,QAAQ,0BAAyB;AAE5D;;;;CAIC,GACD,OAAO,MAAMC,qBAAqB,OAGhC,EACAC,MAAM,EAGP;IAOC,OAAQ,MAAML,SAAS;QACrBK,QAAQA,OAAOC,IAAI;QACnBC,SAAS;QACTC,UAAUL,mBAAmB;YAAEE;YAAQJ,SAASA;YAAWC,SAASA;QAAU;IAChF;AACF,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getPayloadHMR.d.ts","sourceRoot":"","sources":["../../src/utilities/getPayloadHMR.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAgBpF,eAAO,MAAM,MAAM,WAAkB,eAAe,WAAW,OAAO,KAAG,OAAO,CAAC,IAAI,CAmCpF,CAAA;AAED,eAAO,MAAM,aAAa,YAAmB,WAAW,KAAG,OAAO,CAAC,OAAO,CA8DzE,CAAA"}
1
+ {"version":3,"file":"getPayloadHMR.d.ts","sourceRoot":"","sources":["../../src/utilities/getPayloadHMR.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAgBpE,eAAO,MAAM,MAAM,WAAkB,eAAe,WAAW,OAAO,KAAG,OAAO,CAAC,IAAI,CA0CpF,CAAA;AAED,eAAO,MAAM,aAAa,YAAmB,WAAW,KAAG,OAAO,CAAC,OAAO,CAwEzE,CAAA"}
@@ -1,12 +1,12 @@
1
- import { BasePayload } from 'payload';
1
+ import { BasePayload, generateImportMap } from 'payload';
2
2
  import WebSocket from 'ws';
3
3
  let cached = global._payload;
4
4
  if (!cached) {
5
- // eslint-disable-next-line no-multi-assign
6
5
  cached = global._payload = {
7
6
  payload: null,
8
7
  promise: null,
9
- reload: false
8
+ reload: false,
9
+ ws: null
10
10
  };
11
11
  }
12
12
  export const reload = async (config, payload)=>{
@@ -36,6 +36,12 @@ export const reload = async (config, payload)=>{
36
36
  log: false
37
37
  });
38
38
  }
39
+ // Generate component map
40
+ if (config.admin?.importMap?.autoGenerate !== false) {
41
+ await generateImportMap(config, {
42
+ log: true
43
+ });
44
+ }
39
45
  await payload.db.init();
40
46
  if (payload.db.connect) {
41
47
  await payload.db.connect({
@@ -45,32 +51,38 @@ export const reload = async (config, payload)=>{
45
51
  };
46
52
  export const getPayloadHMR = async (options)=>{
47
53
  if (!options?.config) {
48
- throw new Error('Error: the payload config is required for getPayload to work.');
54
+ throw new Error('Error: the payload config is required for getPayloadHMR to work.');
49
55
  }
50
56
  if (cached.payload) {
51
- const config = await options.config // TODO: check if we can move this inside the cached.reload === true condition
52
- ;
53
57
  if (cached.reload === true) {
54
58
  let resolve;
59
+ // getPayloadHMR is called multiple times, in parallel. However, we only want to run `await reload` once. By immediately setting cached.reload to a promise,
60
+ // we can ensure that all subsequent calls will wait for the first reload to finish. So if we set it here, the 2nd call of getPayloadHMR
61
+ // will reach `if (cached.reload instanceof Promise) {` which then waits for the first reload to finish.
55
62
  cached.reload = new Promise((res)=>resolve = res);
63
+ const config = await options.config;
56
64
  await reload(config, cached.payload);
57
65
  resolve();
58
66
  }
59
67
  if (cached.reload instanceof Promise) {
60
68
  await cached.reload;
61
69
  }
70
+ if (options?.importMap) {
71
+ cached.payload.importMap = options.importMap;
72
+ }
62
73
  return cached.payload;
63
74
  }
64
75
  if (!cached.promise) {
76
+ // no need to await options.config here, as it's already awaited in the BasePayload.init
65
77
  cached.promise = new BasePayload().init(options);
66
78
  }
67
79
  try {
68
80
  cached.payload = await cached.promise;
69
- if (process.env.NODE_ENV !== 'production' && process.env.NODE_ENV !== 'test' && process.env.DISABLE_PAYLOAD_HMR !== 'true') {
81
+ if (!cached.ws && process.env.NODE_ENV !== 'production' && process.env.NODE_ENV !== 'test' && process.env.DISABLE_PAYLOAD_HMR !== 'true') {
70
82
  try {
71
83
  const port = process.env.PORT || '3000';
72
- const ws = new WebSocket(`ws://localhost:${port}${process.env.NEXT_BASE_PATH ?? ''}/_next/webpack-hmr`);
73
- ws.onmessage = (event)=>{
84
+ cached.ws = new WebSocket(`ws://localhost:${port}${process.env.NEXT_BASE_PATH ?? ''}/_next/webpack-hmr`);
85
+ cached.ws.onmessage = (event)=>{
74
86
  if (typeof event.data === 'string') {
75
87
  const data = JSON.parse(event.data);
76
88
  if ('action' in data && data.action === 'serverComponentChanges') {
@@ -86,6 +98,9 @@ export const getPayloadHMR = async (options)=>{
86
98
  cached.promise = null;
87
99
  throw e;
88
100
  }
101
+ if (options?.importMap) {
102
+ cached.payload.importMap = options.importMap;
103
+ }
89
104
  return cached.payload;
90
105
  };
91
106
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/getPayloadHMR.ts"],"sourcesContent":["import type { GeneratedTypes, InitOptions, Payload, SanitizedConfig } from 'payload'\n\nimport { BasePayload } from 'payload'\nimport WebSocket from 'ws'\n\nlet cached: {\n payload: Payload | null\n promise: Promise<Payload> | null\n reload: Promise<boolean> | boolean\n} = global._payload\n\nif (!cached) {\n // eslint-disable-next-line no-multi-assign\n cached = global._payload = { payload: null, promise: null, reload: false }\n}\n\nexport const reload = async (config: SanitizedConfig, payload: Payload): Promise<void> => {\n if (typeof payload.db.destroy === 'function') {\n await payload.db.destroy()\n }\n\n payload.config = config\n\n payload.collections = config.collections.reduce((collections, collection) => {\n collections[collection.slug] = {\n config: collection,\n customIDType: payload.collections[collection.slug]?.customIDType,\n }\n return collections\n }, {})\n\n payload.globals = {\n config: config.globals,\n }\n\n // TODO: support HMR for other props in the future (see payload/src/index init()) hat may change on Payload singleton\n\n // Generate types\n if (config.typescript.autoGenerate !== false) {\n // We cannot run it directly here, as generate-types imports json-schema-to-typescript, which breaks on turbopack.\n // see: https://github.com/vercel/next.js/issues/66723\n void payload.bin({\n args: ['generate:types'],\n log: false,\n })\n }\n\n await payload.db.init()\n if (payload.db.connect) {\n await payload.db.connect({ hotReload: true })\n }\n}\n\nexport const getPayloadHMR = async (options: InitOptions): Promise<Payload> => {\n if (!options?.config) {\n throw new Error('Error: the payload config is required for getPayload to work.')\n }\n\n if (cached.payload) {\n const config = await options.config // TODO: check if we can move this inside the cached.reload === true condition\n\n if (cached.reload === true) {\n let resolve\n\n cached.reload = new Promise((res) => (resolve = res))\n\n await reload(config, cached.payload)\n\n resolve()\n }\n\n if (cached.reload instanceof Promise) {\n await cached.reload\n }\n\n return cached.payload\n }\n\n if (!cached.promise) {\n cached.promise = new BasePayload().init(options)\n }\n\n try {\n cached.payload = await cached.promise\n\n if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n process.env.DISABLE_PAYLOAD_HMR !== 'true'\n ) {\n try {\n const port = process.env.PORT || '3000'\n const ws = new WebSocket(\n `ws://localhost:${port}${process.env.NEXT_BASE_PATH ?? ''}/_next/webpack-hmr`,\n )\n\n ws.onmessage = (event) => {\n if (typeof event.data === 'string') {\n const data = JSON.parse(event.data)\n\n if ('action' in data && data.action === 'serverComponentChanges') {\n cached.reload = true\n }\n }\n }\n } catch (_) {\n // swallow e\n }\n }\n } catch (e) {\n cached.promise = null\n throw e\n }\n\n return cached.payload\n}\n"],"names":["BasePayload","WebSocket","cached","global","_payload","payload","promise","reload","config","db","destroy","collections","reduce","collection","slug","customIDType","globals","typescript","autoGenerate","bin","args","log","init","connect","hotReload","getPayloadHMR","options","Error","resolve","Promise","res","process","env","NODE_ENV","DISABLE_PAYLOAD_HMR","port","PORT","ws","NEXT_BASE_PATH","onmessage","event","data","JSON","parse","action","_","e"],"mappings":"AAEA,SAASA,WAAW,QAAQ,UAAS;AACrC,OAAOC,eAAe,KAAI;AAE1B,IAAIC,SAIAC,OAAOC,QAAQ;AAEnB,IAAI,CAACF,QAAQ;IACX,2CAA2C;IAC3CA,SAASC,OAAOC,QAAQ,GAAG;QAAEC,SAAS;QAAMC,SAAS;QAAMC,QAAQ;IAAM;AAC3E;AAEA,OAAO,MAAMA,SAAS,OAAOC,QAAyBH;IACpD,IAAI,OAAOA,QAAQI,EAAE,CAACC,OAAO,KAAK,YAAY;QAC5C,MAAML,QAAQI,EAAE,CAACC,OAAO;IAC1B;IAEAL,QAAQG,MAAM,GAAGA;IAEjBH,QAAQM,WAAW,GAAGH,OAAOG,WAAW,CAACC,MAAM,CAAC,CAACD,aAAaE;QAC5DF,WAAW,CAACE,WAAWC,IAAI,CAAC,GAAG;YAC7BN,QAAQK;YACRE,cAAcV,QAAQM,WAAW,CAACE,WAAWC,IAAI,CAAC,EAAEC;QACtD;QACA,OAAOJ;IACT,GAAG,CAAC;IAEJN,QAAQW,OAAO,GAAG;QAChBR,QAAQA,OAAOQ,OAAO;IACxB;IAEA,qHAAqH;IAErH,iBAAiB;IACjB,IAAIR,OAAOS,UAAU,CAACC,YAAY,KAAK,OAAO;QAC5C,kHAAkH;QAClH,sDAAsD;QACtD,KAAKb,QAAQc,GAAG,CAAC;YACfC,MAAM;gBAAC;aAAiB;YACxBC,KAAK;QACP;IACF;IAEA,MAAMhB,QAAQI,EAAE,CAACa,IAAI;IACrB,IAAIjB,QAAQI,EAAE,CAACc,OAAO,EAAE;QACtB,MAAMlB,QAAQI,EAAE,CAACc,OAAO,CAAC;YAAEC,WAAW;QAAK;IAC7C;AACF,EAAC;AAED,OAAO,MAAMC,gBAAgB,OAAOC;IAClC,IAAI,CAACA,SAASlB,QAAQ;QACpB,MAAM,IAAImB,MAAM;IAClB;IAEA,IAAIzB,OAAOG,OAAO,EAAE;QAClB,MAAMG,SAAS,MAAMkB,QAAQlB,MAAM,CAAC,8EAA8E;;QAElH,IAAIN,OAAOK,MAAM,KAAK,MAAM;YAC1B,IAAIqB;YAEJ1B,OAAOK,MAAM,GAAG,IAAIsB,QAAQ,CAACC,MAASF,UAAUE;YAEhD,MAAMvB,OAAOC,QAAQN,OAAOG,OAAO;YAEnCuB;QACF;QAEA,IAAI1B,OAAOK,MAAM,YAAYsB,SAAS;YACpC,MAAM3B,OAAOK,MAAM;QACrB;QAEA,OAAOL,OAAOG,OAAO;IACvB;IAEA,IAAI,CAACH,OAAOI,OAAO,EAAE;QACnBJ,OAAOI,OAAO,GAAG,IAAIN,cAAcsB,IAAI,CAACI;IAC1C;IAEA,IAAI;QACFxB,OAAOG,OAAO,GAAG,MAAMH,OAAOI,OAAO;QAErC,IACEyB,QAAQC,GAAG,CAACC,QAAQ,KAAK,gBACzBF,QAAQC,GAAG,CAACC,QAAQ,KAAK,UACzBF,QAAQC,GAAG,CAACE,mBAAmB,KAAK,QACpC;YACA,IAAI;gBACF,MAAMC,OAAOJ,QAAQC,GAAG,CAACI,IAAI,IAAI;gBACjC,MAAMC,KAAK,IAAIpC,UACb,CAAC,eAAe,EAAEkC,KAAK,EAAEJ,QAAQC,GAAG,CAACM,cAAc,IAAI,GAAG,kBAAkB,CAAC;gBAG/ED,GAAGE,SAAS,GAAG,CAACC;oBACd,IAAI,OAAOA,MAAMC,IAAI,KAAK,UAAU;wBAClC,MAAMA,OAAOC,KAAKC,KAAK,CAACH,MAAMC,IAAI;wBAElC,IAAI,YAAYA,QAAQA,KAAKG,MAAM,KAAK,0BAA0B;4BAChE1C,OAAOK,MAAM,GAAG;wBAClB;oBACF;gBACF;YACF,EAAE,OAAOsC,GAAG;YACV,YAAY;YACd;QACF;IACF,EAAE,OAAOC,GAAG;QACV5C,OAAOI,OAAO,GAAG;QACjB,MAAMwC;IACR;IAEA,OAAO5C,OAAOG,OAAO;AACvB,EAAC"}
1
+ {"version":3,"sources":["../../src/utilities/getPayloadHMR.ts"],"sourcesContent":["import type { InitOptions, Payload, SanitizedConfig } from 'payload'\n\nimport { BasePayload, generateImportMap } from 'payload'\nimport WebSocket from 'ws'\n\nlet cached: {\n payload: Payload | null\n promise: Promise<Payload> | null\n reload: Promise<void> | boolean\n ws: WebSocket | null\n} = global._payload\n\nif (!cached) {\n cached = global._payload = { payload: null, promise: null, reload: false, ws: null }\n}\n\nexport const reload = async (config: SanitizedConfig, payload: Payload): Promise<void> => {\n if (typeof payload.db.destroy === 'function') {\n await payload.db.destroy()\n }\n\n payload.config = config\n\n payload.collections = config.collections.reduce((collections, collection) => {\n collections[collection.slug] = {\n config: collection,\n customIDType: payload.collections[collection.slug]?.customIDType,\n }\n return collections\n }, {})\n\n payload.globals = {\n config: config.globals,\n }\n\n // TODO: support HMR for other props in the future (see payload/src/index init()) hat may change on Payload singleton\n\n // Generate types\n if (config.typescript.autoGenerate !== false) {\n // We cannot run it directly here, as generate-types imports json-schema-to-typescript, which breaks on turbopack.\n // see: https://github.com/vercel/next.js/issues/66723\n void payload.bin({\n args: ['generate:types'],\n log: false,\n })\n }\n\n // Generate component map\n if (config.admin?.importMap?.autoGenerate !== false) {\n await generateImportMap(config, {\n log: true,\n })\n }\n\n await payload.db.init()\n if (payload.db.connect) {\n await payload.db.connect({ hotReload: true })\n }\n}\n\nexport const getPayloadHMR = async (options: InitOptions): Promise<Payload> => {\n if (!options?.config) {\n throw new Error('Error: the payload config is required for getPayloadHMR to work.')\n }\n\n if (cached.payload) {\n if (cached.reload === true) {\n let resolve: () => void\n\n // getPayloadHMR is called multiple times, in parallel. However, we only want to run `await reload` once. By immediately setting cached.reload to a promise,\n // we can ensure that all subsequent calls will wait for the first reload to finish. So if we set it here, the 2nd call of getPayloadHMR\n // will reach `if (cached.reload instanceof Promise) {` which then waits for the first reload to finish.\n cached.reload = new Promise((res) => (resolve = res))\n const config = await options.config\n await reload(config, cached.payload)\n\n resolve()\n }\n\n if (cached.reload instanceof Promise) {\n await cached.reload\n }\n\n if (options?.importMap) {\n cached.payload.importMap = options.importMap\n }\n return cached.payload\n }\n\n if (!cached.promise) {\n // no need to await options.config here, as it's already awaited in the BasePayload.init\n cached.promise = new BasePayload().init(options)\n }\n\n try {\n cached.payload = await cached.promise\n\n if (\n !cached.ws &&\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n process.env.DISABLE_PAYLOAD_HMR !== 'true'\n ) {\n try {\n const port = process.env.PORT || '3000'\n cached.ws = new WebSocket(\n `ws://localhost:${port}${process.env.NEXT_BASE_PATH ?? ''}/_next/webpack-hmr`,\n )\n\n cached.ws.onmessage = (event) => {\n if (typeof event.data === 'string') {\n const data = JSON.parse(event.data)\n\n if ('action' in data && data.action === 'serverComponentChanges') {\n cached.reload = true\n }\n }\n }\n } catch (_) {\n // swallow e\n }\n }\n } catch (e) {\n cached.promise = null\n throw e\n }\n\n if (options?.importMap) {\n cached.payload.importMap = options.importMap\n }\n\n return cached.payload\n}\n"],"names":["BasePayload","generateImportMap","WebSocket","cached","global","_payload","payload","promise","reload","ws","config","db","destroy","collections","reduce","collection","slug","customIDType","globals","typescript","autoGenerate","bin","args","log","admin","importMap","init","connect","hotReload","getPayloadHMR","options","Error","resolve","Promise","res","process","env","NODE_ENV","DISABLE_PAYLOAD_HMR","port","PORT","NEXT_BASE_PATH","onmessage","event","data","JSON","parse","action","_","e"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"headersWithCors.d.ts","sourceRoot":"","sources":["../../src/utilities/headersWithCors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;CAC7B,CAAA;AACD,eAAO,MAAM,eAAe,qBAAsB,QAAQ,KAAG,OAoB5D,CAAA"}
1
+ {"version":3,"file":"headersWithCors.d.ts","sourceRoot":"","sources":["../../src/utilities/headersWithCors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,SAAS,CAAA;AAEzD,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;CAC7B,CAAA;AACD,eAAO,MAAM,eAAe,qBAAsB,QAAQ,KAAG,OAyC5D,CAAA"}
@@ -2,11 +2,27 @@ export const headersWithCors = ({ headers, req })=>{
2
2
  const cors = req?.payload.config.cors;
3
3
  const requestOrigin = req?.headers.get('Origin');
4
4
  if (cors) {
5
+ const defaultAllowedHeaders = [
6
+ 'Origin',
7
+ 'X-Requested-With',
8
+ 'Content-Type',
9
+ 'Accept',
10
+ 'Authorization',
11
+ 'Content-Encoding',
12
+ 'x-apollo-tracing'
13
+ ];
5
14
  headers.set('Access-Control-Allow-Methods', 'PUT, PATCH, POST, GET, DELETE, OPTIONS');
6
- headers.set('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept, Authorization, Content-Encoding, x-apollo-tracing');
7
- if (cors === '*') {
15
+ if (typeof cors === 'object' && 'headers' in cors) {
16
+ headers.set('Access-Control-Allow-Headers', [
17
+ ...defaultAllowedHeaders,
18
+ ...cors.headers
19
+ ].filter(Boolean).join(', '));
20
+ } else {
21
+ headers.set('Access-Control-Allow-Headers', defaultAllowedHeaders.join(', '));
22
+ }
23
+ if (cors === '*' || typeof cors === 'object' && 'origins' in cors && cors.origins === '*') {
8
24
  headers.set('Access-Control-Allow-Origin', '*');
9
- } else if (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1) {
25
+ } else if (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1 || !Array.isArray(cors) && typeof cors === 'object' && 'origins' in cors && cors.origins.indexOf(requestOrigin) > -1) {
10
26
  headers.set('Access-Control-Allow-Credentials', 'true');
11
27
  headers.set('Access-Control-Allow-Origin', requestOrigin);
12
28
  }