fix
This commit is contained in:
parent
b440f92c5e
commit
d17ca3caf4
|
|
@ -31,7 +31,9 @@ export const newServerRouter = <
|
||||||
return arg;
|
return arg;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const createClientForServer = <T extends ReturnType<typeof newServerRouter>>(
|
export const createClientForServer = <
|
||||||
|
T extends ReturnType<typeof newServerRouter>
|
||||||
|
>(
|
||||||
router: T
|
router: T
|
||||||
) => {
|
) => {
|
||||||
return new Proxy(
|
return new Proxy(
|
||||||
|
|
@ -52,7 +54,7 @@ export const createClientForServer = <T extends ReturnType<typeof newServerRoute
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
export const useServerRouter = async <T extends ReturnType<typeof newServerRouter>>(
|
export const useServerRouter = <T extends ReturnType<typeof newServerRouter>>(
|
||||||
router: T
|
router: T
|
||||||
) => {
|
) => {
|
||||||
const rou = createRouter<{
|
const rou = createRouter<{
|
||||||
|
|
@ -63,7 +65,7 @@ export const useServerRouter = async <T extends ReturnType<typeof newServerRoute
|
||||||
for (const item of Object.values(router)) {
|
for (const item of Object.values(router)) {
|
||||||
try {
|
try {
|
||||||
addRoute(rou, undefined, item[0], {
|
addRoute(rou, undefined, item[0], {
|
||||||
handler: await (item as any)[1](),
|
handler: (item as any)[1](),
|
||||||
opt: item[2],
|
opt: item[2],
|
||||||
});
|
});
|
||||||
} catch (e) {}
|
} catch (e) {}
|
||||||
|
|
@ -77,6 +79,10 @@ export const useServerRouter = async <T extends ReturnType<typeof newServerRoute
|
||||||
if (found) {
|
if (found) {
|
||||||
const route = found.data;
|
const route = found.data;
|
||||||
|
|
||||||
|
if (route.handler instanceof Promise) {
|
||||||
|
route.handler = await route.handler;
|
||||||
|
}
|
||||||
|
|
||||||
let result = null;
|
let result = null;
|
||||||
if (!route.opt || route.opt?.request_as === "raw") {
|
if (!route.opt || route.opt?.request_as === "raw") {
|
||||||
result = await route.handler.default();
|
result = await route.handler.default();
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ export const sessionServer = <T>(arg: {
|
||||||
}): ServerSession => {
|
}): ServerSession => {
|
||||||
const internal = {
|
const internal = {
|
||||||
has_router: false,
|
has_router: false,
|
||||||
router: null as null | Awaited<ReturnType<typeof useServerRouter>>,
|
router: null as null | ReturnType<typeof useServerRouter>,
|
||||||
};
|
};
|
||||||
if (typeof arg.router === "object" && arg.router instanceof Promise) {
|
if (typeof arg.router === "object" && arg.router instanceof Promise) {
|
||||||
internal.has_router = true;
|
internal.has_router = true;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue