@tanstack/react-start-client 1.127.2 → 1.127.7
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.
- package/dist/cjs/renderRSC.cjs +2 -2
- package/dist/cjs/useServerFn.cjs +35 -14
- package/dist/cjs/useServerFn.cjs.map +1 -1
- package/dist/esm/useServerFn.js +18 -14
- package/dist/esm/useServerFn.js.map +1 -1
- package/package.json +4 -4
- package/src/useServerFn.ts +19 -15
package/dist/cjs/renderRSC.cjs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const
|
|
3
|
+
const React = require("react");
|
|
4
4
|
const invariant = require("tiny-invariant");
|
|
5
5
|
function renderRsc(input) {
|
|
6
|
-
if (
|
|
6
|
+
if (React.isValidElement(input)) {
|
|
7
7
|
return input;
|
|
8
8
|
}
|
|
9
9
|
if (typeof input === "object" && !input.state) {
|
package/dist/cjs/useServerFn.cjs
CHANGED
|
@@ -1,24 +1,45 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const React = require("react");
|
|
3
4
|
const routerCore = require("@tanstack/router-core");
|
|
4
5
|
const reactRouter = require("@tanstack/react-router");
|
|
6
|
+
function _interopNamespaceDefault(e) {
|
|
7
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
8
|
+
if (e) {
|
|
9
|
+
for (const k in e) {
|
|
10
|
+
if (k !== "default") {
|
|
11
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
12
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: () => e[k]
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
n.default = e;
|
|
20
|
+
return Object.freeze(n);
|
|
21
|
+
}
|
|
22
|
+
const React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React);
|
|
5
23
|
function useServerFn(serverFn) {
|
|
6
24
|
const router = reactRouter.useRouter();
|
|
7
|
-
return
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
25
|
+
return React__namespace.useCallback(
|
|
26
|
+
async (...args) => {
|
|
27
|
+
try {
|
|
28
|
+
const res = await serverFn(...args);
|
|
29
|
+
if (routerCore.isRedirect(res)) {
|
|
30
|
+
throw res;
|
|
31
|
+
}
|
|
32
|
+
return res;
|
|
33
|
+
} catch (err) {
|
|
34
|
+
if (routerCore.isRedirect(err)) {
|
|
35
|
+
err.options._fromLocation = router.state.location;
|
|
36
|
+
return router.navigate(router.resolveRedirect(err).options);
|
|
37
|
+
}
|
|
38
|
+
throw err;
|
|
12
39
|
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
err.options._fromLocation = router.state.location;
|
|
17
|
-
return router.navigate(router.resolveRedirect(err).options);
|
|
18
|
-
}
|
|
19
|
-
throw err;
|
|
20
|
-
}
|
|
21
|
-
};
|
|
40
|
+
},
|
|
41
|
+
[router, serverFn]
|
|
42
|
+
);
|
|
22
43
|
}
|
|
23
44
|
exports.useServerFn = useServerFn;
|
|
24
45
|
//# sourceMappingURL=useServerFn.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useServerFn.cjs","sources":["../../src/useServerFn.ts"],"sourcesContent":["import { isRedirect } from '@tanstack/router-core'\nimport { useRouter } from '@tanstack/react-router'\n\nexport function useServerFn<T extends (...deps: Array<any>) => Promise<any>>(\n serverFn: T,\n): (...args: Parameters<T>) => ReturnType<T> {\n const router = useRouter()\n\n return (async (...args: Array<any>) => {\n
|
|
1
|
+
{"version":3,"file":"useServerFn.cjs","sources":["../../src/useServerFn.ts"],"sourcesContent":["import * as React from 'react'\nimport { isRedirect } from '@tanstack/router-core'\nimport { useRouter } from '@tanstack/react-router'\n\nexport function useServerFn<T extends (...deps: Array<any>) => Promise<any>>(\n serverFn: T,\n): (...args: Parameters<T>) => ReturnType<T> {\n const router = useRouter()\n\n return React.useCallback(\n async (...args: Array<any>) => {\n try {\n const res = await serverFn(...args)\n\n if (isRedirect(res)) {\n throw res\n }\n\n return res\n } catch (err) {\n if (isRedirect(err)) {\n err.options._fromLocation = router.state.location\n return router.navigate(router.resolveRedirect(err).options)\n }\n\n throw err\n }\n },\n [router, serverFn],\n ) as any\n}\n"],"names":["useRouter","React","isRedirect"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAIO,SAAS,YACd,UAC2C;AAC3C,QAAM,SAASA,YAAAA,UAAU;AAEzB,SAAOC,iBAAM;AAAA,IACX,UAAU,SAAqB;AACzB,UAAA;AACF,cAAM,MAAM,MAAM,SAAS,GAAG,IAAI;AAE9B,YAAAC,WAAAA,WAAW,GAAG,GAAG;AACb,gBAAA;AAAA,QAAA;AAGD,eAAA;AAAA,eACA,KAAK;AACR,YAAAA,WAAAA,WAAW,GAAG,GAAG;AACf,cAAA,QAAQ,gBAAgB,OAAO,MAAM;AACzC,iBAAO,OAAO,SAAS,OAAO,gBAAgB,GAAG,EAAE,OAAO;AAAA,QAAA;AAGtD,cAAA;AAAA,MAAA;AAAA,IAEV;AAAA,IACA,CAAC,QAAQ,QAAQ;AAAA,EACnB;AACF;;"}
|
package/dist/esm/useServerFn.js
CHANGED
|
@@ -1,22 +1,26 @@
|
|
|
1
|
+
import * as React from "react";
|
|
1
2
|
import { isRedirect } from "@tanstack/router-core";
|
|
2
3
|
import { useRouter } from "@tanstack/react-router";
|
|
3
4
|
function useServerFn(serverFn) {
|
|
4
5
|
const router = useRouter();
|
|
5
|
-
return
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
return React.useCallback(
|
|
7
|
+
async (...args) => {
|
|
8
|
+
try {
|
|
9
|
+
const res = await serverFn(...args);
|
|
10
|
+
if (isRedirect(res)) {
|
|
11
|
+
throw res;
|
|
12
|
+
}
|
|
13
|
+
return res;
|
|
14
|
+
} catch (err) {
|
|
15
|
+
if (isRedirect(err)) {
|
|
16
|
+
err.options._fromLocation = router.state.location;
|
|
17
|
+
return router.navigate(router.resolveRedirect(err).options);
|
|
18
|
+
}
|
|
19
|
+
throw err;
|
|
10
20
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
err.options._fromLocation = router.state.location;
|
|
15
|
-
return router.navigate(router.resolveRedirect(err).options);
|
|
16
|
-
}
|
|
17
|
-
throw err;
|
|
18
|
-
}
|
|
19
|
-
};
|
|
21
|
+
},
|
|
22
|
+
[router, serverFn]
|
|
23
|
+
);
|
|
20
24
|
}
|
|
21
25
|
export {
|
|
22
26
|
useServerFn
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useServerFn.js","sources":["../../src/useServerFn.ts"],"sourcesContent":["import { isRedirect } from '@tanstack/router-core'\nimport { useRouter } from '@tanstack/react-router'\n\nexport function useServerFn<T extends (...deps: Array<any>) => Promise<any>>(\n serverFn: T,\n): (...args: Parameters<T>) => ReturnType<T> {\n const router = useRouter()\n\n return (async (...args: Array<any>) => {\n
|
|
1
|
+
{"version":3,"file":"useServerFn.js","sources":["../../src/useServerFn.ts"],"sourcesContent":["import * as React from 'react'\nimport { isRedirect } from '@tanstack/router-core'\nimport { useRouter } from '@tanstack/react-router'\n\nexport function useServerFn<T extends (...deps: Array<any>) => Promise<any>>(\n serverFn: T,\n): (...args: Parameters<T>) => ReturnType<T> {\n const router = useRouter()\n\n return React.useCallback(\n async (...args: Array<any>) => {\n try {\n const res = await serverFn(...args)\n\n if (isRedirect(res)) {\n throw res\n }\n\n return res\n } catch (err) {\n if (isRedirect(err)) {\n err.options._fromLocation = router.state.location\n return router.navigate(router.resolveRedirect(err).options)\n }\n\n throw err\n }\n },\n [router, serverFn],\n ) as any\n}\n"],"names":[],"mappings":";;;AAIO,SAAS,YACd,UAC2C;AAC3C,QAAM,SAAS,UAAU;AAEzB,SAAO,MAAM;AAAA,IACX,UAAU,SAAqB;AACzB,UAAA;AACF,cAAM,MAAM,MAAM,SAAS,GAAG,IAAI;AAE9B,YAAA,WAAW,GAAG,GAAG;AACb,gBAAA;AAAA,QAAA;AAGD,eAAA;AAAA,eACA,KAAK;AACR,YAAA,WAAW,GAAG,GAAG;AACf,cAAA,QAAQ,gBAAgB,OAAO,MAAM;AACzC,iBAAO,OAAO,SAAS,OAAO,gBAAgB,GAAG,EAAE,OAAO;AAAA,QAAA;AAGtD,cAAA;AAAA,MAAA;AAAA,IAEV;AAAA,IACA,CAAC,QAAQ,QAAQ;AAAA,EACnB;AACF;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tanstack/react-start-client",
|
|
3
|
-
"version": "1.127.
|
|
3
|
+
"version": "1.127.7",
|
|
4
4
|
"description": "Modern and scalable routing for React applications",
|
|
5
5
|
"author": "Tanner Linsley",
|
|
6
6
|
"license": "MIT",
|
|
@@ -50,9 +50,9 @@
|
|
|
50
50
|
"cookie-es": "^1.2.2",
|
|
51
51
|
"tiny-invariant": "^1.3.3",
|
|
52
52
|
"tiny-warning": "^1.0.3",
|
|
53
|
-
"@tanstack/react-router": "1.127.
|
|
54
|
-
"@tanstack/
|
|
55
|
-
"@tanstack/
|
|
53
|
+
"@tanstack/react-router": "1.127.3",
|
|
54
|
+
"@tanstack/start-client-core": "1.127.3",
|
|
55
|
+
"@tanstack/router-core": "1.127.3"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
58
|
"@testing-library/react": "^16.2.0",
|
package/src/useServerFn.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as React from 'react'
|
|
1
2
|
import { isRedirect } from '@tanstack/router-core'
|
|
2
3
|
import { useRouter } from '@tanstack/react-router'
|
|
3
4
|
|
|
@@ -6,22 +7,25 @@ export function useServerFn<T extends (...deps: Array<any>) => Promise<any>>(
|
|
|
6
7
|
): (...args: Parameters<T>) => ReturnType<T> {
|
|
7
8
|
const router = useRouter()
|
|
8
9
|
|
|
9
|
-
return (
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
return React.useCallback(
|
|
11
|
+
async (...args: Array<any>) => {
|
|
12
|
+
try {
|
|
13
|
+
const res = await serverFn(...args)
|
|
12
14
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
if (isRedirect(res)) {
|
|
16
|
+
throw res
|
|
17
|
+
}
|
|
16
18
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
return res
|
|
20
|
+
} catch (err) {
|
|
21
|
+
if (isRedirect(err)) {
|
|
22
|
+
err.options._fromLocation = router.state.location
|
|
23
|
+
return router.navigate(router.resolveRedirect(err).options)
|
|
24
|
+
}
|
|
23
25
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
26
|
+
throw err
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
[router, serverFn],
|
|
30
|
+
) as any
|
|
27
31
|
}
|