@qwik.dev/router 2.0.0-beta.4 → 2.0.0-beta.41

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 (87) hide show
  1. package/adapters/static/vite.d.ts +1 -1
  2. package/lib/adapters/azure-swa/vite/index.d.ts +2 -2
  3. package/lib/adapters/azure-swa/vite/index.mjs +44 -58
  4. package/lib/adapters/bun-server/vite/index.d.ts +2 -2
  5. package/lib/adapters/bun-server/vite/index.mjs +16 -23
  6. package/lib/adapters/cloud-run/vite/index.d.ts +2 -2
  7. package/lib/adapters/cloud-run/vite/index.mjs +15 -20
  8. package/lib/adapters/cloudflare-pages/vite/index.d.ts +2 -2
  9. package/lib/adapters/cloudflare-pages/vite/index.mjs +45 -77
  10. package/lib/adapters/deno-server/vite/index.d.ts +2 -2
  11. package/lib/adapters/deno-server/vite/index.mjs +25 -35
  12. package/lib/adapters/netlify-edge/vite/index.d.ts +2 -2
  13. package/lib/adapters/netlify-edge/vite/index.mjs +49 -89
  14. package/lib/adapters/node-server/vite/index.d.ts +2 -2
  15. package/lib/adapters/node-server/vite/index.mjs +16 -23
  16. package/lib/adapters/shared/vite/index.d.ts +9 -22
  17. package/lib/adapters/shared/vite/index.mjs +280 -333
  18. package/lib/adapters/ssg/vite/index.d.ts +13 -0
  19. package/lib/adapters/ssg/vite/index.mjs +13 -0
  20. package/lib/adapters/vercel-edge/vite/index.d.ts +3 -3
  21. package/lib/adapters/vercel-edge/vite/index.mjs +73 -80
  22. package/lib/chunks/dev-preloaded-route-loader.mjs +2 -0
  23. package/lib/chunks/format.mjs +24 -0
  24. package/lib/chunks/fs.mjs +140 -0
  25. package/lib/chunks/head.qwik.mjs +1202 -0
  26. package/lib/chunks/http-error.qwik.mjs +27 -0
  27. package/lib/chunks/pathname.mjs +57 -0
  28. package/lib/chunks/request-body-limit.mjs +27 -0
  29. package/lib/chunks/request-path.mjs +49 -0
  30. package/lib/chunks/routes.mjs +26 -0
  31. package/lib/chunks/server-error.mjs +16 -0
  32. package/lib/chunks/system.mjs +265 -0
  33. package/lib/chunks/url.mjs +59 -0
  34. package/lib/chunks/user-response.mjs +1730 -0
  35. package/lib/chunks/worker-thread.mjs +264 -0
  36. package/lib/index.d.ts +631 -174
  37. package/lib/index.qwik.mjs +1656 -1964
  38. package/lib/middleware/aws-lambda/index.d.ts +15 -16
  39. package/lib/middleware/aws-lambda/index.mjs +45 -54
  40. package/lib/middleware/azure-swa/index.mjs +85 -295
  41. package/lib/middleware/bun/index.d.ts +20 -5
  42. package/lib/middleware/bun/index.mjs +119 -205
  43. package/lib/middleware/cloudflare-pages/index.mjs +88 -105
  44. package/lib/middleware/deno/index.d.ts +22 -5
  45. package/lib/middleware/deno/index.mjs +105 -192
  46. package/lib/middleware/firebase/index.mjs +22 -35
  47. package/lib/middleware/netlify-edge/index.mjs +63 -81
  48. package/lib/middleware/node/index.d.ts +17 -5
  49. package/lib/middleware/node/index.mjs +299 -273
  50. package/lib/middleware/request-handler/index.d.ts +206 -99
  51. package/lib/middleware/request-handler/index.mjs +105 -1648
  52. package/lib/middleware/vercel-edge/index.mjs +76 -101
  53. package/lib/modules.d.ts +11 -16
  54. package/lib/service-worker/index.mjs +13 -0
  55. package/lib/{static → ssg}/index.d.ts +46 -22
  56. package/lib/ssg/index.mjs +257 -0
  57. package/lib/vite/index.d.ts +58 -10
  58. package/lib/vite/index.mjs +2471 -27446
  59. package/modules.d.ts +11 -16
  60. package/package.json +62 -70
  61. package/ssg.d.ts +2 -0
  62. package/static.d.ts +1 -1
  63. package/lib/adapters/azure-swa/vite/index.cjs +0 -96
  64. package/lib/adapters/bun-server/vite/index.cjs +0 -50
  65. package/lib/adapters/cloud-run/vite/index.cjs +0 -47
  66. package/lib/adapters/cloudflare-pages/vite/index.cjs +0 -115
  67. package/lib/adapters/deno-server/vite/index.cjs +0 -62
  68. package/lib/adapters/netlify-edge/vite/index.cjs +0 -129
  69. package/lib/adapters/node-server/vite/index.cjs +0 -50
  70. package/lib/adapters/shared/vite/index.cjs +0 -378
  71. package/lib/adapters/static/vite/index.cjs +0 -368
  72. package/lib/adapters/static/vite/index.d.ts +0 -10
  73. package/lib/adapters/static/vite/index.mjs +0 -331
  74. package/lib/adapters/vercel-edge/vite/index.cjs +0 -118
  75. package/lib/index.qwik.cjs +0 -2022
  76. package/lib/middleware/node/index.cjs +0 -314
  77. package/lib/middleware/request-handler/index.cjs +0 -1691
  78. package/lib/service-worker.cjs +0 -17
  79. package/lib/service-worker.mjs +0 -15
  80. package/lib/static/deno.mjs +0 -8
  81. package/lib/static/index.cjs +0 -67
  82. package/lib/static/index.mjs +0 -48
  83. package/lib/static/node.cjs +0 -1126
  84. package/lib/static/node.mjs +0 -1088
  85. package/lib/vite/index.cjs +0 -27525
  86. package/middleware/request-handler/generated/not-found-paths.ts +0 -7
  87. package/middleware/request-handler/generated/static-paths.ts +0 -35
@@ -7,13 +7,13 @@ import type { PluginOption } from 'vite';
7
7
  import type { SerializationStrategy } from '@qwik.dev/core/internal';
8
8
  import { UserConfigExport } from 'vite';
9
9
 
10
- declare interface BuildEntry extends ParsedPathname {
10
+ declare interface BuiltEntry extends ParsedPathname {
11
11
  id: string;
12
12
  chunkFileName: string;
13
13
  filePath: string;
14
14
  }
15
15
 
16
- declare interface BuildLayout {
16
+ declare interface BuiltLayout {
17
17
  filePath: string;
18
18
  dirPath: string;
19
19
  id: string;
@@ -21,7 +21,7 @@ declare interface BuildLayout {
21
21
  layoutName: string;
22
22
  }
23
23
 
24
- declare interface BuildRoute extends ParsedPathname {
24
+ declare interface BuiltRoute extends ParsedPathname {
25
25
  /** Unique id built from its relative file system path */
26
26
  id: string;
27
27
  /** Local file system path */
@@ -29,7 +29,7 @@ declare interface BuildRoute extends ParsedPathname {
29
29
  ext: string;
30
30
  /** URL Pathname */
31
31
  pathname: string;
32
- layouts: BuildLayout[];
32
+ layouts: BuiltLayout[];
33
33
  }
34
34
 
35
35
  /** @public */
@@ -81,13 +81,13 @@ declare interface PathnameSegmentPart {
81
81
 
82
82
  /** @public */
83
83
  declare interface PluginOptions {
84
- /** Directory of the `routes`. Defaults to `src/routes`. */
84
+ /** Directory of the `routes`. Defaults to `"src/routes"`. */
85
85
  routesDir?: string;
86
- /** Directory of the `server plugins`. Defaults to `src/server-plugins`. */
86
+ /** Directory of the `server plugins`. Defaults to `routesDir`. */
87
87
  serverPluginsDir?: string;
88
88
  /**
89
89
  * The base pathname is used to create absolute URL paths up to the `hostname`, and must always
90
- * start and end with a `/`. Defaults to `/`.
90
+ * start and end with a `/`. Defaults to `"/""`.
91
91
  */
92
92
  basePathname?: string;
93
93
  /**
@@ -99,12 +99,33 @@ declare interface PluginOptions {
99
99
  mdxPlugins?: MdxPlugins;
100
100
  /** MDX Options https://mdxjs.com/ */
101
101
  mdx?: any;
102
- /** The platform object which can be used to mock the Cloudflare bindings. */
102
+ /**
103
+ * Extend the `platform` object in RequestEvent, which can be used to e.g. mock Cloudflare
104
+ * bindings.
105
+ *
106
+ * This only works in **dev mode** and only when using the in-process Vite dev server middleware
107
+ * (the default).
108
+ */
103
109
  platform?: Record<string, unknown>;
104
110
  /** Configuration to rewrite url paths */
105
111
  rewriteRoutes?: RewriteRouteOption[];
106
112
  /** The serialization strategy for route loaders. Defaults to `never`. */
107
113
  defaultLoadersSerializationStrategy?: SerializationStrategy;
114
+ /**
115
+ * Enable strict mode for route loaders and actions by default.
116
+ *
117
+ * When true:
118
+ *
119
+ * - Loaders without an explicit `search` option act as if `search: []` — they only re-fetch when
120
+ * the route path changes and ignore all URL search params.
121
+ * - Actions without an explicit `invalidate` option act as if `invalidate: []` — they don't re-run
122
+ * any loaders after completion.
123
+ *
124
+ * Individual loaders/actions can override this by specifying `search` or `invalidate` explicitly.
125
+ *
126
+ * Defaults to `true`.
127
+ */
128
+ strictLoaders?: boolean;
108
129
  }
109
130
 
110
131
  /**
@@ -136,8 +157,15 @@ export declare interface QwikRouterPlugin extends P<QwikRouterPluginApi> {
136
157
  /** @public */
137
158
  declare interface QwikRouterPluginApi {
138
159
  getBasePathname: () => string;
139
- getRoutes: () => BuildRoute[];
140
- getServiceWorkers: () => BuildEntry[];
160
+ getRoutes: () => BuiltRoute[];
161
+ getServiceWorkers: () => BuiltEntry[];
162
+ /**
163
+ * Hand the adapter's SSG include/exclude patterns to the router so the production server route
164
+ * plan can drop fully-prerendered, server-free routes. Called by the SSG adapter.
165
+ *
166
+ * @internal
167
+ */
168
+ _setSsgRoutes?: (include: string[] | undefined, exclude: string[] | undefined) => void;
141
169
  }
142
170
 
143
171
  /** @public */
@@ -146,12 +174,32 @@ export declare interface QwikRouterVitePluginOptions extends Omit<PluginOptions,
146
174
  mdx?: MdxOptions;
147
175
  platform?: Record<string, unknown>;
148
176
  imageOptimization?: ImageOptimizationOptions;
177
+ /** Whether to use static imports for route modules (layout and index files). Defaults to `false`. */
178
+ staticImportRoutes?: boolean;
179
+ /**
180
+ * Qwik is an SSR first framework. This means that Qwik requires either SSR or SSG. In Vite dev
181
+ * mode the dev SSR server is responsible for rendering and pausing the application on the
182
+ * server.
183
+ *
184
+ * Under normal circumstances this should be on, unless you have your own dev SSR server setup and
185
+ * wish to disable this one.
186
+ *
187
+ * Default: true
188
+ */
189
+ devSsrServer?: boolean;
190
+ /**
191
+ * Maximum number of SSR-rendered pages to keep in the in-memory cache. Set to 0 to disable.
192
+ *
193
+ * Default: 50
194
+ */
195
+ ssrCacheSize?: number;
149
196
  }
150
197
 
151
198
  /** @public */
152
199
  declare interface RewriteRouteOption {
153
200
  prefix?: string;
154
201
  paths: Record<string, string>;
202
+ exclude?: string[];
155
203
  }
156
204
 
157
205
  export { }