@tanstack/solid-start 1.132.0-alpha.9 → 1.132.0

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.
@@ -0,0 +1,6 @@
1
+ import { Register } from '@tanstack/solid-router';
2
+ import { RequestHandler } from '@tanstack/solid-start/server';
3
+ declare const _default: {
4
+ fetch: RequestHandler<Register>;
5
+ };
6
+ export default _default;
@@ -0,0 +1,10 @@
1
+ import { createStartHandler, defaultStreamHandler } from "@tanstack/solid-start/server";
2
+ const fetch = createStartHandler(defaultStreamHandler);
3
+ const server = {
4
+ // Providing `RequestHandler` from `@tanstack/solid-start/server` is required so that the output types don't import it from `@tanstack/start-server-core`
5
+ fetch
6
+ };
7
+ export {
8
+ server as default
9
+ };
10
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sources":["../../../src/default-entry/server.ts"],"sourcesContent":["import {\n createStartHandler,\n defaultStreamHandler,\n} from '@tanstack/solid-start/server'\nimport type { Register } from '@tanstack/solid-router'\nimport type { RequestHandler } from '@tanstack/solid-start/server'\n\nconst fetch = createStartHandler(defaultStreamHandler)\n\nexport default {\n // Providing `RequestHandler` from `@tanstack/solid-start/server` is required so that the output types don't import it from `@tanstack/start-server-core`\n\n fetch: fetch as RequestHandler<Register>,\n}\n"],"names":[],"mappings":";AAOA,MAAM,QAAQ,mBAAmB,oBAAoB;AAErD,MAAA,SAAe;AAAA;AAAA,EAGb;AACF;"}
@@ -0,0 +1,2 @@
1
+ declare const _default: {};
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { useServerFn } from './useServerFn.js';
2
+ export * from '@tanstack/start-client-core';
@@ -0,0 +1,6 @@
1
+ import { useServerFn } from "./useServerFn.js";
2
+ export * from "@tanstack/start-client-core";
3
+ export {
4
+ useServerFn
5
+ };
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -11,7 +11,8 @@ const defaultEntryDir = path.resolve(
11
11
  );
12
12
  const defaultEntryPaths = {
13
13
  client: path.resolve(defaultEntryDir, "client"),
14
- server: path.resolve(defaultEntryDir, "server")
14
+ server: path.resolve(defaultEntryDir, "server"),
15
+ start: path.resolve(defaultEntryDir, "start")
15
16
  };
16
17
  function tanstackStart(options) {
17
18
  return [
@@ -1 +1 @@
1
- {"version":3,"file":"vite.js","sources":["../../../src/plugin/vite.ts"],"sourcesContent":["import { fileURLToPath } from 'node:url'\nimport { TanStackStartVitePluginCore } from '@tanstack/start-plugin-core'\nimport path from 'pathe'\nimport type { TanStackStartInputConfig } from '@tanstack/start-plugin-core'\nimport type { PluginOption } from 'vite'\n\nconst currentDir = path.dirname(fileURLToPath(import.meta.url))\nconst defaultEntryDir = path.resolve(\n currentDir,\n '..',\n '..',\n 'plugin',\n 'default-entry',\n)\nconst defaultEntryPaths = {\n client: path.resolve(defaultEntryDir, 'client'),\n server: path.resolve(defaultEntryDir, 'server'),\n}\n\nexport function tanstackStart(\n options?: TanStackStartInputConfig,\n): Array<PluginOption> {\n return [\n TanStackStartVitePluginCore(\n {\n framework: 'solid',\n defaultEntryPaths,\n },\n options,\n ),\n ]\n}\n"],"names":[],"mappings":";;;AAMA,MAAM,aAAa,KAAK,QAAQ,cAAc,YAAY,GAAG,CAAC;AAC9D,MAAM,kBAAkB,KAAK;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AACA,MAAM,oBAAoB;AAAA,EACxB,QAAQ,KAAK,QAAQ,iBAAiB,QAAQ;AAAA,EAC9C,QAAQ,KAAK,QAAQ,iBAAiB,QAAQ;AAChD;AAEO,SAAS,cACd,SACqB;AACrB,SAAO;AAAA,IACL;AAAA,MACE;AAAA,QACE,WAAW;AAAA,QACX;AAAA,MAAA;AAAA,MAEF;AAAA,IAAA;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"vite.js","sources":["../../../src/plugin/vite.ts"],"sourcesContent":["import { fileURLToPath } from 'node:url'\nimport { TanStackStartVitePluginCore } from '@tanstack/start-plugin-core'\nimport path from 'pathe'\nimport type { TanStackStartInputConfig } from '@tanstack/start-plugin-core'\nimport type { PluginOption } from 'vite'\n\nconst currentDir = path.dirname(fileURLToPath(import.meta.url))\nconst defaultEntryDir = path.resolve(\n currentDir,\n '..',\n '..',\n 'plugin',\n 'default-entry',\n)\nconst defaultEntryPaths = {\n client: path.resolve(defaultEntryDir, 'client'),\n server: path.resolve(defaultEntryDir, 'server'),\n start: path.resolve(defaultEntryDir, 'start'),\n}\n\nexport function tanstackStart(\n options?: TanStackStartInputConfig,\n): Array<PluginOption> {\n return [\n TanStackStartVitePluginCore(\n {\n framework: 'solid',\n defaultEntryPaths,\n },\n options,\n ),\n ]\n}\n"],"names":[],"mappings":";;;AAMA,MAAM,aAAa,KAAK,QAAQ,cAAc,YAAY,GAAG,CAAC;AAC9D,MAAM,kBAAkB,KAAK;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AACA,MAAM,oBAAoB;AAAA,EACxB,QAAQ,KAAK,QAAQ,iBAAiB,QAAQ;AAAA,EAC9C,QAAQ,KAAK,QAAQ,iBAAiB,QAAQ;AAAA,EAC9C,OAAO,KAAK,QAAQ,iBAAiB,OAAO;AAC9C;AAEO,SAAS,cACd,SACqB;AACrB,SAAO;AAAA,IACL;AAAA,MACE;AAAA,QACE,WAAW;AAAA,QACX;AAAA,MAAA;AAAA,MAEF;AAAA,IAAA;AAAA,EACF;AAEJ;"}
@@ -0,0 +1 @@
1
+ export declare function useServerFn<T extends (...deps: Array<any>) => Promise<any>>(serverFn: T): (...args: Parameters<T>) => ReturnType<T>;
@@ -0,0 +1,23 @@
1
+ import { useRouter, isRedirect } from "@tanstack/solid-router";
2
+ function useServerFn(serverFn) {
3
+ const router = useRouter();
4
+ return async (...args) => {
5
+ try {
6
+ const res = await serverFn(...args);
7
+ if (isRedirect(res)) {
8
+ throw res;
9
+ }
10
+ return res;
11
+ } catch (err) {
12
+ if (isRedirect(err)) {
13
+ err.options._fromLocation = router.state.location;
14
+ return router.navigate(router.resolveRedirect(err).options);
15
+ }
16
+ throw err;
17
+ }
18
+ };
19
+ }
20
+ export {
21
+ useServerFn
22
+ };
23
+ //# sourceMappingURL=useServerFn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useServerFn.js","sources":["../../src/useServerFn.ts"],"sourcesContent":["import { isRedirect, useRouter } from '@tanstack/solid-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 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 }) as any\n}\n"],"names":[],"mappings":";AAEO,SAAS,YACd,UAC2C;AAC3C,QAAM,SAAS,UAAA;AAEf,SAAQ,UAAU,SAAqB;AACrC,QAAI;AACF,YAAM,MAAM,MAAM,SAAS,GAAG,IAAI;AAElC,UAAI,WAAW,GAAG,GAAG;AACnB,cAAM;AAAA,MACR;AAEA,aAAO;AAAA,IACT,SAAS,KAAK;AACZ,UAAI,WAAW,GAAG,GAAG;AACnB,YAAI,QAAQ,gBAAgB,OAAO,MAAM;AACzC,eAAO,OAAO,SAAS,OAAO,gBAAgB,GAAG,EAAE,OAAO;AAAA,MAC5D;AAEA,YAAM;AAAA,IACR;AAAA,EACF;AACF;"}
@@ -1,7 +1,4 @@
1
1
  import { hydrate } from 'solid-js/web'
2
- import { StartClient } from '@tanstack/solid-start'
3
- import { createRouter } from '#tanstack-start-router-entry'
2
+ import { StartClient } from '@tanstack/solid-start/client'
4
3
 
5
- const router = createRouter()
6
-
7
- hydrate(() => <StartClient router={router} />, document.body)
4
+ hydrate(() => <StartClient />, document.body)
@@ -2,13 +2,13 @@ import {
2
2
  createStartHandler,
3
3
  defaultStreamHandler,
4
4
  } from '@tanstack/solid-start/server'
5
+ import type { Register } from '@tanstack/solid-router'
6
+ import type { RequestHandler } from '@tanstack/solid-start/server'
5
7
 
6
- import { createRouter } from '#tanstack-start-router-entry'
7
-
8
- const fetch = createStartHandler({
9
- createRouter,
10
- })(defaultStreamHandler)
8
+ const fetch = createStartHandler(defaultStreamHandler)
11
9
 
12
10
  export default {
13
- fetch,
11
+ // Providing `RequestHandler` from `@tanstack/solid-start/server` is required so that the output types don't import it from `@tanstack/start-server-core`
12
+
13
+ fetch: fetch as RequestHandler<Register>,
14
14
  }
@@ -0,0 +1 @@
1
+ export default {}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tanstack/solid-start",
3
- "version": "1.132.0-alpha.9",
3
+ "version": "1.132.0",
4
4
  "description": "Modern and scalable routing for Solid applications",
5
5
  "author": "Tanner Linsley",
6
6
  "license": "MIT",
@@ -24,12 +24,12 @@
24
24
  "typescript"
25
25
  ],
26
26
  "type": "module",
27
- "types": "dist/esm/client.d.ts",
27
+ "types": "dist/esm/index.d.ts",
28
28
  "exports": {
29
29
  ".": {
30
30
  "import": {
31
- "types": "./dist/esm/client.d.ts",
32
- "default": "./dist/esm/client.js"
31
+ "types": "./dist/esm/index.d.ts",
32
+ "default": "./dist/esm/index.js"
33
33
  }
34
34
  },
35
35
  "./client": {
@@ -50,6 +50,12 @@
50
50
  "default": "./dist/esm/plugin/vite.js"
51
51
  }
52
52
  },
53
+ "./server-entry": {
54
+ "import": {
55
+ "types": "./dist/default-entry/esm/server.d.ts",
56
+ "default": "./dist/default-entry/esm/server.js"
57
+ }
58
+ },
53
59
  "./package.json": "./package.json"
54
60
  },
55
61
  "sideEffects": false,
@@ -58,17 +64,19 @@
58
64
  "src"
59
65
  ],
60
66
  "engines": {
61
- "node": ">=12"
67
+ "node": ">=22.12.0"
62
68
  },
63
69
  "dependencies": {
64
70
  "pathe": "^2.0.3",
65
- "@tanstack/solid-start-client": "1.132.0-alpha.9",
66
- "@tanstack/start-plugin-core": "1.132.0-alpha.9",
67
- "@tanstack/solid-start-server": "1.132.0-alpha.9"
71
+ "@tanstack/solid-start-client": "1.132.0",
72
+ "@tanstack/start-plugin-core": "1.132.0",
73
+ "@tanstack/solid-start-server": "1.132.0",
74
+ "@tanstack/start-client-core": "1.132.0",
75
+ "@tanstack/solid-router": "1.132.0"
68
76
  },
69
77
  "devDependencies": {
70
78
  "vite": "^7.1.1",
71
- "@tanstack/router-utils": "1.132.0-alpha.9"
79
+ "@tanstack/router-utils": "1.132.0"
72
80
  },
73
81
  "peerDependencies": {
74
82
  "solid-js": ">=1.0.0",
@@ -0,0 +1,4 @@
1
+ import { hydrate } from 'solid-js/web'
2
+ import { StartClient } from '@tanstack/solid-start/client'
3
+
4
+ hydrate(() => <StartClient />, document.body)
@@ -0,0 +1,14 @@
1
+ import {
2
+ createStartHandler,
3
+ defaultStreamHandler,
4
+ } from '@tanstack/solid-start/server'
5
+ import type { Register } from '@tanstack/solid-router'
6
+ import type { RequestHandler } from '@tanstack/solid-start/server'
7
+
8
+ const fetch = createStartHandler(defaultStreamHandler)
9
+
10
+ export default {
11
+ // Providing `RequestHandler` from `@tanstack/solid-start/server` is required so that the output types don't import it from `@tanstack/start-server-core`
12
+
13
+ fetch: fetch as RequestHandler<Register>,
14
+ }
@@ -0,0 +1 @@
1
+ export default {}
package/src/index.ts ADDED
@@ -0,0 +1,2 @@
1
+ export { useServerFn } from './useServerFn'
2
+ export * from '@tanstack/start-client-core'
@@ -15,6 +15,7 @@ const defaultEntryDir = path.resolve(
15
15
  const defaultEntryPaths = {
16
16
  client: path.resolve(defaultEntryDir, 'client'),
17
17
  server: path.resolve(defaultEntryDir, 'server'),
18
+ start: path.resolve(defaultEntryDir, 'start'),
18
19
  }
19
20
 
20
21
  export function tanstackStart(
@@ -0,0 +1,26 @@
1
+ import { isRedirect, useRouter } from '@tanstack/solid-router'
2
+
3
+ export function useServerFn<T extends (...deps: Array<any>) => Promise<any>>(
4
+ serverFn: T,
5
+ ): (...args: Parameters<T>) => ReturnType<T> {
6
+ const router = useRouter()
7
+
8
+ return (async (...args: Array<any>) => {
9
+ try {
10
+ const res = await serverFn(...args)
11
+
12
+ if (isRedirect(res)) {
13
+ throw res
14
+ }
15
+
16
+ return res
17
+ } catch (err) {
18
+ if (isRedirect(err)) {
19
+ err.options._fromLocation = router.state.location
20
+ return router.navigate(router.resolveRedirect(err).options)
21
+ }
22
+
23
+ throw err
24
+ }
25
+ }) as any
26
+ }
@@ -1,7 +0,0 @@
1
- import { hydrate } from 'solid-js/web'
2
- import { StartClient } from '@tanstack/solid-start'
3
- import { createRouter } from '#tanstack-start-router-entry'
4
-
5
- const router = createRouter()
6
-
7
- hydrate(() => <StartClient router={router} />, document.body)
@@ -1,4 +0,0 @@
1
- declare module '#tanstack-start-router-entry' {
2
- // eslint-disable-next-line @typescript-eslint/consistent-type-imports
3
- export const createRouter: () => import('@tanstack/router-core').AnyRouter
4
- }
@@ -1,14 +0,0 @@
1
- import {
2
- createStartHandler,
3
- defaultStreamHandler,
4
- } from '@tanstack/solid-start/server'
5
-
6
- import { createRouter } from '#tanstack-start-router-entry'
7
-
8
- const fetch = createStartHandler({
9
- createRouter,
10
- })(defaultStreamHandler)
11
-
12
- export default {
13
- fetch,
14
- }