@payloadcms/tanstack-start 4.0.0-internal.a0ef1b8 → 4.0.0-internal.a2d053c

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 (302) hide show
  1. package/LICENSE.md +1 -1
  2. package/dist/adapters/handleServerFunctions.d.ts +3 -0
  3. package/dist/adapters/handleServerFunctions.d.ts.map +1 -0
  4. package/dist/adapters/handleServerFunctions.js +17 -0
  5. package/dist/adapters/handleServerFunctions.js.map +1 -0
  6. package/dist/adapters/layout/RootProviders/index.d.ts +9 -0
  7. package/dist/adapters/layout/RootProviders/index.d.ts.map +1 -0
  8. package/dist/adapters/layout/RootProviders/index.js +21 -0
  9. package/dist/adapters/layout/RootProviders/index.js.map +1 -0
  10. package/dist/adapters/layout/index.d.ts +69 -0
  11. package/dist/adapters/layout/index.d.ts.map +1 -0
  12. package/dist/adapters/layout/index.js +107 -0
  13. package/dist/adapters/layout/index.js.map +1 -0
  14. package/dist/adapters/layout/lazy.d.ts +7 -0
  15. package/dist/adapters/layout/lazy.d.ts.map +1 -0
  16. package/dist/adapters/layout/lazy.js +17 -0
  17. package/dist/adapters/layout/lazy.js.map +1 -0
  18. package/dist/adapters/layout/outlet.d.ts +4 -0
  19. package/dist/adapters/layout/outlet.d.ts.map +1 -0
  20. package/dist/adapters/layout/outlet.js +9 -0
  21. package/dist/adapters/layout/outlet.js.map +1 -0
  22. package/dist/adapters/layout/server.d.ts +23 -0
  23. package/dist/adapters/layout/server.d.ts.map +1 -0
  24. package/dist/adapters/layout/server.js +65 -0
  25. package/dist/adapters/layout/server.js.map +1 -0
  26. package/dist/{utilities/meta.d.ts → adapters/metadata.d.ts} +11 -1
  27. package/dist/adapters/metadata.d.ts.map +1 -0
  28. package/dist/{utilities/meta.js → adapters/metadata.js} +62 -2
  29. package/dist/adapters/metadata.js.map +1 -0
  30. package/dist/{elements/RouterAdapter/index.d.ts → adapters/router.d.ts} +1 -1
  31. package/dist/adapters/router.d.ts.map +1 -0
  32. package/dist/adapters/router.js +183 -0
  33. package/dist/adapters/router.js.map +1 -0
  34. package/dist/{utilities/serverAdapter.server.d.ts → adapters/server.d.ts} +1 -1
  35. package/dist/adapters/server.d.ts.map +1 -0
  36. package/dist/{utilities/serverAdapter.server.js → adapters/server.js} +3 -30
  37. package/dist/adapters/server.js.map +1 -0
  38. package/dist/adapters/views/index.d.ts +107 -0
  39. package/dist/adapters/views/index.d.ts.map +1 -0
  40. package/dist/adapters/views/index.js +101 -0
  41. package/dist/adapters/views/index.js.map +1 -0
  42. package/dist/adapters/views/lazy.d.ts +4 -0
  43. package/dist/adapters/views/lazy.d.ts.map +1 -0
  44. package/dist/adapters/views/lazy.js +44 -0
  45. package/dist/adapters/views/lazy.js.map +1 -0
  46. package/dist/adapters/views/server.d.ts +60 -0
  47. package/dist/adapters/views/server.d.ts.map +1 -0
  48. package/dist/adapters/views/server.js +178 -0
  49. package/dist/adapters/views/server.js.map +1 -0
  50. package/dist/auth/login.d.ts +3 -16
  51. package/dist/auth/login.d.ts.map +1 -1
  52. package/dist/auth/login.js +6 -46
  53. package/dist/auth/login.js.map +1 -1
  54. package/dist/auth/logout.d.ts +2 -5
  55. package/dist/auth/logout.d.ts.map +1 -1
  56. package/dist/auth/logout.js +6 -47
  57. package/dist/auth/logout.js.map +1 -1
  58. package/dist/auth/refresh.d.ts +2 -4
  59. package/dist/auth/refresh.d.ts.map +1 -1
  60. package/dist/auth/refresh.js +6 -49
  61. package/dist/auth/refresh.js.map +1 -1
  62. package/dist/exports/client/layout.d.ts +2 -0
  63. package/dist/exports/client/layout.d.ts.map +1 -0
  64. package/dist/exports/client/layout.js +4 -0
  65. package/dist/exports/client/layout.js.map +1 -0
  66. package/dist/exports/client.d.ts +3 -3
  67. package/dist/exports/client.d.ts.map +1 -1
  68. package/dist/exports/client.js +3 -3
  69. package/dist/exports/client.js.map +1 -1
  70. package/dist/exports/layouts.d.ts +2 -4
  71. package/dist/exports/layouts.d.ts.map +1 -1
  72. package/dist/exports/layouts.js +1 -2
  73. package/dist/exports/layouts.js.map +1 -1
  74. package/dist/exports/routes.d.ts +2 -0
  75. package/dist/exports/routes.d.ts.map +1 -0
  76. package/dist/exports/routes.js +3 -0
  77. package/dist/exports/routes.js.map +1 -0
  78. package/dist/exports/rsc.browser.d.ts +4 -1
  79. package/dist/exports/rsc.browser.d.ts.map +1 -1
  80. package/dist/exports/rsc.browser.js +4 -1
  81. package/dist/exports/rsc.browser.js.map +1 -1
  82. package/dist/exports/rsc.d.ts +0 -1
  83. package/dist/exports/rsc.d.ts.map +1 -1
  84. package/dist/exports/rsc.js +0 -1
  85. package/dist/exports/rsc.js.map +1 -1
  86. package/dist/exports/server.d.ts +7 -11
  87. package/dist/exports/server.d.ts.map +1 -1
  88. package/dist/exports/server.js +7 -11
  89. package/dist/exports/server.js.map +1 -1
  90. package/dist/exports/shared.d.ts +2 -0
  91. package/dist/exports/shared.d.ts.map +1 -0
  92. package/dist/exports/shared.js +3 -0
  93. package/dist/exports/shared.js.map +1 -0
  94. package/dist/index.d.ts +1 -4
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +1 -4
  97. package/dist/index.js.map +1 -1
  98. package/dist/{utilities/graphqlHandler.server.d.ts → routes/graphql/handler.server.d.ts} +1 -3
  99. package/dist/routes/graphql/handler.server.d.ts.map +1 -0
  100. package/dist/{utilities/graphqlHandler.server.js → routes/graphql/handler.server.js} +9 -6
  101. package/dist/routes/graphql/handler.server.js.map +1 -0
  102. package/dist/routes/rest/handler.server.d.ts +11 -0
  103. package/dist/routes/rest/handler.server.d.ts.map +1 -0
  104. package/dist/routes/rest/handler.server.js +14 -0
  105. package/dist/routes/rest/handler.server.js.map +1 -0
  106. package/dist/routes/rest/index.d.ts +35 -0
  107. package/dist/routes/rest/index.d.ts.map +1 -0
  108. package/dist/routes/rest/index.js +44 -0
  109. package/dist/routes/rest/index.js.map +1 -0
  110. package/dist/rsc/CollectionCards.js +1 -1
  111. package/dist/rsc/CollectionCards.js.map +1 -1
  112. package/dist/utilities/devConfigReload.server.d.ts +2 -0
  113. package/dist/utilities/devConfigReload.server.d.ts.map +1 -0
  114. package/dist/utilities/devConfigReload.server.js +61 -0
  115. package/dist/utilities/devConfigReload.server.js.map +1 -0
  116. package/dist/utilities/devConfigReloadEvent.d.ts +9 -0
  117. package/dist/utilities/devConfigReloadEvent.d.ts.map +1 -0
  118. package/dist/utilities/devConfigReloadEvent.js +9 -0
  119. package/dist/utilities/devConfigReloadEvent.js.map +1 -0
  120. package/dist/utilities/getRequestI18n.server.d.ts +1 -1
  121. package/dist/utilities/getRequestI18n.server.js +1 -1
  122. package/dist/utilities/getRequestI18n.server.js.map +1 -1
  123. package/dist/utilities/initAdminContext.server.d.ts +9 -0
  124. package/dist/utilities/initAdminContext.server.d.ts.map +1 -0
  125. package/dist/utilities/initAdminContext.server.js +13 -0
  126. package/dist/utilities/initAdminContext.server.js.map +1 -0
  127. package/dist/utilities/routerSearch.d.ts +40 -0
  128. package/dist/utilities/routerSearch.d.ts.map +1 -0
  129. package/dist/utilities/routerSearch.js +45 -0
  130. package/dist/utilities/routerSearch.js.map +1 -0
  131. package/dist/utilities/serverFunctionClient.d.ts +8 -0
  132. package/dist/utilities/serverFunctionClient.d.ts.map +1 -0
  133. package/dist/utilities/serverFunctionClient.js +20 -0
  134. package/dist/utilities/serverFunctionClient.js.map +1 -0
  135. package/dist/withPayload/config/external.d.ts +34 -0
  136. package/dist/withPayload/config/external.d.ts.map +1 -0
  137. package/dist/withPayload/config/external.js +88 -0
  138. package/dist/withPayload/config/external.js.map +1 -0
  139. package/dist/withPayload/config/optimizeDeps.d.ts +25 -0
  140. package/dist/withPayload/config/optimizeDeps.d.ts.map +1 -0
  141. package/dist/withPayload/config/optimizeDeps.js +160 -0
  142. package/dist/withPayload/config/optimizeDeps.js.map +1 -0
  143. package/dist/withPayload/config/scss.d.ts +14 -0
  144. package/dist/withPayload/config/scss.d.ts.map +1 -0
  145. package/dist/withPayload/config/scss.js +28 -0
  146. package/dist/withPayload/config/scss.js.map +1 -0
  147. package/dist/withPayload/devConfigReload.d.ts +14 -0
  148. package/dist/withPayload/devConfigReload.d.ts.map +1 -0
  149. package/dist/withPayload/devConfigReload.js +84 -0
  150. package/dist/withPayload/devConfigReload.js.map +1 -0
  151. package/dist/withPayload/importProtection.d.ts.map +1 -0
  152. package/dist/{vite → withPayload}/importProtection.js +2 -2
  153. package/dist/withPayload/importProtection.js.map +1 -0
  154. package/dist/withPayload/index.d.ts +112 -0
  155. package/dist/withPayload/index.d.ts.map +1 -0
  156. package/dist/withPayload/index.js +308 -0
  157. package/dist/withPayload/index.js.map +1 -0
  158. package/dist/withPayload/workarounds/clientModuleResolution.d.ts.map +1 -0
  159. package/dist/withPayload/workarounds/clientModuleResolution.js.map +1 -0
  160. package/dist/withPayload/workarounds/devTransforms.d.ts +19 -0
  161. package/dist/withPayload/workarounds/devTransforms.d.ts.map +1 -0
  162. package/dist/{vite/plugins → withPayload/workarounds}/devTransforms.js +18 -2
  163. package/dist/withPayload/workarounds/devTransforms.js.map +1 -0
  164. package/dist/withPayload/workarounds/reactDomServerInRsc.d.ts.map +1 -0
  165. package/dist/withPayload/workarounds/reactDomServerInRsc.js.map +1 -0
  166. package/dist/withPayload/workarounds/stripDistStyleImports.d.ts.map +1 -0
  167. package/dist/withPayload/workarounds/stripDistStyleImports.js +140 -0
  168. package/dist/withPayload/workarounds/stripDistStyleImports.js.map +1 -0
  169. package/dist/withPayload/workarounds/stubPrettierInClient.d.ts +13 -0
  170. package/dist/withPayload/workarounds/stubPrettierInClient.d.ts.map +1 -0
  171. package/dist/withPayload/workarounds/stubPrettierInClient.js +32 -0
  172. package/dist/withPayload/workarounds/stubPrettierInClient.js.map +1 -0
  173. package/dist/withPayload/workarounds/wrapCjsForClient.d.ts.map +1 -0
  174. package/dist/withPayload/workarounds/wrapCjsForClient.js.map +1 -0
  175. package/package.json +45 -34
  176. package/dist/@types/assets.d.js +0 -2
  177. package/dist/@types/assets.d.js.map +0 -1
  178. package/dist/auth/switchLanguage.d.ts +0 -6
  179. package/dist/auth/switchLanguage.d.ts.map +0 -1
  180. package/dist/auth/switchLanguage.js +0 -11
  181. package/dist/auth/switchLanguage.js.map +0 -1
  182. package/dist/elements/DocumentHeaderClient/index.d.ts +0 -16
  183. package/dist/elements/DocumentHeaderClient/index.d.ts.map +0 -1
  184. package/dist/elements/DocumentHeaderClient/index.js +0 -116
  185. package/dist/elements/DocumentHeaderClient/index.js.map +0 -1
  186. package/dist/elements/RenderComponent/index.d.ts +0 -10
  187. package/dist/elements/RenderComponent/index.d.ts.map +0 -1
  188. package/dist/elements/RenderComponent/index.js +0 -12
  189. package/dist/elements/RenderComponent/index.js.map +0 -1
  190. package/dist/elements/RouterAdapter/index.d.ts.map +0 -1
  191. package/dist/elements/RouterAdapter/index.js +0 -118
  192. package/dist/elements/RouterAdapter/index.js.map +0 -1
  193. package/dist/exports/vite.d.ts +0 -3
  194. package/dist/exports/vite.d.ts.map +0 -1
  195. package/dist/exports/vite.js +0 -3
  196. package/dist/exports/vite.js.map +0 -1
  197. package/dist/layouts/Root/getLayoutData.d.ts +0 -12
  198. package/dist/layouts/Root/getLayoutData.d.ts.map +0 -1
  199. package/dist/layouts/Root/getLayoutData.js +0 -55
  200. package/dist/layouts/Root/getLayoutData.js.map +0 -1
  201. package/dist/layouts/Root/index.d.ts +0 -25
  202. package/dist/layouts/Root/index.d.ts.map +0 -1
  203. package/dist/layouts/Root/index.js +0 -51
  204. package/dist/layouts/Root/index.js.map +0 -1
  205. package/dist/node/cssLoader.d.mts +0 -3
  206. package/dist/node/cssLoader.d.mts.map +0 -1
  207. package/dist/node/cssLoader.js +0 -70
  208. package/dist/node/cssLoader.js.map +0 -1
  209. package/dist/node/cssLoader.mjs +0 -75
  210. package/dist/node/registerCssLoader.d.mts +0 -2
  211. package/dist/node/registerCssLoader.d.mts.map +0 -1
  212. package/dist/node/registerCssLoader.js +0 -10
  213. package/dist/node/registerCssLoader.js.map +0 -1
  214. package/dist/node/registerCssLoader.mjs +0 -10
  215. package/dist/rsc/renderPayloadRSC.d.ts +0 -6
  216. package/dist/rsc/renderPayloadRSC.d.ts.map +0 -1
  217. package/dist/rsc/renderPayloadRSC.js +0 -6
  218. package/dist/rsc/renderPayloadRSC.js.map +0 -1
  219. package/dist/utilities/devReloadStrategy.d.ts +0 -10
  220. package/dist/utilities/devReloadStrategy.d.ts.map +0 -1
  221. package/dist/utilities/devReloadStrategy.js +0 -27
  222. package/dist/utilities/devReloadStrategy.js.map +0 -1
  223. package/dist/utilities/getExistingAuthToken.d.ts +0 -7
  224. package/dist/utilities/getExistingAuthToken.d.ts.map +0 -1
  225. package/dist/utilities/getExistingAuthToken.js +0 -18
  226. package/dist/utilities/getExistingAuthToken.js.map +0 -1
  227. package/dist/utilities/getPreferences.d.ts +0 -10
  228. package/dist/utilities/getPreferences.d.ts.map +0 -1
  229. package/dist/utilities/getPreferences.js +0 -33
  230. package/dist/utilities/getPreferences.js.map +0 -1
  231. package/dist/utilities/getRequestLocale.d.ts +0 -7
  232. package/dist/utilities/getRequestLocale.d.ts.map +0 -1
  233. package/dist/utilities/getRequestLocale.js +0 -20
  234. package/dist/utilities/getRequestLocale.js.map +0 -1
  235. package/dist/utilities/getRequestTheme.d.ts +0 -10
  236. package/dist/utilities/getRequestTheme.d.ts.map +0 -1
  237. package/dist/utilities/getRequestTheme.js +0 -25
  238. package/dist/utilities/getRequestTheme.js.map +0 -1
  239. package/dist/utilities/graphqlHandler.server.d.ts.map +0 -1
  240. package/dist/utilities/graphqlHandler.server.js.map +0 -1
  241. package/dist/utilities/handleServerFunctions.d.ts +0 -20
  242. package/dist/utilities/handleServerFunctions.d.ts.map +0 -1
  243. package/dist/utilities/handleServerFunctions.js +0 -60
  244. package/dist/utilities/handleServerFunctions.js.map +0 -1
  245. package/dist/utilities/importMap.server.d.ts +0 -9
  246. package/dist/utilities/importMap.server.d.ts.map +0 -1
  247. package/dist/utilities/importMap.server.js +0 -12
  248. package/dist/utilities/importMap.server.js.map +0 -1
  249. package/dist/utilities/initReq.server.d.ts +0 -19
  250. package/dist/utilities/initReq.server.d.ts.map +0 -1
  251. package/dist/utilities/initReq.server.js +0 -87
  252. package/dist/utilities/initReq.server.js.map +0 -1
  253. package/dist/utilities/meta.d.ts.map +0 -1
  254. package/dist/utilities/meta.js.map +0 -1
  255. package/dist/utilities/serializeForRsc.d.ts +0 -26
  256. package/dist/utilities/serializeForRsc.d.ts.map +0 -1
  257. package/dist/utilities/serializeForRsc.js +0 -105
  258. package/dist/utilities/serializeForRsc.js.map +0 -1
  259. package/dist/utilities/serverAdapter.server.d.ts.map +0 -1
  260. package/dist/utilities/serverAdapter.server.js.map +0 -1
  261. package/dist/utilities/serverFunctionHandlers.d.ts +0 -18
  262. package/dist/utilities/serverFunctionHandlers.d.ts.map +0 -1
  263. package/dist/utilities/serverFunctionHandlers.js +0 -17
  264. package/dist/utilities/serverFunctionHandlers.js.map +0 -1
  265. package/dist/utilities/setPayloadAuthCookie.d.ts +0 -9
  266. package/dist/utilities/setPayloadAuthCookie.d.ts.map +0 -1
  267. package/dist/utilities/setPayloadAuthCookie.js +0 -31
  268. package/dist/utilities/setPayloadAuthCookie.js.map +0 -1
  269. package/dist/utilities/toSerializable.d.ts +0 -2
  270. package/dist/utilities/toSerializable.d.ts.map +0 -1
  271. package/dist/utilities/toSerializable.js +0 -111
  272. package/dist/utilities/toSerializable.js.map +0 -1
  273. package/dist/vite/constants.d.ts +0 -37
  274. package/dist/vite/constants.d.ts.map +0 -1
  275. package/dist/vite/constants.js +0 -129
  276. package/dist/vite/constants.js.map +0 -1
  277. package/dist/vite/importProtection.d.ts.map +0 -1
  278. package/dist/vite/importProtection.js.map +0 -1
  279. package/dist/vite/plugin.d.ts +0 -38
  280. package/dist/vite/plugin.d.ts.map +0 -1
  281. package/dist/vite/plugin.js +0 -182
  282. package/dist/vite/plugin.js.map +0 -1
  283. package/dist/vite/plugins/clientModuleResolution.d.ts.map +0 -1
  284. package/dist/vite/plugins/clientModuleResolution.js.map +0 -1
  285. package/dist/vite/plugins/devTransforms.d.ts +0 -8
  286. package/dist/vite/plugins/devTransforms.d.ts.map +0 -1
  287. package/dist/vite/plugins/devTransforms.js.map +0 -1
  288. package/dist/vite/plugins/reactDomServerInRsc.d.ts.map +0 -1
  289. package/dist/vite/plugins/reactDomServerInRsc.js.map +0 -1
  290. package/dist/vite/plugins/stripDistStyleImports.d.ts.map +0 -1
  291. package/dist/vite/plugins/stripDistStyleImports.js +0 -89
  292. package/dist/vite/plugins/stripDistStyleImports.js.map +0 -1
  293. package/dist/vite/plugins/wrapCjsForClient.d.ts.map +0 -1
  294. package/dist/vite/plugins/wrapCjsForClient.js.map +0 -1
  295. /package/dist/{vite → withPayload}/importProtection.d.ts +0 -0
  296. /package/dist/{vite/plugins → withPayload/workarounds}/clientModuleResolution.d.ts +0 -0
  297. /package/dist/{vite/plugins → withPayload/workarounds}/clientModuleResolution.js +0 -0
  298. /package/dist/{vite/plugins → withPayload/workarounds}/reactDomServerInRsc.d.ts +0 -0
  299. /package/dist/{vite/plugins → withPayload/workarounds}/reactDomServerInRsc.js +0 -0
  300. /package/dist/{vite/plugins → withPayload/workarounds}/stripDistStyleImports.d.ts +0 -0
  301. /package/dist/{vite/plugins → withPayload/workarounds}/wrapCjsForClient.d.ts +0 -0
  302. /package/dist/{vite/plugins → withPayload/workarounds}/wrapCjsForClient.js +0 -0
@@ -1,116 +0,0 @@
1
- 'use client';
2
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { Gutter, RenderTitle, useAuth, useConfig, useTranslation } from '@payloadcms/ui';
4
- import '@payloadcms/ui/elements/DocumentHeader/index.scss';
5
- import '@payloadcms/ui/elements/DocumentHeader/Tabs/index.scss';
6
- import '@payloadcms/ui/elements/DocumentHeader/Tabs/Tab/index.scss';
7
- import { ShouldRenderTabs } from '@payloadcms/ui/elements/DocumentHeader/Tabs/ShouldRenderTabs';
8
- import { DocumentTabLink } from '@payloadcms/ui/elements/DocumentHeader/Tabs/Tab/TabLink';
9
- import { getTabs } from '@payloadcms/ui/elements/DocumentHeader/Tabs/tabs';
10
- import { RenderClientComponent } from '@payloadcms/ui/elements/RenderServerComponent/clientOnly';
11
- import React, { Fragment } from 'react';
12
- const baseClass = 'doc-header';
13
- const tabBaseClass = 'doc-tab';
14
- /**
15
- * Client-only DocumentHeader for non-RSC adapters.
16
- * Uses hooks to obtain config, permissions, and i18n instead of requiring `req`.
17
- */ export function DocumentHeaderClient({ collectionSlug, globalSlug, hideTabs, importMap }) {
18
- const { config, getEntityConfig } = useConfig();
19
- const { permissions } = useAuth();
20
- const { t } = useTranslation();
21
- const collectionConfig = collectionSlug ? getEntityConfig({
22
- collectionSlug
23
- }) : null;
24
- const globalConfig = globalSlug ? getEntityConfig({
25
- globalSlug
26
- }) : null;
27
- const tabs = getTabs({
28
- collectionConfig: collectionConfig,
29
- globalConfig: globalConfig
30
- });
31
- return /*#__PURE__*/ _jsx(Gutter, {
32
- className: baseClass,
33
- children: /*#__PURE__*/ _jsxs("div", {
34
- className: `${baseClass}__header`,
35
- children: [
36
- /*#__PURE__*/ _jsx(RenderTitle, {
37
- className: `${baseClass}__title`
38
- }),
39
- !hideTabs && /*#__PURE__*/ _jsx(ShouldRenderTabs, {
40
- children: /*#__PURE__*/ _jsx("div", {
41
- className: "doc-tabs",
42
- children: /*#__PURE__*/ _jsx("div", {
43
- className: "doc-tabs__tabs-container",
44
- children: /*#__PURE__*/ _jsx("ul", {
45
- className: "doc-tabs__tabs",
46
- children: tabs?.map(({ tab: tabConfig, viewPath }, index)=>{
47
- if (tabConfig?.condition) {
48
- const meetsCondition = tabConfig.condition({
49
- collectionConfig: collectionConfig,
50
- config: config,
51
- globalConfig: globalConfig,
52
- permissions: permissions ?? {},
53
- req: undefined
54
- });
55
- if (!meetsCondition) {
56
- return null;
57
- }
58
- }
59
- if (tabConfig?.Component) {
60
- return /*#__PURE__*/ _jsx(RenderClientComponent, {
61
- clientProps: {
62
- path: viewPath
63
- },
64
- Component: tabConfig.Component,
65
- importMap: importMap
66
- }, `tab-${index}`);
67
- }
68
- const label = typeof tabConfig.label === 'function' ? tabConfig.label({
69
- t: t
70
- }) : tabConfig.label ?? '';
71
- let href;
72
- if (typeof tabConfig.href === 'function') {
73
- href = tabConfig.href({
74
- apiURL: undefined,
75
- collection: collectionConfig,
76
- global: globalConfig,
77
- routes: config.routes
78
- });
79
- } else {
80
- href = tabConfig.href ?? '';
81
- }
82
- const { Pill, Pill_Component } = tabConfig;
83
- return /*#__PURE__*/ _jsx(DocumentTabLink, {
84
- adminRoute: config.routes.admin,
85
- ariaLabel: label,
86
- baseClass: tabBaseClass,
87
- href: href,
88
- newTab: tabConfig.newTab,
89
- children: /*#__PURE__*/ _jsxs("span", {
90
- className: `${tabBaseClass}__label`,
91
- children: [
92
- label,
93
- Pill || Pill_Component ? /*#__PURE__*/ _jsxs(Fragment, {
94
- children: [
95
- " ",
96
- RenderClientComponent({
97
- Component: Pill,
98
- Fallback: Pill_Component,
99
- importMap
100
- })
101
- ]
102
- }) : null
103
- ]
104
- })
105
- }, `tab-${index}`);
106
- })
107
- })
108
- })
109
- })
110
- })
111
- ]
112
- })
113
- });
114
- }
115
-
116
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/elements/DocumentHeaderClient/index.tsx"],"sourcesContent":["'use client'\n\nimport type { DocumentTabConfig, ImportMap } from 'payload'\n\nimport { Gutter, RenderTitle, useAuth, useConfig, useTranslation } from '@payloadcms/ui'\nimport '@payloadcms/ui/elements/DocumentHeader/index.scss'\nimport '@payloadcms/ui/elements/DocumentHeader/Tabs/index.scss'\nimport '@payloadcms/ui/elements/DocumentHeader/Tabs/Tab/index.scss'\nimport { ShouldRenderTabs } from '@payloadcms/ui/elements/DocumentHeader/Tabs/ShouldRenderTabs'\nimport { DocumentTabLink } from '@payloadcms/ui/elements/DocumentHeader/Tabs/Tab/TabLink'\nimport { getTabs } from '@payloadcms/ui/elements/DocumentHeader/Tabs/tabs'\nimport { RenderClientComponent } from '@payloadcms/ui/elements/RenderServerComponent/clientOnly'\nimport React, { Fragment } from 'react'\n\nconst baseClass = 'doc-header'\nconst tabBaseClass = 'doc-tab'\n\n/**\n * Client-only DocumentHeader for non-RSC adapters.\n * Uses hooks to obtain config, permissions, and i18n instead of requiring `req`.\n */\nexport function DocumentHeaderClient({\n collectionSlug,\n globalSlug,\n hideTabs,\n importMap,\n}: {\n collectionSlug?: string\n globalSlug?: string\n hideTabs?: boolean\n importMap: ImportMap\n}) {\n const { config, getEntityConfig } = useConfig()\n const { permissions } = useAuth()\n const { t } = useTranslation()\n\n const collectionConfig = collectionSlug ? getEntityConfig({ collectionSlug }) : null\n const globalConfig = globalSlug ? getEntityConfig({ globalSlug }) : null\n\n const tabs = getTabs({\n collectionConfig: collectionConfig as any,\n globalConfig: globalConfig as any,\n })\n\n return (\n <Gutter className={baseClass}>\n <div className={`${baseClass}__header`}>\n <RenderTitle className={`${baseClass}__title`} />\n {!hideTabs && (\n <ShouldRenderTabs>\n <div className=\"doc-tabs\">\n <div className=\"doc-tabs__tabs-container\">\n <ul className=\"doc-tabs__tabs\">\n {tabs?.map(({ tab: tabConfig, viewPath }, index) => {\n if (tabConfig?.condition) {\n const meetsCondition = tabConfig.condition({\n collectionConfig: collectionConfig as any,\n config: config as any,\n globalConfig: globalConfig as any,\n permissions: permissions ?? ({} as any),\n req: undefined as any,\n })\n if (!meetsCondition) {\n return null\n }\n }\n\n if (tabConfig?.Component) {\n return (\n <RenderClientComponent\n clientProps={{ path: viewPath }}\n Component={tabConfig.Component}\n importMap={importMap}\n key={`tab-${index}`}\n />\n )\n }\n\n const label =\n typeof tabConfig.label === 'function'\n ? tabConfig.label({ t: t as any })\n : ((tabConfig.label as string) ?? '')\n\n let href: string\n if (typeof tabConfig.href === 'function') {\n href = tabConfig.href({\n apiURL: undefined as any,\n collection: collectionConfig as any,\n global: globalConfig as any,\n routes: config.routes as any,\n })\n } else {\n href = (tabConfig.href as string) ?? ''\n }\n\n const { Pill, Pill_Component } = tabConfig as {\n Pill?: DocumentTabConfig['Pill']\n Pill_Component?: React.FC\n }\n\n return (\n <DocumentTabLink\n adminRoute={config.routes.admin}\n ariaLabel={label}\n baseClass={tabBaseClass}\n href={href}\n key={`tab-${index}`}\n newTab={tabConfig.newTab}\n >\n <span className={`${tabBaseClass}__label`}>\n {label}\n {Pill || Pill_Component ? (\n <Fragment>\n &nbsp;\n {RenderClientComponent({\n Component: Pill,\n Fallback: Pill_Component,\n importMap,\n })}\n </Fragment>\n ) : null}\n </span>\n </DocumentTabLink>\n )\n })}\n </ul>\n </div>\n </div>\n </ShouldRenderTabs>\n )}\n </div>\n </Gutter>\n )\n}\n"],"names":["Gutter","RenderTitle","useAuth","useConfig","useTranslation","ShouldRenderTabs","DocumentTabLink","getTabs","RenderClientComponent","React","Fragment","baseClass","tabBaseClass","DocumentHeaderClient","collectionSlug","globalSlug","hideTabs","importMap","config","getEntityConfig","permissions","t","collectionConfig","globalConfig","tabs","className","div","ul","map","tab","tabConfig","viewPath","index","condition","meetsCondition","req","undefined","Component","clientProps","path","label","href","apiURL","collection","global","routes","Pill","Pill_Component","adminRoute","admin","ariaLabel","newTab","span","Fallback"],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import type { ComponentRenderer } from 'payload';
2
- /**
3
- * TanStack Start component renderer.
4
- *
5
- * Uses the RSC-aware renderer that passes `serverProps` to server components
6
- * (detected via `$$typeof` / `isReactServerComponentOrFunction`) and
7
- * `clientProps` only to client components.
8
- */
9
- export declare const TanStackComponentRenderer: ComponentRenderer;
10
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/RenderComponent/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAIhD;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,EAAE,iBAEvC,CAAA"}
@@ -1,12 +0,0 @@
1
- import { RenderRSCComponent } from '../../rsc/renderPayloadRSC.js';
2
- /**
3
- * TanStack Start component renderer.
4
- *
5
- * Uses the RSC-aware renderer that passes `serverProps` to server components
6
- * (detected via `$$typeof` / `isReactServerComponentOrFunction`) and
7
- * `clientProps` only to client components.
8
- */ export const TanStackComponentRenderer = (args)=>{
9
- return RenderRSCComponent(args);
10
- };
11
-
12
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/elements/RenderComponent/index.tsx"],"sourcesContent":["import type { ComponentRenderer } from 'payload'\n\nimport { RenderRSCComponent } from '../../rsc/renderPayloadRSC.js'\n\n/**\n * TanStack Start component renderer.\n *\n * Uses the RSC-aware renderer that passes `serverProps` to server components\n * (detected via `$$typeof` / `isReactServerComponentOrFunction`) and\n * `clientProps` only to client components.\n */\nexport const TanStackComponentRenderer: ComponentRenderer = (args) => {\n return RenderRSCComponent(args)\n}\n"],"names":["RenderRSCComponent","TanStackComponentRenderer","args"],"mappings":"AAEA,SAASA,kBAAkB,QAAQ,gCAA+B;AAElE;;;;;;CAMC,GACD,OAAO,MAAMC,4BAA+C,CAACC;IAC3D,OAAOF,mBAAmBE;AAC5B,EAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/RouterAdapter/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAoB,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAsDvE,eAAO,MAAM,qBAAqB,EAAE,sBA+DnC,CAAA"}
@@ -1,118 +0,0 @@
1
- 'use client';
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import { RouterAdapterContext } from '@payloadcms/ui';
4
- import { Link as TanStackLink, useLocation, useParams, useRouter } from '@tanstack/react-router';
5
- import React, { useCallback, useMemo } from 'react';
6
- const normalizeNavigationTarget = ({ path, pathname, search })=>{
7
- if (path.startsWith('http')) {
8
- const url = new URL(path);
9
- return `${url.pathname}${url.search}${url.hash}`;
10
- }
11
- if (path.startsWith('?')) {
12
- return `${pathname}${path}`;
13
- }
14
- if (path.startsWith('#')) {
15
- return `${pathname}${search}${path}`;
16
- }
17
- return path;
18
- };
19
- const TanStackLinkAdapter = ({ children, href, prefetch, ref, replace, scroll, ...rest })=>{
20
- return /*#__PURE__*/ _jsx(TanStackLink, {
21
- preload: prefetch === false ? false : 'intent',
22
- ref: ref,
23
- replace: replace,
24
- resetScroll: scroll,
25
- to: href,
26
- ...rest,
27
- children: children
28
- });
29
- };
30
- export const TanStackRouterAdapter = ({ children })=>{
31
- const router = useRouter();
32
- const location = useLocation();
33
- const params = useParams({
34
- strict: false
35
- });
36
- const adaptedParams = useMemo(()=>{
37
- const adapted = {
38
- ...params
39
- };
40
- if ('_splat' in params && typeof params._splat === 'string') {
41
- adapted.segments = params._splat.split('/').filter(Boolean);
42
- }
43
- return adapted;
44
- }, [
45
- params
46
- ]);
47
- const back = useCallback(()=>router.history.back(), [
48
- router
49
- ]);
50
- const push = useCallback((path, options)=>{
51
- const relativePath = normalizeNavigationTarget({
52
- path,
53
- pathname: window.location.pathname,
54
- search: window.location.search
55
- });
56
- void router.navigate({
57
- resetScroll: options?.scroll,
58
- to: relativePath
59
- });
60
- }, [
61
- router
62
- ]);
63
- const refresh = useCallback(()=>{
64
- void router.invalidate();
65
- }, [
66
- router
67
- ]);
68
- const replace = useCallback((path, options)=>{
69
- const relativePath = normalizeNavigationTarget({
70
- path,
71
- pathname: window.location.pathname,
72
- search: window.location.search
73
- });
74
- void router.navigate({
75
- replace: true,
76
- resetScroll: options?.scroll,
77
- to: relativePath
78
- });
79
- }, [
80
- router
81
- ]);
82
- const adaptedRouter = useMemo(()=>({
83
- back,
84
- push,
85
- refresh,
86
- replace
87
- }), [
88
- back,
89
- push,
90
- refresh,
91
- replace
92
- ]);
93
- // `location.searchStr` is the serialized query string; `location.search` is
94
- // the parsed object (a nested structure once the router uses `qs` for search
95
- // serialization), which `URLSearchParams` cannot consume. Build from the
96
- // string so Payload's `parseSearchParams` re-parses the bracket notation.
97
- const searchParams = useMemo(()=>new URLSearchParams(location.searchStr), [
98
- location.searchStr
99
- ]);
100
- const value = useMemo(()=>({
101
- Link: TanStackLinkAdapter,
102
- params: adaptedParams,
103
- pathname: location.pathname,
104
- router: adaptedRouter,
105
- searchParams
106
- }), [
107
- adaptedParams,
108
- location.pathname,
109
- adaptedRouter,
110
- searchParams
111
- ]);
112
- return /*#__PURE__*/ _jsx(RouterAdapterContext, {
113
- value: value,
114
- children: children
115
- });
116
- };
117
-
118
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/elements/RouterAdapter/index.tsx"],"sourcesContent":["'use client'\n\nimport type { RouterAdapterContextValue } from '@payloadcms/ui'\nimport type { LinkAdapterProps, RouterAdapterComponent } from 'payload'\n\nimport { RouterAdapterContext } from '@payloadcms/ui'\nimport { Link as TanStackLink, useLocation, useParams, useRouter } from '@tanstack/react-router'\nimport React, { useCallback, useMemo } from 'react'\n\nconst normalizeNavigationTarget = ({\n path,\n pathname,\n search,\n}: {\n path: string\n pathname: string\n search: string\n}) => {\n if (path.startsWith('http')) {\n const url = new URL(path)\n return `${url.pathname}${url.search}${url.hash}`\n }\n\n if (path.startsWith('?')) {\n return `${pathname}${path}`\n }\n\n if (path.startsWith('#')) {\n return `${pathname}${search}${path}`\n }\n\n return path\n}\n\nconst TanStackLinkAdapter: React.FC<LinkAdapterProps> = ({\n children,\n href,\n prefetch,\n ref,\n replace,\n scroll,\n ...rest\n}) => {\n return (\n <TanStackLink\n preload={prefetch === false ? false : 'intent'}\n ref={ref}\n replace={replace}\n resetScroll={scroll}\n to={href}\n {...rest}\n >\n {children}\n </TanStackLink>\n )\n}\n\nexport const TanStackRouterAdapter: RouterAdapterComponent = ({ children }) => {\n const router = useRouter()\n const location = useLocation()\n const params = useParams({ strict: false })\n\n const adaptedParams = useMemo(() => {\n const adapted: Record<string, string | string[]> = { ...params }\n if ('_splat' in params && typeof params._splat === 'string') {\n adapted.segments = params._splat.split('/').filter(Boolean)\n }\n return adapted\n }, [params])\n\n const back = useCallback(() => router.history.back(), [router])\n const push = useCallback(\n (path: string, options?: { scroll?: boolean }) => {\n const relativePath = normalizeNavigationTarget({\n path,\n pathname: window.location.pathname,\n search: window.location.search,\n })\n void router.navigate({ resetScroll: options?.scroll, to: relativePath })\n },\n [router],\n )\n const refresh = useCallback(() => {\n void router.invalidate()\n }, [router])\n const replace = useCallback(\n (path: string, options?: { scroll?: boolean }) => {\n const relativePath = normalizeNavigationTarget({\n path,\n pathname: window.location.pathname,\n search: window.location.search,\n })\n void router.navigate({ replace: true, resetScroll: options?.scroll, to: relativePath })\n },\n [router],\n )\n\n const adaptedRouter = useMemo(\n () => ({ back, push, refresh, replace }),\n [back, push, refresh, replace],\n )\n\n // `location.searchStr` is the serialized query string; `location.search` is\n // the parsed object (a nested structure once the router uses `qs` for search\n // serialization), which `URLSearchParams` cannot consume. Build from the\n // string so Payload's `parseSearchParams` re-parses the bracket notation.\n const searchParams = useMemo(() => new URLSearchParams(location.searchStr), [location.searchStr])\n\n const value: RouterAdapterContextValue = useMemo(\n () => ({\n Link: TanStackLinkAdapter,\n params: adaptedParams,\n pathname: location.pathname,\n router: adaptedRouter,\n searchParams,\n }),\n [adaptedParams, location.pathname, adaptedRouter, searchParams],\n )\n\n return <RouterAdapterContext value={value}>{children}</RouterAdapterContext>\n}\n"],"names":["RouterAdapterContext","Link","TanStackLink","useLocation","useParams","useRouter","React","useCallback","useMemo","normalizeNavigationTarget","path","pathname","search","startsWith","url","URL","hash","TanStackLinkAdapter","children","href","prefetch","ref","replace","scroll","rest","preload","resetScroll","to","TanStackRouterAdapter","router","location","params","strict","adaptedParams","adapted","_splat","segments","split","filter","Boolean","back","history","push","options","relativePath","window","navigate","refresh","invalidate","adaptedRouter","searchParams","URLSearchParams","searchStr","value"],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export { payloadPlugin } from '../vite/plugin.js';
2
- export type { PayloadPluginOptions } from '../vite/plugin.js';
3
- //# sourceMappingURL=vite.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../../src/exports/vite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA"}
@@ -1,3 +0,0 @@
1
- export { payloadPlugin } from '../vite/plugin.js';
2
-
3
- //# sourceMappingURL=vite.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/exports/vite.ts"],"sourcesContent":["export { payloadPlugin } from '../vite/plugin.js'\nexport type { PayloadPluginOptions } from '../vite/plugin.js'\n"],"names":["payloadPlugin"],"mappings":"AAAA,SAASA,aAAa,QAAQ,oBAAmB"}
@@ -1,12 +0,0 @@
1
- import type { ImportMap, SanitizedConfig } from 'payload';
2
- import type { RootLayoutData } from './index.js';
3
- export type GetLayoutDataArgs = {
4
- configPromise: Promise<SanitizedConfig> | SanitizedConfig;
5
- importMap: ImportMap;
6
- };
7
- /**
8
- * Fetches all data needed by the root admin layout.
9
- * Call this in your TanStack Start root route loader.
10
- */
11
- export declare function getLayoutData({ configPromise, importMap, }: GetLayoutDataArgs): Promise<RootLayoutData>;
12
- //# sourceMappingURL=getLayoutData.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getLayoutData.d.ts","sourceRoot":"","sources":["../../../src/layouts/Root/getLayoutData.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAmB,eAAe,EAAE,MAAM,SAAS,CAAA;AAM1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAKhD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IACzD,SAAS,EAAE,SAAS,CAAA;CACrB,CAAA;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,EAClC,aAAa,EACb,SAAS,GACV,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAkD7C"}
@@ -1,55 +0,0 @@
1
- import { getNavPrefs } from '@payloadcms/ui/elements/Nav/getNavPrefs';
2
- import { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig';
3
- import { applyLocaleFiltering } from 'payload/shared';
4
- import { getRequestTheme } from '../../utilities/getRequestTheme.js';
5
- import { initReq } from '../../utilities/initReq.server.js';
6
- /**
7
- * Fetches all data needed by the root admin layout.
8
- * Call this in your TanStack Start root route loader.
9
- */ export async function getLayoutData({ configPromise, importMap }) {
10
- const { cookies, headers, languageCode, permissions, req, req: { payload: { config } } } = await initReq({
11
- configPromise,
12
- importMap
13
- });
14
- const theme = getRequestTheme({
15
- config,
16
- cookies,
17
- headers
18
- });
19
- const languageOptions = Object.entries(config.i18n.supportedLanguages || {}).reduce((acc, [language, languageConfig])=>{
20
- if (Object.keys(config.i18n.supportedLanguages).includes(language)) {
21
- acc.push({
22
- label: languageConfig.translations.general.thisLanguage,
23
- value: language
24
- });
25
- }
26
- return acc;
27
- }, []);
28
- const navPrefs = await getNavPrefs(req);
29
- const clientConfig = getClientConfig({
30
- config,
31
- i18n: req.i18n,
32
- importMap,
33
- user: req.user ?? true
34
- });
35
- await applyLocaleFiltering({
36
- clientConfig,
37
- config,
38
- req
39
- });
40
- return {
41
- clientConfig,
42
- dateFNSKey: req.i18n.dateFNSKey,
43
- fallbackLang: config.i18n.fallbackLanguage,
44
- isNavOpen: navPrefs?.open ?? true,
45
- languageCode,
46
- languageOptions,
47
- locale: req.locale ?? undefined,
48
- permissions,
49
- theme,
50
- translations: req.i18n.translations,
51
- user: req.user
52
- };
53
- }
54
-
55
- //# sourceMappingURL=getLayoutData.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/layouts/Root/getLayoutData.ts"],"sourcesContent":["import type { AcceptedLanguages } from '@payloadcms/translations'\nimport type { ImportMap, LanguageOptions, SanitizedConfig } from 'payload'\n\nimport { getNavPrefs } from '@payloadcms/ui/elements/Nav/getNavPrefs'\nimport { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig'\nimport { applyLocaleFiltering } from 'payload/shared'\n\nimport type { RootLayoutData } from './index.js'\n\nimport { getRequestTheme } from '../../utilities/getRequestTheme.js'\nimport { initReq } from '../../utilities/initReq.server.js'\n\nexport type GetLayoutDataArgs = {\n configPromise: Promise<SanitizedConfig> | SanitizedConfig\n importMap: ImportMap\n}\n\n/**\n * Fetches all data needed by the root admin layout.\n * Call this in your TanStack Start root route loader.\n */\nexport async function getLayoutData({\n configPromise,\n importMap,\n}: GetLayoutDataArgs): Promise<RootLayoutData> {\n const {\n cookies,\n headers,\n languageCode,\n permissions,\n req,\n req: {\n payload: { config },\n },\n } = await initReq({ configPromise, importMap })\n\n const theme = getRequestTheme({ config, cookies, headers })\n\n const languageOptions: LanguageOptions = Object.entries(\n config.i18n.supportedLanguages || {},\n ).reduce((acc, [language, languageConfig]) => {\n if (Object.keys(config.i18n.supportedLanguages).includes(language)) {\n acc.push({\n label: languageConfig.translations.general.thisLanguage,\n value: language as AcceptedLanguages,\n })\n }\n return acc\n }, [] as LanguageOptions)\n\n const navPrefs = await getNavPrefs(req)\n\n const clientConfig = getClientConfig({\n config,\n i18n: req.i18n,\n importMap,\n user: req.user ?? true,\n })\n\n await applyLocaleFiltering({ clientConfig, config, req })\n\n return {\n clientConfig,\n dateFNSKey: req.i18n.dateFNSKey,\n fallbackLang: config.i18n.fallbackLanguage,\n isNavOpen: navPrefs?.open ?? true,\n languageCode,\n languageOptions,\n locale: req.locale ?? undefined,\n permissions,\n theme,\n translations: req.i18n.translations,\n user: req.user,\n }\n}\n"],"names":["getNavPrefs","getClientConfig","applyLocaleFiltering","getRequestTheme","initReq","getLayoutData","configPromise","importMap","cookies","headers","languageCode","permissions","req","payload","config","theme","languageOptions","Object","entries","i18n","supportedLanguages","reduce","acc","language","languageConfig","keys","includes","push","label","translations","general","thisLanguage","value","navPrefs","clientConfig","user","dateFNSKey","fallbackLang","fallbackLanguage","isNavOpen","open","locale","undefined"],"mappings":"AAGA,SAASA,WAAW,QAAQ,0CAAyC;AACrE,SAASC,eAAe,QAAQ,2CAA0C;AAC1E,SAASC,oBAAoB,QAAQ,iBAAgB;AAIrD,SAASC,eAAe,QAAQ,qCAAoC;AACpE,SAASC,OAAO,QAAQ,oCAAmC;AAO3D;;;CAGC,GACD,OAAO,eAAeC,cAAc,EAClCC,aAAa,EACbC,SAAS,EACS;IAClB,MAAM,EACJC,OAAO,EACPC,OAAO,EACPC,YAAY,EACZC,WAAW,EACXC,GAAG,EACHA,KAAK,EACHC,SAAS,EAAEC,MAAM,EAAE,EACpB,EACF,GAAG,MAAMV,QAAQ;QAAEE;QAAeC;IAAU;IAE7C,MAAMQ,QAAQZ,gBAAgB;QAAEW;QAAQN;QAASC;IAAQ;IAEzD,MAAMO,kBAAmCC,OAAOC,OAAO,CACrDJ,OAAOK,IAAI,CAACC,kBAAkB,IAAI,CAAC,GACnCC,MAAM,CAAC,CAACC,KAAK,CAACC,UAAUC,eAAe;QACvC,IAAIP,OAAOQ,IAAI,CAACX,OAAOK,IAAI,CAACC,kBAAkB,EAAEM,QAAQ,CAACH,WAAW;YAClED,IAAIK,IAAI,CAAC;gBACPC,OAAOJ,eAAeK,YAAY,CAACC,OAAO,CAACC,YAAY;gBACvDC,OAAOT;YACT;QACF;QACA,OAAOD;IACT,GAAG,EAAE;IAEL,MAAMW,WAAW,MAAMjC,YAAYY;IAEnC,MAAMsB,eAAejC,gBAAgB;QACnCa;QACAK,MAAMP,IAAIO,IAAI;QACdZ;QACA4B,MAAMvB,IAAIuB,IAAI,IAAI;IACpB;IAEA,MAAMjC,qBAAqB;QAAEgC;QAAcpB;QAAQF;IAAI;IAEvD,OAAO;QACLsB;QACAE,YAAYxB,IAAIO,IAAI,CAACiB,UAAU;QAC/BC,cAAcvB,OAAOK,IAAI,CAACmB,gBAAgB;QAC1CC,WAAWN,UAAUO,QAAQ;QAC7B9B;QACAM;QACAyB,QAAQ7B,IAAI6B,MAAM,IAAIC;QACtB/B;QACAI;QACAc,cAAcjB,IAAIO,IAAI,CAACU,YAAY;QACnCM,MAAMvB,IAAIuB,IAAI;IAChB;AACF"}
@@ -1,25 +0,0 @@
1
- import type { I18nClient } from '@payloadcms/translations';
2
- import type { Theme } from '@payloadcms/ui';
3
- import type { ClientConfig, LanguageOptions, SanitizedPermissions, ServerFunctionClient, TypedUser } from 'payload';
4
- import React from 'react';
5
- import '@payloadcms/ui/scss/app.scss';
6
- export type RootLayoutData = {
7
- clientConfig: ClientConfig;
8
- dateFNSKey: I18nClient['dateFNSKey'];
9
- fallbackLang: string;
10
- isNavOpen: boolean;
11
- languageCode: string;
12
- languageOptions: LanguageOptions;
13
- locale?: string;
14
- permissions: SanitizedPermissions;
15
- theme: Theme;
16
- translations: I18nClient['translations'];
17
- user: null | TypedUser;
18
- };
19
- export type RootLayoutProps = {
20
- readonly children: React.ReactNode;
21
- readonly data: RootLayoutData;
22
- readonly serverFunction: ServerFunctionClient;
23
- };
24
- export declare function RootLayout({ children, data, serverFunction }: RootLayoutProps): React.JSX.Element;
25
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layouts/Root/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAqB,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC7E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,SAAS,EACV,MAAM,SAAS,CAAA;AAIhB,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,8BAA8B,CAAA;AAIrC,MAAM,MAAM,cAAc,GAAG;IAC3B,YAAY,EAAE,YAAY,CAAA;IAC1B,UAAU,EAAE,UAAU,CAAC,YAAY,CAAC,CAAA;IACpC,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,OAAO,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,eAAe,CAAA;IAChC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,oBAAoB,CAAA;IACjC,KAAK,EAAE,KAAK,CAAA;IACZ,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,CAAA;IACxC,IAAI,EAAE,IAAI,GAAG,SAAS,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;IAC7B,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAA;CAC9C,CAAA;AAED,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,eAAe,qBAgC7E"}
@@ -1,51 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { rtlLanguages } from '@payloadcms/translations';
3
- import { ProgressBar, RootProvider } from '@payloadcms/ui';
4
- import React from 'react';
5
- import '@payloadcms/ui/scss/app.scss';
6
- import { TanStackRouterAdapter } from '../../elements/RouterAdapter/index.js';
7
- export function RootLayout({ children, data, serverFunction }) {
8
- const dir = rtlLanguages.includes(data.languageCode) ? 'RTL' : 'LTR';
9
- return /*#__PURE__*/ _jsxs("html", {
10
- "data-theme": data.theme,
11
- dir: dir,
12
- lang: data.languageCode,
13
- suppressHydrationWarning: true,
14
- children: [
15
- /*#__PURE__*/ _jsx("head", {
16
- children: /*#__PURE__*/ _jsx("style", {
17
- children: `@layer payload-default, payload;`
18
- })
19
- }),
20
- /*#__PURE__*/ _jsxs("body", {
21
- children: [
22
- /*#__PURE__*/ _jsxs(RootProvider, {
23
- config: data.clientConfig,
24
- dateFNSKey: data.dateFNSKey,
25
- fallbackLang: data.fallbackLang,
26
- highContrastMode: false,
27
- isNavOpen: data.isNavOpen,
28
- languageCode: data.languageCode,
29
- languageOptions: data.languageOptions,
30
- locale: data.locale,
31
- permissions: data.user ? data.permissions : null,
32
- RouterAdapter: TanStackRouterAdapter,
33
- serverFunction: serverFunction,
34
- theme: data.theme,
35
- translations: data.translations,
36
- user: data.user,
37
- children: [
38
- /*#__PURE__*/ _jsx(ProgressBar, {}),
39
- children
40
- ]
41
- }),
42
- /*#__PURE__*/ _jsx("div", {
43
- id: "portal"
44
- })
45
- ]
46
- })
47
- ]
48
- });
49
- }
50
-
51
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/layouts/Root/index.tsx"],"sourcesContent":["import type { AcceptedLanguages, I18nClient } from '@payloadcms/translations'\nimport type { Theme } from '@payloadcms/ui'\nimport type {\n ClientConfig,\n LanguageOptions,\n SanitizedPermissions,\n ServerFunctionClient,\n TypedUser,\n} from 'payload'\n\nimport { rtlLanguages } from '@payloadcms/translations'\nimport { ProgressBar, RootProvider } from '@payloadcms/ui'\nimport React from 'react'\nimport '@payloadcms/ui/scss/app.scss'\n\nimport { TanStackRouterAdapter } from '../../elements/RouterAdapter/index.js'\n\nexport type RootLayoutData = {\n clientConfig: ClientConfig\n dateFNSKey: I18nClient['dateFNSKey']\n fallbackLang: string\n isNavOpen: boolean\n languageCode: string\n languageOptions: LanguageOptions\n locale?: string\n permissions: SanitizedPermissions\n theme: Theme\n translations: I18nClient['translations']\n user: null | TypedUser\n}\n\nexport type RootLayoutProps = {\n readonly children: React.ReactNode\n readonly data: RootLayoutData\n readonly serverFunction: ServerFunctionClient\n}\n\nexport function RootLayout({ children, data, serverFunction }: RootLayoutProps) {\n const dir = (rtlLanguages as unknown as string[]).includes(data.languageCode) ? 'RTL' : 'LTR'\n\n return (\n <html data-theme={data.theme} dir={dir} lang={data.languageCode} suppressHydrationWarning>\n <head>\n <style>{`@layer payload-default, payload;`}</style>\n </head>\n <body>\n <RootProvider\n config={data.clientConfig}\n dateFNSKey={data.dateFNSKey}\n fallbackLang={data.fallbackLang as AcceptedLanguages}\n highContrastMode={false}\n isNavOpen={data.isNavOpen}\n languageCode={data.languageCode}\n languageOptions={data.languageOptions}\n locale={data.locale}\n permissions={(data.user ? data.permissions : null) as unknown as SanitizedPermissions}\n RouterAdapter={TanStackRouterAdapter}\n serverFunction={serverFunction}\n theme={data.theme}\n translations={data.translations}\n user={data.user}\n >\n <ProgressBar />\n {children}\n </RootProvider>\n <div id=\"portal\" />\n </body>\n </html>\n )\n}\n"],"names":["rtlLanguages","ProgressBar","RootProvider","React","TanStackRouterAdapter","RootLayout","children","data","serverFunction","dir","includes","languageCode","html","data-theme","theme","lang","suppressHydrationWarning","head","style","body","config","clientConfig","dateFNSKey","fallbackLang","highContrastMode","isNavOpen","languageOptions","locale","permissions","user","RouterAdapter","translations","div","id"],"mappings":";AAUA,SAASA,YAAY,QAAQ,2BAA0B;AACvD,SAASC,WAAW,EAAEC,YAAY,QAAQ,iBAAgB;AAC1D,OAAOC,WAAW,QAAO;AACzB,OAAO,+BAA8B;AAErC,SAASC,qBAAqB,QAAQ,wCAAuC;AAsB7E,OAAO,SAASC,WAAW,EAAEC,QAAQ,EAAEC,IAAI,EAAEC,cAAc,EAAmB;IAC5E,MAAMC,MAAM,AAACT,aAAqCU,QAAQ,CAACH,KAAKI,YAAY,IAAI,QAAQ;IAExF,qBACE,MAACC;QAAKC,cAAYN,KAAKO,KAAK;QAAEL,KAAKA;QAAKM,MAAMR,KAAKI,YAAY;QAAEK,wBAAwB;;0BACvF,KAACC;0BACC,cAAA,KAACC;8BAAO,CAAC,gCAAgC,CAAC;;;0BAE5C,MAACC;;kCACC,MAACjB;wBACCkB,QAAQb,KAAKc,YAAY;wBACzBC,YAAYf,KAAKe,UAAU;wBAC3BC,cAAchB,KAAKgB,YAAY;wBAC/BC,kBAAkB;wBAClBC,WAAWlB,KAAKkB,SAAS;wBACzBd,cAAcJ,KAAKI,YAAY;wBAC/Be,iBAAiBnB,KAAKmB,eAAe;wBACrCC,QAAQpB,KAAKoB,MAAM;wBACnBC,aAAcrB,KAAKsB,IAAI,GAAGtB,KAAKqB,WAAW,GAAG;wBAC7CE,eAAe1B;wBACfI,gBAAgBA;wBAChBM,OAAOP,KAAKO,KAAK;wBACjBiB,cAAcxB,KAAKwB,YAAY;wBAC/BF,MAAMtB,KAAKsB,IAAI;;0CAEf,KAAC5B;4BACAK;;;kCAEH,KAAC0B;wBAAIC,IAAG;;;;;;AAIhB"}
@@ -1,3 +0,0 @@
1
- export function resolve(specifier: any, context: any, nextResolve: any): Promise<any>;
2
- export function load(url: any, context: any, nextLoad: any): Promise<any>;
3
- //# sourceMappingURL=cssLoader.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cssLoader.d.mts","sourceRoot":"","sources":["../../src/node/cssLoader.mjs"],"names":[],"mappings":"AAsDA,sFASC;AAED,0EASC"}
@@ -1,70 +0,0 @@
1
- /**
2
- * Node ESM loader hook that swallows static asset imports (CSS/SCSS/LESS,
3
- * images, fonts, audio, video, etc.) encountered while running the dev
4
- * server.
5
- *
6
- * Vite is supposed to intercept asset imports during SSR/RSC by treating
7
- * the package as `noExternal`, but that resolution path silently breaks down
8
- * when a dependency is installed from a packed tarball under
9
- * `node_modules/.pnpm/<pkg>@file+packed+...`. In that scenario Vite hands the
10
- * import to Node's native ESM loader, which has no opinion about `.css` /
11
- * `.svg` / `.png` files and throws `ERR_UNKNOWN_FILE_EXTENSION`. That single
12
- * throw cascades into every admin route showing "Something went wrong!"
13
- * because the SSR tree dies inside `<MatchInnerImpl>`.
14
- *
15
- * Registering this loader (with `--import` or `register()`) makes Node treat
16
- * any asset specifier as an empty ES module, which is exactly what we
17
- * already do client-side for SSR.
18
- *
19
- * The loader is intentionally minimal and side-effect free; it only kicks in
20
- * for asset specifiers and falls through to the default loader for
21
- * everything else.
22
- */ const STYLE_EXTENSION_RE = /\.(?:s?css|less)(?:\?[^#]*)?(?:#.*)?$/i;
23
- const ASSET_EXTENSION_RE = /\.(?:svg|png|jpe?g|gif|webp|avif|ico|bmp|tiff?|woff2?|ttf|otf|eot|mp[34]|webm|ogg|oga|wav|flac|m4a|m4v|mov|pdf)(?:\?[^#]*)?(?:#.*)?$/i;
24
- const isStylesheet = (s)=>STYLE_EXTENSION_RE.test(s);
25
- const isStaticAsset = (s)=>ASSET_EXTENSION_RE.test(s);
26
- const stubSource = (specifier)=>{
27
- if (isStylesheet(specifier)) {
28
- // Stylesheet imports usually have no JS-visible exports, so an empty
29
- // module is fine and matches Vite's `?inline` / extracted-css behaviour.
30
- return '';
31
- }
32
- // Treat every other static asset like Vite's default asset pipeline:
33
- // expose the (escaped) specifier as both a default export and a `src`
34
- // property. This lets code like
35
- // import logo from './logo.svg' -> uses the default export
36
- // import { src } from './logo.png' -> Next.js `StaticImageData` shim
37
- // logo === '/logo.svg' -> truthy, sufficient for tests
38
- // continue to work without crashing during SSR.
39
- const value = JSON.stringify(specifier);
40
- return `const __asset = ${value};
41
- export default __asset;
42
- export const src = __asset;
43
- export const height = 0;
44
- export const width = 0;
45
- export const blurWidth = 0;
46
- export const blurHeight = 0;
47
- `;
48
- };
49
- export async function resolve(specifier, context, nextResolve) {
50
- if (isStylesheet(specifier) || isStaticAsset(specifier)) {
51
- return {
52
- format: 'module',
53
- shortCircuit: true,
54
- url: `data:text/javascript;base64,${Buffer.from(stubSource(specifier)).toString('base64')}`
55
- };
56
- }
57
- return nextResolve(specifier, context);
58
- }
59
- export async function load(url, context, nextLoad) {
60
- if (isStylesheet(url) || isStaticAsset(url)) {
61
- return {
62
- format: 'module',
63
- shortCircuit: true,
64
- source: stubSource(url)
65
- };
66
- }
67
- return nextLoad(url, context);
68
- }
69
-
70
- //# sourceMappingURL=cssLoader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/node/cssLoader.mjs"],"sourcesContent":["/**\n * Node ESM loader hook that swallows static asset imports (CSS/SCSS/LESS,\n * images, fonts, audio, video, etc.) encountered while running the dev\n * server.\n *\n * Vite is supposed to intercept asset imports during SSR/RSC by treating\n * the package as `noExternal`, but that resolution path silently breaks down\n * when a dependency is installed from a packed tarball under\n * `node_modules/.pnpm/<pkg>@file+packed+...`. In that scenario Vite hands the\n * import to Node's native ESM loader, which has no opinion about `.css` /\n * `.svg` / `.png` files and throws `ERR_UNKNOWN_FILE_EXTENSION`. That single\n * throw cascades into every admin route showing \"Something went wrong!\"\n * because the SSR tree dies inside `<MatchInnerImpl>`.\n *\n * Registering this loader (with `--import` or `register()`) makes Node treat\n * any asset specifier as an empty ES module, which is exactly what we\n * already do client-side for SSR.\n *\n * The loader is intentionally minimal and side-effect free; it only kicks in\n * for asset specifiers and falls through to the default loader for\n * everything else.\n */\n\nconst STYLE_EXTENSION_RE = /\\.(?:s?css|less)(?:\\?[^#]*)?(?:#.*)?$/i\nconst ASSET_EXTENSION_RE =\n /\\.(?:svg|png|jpe?g|gif|webp|avif|ico|bmp|tiff?|woff2?|ttf|otf|eot|mp[34]|webm|ogg|oga|wav|flac|m4a|m4v|mov|pdf)(?:\\?[^#]*)?(?:#.*)?$/i\n\nconst isStylesheet = (s) => STYLE_EXTENSION_RE.test(s)\nconst isStaticAsset = (s) => ASSET_EXTENSION_RE.test(s)\n\nconst stubSource = (specifier) => {\n if (isStylesheet(specifier)) {\n // Stylesheet imports usually have no JS-visible exports, so an empty\n // module is fine and matches Vite's `?inline` / extracted-css behaviour.\n return ''\n }\n // Treat every other static asset like Vite's default asset pipeline:\n // expose the (escaped) specifier as both a default export and a `src`\n // property. This lets code like\n // import logo from './logo.svg' -> uses the default export\n // import { src } from './logo.png' -> Next.js `StaticImageData` shim\n // logo === '/logo.svg' -> truthy, sufficient for tests\n // continue to work without crashing during SSR.\n const value = JSON.stringify(specifier)\n return `const __asset = ${value};\nexport default __asset;\nexport const src = __asset;\nexport const height = 0;\nexport const width = 0;\nexport const blurWidth = 0;\nexport const blurHeight = 0;\n`\n}\n\nexport async function resolve(specifier, context, nextResolve) {\n if (isStylesheet(specifier) || isStaticAsset(specifier)) {\n return {\n format: 'module',\n shortCircuit: true,\n url: `data:text/javascript;base64,${Buffer.from(stubSource(specifier)).toString('base64')}`,\n }\n }\n return nextResolve(specifier, context)\n}\n\nexport async function load(url, context, nextLoad) {\n if (isStylesheet(url) || isStaticAsset(url)) {\n return {\n format: 'module',\n shortCircuit: true,\n source: stubSource(url),\n }\n }\n return nextLoad(url, context)\n}\n"],"names":["STYLE_EXTENSION_RE","ASSET_EXTENSION_RE","isStylesheet","s","test","isStaticAsset","stubSource","specifier","value","JSON","stringify","resolve","context","nextResolve","format","shortCircuit","url","Buffer","from","toString","load","nextLoad","source"],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;CAqBC,GAED,MAAMA,qBAAqB;AAC3B,MAAMC,qBACJ;AAEF,MAAMC,eAAe,CAACC,IAAMH,mBAAmBI,IAAI,CAACD;AACpD,MAAME,gBAAgB,CAACF,IAAMF,mBAAmBG,IAAI,CAACD;AAErD,MAAMG,aAAa,CAACC;IAClB,IAAIL,aAAaK,YAAY;QAC3B,qEAAqE;QACrE,yEAAyE;QACzE,OAAO;IACT;IACA,qEAAqE;IACrE,sEAAsE;IACtE,gCAAgC;IAChC,oEAAoE;IACpE,2EAA2E;IAC3E,yEAAyE;IACzE,gDAAgD;IAChD,MAAMC,QAAQC,KAAKC,SAAS,CAACH;IAC7B,OAAO,CAAC,gBAAgB,EAAEC,MAAM;;;;;;;AAOlC,CAAC;AACD;AAEA,OAAO,eAAeG,QAAQJ,SAAS,EAAEK,OAAO,EAAEC,WAAW;IAC3D,IAAIX,aAAaK,cAAcF,cAAcE,YAAY;QACvD,OAAO;YACLO,QAAQ;YACRC,cAAc;YACdC,KAAK,CAAC,4BAA4B,EAAEC,OAAOC,IAAI,CAACZ,WAAWC,YAAYY,QAAQ,CAAC,WAAW;QAC7F;IACF;IACA,OAAON,YAAYN,WAAWK;AAChC;AAEA,OAAO,eAAeQ,KAAKJ,GAAG,EAAEJ,OAAO,EAAES,QAAQ;IAC/C,IAAInB,aAAac,QAAQX,cAAcW,MAAM;QAC3C,OAAO;YACLF,QAAQ;YACRC,cAAc;YACdO,QAAQhB,WAAWU;QACrB;IACF;IACA,OAAOK,SAASL,KAAKJ;AACvB"}