one 1.2.18 → 1.2.20

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 (97) hide show
  1. package/dist/cjs/createHandleRequest.cjs +7 -2
  2. package/dist/cjs/createHandleRequest.js +8 -3
  3. package/dist/cjs/createHandleRequest.js.map +1 -1
  4. package/dist/cjs/createHandleRequest.native.js +8 -2
  5. package/dist/cjs/createHandleRequest.native.js.map +1 -1
  6. package/dist/cjs/experimental-useLoaderState.cjs +64 -0
  7. package/dist/cjs/experimental-useLoaderState.js +44 -0
  8. package/dist/cjs/experimental-useLoaderState.js.map +6 -0
  9. package/dist/cjs/experimental-useLoaderState.native.js +69 -0
  10. package/dist/cjs/experimental-useLoaderState.native.js.map +1 -0
  11. package/dist/cjs/index.cjs +1 -0
  12. package/dist/cjs/index.js +1 -0
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/index.native.js +1 -0
  15. package/dist/cjs/index.native.js.map +1 -1
  16. package/dist/cjs/router/router.cjs +35 -5
  17. package/dist/cjs/router/router.js +26 -5
  18. package/dist/cjs/router/router.js.map +1 -1
  19. package/dist/cjs/router/router.native.js +32 -5
  20. package/dist/cjs/router/router.native.js.map +1 -1
  21. package/dist/cjs/server/oneServe.cjs +8 -6
  22. package/dist/cjs/server/oneServe.js +10 -5
  23. package/dist/cjs/server/oneServe.js.map +1 -1
  24. package/dist/cjs/server/oneServe.native.js +8 -6
  25. package/dist/cjs/server/oneServe.native.js.map +1 -1
  26. package/dist/cjs/useLoader.cjs +117 -36
  27. package/dist/cjs/useLoader.js +108 -33
  28. package/dist/cjs/useLoader.js.map +2 -2
  29. package/dist/cjs/useLoader.native.js +151 -55
  30. package/dist/cjs/useLoader.native.js.map +1 -1
  31. package/dist/cjs/utils/cleanUrl.cjs +6 -5
  32. package/dist/cjs/utils/cleanUrl.js +4 -8
  33. package/dist/cjs/utils/cleanUrl.js.map +1 -1
  34. package/dist/cjs/utils/cleanUrl.native.js +6 -3
  35. package/dist/cjs/utils/cleanUrl.native.js.map +1 -1
  36. package/dist/esm/createHandleRequest.js +8 -3
  37. package/dist/esm/createHandleRequest.js.map +1 -1
  38. package/dist/esm/createHandleRequest.mjs +7 -2
  39. package/dist/esm/createHandleRequest.mjs.map +1 -1
  40. package/dist/esm/createHandleRequest.native.js +8 -2
  41. package/dist/esm/createHandleRequest.native.js.map +1 -1
  42. package/dist/esm/experimental-useLoaderState.js +32 -0
  43. package/dist/esm/experimental-useLoaderState.js.map +6 -0
  44. package/dist/esm/experimental-useLoaderState.mjs +41 -0
  45. package/dist/esm/experimental-useLoaderState.mjs.map +1 -0
  46. package/dist/esm/experimental-useLoaderState.native.js +43 -0
  47. package/dist/esm/experimental-useLoaderState.native.js.map +1 -0
  48. package/dist/esm/index.js +2 -1
  49. package/dist/esm/index.js.map +1 -1
  50. package/dist/esm/index.mjs +2 -2
  51. package/dist/esm/index.mjs.map +1 -1
  52. package/dist/esm/index.native.js +2 -2
  53. package/dist/esm/index.native.js.map +1 -1
  54. package/dist/esm/router/router.js +26 -5
  55. package/dist/esm/router/router.js.map +1 -1
  56. package/dist/esm/router/router.mjs +35 -5
  57. package/dist/esm/router/router.mjs.map +1 -1
  58. package/dist/esm/router/router.native.js +32 -5
  59. package/dist/esm/router/router.native.js.map +1 -1
  60. package/dist/esm/server/oneServe.js +10 -5
  61. package/dist/esm/server/oneServe.js.map +1 -1
  62. package/dist/esm/server/oneServe.mjs +7 -5
  63. package/dist/esm/server/oneServe.mjs.map +1 -1
  64. package/dist/esm/server/oneServe.native.js +7 -5
  65. package/dist/esm/server/oneServe.native.js.map +1 -1
  66. package/dist/esm/useLoader.js +110 -35
  67. package/dist/esm/useLoader.js.map +2 -2
  68. package/dist/esm/useLoader.mjs +117 -38
  69. package/dist/esm/useLoader.mjs.map +1 -1
  70. package/dist/esm/useLoader.native.js +151 -57
  71. package/dist/esm/useLoader.native.js.map +1 -1
  72. package/dist/esm/utils/cleanUrl.js +4 -8
  73. package/dist/esm/utils/cleanUrl.js.map +1 -1
  74. package/dist/esm/utils/cleanUrl.mjs +6 -5
  75. package/dist/esm/utils/cleanUrl.mjs.map +1 -1
  76. package/dist/esm/utils/cleanUrl.native.js +6 -3
  77. package/dist/esm/utils/cleanUrl.native.js.map +1 -1
  78. package/package.json +10 -10
  79. package/src/createHandleRequest.ts +6 -2
  80. package/src/index.ts +1 -1
  81. package/src/router/router.ts +45 -0
  82. package/src/server/oneServe.ts +12 -6
  83. package/src/types.ts +1 -0
  84. package/src/useLoader.ts +206 -90
  85. package/src/utils/cleanUrl.ts +7 -10
  86. package/types/createHandleRequest.d.ts.map +1 -1
  87. package/types/experimental-useLoaderState.d.ts.map +1 -0
  88. package/types/index.d.ts +1 -1
  89. package/types/index.d.ts.map +1 -1
  90. package/types/router/router.d.ts.map +1 -1
  91. package/types/server/oneServe.d.ts.map +1 -1
  92. package/types/types.d.ts +1 -0
  93. package/types/types.d.ts.map +1 -1
  94. package/types/useLoader.d.ts +9 -0
  95. package/types/useLoader.d.ts.map +1 -1
  96. package/types/utils/cleanUrl.d.ts +1 -1
  97. package/types/utils/cleanUrl.d.ts.map +1 -1
package/src/useLoader.ts CHANGED
@@ -1,6 +1,5 @@
1
- /* eslint-disable react-hooks/rules-of-hooks */
2
- import { useEffect, useRef } from 'react'
3
- import { useActiveParams, useParams, usePathname } from './hooks'
1
+ import { useCallback, useSyncExternalStore } from 'react'
2
+ import { useParams, usePathname } from './hooks'
4
3
  import { resolveHref } from './link/href'
5
4
  import { preloadingLoader } from './router/router'
6
5
  import { getLoaderPath } from './utils/cleanUrl'
@@ -8,130 +7,247 @@ import { dynamicImport } from './utils/dynamicImport'
8
7
  import { weakKey } from './utils/weakKey'
9
8
  import { useServerContext } from './vite/one-server-only'
10
9
 
11
- const promises: Record<string, undefined | Promise<void>> = {}
12
- const errors = {}
13
- const loadedData: Record<string, any> = {}
10
+ type LoaderStateEntry = {
11
+ data: any
12
+ error: any
13
+ promise?: Promise<void>
14
+ state: 'idle' | 'loading'
15
+ timestamp?: number
16
+ hasLoadedOnce?: boolean
17
+ }
14
18
 
15
- export function useLoader<
16
- Loader extends Function,
19
+ const loaderState: Record<string, LoaderStateEntry> = {}
20
+ const subscribers = new Set<() => void>()
21
+
22
+ function updateState(path: string, updates: Partial<LoaderStateEntry>) {
23
+ loaderState[path] = { ...loaderState[path], ...updates }
24
+ subscribers.forEach((callback) => {
25
+ callback()
26
+ })
27
+ }
28
+
29
+ function subscribe(callback: () => void) {
30
+ subscribers.add(callback)
31
+ return () => subscribers.delete(callback)
32
+ }
33
+
34
+ function getLoaderState(path: string, preloadedData?: any): LoaderStateEntry {
35
+ if (!loaderState[path]) {
36
+ loaderState[path] = {
37
+ data: preloadedData,
38
+ error: undefined,
39
+ promise: undefined,
40
+ state: 'idle',
41
+ hasLoadedOnce: !!preloadedData,
42
+ }
43
+ }
44
+ return loaderState[path]
45
+ }
46
+
47
+ export async function refetchLoader(pathname: string): Promise<void> {
48
+ updateState(pathname, {
49
+ state: 'loading',
50
+ error: null,
51
+ })
52
+
53
+ try {
54
+ const cacheBust = `${Date.now()}`
55
+ const loaderJSUrl = getLoaderPath(pathname, true, cacheBust)
56
+
57
+ const module = await dynamicImport(loaderJSUrl)
58
+ const result = await module.loader()
59
+
60
+ updateState(pathname, {
61
+ data: result,
62
+ state: 'idle',
63
+ timestamp: Date.now(),
64
+ hasLoadedOnce: true,
65
+ })
66
+ } catch (err) {
67
+ updateState(pathname, {
68
+ error: err,
69
+ state: 'idle',
70
+ })
71
+ throw err
72
+ }
73
+ }
74
+
75
+ export function useLoaderState<
76
+ Loader extends Function = any,
17
77
  Returned = Loader extends (p: any) => any ? ReturnType<Loader> : unknown,
18
- >(loader: Loader): Returned extends Promise<any> ? Awaited<Returned> : Returned {
78
+ >(
79
+ loader?: Loader
80
+ ): Loader extends undefined
81
+ ? { refetch: () => Promise<void>; state: 'idle' | 'loading' }
82
+ : {
83
+ data: Returned extends Promise<any> ? Awaited<Returned> : Returned
84
+ refetch: () => Promise<void>
85
+ state: 'idle' | 'loading'
86
+ } {
19
87
  const { loaderProps: loaderPropsFromServerContext, loaderData: loaderDataFromServerContext } =
20
88
  useServerContext() || {}
21
89
 
22
- // server side we just run the loader directly
23
- if (typeof window === 'undefined') {
24
- return useAsyncFn(
90
+ const params = useParams()
91
+ const pathname = usePathname()
92
+ const currentPath = resolveHref({ pathname, params }).replace(/index$/, '')
93
+
94
+ // server-side
95
+ if (typeof window === 'undefined' && loader) {
96
+ const serverData = useAsyncFn(
25
97
  loader,
26
98
  loaderPropsFromServerContext || {
27
- path: usePathname(),
28
- params: useActiveParams(),
99
+ path: pathname,
100
+ params,
29
101
  }
30
102
  )
103
+ return { data: serverData, refetch: async () => {}, state: 'idle' } as any
31
104
  }
32
105
 
33
- const params = useParams()
34
- const pathname = usePathname()
35
-
36
- // Cannot use usePathname() here since it will change every time the route changes,
37
- // but here here we want to get the current local pathname which renders this screen.
38
- const currentPath = resolveHref({ pathname: pathname, params })
39
- .replace(/index$/, '')
40
- .replace(/\?.*/, '')
41
-
42
- // only if it matches current route
106
+ // preloaded data from SSR
43
107
  const preloadedData =
44
108
  loaderPropsFromServerContext?.path === currentPath ? loaderDataFromServerContext : undefined
45
109
 
46
- const currentData = useRef(preloadedData)
110
+ const loaderStateEntry = useSyncExternalStore(
111
+ subscribe,
112
+ () => getLoaderState(currentPath, preloadedData),
113
+ () => getLoaderState(currentPath, preloadedData)
114
+ )
47
115
 
48
- useEffect(() => {
49
- if (preloadedData) {
50
- loadedData[currentPath] = preloadedData
51
- }
52
- // eslint-disable-next-line react-hooks/exhaustive-deps
53
- }, [preloadedData])
116
+ const refetch = useCallback(() => refetchLoader(currentPath), [currentPath])
54
117
 
55
- if (errors[currentPath]) {
56
- throw errors[currentPath]
118
+ // no loader, just return state/refetch for the path
119
+ if (!loader) {
120
+ return {
121
+ refetch,
122
+ state: loaderStateEntry.state,
123
+ } as any
57
124
  }
58
125
 
59
- const loaded = loadedData[currentPath]
60
-
61
- if (typeof loaded !== 'undefined') {
62
- return loaded
63
- }
64
-
65
- if (!preloadedData) {
126
+ // start initial load if needed
127
+ if (
128
+ !loaderStateEntry.data &&
129
+ !loaderStateEntry.promise &&
130
+ !loaderStateEntry.hasLoadedOnce &&
131
+ loader
132
+ ) {
133
+ // check for preloading loader first
66
134
  if (preloadingLoader[currentPath]) {
67
135
  if (typeof preloadingLoader[currentPath] === 'function') {
68
136
  preloadingLoader[currentPath] = preloadingLoader[currentPath]()
69
137
  }
70
- promises[currentPath] = preloadingLoader[currentPath]
71
- .then((val) => {
72
- loadedData[currentPath] = val
138
+ const promise = preloadingLoader[currentPath]
139
+ .then((val: any) => {
140
+ delete preloadingLoader[currentPath]
141
+ updateState(currentPath, {
142
+ data: val,
143
+ hasLoadedOnce: true,
144
+ promise: undefined,
145
+ })
73
146
  })
74
- .catch((err) => {
75
- console.error(`Error loading loader`, err)
76
- errors[currentPath] = err
77
- delete promises[currentPath]
147
+ .catch((err: any) => {
148
+ console.error(`Error running loader()`, err)
78
149
  delete preloadingLoader[currentPath]
150
+ updateState(currentPath, {
151
+ error: err,
152
+ promise: undefined,
153
+ })
79
154
  })
80
- }
81
-
82
- if (!promises[currentPath]) {
83
- const getData = async () => {
84
- // for native add a prefix to route around vite dev server being in front of ours
85
- const loaderJSUrl = getLoaderPath(currentPath, true)
86
155
 
156
+ loaderStateEntry.promise = promise
157
+ } else {
158
+ // initial load
159
+ const loadData = async () => {
87
160
  try {
88
- const response = await (async () => {
89
- if (process.env.TAMAGUI_TARGET === 'native') {
90
- const nativeLoaderJSUrl = `${loaderJSUrl}?platform=ios` /* TODO: platform */
91
-
92
- try {
93
- // On native, we need to fetch the loader code and eval it
94
- const loaderJsCodeResp = await fetch(nativeLoaderJSUrl)
95
- if (!loaderJsCodeResp.ok) {
96
- throw new Error(`Response not ok: ${loaderJsCodeResp.status}`)
97
- }
98
- const loaderJsCode = await loaderJsCodeResp.text()
99
- // biome-ignore lint/security/noGlobalEval: we can't use dynamic `import` on native so we need to fetch and `eval` the code
100
- const result = eval(
101
- `() => { var exports = {}; ${loaderJsCode}; return exports; }`
102
- )()
103
-
104
- if (typeof result.loader !== 'function') {
105
- throw new Error("Loader code isn't exporting a `loader` function")
106
- }
107
-
108
- return result
109
- } catch (e) {
110
- console.error(`Error fetching loader from URL: ${nativeLoaderJSUrl}, ${e}`)
111
- return { loader: () => ({}) }
161
+ if (process.env.TAMAGUI_TARGET === 'native') {
162
+ const loaderJSUrl = getLoaderPath(currentPath, true)
163
+ const nativeLoaderJSUrl = `${loaderJSUrl}?platform=ios`
164
+
165
+ try {
166
+ const loaderJsCodeResp = await fetch(nativeLoaderJSUrl)
167
+ if (!loaderJsCodeResp.ok) {
168
+ throw new Error(`Response not ok: ${loaderJsCodeResp.status}`)
112
169
  }
113
- }
170
+ const loaderJsCode = await loaderJsCodeResp.text()
171
+ // biome-ignore lint/security/noGlobalEval: we need eval for native
172
+ const result = eval(`() => { var exports = {}; ${loaderJsCode}; return exports; }`)()
114
173
 
115
- // On web, we can use import to dynamically load the loader
116
- return await dynamicImport(loaderJSUrl)
117
- })()
174
+ if (typeof result.loader !== 'function') {
175
+ throw new Error("Loader code isn't exporting a `loader` function")
176
+ }
177
+
178
+ const data = await result.loader()
179
+ updateState(currentPath, {
180
+ data,
181
+ hasLoadedOnce: true,
182
+ promise: undefined,
183
+ })
184
+ return
185
+ } catch (e) {
186
+ updateState(currentPath, {
187
+ data: {},
188
+ promise: undefined,
189
+ })
190
+ return
191
+ }
192
+ }
118
193
 
119
- loadedData[currentPath] = response.loader()
120
- return loadedData[currentPath]
194
+ // web platform
195
+ const loaderJSUrl = getLoaderPath(currentPath, true)
196
+ const module = await dynamicImport(loaderJSUrl)
197
+ const result = await module.loader()
198
+ updateState(currentPath, {
199
+ data: result,
200
+ hasLoadedOnce: true,
201
+ promise: undefined,
202
+ })
121
203
  } catch (err) {
122
- console.error(`Error calling loader: ${err}`)
123
- errors[currentPath] = err
124
- delete promises[currentPath]
125
- return null
204
+ updateState(currentPath, {
205
+ error: err,
206
+ promise: undefined,
207
+ })
126
208
  }
127
209
  }
128
- promises[currentPath] = getData()
210
+
211
+ const promise = loadData()
212
+ loaderStateEntry.promise = promise
129
213
  }
214
+ }
130
215
 
131
- throw promises[currentPath]
216
+ // handle errors and suspension
217
+ if (loader) {
218
+ // only throw error on initial load
219
+ if (loaderStateEntry.error && !loaderStateEntry.hasLoadedOnce) {
220
+ throw loaderStateEntry.error
221
+ }
222
+
223
+ // only throw promise for suspension on initial load
224
+ if (
225
+ loaderStateEntry.data === undefined &&
226
+ loaderStateEntry.promise &&
227
+ !loaderStateEntry.hasLoadedOnce
228
+ ) {
229
+ throw loaderStateEntry.promise
230
+ }
231
+
232
+ return {
233
+ data: loaderStateEntry.data,
234
+ refetch,
235
+ state: loaderStateEntry.state,
236
+ } as any
237
+ } else {
238
+ return {
239
+ refetch,
240
+ state: loaderStateEntry.state,
241
+ } as any
132
242
  }
243
+ }
133
244
 
134
- return currentData.current
245
+ export function useLoader<
246
+ Loader extends Function,
247
+ Returned = Loader extends (p: any) => any ? ReturnType<Loader> : unknown,
248
+ >(loader: Loader): Returned extends Promise<any> ? Awaited<Returned> : Returned {
249
+ const { data } = useLoaderState(loader)
250
+ return data
135
251
  }
136
252
 
137
253
  const results = new Map()
@@ -23,25 +23,22 @@ export function getPreloadPath(currentPath: string) {
23
23
  return `${clientSideURL}/assets/${cleanUrl(currentPath.slice(1))}${PRELOAD_JS_POSTFIX}`
24
24
  }
25
25
 
26
- export function getLoaderPath(
27
- currentPath: string,
28
- // browser can be relative
29
- includeUrl = isNative
30
- ) {
26
+ export function getLoaderPath(currentPath: string, includeUrl = isNative, cacheBust?: string) {
31
27
  const baseURL = includeUrl ? getURL() : ''
32
28
  const devPath = process.env.NODE_ENV === 'development' ? '/_one' : ''
33
29
 
34
- const currentPathUrl = new URL(
35
- currentPath,
36
- 'http://example.com' /* not important, just for `new URL()` to work */
37
- )
30
+ const currentPathUrl = new URL(currentPath, 'http://example.com')
31
+
32
+ const cleanedUrl = cleanUrl(currentPathUrl.pathname.slice(1))
33
+ const cacheBustSegment = cacheBust ? `_refetch_${cacheBust}_` : ''
38
34
 
39
- return `${baseURL}${devPath}/assets/${cleanUrl(currentPathUrl.pathname.slice(1))}${LOADER_JS_POSTFIX}`
35
+ return `${baseURL}${devPath}/assets/${cleanedUrl}${cacheBustSegment}${LOADER_JS_POSTFIX}`
40
36
  }
41
37
 
42
38
  export function getPathFromLoaderPath(loaderPath: string) {
43
39
  return loaderPath
44
40
  .replace(LOADER_JS_POSTFIX_REGEX, '')
45
41
  .replace(/^(\/_one)?\/assets/, '')
42
+ .replace(/_refetch_\d+_/, '')
46
43
  .replaceAll(/_/g, '/')
47
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createHandleRequest.d.ts","sourceRoot":"","sources":["../src/createHandleRequest.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAK1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAE7C,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;AAEtD,wBAAsB,cAAc,CAClC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,GACnC,OAAO,CAAC,QAAQ,CAAC,CA8CnB;AAED,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,qBAoBzB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,OAMpD;AASD,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,CACjC,QAAQ,EAAE,eAAe,EACzB,EAAE,UAAU,EAAE,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE;;uBAUW,OAAO,KAAG,OAAO,CAAC,sBAAsB,CAAC;EAqE3F"}
1
+ {"version":3,"file":"createHandleRequest.d.ts","sourceRoot":"","sources":["../src/createHandleRequest.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAK1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAE7C,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;AAEtD,wBAAsB,cAAc,CAClC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,GACnC,OAAO,CAAC,QAAQ,CAAC,CA8CnB;AAED,wBAAsB,eAAe,CACnC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,iBAAiB,qBAsCzB;AAED,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,iBAAiB,qBAmCzB;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,iBAAiB,qBAqBzB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,OAMpD;AASD,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,CACjC,QAAQ,EAAE,eAAe,EACzB,EAAE,UAAU,EAAE,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE;;uBAUW,OAAO,KAAG,OAAO,CAAC,sBAAsB,CAAC;EAsE3F"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"experimental-useLoaderState.d.ts","sourceRoot":"","sources":["../src/experimental-useLoaderState.ts"],"names":[],"mappings":"AAOA,wBAAgB,0BAA0B,CAAC,MAAM,SAAS,QAAQ,EAAE,MAAM,EAAE,MAAM;;;;;EA6CjF"}
package/types/index.d.ts CHANGED
@@ -38,7 +38,7 @@ export * as routerStore from './router/router';
38
38
  export { useNavigation } from './router/useNavigation';
39
39
  export type { Endpoint, LoaderProps } from './types';
40
40
  export { useFocusEffect } from './useFocusEffect';
41
- export { useLoader } from './useLoader';
41
+ export { useLoader, useLoaderState } from './useLoader';
42
42
  export { type ServerHeadInsertionCallback, useServerHeadInsertion } from './useServerHeadInsertion';
43
43
  export { isResponse } from './utils/isResponse';
44
44
  export { redirect } from './utils/redirect';
@@ -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,GAAG,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAGpD,MAAM,MAAM,IAAI,GAAG,aAAa,SAAS,MAAM,SAAS,CAAC,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC,IAAI,CAAA;AAEvF,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;AAElF;;;;;;;;;;GAUG;AACH,MAAM,MAAM,SAAS,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,IAAI,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;AAG/E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErD,cAAc,8BAA8B,CAAA;AAI5C,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAG9D,OAAO,EAAE,gBAAgB,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAE7B,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,SAAS,EACT,WAAW,EACX,sBAAsB,EACtB,SAAS,EACT,WAAW,EACX,qBAAqB,GACtB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAE7B,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAErC,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAE7B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEzD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,KAAK,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACnG,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,wBAAwB,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,GAAG,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAGpD,MAAM,MAAM,IAAI,GAAG,aAAa,SAAS,MAAM,SAAS,CAAC,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC,IAAI,CAAA;AAEvF,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;AAElF;;;;;;;;;;GAUG;AACH,MAAM,MAAM,SAAS,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,IAAI,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;AAG/E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErD,cAAc,8BAA8B,CAAA;AAI5C,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAG9D,OAAO,EAAE,gBAAgB,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAE7B,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,SAAS,EACT,WAAW,EACX,sBAAsB,EACtB,SAAS,EACT,WAAW,EACX,qBAAqB,GACtB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAE7B,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAErC,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAE7B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEzD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,EAAE,KAAK,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACnG,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/router/router.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,iCAAiC,EAAgB,MAAM,0BAA0B,CAAA;AAE/F,OAAO,EAAE,KAAK,aAAa,EAAmD,MAAM,OAAO,CAAA;AAE3F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAOrD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAKzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAMxC,eAAO,IAAI,SAAS,EAAE,SAAS,GAAG,IAAW,CAAA;AAC7C,eAAO,IAAI,aAAa,EAAE,aAAa,CAAA;AAEvC,eAAO,IAAI,wBAAwB,SAAQ,CAAA;AAC3C,eAAO,IAAI,YAAY,EAAE,SAAS,CAAC,WAAW,GAAG,SAAS,CAAA;AAC1D,eAAO,IAAI,SAAS,EAAE,SAAS,CAAC,WAAW,GAAG,SAAS,CAAA;AAGvD,eAAO,IAAI,SAAS,EAAE,SAAS,GAAG,SAAS,CAAA;AAI3C,eAAO,IAAI,aAAa,EAAE,SAAS,CAAC,aAA2B,CAAA;AAQ/D,wBAAgB,UAAU,CACxB,OAAO,EAAE,GAAG,CAAC,YAAY,EACzB,GAAG,EAAE,iCAAiC,CAAC,eAAe,CAAC,aAAa,CAAC,EACrE,eAAe,CAAC,EAAE,GAAG,QAkBtB;AA+ED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,aAAa,iBAE9E;AAED,wBAAgB,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,aAAa,iBAE1E;AAED,wBAAgB,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,QAErC;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,aAAa,iBAE7E;AAED,wBAAgB,SAAS,CAAC,MAAM,GAAE,SAAS,CAAC,uBAA4B,oBAMvE;AAED,wBAAgB,UAAU,SAEzB;AAED,wBAAgB,MAAM,SAGrB;AAED,wBAAgB,SAAS,IAAI,OAAO,CAKnC;AAED,wBAAgB,UAAU,IAAI,OAAO,CAcpC;AAED,wBAAgB,eAAe,gBAK9B;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,WAAW,EAAE,cAAc,wBAAQ,QAS/E;AAGD,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,SAAS,CAAC,iBAAiB,cAK3E;AAED,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,IAAI,cAKtD;AAGD,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,SAAS,CAAC,oBAAoB,cAKjF;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,YAAY,QAM5D;AAUD,wBAAgB,QAAQ;;;;;;;;;;;;qCA5Na,IAAI;;gCAIF,IAAI;EA0N1C;AAqBD,wBAAgB,iBAAiB,0BAEhC;AAED,wBAAgB,iBAAiB,cAEhC;AAGD,wBAAgB,YAAY;;;;;;;;;;;;qCA5PS,IAAI;;gCAIF,IAAI;EA0P1C;AAcD,wBAAgB,iBAAiB,0BAGhC;AAED,wBAAgB,iBAAiB,cAGhC;AAGD,wBAAgB,OAAO,SAItB;AAGD,eAAO,MAAM,gBAAgB,IAAK,CAAA;AAmBlC,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,QAaxC;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,aAAa,iBA6G3F"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/router/router.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,iCAAiC,EAAgB,MAAM,0BAA0B,CAAA;AAE/F,OAAO,EAAE,KAAK,aAAa,EAAmD,MAAM,OAAO,CAAA;AAE3F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAOrD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAKzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAMxC,eAAO,IAAI,SAAS,EAAE,SAAS,GAAG,IAAW,CAAA;AAC7C,eAAO,IAAI,aAAa,EAAE,aAAa,CAAA;AAEvC,eAAO,IAAI,wBAAwB,SAAQ,CAAA;AAC3C,eAAO,IAAI,YAAY,EAAE,SAAS,CAAC,WAAW,GAAG,SAAS,CAAA;AAC1D,eAAO,IAAI,SAAS,EAAE,SAAS,CAAC,WAAW,GAAG,SAAS,CAAA;AAGvD,eAAO,IAAI,SAAS,EAAE,SAAS,GAAG,SAAS,CAAA;AAI3C,eAAO,IAAI,aAAa,EAAE,SAAS,CAAC,aAA2B,CAAA;AAQ/D,wBAAgB,UAAU,CACxB,OAAO,EAAE,GAAG,CAAC,YAAY,EACzB,GAAG,EAAE,iCAAiC,CAAC,eAAe,CAAC,aAAa,CAAC,EACrE,eAAe,CAAC,EAAE,GAAG,QA0CtB;AA+ED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,aAAa,iBAE9E;AAED,wBAAgB,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,aAAa,iBAE1E;AAED,wBAAgB,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,QAKrC;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,aAAa,iBAE7E;AAED,wBAAgB,SAAS,CAAC,MAAM,GAAE,SAAS,CAAC,uBAA4B,oBAMvE;AAED,wBAAgB,UAAU,SAKzB;AAED,wBAAgB,MAAM,SAMrB;AAED,wBAAgB,SAAS,IAAI,OAAO,CAKnC;AAED,wBAAgB,UAAU,IAAI,OAAO,CAcpC;AAED,wBAAgB,eAAe,gBAK9B;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,WAAW,EAAE,cAAc,wBAAQ,QAiB/E;AAGD,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,SAAS,CAAC,iBAAiB,cAK3E;AAED,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,IAAI,cAKtD;AAGD,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,SAAS,CAAC,oBAAoB,cAKjF;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,YAAY,QAM5D;AAUD,wBAAgB,QAAQ;;;;;;;;;;;;qCArQa,IAAI;;gCAIF,IAAI;EAmQ1C;AAqBD,wBAAgB,iBAAiB,0BAEhC;AAED,wBAAgB,iBAAiB,cAEhC;AAGD,wBAAgB,YAAY;;;;;;;;;;;;qCArSS,IAAI;;gCAIF,IAAI;EAmS1C;AAcD,wBAAgB,iBAAiB,0BAGhC;AAED,wBAAgB,iBAAiB,cAGhC;AAGD,wBAAgB,OAAO,SAItB;AAGD,eAAO,MAAM,gBAAgB,IAAK,CAAA;AAmBlC,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,QAaxC;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,aAAa,iBAiH3F"}
@@ -1 +1 @@
1
- {"version":3,"file":"oneServe.d.ts","sourceRoot":"","sources":["../../src/server/oneServe.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAqB,MAAM,MAAM,CAAA;AAenD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AAGxC,wBAAsB,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,aAAa,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,iBAoShG"}
1
+ {"version":3,"file":"oneServe.d.ts","sourceRoot":"","sources":["../../src/server/oneServe.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAqB,MAAM,MAAM,CAAA;AAgBnD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AAGxC,wBAAsB,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,aAAa,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,iBA0ShG"}
package/types/types.d.ts CHANGED
@@ -6,6 +6,7 @@ export type Endpoint = (req: Request) => Response | string | Object | null;
6
6
  export type RenderApp = (props: RenderAppProps) => Promise<string>;
7
7
  export type LoaderProps<Params extends Object = Record<string, string | string[]>> = {
8
8
  path: string;
9
+ search?: string;
9
10
  params: Params;
10
11
  request?: Request;
11
12
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAEvC,yFAAyF;AACzF,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAEhF,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;AAExE,MAAM,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;AAE1E,MAAM,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;AAElE,MAAM,MAAM,WAAW,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI;IACnF,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,GAAG,CAAC,eAAe,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAA;IACd,gBAAgB,CAAC,EAAE,GAAG,CAAA;IACtB,UAAU,CAAC,EAAE,GAAG,CAAA;IAChB,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAEvC,yFAAyF;AACzF,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAEhF,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;AAExE,MAAM,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;AAE1E,MAAM,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;AAElE,MAAM,MAAM,WAAW,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI;IACnF,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,GAAG,CAAC,eAAe,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAA;IACd,gBAAgB,CAAC,EAAE,GAAG,CAAA;IACtB,UAAU,CAAC,EAAE,GAAG,CAAA;IAChB,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B,CAAA"}
@@ -1,2 +1,11 @@
1
+ export declare function refetchLoader(pathname: string): Promise<void>;
2
+ export declare function useLoaderState<Loader extends Function = any, Returned = Loader extends (p: any) => any ? ReturnType<Loader> : unknown>(loader?: Loader): Loader extends undefined ? {
3
+ refetch: () => Promise<void>;
4
+ state: 'idle' | 'loading';
5
+ } : {
6
+ data: Returned extends Promise<any> ? Awaited<Returned> : Returned;
7
+ refetch: () => Promise<void>;
8
+ state: 'idle' | 'loading';
9
+ };
1
10
  export declare function useLoader<Loader extends Function, Returned = Loader extends (p: any) => any ? ReturnType<Loader> : unknown>(loader: Loader): Returned extends Promise<any> ? Awaited<Returned> : Returned;
2
11
  //# sourceMappingURL=useLoader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLoader.d.ts","sourceRoot":"","sources":["../src/useLoader.ts"],"names":[],"mappings":"AAcA,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,CAqH9E"}
1
+ {"version":3,"file":"useLoader.d.ts","sourceRoot":"","sources":["../src/useLoader.ts"],"names":[],"mappings":"AA8CA,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BnE;AAED,wBAAgB,cAAc,CAC5B,MAAM,SAAS,QAAQ,GAAG,GAAG,EAC7B,QAAQ,GAAG,MAAM,SAAS,CAAC,CAAC,EAAE,GAAG,KAAK,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,OAAO,EAExE,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,SAAS,SAAS,GACvB;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAC3D;IACE,IAAI,EAAE,QAAQ,SAAS,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAA;IAClE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;CAC1B,CA6JJ;AAED,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,CAG9E"}
@@ -1,4 +1,4 @@
1
1
  export declare function getPreloadPath(currentPath: string): string;
2
- export declare function getLoaderPath(currentPath: string, includeUrl?: boolean): string;
2
+ export declare function getLoaderPath(currentPath: string, includeUrl?: boolean, cacheBust?: string): string;
3
3
  export declare function getPathFromLoaderPath(loaderPath: string): string;
4
4
  //# sourceMappingURL=cleanUrl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cleanUrl.d.ts","sourceRoot":"","sources":["../../src/utils/cleanUrl.ts"],"names":[],"mappings":"AAqBA,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,UAEjD;AAED,wBAAgB,aAAa,CAC3B,WAAW,EAAE,MAAM,EAEnB,UAAU,UAAW,UAWtB;AAED,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,UAKvD"}
1
+ {"version":3,"file":"cleanUrl.d.ts","sourceRoot":"","sources":["../../src/utils/cleanUrl.ts"],"names":[],"mappings":"AAqBA,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,UAEjD;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,UAAW,EAAE,SAAS,CAAC,EAAE,MAAM,UAU3F;AAED,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,UAMvD"}