@payloadcms/tanstack-start 4.0.0-internal.293e026 → 4.0.0-internal.2a3c3bc

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 (283) hide show
  1. package/LICENSE.md +1 -1
  2. package/dist/adapters/handleServerFunctions.d.ts +2 -0
  3. package/dist/adapters/handleServerFunctions.d.ts.map +1 -0
  4. package/dist/adapters/handleServerFunctions.js +9 -0
  5. package/dist/adapters/handleServerFunctions.js.map +1 -0
  6. package/dist/adapters/layout/index.d.ts +66 -0
  7. package/dist/adapters/layout/index.d.ts.map +1 -0
  8. package/dist/adapters/layout/index.js +105 -0
  9. package/dist/adapters/layout/index.js.map +1 -0
  10. package/dist/adapters/layout/lazy.d.ts +11 -0
  11. package/dist/adapters/layout/lazy.d.ts.map +1 -0
  12. package/dist/adapters/layout/lazy.js +23 -0
  13. package/dist/adapters/layout/lazy.js.map +1 -0
  14. package/dist/adapters/layout/server.d.ts +29 -0
  15. package/dist/adapters/layout/server.d.ts.map +1 -0
  16. package/dist/adapters/layout/server.js +63 -0
  17. package/dist/adapters/layout/server.js.map +1 -0
  18. package/dist/{utilities/meta.d.ts → adapters/metadata.d.ts} +11 -1
  19. package/dist/adapters/metadata.d.ts.map +1 -0
  20. package/dist/{utilities/meta.js → adapters/metadata.js} +62 -2
  21. package/dist/adapters/metadata.js.map +1 -0
  22. package/dist/{elements/RouterAdapter/index.d.ts → adapters/router.d.ts} +1 -1
  23. package/dist/adapters/router.d.ts.map +1 -0
  24. package/dist/adapters/router.js +179 -0
  25. package/dist/adapters/router.js.map +1 -0
  26. package/dist/{utilities/serverAdapter.server.d.ts → adapters/server.d.ts} +1 -1
  27. package/dist/adapters/server.d.ts.map +1 -0
  28. package/dist/{utilities/serverAdapter.server.js → adapters/server.js} +3 -30
  29. package/dist/adapters/server.js.map +1 -0
  30. package/dist/adapters/views/index.d.ts +104 -0
  31. package/dist/adapters/views/index.d.ts.map +1 -0
  32. package/dist/adapters/views/index.js +80 -0
  33. package/dist/adapters/views/index.js.map +1 -0
  34. package/dist/adapters/views/lazy.d.ts +4 -0
  35. package/dist/adapters/views/lazy.d.ts.map +1 -0
  36. package/dist/adapters/views/lazy.js +43 -0
  37. package/dist/adapters/views/lazy.js.map +1 -0
  38. package/dist/adapters/views/server.d.ts +57 -0
  39. package/dist/adapters/views/server.d.ts.map +1 -0
  40. package/dist/adapters/views/server.js +169 -0
  41. package/dist/adapters/views/server.js.map +1 -0
  42. package/dist/auth/login.d.ts +3 -16
  43. package/dist/auth/login.d.ts.map +1 -1
  44. package/dist/auth/login.js +6 -46
  45. package/dist/auth/login.js.map +1 -1
  46. package/dist/auth/logout.d.ts +2 -5
  47. package/dist/auth/logout.d.ts.map +1 -1
  48. package/dist/auth/logout.js +6 -47
  49. package/dist/auth/logout.js.map +1 -1
  50. package/dist/auth/refresh.d.ts +2 -4
  51. package/dist/auth/refresh.d.ts.map +1 -1
  52. package/dist/auth/refresh.js +6 -49
  53. package/dist/auth/refresh.js.map +1 -1
  54. package/dist/exports/client.d.ts +3 -3
  55. package/dist/exports/client.d.ts.map +1 -1
  56. package/dist/exports/client.js +3 -3
  57. package/dist/exports/client.js.map +1 -1
  58. package/dist/exports/layouts.d.ts +2 -4
  59. package/dist/exports/layouts.d.ts.map +1 -1
  60. package/dist/exports/layouts.js +1 -2
  61. package/dist/exports/layouts.js.map +1 -1
  62. package/dist/exports/rsc.browser.d.ts +4 -1
  63. package/dist/exports/rsc.browser.d.ts.map +1 -1
  64. package/dist/exports/rsc.browser.js +4 -1
  65. package/dist/exports/rsc.browser.js.map +1 -1
  66. package/dist/exports/rsc.d.ts +0 -1
  67. package/dist/exports/rsc.d.ts.map +1 -1
  68. package/dist/exports/rsc.js +0 -1
  69. package/dist/exports/rsc.js.map +1 -1
  70. package/dist/exports/server.d.ts +9 -10
  71. package/dist/exports/server.d.ts.map +1 -1
  72. package/dist/exports/server.js +8 -9
  73. package/dist/exports/server.js.map +1 -1
  74. package/dist/exports/shared.d.ts +2 -0
  75. package/dist/exports/shared.d.ts.map +1 -0
  76. package/dist/exports/shared.js +3 -0
  77. package/dist/exports/shared.js.map +1 -0
  78. package/dist/index.d.ts +1 -4
  79. package/dist/index.d.ts.map +1 -1
  80. package/dist/index.js +1 -4
  81. package/dist/index.js.map +1 -1
  82. package/dist/{utilities/graphqlHandler.server.d.ts → routes/graphql/handler.server.d.ts} +1 -3
  83. package/dist/routes/graphql/handler.server.d.ts.map +1 -0
  84. package/dist/{utilities/graphqlHandler.server.js → routes/graphql/handler.server.js} +9 -6
  85. package/dist/routes/graphql/handler.server.js.map +1 -0
  86. package/dist/routes/rest/handler.server.d.ts +11 -0
  87. package/dist/routes/rest/handler.server.d.ts.map +1 -0
  88. package/dist/routes/rest/handler.server.js +17 -0
  89. package/dist/routes/rest/handler.server.js.map +1 -0
  90. package/dist/routes/rest/index.d.ts +34 -0
  91. package/dist/routes/rest/index.d.ts.map +1 -0
  92. package/dist/routes/rest/index.js +43 -0
  93. package/dist/routes/rest/index.js.map +1 -0
  94. package/dist/rsc/CollectionCards.js +1 -1
  95. package/dist/rsc/CollectionCards.js.map +1 -1
  96. package/dist/utilities/devConfigReload.server.d.ts +2 -0
  97. package/dist/utilities/devConfigReload.server.d.ts.map +1 -0
  98. package/dist/utilities/devConfigReload.server.js +63 -0
  99. package/dist/utilities/devConfigReload.server.js.map +1 -0
  100. package/dist/utilities/devConfigReloadEvent.d.ts +9 -0
  101. package/dist/utilities/devConfigReloadEvent.d.ts.map +1 -0
  102. package/dist/utilities/devConfigReloadEvent.js +9 -0
  103. package/dist/utilities/devConfigReloadEvent.js.map +1 -0
  104. package/dist/utilities/getRequestI18n.server.d.ts +1 -1
  105. package/dist/utilities/getRequestI18n.server.js +1 -1
  106. package/dist/utilities/getRequestI18n.server.js.map +1 -1
  107. package/dist/utilities/initAdminContext.server.d.ts +9 -0
  108. package/dist/utilities/initAdminContext.server.d.ts.map +1 -0
  109. package/dist/utilities/initAdminContext.server.js +13 -0
  110. package/dist/utilities/initAdminContext.server.js.map +1 -0
  111. package/dist/utilities/routerSearch.d.ts +40 -0
  112. package/dist/utilities/routerSearch.d.ts.map +1 -0
  113. package/dist/utilities/routerSearch.js +45 -0
  114. package/dist/utilities/routerSearch.js.map +1 -0
  115. package/dist/utilities/serializeForRsc.d.ts.map +1 -1
  116. package/dist/utilities/serializeForRsc.js +6 -1
  117. package/dist/utilities/serializeForRsc.js.map +1 -1
  118. package/dist/utilities/serverFunctionClient.d.ts +29 -0
  119. package/dist/utilities/serverFunctionClient.d.ts.map +1 -0
  120. package/dist/utilities/serverFunctionClient.js +114 -0
  121. package/dist/utilities/serverFunctionClient.js.map +1 -0
  122. package/dist/utilities/toSerializable.d.ts +9 -0
  123. package/dist/utilities/toSerializable.d.ts.map +1 -1
  124. package/dist/utilities/toSerializable.js +19 -3
  125. package/dist/utilities/toSerializable.js.map +1 -1
  126. package/dist/withPayload/config/external.d.ts +44 -0
  127. package/dist/withPayload/config/external.d.ts.map +1 -0
  128. package/dist/withPayload/config/external.js +96 -0
  129. package/dist/withPayload/config/external.js.map +1 -0
  130. package/dist/withPayload/config/optimizeDeps.d.ts +25 -0
  131. package/dist/withPayload/config/optimizeDeps.d.ts.map +1 -0
  132. package/dist/withPayload/config/optimizeDeps.js +160 -0
  133. package/dist/withPayload/config/optimizeDeps.js.map +1 -0
  134. package/dist/withPayload/config/scss.d.ts +14 -0
  135. package/dist/withPayload/config/scss.d.ts.map +1 -0
  136. package/dist/withPayload/config/scss.js +28 -0
  137. package/dist/withPayload/config/scss.js.map +1 -0
  138. package/dist/withPayload/devConfigReload.d.ts +14 -0
  139. package/dist/withPayload/devConfigReload.d.ts.map +1 -0
  140. package/dist/withPayload/devConfigReload.js +84 -0
  141. package/dist/withPayload/devConfigReload.js.map +1 -0
  142. package/dist/withPayload/importProtection.d.ts.map +1 -0
  143. package/dist/{vite → withPayload}/importProtection.js +2 -2
  144. package/dist/withPayload/importProtection.js.map +1 -0
  145. package/dist/withPayload/index.d.ts +110 -0
  146. package/dist/withPayload/index.d.ts.map +1 -0
  147. package/dist/withPayload/index.js +300 -0
  148. package/dist/withPayload/index.js.map +1 -0
  149. package/dist/withPayload/workarounds/clientModuleResolution.d.ts.map +1 -0
  150. package/dist/withPayload/workarounds/clientModuleResolution.js.map +1 -0
  151. package/dist/withPayload/workarounds/devTransforms.d.ts.map +1 -0
  152. package/dist/{vite/plugins → withPayload/workarounds}/devTransforms.js +5 -0
  153. package/dist/withPayload/workarounds/devTransforms.js.map +1 -0
  154. package/dist/withPayload/workarounds/reactDomServerInRsc.d.ts.map +1 -0
  155. package/dist/withPayload/workarounds/reactDomServerInRsc.js.map +1 -0
  156. package/dist/withPayload/workarounds/stripDistStyleImports.d.ts.map +1 -0
  157. package/dist/{vite/plugins → withPayload/workarounds}/stripDistStyleImports.js +38 -5
  158. package/dist/withPayload/workarounds/stripDistStyleImports.js.map +1 -0
  159. package/dist/withPayload/workarounds/stubPrettierInClient.d.ts +13 -0
  160. package/dist/withPayload/workarounds/stubPrettierInClient.d.ts.map +1 -0
  161. package/dist/withPayload/workarounds/stubPrettierInClient.js +32 -0
  162. package/dist/withPayload/workarounds/stubPrettierInClient.js.map +1 -0
  163. package/dist/withPayload/workarounds/wrapCjsForClient.d.ts.map +1 -0
  164. package/dist/withPayload/workarounds/wrapCjsForClient.js.map +1 -0
  165. package/package.json +27 -19
  166. package/dist/@types/assets.d.js +0 -2
  167. package/dist/@types/assets.d.js.map +0 -1
  168. package/dist/auth/switchLanguage.d.ts +0 -6
  169. package/dist/auth/switchLanguage.d.ts.map +0 -1
  170. package/dist/auth/switchLanguage.js +0 -11
  171. package/dist/auth/switchLanguage.js.map +0 -1
  172. package/dist/elements/DocumentHeaderClient/index.d.ts +0 -16
  173. package/dist/elements/DocumentHeaderClient/index.d.ts.map +0 -1
  174. package/dist/elements/DocumentHeaderClient/index.js +0 -116
  175. package/dist/elements/DocumentHeaderClient/index.js.map +0 -1
  176. package/dist/elements/RenderComponent/index.d.ts +0 -10
  177. package/dist/elements/RenderComponent/index.d.ts.map +0 -1
  178. package/dist/elements/RenderComponent/index.js +0 -12
  179. package/dist/elements/RenderComponent/index.js.map +0 -1
  180. package/dist/elements/RouterAdapter/index.d.ts.map +0 -1
  181. package/dist/elements/RouterAdapter/index.js +0 -118
  182. package/dist/elements/RouterAdapter/index.js.map +0 -1
  183. package/dist/exports/vite.d.ts +0 -3
  184. package/dist/exports/vite.d.ts.map +0 -1
  185. package/dist/exports/vite.js +0 -3
  186. package/dist/exports/vite.js.map +0 -1
  187. package/dist/layouts/Root/getLayoutData.d.ts +0 -12
  188. package/dist/layouts/Root/getLayoutData.d.ts.map +0 -1
  189. package/dist/layouts/Root/getLayoutData.js +0 -55
  190. package/dist/layouts/Root/getLayoutData.js.map +0 -1
  191. package/dist/layouts/Root/index.d.ts +0 -25
  192. package/dist/layouts/Root/index.d.ts.map +0 -1
  193. package/dist/layouts/Root/index.js +0 -51
  194. package/dist/layouts/Root/index.js.map +0 -1
  195. package/dist/node/cssLoader.d.mts +0 -3
  196. package/dist/node/cssLoader.d.mts.map +0 -1
  197. package/dist/node/cssLoader.js +0 -70
  198. package/dist/node/cssLoader.js.map +0 -1
  199. package/dist/node/cssLoader.mjs +0 -75
  200. package/dist/node/registerCssLoader.d.mts +0 -2
  201. package/dist/node/registerCssLoader.d.mts.map +0 -1
  202. package/dist/node/registerCssLoader.js +0 -10
  203. package/dist/node/registerCssLoader.js.map +0 -1
  204. package/dist/node/registerCssLoader.mjs +0 -10
  205. package/dist/rsc/renderPayloadRSC.d.ts +0 -6
  206. package/dist/rsc/renderPayloadRSC.d.ts.map +0 -1
  207. package/dist/rsc/renderPayloadRSC.js +0 -6
  208. package/dist/rsc/renderPayloadRSC.js.map +0 -1
  209. package/dist/utilities/devReloadStrategy.d.ts +0 -10
  210. package/dist/utilities/devReloadStrategy.d.ts.map +0 -1
  211. package/dist/utilities/devReloadStrategy.js +0 -27
  212. package/dist/utilities/devReloadStrategy.js.map +0 -1
  213. package/dist/utilities/getExistingAuthToken.d.ts +0 -7
  214. package/dist/utilities/getExistingAuthToken.d.ts.map +0 -1
  215. package/dist/utilities/getExistingAuthToken.js +0 -18
  216. package/dist/utilities/getExistingAuthToken.js.map +0 -1
  217. package/dist/utilities/getPreferences.d.ts +0 -10
  218. package/dist/utilities/getPreferences.d.ts.map +0 -1
  219. package/dist/utilities/getPreferences.js +0 -33
  220. package/dist/utilities/getPreferences.js.map +0 -1
  221. package/dist/utilities/getRequestLocale.d.ts +0 -7
  222. package/dist/utilities/getRequestLocale.d.ts.map +0 -1
  223. package/dist/utilities/getRequestLocale.js +0 -20
  224. package/dist/utilities/getRequestLocale.js.map +0 -1
  225. package/dist/utilities/getRequestTheme.d.ts +0 -10
  226. package/dist/utilities/getRequestTheme.d.ts.map +0 -1
  227. package/dist/utilities/getRequestTheme.js +0 -25
  228. package/dist/utilities/getRequestTheme.js.map +0 -1
  229. package/dist/utilities/graphqlHandler.server.d.ts.map +0 -1
  230. package/dist/utilities/graphqlHandler.server.js.map +0 -1
  231. package/dist/utilities/handleServerFunctions.d.ts +0 -20
  232. package/dist/utilities/handleServerFunctions.d.ts.map +0 -1
  233. package/dist/utilities/handleServerFunctions.js +0 -60
  234. package/dist/utilities/handleServerFunctions.js.map +0 -1
  235. package/dist/utilities/importMap.server.d.ts +0 -9
  236. package/dist/utilities/importMap.server.d.ts.map +0 -1
  237. package/dist/utilities/importMap.server.js +0 -12
  238. package/dist/utilities/importMap.server.js.map +0 -1
  239. package/dist/utilities/initReq.server.d.ts +0 -19
  240. package/dist/utilities/initReq.server.d.ts.map +0 -1
  241. package/dist/utilities/initReq.server.js +0 -87
  242. package/dist/utilities/initReq.server.js.map +0 -1
  243. package/dist/utilities/meta.d.ts.map +0 -1
  244. package/dist/utilities/meta.js.map +0 -1
  245. package/dist/utilities/serverAdapter.server.d.ts.map +0 -1
  246. package/dist/utilities/serverAdapter.server.js.map +0 -1
  247. package/dist/utilities/serverFunctionHandlers.d.ts +0 -18
  248. package/dist/utilities/serverFunctionHandlers.d.ts.map +0 -1
  249. package/dist/utilities/serverFunctionHandlers.js +0 -17
  250. package/dist/utilities/serverFunctionHandlers.js.map +0 -1
  251. package/dist/utilities/setPayloadAuthCookie.d.ts +0 -9
  252. package/dist/utilities/setPayloadAuthCookie.d.ts.map +0 -1
  253. package/dist/utilities/setPayloadAuthCookie.js +0 -31
  254. package/dist/utilities/setPayloadAuthCookie.js.map +0 -1
  255. package/dist/vite/constants.d.ts +0 -37
  256. package/dist/vite/constants.d.ts.map +0 -1
  257. package/dist/vite/constants.js +0 -129
  258. package/dist/vite/constants.js.map +0 -1
  259. package/dist/vite/importProtection.d.ts.map +0 -1
  260. package/dist/vite/importProtection.js.map +0 -1
  261. package/dist/vite/plugin.d.ts +0 -38
  262. package/dist/vite/plugin.d.ts.map +0 -1
  263. package/dist/vite/plugin.js +0 -183
  264. package/dist/vite/plugin.js.map +0 -1
  265. package/dist/vite/plugins/clientModuleResolution.d.ts.map +0 -1
  266. package/dist/vite/plugins/clientModuleResolution.js.map +0 -1
  267. package/dist/vite/plugins/devTransforms.d.ts.map +0 -1
  268. package/dist/vite/plugins/devTransforms.js.map +0 -1
  269. package/dist/vite/plugins/reactDomServerInRsc.d.ts.map +0 -1
  270. package/dist/vite/plugins/reactDomServerInRsc.js.map +0 -1
  271. package/dist/vite/plugins/stripDistStyleImports.d.ts.map +0 -1
  272. package/dist/vite/plugins/stripDistStyleImports.js.map +0 -1
  273. package/dist/vite/plugins/wrapCjsForClient.d.ts.map +0 -1
  274. package/dist/vite/plugins/wrapCjsForClient.js.map +0 -1
  275. /package/dist/{vite → withPayload}/importProtection.d.ts +0 -0
  276. /package/dist/{vite/plugins → withPayload/workarounds}/clientModuleResolution.d.ts +0 -0
  277. /package/dist/{vite/plugins → withPayload/workarounds}/clientModuleResolution.js +0 -0
  278. /package/dist/{vite/plugins → withPayload/workarounds}/devTransforms.d.ts +0 -0
  279. /package/dist/{vite/plugins → withPayload/workarounds}/reactDomServerInRsc.d.ts +0 -0
  280. /package/dist/{vite/plugins → withPayload/workarounds}/reactDomServerInRsc.js +0 -0
  281. /package/dist/{vite/plugins → withPayload/workarounds}/stripDistStyleImports.d.ts +0 -0
  282. /package/dist/{vite/plugins → withPayload/workarounds}/wrapCjsForClient.d.ts +0 -0
  283. /package/dist/{vite/plugins → withPayload/workarounds}/wrapCjsForClient.js +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/tanstack-start",
3
- "version": "4.0.0-internal.293e026",
3
+ "version": "4.0.0-internal.2a3c3bc",
4
4
  "description": "TanStack Start framework adapter for Payload",
5
5
  "homepage": "https://payloadcms.com",
6
6
  "repository": {
@@ -34,6 +34,11 @@
34
34
  "types": "./dist/exports/server.d.ts",
35
35
  "default": "./dist/exports/server.js"
36
36
  },
37
+ "./shared": {
38
+ "import": "./dist/exports/shared.js",
39
+ "types": "./dist/exports/shared.d.ts",
40
+ "default": "./dist/exports/shared.js"
41
+ },
37
42
  "./layouts": {
38
43
  "import": "./dist/exports/layouts.js",
39
44
  "types": "./dist/exports/layouts.d.ts",
@@ -44,11 +49,6 @@
44
49
  "browser": "./dist/exports/rsc.browser.js",
45
50
  "import": "./dist/exports/rsc.js",
46
51
  "default": "./dist/exports/rsc.js"
47
- },
48
- "./vite": {
49
- "import": "./dist/exports/vite.js",
50
- "types": "./dist/exports/vite.d.ts",
51
- "default": "./dist/exports/vite.js"
52
52
  }
53
53
  },
54
54
  "main": "./dist/index.js",
@@ -57,34 +57,42 @@
57
57
  "dist"
58
58
  ],
59
59
  "dependencies": {
60
+ "graphql-http": "1.22.4",
60
61
  "qs-esm": "^7.0.2",
61
- "@payloadcms/ui": "4.0.0-internal.293e026",
62
- "@payloadcms/translations": "4.0.0-internal.293e026"
62
+ "@payloadcms/graphql": "4.0.0-internal.2a3c3bc",
63
+ "@payloadcms/translations": "4.0.0-internal.2a3c3bc",
64
+ "@payloadcms/ui": "4.0.0-internal.2a3c3bc"
63
65
  },
64
66
  "devDependencies": {
65
- "@tanstack/react-router": "^1.120.0",
66
- "@tanstack/react-start": "^1.120.0",
67
+ "@tanstack/react-router": "^1.170.44",
68
+ "@tanstack/react-start": "^1.169.1",
67
69
  "@types/react": "^19.0.0",
68
70
  "@types/react-dom": "^19.0.0",
69
71
  "@vitejs/plugin-react": "^6.0.0",
70
- "react": "^19.0.0",
71
- "react-dom": "^19.0.0",
72
+ "@vitejs/plugin-rsc": "^0.5.21",
73
+ "react": "19.3.0",
74
+ "react-dom": "19.3.0",
72
75
  "vite": ">=8.0.0",
73
- "payload": "4.0.0-internal.293e026"
76
+ "payload": "4.0.0-internal.2a3c3bc"
74
77
  },
75
78
  "peerDependencies": {
76
- "@tanstack/react-router": "^1.120.0",
77
- "@tanstack/react-start": "^1.120.0",
79
+ "@tanstack/react-router": "^1.170.44",
80
+ "@tanstack/react-start": "^1.169.1",
78
81
  "@vitejs/plugin-react": "^6.0.0",
82
+ "@vitejs/plugin-rsc": "^0.5.21",
83
+ "graphql": "^16.8.1",
79
84
  "react": "^19.0.0",
80
85
  "react-dom": "^19.0.0",
81
86
  "vite": ">=8.0.0",
82
- "payload": "4.0.0-internal.293e026"
87
+ "payload": "4.0.0-internal.2a3c3bc"
83
88
  },
84
89
  "peerDependenciesMeta": {
85
90
  "@vitejs/plugin-react": {
86
91
  "optional": true
87
92
  },
93
+ "@vitejs/plugin-rsc": {
94
+ "optional": true
95
+ },
88
96
  "vite": {
89
97
  "optional": true
90
98
  }
@@ -93,14 +101,14 @@
93
101
  "node": "^18.20.2 || >=20.9.0"
94
102
  },
95
103
  "scripts": {
96
- "build": "pnpm build:types && pnpm build:swc && pnpm build:copy-mjs",
104
+ "build": "pnpm build:types && pnpm test:types && pnpm build:swc",
97
105
  "build:clean": "find . \\( -type d \\( -name build -o -name dist -o -name .cache \\) -o -type f -name tsconfig.tsbuildinfo \\) -exec rm -rf {} + && pnpm build",
98
- "build:copy-mjs": "node ./scripts/copyMjs.mjs",
99
106
  "build:debug": "pnpm build",
100
107
  "build:swc": "swc ./src -d ./dist --config-file .swcrc --strip-leading-paths",
101
108
  "build:types": "tsc --emitDeclarationOnly --outDir dist",
102
109
  "clean": "rimraf {dist,*.tsbuildinfo}",
103
110
  "lint": "eslint .",
104
- "lint:fix": "eslint . --fix"
111
+ "lint:fix": "eslint . --fix",
112
+ "test:types": "tsc --project test/tsconfig.json"
105
113
  }
106
114
  }
@@ -1,2 +0,0 @@
1
-
2
- //# sourceMappingURL=assets.d.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/@types/assets.d.ts"],"names":[],"mappings":""}
@@ -1,6 +0,0 @@
1
- import type { MaybePromise, SanitizedConfig } from 'payload';
2
- export declare function switchLanguage({ config, language, }: {
3
- config: MaybePromise<SanitizedConfig>;
4
- language: string;
5
- }): Promise<void>;
6
- //# sourceMappingURL=switchLanguage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"switchLanguage.d.ts","sourceRoot":"","sources":["../../src/auth/switchLanguage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAK5D,wBAAsB,cAAc,CAAC,EACnC,MAAM,EACN,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,YAAY,CAAC,eAAe,CAAC,CAAA;IACrC,QAAQ,EAAE,MAAM,CAAA;CACjB,iBAQA"}
@@ -1,11 +0,0 @@
1
- import { setResponseHeader } from '@tanstack/react-start/server';
2
- import { getPayload } from 'payload';
3
- export async function switchLanguage({ config, language }) {
4
- const payload = await getPayload({
5
- config
6
- });
7
- const cookiePrefix = payload.config.cookiePrefix || 'payload';
8
- setResponseHeader('Set-Cookie', `${encodeURIComponent(`${cookiePrefix}-lng`)}=${encodeURIComponent(language)}; Path=/`);
9
- }
10
-
11
- //# sourceMappingURL=switchLanguage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/auth/switchLanguage.ts"],"sourcesContent":["import type { MaybePromise, SanitizedConfig } from 'payload'\n\nimport { setResponseHeader } from '@tanstack/react-start/server'\nimport { getPayload } from 'payload'\n\nexport async function switchLanguage({\n config,\n language,\n}: {\n config: MaybePromise<SanitizedConfig>\n language: string\n}) {\n const payload = await getPayload({ config })\n const cookiePrefix = payload.config.cookiePrefix || 'payload'\n\n setResponseHeader(\n 'Set-Cookie',\n `${encodeURIComponent(`${cookiePrefix}-lng`)}=${encodeURIComponent(language)}; Path=/`,\n )\n}\n"],"names":["setResponseHeader","getPayload","switchLanguage","config","language","payload","cookiePrefix","encodeURIComponent"],"mappings":"AAEA,SAASA,iBAAiB,QAAQ,+BAA8B;AAChE,SAASC,UAAU,QAAQ,UAAS;AAEpC,OAAO,eAAeC,eAAe,EACnCC,MAAM,EACNC,QAAQ,EAIT;IACC,MAAMC,UAAU,MAAMJ,WAAW;QAAEE;IAAO;IAC1C,MAAMG,eAAeD,QAAQF,MAAM,CAACG,YAAY,IAAI;IAEpDN,kBACE,cACA,GAAGO,mBAAmB,GAAGD,aAAa,IAAI,CAAC,EAAE,CAAC,EAAEC,mBAAmBH,UAAU,QAAQ,CAAC;AAE1F"}
@@ -1,16 +0,0 @@
1
- import type { ImportMap } from 'payload';
2
- import '@payloadcms/ui/elements/DocumentHeader/index.scss';
3
- import '@payloadcms/ui/elements/DocumentHeader/Tabs/index.scss';
4
- import '@payloadcms/ui/elements/DocumentHeader/Tabs/Tab/index.scss';
5
- import React from 'react';
6
- /**
7
- * Client-only DocumentHeader for non-RSC adapters.
8
- * Uses hooks to obtain config, permissions, and i18n instead of requiring `req`.
9
- */
10
- export declare function DocumentHeaderClient({ collectionSlug, globalSlug, hideTabs, importMap, }: {
11
- collectionSlug?: string;
12
- globalSlug?: string;
13
- hideTabs?: boolean;
14
- importMap: ImportMap;
15
- }): React.JSX.Element;
16
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DocumentHeaderClient/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAqB,SAAS,EAAE,MAAM,SAAS,CAAA;AAG3D,OAAO,mDAAmD,CAAA;AAC1D,OAAO,wDAAwD,CAAA;AAC/D,OAAO,4DAA4D,CAAA;AAKnE,OAAO,KAAmB,MAAM,OAAO,CAAA;AAKvC;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,cAAc,EACd,UAAU,EACV,QAAQ,EACR,SAAS,GACV,EAAE;IACD,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,EAAE,SAAS,CAAA;CACrB,qBAsGA"}
@@ -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"}