@tanstack/solid-start 1.167.37 → 1.167.39

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,3 @@
1
+ import { TanStackStartRsbuildInputConfig } from '@tanstack/start-plugin-core/rsbuild';
2
+ import { RsbuildPlugin } from '@rsbuild/core';
3
+ export declare function tanstackStart(options?: TanStackStartRsbuildInputConfig): RsbuildPlugin;
@@ -0,0 +1,44 @@
1
+ import { solidStartDefaultEntryPaths } from "./shared.js";
2
+ import { RSBUILD_ENVIRONMENT_NAMES, tanStackStartRsbuild } from "@tanstack/start-plugin-core/rsbuild";
3
+ //#region src/plugin/rsbuild.ts
4
+ function tanstackStart(options) {
5
+ const basePlugin = tanStackStartRsbuild({
6
+ framework: "solid",
7
+ defaultEntryPaths: solidStartDefaultEntryPaths,
8
+ providerEnvironmentName: RSBUILD_ENVIRONMENT_NAMES.server,
9
+ ssrIsProvider: true,
10
+ rsbuild: { environments: { all: { resolve: { conditionNames: ["solid", "..."] } } } }
11
+ }, options);
12
+ return {
13
+ name: "tanstack-solid-start-rsbuild",
14
+ setup(api) {
15
+ basePlugin.setup(api);
16
+ api.modifyBundlerChain(async (chain, { CHAIN_ID, target }) => {
17
+ for (const ruleId of [
18
+ CHAIN_ID.RULE.JS,
19
+ CHAIN_ID.RULE.JS_DATA_URI,
20
+ "babel-js"
21
+ ]) {
22
+ if (!chain.module.rules.has(ruleId)) continue;
23
+ const rule = chain.module.rule(ruleId);
24
+ if (!rule.uses.has(CHAIN_ID.USE.BABEL)) continue;
25
+ rule.use(CHAIN_ID.USE.BABEL).tap((babelOptions) => {
26
+ babelOptions.presets = (babelOptions.presets ?? []).map((preset) => {
27
+ if (Array.isArray(preset) && typeof preset[0] === "string" && preset[0].includes("babel-preset-solid")) return [preset[0], {
28
+ ...preset[1] ?? {},
29
+ hydratable: true,
30
+ generate: target === "node" ? "ssr" : "dom"
31
+ }];
32
+ return preset;
33
+ });
34
+ return babelOptions;
35
+ });
36
+ }
37
+ });
38
+ }
39
+ };
40
+ }
41
+ //#endregion
42
+ export { tanstackStart };
43
+
44
+ //# sourceMappingURL=rsbuild.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rsbuild.js","names":[],"sources":["../../../src/plugin/rsbuild.ts"],"sourcesContent":["import {\n RSBUILD_ENVIRONMENT_NAMES,\n tanStackStartRsbuild,\n} from '@tanstack/start-plugin-core/rsbuild'\nimport { solidStartDefaultEntryPaths } from './shared'\nimport type {\n TanStackStartRsbuildInputConfig,\n TanStackStartRsbuildPluginCoreOptions,\n} from '@tanstack/start-plugin-core/rsbuild'\nimport type { RsbuildPlugin } from '@rsbuild/core'\n\nexport function tanstackStart(\n options?: TanStackStartRsbuildInputConfig,\n): RsbuildPlugin {\n const corePluginOpts: TanStackStartRsbuildPluginCoreOptions = {\n framework: 'solid',\n defaultEntryPaths: solidStartDefaultEntryPaths,\n providerEnvironmentName: RSBUILD_ENVIRONMENT_NAMES.server,\n ssrIsProvider: true,\n rsbuild: {\n environments: {\n all: {\n resolve: {\n conditionNames: ['solid', '...'],\n },\n },\n },\n },\n }\n\n const basePlugin = tanStackStartRsbuild(corePluginOpts, options)\n\n return {\n name: 'tanstack-solid-start-rsbuild',\n setup(api) {\n basePlugin.setup(api)\n\n api.modifyBundlerChain(async (chain, { CHAIN_ID, target }) => {\n for (const ruleId of [\n CHAIN_ID.RULE.JS,\n CHAIN_ID.RULE.JS_DATA_URI,\n 'babel-js',\n ]) {\n if (!chain.module.rules.has(ruleId)) {\n continue\n }\n\n const rule = chain.module.rule(ruleId)\n if (!rule.uses.has(CHAIN_ID.USE.BABEL)) {\n continue\n }\n\n rule.use(CHAIN_ID.USE.BABEL).tap((babelOptions) => {\n babelOptions.presets = (babelOptions.presets ?? []).map(\n (preset: unknown) => {\n if (\n Array.isArray(preset) &&\n typeof preset[0] === 'string' &&\n preset[0].includes('babel-preset-solid')\n ) {\n return [\n preset[0],\n {\n ...(preset[1] ?? {}),\n hydratable: true,\n generate: target === 'node' ? 'ssr' : 'dom',\n },\n ]\n }\n\n return preset\n },\n )\n\n return babelOptions\n })\n }\n })\n },\n }\n}\n"],"mappings":";;;AAWA,SAAgB,cACd,SACe;CAiBf,MAAM,aAAa,qBAhB2C;EAC5D,WAAW;EACX,mBAAmB;EACnB,yBAAyB,0BAA0B;EACnD,eAAe;EACf,SAAS,EACP,cAAc,EACZ,KAAK,EACH,SAAS,EACP,gBAAgB,CAAC,SAAS,MAAM,EACjC,EACF,EACF,EACF;EACF,EAEuD,QAAQ;AAEhE,QAAO;EACL,MAAM;EACN,MAAM,KAAK;AACT,cAAW,MAAM,IAAI;AAErB,OAAI,mBAAmB,OAAO,OAAO,EAAE,UAAU,aAAa;AAC5D,SAAK,MAAM,UAAU;KACnB,SAAS,KAAK;KACd,SAAS,KAAK;KACd;KACD,EAAE;AACD,SAAI,CAAC,MAAM,OAAO,MAAM,IAAI,OAAO,CACjC;KAGF,MAAM,OAAO,MAAM,OAAO,KAAK,OAAO;AACtC,SAAI,CAAC,KAAK,KAAK,IAAI,SAAS,IAAI,MAAM,CACpC;AAGF,UAAK,IAAI,SAAS,IAAI,MAAM,CAAC,KAAK,iBAAiB;AACjD,mBAAa,WAAW,aAAa,WAAW,EAAE,EAAE,KACjD,WAAoB;AACnB,WACE,MAAM,QAAQ,OAAO,IACrB,OAAO,OAAO,OAAO,YACrB,OAAO,GAAG,SAAS,qBAAqB,CAExC,QAAO,CACL,OAAO,IACP;QACE,GAAI,OAAO,MAAM,EAAE;QACnB,YAAY;QACZ,UAAU,WAAW,SAAS,QAAQ;QACvC,CACF;AAGH,cAAO;QAEV;AAED,aAAO;OACP;;KAEJ;;EAEL"}
@@ -1,3 +1,3 @@
1
- import { TanStackStartViteInputConfig } from '@tanstack/start-plugin-core';
1
+ import { TanStackStartViteInputConfig } from '@tanstack/start-plugin-core/vite';
2
2
  import { PluginOption } from 'vite';
3
3
  export declare function tanstackStart(options?: TanStackStartViteInputConfig): Array<PluginOption>;
@@ -1,5 +1,5 @@
1
1
  import { solidStartDefaultEntryPaths } from "./shared.js";
2
- import { START_ENVIRONMENT_NAMES, tanStackStartVite } from "@tanstack/start-plugin-core";
2
+ import { START_ENVIRONMENT_NAMES, tanStackStartVite } from "@tanstack/start-plugin-core/vite";
3
3
  //#region src/plugin/vite.ts
4
4
  function tanstackStart(options) {
5
5
  return [{
@@ -1 +1 @@
1
- {"version":3,"file":"vite.js","names":[],"sources":["../../../src/plugin/vite.ts"],"sourcesContent":["import {\n START_ENVIRONMENT_NAMES,\n tanStackStartVite,\n} from '@tanstack/start-plugin-core'\nimport type {\n TanStackStartViteInputConfig,\n TanStackStartVitePluginCoreOptions,\n} from '@tanstack/start-plugin-core'\nimport { solidStartDefaultEntryPaths } from './shared'\nimport type { PluginOption } from 'vite'\n\nexport function tanstackStart(\n options?: TanStackStartViteInputConfig,\n): Array<PluginOption> {\n const corePluginOpts: TanStackStartVitePluginCoreOptions = {\n framework: 'solid',\n defaultEntryPaths: solidStartDefaultEntryPaths,\n providerEnvironmentName: START_ENVIRONMENT_NAMES.server,\n ssrIsProvider: true,\n ssrResolverStrategy: {\n type: 'default',\n },\n }\n\n return [\n {\n name: 'tanstack-solid-start:config',\n configEnvironment(environmentName, options) {\n return {\n optimizeDeps:\n environmentName === START_ENVIRONMENT_NAMES.client ||\n (environmentName === START_ENVIRONMENT_NAMES.server &&\n // This indicates that the server environment has opted in to dependency optimization\n options.optimizeDeps?.noDiscovery === false)\n ? {\n // As `@tanstack/solid-start` depends on `@tanstack/solid-router`, we should exclude both.\n exclude: [\n '@tanstack/solid-start',\n '@tanstack/solid-router',\n '@tanstack/start-static-server-functions',\n ],\n }\n : undefined,\n }\n },\n },\n tanStackStartVite(corePluginOpts, options),\n ]\n}\n"],"mappings":";;;AAWA,SAAgB,cACd,SACqB;AAWrB,QAAO,CACL;EACE,MAAM;EACN,kBAAkB,iBAAiB,SAAS;AAC1C,UAAO,EACL,cACE,oBAAoB,wBAAwB,UAC3C,oBAAoB,wBAAwB,UAE3C,QAAQ,cAAc,gBAAgB,QACpC,EAEE,SAAS;IACP;IACA;IACA;IACD,EACF,GACD,KAAA,GACP;;EAEJ,EACD,kBAhCyD;EACzD,WAAW;EACX,mBAAmB;EACnB,yBAAyB,wBAAwB;EACjD,eAAe;EACf,qBAAqB,EACnB,MAAM,WACP;EACF,EAwBmC,QAAQ,CAC3C"}
1
+ {"version":3,"file":"vite.js","names":[],"sources":["../../../src/plugin/vite.ts"],"sourcesContent":["import {\n START_ENVIRONMENT_NAMES,\n tanStackStartVite,\n} from '@tanstack/start-plugin-core/vite'\nimport type {\n TanStackStartViteInputConfig,\n TanStackStartVitePluginCoreOptions,\n} from '@tanstack/start-plugin-core/vite'\nimport { solidStartDefaultEntryPaths } from './shared'\nimport type { PluginOption } from 'vite'\n\nexport function tanstackStart(\n options?: TanStackStartViteInputConfig,\n): Array<PluginOption> {\n const corePluginOpts: TanStackStartVitePluginCoreOptions = {\n framework: 'solid',\n defaultEntryPaths: solidStartDefaultEntryPaths,\n providerEnvironmentName: START_ENVIRONMENT_NAMES.server,\n ssrIsProvider: true,\n ssrResolverStrategy: {\n type: 'default',\n },\n }\n\n return [\n {\n name: 'tanstack-solid-start:config',\n configEnvironment(environmentName, options) {\n return {\n optimizeDeps:\n environmentName === START_ENVIRONMENT_NAMES.client ||\n (environmentName === START_ENVIRONMENT_NAMES.server &&\n // This indicates that the server environment has opted in to dependency optimization\n options.optimizeDeps?.noDiscovery === false)\n ? {\n // As `@tanstack/solid-start` depends on `@tanstack/solid-router`, we should exclude both.\n exclude: [\n '@tanstack/solid-start',\n '@tanstack/solid-router',\n '@tanstack/start-static-server-functions',\n ],\n }\n : undefined,\n }\n },\n },\n tanStackStartVite(corePluginOpts, options),\n ]\n}\n"],"mappings":";;;AAWA,SAAgB,cACd,SACqB;AAWrB,QAAO,CACL;EACE,MAAM;EACN,kBAAkB,iBAAiB,SAAS;AAC1C,UAAO,EACL,cACE,oBAAoB,wBAAwB,UAC3C,oBAAoB,wBAAwB,UAE3C,QAAQ,cAAc,gBAAgB,QACpC,EAEE,SAAS;IACP;IACA;IACA;IACD,EACF,GACD,KAAA,GACP;;EAEJ,EACD,kBAhCyD;EACzD,WAAW;EACX,mBAAmB;EACnB,yBAAyB,wBAAwB;EACjD,eAAe;EACf,qBAAqB,EACnB,MAAM,WACP;EACF,EAwBmC,QAAQ,CAC3C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tanstack/solid-start",
3
- "version": "1.167.37",
3
+ "version": "1.167.39",
4
4
  "description": "Modern and scalable routing for Solid applications",
5
5
  "author": "Tanner Linsley",
6
6
  "license": "MIT",
@@ -68,6 +68,12 @@
68
68
  "default": "./dist/esm/plugin/vite.js"
69
69
  }
70
70
  },
71
+ "./plugin/rsbuild": {
72
+ "import": {
73
+ "types": "./dist/esm/plugin/rsbuild.d.ts",
74
+ "default": "./dist/esm/plugin/rsbuild.js"
75
+ }
76
+ },
71
77
  "./server-entry": {
72
78
  "import": {
73
79
  "types": "./dist/default-entry/esm/server.d.ts",
@@ -101,23 +107,33 @@
101
107
  },
102
108
  "dependencies": {
103
109
  "pathe": "^2.0.3",
110
+ "@tanstack/solid-router": "1.168.20",
104
111
  "@tanstack/solid-start-client": "1.166.36",
105
112
  "@tanstack/solid-start-server": "1.166.37",
106
- "@tanstack/start-plugin-core": "1.167.35",
107
- "@tanstack/solid-router": "1.168.20",
108
- "@tanstack/start-server-core": "1.167.19",
109
- "@tanstack/start-client-core": "1.167.17"
113
+ "@tanstack/start-client-core": "1.167.17",
114
+ "@tanstack/start-plugin-core": "1.169.0",
115
+ "@tanstack/start-server-core": "1.167.19"
110
116
  },
111
117
  "devDependencies": {
118
+ "@rsbuild/core": "^2.0.0",
112
119
  "@tanstack/intent": "^0.0.14",
113
- "vite": "*",
114
120
  "@types/node": ">=20",
115
- "@tanstack/router-utils": "1.161.6"
121
+ "vite": "*",
122
+ "@tanstack/router-utils": "1.161.7"
116
123
  },
117
124
  "peerDependencies": {
125
+ "@rsbuild/core": "^2.0.0",
118
126
  "solid-js": ">=1.0.0",
119
127
  "vite": ">=7.0.0"
120
128
  },
129
+ "peerDependenciesMeta": {
130
+ "@rsbuild/core": {
131
+ "optional": true
132
+ },
133
+ "vite": {
134
+ "optional": true
135
+ }
136
+ },
121
137
  "bin": {
122
138
  "intent": "./bin/intent.js"
123
139
  },
@@ -0,0 +1,81 @@
1
+ import {
2
+ RSBUILD_ENVIRONMENT_NAMES,
3
+ tanStackStartRsbuild,
4
+ } from '@tanstack/start-plugin-core/rsbuild'
5
+ import { solidStartDefaultEntryPaths } from './shared'
6
+ import type {
7
+ TanStackStartRsbuildInputConfig,
8
+ TanStackStartRsbuildPluginCoreOptions,
9
+ } from '@tanstack/start-plugin-core/rsbuild'
10
+ import type { RsbuildPlugin } from '@rsbuild/core'
11
+
12
+ export function tanstackStart(
13
+ options?: TanStackStartRsbuildInputConfig,
14
+ ): RsbuildPlugin {
15
+ const corePluginOpts: TanStackStartRsbuildPluginCoreOptions = {
16
+ framework: 'solid',
17
+ defaultEntryPaths: solidStartDefaultEntryPaths,
18
+ providerEnvironmentName: RSBUILD_ENVIRONMENT_NAMES.server,
19
+ ssrIsProvider: true,
20
+ rsbuild: {
21
+ environments: {
22
+ all: {
23
+ resolve: {
24
+ conditionNames: ['solid', '...'],
25
+ },
26
+ },
27
+ },
28
+ },
29
+ }
30
+
31
+ const basePlugin = tanStackStartRsbuild(corePluginOpts, options)
32
+
33
+ return {
34
+ name: 'tanstack-solid-start-rsbuild',
35
+ setup(api) {
36
+ basePlugin.setup(api)
37
+
38
+ api.modifyBundlerChain(async (chain, { CHAIN_ID, target }) => {
39
+ for (const ruleId of [
40
+ CHAIN_ID.RULE.JS,
41
+ CHAIN_ID.RULE.JS_DATA_URI,
42
+ 'babel-js',
43
+ ]) {
44
+ if (!chain.module.rules.has(ruleId)) {
45
+ continue
46
+ }
47
+
48
+ const rule = chain.module.rule(ruleId)
49
+ if (!rule.uses.has(CHAIN_ID.USE.BABEL)) {
50
+ continue
51
+ }
52
+
53
+ rule.use(CHAIN_ID.USE.BABEL).tap((babelOptions) => {
54
+ babelOptions.presets = (babelOptions.presets ?? []).map(
55
+ (preset: unknown) => {
56
+ if (
57
+ Array.isArray(preset) &&
58
+ typeof preset[0] === 'string' &&
59
+ preset[0].includes('babel-preset-solid')
60
+ ) {
61
+ return [
62
+ preset[0],
63
+ {
64
+ ...(preset[1] ?? {}),
65
+ hydratable: true,
66
+ generate: target === 'node' ? 'ssr' : 'dom',
67
+ },
68
+ ]
69
+ }
70
+
71
+ return preset
72
+ },
73
+ )
74
+
75
+ return babelOptions
76
+ })
77
+ }
78
+ })
79
+ },
80
+ }
81
+ }
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  START_ENVIRONMENT_NAMES,
3
3
  tanStackStartVite,
4
- } from '@tanstack/start-plugin-core'
4
+ } from '@tanstack/start-plugin-core/vite'
5
5
  import type {
6
6
  TanStackStartViteInputConfig,
7
7
  TanStackStartVitePluginCoreOptions,
8
- } from '@tanstack/start-plugin-core'
8
+ } from '@tanstack/start-plugin-core/vite'
9
9
  import { solidStartDefaultEntryPaths } from './shared'
10
10
  import type { PluginOption } from 'vite'
11
11