one 1.1.392 → 1.1.394

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 (215) hide show
  1. package/dist/cjs/Root.cjs +25 -18
  2. package/dist/cjs/Root.js +7 -9
  3. package/dist/cjs/Root.js.map +1 -1
  4. package/dist/cjs/Root.native.js +44 -39
  5. package/dist/cjs/Root.native.js.map +2 -2
  6. package/dist/cjs/cli/build.cjs +29 -20
  7. package/dist/cjs/cli/build.js +19 -14
  8. package/dist/cjs/cli/build.js.map +1 -1
  9. package/dist/cjs/cli/build.native.js +29 -19
  10. package/dist/cjs/cli/build.native.js.map +2 -2
  11. package/dist/cjs/constants.cjs +5 -3
  12. package/dist/cjs/constants.js +5 -3
  13. package/dist/cjs/constants.js.map +1 -1
  14. package/dist/cjs/constants.native.js +7 -4
  15. package/dist/cjs/constants.native.js.map +2 -2
  16. package/dist/cjs/createApp.cjs +21 -6
  17. package/dist/cjs/createApp.js +23 -6
  18. package/dist/cjs/createApp.js.map +1 -1
  19. package/dist/cjs/createHandleRequest.cjs +2 -2
  20. package/dist/cjs/createHandleRequest.js +2 -2
  21. package/dist/cjs/createHandleRequest.js.map +1 -1
  22. package/dist/cjs/createHandleRequest.native.js +2 -2
  23. package/dist/cjs/createHandleRequest.native.js.map +1 -1
  24. package/dist/cjs/fork/_shared.cjs +42 -0
  25. package/dist/cjs/fork/_shared.js +37 -0
  26. package/dist/cjs/fork/_shared.js.map +6 -0
  27. package/dist/cjs/fork/_shared.native.js +49 -0
  28. package/dist/cjs/fork/_shared.native.js.map +6 -0
  29. package/dist/cjs/fork/getPathFromState-mods.cjs +8 -10
  30. package/dist/cjs/fork/getPathFromState-mods.js +7 -6
  31. package/dist/cjs/fork/getPathFromState-mods.js.map +1 -1
  32. package/dist/cjs/fork/getPathFromState-mods.native.js +10 -14
  33. package/dist/cjs/fork/getPathFromState-mods.native.js.map +2 -2
  34. package/dist/cjs/fork/getPathFromState.cjs +19 -8
  35. package/dist/cjs/fork/getPathFromState.js +14 -6
  36. package/dist/cjs/fork/getPathFromState.js.map +1 -1
  37. package/dist/cjs/fork/getPathFromState.native.js +14 -8
  38. package/dist/cjs/fork/getPathFromState.native.js.map +2 -2
  39. package/dist/cjs/fork/getStateFromPath-mods.cjs +0 -8
  40. package/dist/cjs/fork/getStateFromPath-mods.js +0 -8
  41. package/dist/cjs/fork/getStateFromPath-mods.js.map +1 -1
  42. package/dist/cjs/fork/getStateFromPath-mods.native.js +0 -11
  43. package/dist/cjs/fork/getStateFromPath-mods.native.js.map +2 -2
  44. package/dist/cjs/fork/getStateFromPath.cjs +6 -5
  45. package/dist/cjs/fork/getStateFromPath.js +5 -5
  46. package/dist/cjs/fork/getStateFromPath.js.map +1 -1
  47. package/dist/cjs/fork/getStateFromPath.native.js +5 -5
  48. package/dist/cjs/fork/getStateFromPath.native.js.map +2 -2
  49. package/dist/cjs/index.cjs +2 -0
  50. package/dist/cjs/index.js +2 -1
  51. package/dist/cjs/index.js.map +1 -1
  52. package/dist/cjs/index.native.js +3 -1
  53. package/dist/cjs/index.native.js.map +1 -1
  54. package/dist/cjs/router/router.cjs +5 -2
  55. package/dist/cjs/router/router.js +2 -2
  56. package/dist/cjs/router/router.js.map +1 -1
  57. package/dist/cjs/router/router.native.js +4 -1
  58. package/dist/cjs/router/router.native.js.map +1 -1
  59. package/dist/cjs/server/oneServe.cjs +31 -3
  60. package/dist/cjs/server/oneServe.js +24 -3
  61. package/dist/cjs/server/oneServe.js.map +1 -1
  62. package/dist/cjs/server/oneServe.native.js +37 -3
  63. package/dist/cjs/server/oneServe.native.js.map +2 -2
  64. package/dist/cjs/useLoader.cjs +10 -5
  65. package/dist/cjs/useLoader.js +6 -5
  66. package/dist/cjs/useLoader.js.map +1 -1
  67. package/dist/cjs/useLoader.native.js +6 -5
  68. package/dist/cjs/useLoader.native.js.map +2 -2
  69. package/dist/cjs/useServerHeadInsertion.cjs +40 -0
  70. package/dist/cjs/useServerHeadInsertion.js +32 -0
  71. package/dist/cjs/useServerHeadInsertion.js.map +6 -0
  72. package/dist/cjs/useServerHeadInsertion.native.js +38 -0
  73. package/dist/cjs/useServerHeadInsertion.native.js.map +6 -0
  74. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.cjs +5 -1
  75. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js +1 -1
  76. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
  77. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js +5 -1
  78. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +2 -2
  79. package/dist/esm/Root.js +8 -9
  80. package/dist/esm/Root.js.map +1 -1
  81. package/dist/esm/Root.mjs +26 -19
  82. package/dist/esm/Root.mjs.map +1 -1
  83. package/dist/esm/Root.native.js +45 -39
  84. package/dist/esm/Root.native.js.map +2 -2
  85. package/dist/esm/cli/build.js +19 -14
  86. package/dist/esm/cli/build.js.map +1 -1
  87. package/dist/esm/cli/build.mjs +29 -20
  88. package/dist/esm/cli/build.mjs.map +1 -1
  89. package/dist/esm/cli/build.native.js +29 -19
  90. package/dist/esm/cli/build.native.js.map +2 -2
  91. package/dist/esm/constants.js +5 -3
  92. package/dist/esm/constants.js.map +1 -1
  93. package/dist/esm/constants.mjs +5 -3
  94. package/dist/esm/constants.mjs.map +1 -1
  95. package/dist/esm/constants.native.js +6 -3
  96. package/dist/esm/constants.native.js.map +2 -2
  97. package/dist/esm/createApp.js +25 -6
  98. package/dist/esm/createApp.js.map +1 -1
  99. package/dist/esm/createApp.mjs +22 -7
  100. package/dist/esm/createApp.mjs.map +1 -1
  101. package/dist/esm/createHandleRequest.js +2 -2
  102. package/dist/esm/createHandleRequest.js.map +1 -1
  103. package/dist/esm/createHandleRequest.mjs +2 -2
  104. package/dist/esm/createHandleRequest.mjs.map +1 -1
  105. package/dist/esm/createHandleRequest.native.js +2 -2
  106. package/dist/esm/createHandleRequest.native.js.map +1 -1
  107. package/dist/esm/fork/_shared.js +21 -0
  108. package/dist/esm/fork/_shared.js.map +6 -0
  109. package/dist/esm/fork/_shared.mjs +16 -0
  110. package/dist/esm/fork/_shared.mjs.map +1 -0
  111. package/dist/esm/fork/_shared.native.js +25 -0
  112. package/dist/esm/fork/_shared.native.js.map +6 -0
  113. package/dist/esm/fork/getPathFromState-mods.js +6 -4
  114. package/dist/esm/fork/getPathFromState-mods.js.map +1 -1
  115. package/dist/esm/fork/getPathFromState-mods.mjs +7 -8
  116. package/dist/esm/fork/getPathFromState-mods.mjs.map +1 -1
  117. package/dist/esm/fork/getPathFromState-mods.native.js +9 -11
  118. package/dist/esm/fork/getPathFromState-mods.native.js.map +2 -2
  119. package/dist/esm/fork/getPathFromState.js +4 -3
  120. package/dist/esm/fork/getPathFromState.js.map +1 -1
  121. package/dist/esm/fork/getPathFromState.mjs +4 -4
  122. package/dist/esm/fork/getPathFromState.mjs.map +1 -1
  123. package/dist/esm/fork/getPathFromState.native.js +4 -5
  124. package/dist/esm/fork/getPathFromState.native.js.map +2 -2
  125. package/dist/esm/fork/getStateFromPath-mods.js +0 -8
  126. package/dist/esm/fork/getStateFromPath-mods.js.map +1 -1
  127. package/dist/esm/fork/getStateFromPath-mods.mjs +1 -8
  128. package/dist/esm/fork/getStateFromPath-mods.mjs.map +1 -1
  129. package/dist/esm/fork/getStateFromPath-mods.native.js +0 -10
  130. package/dist/esm/fork/getStateFromPath-mods.native.js.map +2 -2
  131. package/dist/esm/fork/getStateFromPath.js +4 -4
  132. package/dist/esm/fork/getStateFromPath.js.map +1 -1
  133. package/dist/esm/fork/getStateFromPath.mjs +5 -4
  134. package/dist/esm/fork/getStateFromPath.mjs.map +1 -1
  135. package/dist/esm/fork/getStateFromPath.native.js +5 -4
  136. package/dist/esm/fork/getStateFromPath.native.js.map +2 -2
  137. package/dist/esm/index.js +2 -0
  138. package/dist/esm/index.js.map +1 -1
  139. package/dist/esm/index.mjs +2 -1
  140. package/dist/esm/index.mjs.map +1 -1
  141. package/dist/esm/index.native.js +2 -0
  142. package/dist/esm/index.native.js.map +2 -2
  143. package/dist/esm/router/router.js +2 -2
  144. package/dist/esm/router/router.js.map +1 -1
  145. package/dist/esm/router/router.mjs +5 -2
  146. package/dist/esm/router/router.mjs.map +1 -1
  147. package/dist/esm/router/router.native.js +4 -1
  148. package/dist/esm/router/router.native.js.map +1 -1
  149. package/dist/esm/server/oneServe.js +24 -3
  150. package/dist/esm/server/oneServe.js.map +1 -1
  151. package/dist/esm/server/oneServe.mjs +31 -3
  152. package/dist/esm/server/oneServe.mjs.map +1 -1
  153. package/dist/esm/server/oneServe.native.js +37 -3
  154. package/dist/esm/server/oneServe.native.js.map +2 -2
  155. package/dist/esm/useLoader.js +7 -5
  156. package/dist/esm/useLoader.js.map +1 -1
  157. package/dist/esm/useLoader.mjs +10 -5
  158. package/dist/esm/useLoader.mjs.map +1 -1
  159. package/dist/esm/useLoader.native.js +7 -5
  160. package/dist/esm/useLoader.native.js.map +2 -2
  161. package/dist/esm/useServerHeadInsertion.js +16 -0
  162. package/dist/esm/useServerHeadInsertion.js.map +6 -0
  163. package/dist/esm/useServerHeadInsertion.mjs +15 -0
  164. package/dist/esm/useServerHeadInsertion.mjs.map +1 -0
  165. package/dist/esm/useServerHeadInsertion.native.js +16 -0
  166. package/dist/esm/useServerHeadInsertion.native.js.map +6 -0
  167. package/dist/esm/vite/plugins/fileSystemRouterPlugin.js +2 -2
  168. package/dist/esm/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
  169. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs +6 -2
  170. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs.map +1 -1
  171. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js +6 -2
  172. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js.map +2 -2
  173. package/package.json +8 -8
  174. package/src/Root.tsx +44 -40
  175. package/src/cli/build.ts +21 -17
  176. package/src/constants.ts +6 -2
  177. package/src/createApp.tsx +35 -4
  178. package/src/createHandleRequest.ts +2 -1
  179. package/src/fork/_shared.ts +22 -0
  180. package/src/fork/getPathFromState-mods.ts +22 -7
  181. package/src/fork/getPathFromState.ts +3 -2
  182. package/src/fork/getStateFromPath-mods.ts +0 -9
  183. package/src/fork/getStateFromPath.ts +8 -5
  184. package/src/index.ts +1 -0
  185. package/src/router/router.ts +2 -2
  186. package/src/server/oneServe.ts +47 -4
  187. package/src/useLoader.ts +7 -5
  188. package/src/useServerHeadInsertion.tsx +25 -0
  189. package/src/utils/serverContext.tsx +2 -2
  190. package/src/vite/plugins/fileSystemRouterPlugin.tsx +2 -2
  191. package/types/Root.d.ts +1 -0
  192. package/types/Root.d.ts.map +1 -1
  193. package/types/cli/build.d.ts.map +1 -1
  194. package/types/constants.d.ts +4 -1
  195. package/types/constants.d.ts.map +1 -1
  196. package/types/createApp.d.ts.map +1 -1
  197. package/types/createHandleRequest.d.ts.map +1 -1
  198. package/types/fork/_shared.d.ts +8 -0
  199. package/types/fork/_shared.d.ts.map +1 -0
  200. package/types/fork/getPathFromState-mods.d.ts +0 -1
  201. package/types/fork/getPathFromState-mods.d.ts.map +1 -1
  202. package/types/fork/getPathFromState.d.ts.map +1 -1
  203. package/types/fork/getStateFromPath-mods.d.ts +0 -1
  204. package/types/fork/getStateFromPath-mods.d.ts.map +1 -1
  205. package/types/fork/getStateFromPath.d.ts.map +1 -1
  206. package/types/index.d.ts +1 -0
  207. package/types/index.d.ts.map +1 -1
  208. package/types/serve.d.ts +6 -6
  209. package/types/serve.d.ts.map +1 -1
  210. package/types/server/oneServe.d.ts.map +1 -1
  211. package/types/useLoader.d.ts.map +1 -1
  212. package/types/useServerHeadInsertion.d.ts +5 -0
  213. package/types/useServerHeadInsertion.d.ts.map +1 -0
  214. package/types/utils/serverContext.d.ts +2 -3
  215. package/types/utils/serverContext.d.ts.map +1 -1
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Shared utilities for modifications in the fork.
3
+ */
4
+
5
+ export const getParamName = (pattern: string) => pattern.replace(/^[:*]/, '').replace(/\?$/, '')
6
+
7
+ export function getParamValue(p: string, value: string) {
8
+ if (p.startsWith('*')) {
9
+ const values = value.split('/').filter((v) => v !== '')
10
+ return values.length === 0 && p.endsWith('?') ? undefined : values
11
+ }
12
+
13
+ return value
14
+ }
15
+
16
+ export function isDynamicPart(p: string) {
17
+ return p.length > 1 && (p.startsWith(':') || p.startsWith('*'))
18
+ }
19
+
20
+ export function replacePart(p: string) {
21
+ return p.replace(/^[:*]/, '').replace(/\?$/, '')
22
+ }
@@ -7,6 +7,7 @@
7
7
  import type { Route } from '@react-navigation/core'
8
8
 
9
9
  import { matchDeepDynamicRouteName, matchDynamicName, matchGroupName } from '../router/matchers'
10
+ import { getParamName } from './_shared'
10
11
 
11
12
  export type AdditionalOptions = {
12
13
  preserveDynamicRoutes?: boolean
@@ -33,12 +34,12 @@ export function getPathWithConventionsCollapsed({
33
34
  params: Record<string, any>
34
35
  initialRouteName?: string
35
36
  }) {
36
- const segments = pattern.split('/');
37
-
37
+ const segments = pattern.split('/')
38
38
  return segments
39
39
  .map((p, i) => {
40
40
  const name = getParamName(p)
41
41
 
42
+ // We don't know what to show for wildcard patterns
42
43
  // Showing the route name seems ok, though whatever we show here will be incorrect
43
44
  // Since the page doesn't actually exist
44
45
  if (p.startsWith('*')) {
@@ -61,11 +62,21 @@ export function getPathWithConventionsCollapsed({
61
62
  return ''
62
63
  }
63
64
 
65
+ if (i === 0) {
66
+ // This can occur when a wildcard matches all routes and the given path was `/`.
67
+ return route
68
+ }
69
+
64
70
  if (p === '*not-found') {
65
71
  return ''
66
72
  }
67
-
73
+ // remove existing segments from route.path and return it
74
+ // this is used for nested wildcard routes. Without this, the path would add
75
+ // all nested segments to the beginning of the wildcard route.
68
76
  return route.name
77
+ ?.split('/')
78
+ .slice(i + 1)
79
+ .join('/')
69
80
  }
70
81
 
71
82
  // If the path has a pattern for a param, put the param in the path
@@ -79,6 +90,7 @@ export function getPathWithConventionsCollapsed({
79
90
  return
80
91
  }
81
92
 
93
+ // return params[name]
82
94
  return (shouldEncodeURISegment ? encodeURISegment(value) : value) ?? 'undefined'
83
95
  }
84
96
 
@@ -92,21 +104,24 @@ export function getPathWithConventionsCollapsed({
92
104
  if (segmentMatchesConvention(initialRouteName)) {
93
105
  return ''
94
106
  }
107
+
95
108
  return shouldEncodeURISegment
96
- ? encodeURISegment(initialRouteName, { preserveBrackets: true })
109
+ ? encodeURIComponentPreservingBrackets(initialRouteName)
97
110
  : initialRouteName
98
111
  }
99
112
  }
100
113
  return ''
101
114
  }
102
- // Preserve dynamic syntax for rehydration
103
- return shouldEncodeURISegment ? encodeURISegment(p, { preserveBrackets: true }) : p
115
+
116
+ return shouldEncodeURISegment ? encodeURIComponentPreservingBrackets(p) : p
104
117
  })
105
118
  .map((v) => v ?? '')
106
119
  .join('/')
107
120
  }
108
121
 
109
- export const getParamName = (pattern: string) => pattern.replace(/^[:*]/, '').replace(/\?$/, '')
122
+ function encodeURIComponentPreservingBrackets(str: string) {
123
+ return encodeURIComponent(str).replace(/%5B/g, '[').replace(/%5D/g, ']')
124
+ }
110
125
 
111
126
  export function appendBaseUrl(
112
127
  path: string,
@@ -13,6 +13,7 @@ import {
13
13
  appendBaseUrl,
14
14
  type AdditionalOptions,
15
15
  } from './getPathFromState-mods'
16
+ import * as sharedModUtils from './_shared'
16
17
  // @modified - end
17
18
 
18
19
  import type { NavigationState, PartialState, Route } from '@react-navigation/routers'
@@ -198,10 +199,10 @@ export function getPathDataFromState<ParamList extends {}>(
198
199
 
199
200
  pattern
200
201
  ?.split('/')
201
- .filter((p) => p.startsWith(':'))
202
+ .filter((p) => sharedModUtils.isDynamicPart(p)) // @modified
202
203
  // eslint-disable-next-line no-loop-func
203
204
  .forEach((p) => {
204
- const name = getParamName(p)
205
+ const name = sharedModUtils.getParamName(p) // @modified: use our customized `getParamName`
205
206
 
206
207
  // Remove the params present in the pattern since we'll only use the rest for query string
207
208
  if (focusedParams) {
@@ -291,15 +291,6 @@ export function decodeURIComponentSafe(str: string) {
291
291
  }
292
292
  }
293
293
 
294
- export function getParamValue(p: string, value: string) {
295
- if (p.startsWith('*')) {
296
- const values = value.split('/').filter((v) => v !== '')
297
- return values.length === 0 && p.endsWith('?') ? undefined : values
298
- }
299
-
300
- return value
301
- }
302
-
303
294
  /**
304
295
  * In One, the params are available at all levels of the routing config
305
296
  */
@@ -20,13 +20,13 @@ import {
20
20
  createConfigItemAdditionalProperties,
21
21
  decodeURIComponentSafe,
22
22
  formatRegexPattern,
23
- getParamValue,
24
23
  getRouteConfigSorter,
25
24
  getUrlWithReactNavigationConcessions,
26
25
  matchForEmptyPath,
27
26
  parseQueryParamsExtended,
28
27
  populateParams,
29
28
  } from './getStateFromPath-mods'
29
+ import { getParamValue, isDynamicPart, replacePart } from './_shared'
30
30
 
31
31
  type Options<ParamList extends {}> = {
32
32
  path?: string
@@ -263,7 +263,7 @@ function getNormalizedConfigs(
263
263
  createNormalizedConfigs(key, screens as PathConfigMap<object>, [], initialRoutes, [])
264
264
  )
265
265
  )
266
- /* @modified - start */
266
+ /* @modified - start */
267
267
  // .sort((a, b) => {
268
268
  // // Sort config so that:
269
269
  // // - the most exhaustive ones are always at the beginning
@@ -391,7 +391,7 @@ const matchAgainstConfigs = (remaining: string, configs: RouteConfig[]) => {
391
391
  matchedParams: Record<string, Record<string, string>> // The extracted params
392
392
  }>(
393
393
  (acc, p, index) => {
394
- if (!p.startsWith(':')) {
394
+ if (!isDynamicPart(p) /* @modified */) {
395
395
  return acc
396
396
  }
397
397
 
@@ -437,7 +437,7 @@ const matchAgainstConfigs = (remaining: string, configs: RouteConfig[]) => {
437
437
  const params = normalizedPath
438
438
  ?.split('/')
439
439
  .reduce<Record<string, unknown>>((acc, p, index) => {
440
- if (!p.startsWith(':')) {
440
+ if (!isDynamicPart(p) /* @modified */) {
441
441
  return acc
442
442
  }
443
443
 
@@ -450,7 +450,10 @@ const matchAgainstConfigs = (remaining: string, configs: RouteConfig[]) => {
450
450
  // @modified - end
451
451
 
452
452
  if (value) {
453
- const key = p.replace(/^:/, '').replace(/\?$/, '')
453
+ // @modified - start
454
+ // const key = p.replace(/^:/, '').replace(/\?$/, '')
455
+ const key = replacePart(p)
456
+ // @modified - end
454
457
  acc[key] = routeConfig?.parse?.[key] ? routeConfig.parse[key](value as any) : value
455
458
  }
456
459
 
package/src/index.ts CHANGED
@@ -38,6 +38,7 @@ export { Head } from './head'
38
38
 
39
39
  // hooks
40
40
  export { useLinkTo } from './link/useLinkTo'
41
+ export { useServerHeadInsertion, type ServerHeadInsertionCallback } from './useServerHeadInsertion'
41
42
  export {
42
43
  useRouter,
43
44
  useUnstableGlobalHref,
@@ -114,7 +114,7 @@ function setupLinking(initialLocation?: URL) {
114
114
 
115
115
  function subscribeToNavigationChanges() {
116
116
  navigationRefSubscription = navigationRef.addListener('state', (data) => {
117
- const state = data.data.state as OneRouter.ResultState
117
+ let state = data.data.state as OneRouter.ResultState
118
118
 
119
119
  if (!hasAttemptedToHideSplash) {
120
120
  hasAttemptedToHideSplash = true
@@ -124,7 +124,7 @@ function subscribeToNavigationChanges() {
124
124
  }
125
125
 
126
126
  if (nextOptions) {
127
- state.linkOptions = nextOptions
127
+ state = { ...state, linkOptions: nextOptions }
128
128
  nextOptions = null
129
129
  }
130
130
 
@@ -3,7 +3,7 @@ import type { BlankEnv } from 'hono/types'
3
3
  import { extname, join } from 'node:path'
4
4
  import { getServerEntry } from 'vxrn/serve'
5
5
  import { getPathFromLoaderPath } from '../utils/cleanUrl'
6
- import { LOADER_JS_POSTFIX_UNCACHED } from '../constants'
6
+ import { LOADER_JS_POSTFIX_REGEX, LOADER_JS_POSTFIX_UNCACHED } from '../constants'
7
7
  import { compileManifest, getURLfromRequestURL, type RequestHandlers } from '../createHandleRequest'
8
8
  import type { RenderAppProps } from '../types'
9
9
  import { toAbsolute } from '../utils/toAbsolute'
@@ -71,6 +71,11 @@ export async function oneServe(
71
71
  return await import(toAbsolute(route.contextKey))
72
72
  },
73
73
 
74
+ async handleLoader({ request, route, url, loaderProps }) {
75
+ // TODO this shouldn't be in dist/client right? we should build a dist/server version?
76
+ return await import(toAbsolute(join('./', 'dist/client', route.file)))
77
+ },
78
+
74
79
  async handlePage({ route, url, loaderProps }) {
75
80
  const buildInfo = routeToBuildInfo[route.file]
76
81
 
@@ -125,7 +130,7 @@ url: ${url}`)
125
130
  return async (context, next) => {
126
131
  // assets we ignore
127
132
  if (extname(context.req.path)) {
128
- return await next()
133
+ return next()
129
134
  }
130
135
 
131
136
  try {
@@ -133,6 +138,7 @@ url: ${url}`)
133
138
  const url = getURLfromRequestURL(request)
134
139
 
135
140
  const response = await (() => {
141
+ // this handles the ...rest style routes
136
142
  // where to put this best? can likely be after some of the switch?
137
143
  if (url.pathname.endsWith(LOADER_JS_POSTFIX_UNCACHED)) {
138
144
  const originalUrl = getPathFromLoaderPath(url.pathname)
@@ -182,13 +188,13 @@ url: ${url}`)
182
188
  return response as Response
183
189
  }
184
190
 
185
- return await next()
191
+ return next()
186
192
  }
187
193
  } catch (err) {
188
194
  console.error(` [one] Error handling request: ${(err as any)['stack']}`)
189
195
  }
190
196
 
191
- return await next()
197
+ return next()
192
198
  }
193
199
  }
194
200
 
@@ -205,4 +211,41 @@ url: ${url}`)
205
211
  for (const route of compiledManifest.pageRoutes) {
206
212
  app.get(route.honoPath, createHonoHandler(route))
207
213
  }
214
+
215
+ // TODO make this inside each page, need to make loader urls just be REGULAR_URL + loaderpostfix
216
+ app.get('*', async (c, next) => {
217
+ if (
218
+ c.req.path.endsWith(LOADER_JS_POSTFIX_UNCACHED) &&
219
+ // if it includes /assets its a static loader
220
+ !c.req.path.includes('/assets/')
221
+ ) {
222
+ const request = c.req.raw
223
+ const url = getURLfromRequestURL(request)
224
+ const originalUrl = getPathFromLoaderPath(c.req.path)
225
+
226
+ for (const route of compiledManifest.pageRoutes) {
227
+ if (route.file === '') {
228
+ // ignore not found route
229
+ continue
230
+ }
231
+
232
+ if (!route.compiledRegex.test(originalUrl)) {
233
+ continue
234
+ }
235
+
236
+ // for now just change this
237
+ route.file = c.req.path
238
+
239
+ const finalUrl = new URL(originalUrl, url.origin)
240
+ try {
241
+ return resolveLoaderRoute(requestHandlers, request, finalUrl, route)
242
+ } catch (err) {
243
+ console.error(`Error running loader: ${err}`)
244
+ return next()
245
+ }
246
+ }
247
+ }
248
+
249
+ return next()
250
+ })
208
251
  }
package/src/useLoader.ts CHANGED
@@ -1,13 +1,14 @@
1
1
  /* eslint-disable react-hooks/rules-of-hooks */
2
2
  import { useEffect, useRef } from 'react'
3
3
  import { getLoaderPath } from './utils/cleanUrl'
4
- import { useActiveParams, useParams } from './hooks'
4
+ import { useActiveParams, useParams, usePathname } from './hooks'
5
5
  import { resolveHref } from './link/href'
6
6
  import { useRouteNode } from './router/Route'
7
7
  import { preloadingLoader } from './router/router'
8
8
  import type { LoaderProps } from './types'
9
9
  import { dynamicImport } from './utils/dynamicImport'
10
10
  import { weakKey } from './utils/weakKey'
11
+ import { getServerContext } from './utils/serverContext'
11
12
 
12
13
  const promises: Record<string, undefined | Promise<void>> = {}
13
14
  const errors = {}
@@ -17,13 +18,15 @@ export function useLoader<
17
18
  Loader extends Function,
18
19
  Returned = Loader extends (p: any) => any ? ReturnType<Loader> : unknown,
19
20
  >(loader: Loader): Returned extends Promise<any> ? Awaited<Returned> : Returned {
20
- const preloadedProps = globalThis['__vxrnLoaderProps__'] as LoaderProps | undefined
21
+ const { loaderProps: loaderPropsFromServerContext, loaderData: loaderDataFromServerContext } =
22
+ getServerContext() || {}
21
23
 
22
24
  // server side we just run the loader directly
23
25
  if (typeof window === 'undefined') {
24
26
  return useAsyncFn(
25
27
  loader,
26
- preloadedProps || {
28
+ loaderPropsFromServerContext || {
29
+ path: usePathname(),
27
30
  params: useActiveParams(),
28
31
  }
29
32
  )
@@ -45,14 +48,13 @@ export function useLoader<
45
48
 
46
49
  // only if it matches current route
47
50
  const preloadedData =
48
- preloadedProps?.path === currentPath ? globalThis['__vxrnLoaderData__'] : undefined
51
+ loaderPropsFromServerContext?.path === currentPath ? loaderDataFromServerContext : undefined
49
52
 
50
53
  const currentData = useRef(preloadedData)
51
54
 
52
55
  useEffect(() => {
53
56
  if (preloadedData) {
54
57
  loadedData[currentPath] = preloadedData
55
- delete globalThis['__vxrnLoaderData__']
56
58
  }
57
59
  // eslint-disable-next-line react-hooks/exhaustive-deps
58
60
  }, [preloadedData])
@@ -0,0 +1,25 @@
1
+ import { createContext, useContext, useId } from 'react'
2
+
3
+ export type ServerHeadInsertionCallback = () => React.ReactElement
4
+
5
+ const ServerHeadInsertions: Record<
6
+ string,
7
+ undefined | Record<string, ServerHeadInsertionCallback>
8
+ > = {}
9
+
10
+ export const getServerHeadInsertions = (id: string) => {
11
+ if (ServerHeadInsertions[id]) {
12
+ return Object.values(ServerHeadInsertions[id])
13
+ }
14
+ }
15
+
16
+ export const ServerRenderID = createContext('')
17
+
18
+ export const useServerHeadInsertion = (callback: ServerHeadInsertionCallback) => {
19
+ if (typeof window == 'undefined') {
20
+ const insertionID = useId()
21
+ const id = useContext(ServerRenderID)
22
+ ServerHeadInsertions[id] ||= {}
23
+ ServerHeadInsertions[id][insertionID] = callback
24
+ }
25
+ }
@@ -1,6 +1,6 @@
1
1
  import { SERVER_CONTEXT_KEY } from '../constants'
2
2
 
3
- type ServerContext = {
3
+ export type ServerContext = {
4
4
  css?: string[]
5
5
  postRenderData?: any
6
6
  loaderData?: any
@@ -8,7 +8,7 @@ type ServerContext = {
8
8
  mode?: 'spa' | 'ssg' | 'ssr'
9
9
  }
10
10
 
11
- type MaybeServerContext = null | ServerContext
11
+ export type MaybeServerContext = null | ServerContext
12
12
 
13
13
  export const SERVER_CONTEXT_POST_RENDER_STRING = `_one_post_render_data_`
14
14
 
@@ -3,7 +3,7 @@ import { debounce } from 'perfect-debounce'
3
3
  import type { Connect, Plugin, ViteDevServer } from 'vite'
4
4
  import { createServerModuleRunner } from 'vite'
5
5
  import type { ModuleRunner } from 'vite/module-runner'
6
- import { SPA_HEADER_ELEMENTS } from '../../constants'
6
+ import { getSpaHeaderElements } from '../../constants'
7
7
  import { createHandleRequest } from '../../createHandleRequest'
8
8
  import type { RenderAppProps } from '../../types'
9
9
  import { isResponse } from '../../utils/isResponse'
@@ -38,7 +38,7 @@ export function createFileSystemRouterPlugin(options: One.PluginOptions): Plugin
38
38
  if (route.type === 'spa') {
39
39
  // render just the layouts? route.layouts
40
40
  return `<html><head>
41
- ${SPA_HEADER_ELEMENTS}
41
+ ${getSpaHeaderElements({ serverContext: { mode: 'spa' } })}
42
42
  <script type="module">
43
43
  import { injectIntoGlobalHook } from "/@react-refresh";
44
44
  injectIntoGlobalHook(window);
package/types/Root.d.ts CHANGED
@@ -3,6 +3,7 @@ import { type FunctionComponent, type ReactNode } from 'react';
3
3
  import type { GlobbedRouteImports } from './types';
4
4
  import type { One } from './vite/types';
5
5
  type RootProps = Omit<InnerProps, 'context'> & {
6
+ onRenderId?: (id: string) => void;
6
7
  path: string;
7
8
  isClient?: boolean;
8
9
  routes: GlobbedRouteImports;
@@ -1 +1 @@
1
- {"version":3,"file":"Root.d.ts","sourceRoot":"","sources":["../src/Root.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,wBAAwB,EAC9B,MAAM,0BAA0B,CAAA;AAEjC,OAAO,EAAuB,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAMnF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAKlD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAYvC,KAAK,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,GAAG;IAC7C,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,EAAE,mBAAmB,CAAA;IAC3B,YAAY,CAAC,EAAE,GAAG,CAAC,YAAY,CAAA;CAChC,CAAA;AAED,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE,GAAG,CAAC,YAAY,CAAA;IACzB,QAAQ,CAAC,EAAE,GAAG,CAAA;IACd,OAAO,CAAC,EAAE,iBAAiB,CAAC;QAAE,QAAQ,EAAE,SAAS,CAAA;KAAE,CAAC,CAAA;IACpD,wBAAwB,CAAC,EAAE,wBAAwB,GAAG;QACpD,KAAK,CAAC,EAAE;YACN,IAAI,EAAE,OAAO,CAAA;YACb,MAAM,EAAE;gBACN,OAAO,EAAE,MAAM,CAAA;gBACf,UAAU,EAAE,MAAM,CAAA;gBAClB,IAAI,EAAE,MAAM,CAAA;gBACZ,IAAI,EAAE,MAAM,CAAA;gBACZ,MAAM,EAAE,MAAM,CAAA;gBACd,YAAY,EAAE,MAAM,CAAA;aACrB,CAAA;SACF,CAAA;KACF,CAAA;CACF,CAAA;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,kDA2EpC"}
1
+ {"version":3,"file":"Root.d.ts","sourceRoot":"","sources":["../src/Root.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,wBAAwB,EAC9B,MAAM,0BAA0B,CAAA;AAEjC,OAAO,EAA8B,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAM1F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAKlD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AASvC,KAAK,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,GAAG;IAC7C,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,EAAE,mBAAmB,CAAA;IAC3B,YAAY,CAAC,EAAE,GAAG,CAAC,YAAY,CAAA;CAChC,CAAA;AAED,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE,GAAG,CAAC,YAAY,CAAA;IACzB,QAAQ,CAAC,EAAE,GAAG,CAAA;IACd,OAAO,CAAC,EAAE,iBAAiB,CAAC;QAAE,QAAQ,EAAE,SAAS,CAAA;KAAE,CAAC,CAAA;IACpD,wBAAwB,CAAC,EAAE,wBAAwB,GAAG;QACpD,KAAK,CAAC,EAAE;YACN,IAAI,EAAE,OAAO,CAAA;YACb,MAAM,EAAE;gBACN,OAAO,EAAE,MAAM,CAAA;gBACf,UAAU,EAAE,MAAM,CAAA;gBAClB,IAAI,EAAE,MAAM,CAAA;gBACZ,IAAI,EAAE,MAAM,CAAA;gBACZ,MAAM,EAAE,MAAM,CAAA;gBACd,YAAY,EAAE,MAAM,CAAA;aACrB,CAAA;SACF,CAAA;KACF,CAAA;CACF,CAAA;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,kDAiFpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/cli/build.ts"],"names":[],"mappings":"AA+BA,wBAAsB,KAAK,CAAC,IAAI,EAAE;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,iBAqlBA"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/cli/build.ts"],"names":[],"mappings":"AA+BA,wBAAsB,KAAK,CAAC,IAAI,EAAE;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,iBAylBA"}
@@ -1,3 +1,4 @@
1
+ import type { ServerContext } from './utils/serverContext';
1
2
  export declare const isWebClient: boolean;
2
3
  export declare const isWebServer: boolean;
3
4
  export declare const isNative: boolean;
@@ -10,5 +11,7 @@ export declare const PRELOAD_JS_POSTFIX: string;
10
11
  export declare const VIRTUAL_SSR_CSS_ENTRY = "virtual:ssr-css.css";
11
12
  export declare const VIRTUAL_SSR_CSS_HREF = "/@id/__x00__virtual:ssr-css.css";
12
13
  export declare const SERVER_CONTEXT_KEY = "__one_server_context__";
13
- export declare const SPA_HEADER_ELEMENTS = "\n <script>globalThis['global'] = globalThis</script>\n <script>globalThis['__vxrnIsSPA'] = true</script>\n <script>globalThis[\"__one_server_context__\"] = {}</script>\n";
14
+ export declare const getSpaHeaderElements: ({ serverContext, }?: {
15
+ serverContext?: ServerContext;
16
+ }) => string;
14
17
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,SAA2E,CAAA;AACnG,eAAO,MAAM,WAAW,SAA2E,CAAA;AACnG,eAAO,MAAM,QAAQ,SAA0C,CAAA;AAE/D,eAAO,MAAM,SAAS,QAA4E,CAAA;AAElG,eAAO,MAAM,0BAA0B,oBAAoB,CAAA;AAC3D,eAAO,MAAM,8BAA8B,0BAAwC,CAAA;AACnF,eAAO,MAAM,uBAAuB,QAA6C,CAAA;AACjF,eAAO,MAAM,iBAAiB,QAA+C,CAAA;AAE7E,eAAO,MAAM,kBAAkB,QAA6B,CAAA;AAG5D,eAAO,MAAM,qBAAqB,wBAAwB,CAAA;AAC1D,eAAO,MAAM,oBAAoB,oCAAyC,CAAA;AAE1E,eAAO,MAAM,kBAAkB,2BAA2B,CAAA;AAE1D,eAAO,MAAM,mBAAmB,kLAI/B,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAE1D,eAAO,MAAM,WAAW,SAA2E,CAAA;AACnG,eAAO,MAAM,WAAW,SAA2E,CAAA;AACnG,eAAO,MAAM,QAAQ,SAA0C,CAAA;AAE/D,eAAO,MAAM,SAAS,QAA4E,CAAA;AAElG,eAAO,MAAM,0BAA0B,oBAAoB,CAAA;AAC3D,eAAO,MAAM,8BAA8B,0BAAwC,CAAA;AACnF,eAAO,MAAM,uBAAuB,QAA6C,CAAA;AACjF,eAAO,MAAM,iBAAiB,QAA+C,CAAA;AAE7E,eAAO,MAAM,kBAAkB,QAA6B,CAAA;AAG5D,eAAO,MAAM,qBAAqB,wBAAwB,CAAA;AAC1D,eAAO,MAAM,oBAAoB,oCAAyC,CAAA;AAE1E,eAAO,MAAM,kBAAkB,2BAA2B,CAAA;AAE1D,eAAO,MAAM,oBAAoB,wBAE9B;IAAE,aAAa,CAAC,EAAE,aAAa,CAAA;CAAE,WAInC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"createApp.d.ts","sourceRoot":"","sources":["../src/createApp.tsx"],"names":[],"mappings":"AAAA,OAAO,SAAS,CAAA;AAOhB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAS7C,MAAM,MAAM,cAAc,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;CAAE,CAAA;AAE/E,wBAAgB,SAAS,CAAC,OAAO,EAAE,cAAc;;oBAIrB,cAAc;EA+EzC"}
1
+ {"version":3,"file":"createApp.d.ts","sourceRoot":"","sources":["../src/createApp.tsx"],"names":[],"mappings":"AAAA,OAAO,SAAS,CAAA;AAOhB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAY7C,MAAM,MAAM,cAAc,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;CAAE,CAAA;AAE/E,wBAAgB,SAAS,CAAC,OAAO,EAAE,cAAc;;oBAIrB,cAAc;EA2GzC"}
@@ -1 +1 @@
1
- {"version":3,"file":"createHandleRequest.d.ts","sourceRoot":"","sources":["../src/createHandleRequest.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAM1C,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;IACzD,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;IAC3D,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;IACxD,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;CACpD,CAAA;AAED,KAAK,mBAAmB,CAAC,eAAe,SAAS,MAAM,GAAG,EAAE,IAAI;IAC9D,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,eAAe,CAAA;IAC1C,GAAG,EAAE,GAAG,CAAA;IACR,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B,CAAA;AAED,KAAK,sBAAsB,GAAG,IAAI,GAAG,MAAM,GAAG,QAAQ,CAAA;AAoDtD,wBAAsB,eAAe,CACnC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,iBAAiB,qBAqCzB;AAED,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,iBAAiB,qBAkCzB;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,iBAAiB,qBAkBzB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,OAMpD;AAUD,wBAAgB,eAAe,CAAC,QAAQ,EAAE;IAAE,UAAU,EAAE,SAAS,EAAE,CAAC;IAAC,SAAS,EAAE,SAAS,EAAE,CAAA;CAAE,GAAG;IAC9F,UAAU,EAAE,iBAAiB,EAAE,CAAA;IAC/B,SAAS,EAAE,iBAAiB,EAAE,CAAA;CAC/B,CAKA;AAGD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,eAAe;;uBASV,OAAO,KAAG,OAAO,CAAC,sBAAsB,CAAC;EAmE3F"}
1
+ {"version":3,"file":"createHandleRequest.d.ts","sourceRoot":"","sources":["../src/createHandleRequest.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAM1C,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;IACzD,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;IAC3D,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;IACxD,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;CACpD,CAAA;AAED,KAAK,mBAAmB,CAAC,eAAe,SAAS,MAAM,GAAG,EAAE,IAAI;IAC9D,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,eAAe,CAAA;IAC1C,GAAG,EAAE,GAAG,CAAA;IACR,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B,CAAA;AAED,KAAK,sBAAsB,GAAG,IAAI,GAAG,MAAM,GAAG,QAAQ,CAAA;AAoDtD,wBAAsB,eAAe,CACnC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,iBAAiB,qBAqCzB;AAED,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,iBAAiB,qBAkCzB;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,iBAAiB,qBAkBzB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,OAMpD;AAUD,wBAAgB,eAAe,CAAC,QAAQ,EAAE;IAAE,UAAU,EAAE,SAAS,EAAE,CAAC;IAAC,SAAS,EAAE,SAAS,EAAE,CAAA;CAAE,GAAG;IAC9F,UAAU,EAAE,iBAAiB,EAAE,CAAA;IAC/B,SAAS,EAAE,iBAAiB,EAAE,CAAA;CAC/B,CAKA;AAGD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,eAAe;;uBASV,OAAO,KAAG,OAAO,CAAC,sBAAsB,CAAC;EAoE3F"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Shared utilities for modifications in the fork.
3
+ */
4
+ export declare const getParamName: (pattern: string) => string;
5
+ export declare function getParamValue(p: string, value: string): string | string[] | undefined;
6
+ export declare function isDynamicPart(p: string): boolean;
7
+ export declare function replacePart(p: string): string;
8
+ //# sourceMappingURL=_shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_shared.d.ts","sourceRoot":"","sources":["../../src/fork/_shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,YAAY,YAAa,MAAM,WAAoD,CAAA;AAEhG,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,iCAOrD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,WAEtC;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,UAEpC"}
@@ -18,6 +18,5 @@ export declare function getPathWithConventionsCollapsed({ pattern, route, params
18
18
  params: Record<string, any>;
19
19
  initialRouteName?: string;
20
20
  }): string;
21
- export declare const getParamName: (pattern: string) => string;
22
21
  export declare function appendBaseUrl(path: string, baseUrl?: string | undefined): string;
23
22
  //# sourceMappingURL=getPathFromState-mods.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getPathFromState-mods.d.ts","sourceRoot":"","sources":["../../src/fork/getPathFromState-mods.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAInD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,sBAAsB,CAAC,EAAE,OAAO,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAE3B,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED,wBAAgB,+BAA+B,CAAC,EAC9C,OAAO,EACP,KAAK,EACL,MAAM,EACN,cAAc,EACd,qBAAqB,EACrB,sBAA6B,EAC7B,gBAAgB,GACjB,EAAE,iBAAiB,GAAG;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B,UAwEA;AAED,eAAO,MAAM,YAAY,YAAa,MAAM,WAAoD,CAAA;AAEhG,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,GAAG,SAAqC,UAQxD"}
1
+ {"version":3,"file":"getPathFromState-mods.d.ts","sourceRoot":"","sources":["../../src/fork/getPathFromState-mods.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAKnD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,sBAAsB,CAAC,EAAE,OAAO,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAE3B,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED,wBAAgB,+BAA+B,CAAC,EAC9C,OAAO,EACP,KAAK,EACL,MAAM,EACN,cAAc,EACd,qBAAqB,EACrB,sBAA6B,EAC7B,gBAAgB,GACjB,EAAE,iBAAiB,GAAG;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B,UAoFA;AAMD,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,GAAG,SAAqC,UAQxD"}
@@ -1 +1 @@
1
- {"version":3,"file":"getPathFromState.d.ts","sourceRoot":"","sources":["../../src/fork/getPathFromState.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAA;AAGhC,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAS,MAAM,2BAA2B,CAAA;AAGrF,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAGvE,KAAK,OAAO,CAAC,SAAS,SAAS,EAAE,IAAI;IACnC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAA;CAClC,GAAG,iBAAiB,CAAA;AAErB,MAAM,MAAM,KAAK,GAAG,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC,CAAA;AAwClF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,SAAS,EAAE,EACnD,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC3B,MAAM,CAER;AAED,wBAAgB,oBAAoB,CAAC,SAAS,SAAS,EAAE,EACvD,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC;;;EA+P7B;AAuDD,eAAe,gBAAgB,CAAA"}
1
+ {"version":3,"file":"getPathFromState.d.ts","sourceRoot":"","sources":["../../src/fork/getPathFromState.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAA;AAIhC,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAS,MAAM,2BAA2B,CAAA;AAGrF,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAGvE,KAAK,OAAO,CAAC,SAAS,SAAS,EAAE,IAAI;IACnC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAA;CAClC,GAAG,iBAAiB,CAAA;AAErB,MAAM,MAAM,KAAK,GAAG,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC,CAAA;AAwClF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,SAAS,EAAE,EACnD,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC3B,MAAM,CAER;AAED,wBAAgB,oBAAoB,CAAC,SAAS,SAAS,EAAE,EACvD,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC;;;EA+P7B;AAuDD,eAAe,gBAAgB,CAAA"}
@@ -47,7 +47,6 @@ export declare function appendIsInitial(initialRoutes: InitialRouteConfig[]): (c
47
47
  export declare function getRouteConfigSorter(previousSegments?: string[]): (a: RouteConfig, b: RouteConfig) => number;
48
48
  export declare function formatRegexPattern(it: string): string;
49
49
  export declare function decodeURIComponentSafe(str: string): string;
50
- export declare function getParamValue(p: string, value: string): string | string[] | undefined;
51
50
  /**
52
51
  * In One, the params are available at all levels of the routing config
53
52
  */
@@ -1 +1 @@
1
- {"version":3,"file":"getStateFromPath-mods.d.ts","sourceRoot":"","sources":["../../src/fork/getStateFromPath-mods.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAEtF,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAA;IACrC,gBAAgB,EAAE,MAAM,CAAA;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,EAAE,OAAO,CAAA;IACpB,kBAAkB,EAAE,MAAM,EAAE,CAAA;IAC5B,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB,CAAA;AAED,wBAAgB,oCAAoC,CAClD,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,GAAG,SAAqC;;;;;;;;;;;;EA2BxD;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,EAAE;;;;;;;;;UAxChD,QAAQ,GAAG,SAAS,GAAG,QAAQ;sBACnB,MAAM;aACf,OAAO;gBACJ,OAAO;iBACN,OAAO;wBACA,MAAM,EAAE;WACrB,MAAM,EAAE;cAkEhB;AAED,wBAAgB,eAAe,CAAC,aAAa,EAAE,kBAAkB,EAAE,YAKjD,WAAW,iBAM5B;AAQD,wBAAgB,oBAAoB,CAAC,gBAAgB,GAAE,MAAM,EAAO,OACnC,WAAW,KAAK,WAAW,YA0J3D;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAsBrD;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,UAMjD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,iCAOrD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,6BAQlF;AAED,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAAE,EACpB,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAC/B,IAAI,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAiC1C;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,WAAW,EAClB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,CAAC,EACpD,IAAI,CAAC,EAAE,MAAM,iDA4Bd;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,GAAG,SAAqC,UAQxD"}
1
+ {"version":3,"file":"getStateFromPath-mods.d.ts","sourceRoot":"","sources":["../../src/fork/getStateFromPath-mods.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAEtF,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAA;IACrC,gBAAgB,EAAE,MAAM,CAAA;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,EAAE,OAAO,CAAA;IACpB,kBAAkB,EAAE,MAAM,EAAE,CAAA;IAC5B,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB,CAAA;AAED,wBAAgB,oCAAoC,CAClD,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,GAAG,SAAqC;;;;;;;;;;;;EA2BxD;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,EAAE;;;;;;;;;UAxChD,QAAQ,GAAG,SAAS,GAAG,QAAQ;sBACnB,MAAM;aACf,OAAO;gBACJ,OAAO;iBACN,OAAO;wBACA,MAAM,EAAE;WACrB,MAAM,EAAE;cAkEhB;AAED,wBAAgB,eAAe,CAAC,aAAa,EAAE,kBAAkB,EAAE,YAKjD,WAAW,iBAM5B;AAQD,wBAAgB,oBAAoB,CAAC,gBAAgB,GAAE,MAAM,EAAO,OACnC,WAAW,KAAK,WAAW,YA0J3D;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAsBrD;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,UAMjD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,6BAQlF;AAED,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAAE,EACpB,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAC/B,IAAI,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAiC1C;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,WAAW,EAClB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,CAAC,EACpD,IAAI,CAAC,EAAE,MAAM,iDA4Bd;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,GAAG,SAAqC,UAQxD"}
@@ -1 +1 @@
1
- {"version":3,"file":"getStateFromPath.d.ts","sourceRoot":"","sources":["../../src/fork/getStateFromPath.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAgB,eAAe,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAM5F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE3D,OAAO,EACL,KAAK,qBAAqB,EAW3B,MAAM,yBAAyB,CAAA;AAEhC,KAAK,OAAO,CAAC,SAAS,SAAS,EAAE,IAAI;IACnC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAA;CAClC,CAAA;AAED,KAAK,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,CAAC,CAAA;AAGzD,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,KAAK,CAAC,EAAE,WAAW,CAAA;CACpB,GAAG,qBAAqB,CAAA;AAGzB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,gBAAgB,EAAE,MAAM,CAAA;IACxB,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB,CAAA;AAED,KAAK,WAAW,GAAG,YAAY,CAAC,eAAe,CAAC,GAAG;IACjD,KAAK,CAAC,EAAE,WAAW,CAAA;CACpB,CAAA;AAGD,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAAA;CACzC,CAAA;AAQD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,SAAS,EAAE,EACnD,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC3B,WAAW,GAAG,SAAS,CAmGzB"}
1
+ {"version":3,"file":"getStateFromPath.d.ts","sourceRoot":"","sources":["../../src/fork/getStateFromPath.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAgB,eAAe,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAM5F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE3D,OAAO,EACL,KAAK,qBAAqB,EAU3B,MAAM,yBAAyB,CAAA;AAGhC,KAAK,OAAO,CAAC,SAAS,SAAS,EAAE,IAAI;IACnC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAA;CAClC,CAAA;AAED,KAAK,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,CAAC,CAAA;AAGzD,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,KAAK,CAAC,EAAE,WAAW,CAAA;CACpB,GAAG,qBAAqB,CAAA;AAGzB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,gBAAgB,EAAE,MAAM,CAAA;IACxB,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB,CAAA;AAED,KAAK,WAAW,GAAG,YAAY,CAAC,eAAe,CAAC,GAAG;IACjD,KAAK,CAAC,EAAE,WAAW,CAAA;CACpB,CAAA;AAGD,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAAA;CACzC,CAAA;AAQD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,SAAS,EAAE,EACnD,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC3B,WAAW,GAAG,SAAS,CAmGzB"}
package/types/index.d.ts CHANGED
@@ -22,6 +22,7 @@ export { Link } from './link/Link';
22
22
  export { Redirect } from './link/Redirect';
23
23
  export { Head } from './head';
24
24
  export { useLinkTo } from './link/useLinkTo';
25
+ export { useServerHeadInsertion, type ServerHeadInsertionCallback } from './useServerHeadInsertion';
25
26
  export { useRouter, useUnstableGlobalHref, usePathname, useNavigationContainerRef, useParams, useActiveParams, useSegments, useRootNavigationState, } from './hooks';
26
27
  export { useLocalSearchParams, useGlobalSearchParams, } from './hooks';
27
28
  export { withLayoutContext } from './layouts/withLayoutContext';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,YAAY,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;AACjC,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;AAElF,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAGpD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAG9D,OAAO,EAAE,gBAAgB,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAGtE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAA;AAG9C,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAIrC,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAG7B,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EACL,SAAS,EACT,qBAAqB,EACrB,WAAW,EACX,yBAAyB,EACzB,SAAS,EACT,eAAe,EACf,WAAW,EACX,sBAAsB,GACvB,MAAM,SAAS,CAAA;AAEhB,OAAO,EACL,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAG7B,cAAc,8BAA8B,CAAA;AAG5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,YAAY,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;AACjC,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;AAElF,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAGpD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAG9D,OAAO,EAAE,gBAAgB,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAGtE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAA;AAG9C,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAIrC,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAG7B,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,sBAAsB,EAAE,KAAK,2BAA2B,EAAE,MAAM,0BAA0B,CAAA;AACnG,OAAO,EACL,SAAS,EACT,qBAAqB,EACrB,WAAW,EACX,yBAAyB,EACzB,SAAS,EACT,eAAe,EACf,WAAW,EACX,sBAAsB,GACvB,MAAM,SAAS,CAAA;AAEhB,OAAO,EACL,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAG7B,cAAc,8BAA8B,CAAA;AAG5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA"}
package/types/serve.d.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  import './polyfills-server';
2
2
  import type { VXRNOptions } from 'vxrn';
3
3
  export declare function serve(args?: VXRNOptions['server']): Promise<void | import("hono").Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/"> | {
4
- handler: (req: Request, requestContext: import("hono/types").FetchEventLike) => Response | Promise<Response>;
5
- GET: (req: Request, requestContext: import("hono/types").FetchEventLike) => Response | Promise<Response>;
6
- POST: (req: Request, requestContext: import("hono/types").FetchEventLike) => Response | Promise<Response>;
7
- PATCH: (req: Request, requestContext: import("hono/types").FetchEventLike) => Response | Promise<Response>;
8
- PUT: (req: Request, requestContext: import("hono/types").FetchEventLike) => Response | Promise<Response>;
9
- OPTIONS: (req: Request, requestContext: import("hono/types").FetchEventLike) => Response | Promise<Response>;
4
+ handler: (req: Request) => Response | Promise<Response>;
5
+ GET: (req: Request) => Response | Promise<Response>;
6
+ POST: (req: Request) => Response | Promise<Response>;
7
+ PATCH: (req: Request) => Response | Promise<Response>;
8
+ PUT: (req: Request) => Response | Promise<Response>;
9
+ OPTIONS: (req: Request) => Response | Promise<Response>;
10
10
  }>;
11
11
  //# sourceMappingURL=serve.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,CAAA;AAG3B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AASvC,wBAAsB,KAAK,CAAC,IAAI,GAAE,WAAW,CAAC,QAAQ,CAAM;mDAAA,YACpD;+CACa,YAAY;gDAKO,YAAY;iDAEnC,YAAY;+CAC4B,YACvD;mDAKE,YAAO;GAuBV"}
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,CAAA;AAG3B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AASvC,wBAAsB,KAAK,CAAC,IAAI,GAAE,WAAW,CAAC,QAAQ,CAAM;;;;;;;GAuC3D"}
@@ -1 +1 @@
1
- {"version":3,"file":"oneServe.d.ts","sourceRoot":"","sources":["../../src/server/oneServe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAqB,MAAM,MAAM,CAAA;AASnD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AAIxC,wBAAsB,QAAQ,CAC5B,UAAU,EAAE,GAAG,CAAC,aAAa,EAC7B,SAAS,EAAE,GAAG,CAAC,SAAS,EACxB,GAAG,EAAE,IAAI,EACT,WAAW,UAAO,iBA8LnB"}
1
+ {"version":3,"file":"oneServe.d.ts","sourceRoot":"","sources":["../../src/server/oneServe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAqB,MAAM,MAAM,CAAA;AASnD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AAIxC,wBAAsB,QAAQ,CAC5B,UAAU,EAAE,GAAG,CAAC,aAAa,EAC7B,SAAS,EAAE,GAAG,CAAC,SAAS,EACxB,GAAG,EAAE,IAAI,EACT,WAAW,UAAO,iBAyOnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLoader.d.ts","sourceRoot":"","sources":["../src/useLoader.ts"],"names":[],"mappings":"AAeA,wBAAgB,SAAS,CACvB,MAAM,SAAS,QAAQ,EACvB,QAAQ,GAAG,MAAM,SAAS,CAAC,CAAC,EAAE,GAAG,KAAK,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,OAAO,EACxE,MAAM,EAAE,MAAM,GAAG,QAAQ,SAAS,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAwH9E"}
1
+ {"version":3,"file":"useLoader.d.ts","sourceRoot":"","sources":["../src/useLoader.ts"],"names":[],"mappings":"AAgBA,wBAAgB,SAAS,CACvB,MAAM,SAAS,QAAQ,EACvB,QAAQ,GAAG,MAAM,SAAS,CAAC,CAAC,EAAE,GAAG,KAAK,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,OAAO,EACxE,MAAM,EAAE,MAAM,GAAG,QAAQ,SAAS,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAyH9E"}
@@ -0,0 +1,5 @@
1
+ export type ServerHeadInsertionCallback = () => React.ReactElement;
2
+ export declare const getServerHeadInsertions: (id: string) => ServerHeadInsertionCallback[] | undefined;
3
+ export declare const ServerRenderID: import("react").Context<string>;
4
+ export declare const useServerHeadInsertion: (callback: ServerHeadInsertionCallback) => void;
5
+ //# sourceMappingURL=useServerHeadInsertion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useServerHeadInsertion.d.ts","sourceRoot":"","sources":["../src/useServerHeadInsertion.tsx"],"names":[],"mappings":"AAEA,MAAM,MAAM,2BAA2B,GAAG,MAAM,KAAK,CAAC,YAAY,CAAA;AAOlE,eAAO,MAAM,uBAAuB,OAAQ,MAAM,8CAIjD,CAAA;AAED,eAAO,MAAM,cAAc,iCAAoB,CAAA;AAE/C,eAAO,MAAM,sBAAsB,aAAc,2BAA2B,SAO3E,CAAA"}