@qwik.dev/router 2.0.0-alpha.9 → 2.0.0-beta.10

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 (159) hide show
  1. package/README.md +1 -1
  2. package/adapters/static/vite.d.ts +1 -1
  3. package/lib/adapters/azure-swa/vite/index-BqUeglYs.cjs +1 -0
  4. package/lib/adapters/azure-swa/vite/index-CBIchDYq.js +651 -0
  5. package/lib/adapters/azure-swa/vite/index-ClHGw5z1.js +6 -0
  6. package/lib/adapters/azure-swa/vite/index-CrwlB95_.js +22 -0
  7. package/lib/adapters/azure-swa/vite/index-DTIOTwZo.cjs +11 -0
  8. package/lib/adapters/azure-swa/vite/index-vQuPcef3.cjs +1 -0
  9. package/lib/adapters/azure-swa/vite/index.cjs +5 -96
  10. package/lib/adapters/azure-swa/vite/index.d.ts +13 -13
  11. package/lib/adapters/azure-swa/vite/index.mjs +201 -26
  12. package/lib/adapters/bun-server/vite/index-BqUeglYs.cjs +1 -0
  13. package/lib/adapters/bun-server/vite/index-CBIchDYq.js +651 -0
  14. package/lib/adapters/bun-server/vite/index-ClHGw5z1.js +6 -0
  15. package/lib/adapters/bun-server/vite/index-CrwlB95_.js +22 -0
  16. package/lib/adapters/bun-server/vite/index-DTIOTwZo.cjs +11 -0
  17. package/lib/adapters/bun-server/vite/index-vQuPcef3.cjs +1 -0
  18. package/lib/adapters/bun-server/vite/index.cjs +5 -50
  19. package/lib/adapters/bun-server/vite/index.d.ts +14 -14
  20. package/lib/adapters/bun-server/vite/index.mjs +196 -12
  21. package/lib/adapters/cloud-run/vite/index-BqUeglYs.cjs +1 -0
  22. package/lib/adapters/cloud-run/vite/index-CBIchDYq.js +651 -0
  23. package/lib/adapters/cloud-run/vite/index-ClHGw5z1.js +6 -0
  24. package/lib/adapters/cloud-run/vite/index-CrwlB95_.js +22 -0
  25. package/lib/adapters/cloud-run/vite/index-DTIOTwZo.cjs +11 -0
  26. package/lib/adapters/cloud-run/vite/index-vQuPcef3.cjs +1 -0
  27. package/lib/adapters/cloud-run/vite/index.cjs +5 -47
  28. package/lib/adapters/cloud-run/vite/index.d.ts +13 -13
  29. package/lib/adapters/cloud-run/vite/index.mjs +195 -11
  30. package/lib/adapters/cloudflare-pages/vite/index-BIeHg2Cj.cjs +5 -0
  31. package/lib/adapters/cloudflare-pages/vite/index-C455V8_A.cjs +1 -0
  32. package/lib/adapters/cloudflare-pages/vite/index-ClHGw5z1.js +6 -0
  33. package/lib/adapters/cloudflare-pages/vite/index-D3HITboM.js +645 -0
  34. package/lib/adapters/cloudflare-pages/vite/index-DKcVHRBy.cjs +11 -0
  35. package/lib/adapters/cloudflare-pages/vite/index-DwovcBp3.js +22 -0
  36. package/lib/adapters/cloudflare-pages/vite/index-bogwy7wh.js +250 -0
  37. package/lib/adapters/cloudflare-pages/vite/index-vQuPcef3.cjs +1 -0
  38. package/lib/adapters/cloudflare-pages/vite/index.cjs +1 -115
  39. package/lib/adapters/cloudflare-pages/vite/index.d.ts +27 -27
  40. package/lib/adapters/cloudflare-pages/vite/index.mjs +4 -78
  41. package/lib/adapters/deno-server/vite/index-BqUeglYs.cjs +1 -0
  42. package/lib/adapters/deno-server/vite/index-CBIchDYq.js +651 -0
  43. package/lib/adapters/deno-server/vite/index-ClHGw5z1.js +6 -0
  44. package/lib/adapters/deno-server/vite/index-CrwlB95_.js +22 -0
  45. package/lib/adapters/deno-server/vite/index-DTIOTwZo.cjs +11 -0
  46. package/lib/adapters/deno-server/vite/index-vQuPcef3.cjs +1 -0
  47. package/lib/adapters/deno-server/vite/index.cjs +5 -62
  48. package/lib/adapters/deno-server/vite/index.d.ts +14 -14
  49. package/lib/adapters/deno-server/vite/index.mjs +198 -14
  50. package/lib/adapters/netlify-edge/vite/index-BqUeglYs.cjs +1 -0
  51. package/lib/adapters/netlify-edge/vite/index-CBIchDYq.js +651 -0
  52. package/lib/adapters/netlify-edge/vite/index-ClHGw5z1.js +6 -0
  53. package/lib/adapters/netlify-edge/vite/index-CrwlB95_.js +22 -0
  54. package/lib/adapters/netlify-edge/vite/index-DTIOTwZo.cjs +11 -0
  55. package/lib/adapters/netlify-edge/vite/index-vQuPcef3.cjs +1 -0
  56. package/lib/adapters/netlify-edge/vite/index.cjs +6 -129
  57. package/lib/adapters/netlify-edge/vite/index.d.ts +44 -44
  58. package/lib/adapters/netlify-edge/vite/index.mjs +240 -60
  59. package/lib/adapters/node-server/vite/index-BqUeglYs.cjs +1 -0
  60. package/lib/adapters/node-server/vite/index-CBIchDYq.js +651 -0
  61. package/lib/adapters/node-server/vite/index-ClHGw5z1.js +6 -0
  62. package/lib/adapters/node-server/vite/index-CrwlB95_.js +22 -0
  63. package/lib/adapters/node-server/vite/index-DTIOTwZo.cjs +11 -0
  64. package/lib/adapters/node-server/vite/index-vQuPcef3.cjs +1 -0
  65. package/lib/adapters/node-server/vite/index.cjs +5 -50
  66. package/lib/adapters/node-server/vite/index.d.ts +14 -14
  67. package/lib/adapters/node-server/vite/index.mjs +196 -12
  68. package/lib/adapters/shared/vite/index-BqUeglYs.cjs +1 -0
  69. package/lib/adapters/shared/vite/index-CBIchDYq.js +651 -0
  70. package/lib/adapters/shared/vite/index-ClHGw5z1.js +6 -0
  71. package/lib/adapters/shared/vite/index-CrwlB95_.js +22 -0
  72. package/lib/adapters/shared/vite/index-DTIOTwZo.cjs +11 -0
  73. package/lib/adapters/shared/vite/index-vQuPcef3.cjs +1 -0
  74. package/lib/adapters/shared/vite/index.cjs +5 -371
  75. package/lib/adapters/shared/vite/index.d.ts +108 -114
  76. package/lib/adapters/shared/vite/index.mjs +158 -288
  77. package/lib/adapters/ssg/vite/index-BqUeglYs.cjs +1 -0
  78. package/lib/adapters/ssg/vite/index-CBIchDYq.js +651 -0
  79. package/lib/adapters/ssg/vite/index-ClHGw5z1.js +6 -0
  80. package/lib/adapters/ssg/vite/index-CrwlB95_.js +22 -0
  81. package/lib/adapters/ssg/vite/index-DTIOTwZo.cjs +11 -0
  82. package/lib/adapters/ssg/vite/index-vQuPcef3.cjs +1 -0
  83. package/lib/adapters/ssg/vite/index.cjs +5 -0
  84. package/lib/adapters/ssg/vite/index.d.ts +13 -0
  85. package/lib/adapters/ssg/vite/index.mjs +201 -0
  86. package/lib/adapters/vercel-edge/vite/index-BqUeglYs.cjs +1 -0
  87. package/lib/adapters/vercel-edge/vite/index-CBIchDYq.js +651 -0
  88. package/lib/adapters/vercel-edge/vite/index-ClHGw5z1.js +6 -0
  89. package/lib/adapters/vercel-edge/vite/index-CrwlB95_.js +22 -0
  90. package/lib/adapters/vercel-edge/vite/index-DTIOTwZo.cjs +11 -0
  91. package/lib/adapters/vercel-edge/vite/index-vQuPcef3.cjs +1 -0
  92. package/lib/adapters/vercel-edge/vite/index.cjs +5 -118
  93. package/lib/adapters/vercel-edge/vite/index.d.ts +45 -45
  94. package/lib/adapters/vercel-edge/vite/index.mjs +230 -51
  95. package/lib/index.d.ts +1000 -810
  96. package/lib/index.qwik.cjs +438 -203
  97. package/lib/index.qwik.mjs +440 -205
  98. package/lib/middleware/aws-lambda/index.cjs +1 -0
  99. package/lib/middleware/aws-lambda/index.d.ts +49 -48
  100. package/lib/middleware/aws-lambda/index.mjs +27 -41
  101. package/lib/middleware/azure-swa/index.cjs +1 -0
  102. package/lib/middleware/azure-swa/index.d.ts +28 -28
  103. package/lib/middleware/azure-swa/index.mjs +46 -269
  104. package/lib/middleware/bun/index.cjs +1 -0
  105. package/lib/middleware/bun/index.d.ts +35 -35
  106. package/lib/middleware/bun/index.mjs +68 -120
  107. package/lib/middleware/cloudflare-pages/index.cjs +1 -0
  108. package/lib/middleware/cloudflare-pages/index.d.ts +35 -35
  109. package/lib/middleware/cloudflare-pages/index.mjs +48 -80
  110. package/lib/middleware/deno/index.cjs +1 -0
  111. package/lib/middleware/deno/index.d.ts +47 -47
  112. package/lib/middleware/deno/index.mjs +63 -110
  113. package/lib/middleware/firebase/index.cjs +1 -0
  114. package/lib/middleware/firebase/index.d.ts +26 -26
  115. package/lib/middleware/firebase/index.mjs +16 -28
  116. package/lib/middleware/netlify-edge/index.cjs +1 -0
  117. package/lib/middleware/netlify-edge/index.d.ts +27 -27
  118. package/lib/middleware/netlify-edge/index.mjs +36 -64
  119. package/lib/middleware/node/index.cjs +1 -314
  120. package/lib/middleware/node/index.d.ts +64 -64
  121. package/lib/middleware/node/index.mjs +116 -198
  122. package/lib/middleware/request-handler/index.cjs +11 -1538
  123. package/lib/middleware/request-handler/index.d.ts +711 -676
  124. package/lib/middleware/request-handler/index.mjs +895 -1281
  125. package/lib/middleware/vercel-edge/index.cjs +1 -0
  126. package/lib/middleware/vercel-edge/index.d.ts +26 -26
  127. package/lib/middleware/vercel-edge/index.mjs +47 -82
  128. package/lib/modules.d.ts +4 -12
  129. package/lib/service-worker.cjs +1 -267
  130. package/lib/service-worker.d.ts +15 -4
  131. package/lib/service-worker.mjs +3 -263
  132. package/lib/ssg/deno.cjs +1 -0
  133. package/lib/ssg/deno.mjs +6 -0
  134. package/lib/ssg/index-CBIchDYq.js +651 -0
  135. package/lib/ssg/index-ClHGw5z1.js +6 -0
  136. package/lib/ssg/index-DTIOTwZo.cjs +11 -0
  137. package/lib/ssg/index-vQuPcef3.cjs +1 -0
  138. package/lib/ssg/index.cjs +1 -0
  139. package/lib/{static → ssg}/index.d.ts +96 -96
  140. package/lib/ssg/index.mjs +22 -0
  141. package/lib/ssg/node.cjs +11 -0
  142. package/lib/ssg/node.mjs +651 -0
  143. package/lib/vite/index.cjs +29 -27484
  144. package/lib/vite/index.d.ts +170 -154
  145. package/lib/vite/index.mjs +1422 -27288
  146. package/modules.d.ts +4 -12
  147. package/package.json +51 -40
  148. package/ssg.d.ts +2 -0
  149. package/static.d.ts +1 -1
  150. package/lib/adapters/static/vite/index.cjs +0 -361
  151. package/lib/adapters/static/vite/index.d.ts +0 -10
  152. package/lib/adapters/static/vite/index.mjs +0 -324
  153. package/lib/static/deno.mjs +0 -8
  154. package/lib/static/index.cjs +0 -67
  155. package/lib/static/index.mjs +0 -48
  156. package/lib/static/node.cjs +0 -1124
  157. package/lib/static/node.mjs +0 -1086
  158. package/middleware/request-handler/generated/not-found-paths.ts +0 -7
  159. package/middleware/request-handler/generated/static-paths.ts +0 -35
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("@qwik.dev/router/middleware/node");function c(r){r.qwikCityPlan&&!r.qwikRouterConfig&&(console.warn("qwikCityPlan is deprecated. Simply remove it."),r.qwikRouterConfig=r.qwikCityPlan);try{const{router:i,staticFile:n,notFound:a}=u.createQwikRouter({render:r.render,qwikRouterConfig:r.qwikRouterConfig,manifest:r.manifest,static:{cacheControl:"public, max-age=31557600"},getOrigin(e){return process.env.IS_OFFLINE?`http://${e.headers.host}`:null}}),o=e=>{if(!globalThis.__NO_TRAILING_SLASH__){const t=new URL(e,"http://aws-qwik.local");if(t.pathname.includes(".",t.pathname.lastIndexOf("/")))return e;if(!t.pathname.endsWith("/"))return t.pathname+"/"+t.search}return e};return{fixPath:o,router:i,staticFile:n,notFound:a,handle:(e,t)=>{e.url=o(e.url),n(e,t,()=>{i(e,t,()=>{a(e,t,()=>{})})})}}}catch(i){throw new Error(i.message)}}const l=c;exports.createQwikCity=l;exports.createQwikRouter=c;
@@ -1,48 +1,49 @@
1
- import { Http2ServerRequest } from 'http2';
2
- import { IncomingMessage } from 'http';
3
- import { NodeRequestNextFunction } from '@qwik.dev/router/middleware/node';
4
- import type { QwikCityPlan } from '@qwik.dev/router';
5
- import type { QwikManifest } from '@qwik.dev/core/optimizer';
6
- import type { QwikRouterConfig } from '@qwik.dev/router';
7
- import type { Render } from '@qwik.dev/core/server';
8
- import type { ServerRenderOptions } from '@qwik.dev/router/middleware/request-handler';
9
- import { ServerResponse } from 'http';
10
-
11
- declare interface AwsOpt {
12
- render: Render;
13
- manifest: QwikManifest;
14
- qwikRouterConfig: QwikRouterConfig;
15
- /** @deprecated Use `QwikRouterConfig` instead. Will be removed in V3 */
16
- qwikCityPlan?: QwikCityPlan;
17
- }
18
-
19
- /**
20
- * @deprecated Use `createQwikRouter` instead. Will be removed in V3
21
- * @public
22
- */
23
- export declare const createQwikCity: typeof createQwikRouter;
24
-
25
- /** @public */
26
- export declare function createQwikRouter(opts: AwsOpt): {
27
- fixPath: (pathT: string) => string;
28
- router: (req: IncomingMessage | Http2ServerRequest, res: ServerResponse, next: NodeRequestNextFunction) => Promise<void>;
29
- staticFile: (req: IncomingMessage | Http2ServerRequest, res: ServerResponse, next: (e?: any) => void) => Promise<void>;
30
- notFound: (req: IncomingMessage | Http2ServerRequest, res: ServerResponse, next: (e: any) => void) => Promise<void>;
31
- handle: (req: any, res: any) => void;
32
- };
33
-
34
- /** @public */
35
- export declare interface PlatformAwsLambda extends Object {
36
- }
37
-
38
- /**
39
- * @deprecated Use `QwikRouterAwsLambdaOptions` instead. Will be removed in V3
40
- * @public
41
- */
42
- export declare type QwikCityAwsLambdaOptions = QwikRouterAwsLambdaOptions;
43
-
44
- /** @public */
45
- export declare interface QwikRouterAwsLambdaOptions extends ServerRenderOptions {
46
- }
47
-
48
- export { }
1
+ import { Http2ServerRequest } from 'http2';
2
+ import { IncomingMessage } from 'http';
3
+ import { NodeRequestNextFunction } from '@qwik.dev/router/middleware/node';
4
+ import type { QwikCityPlan } from '@qwik.dev/router';
5
+ import type { QwikManifest } from '@qwik.dev/core/optimizer';
6
+ import type { QwikRouterConfig } from '@qwik.dev/router';
7
+ import type { Render } from '@qwik.dev/core/server';
8
+ import type { ServerRenderOptions } from '@qwik.dev/router/middleware/request-handler';
9
+ import { ServerResponse } from 'http';
10
+
11
+ declare interface AwsOpt {
12
+ render: Render;
13
+ manifest?: QwikManifest;
14
+ /** @deprecated Not used */
15
+ qwikRouterConfig?: QwikRouterConfig;
16
+ /** @deprecated Not used */
17
+ qwikCityPlan?: QwikCityPlan;
18
+ }
19
+
20
+ /**
21
+ * @deprecated Use `createQwikRouter` instead. Will be removed in V3
22
+ * @public
23
+ */
24
+ export declare const createQwikCity: typeof createQwikRouter;
25
+
26
+ /** @public */
27
+ export declare function createQwikRouter(opts: AwsOpt): {
28
+ fixPath: (pathT: string) => string;
29
+ router: (req: IncomingMessage | Http2ServerRequest, res: ServerResponse, next: NodeRequestNextFunction) => Promise<void>;
30
+ staticFile: (req: IncomingMessage | Http2ServerRequest, res: ServerResponse, next: (e?: any) => void) => Promise<void>;
31
+ notFound: (req: IncomingMessage | Http2ServerRequest, res: ServerResponse, next: (e: any) => void) => Promise<void>;
32
+ handle: (req: any, res: any) => void;
33
+ };
34
+
35
+ /** @public */
36
+ export declare interface PlatformAwsLambda extends Object {
37
+ }
38
+
39
+ /**
40
+ * @deprecated Use `QwikRouterAwsLambdaOptions` instead. Will be removed in V3
41
+ * @public
42
+ */
43
+ export declare type QwikCityAwsLambdaOptions = QwikRouterAwsLambdaOptions;
44
+
45
+ /** @public */
46
+ export declare interface QwikRouterAwsLambdaOptions extends ServerRenderOptions {
47
+ }
48
+
49
+ export { }
@@ -1,55 +1,41 @@
1
- // packages/qwik-router/src/middleware/aws-lambda/index.ts
2
- import { createQwikRouter as createQwikRouterNode } from "@qwik.dev/router/middleware/node";
3
- function createQwikRouter(opts) {
4
- if (opts.qwikCityPlan && !opts.qwikRouterConfig) {
5
- console.warn("qwikCityPlan is deprecated. Use qwikRouterConfig instead.");
6
- opts.qwikRouterConfig = opts.qwikCityPlan;
7
- } else if (!opts.qwikRouterConfig) {
8
- throw new Error("qwikRouterConfig is required.");
9
- }
1
+ import { createQwikRouter as c } from "@qwik.dev/router/middleware/node";
2
+ function u(r) {
3
+ r.qwikCityPlan && !r.qwikRouterConfig && (console.warn("qwikCityPlan is deprecated. Simply remove it."), r.qwikRouterConfig = r.qwikCityPlan);
10
4
  try {
11
- const { router, staticFile, notFound } = createQwikRouterNode({
12
- render: opts.render,
13
- qwikRouterConfig: opts.qwikRouterConfig,
14
- manifest: opts.manifest,
5
+ const { router: n, staticFile: i, notFound: a } = c({
6
+ render: r.render,
7
+ qwikRouterConfig: r.qwikRouterConfig,
8
+ manifest: r.manifest,
15
9
  static: {
16
10
  cacheControl: "public, max-age=31557600"
17
11
  },
18
- getOrigin(req) {
19
- if (process.env.IS_OFFLINE) {
20
- return `http://${req.headers.host}`;
21
- }
22
- return null;
12
+ getOrigin(e) {
13
+ return process.env.IS_OFFLINE ? `http://${e.headers.host}` : null;
23
14
  }
24
- });
25
- const fixPath = (pathT) => {
26
- if (opts.qwikRouterConfig.trailingSlash) {
27
- const url = new URL(pathT, "http://aws-qwik.local");
28
- if (url.pathname.includes(".", url.pathname.lastIndexOf("/"))) {
29
- return pathT;
30
- }
31
- if (!url.pathname.endsWith("/")) {
32
- return url.pathname + "/" + url.search;
33
- }
15
+ }), o = (e) => {
16
+ if (!globalThis.__NO_TRAILING_SLASH__) {
17
+ const t = new URL(e, "http://aws-qwik.local");
18
+ if (t.pathname.includes(".", t.pathname.lastIndexOf("/")))
19
+ return e;
20
+ if (!t.pathname.endsWith("/"))
21
+ return t.pathname + "/" + t.search;
34
22
  }
35
- return pathT;
23
+ return e;
36
24
  };
37
- const handle = (req, res) => {
38
- req.url = fixPath(req.url);
39
- staticFile(req, res, () => {
40
- router(req, res, () => {
41
- notFound(req, res, () => {
25
+ return { fixPath: o, router: n, staticFile: i, notFound: a, handle: (e, t) => {
26
+ e.url = o(e.url), i(e, t, () => {
27
+ n(e, t, () => {
28
+ a(e, t, () => {
42
29
  });
43
30
  });
44
31
  });
45
- };
46
- return { fixPath, router, staticFile, notFound, handle };
47
- } catch (err) {
48
- throw new Error(err.message);
32
+ } };
33
+ } catch (n) {
34
+ throw new Error(n.message);
49
35
  }
50
36
  }
51
- var createQwikCity = createQwikRouter;
37
+ const s = u;
52
38
  export {
53
- createQwikCity,
54
- createQwikRouter
39
+ s as createQwikCity,
40
+ u as createQwikRouter
55
41
  };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("@qwik.dev/core/server"),c=require("@qwik.dev/router/middleware/request-handler"),g=require("set-cookie-parser");function u(t){t.qwikCityPlan&&!t.qwikRouterConfig&&(console.warn("qwikCityPlan is deprecated. Simply remove it."),t.qwikRouterConfig=t.qwikCityPlan),t.manifest&&b.setServerPlatform(t.manifest);async function l(y,e){try{const r=new URL(e.headers["x-ms-original-url"]),h={method:e.method||"GET",headers:e.headers,body:e.bufferBody||e.rawBody||e.body},f={mode:"server",locale:void 0,url:r,platform:y,env:{get(o){return process.env[o]}},request:new Request(r,h),getWritableStream:(o,i,m,p)=>{const n={status:o,body:new Uint8Array,headers:{},cookies:m.headers().map(a=>g.parseString(a))};return i.forEach((a,s)=>n.headers[s]=a),new WritableStream({write(a){if(n.body instanceof Uint8Array){const s=new Uint8Array(n.body.length+a.length);s.set(n.body),s.set(a,n.body.length),n.body=s}},close(){p(n)}})},getClientConn:()=>({ip:e.headers["x-forwarded-client-Ip"],country:void 0})},d=await c.requestHandler(f,t);if(d){d.completion.then(i=>{i&&console.error(i)});const o=await d.response;if(o)return o}const w=!e.headers.accept?.includes("text/html")||c.isStaticPath(e.method||"GET",r)?"Not Found":c.getNotFound(r.pathname);return{status:404,headers:{"Content-Type":"text/html; charset=utf-8","X-Not-Found":r.pathname},body:w}}catch(r){return console.error(r),{status:500,headers:{"Content-Type":"text/plain; charset=utf-8"}}}}return l}const C=u;exports.createQwikCity=C;exports.createQwikRouter=u;
@@ -1,28 +1,28 @@
1
- import type { AzureFunction } from '@azure/functions';
2
- import type { Context } from '@azure/functions';
3
- import type { ServerRenderOptions } from '@qwik.dev/router/middleware/request-handler';
4
-
5
- /**
6
- * @deprecated Use `createQwikRouter` instead. Will be removed in V3
7
- * @public
8
- */
9
- export declare const createQwikCity: typeof createQwikRouter;
10
-
11
- /** @public */
12
- export declare function createQwikRouter(opts: QwikRouterAzureOptions): AzureFunction;
13
-
14
- /** @public */
15
- export declare interface PlatformAzure extends Partial<Context> {
16
- }
17
-
18
- /**
19
- * @deprecated Use `QwikRouterAzureOptions` instead. Will be removed in V3
20
- * @public
21
- */
22
- export declare type QwikCityAzureOptions = QwikRouterAzureOptions;
23
-
24
- /** @public */
25
- export declare interface QwikRouterAzureOptions extends ServerRenderOptions {
26
- }
27
-
28
- export { }
1
+ import type { AzureFunction } from '@azure/functions';
2
+ import type { Context } from '@azure/functions';
3
+ import type { ServerRenderOptions } from '@qwik.dev/router/middleware/request-handler';
4
+
5
+ /**
6
+ * @deprecated Use `createQwikRouter` instead. Will be removed in V3
7
+ * @public
8
+ */
9
+ export declare const createQwikCity: typeof createQwikRouter;
10
+
11
+ /** @public */
12
+ export declare function createQwikRouter(opts: QwikRouterAzureOptions): AzureFunction;
13
+
14
+ /** @public */
15
+ export declare interface PlatformAzure extends Partial<Context> {
16
+ }
17
+
18
+ /**
19
+ * @deprecated Use `QwikRouterAzureOptions` instead. Will be removed in V3
20
+ * @public
21
+ */
22
+ export declare type QwikCityAzureOptions = QwikRouterAzureOptions;
23
+
24
+ /** @public */
25
+ export declare interface QwikRouterAzureOptions extends ServerRenderOptions {
26
+ }
27
+
28
+ export { }
@@ -1,297 +1,74 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __commonJS = (cb, mod) => function __require() {
8
- return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
19
- // If the importer is in node compatibility mode or this is not an ESM
20
- // file that has been converted to a CommonJS file using a Babel-
21
- // compatible transform (i.e. "__esModule" has not been set), then set
22
- // "default" to the CommonJS "module.exports" for node compatibility.
23
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
24
- mod
25
- ));
26
-
27
- // node_modules/.pnpm/set-cookie-parser@2.6.0/node_modules/set-cookie-parser/lib/set-cookie.js
28
- var require_set_cookie = __commonJS({
29
- "node_modules/.pnpm/set-cookie-parser@2.6.0/node_modules/set-cookie-parser/lib/set-cookie.js"(exports, module) {
30
- "use strict";
31
- var defaultParseOptions = {
32
- decodeValues: true,
33
- map: false,
34
- silent: false
35
- };
36
- function isNonEmptyString(str) {
37
- return typeof str === "string" && !!str.trim();
38
- }
39
- function parseString2(setCookieValue, options) {
40
- var parts = setCookieValue.split(";").filter(isNonEmptyString);
41
- var nameValuePairStr = parts.shift();
42
- var parsed = parseNameValuePair(nameValuePairStr);
43
- var name = parsed.name;
44
- var value = parsed.value;
45
- options = options ? Object.assign({}, defaultParseOptions, options) : defaultParseOptions;
46
- try {
47
- value = options.decodeValues ? decodeURIComponent(value) : value;
48
- } catch (e) {
49
- console.error(
50
- "set-cookie-parser encountered an error while decoding a cookie with value '" + value + "'. Set options.decodeValues to false to disable this feature.",
51
- e
52
- );
53
- }
54
- var cookie = {
55
- name,
56
- value
57
- };
58
- parts.forEach(function(part) {
59
- var sides = part.split("=");
60
- var key = sides.shift().trimLeft().toLowerCase();
61
- var value2 = sides.join("=");
62
- if (key === "expires") {
63
- cookie.expires = new Date(value2);
64
- } else if (key === "max-age") {
65
- cookie.maxAge = parseInt(value2, 10);
66
- } else if (key === "secure") {
67
- cookie.secure = true;
68
- } else if (key === "httponly") {
69
- cookie.httpOnly = true;
70
- } else if (key === "samesite") {
71
- cookie.sameSite = value2;
72
- } else {
73
- cookie[key] = value2;
74
- }
75
- });
76
- return cookie;
77
- }
78
- function parseNameValuePair(nameValuePairStr) {
79
- var name = "";
80
- var value = "";
81
- var nameValueArr = nameValuePairStr.split("=");
82
- if (nameValueArr.length > 1) {
83
- name = nameValueArr.shift();
84
- value = nameValueArr.join("=");
85
- } else {
86
- value = nameValuePairStr;
87
- }
88
- return { name, value };
89
- }
90
- function parse(input, options) {
91
- options = options ? Object.assign({}, defaultParseOptions, options) : defaultParseOptions;
92
- if (!input) {
93
- if (!options.map) {
94
- return [];
95
- } else {
96
- return {};
97
- }
98
- }
99
- if (input.headers) {
100
- if (typeof input.headers.getSetCookie === "function") {
101
- input = input.headers.getSetCookie();
102
- } else if (input.headers["set-cookie"]) {
103
- input = input.headers["set-cookie"];
104
- } else {
105
- var sch = input.headers[Object.keys(input.headers).find(function(key) {
106
- return key.toLowerCase() === "set-cookie";
107
- })];
108
- if (!sch && input.headers.cookie && !options.silent) {
109
- console.warn(
110
- "Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning."
111
- );
112
- }
113
- input = sch;
114
- }
115
- }
116
- if (!Array.isArray(input)) {
117
- input = [input];
118
- }
119
- options = options ? Object.assign({}, defaultParseOptions, options) : defaultParseOptions;
120
- if (!options.map) {
121
- return input.filter(isNonEmptyString).map(function(str) {
122
- return parseString2(str, options);
123
- });
124
- } else {
125
- var cookies = {};
126
- return input.filter(isNonEmptyString).reduce(function(cookies2, str) {
127
- var cookie = parseString2(str, options);
128
- cookies2[cookie.name] = cookie;
129
- return cookies2;
130
- }, cookies);
131
- }
132
- }
133
- function splitCookiesString(cookiesString) {
134
- if (Array.isArray(cookiesString)) {
135
- return cookiesString;
136
- }
137
- if (typeof cookiesString !== "string") {
138
- return [];
139
- }
140
- var cookiesStrings = [];
141
- var pos = 0;
142
- var start;
143
- var ch;
144
- var lastComma;
145
- var nextStart;
146
- var cookiesSeparatorFound;
147
- function skipWhitespace() {
148
- while (pos < cookiesString.length && /\s/.test(cookiesString.charAt(pos))) {
149
- pos += 1;
150
- }
151
- return pos < cookiesString.length;
152
- }
153
- function notSpecialChar() {
154
- ch = cookiesString.charAt(pos);
155
- return ch !== "=" && ch !== ";" && ch !== ",";
156
- }
157
- while (pos < cookiesString.length) {
158
- start = pos;
159
- cookiesSeparatorFound = false;
160
- while (skipWhitespace()) {
161
- ch = cookiesString.charAt(pos);
162
- if (ch === ",") {
163
- lastComma = pos;
164
- pos += 1;
165
- skipWhitespace();
166
- nextStart = pos;
167
- while (pos < cookiesString.length && notSpecialChar()) {
168
- pos += 1;
169
- }
170
- if (pos < cookiesString.length && cookiesString.charAt(pos) === "=") {
171
- cookiesSeparatorFound = true;
172
- pos = nextStart;
173
- cookiesStrings.push(cookiesString.substring(start, lastComma));
174
- start = pos;
175
- } else {
176
- pos = lastComma + 1;
177
- }
178
- } else {
179
- pos += 1;
180
- }
181
- }
182
- if (!cookiesSeparatorFound || pos >= cookiesString.length) {
183
- cookiesStrings.push(cookiesString.substring(start, cookiesString.length));
184
- }
185
- }
186
- return cookiesStrings;
187
- }
188
- module.exports = parse;
189
- module.exports.parse = parse;
190
- module.exports.parseString = parseString2;
191
- module.exports.splitCookiesString = splitCookiesString;
192
- }
193
- });
194
-
195
- // packages/qwik-router/src/middleware/azure-swa/index.ts
196
- var import_set_cookie_parser = __toESM(require_set_cookie(), 1);
197
- import { getNotFound } from "@qwik-router-not-found-paths";
198
- import { isStaticPath } from "@qwik-router-static-paths";
199
- import { _deserialize, _serialize, _verifySerializable } from "@qwik.dev/core/internal";
200
- import { setServerPlatform } from "@qwik.dev/core/server";
201
- import { requestHandler } from "../request-handler/index.mjs";
202
- function createQwikRouter(opts) {
203
- if (opts.qwikCityPlan && !opts.qwikRouterConfig) {
204
- console.warn("qwikCityPlan is deprecated. Use qwikRouterConfig instead.");
205
- opts.qwikRouterConfig = opts.qwikCityPlan;
206
- } else if (!opts.qwikRouterConfig) {
207
- throw new Error("qwikRouterConfig is required.");
208
- }
209
- const qwikSerializer = {
210
- _deserialize,
211
- _serialize,
212
- _verifySerializable
213
- };
214
- if (opts.manifest) {
215
- setServerPlatform(opts.manifest);
216
- }
217
- async function onAzureSwaRequest(context, req) {
1
+ import { setServerPlatform as w } from "@qwik.dev/core/server";
2
+ import { requestHandler as p, isStaticPath as b, getNotFound as g } from "@qwik.dev/router/middleware/request-handler";
3
+ import { parseString as C } from "set-cookie-parser";
4
+ function v(t) {
5
+ t.qwikCityPlan && !t.qwikRouterConfig && (console.warn("qwikCityPlan is deprecated. Simply remove it."), t.qwikRouterConfig = t.qwikCityPlan), t.manifest && w(t.manifest);
6
+ async function c(u, e) {
218
7
  try {
219
- const url = new URL(req.headers["x-ms-original-url"]);
220
- const options = {
221
- method: req.method || "GET",
222
- headers: req.headers,
223
- body: req.bufferBody || req.rawBody || req.body
224
- };
225
- const serverRequestEv = {
8
+ const n = new URL(e.headers["x-ms-original-url"]), l = {
9
+ method: e.method || "GET",
10
+ headers: e.headers,
11
+ body: e.bufferBody || e.rawBody || e.body
12
+ }, f = {
226
13
  mode: "server",
227
14
  locale: void 0,
228
- url,
229
- platform: context,
15
+ url: n,
16
+ platform: u,
230
17
  env: {
231
- get(key) {
232
- return process.env[key];
18
+ get(o) {
19
+ return process.env[o];
233
20
  }
234
21
  },
235
- request: new Request(url, options),
236
- getWritableStream: (status, headers, cookies, resolve) => {
237
- const response = {
238
- status,
22
+ request: new Request(n, l),
23
+ getWritableStream: (o, i, m, y) => {
24
+ const r = {
25
+ status: o,
239
26
  body: new Uint8Array(),
240
27
  headers: {},
241
- cookies: cookies.headers().map((header) => (0, import_set_cookie_parser.parseString)(header))
28
+ cookies: m.headers().map((a) => C(a))
242
29
  };
243
- headers.forEach((value, key) => response.headers[key] = value);
244
- return new WritableStream({
245
- write(chunk) {
246
- if (response.body instanceof Uint8Array) {
247
- const newBuffer = new Uint8Array(response.body.length + chunk.length);
248
- newBuffer.set(response.body);
249
- newBuffer.set(chunk, response.body.length);
250
- response.body = newBuffer;
30
+ return i.forEach((a, s) => r.headers[s] = a), new WritableStream({
31
+ write(a) {
32
+ if (r.body instanceof Uint8Array) {
33
+ const s = new Uint8Array(r.body.length + a.length);
34
+ s.set(r.body), s.set(a, r.body.length), r.body = s;
251
35
  }
252
36
  },
253
37
  close() {
254
- resolve(response);
38
+ y(r);
255
39
  }
256
40
  });
257
41
  },
258
- getClientConn: () => {
259
- return {
260
- ip: req.headers["x-forwarded-client-Ip"],
261
- country: void 0
262
- };
263
- }
264
- };
265
- const handledResponse = await requestHandler(serverRequestEv, opts, qwikSerializer);
266
- if (handledResponse) {
267
- handledResponse.completion.then((err) => {
268
- if (err) {
269
- console.error(err);
270
- }
42
+ getClientConn: () => ({
43
+ ip: e.headers["x-forwarded-client-Ip"],
44
+ country: void 0
45
+ })
46
+ }, d = await p(f, t);
47
+ if (d) {
48
+ d.completion.then((i) => {
49
+ i && console.error(i);
271
50
  });
272
- const response = await handledResponse.response;
273
- if (response) {
274
- return response;
275
- }
51
+ const o = await d.response;
52
+ if (o)
53
+ return o;
276
54
  }
277
- const notFoundHtml = isStaticPath(req.method || "GET", url) ? "Not Found" : getNotFound(url.pathname);
55
+ const h = !e.headers.accept?.includes("text/html") || b(e.method || "GET", n) ? "Not Found" : g(n.pathname);
278
56
  return {
279
57
  status: 404,
280
- headers: { "Content-Type": "text/html; charset=utf-8", "X-Not-Found": url.pathname },
281
- body: notFoundHtml
58
+ headers: { "Content-Type": "text/html; charset=utf-8", "X-Not-Found": n.pathname },
59
+ body: h
282
60
  };
283
- } catch (e) {
284
- console.error(e);
285
- return {
61
+ } catch (n) {
62
+ return console.error(n), {
286
63
  status: 500,
287
64
  headers: { "Content-Type": "text/plain; charset=utf-8" }
288
65
  };
289
66
  }
290
67
  }
291
- return onAzureSwaRequest;
68
+ return c;
292
69
  }
293
- var createQwikCity = createQwikRouter;
70
+ const x = v;
294
71
  export {
295
- createQwikCity,
296
- createQwikRouter
72
+ x as createQwikCity,
73
+ v as createQwikRouter
297
74
  };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("@qwik.dev/core/server"),s=require("@qwik.dev/router/middleware/request-handler"),c=require("node:path");var d=typeof document<"u"?document.currentScript:null;const R={"3gp":"video/3gpp","3gpp":"video/3gpp",asf:"video/x-ms-asf",asx:"video/x-ms-asf",avi:"video/x-msvideo",avif:"image/avif",bmp:"image/x-ms-bmp",css:"text/css",flv:"video/x-flv",gif:"image/gif",htm:"text/html",html:"text/html",ico:"image/x-icon",jng:"image/x-jng",jpeg:"image/jpeg",jpg:"image/jpeg",js:"application/javascript",json:"application/json",kar:"audio/midi",m4a:"audio/x-m4a",m4v:"video/x-m4v",mid:"audio/midi",midi:"audio/midi",mng:"video/x-mng",mov:"video/quicktime",mp3:"audio/mpeg",mp4:"video/mp4",mpeg:"video/mpeg",mpg:"video/mpeg",ogg:"audio/ogg",pdf:"application/pdf",png:"image/png",rar:"application/x-rar-compressed",shtml:"text/html",svg:"image/svg+xml",svgz:"image/svg+xml",tif:"image/tiff",tiff:"image/tiff",ts:"video/mp2t",txt:"text/plain",wbmp:"image/vnd.wap.wbmp",webm:"video/webm",webp:"image/webp",wmv:"video/x-ms-wmv",woff:"font/woff",woff2:"font/woff2",xml:"text/xml",zip:"application/zip"};function p(i){i.qwikCityPlan&&!i.qwikRouterConfig&&(console.warn("qwikCityPlan is deprecated. Simply remove it."),i.qwikRouterConfig=i.qwikCityPlan),globalThis.TextEncoderStream||=s._TextEncoderStream_polyfill,i.manifest&&C.setServerPlatform(i.manifest);const m=i.static?.root??c.join(Bun.fileURLToPath(typeof document>"u"?require("url").pathToFileURL(__filename).href:d&&d.tagName.toUpperCase()==="SCRIPT"&&d.src||new URL("index.cjs",document.baseURI).href),"..","..","dist");async function f(t){try{const r={mode:"server",locale:void 0,url:new URL(t.url),env:{get(o){return Bun.env[o]}},request:t,getWritableStream:(o,a,l,u)=>{const{readable:v,writable:w}=new TransformStream,x=new Response(v,{status:o,headers:s.mergeHeadersCookies(a,l)});return u(x),w},platform:{ssr:!0},getClientConn:()=>i.getClientConn?i.getClientConn(t):{}},n=await s.requestHandler(r,i);if(n){n.completion.then(a=>{a&&console.error(a)});const o=await n.response;if(o){const a=o.status,l=o.headers.get("Location");return a>=301&&a<=308&&l?new Response(null,o):o}}return null}catch(e){return console.error(e),new Response(String(e||"Error"),{status:500,headers:{"Content-Type":"text/plain; charset=utf-8","X-Error":"bun-server"}})}}const g=async t=>{try{const e=new URL(t.url),r=!t.headers.get("accept")?.includes("text/html")||s.isStaticPath(t.method||"GET",e)?"Not Found":s.getNotFound(e.pathname);return new Response(r,{status:404,headers:{"Content-Type":"text/html; charset=utf-8","X-Not-Found":e.pathname}})}catch(e){return console.error(e),new Response(String(e||"Error"),{status:500,headers:{"Content-Type":"text/plain; charset=utf-8","X-Error":"bun-server"}})}},h=async t=>{const e=t.pathname,r=e.slice(t.pathname.lastIndexOf("/"));let n;return r.includes(".")?n=c.join(m,e):globalThis.__NO_TRAILING_SLASH__?n=c.join(m,e,"index.html"):n=c.join(m,e+"index.html"),{filePath:n,content:Bun.file(n)}};return{router:f,notFound:g,staticFile:async t=>{try{const e=new URL(t.url);if(s.isStaticPath(t.method||"GET",e)){const{filePath:r,content:n}=await h(e);if(!await n.exists())return new Response("Not Found",{status:404,headers:{"Content-Type":"text/plain; charset=utf-8","X-Not-Found":e.pathname}});const o=c.extname(r).replace(/^\./,"");return new Response(await n.stream(),{status:200,headers:{"content-type":R[o]||"text/plain; charset=utf-8","Cache-Control":i.static?.cacheControl||"max-age=3600"}})}return null}catch(e){return console.error(e),new Response(String(e||"Error"),{status:500,headers:{"Content-Type":"text/plain; charset=utf-8","X-Error":"bun-server"}})}}}}const y=p;exports.createQwikCity=y;exports.createQwikRouter=p;