@payloadcms/next 3.0.0-canary.518fabe → 3.0.0-canary.51be7be

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 (271) hide show
  1. package/dist/cjs/withPayload.cjs +145 -0
  2. package/dist/cjs/withPayload.cjs.map +1 -0
  3. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +70 -68
  4. package/dist/elements/DocumentHeader/Tabs/index.scss +41 -39
  5. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +1 -1
  6. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +28 -24
  7. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  8. package/dist/elements/DocumentHeader/index.scss +44 -42
  9. package/dist/elements/DocumentLocked/index.d.ts +12 -0
  10. package/dist/elements/DocumentLocked/index.d.ts.map +1 -0
  11. package/dist/elements/DocumentLocked/index.js +142 -0
  12. package/dist/elements/DocumentLocked/index.js.map +1 -0
  13. package/dist/elements/DocumentLocked/index.scss +39 -0
  14. package/dist/elements/DocumentTakeOver/index.d.ts +8 -0
  15. package/dist/elements/DocumentTakeOver/index.d.ts.map +1 -0
  16. package/dist/elements/DocumentTakeOver/index.js +98 -0
  17. package/dist/elements/DocumentTakeOver/index.js.map +1 -0
  18. package/dist/elements/DocumentTakeOver/index.scss +39 -0
  19. package/dist/elements/FormHeader/index.d.ts +9 -0
  20. package/dist/elements/FormHeader/index.d.ts.map +1 -0
  21. package/dist/elements/FormHeader/index.js +20 -0
  22. package/dist/elements/FormHeader/index.js.map +1 -0
  23. package/dist/elements/FormHeader/index.scss +8 -0
  24. package/dist/elements/LeaveWithoutSaving/index.scss +28 -26
  25. package/dist/elements/Nav/NavWrapper/index.scss +21 -14
  26. package/dist/elements/Nav/index.scss +127 -121
  27. package/dist/exports/utilities.d.ts +1 -0
  28. package/dist/exports/utilities.d.ts.map +1 -1
  29. package/dist/exports/utilities.js +1 -0
  30. package/dist/exports/utilities.js.map +1 -1
  31. package/dist/layouts/Root/index.d.ts.map +1 -1
  32. package/dist/layouts/Root/index.js +55 -23
  33. package/dist/layouts/Root/index.js.map +1 -1
  34. package/dist/prod/styles.css +1 -1
  35. package/dist/routes/graphql/handler.d.ts.map +1 -1
  36. package/dist/routes/graphql/handler.js +23 -11
  37. package/dist/routes/graphql/handler.js.map +1 -1
  38. package/dist/routes/rest/auth/login.js +2 -2
  39. package/dist/routes/rest/auth/login.js.map +1 -1
  40. package/dist/routes/rest/auth/logout.d.ts.map +1 -1
  41. package/dist/routes/rest/auth/logout.js +3 -2
  42. package/dist/routes/rest/auth/logout.js.map +1 -1
  43. package/dist/routes/rest/auth/refresh.js +2 -2
  44. package/dist/routes/rest/auth/refresh.js.map +1 -1
  45. package/dist/routes/rest/auth/registerFirstUser.js +2 -2
  46. package/dist/routes/rest/auth/registerFirstUser.js.map +1 -1
  47. package/dist/routes/rest/auth/resetPassword.js +2 -2
  48. package/dist/routes/rest/auth/resetPassword.js.map +1 -1
  49. package/dist/routes/rest/collections/delete.d.ts.map +1 -1
  50. package/dist/routes/rest/collections/delete.js +2 -0
  51. package/dist/routes/rest/collections/delete.js.map +1 -1
  52. package/dist/routes/rest/collections/deleteByID.d.ts.map +1 -1
  53. package/dist/routes/rest/collections/deleteByID.js +2 -0
  54. package/dist/routes/rest/collections/deleteByID.js.map +1 -1
  55. package/dist/routes/rest/collections/find.d.ts.map +1 -1
  56. package/dist/routes/rest/collections/find.js +3 -0
  57. package/dist/routes/rest/collections/find.js.map +1 -1
  58. package/dist/routes/rest/collections/findByID.d.ts.map +1 -1
  59. package/dist/routes/rest/collections/findByID.js +2 -0
  60. package/dist/routes/rest/collections/findByID.js.map +1 -1
  61. package/dist/routes/rest/collections/update.d.ts.map +1 -1
  62. package/dist/routes/rest/collections/update.js +4 -0
  63. package/dist/routes/rest/collections/update.js.map +1 -1
  64. package/dist/routes/rest/collections/updateByID.d.ts.map +1 -1
  65. package/dist/routes/rest/collections/updateByID.js +4 -0
  66. package/dist/routes/rest/collections/updateByID.js.map +1 -1
  67. package/dist/routes/rest/globals/update.d.ts.map +1 -1
  68. package/dist/routes/rest/globals/update.js +2 -0
  69. package/dist/routes/rest/globals/update.js.map +1 -1
  70. package/dist/routes/rest/index.d.ts +12 -12
  71. package/dist/routes/rest/index.d.ts.map +1 -1
  72. package/dist/routes/rest/index.js +17 -15
  73. package/dist/routes/rest/index.js.map +1 -1
  74. package/dist/routes/rest/routeError.d.ts +2 -7
  75. package/dist/routes/rest/routeError.d.ts.map +1 -1
  76. package/dist/routes/rest/routeError.js +33 -19
  77. package/dist/routes/rest/routeError.js.map +1 -1
  78. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts +13 -0
  79. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts.map +1 -0
  80. package/dist/routes/rest/utilities/sanitizeJoinParams.js +17 -0
  81. package/dist/routes/rest/utilities/sanitizeJoinParams.js.map +1 -0
  82. package/dist/scss/app.scss +166 -162
  83. package/dist/scss/colors.scss +256 -254
  84. package/dist/scss/resets.scss +9 -7
  85. package/dist/scss/toastify.scss +42 -40
  86. package/dist/scss/toasts.scss +105 -103
  87. package/dist/scss/type.scss +80 -79
  88. package/dist/templates/Default/Wrapper/index.scss +38 -36
  89. package/dist/templates/Default/index.d.ts.map +1 -1
  90. package/dist/templates/Default/index.js +18 -6
  91. package/dist/templates/Default/index.js.map +1 -1
  92. package/dist/templates/Default/index.scss +62 -50
  93. package/dist/templates/Minimal/index.scss +22 -20
  94. package/dist/utilities/getNextRequestI18n.js +2 -2
  95. package/dist/utilities/getNextRequestI18n.js.map +1 -1
  96. package/dist/utilities/getRequestTheme.d.ts.map +1 -1
  97. package/dist/utilities/getRequestTheme.js +3 -0
  98. package/dist/utilities/getRequestTheme.js.map +1 -1
  99. package/dist/utilities/initPage/handleAdminPage.d.ts +12 -11
  100. package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
  101. package/dist/utilities/initPage/handleAdminPage.js +9 -21
  102. package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
  103. package/dist/utilities/initPage/handleAuthRedirect.d.ts +6 -3
  104. package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +1 -1
  105. package/dist/utilities/initPage/handleAuthRedirect.js +23 -36
  106. package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
  107. package/dist/utilities/initPage/index.d.ts +1 -1
  108. package/dist/utilities/initPage/index.d.ts.map +1 -1
  109. package/dist/utilities/initPage/index.js +44 -42
  110. package/dist/utilities/initPage/index.js.map +1 -1
  111. package/dist/utilities/initPage/shared.d.ts +2 -2
  112. package/dist/utilities/initPage/shared.d.ts.map +1 -1
  113. package/dist/utilities/initPage/shared.js +18 -13
  114. package/dist/utilities/initPage/shared.js.map +1 -1
  115. package/dist/utilities/initReq.d.ts +11 -0
  116. package/dist/utilities/initReq.d.ts.map +1 -0
  117. package/dist/utilities/initReq.js +46 -0
  118. package/dist/utilities/initReq.js.map +1 -0
  119. package/dist/views/API/RenderJSON/index.scss +68 -66
  120. package/dist/views/API/index.scss +98 -96
  121. package/dist/views/Account/Settings/index.d.ts +2 -1
  122. package/dist/views/Account/Settings/index.d.ts.map +1 -1
  123. package/dist/views/Account/Settings/index.js +3 -2
  124. package/dist/views/Account/Settings/index.js.map +1 -1
  125. package/dist/views/Account/Settings/index.scss +37 -35
  126. package/dist/views/Account/index.d.ts.map +1 -1
  127. package/dist/views/Account/index.js +4 -2
  128. package/dist/views/Account/index.js.map +1 -1
  129. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  130. package/dist/views/CreateFirstUser/index.client.js +35 -16
  131. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  132. package/dist/views/CreateFirstUser/index.scss +13 -11
  133. package/dist/views/Dashboard/Default/index.d.ts +8 -1
  134. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  135. package/dist/views/Dashboard/Default/index.js +14 -2
  136. package/dist/views/Dashboard/Default/index.js.map +1 -1
  137. package/dist/views/Dashboard/Default/index.scss +53 -46
  138. package/dist/views/Dashboard/index.d.ts.map +1 -1
  139. package/dist/views/Dashboard/index.js +16 -1
  140. package/dist/views/Dashboard/index.js.map +1 -1
  141. package/dist/views/Document/getDocumentData.d.ts +5 -2
  142. package/dist/views/Document/getDocumentData.d.ts.map +1 -1
  143. package/dist/views/Document/getDocumentData.js +13 -2
  144. package/dist/views/Document/getDocumentData.js.map +1 -1
  145. package/dist/views/Document/getDocumentPermissions.d.ts.map +1 -1
  146. package/dist/views/Document/getDocumentPermissions.js +4 -1
  147. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  148. package/dist/views/Edit/Default/Auth/index.scss +56 -54
  149. package/dist/views/Edit/Default/index.d.ts.map +1 -1
  150. package/dist/views/Edit/Default/index.js +127 -14
  151. package/dist/views/Edit/Default/index.js.map +1 -1
  152. package/dist/views/Edit/Default/index.scss +15 -13
  153. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  154. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +12 -11
  155. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  156. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  157. package/dist/views/ForgotPassword/index.js +8 -8
  158. package/dist/views/ForgotPassword/index.js.map +1 -1
  159. package/dist/views/List/Default/index.d.ts.map +1 -1
  160. package/dist/views/List/Default/index.js +62 -58
  161. package/dist/views/List/Default/index.js.map +1 -1
  162. package/dist/views/List/Default/index.scss +136 -134
  163. package/dist/views/List/index.d.ts.map +1 -1
  164. package/dist/views/List/index.js +1 -0
  165. package/dist/views/List/index.js.map +1 -1
  166. package/dist/views/LivePreview/IFrame/index.scss +8 -6
  167. package/dist/views/LivePreview/Preview/index.scss +32 -30
  168. package/dist/views/LivePreview/Toolbar/Controls/index.scss +49 -47
  169. package/dist/views/LivePreview/Toolbar/SizeInput/index.scss +11 -9
  170. package/dist/views/LivePreview/Toolbar/index.scss +33 -31
  171. package/dist/views/LivePreview/ToolbarArea/index.scss +5 -3
  172. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  173. package/dist/views/LivePreview/index.client.js +214 -200
  174. package/dist/views/LivePreview/index.client.js.map +1 -1
  175. package/dist/views/LivePreview/index.scss +48 -46
  176. package/dist/views/LivePreview/usePopupWindow.js +119 -74
  177. package/dist/views/LivePreview/usePopupWindow.js.map +1 -1
  178. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  179. package/dist/views/Login/LoginForm/index.js +3 -3
  180. package/dist/views/Login/LoginForm/index.js.map +1 -1
  181. package/dist/views/Login/LoginForm/index.scss +8 -6
  182. package/dist/views/Login/index.scss +8 -6
  183. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  184. package/dist/views/Logout/LogoutClient.js +77 -55
  185. package/dist/views/Logout/LogoutClient.js.map +1 -1
  186. package/dist/views/Logout/index.scss +17 -15
  187. package/dist/views/NotFound/index.d.ts +5 -5
  188. package/dist/views/NotFound/index.d.ts.map +1 -1
  189. package/dist/views/NotFound/index.js +4 -2
  190. package/dist/views/NotFound/index.js.map +1 -1
  191. package/dist/views/NotFound/index.scss +38 -36
  192. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts +7 -0
  193. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts.map +1 -0
  194. package/dist/views/ResetPassword/{index.client.js → ResetPasswordForm/index.js} +16 -19
  195. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -0
  196. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  197. package/dist/views/ResetPassword/index.js +17 -10
  198. package/dist/views/ResetPassword/index.js.map +1 -1
  199. package/dist/views/ResetPassword/index.scss +6 -26
  200. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
  201. package/dist/views/Root/getViewFromConfig.js +1 -7
  202. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  203. package/dist/views/Root/index.d.ts +5 -5
  204. package/dist/views/Root/index.d.ts.map +1 -1
  205. package/dist/views/Root/index.js +9 -4
  206. package/dist/views/Root/index.js.map +1 -1
  207. package/dist/views/Root/meta.d.ts +5 -5
  208. package/dist/views/Root/meta.d.ts.map +1 -1
  209. package/dist/views/Root/meta.js +3 -2
  210. package/dist/views/Root/meta.js.map +1 -1
  211. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  212. package/dist/views/Unauthorized/index.js +14 -7
  213. package/dist/views/Unauthorized/index.js.map +1 -1
  214. package/dist/views/Unauthorized/index.scss +4 -31
  215. package/dist/views/Verify/index.client.d.ts +7 -0
  216. package/dist/views/Verify/index.client.d.ts.map +1 -0
  217. package/dist/views/Verify/index.client.js +46 -0
  218. package/dist/views/Verify/index.client.js.map +1 -0
  219. package/dist/views/Verify/index.d.ts.map +1 -1
  220. package/dist/views/Verify/index.js +12 -11
  221. package/dist/views/Verify/index.js.map +1 -1
  222. package/dist/views/Verify/index.scss +13 -11
  223. package/dist/views/Version/Default/index.d.ts.map +1 -1
  224. package/dist/views/Version/Default/index.js +2 -0
  225. package/dist/views/Version/Default/index.js.map +1 -1
  226. package/dist/views/Version/Default/index.scss +52 -50
  227. package/dist/views/Version/RenderFieldsToDiff/Label/index.scss +5 -3
  228. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +29 -27
  229. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.scss +11 -9
  230. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +12 -10
  231. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +12 -10
  232. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +12 -10
  233. package/dist/views/Version/RenderFieldsToDiff/index.scss +12 -10
  234. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  235. package/dist/views/Version/Restore/index.js +8 -14
  236. package/dist/views/Version/Restore/index.js.map +1 -1
  237. package/dist/views/Version/Restore/index.scss +57 -55
  238. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  239. package/dist/views/Version/SelectComparison/index.js +24 -3
  240. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  241. package/dist/views/Version/SelectComparison/index.scss +12 -10
  242. package/dist/views/Version/SelectComparison/types.d.ts +1 -0
  243. package/dist/views/Version/SelectComparison/types.d.ts.map +1 -1
  244. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  245. package/dist/views/Version/SelectLocales/index.scss +6 -4
  246. package/dist/views/Version/index.d.ts.map +1 -1
  247. package/dist/views/Version/index.js +2 -0
  248. package/dist/views/Version/index.js.map +1 -1
  249. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  250. package/dist/views/Versions/buildColumns.js +63 -48
  251. package/dist/views/Versions/buildColumns.js.map +1 -1
  252. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
  253. package/dist/views/Versions/cells/AutosaveCell/index.js +48 -20
  254. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  255. package/dist/views/Versions/getLatestVersion.d.ts +1 -0
  256. package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
  257. package/dist/views/Versions/getLatestVersion.js +14 -3
  258. package/dist/views/Versions/getLatestVersion.js.map +1 -1
  259. package/dist/views/Versions/index.d.ts.map +1 -1
  260. package/dist/views/Versions/index.js +30 -7
  261. package/dist/views/Versions/index.js.map +1 -1
  262. package/dist/views/Versions/index.scss +78 -76
  263. package/dist/withPayload.d.ts.map +1 -1
  264. package/dist/withPayload.js +4 -4
  265. package/dist/withPayload.js.map +1 -1
  266. package/package.json +24 -16
  267. package/dist/cjs/withPayload.js +0 -111
  268. package/dist/cjs/withPayload.js.map +0 -1
  269. package/dist/views/ResetPassword/index.client.d.ts +0 -7
  270. package/dist/views/ResetPassword/index.client.d.ts.map +0 -1
  271. package/dist/views/ResetPassword/index.client.js.map +0 -1
@@ -1,156 +1,162 @@
1
1
  @import '../../scss/styles.scss';
2
2
 
3
- .nav {
4
- position: sticky;
5
- top: 0;
6
- left: 0;
7
- flex-shrink: 0;
8
- height: 100vh;
9
- width: var(--nav-width);
10
- border-right: 1px solid var(--theme-elevation-100);
11
- opacity: 0;
12
- overflow: hidden;
13
-
14
- &--nav-animate {
15
- transition: opacity var(--nav-trans-time) ease-in-out;
16
- }
17
-
18
- &--nav-open {
19
- opacity: 1;
20
- }
21
-
22
- &__header {
23
- position: absolute;
3
+ @layer payload-default {
4
+ .nav {
5
+ position: sticky;
24
6
  top: 0;
25
- width: 100vw;
26
- height: var(--app-header-height);
27
- }
28
-
29
- &__header-content {
30
- z-index: 1;
31
- position: relative;
32
- height: 100%;
33
- width: 100%;
34
- }
7
+ left: 0;
8
+ flex-shrink: 0;
9
+ height: 100vh;
10
+ width: var(--nav-width);
11
+ border-right: 1px solid var(--theme-elevation-100);
12
+ opacity: 0;
13
+ overflow: hidden;
14
+
15
+ [dir='rtl'] & {
16
+ border-right: none;
17
+ border-left: 1px solid var(--theme-elevation-100);
18
+ }
35
19
 
36
- &__mobile-close {
37
- display: none;
38
- background: none;
39
- border: 0;
40
- outline: 0;
41
- padding: base(0.8) 0;
42
- }
20
+ &--nav-animate {
21
+ transition: opacity var(--nav-trans-time) ease-in-out;
22
+ }
43
23
 
44
- &__scroll {
45
- height: 100%;
46
- display: flex;
47
- flex-direction: column;
48
- padding: var(--app-header-height) base(1) base(2) base(1);
49
- overflow-y: auto;
24
+ &--nav-open {
25
+ opacity: 1;
26
+ }
50
27
 
51
- // remove the scrollbar here to prevent layout shift as nav groups are toggled
52
- &::-webkit-scrollbar {
53
- display: none;
28
+ &__header {
29
+ position: absolute;
30
+ top: 0;
31
+ width: 100vw;
32
+ height: var(--app-header-height);
54
33
  }
55
- }
56
34
 
57
- &__wrap {
58
- width: 100%;
59
- display: flex;
60
- flex-direction: column;
61
- align-items: flex-start;
62
- flex-grow: 1;
63
- }
35
+ &__header-content {
36
+ z-index: 1;
37
+ position: relative;
38
+ height: 100%;
39
+ width: 100%;
40
+ }
64
41
 
65
- &__label {
66
- color: var(--theme-elevation-400);
67
- }
42
+ &__mobile-close {
43
+ display: none;
44
+ background: none;
45
+ border: 0;
46
+ outline: 0;
47
+ padding: base(0.8) 0;
48
+ }
68
49
 
69
- &__controls {
70
- margin-top: auto;
71
- margin-bottom: 0;
50
+ &__scroll {
51
+ height: 100%;
52
+ display: flex;
53
+ flex-direction: column;
54
+ padding: var(--app-header-height) base(1) base(2) base(1);
55
+ overflow-y: auto;
72
56
 
73
- > * {
74
- margin-top: base(1);
57
+ // remove the scrollbar here to prevent layout shift as nav groups are toggled
58
+ &::-webkit-scrollbar {
59
+ display: none;
60
+ }
75
61
  }
76
62
 
77
- a:focus-visible {
78
- outline: var(--accessibility-outline);
63
+ &__wrap {
64
+ width: 100%;
65
+ display: flex;
66
+ flex-direction: column;
67
+ align-items: flex-start;
68
+ flex-grow: 1;
79
69
  }
80
- }
81
70
 
82
- &__log-out {
83
- &:hover {
84
- g {
85
- transform: translateX(-#{base(0.125)});
86
- }
71
+ &__label {
72
+ color: var(--theme-elevation-400);
87
73
  }
88
- }
89
74
 
90
- nav {
91
- a {
92
- position: relative;
93
- padding-block: base(0.125);
94
- padding-inline-start: 0;
95
- padding-inline-end: base(1.5);
96
- display: flex;
97
- text-decoration: none;
75
+ &__controls {
76
+ margin-top: auto;
77
+ margin-bottom: 0;
98
78
 
99
- &:focus:not(:focus-visible) {
100
- box-shadow: none;
101
- font-weight: 600;
79
+ > * {
80
+ margin-top: base(1);
102
81
  }
103
82
 
104
- &:hover,
105
- &:focus-visible {
106
- text-decoration: underline;
83
+ a:focus-visible {
84
+ outline: var(--accessibility-outline);
107
85
  }
86
+ }
108
87
 
109
- &.active {
110
- font-weight: normal;
111
- padding-left: 0;
112
- font-weight: 600;
88
+ &__log-out {
89
+ &:hover {
90
+ g {
91
+ transform: translateX(-#{base(0.125)});
92
+ }
113
93
  }
114
94
  }
115
- }
116
95
 
117
- &__link {
118
- display: flex;
119
- align-items: center;
120
- }
121
-
122
- &__link-indicator {
123
- position: absolute;
124
- display: block;
125
- // top: 0;
126
- inset-inline-start: base(-1);
127
- width: 2px;
128
- height: 16px;
129
- border-start-end-radius: 2px;
130
- border-end-end-radius: 2px;
131
- background: var(--theme-text);
132
- }
96
+ nav {
97
+ a {
98
+ position: relative;
99
+ padding-block: base(0.125);
100
+ padding-inline-start: 0;
101
+ padding-inline-end: base(1.5);
102
+ display: flex;
103
+ text-decoration: none;
104
+
105
+ &:focus:not(:focus-visible) {
106
+ box-shadow: none;
107
+ font-weight: 600;
108
+ }
109
+
110
+ &:hover,
111
+ &:focus-visible {
112
+ text-decoration: underline;
113
+ }
114
+
115
+ &.active {
116
+ font-weight: normal;
117
+ padding-left: 0;
118
+ font-weight: 600;
119
+ }
120
+ }
121
+ }
133
122
 
134
- @include mid-break {
135
- &__scroll {
136
- padding: var(--app-header-height) base(0.5) base(2);
123
+ &__link {
124
+ display: flex;
125
+ align-items: center;
137
126
  }
138
- }
139
127
 
140
- @include small-break {
141
- &__scroll {
142
- padding: var(--app-header-height) var(--gutter-h) base(2);
128
+ &__link-indicator {
129
+ position: absolute;
130
+ display: block;
131
+ // top: 0;
132
+ inset-inline-start: base(-1);
133
+ width: 2px;
134
+ height: 16px;
135
+ border-start-end-radius: 2px;
136
+ border-end-end-radius: 2px;
137
+ background: var(--theme-text);
143
138
  }
144
139
 
145
- nav a {
146
- font-size: base(0.875);
147
- line-height: base(1.5);
140
+ @include mid-break {
141
+ &__scroll {
142
+ padding: var(--app-header-height) base(0.5) base(2);
143
+ }
148
144
  }
149
145
 
150
- &__mobile-close {
151
- display: flex;
152
- height: 100%;
153
- align-items: center;
146
+ @include small-break {
147
+ &__scroll {
148
+ padding: var(--app-header-height) var(--gutter-h) base(2);
149
+ }
150
+
151
+ nav a {
152
+ font-size: base(0.875);
153
+ line-height: base(1.5);
154
+ }
155
+
156
+ &__mobile-close {
157
+ display: flex;
158
+ align-items: center;
159
+ }
154
160
  }
155
161
  }
156
162
  }
@@ -4,4 +4,5 @@ export { createPayloadRequest } from '../utilities/createPayloadRequest.js';
4
4
  export { getNextRequestI18n } from '../utilities/getNextRequestI18n.js';
5
5
  export { getPayloadHMR, reload } from '../utilities/getPayloadHMR.js';
6
6
  export { headersWithCors } from '../utilities/headersWithCors.js';
7
+ export { mergeHeaders } from '../utilities/mergeHeaders.js';
7
8
  //# sourceMappingURL=utilities.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../src/exports/utilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAA;AACjF,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAClG,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAA;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA"}
1
+ {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../src/exports/utilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAA;AACjF,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAClG,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAA;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA"}
@@ -4,4 +4,5 @@ export { createPayloadRequest } from '../utilities/createPayloadRequest.js';
4
4
  export { getNextRequestI18n } from '../utilities/getNextRequestI18n.js';
5
5
  export { getPayloadHMR, reload } from '../utilities/getPayloadHMR.js';
6
6
  export { headersWithCors } from '../utilities/headersWithCors.js';
7
+ export { mergeHeaders } from '../utilities/mergeHeaders.js';
7
8
  //# sourceMappingURL=utilities.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.js","names":["addDataAndFileToRequest","addLocalesToRequestFromData","sanitizeLocales","createPayloadRequest","getNextRequestI18n","getPayloadHMR","reload","headersWithCors"],"sources":["../../src/exports/utilities.ts"],"sourcesContent":["export { addDataAndFileToRequest } from '../utilities/addDataAndFileToRequest.js'\nexport { addLocalesToRequestFromData, sanitizeLocales } from '../utilities/addLocalesToRequest.js'\nexport { createPayloadRequest } from '../utilities/createPayloadRequest.js'\nexport { getNextRequestI18n } from '../utilities/getNextRequestI18n.js'\nexport { getPayloadHMR, reload } from '../utilities/getPayloadHMR.js'\nexport { headersWithCors } from '../utilities/headersWithCors.js'\n"],"mappings":"AAAA,SAASA,uBAAuB,QAAQ;AACxC,SAASC,2BAA2B,EAAEC,eAAe,QAAQ;AAC7D,SAASC,oBAAoB,QAAQ;AACrC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,aAAa,EAAEC,MAAM,QAAQ;AACtC,SAASC,eAAe,QAAQ","ignoreList":[]}
1
+ {"version":3,"file":"utilities.js","names":["addDataAndFileToRequest","addLocalesToRequestFromData","sanitizeLocales","createPayloadRequest","getNextRequestI18n","getPayloadHMR","reload","headersWithCors","mergeHeaders"],"sources":["../../src/exports/utilities.ts"],"sourcesContent":["export { addDataAndFileToRequest } from '../utilities/addDataAndFileToRequest.js'\nexport { addLocalesToRequestFromData, sanitizeLocales } from '../utilities/addLocalesToRequest.js'\nexport { createPayloadRequest } from '../utilities/createPayloadRequest.js'\nexport { getNextRequestI18n } from '../utilities/getNextRequestI18n.js'\nexport { getPayloadHMR, reload } from '../utilities/getPayloadHMR.js'\nexport { headersWithCors } from '../utilities/headersWithCors.js'\nexport { mergeHeaders } from '../utilities/mergeHeaders.js'\n"],"mappings":"AAAA,SAASA,uBAAuB,QAAQ;AACxC,SAASC,2BAA2B,EAAEC,eAAe,QAAQ;AAC7D,SAASC,oBAAoB,QAAQ;AACrC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,aAAa,EAAEC,MAAM,QAAQ;AACtC,SAASC,eAAe,QAAQ;AAChC,SAASC,YAAY,QAAQ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layouts/Root/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAkB,eAAe,EAAE,MAAM,SAAS,CAAA;AAIzE,OAAO,8BAA8B,CAAA;AAIrC,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,eAAO,MAAM,QAAQ;;;CAGpB,CAAA;AAED,eAAO,MAAM,UAAU,oDAIpB;IACD,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IACzC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;CAC9B,+BAqIA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layouts/Root/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAuB,SAAS,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9E,OAAO,8BAA8B,CAAA;AAIrC,OAAO,KAAK,MAAM,OAAO,CAAA;AASzB,eAAO,MAAM,QAAQ;;;CAGpB,CAAA;AAmBD,eAAO,MAAM,UAAU,oDAIpB;IACD,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IACzC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;CAC9B,+BAsJA,CAAA"}
@@ -1,26 +1,73 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { initI18n, rtlLanguages } from '@payloadcms/translations';
2
+ import { rtlLanguages } from '@payloadcms/translations';
3
3
  import { RootProvider } from '@payloadcms/ui';
4
4
  import { createClientConfig } from '@payloadcms/ui/utilities/createClientConfig';
5
5
  import { headers as getHeaders, cookies as nextCookies } from 'next/headers.js';
6
- import { createLocalReq, parseCookies } from 'payload';
6
+ import { checkDependencies, parseCookies } from 'payload';
7
7
  import React from 'react';
8
8
  import { getPayloadHMR } from '../../utilities/getPayloadHMR.js';
9
9
  import { getRequestLanguage } from '../../utilities/getRequestLanguage.js';
10
10
  import { getRequestTheme } from '../../utilities/getRequestTheme.js';
11
+ import { initReq } from '../../utilities/initReq.js';
11
12
  import { DefaultEditView } from '../../views/Edit/Default/index.js';
12
13
  import { DefaultListView } from '../../views/List/Default/index.js';
13
14
  export const metadata = {
14
15
  description: 'Generated by Next.js',
15
16
  title: 'Next.js'
16
17
  };
18
+ const customReactVersionParser = version => {
19
+ const [mainVersion, ...preReleases] = version.split('-');
20
+ if (preReleases?.length === 3) {
21
+ // Needs different handling, as it's in a format like 19.0.0-rc-06d0b89e-20240801 format
22
+ const date = preReleases[2];
23
+ const parts = mainVersion.split('.').map(Number);
24
+ return {
25
+ parts,
26
+ preReleases: [date]
27
+ };
28
+ }
29
+ const parts = mainVersion.split('.').map(Number);
30
+ return {
31
+ parts,
32
+ preReleases
33
+ };
34
+ };
35
+ let checkedDependencies = false;
17
36
  export const RootLayout = async ({
18
37
  children,
19
38
  config: configPromise,
20
39
  importMap
21
40
  }) => {
41
+ if (process.env.NODE_ENV !== 'production' && process.env.PAYLOAD_DISABLE_DEPENDENCY_CHECKER !== 'true' && !checkedDependencies) {
42
+ // eslint-disable-next-line react-compiler/react-compiler
43
+ checkedDependencies = true;
44
+ // First check if there are mismatching dependency versions of next / react packages
45
+ await checkDependencies({
46
+ dependencyGroups: [{
47
+ name: 'react',
48
+ dependencies: ['react', 'react-dom'],
49
+ targetVersionDependency: 'react'
50
+ }],
51
+ dependencyVersions: {
52
+ next: {
53
+ required: false,
54
+ version: '>=15.0.0-canary.173'
55
+ },
56
+ react: {
57
+ customVersionParser: customReactVersionParser,
58
+ required: false,
59
+ version: '>=19.0.0-rc-3edc000d-20240926'
60
+ },
61
+ 'react-dom': {
62
+ customVersionParser: customReactVersionParser,
63
+ required: false,
64
+ version: '>=19.0.0-rc-3edc000d-20240926'
65
+ }
66
+ }
67
+ });
68
+ }
22
69
  const config = await configPromise;
23
- const headers = getHeaders();
70
+ const headers = await getHeaders();
24
71
  const cookies = parseCookies(headers);
25
72
  const languageCode = getRequestLanguage({
26
73
  config,
@@ -35,27 +82,12 @@ export const RootLayout = async ({
35
82
  const payload = await getPayloadHMR({
36
83
  config
37
84
  });
38
- const i18n = await initI18n({
39
- config: config.i18n,
40
- context: 'client',
41
- language: languageCode
42
- });
43
- const req = await createLocalReq({
44
- fallbackLocale: null,
45
- req: {
46
- headers,
47
- host: headers.get('host'),
48
- i18n,
49
- url: `${payload.config.serverURL}`
50
- }
51
- }, payload);
52
85
  const {
86
+ i18n,
53
87
  permissions,
88
+ req,
54
89
  user
55
- } = await payload.auth({
56
- headers,
57
- req
58
- });
90
+ } = await initReq(config);
59
91
  const {
60
92
  clientConfig,
61
93
  render
@@ -78,11 +110,11 @@ export const RootLayout = async ({
78
110
  }
79
111
  return acc;
80
112
  }, []);
81
- // eslint-disable-next-line @typescript-eslint/require-await
82
113
  async function switchLanguageServerAction(lang) {
83
114
  'use server';
84
115
 
85
- nextCookies().set({
116
+ const cookies = await nextCookies();
117
+ cookies.set({
86
118
  name: `${config.cookiePrefix || 'payload'}-lng`,
87
119
  path: '/',
88
120
  value: lang
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["initI18n","rtlLanguages","RootProvider","createClientConfig","headers","getHeaders","cookies","nextCookies","createLocalReq","parseCookies","React","getPayloadHMR","getRequestLanguage","getRequestTheme","DefaultEditView","DefaultListView","metadata","description","title","RootLayout","children","config","configPromise","importMap","languageCode","theme","payload","i18n","context","language","req","fallbackLocale","host","get","url","serverURL","permissions","user","auth","clientConfig","render","dir","includes","languageOptions","Object","entries","supportedLanguages","reduce","acc","languageConfig","keys","push","label","translations","general","thisLanguage","value","switchLanguageServerAction","lang","set","name","cookiePrefix","path","navPreferences","find","collection","depth","limit","where","and","key","equals","id","docs","isNavOpen","open","_jsx","_jsxs","dateFNSKey","fallbackLang","fallbackLanguage"],"sources":["../../../src/layouts/Root/index.tsx"],"sourcesContent":["import type { AcceptedLanguages, I18nClient } from '@payloadcms/translations'\nimport type { ImportMap, PayloadRequest, SanitizedConfig } from 'payload'\n\nimport { initI18n, rtlLanguages } from '@payloadcms/translations'\nimport { RootProvider } from '@payloadcms/ui'\nimport '@payloadcms/ui/scss/app.scss'\nimport { createClientConfig } from '@payloadcms/ui/utilities/createClientConfig'\nimport { headers as getHeaders, cookies as nextCookies } from 'next/headers.js'\nimport { createLocalReq, parseCookies } from 'payload'\nimport React from 'react'\n\nimport { getPayloadHMR } from '../../utilities/getPayloadHMR.js'\nimport { getRequestLanguage } from '../../utilities/getRequestLanguage.js'\nimport { getRequestTheme } from '../../utilities/getRequestTheme.js'\nimport { DefaultEditView } from '../../views/Edit/Default/index.js'\nimport { DefaultListView } from '../../views/List/Default/index.js'\n\nexport const metadata = {\n description: 'Generated by Next.js',\n title: 'Next.js',\n}\n\nexport const RootLayout = async ({\n children,\n config: configPromise,\n importMap,\n}: {\n readonly children: React.ReactNode\n readonly config: Promise<SanitizedConfig>\n readonly importMap: ImportMap\n}) => {\n const config = await configPromise\n\n const headers = getHeaders()\n const cookies = parseCookies(headers)\n\n const languageCode = getRequestLanguage({\n config,\n cookies,\n headers,\n })\n\n const theme = getRequestTheme({\n config,\n cookies,\n headers,\n })\n\n const payload = await getPayloadHMR({ config })\n\n const i18n: I18nClient = await initI18n({\n config: config.i18n,\n context: 'client',\n language: languageCode,\n })\n\n const req = await createLocalReq(\n {\n fallbackLocale: null,\n req: {\n headers,\n host: headers.get('host'),\n i18n,\n url: `${payload.config.serverURL}`,\n } as PayloadRequest,\n },\n payload,\n )\n const { permissions, user } = await payload.auth({ headers, req })\n\n const { clientConfig, render } = await createClientConfig({\n children,\n config,\n DefaultEditView,\n DefaultListView,\n i18n,\n importMap,\n payload,\n })\n\n const dir = (rtlLanguages as unknown as AcceptedLanguages[]).includes(languageCode)\n ? 'RTL'\n : 'LTR'\n\n const languageOptions = Object.entries(config.i18n.supportedLanguages || {}).reduce(\n (acc, [language, languageConfig]) => {\n if (Object.keys(config.i18n.supportedLanguages).includes(language)) {\n acc.push({\n label: languageConfig.translations.general.thisLanguage,\n value: language,\n })\n }\n\n return acc\n },\n [],\n )\n\n // eslint-disable-next-line @typescript-eslint/require-await\n async function switchLanguageServerAction(lang: string): Promise<void> {\n 'use server'\n nextCookies().set({\n name: `${config.cookiePrefix || 'payload'}-lng`,\n path: '/',\n value: lang,\n })\n }\n\n const navPreferences = user\n ? (\n await payload.find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n req,\n user,\n where: {\n and: [\n {\n key: {\n equals: 'nav',\n },\n },\n {\n 'user.relationTo': {\n equals: user.collection,\n },\n },\n {\n 'user.value': {\n equals: user.id,\n },\n },\n ],\n },\n })\n )?.docs?.[0]\n : null\n\n const isNavOpen = navPreferences?.value?.open ?? true\n\n return (\n <html data-theme={theme} dir={dir} lang={languageCode}>\n <body>\n <RootProvider\n config={clientConfig}\n dateFNSKey={i18n.dateFNSKey}\n fallbackLang={clientConfig.i18n.fallbackLanguage}\n isNavOpen={isNavOpen}\n languageCode={languageCode}\n languageOptions={languageOptions}\n permissions={permissions}\n switchLanguageServerAction={switchLanguageServerAction}\n theme={theme}\n translations={i18n.translations}\n user={user}\n >\n {render}\n </RootProvider>\n <div id=\"portal\" />\n </body>\n </html>\n )\n}\n"],"mappings":";AAGA,SAASA,QAAQ,EAAEC,YAAY,QAAQ;AACvC,SAASC,YAAY,QAAQ;AAE7B,SAASC,kBAAkB,QAAQ;AACnC,SAASC,OAAA,IAAWC,UAAU,EAAEC,OAAA,IAAWC,WAAW,QAAQ;AAC9D,SAASC,cAAc,EAAEC,YAAY,QAAQ;AAC7C,OAAOC,KAAA,MAAW;AAElB,SAASC,aAAa,QAAQ;AAC9B,SAASC,kBAAkB,QAAQ;AACnC,SAASC,eAAe,QAAQ;AAChC,SAASC,eAAe,QAAQ;AAChC,SAASC,eAAe,QAAQ;AAEhC,OAAO,MAAMC,QAAA,GAAW;EACtBC,WAAA,EAAa;EACbC,KAAA,EAAO;AACT;AAEA,OAAO,MAAMC,UAAA,GAAa,MAAAA,CAAO;EAC/BC,QAAQ;EACRC,MAAA,EAAQC,aAAa;EACrBC;AAAS,CAKV;EACC,MAAMF,MAAA,GAAS,MAAMC,aAAA;EAErB,MAAMlB,OAAA,GAAUC,UAAA;EAChB,MAAMC,OAAA,GAAUG,YAAA,CAAaL,OAAA;EAE7B,MAAMoB,YAAA,GAAeZ,kBAAA,CAAmB;IACtCS,MAAA;IACAf,OAAA;IACAF;EACF;EAEA,MAAMqB,KAAA,GAAQZ,eAAA,CAAgB;IAC5BQ,MAAA;IACAf,OAAA;IACAF;EACF;EAEA,MAAMsB,OAAA,GAAU,MAAMf,aAAA,CAAc;IAAEU;EAAO;EAE7C,MAAMM,IAAA,GAAmB,MAAM3B,QAAA,CAAS;IACtCqB,MAAA,EAAQA,MAAA,CAAOM,IAAI;IACnBC,OAAA,EAAS;IACTC,QAAA,EAAUL;EACZ;EAEA,MAAMM,GAAA,GAAM,MAAMtB,cAAA,CAChB;IACEuB,cAAA,EAAgB;IAChBD,GAAA,EAAK;MACH1B,OAAA;MACA4B,IAAA,EAAM5B,OAAA,CAAQ6B,GAAG,CAAC;MAClBN,IAAA;MACAO,GAAA,EAAK,GAAGR,OAAA,CAAQL,MAAM,CAACc,SAAS;IAClC;EACF,GACAT,OAAA;EAEF,MAAM;IAAEU,WAAW;IAAEC;EAAI,CAAE,GAAG,MAAMX,OAAA,CAAQY,IAAI,CAAC;IAAElC,OAAA;IAAS0B;EAAI;EAEhE,MAAM;IAAES,YAAY;IAAEC;EAAM,CAAE,GAAG,MAAMrC,kBAAA,CAAmB;IACxDiB,QAAA;IACAC,MAAA;IACAP,eAAA;IACAC,eAAA;IACAY,IAAA;IACAJ,SAAA;IACAG;EACF;EAEA,MAAMe,GAAA,GAAMxC,YAAC,CAAgDyC,QAAQ,CAAClB,YAAA,IAClE,QACA;EAEJ,MAAMmB,eAAA,GAAkBC,MAAA,CAAOC,OAAO,CAACxB,MAAA,CAAOM,IAAI,CAACmB,kBAAkB,IAAI,CAAC,GAAGC,MAAM,CACjF,CAACC,GAAA,EAAK,CAACnB,QAAA,EAAUoB,cAAA,CAAe;IAC9B,IAAIL,MAAA,CAAOM,IAAI,CAAC7B,MAAA,CAAOM,IAAI,CAACmB,kBAAkB,EAAEJ,QAAQ,CAACb,QAAA,GAAW;MAClEmB,GAAA,CAAIG,IAAI,CAAC;QACPC,KAAA,EAAOH,cAAA,CAAeI,YAAY,CAACC,OAAO,CAACC,YAAY;QACvDC,KAAA,EAAO3B;MACT;IACF;IAEA,OAAOmB,GAAA;EACT,GACA,EAAE;EAGJ;EACA,eAAeS,2BAA2BC,IAAY;IACpD;;IACAnD,WAAA,GAAcoD,GAAG,CAAC;MAChBC,IAAA,EAAM,GAAGvC,MAAA,CAAOwC,YAAY,IAAI,eAAe;MAC/CC,IAAA,EAAM;MACNN,KAAA,EAAOE;IACT;EACF;EAEA,MAAMK,cAAA,GAAiB1B,IAAA,GAEjB,OAAMX,OAAA,CAAQsC,IAAI,CAAC;IACjBC,UAAA,EAAY;IACZC,KAAA,EAAO;IACPC,KAAA,EAAO;IACPrC,GAAA;IACAO,IAAA;IACA+B,KAAA,EAAO;MACLC,GAAA,EAAK,CACH;QACEC,GAAA,EAAK;UACHC,MAAA,EAAQ;QACV;MACF,GACA;QACE,mBAAmB;UACjBA,MAAA,EAAQlC,IAAA,CAAK4B;QACf;MACF,GACA;QACE,cAAc;UACZM,MAAA,EAAQlC,IAAA,CAAKmC;QACf;MACF;IAEJ;EACF,EAAC,GACAC,IAAA,GAAO,EAAE,GACZ;EAEJ,MAAMC,SAAA,GAAYX,cAAA,EAAgBP,KAAA,EAAOmB,IAAA,IAAQ;EAEjD,oBACEC,IAAA,CAAC;IAAK,cAAYnD,KAAA;IAAOgB,GAAA,EAAKA,GAAA;IAAKiB,IAAA,EAAMlC,YAAA;cACvC,aAAAqD,KAAA,CAAC;8BACCD,IAAA,CAAC1E,YAAA;QACCmB,MAAA,EAAQkB,YAAA;QACRuC,UAAA,EAAYnD,IAAA,CAAKmD,UAAU;QAC3BC,YAAA,EAAcxC,YAAA,CAAaZ,IAAI,CAACqD,gBAAgB;QAChDN,SAAA,EAAWA,SAAA;QACXlD,YAAA,EAAcA,YAAA;QACdmB,eAAA,EAAiBA,eAAA;QACjBP,WAAA,EAAaA,WAAA;QACbqB,0BAAA,EAA4BA,0BAAA;QAC5BhC,KAAA,EAAOA,KAAA;QACP4B,YAAA,EAAc1B,IAAA,CAAK0B,YAAY;QAC/BhB,IAAA,EAAMA,IAAA;kBAELG;uBAEHoC,IAAA,CAAC;QAAIJ,EAAA,EAAG;;;;AAIhB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["rtlLanguages","RootProvider","createClientConfig","headers","getHeaders","cookies","nextCookies","checkDependencies","parseCookies","React","getPayloadHMR","getRequestLanguage","getRequestTheme","initReq","DefaultEditView","DefaultListView","metadata","description","title","customReactVersionParser","version","mainVersion","preReleases","split","length","date","parts","map","Number","checkedDependencies","RootLayout","children","config","configPromise","importMap","process","env","NODE_ENV","PAYLOAD_DISABLE_DEPENDENCY_CHECKER","dependencyGroups","name","dependencies","targetVersionDependency","dependencyVersions","next","required","react","customVersionParser","languageCode","theme","payload","i18n","permissions","req","user","clientConfig","render","dir","includes","languageOptions","Object","entries","supportedLanguages","reduce","acc","language","languageConfig","keys","push","label","translations","general","thisLanguage","value","switchLanguageServerAction","lang","set","cookiePrefix","path","navPreferences","find","collection","depth","limit","where","and","key","equals","id","docs","isNavOpen","open","_jsx","_jsxs","dateFNSKey","fallbackLang","fallbackLanguage"],"sources":["../../../src/layouts/Root/index.tsx"],"sourcesContent":["import type { AcceptedLanguages } from '@payloadcms/translations'\nimport type { CustomVersionParser, ImportMap, SanitizedConfig } from 'payload'\n\nimport { rtlLanguages } from '@payloadcms/translations'\nimport { RootProvider } from '@payloadcms/ui'\nimport '@payloadcms/ui/scss/app.scss'\nimport { createClientConfig } from '@payloadcms/ui/utilities/createClientConfig'\nimport { headers as getHeaders, cookies as nextCookies } from 'next/headers.js'\nimport { checkDependencies, parseCookies } from 'payload'\nimport React from 'react'\n\nimport { getPayloadHMR } from '../../utilities/getPayloadHMR.js'\nimport { getRequestLanguage } from '../../utilities/getRequestLanguage.js'\nimport { getRequestTheme } from '../../utilities/getRequestTheme.js'\nimport { initReq } from '../../utilities/initReq.js'\nimport { DefaultEditView } from '../../views/Edit/Default/index.js'\nimport { DefaultListView } from '../../views/List/Default/index.js'\n\nexport const metadata = {\n description: 'Generated by Next.js',\n title: 'Next.js',\n}\n\nconst customReactVersionParser: CustomVersionParser = (version) => {\n const [mainVersion, ...preReleases] = version.split('-')\n\n if (preReleases?.length === 3) {\n // Needs different handling, as it's in a format like 19.0.0-rc-06d0b89e-20240801 format\n const date = preReleases[2]\n\n const parts = mainVersion.split('.').map(Number)\n return { parts, preReleases: [date] }\n }\n\n const parts = mainVersion.split('.').map(Number)\n return { parts, preReleases }\n}\n\nlet checkedDependencies = false\n\nexport const RootLayout = async ({\n children,\n config: configPromise,\n importMap,\n}: {\n readonly children: React.ReactNode\n readonly config: Promise<SanitizedConfig>\n readonly importMap: ImportMap\n}) => {\n if (\n process.env.NODE_ENV !== 'production' &&\n process.env.PAYLOAD_DISABLE_DEPENDENCY_CHECKER !== 'true' &&\n !checkedDependencies\n ) {\n // eslint-disable-next-line react-compiler/react-compiler\n checkedDependencies = true\n // First check if there are mismatching dependency versions of next / react packages\n await checkDependencies({\n dependencyGroups: [\n {\n name: 'react',\n dependencies: ['react', 'react-dom'],\n targetVersionDependency: 'react',\n },\n ],\n dependencyVersions: {\n next: {\n required: false,\n version: '>=15.0.0-canary.173',\n },\n react: {\n customVersionParser: customReactVersionParser,\n required: false,\n version: '>=19.0.0-rc-3edc000d-20240926',\n },\n 'react-dom': {\n customVersionParser: customReactVersionParser,\n required: false,\n version: '>=19.0.0-rc-3edc000d-20240926',\n },\n },\n })\n }\n\n const config = await configPromise\n\n const headers = await getHeaders()\n const cookies = parseCookies(headers)\n\n const languageCode = getRequestLanguage({\n config,\n cookies,\n headers,\n })\n\n const theme = getRequestTheme({\n config,\n cookies,\n headers,\n })\n\n const payload = await getPayloadHMR({ config })\n\n const { i18n, permissions, req, user } = await initReq(config)\n\n const { clientConfig, render } = await createClientConfig({\n children,\n config,\n DefaultEditView,\n DefaultListView,\n i18n,\n importMap,\n payload,\n })\n\n const dir = (rtlLanguages as unknown as AcceptedLanguages[]).includes(languageCode)\n ? 'RTL'\n : 'LTR'\n\n const languageOptions = Object.entries(config.i18n.supportedLanguages || {}).reduce(\n (acc, [language, languageConfig]) => {\n if (Object.keys(config.i18n.supportedLanguages).includes(language)) {\n acc.push({\n label: languageConfig.translations.general.thisLanguage,\n value: language,\n })\n }\n\n return acc\n },\n [],\n )\n\n async function switchLanguageServerAction(lang: string): Promise<void> {\n 'use server'\n const cookies = await nextCookies()\n cookies.set({\n name: `${config.cookiePrefix || 'payload'}-lng`,\n path: '/',\n value: lang,\n })\n }\n\n const navPreferences = user\n ? (\n await payload.find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n req,\n user,\n where: {\n and: [\n {\n key: {\n equals: 'nav',\n },\n },\n {\n 'user.relationTo': {\n equals: user.collection,\n },\n },\n {\n 'user.value': {\n equals: user.id,\n },\n },\n ],\n },\n })\n )?.docs?.[0]\n : null\n\n const isNavOpen = navPreferences?.value?.open ?? true\n\n return (\n <html data-theme={theme} dir={dir} lang={languageCode}>\n <body>\n <RootProvider\n config={clientConfig}\n dateFNSKey={i18n.dateFNSKey}\n fallbackLang={clientConfig.i18n.fallbackLanguage}\n isNavOpen={isNavOpen}\n languageCode={languageCode}\n languageOptions={languageOptions}\n permissions={permissions}\n switchLanguageServerAction={switchLanguageServerAction}\n theme={theme}\n translations={i18n.translations}\n user={user}\n >\n {render}\n </RootProvider>\n <div id=\"portal\" />\n </body>\n </html>\n )\n}\n"],"mappings":"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","ignoreList":[]}