@atproto/oauth-provider 0.2.6 → 0.2.7

Sign up to get free protection for your applications and to get access to all the features.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @atproto/oauth-provider
2
2
 
3
+ ## 0.2.7
4
+
5
+ ### Patch Changes
6
+
7
+ - [#2852](https://github.com/bluesky-social/atproto/pull/2852) [`709ba3015`](https://github.com/bluesky-social/atproto/commit/709ba301578c1956b8eb0d89bad717615a4fd7ba) Thanks [@matthieusieben](https://github.com/matthieusieben)! - Remove response content-encoding logic
8
+
3
9
  ## 0.2.6
4
10
 
5
11
  ### Patch Changes
@@ -32,7 +32,7 @@ function authorizeAssetsMiddleware() {
32
32
  if (query === asset.sha256) {
33
33
  res.setHeader('Cache-Control', 'public, max-age=31536000, immutable');
34
34
  }
35
- await (0, index_js_1.writeStream)(res, asset.createStream(), asset.type);
35
+ (0, index_js_1.writeStream)(res, asset.createStream(), { contentType: asset.type });
36
36
  };
37
37
  }
38
38
  //# sourceMappingURL=assets-middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assets-middleware.js","sourceRoot":"","sources":["../../src/assets/assets-middleware.ts"],"names":[],"mappings":";;AASA,8DAoCC;AA7CD,mDAK6B;AAE7B,yCAAwD;AAExD,SAAgB,yBAAyB;IACvC,OAAO,KAAK,UAAU,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI;QACnD,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM;YAAE,OAAO,IAAI,EAAE,CAAA;QAChE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,4BAAiB,CAAC;YAAE,OAAO,IAAI,EAAE,CAAA;QAE1D,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAG7C,CAAA;QACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,4BAAiB,CAAC,MAAM,CAAC,CAAA;QACzD,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,EAAE,CAAA;QAE5B,MAAM,KAAK,GAAG,MAAM,IAAA,mBAAQ,EAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;QACxD,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,EAAE,CAAA;QAEzB,IAAI,CAAC;YACH,oEAAoE;YACpE,uCAAuC;YACvC,IAAA,4BAAiB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAA;YAClD,IAAA,4BAAiB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAA;QACxD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,GAAG,CAAC,CAAA;QAClB,CAAC;QAED,IAAI,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;YAClD,OAAO,KAAK,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;QACtC,CAAC;QAED,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;QAEnC,IAAI,KAAK,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3B,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,qCAAqC,CAAC,CAAA;QACvE,CAAC;QAED,MAAM,IAAA,sBAAW,EAAC,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;IAC1D,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"assets-middleware.js","sourceRoot":"","sources":["../../src/assets/assets-middleware.ts"],"names":[],"mappings":";;AASA,8DAoCC;AA7CD,mDAK6B;AAE7B,yCAAwD;AAExD,SAAgB,yBAAyB;IACvC,OAAO,KAAK,UAAU,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI;QACnD,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM;YAAE,OAAO,IAAI,EAAE,CAAA;QAChE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,4BAAiB,CAAC;YAAE,OAAO,IAAI,EAAE,CAAA;QAE1D,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAG7C,CAAA;QACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,4BAAiB,CAAC,MAAM,CAAC,CAAA;QACzD,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,EAAE,CAAA;QAE5B,MAAM,KAAK,GAAG,MAAM,IAAA,mBAAQ,EAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;QACxD,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,EAAE,CAAA;QAEzB,IAAI,CAAC;YACH,oEAAoE;YACpE,uCAAuC;YACvC,IAAA,4BAAiB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAA;YAClD,IAAA,4BAAiB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAA;QACxD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,GAAG,CAAC,CAAA;QAClB,CAAC;QAED,IAAI,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;YAClD,OAAO,KAAK,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;QACtC,CAAC;QAED,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;QAEnC,IAAI,KAAK,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3B,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,qCAAqC,CAAC,CAAA;QACvE,CAAC;QAED,IAAA,sBAAW,EAAC,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;IACrE,CAAC,CAAA;AACH,CAAC"}
@@ -22,6 +22,7 @@ type View<T, D, Req extends IncomingMessage = IncomingMessage, Res extends Serve
22
22
  * }
23
23
  * )
24
24
  * )
25
+ * ```
25
26
  */
26
27
  export declare function acceptMiddleware<D, T = void, Req extends IncomingMessage = IncomingMessage, Res extends ServerResponse = ServerResponse>(controller: (this: T, req: Req, res: Res) => D | PromiseLike<D>, views: Record<string, string | View<T, D, Req, Res>>, fallback?: Middleware<T>): (this: T, req: Req, res: Res, next: NextFunction) => Promise<void>;
27
28
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"accept.d.ts","sourceRoot":"","sources":["../../../src/lib/http/accept.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAU,MAAM,cAAc,CAAA;AAC7C,OAAO,EACL,eAAe,EACf,UAAU,EACV,YAAY,EACZ,cAAc,EACf,MAAM,YAAY,CAAA;AAEnB,KAAK,IAAI,CACP,CAAC,EACD,CAAC,EACD,GAAG,SAAS,eAAe,GAAG,eAAe,EAC7C,GAAG,SAAS,cAAc,GAAG,cAAc,IACzC,CACF,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,EAC5B,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,YAAY,KACf,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;AAE7B;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAC9B,CAAC,EACD,CAAC,GAAG,IAAI,EACR,GAAG,SAAS,eAAe,GAAG,eAAe,EAC7C,GAAG,SAAS,cAAc,GAAG,cAAc,EAE3C,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,EAC/D,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EACpD,QAAQ,GAAE,UAAU,CAAC,CAAC,CAAsD,GAC3E,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAuCpE"}
1
+ {"version":3,"file":"accept.d.ts","sourceRoot":"","sources":["../../../src/lib/http/accept.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAU,MAAM,cAAc,CAAA;AAC7C,OAAO,EACL,eAAe,EACf,UAAU,EACV,YAAY,EACZ,cAAc,EACf,MAAM,YAAY,CAAA;AAEnB,KAAK,IAAI,CACP,CAAC,EACD,CAAC,EACD,GAAG,SAAS,eAAe,GAAG,eAAe,EAC7C,GAAG,SAAS,cAAc,GAAG,cAAc,IACzC,CACF,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,EAC5B,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,YAAY,KACf,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;AAE7B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAC9B,CAAC,EACD,CAAC,GAAG,IAAI,EACR,GAAG,SAAS,eAAe,GAAG,eAAe,EAC7C,GAAG,SAAS,cAAc,GAAG,cAAc,EAE3C,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,EAC/D,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EACpD,QAAQ,GAAE,UAAU,CAAC,CAAC,CAAsD,GAC3E,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAuCpE"}
@@ -22,6 +22,7 @@ const context_js_1 = require("./context.js");
22
22
  * }
23
23
  * )
24
24
  * )
25
+ * ```
25
26
  */
26
27
  function acceptMiddleware(controller, views, fallback = (req, res, _next) => void res.writeHead(406).end()) {
27
28
  const viewsMap = new Map(Object.entries(views));
@@ -1 +1 @@
1
- {"version":3,"file":"accept.js","sourceRoot":"","sources":["../../../src/lib/http/accept.ts"],"names":[],"mappings":";;AA0CA,4CAgDC;AA1FD,yCAAwC;AAExC,6CAA6C;AAoB7C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAgB,gBAAgB,CAM9B,UAA+D,EAC/D,KAAoD,EACpD,WAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE;IAE5E,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/C,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAE/D,8EAA8E;IAC9E,YAAY;IACZ,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC/B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,UAAU,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,qBAAqB,IAAI,GAAG,CAAC,CAAA;QACpE,CAAC;IACH,CAAC;IAED,OAAO,KAAK,WAAW,GAAG,EAAE,GAAG,EAAE,IAAI;QACnC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAChC,CAAC,CAAC,IAAA,kBAAS,EAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,IAAI,SAAS;gBAC5D,CAAC,CAAC,EAAE,CAAA,CAAC,4CAA4C;YAEnD,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAExD,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACvD,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAA,CAAC,oBAAoB;YAElF,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;gBAClD,MAAM,GAAG,GAAG,IAAA,mBAAM,EAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;gBACtC,IAAI,IAAI;oBAAE,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;gBAE7C,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YACtC,CAAC;iBAAM,CAAC;gBACN,2BAA2B;gBAC3B,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,WAAW;gBAAE,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;YACtD,IAAI,CAAC,GAAG,CAAC,CAAA;QACX,CAAC;IACH,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"accept.js","sourceRoot":"","sources":["../../../src/lib/http/accept.ts"],"names":[],"mappings":";;AA2CA,4CAgDC;AA3FD,yCAAwC;AAExC,6CAA6C;AAoB7C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,gBAAgB,CAM9B,UAA+D,EAC/D,KAAoD,EACpD,WAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE;IAE5E,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/C,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAE/D,8EAA8E;IAC9E,YAAY;IACZ,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC/B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,UAAU,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,qBAAqB,IAAI,GAAG,CAAC,CAAA;QACpE,CAAC;IACH,CAAC;IAED,OAAO,KAAK,WAAW,GAAG,EAAE,GAAG,EAAE,IAAI;QACnC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAChC,CAAC,CAAC,IAAA,kBAAS,EAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,IAAI,SAAS;gBAC5D,CAAC,CAAC,EAAE,CAAA,CAAC,4CAA4C;YAEnD,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAExD,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACvD,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAA,CAAC,oBAAoB;YAElF,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;gBAClD,MAAM,GAAG,GAAG,IAAA,mBAAM,EAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;gBACtC,IAAI,IAAI;oBAAE,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;gBAE7C,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YACtC,CAAC;iBAAM,CAAC;gBACN,2BAA2B;gBAC3B,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,WAAW;gBAAE,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;YACtD,IAAI,CAAC,GAAG,CAAC,CAAA;QACX,CAAC;IACH,CAAC,CAAA;AACH,CAAC"}
@@ -65,7 +65,7 @@ function createFinalHandler(req, res, options) {
65
65
  const { status, ...payload } = buildFallbackPayload(req, err);
66
66
  res.setHeader('Content-Security-Policy', "default-src 'none'");
67
67
  res.setHeader('X-Content-Type-Options', 'nosniff');
68
- (0, response_js_1.writeJson)(res, payload, status);
68
+ (0, response_js_1.writeJson)(res, payload, { status });
69
69
  };
70
70
  }
71
71
  function buildFallbackPayload(req, err) {
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/lib/http/middleware.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/lib/http/middleware.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,13 @@ import { Readable } from 'node:stream';
2
2
  import { Handler, ServerResponse } from './types.js';
3
3
  export declare function appendHeader(res: ServerResponse, header: string, value: string | readonly string[]): void;
4
4
  export declare function writeRedirect(res: ServerResponse, url: string, status?: number): void;
5
- export declare function writeStream(res: ServerResponse, stream: Readable, contentType?: string, status?: number): Promise<void>;
6
- export declare function writeBuffer(res: ServerResponse, buffer: Buffer, contentType?: string, status?: number): Promise<void>;
7
- export declare function writeJson(res: ServerResponse, payload: unknown, status?: number, contentType?: string): Promise<void>;
8
- export declare function staticJsonHandler(value: unknown, contentType?: string, status?: number): Handler<unknown>;
9
- export declare function writeHtml(res: ServerResponse, html: Buffer | string, status?: number, contentType?: string): Promise<void>;
5
+ export type WriteResponseOptions = {
6
+ status?: number;
7
+ contentType?: string;
8
+ };
9
+ export declare function writeStream(res: ServerResponse, stream: Readable, { status, contentType, }?: WriteResponseOptions): void;
10
+ export declare function writeBuffer(res: ServerResponse, chunk: string | Buffer, { status, contentType, }?: WriteResponseOptions): void;
11
+ export declare function writeJson(res: ServerResponse, payload: unknown, { contentType, ...options }?: WriteResponseOptions): void;
12
+ export declare function staticJsonMiddleware(value: unknown, { contentType, ...options }?: WriteResponseOptions): Handler<unknown>;
13
+ export declare function writeHtml(res: ServerResponse, html: Buffer | string, { contentType, ...options }?: WriteResponseOptions): void;
10
14
  //# sourceMappingURL=response.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/lib/http/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,QAAQ,EAAa,MAAM,aAAa,CAAA;AAI9D,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAEpD,wBAAgB,YAAY,CAC1B,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAChC,IAAI,CAQN;AAED,wBAAgB,aAAa,CAC3B,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,MAAM,EACX,MAAM,SAAM,GACX,IAAI,CAEN;AA2BD,wBAAsB,WAAW,CAC/B,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,QAAQ,EAChB,WAAW,SACiB,EAC5B,MAAM,SAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAgCf;AAED,wBAAsB,WAAW,CAC/B,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,MAAM,EACd,WAAW,CAAC,EAAE,MAAM,EACpB,MAAM,SAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,wBAAsB,SAAS,CAC7B,GAAG,EAAE,cAAc,EACnB,OAAO,EAAE,OAAO,EAChB,MAAM,SAAM,EACZ,WAAW,SAAqB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,OAAO,EACd,WAAW,SAAqB,EAChC,MAAM,SAAM,GACX,OAAO,CAAC,OAAO,CAAC,CAKlB;AAED,wBAAsB,SAAS,CAC7B,GAAG,EAAE,cAAc,EACnB,IAAI,EAAE,MAAM,GAAG,MAAM,EACrB,MAAM,SAAM,EACZ,WAAW,SAAc,GACxB,OAAO,CAAC,IAAI,CAAC,CAGf"}
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/lib/http/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAY,MAAM,aAAa,CAAA;AAEhD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAEpD,wBAAgB,YAAY,CAC1B,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAChC,IAAI,CAQN;AAED,wBAAgB,aAAa,CAC3B,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,MAAM,EACX,MAAM,SAAM,GACX,IAAI,CAEN;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,wBAAgB,WAAW,CACzB,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,QAAQ,EAChB,EACE,MAAY,EACZ,WAAwC,GACzC,GAAE,oBAAyB,GAC3B,IAAI,CAYN;AAED,wBAAgB,WAAW,CACzB,GAAG,EAAE,cAAc,EACnB,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,EACE,MAAY,EACZ,WAAwC,GACzC,GAAE,oBAAyB,GAC3B,IAAI,CAIN;AAED,wBAAgB,SAAS,CACvB,GAAG,EAAE,cAAc,EACnB,OAAO,EAAE,OAAO,EAChB,EAAE,WAAgC,EAAE,GAAG,OAAO,EAAE,GAAE,oBAAyB,GAC1E,IAAI,CAGN;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,EACd,EAAE,WAAgC,EAAE,GAAG,OAAO,EAAE,GAAE,oBAAyB,GAC1E,OAAO,CAAC,OAAO,CAAC,CAMlB;AAED,wBAAgB,SAAS,CACvB,GAAG,EAAE,cAAc,EACnB,IAAI,EAAE,MAAM,GAAG,MAAM,EACrB,EAAE,WAAyB,EAAE,GAAG,OAAO,EAAE,GAAE,oBAAyB,GACnE,IAAI,CAEN"}
@@ -5,11 +5,9 @@ exports.writeRedirect = writeRedirect;
5
5
  exports.writeStream = writeStream;
6
6
  exports.writeBuffer = writeBuffer;
7
7
  exports.writeJson = writeJson;
8
- exports.staticJsonHandler = staticJsonHandler;
8
+ exports.staticJsonMiddleware = staticJsonMiddleware;
9
9
  exports.writeHtml = writeHtml;
10
10
  const node_stream_1 = require("node:stream");
11
- const promises_1 = require("node:stream/promises");
12
- const node_zlib_1 = require("node:zlib");
13
11
  function appendHeader(res, header, value) {
14
12
  const existing = res.getHeader(header);
15
13
  if (existing == null) {
@@ -23,75 +21,36 @@ function appendHeader(res, header, value) {
23
21
  function writeRedirect(res, url, status = 302) {
24
22
  res.writeHead(status, { Location: url }).end();
25
23
  }
26
- function negotiateEncoding(accept) {
27
- if (accept?.includes('br'))
28
- return 'br';
29
- if (accept?.includes('gzip'))
30
- return 'gzip';
31
- return 'identity';
32
- }
33
- function getEncoder(encoding) {
34
- switch (encoding) {
35
- case 'br':
36
- return (0, node_zlib_1.createBrotliCompress)({
37
- // Default quality is too slow
38
- params: { [node_zlib_1.constants.BROTLI_PARAM_QUALITY]: 5 },
39
- });
40
- case 'gzip':
41
- return (0, node_zlib_1.createGzip)();
42
- case 'identity':
43
- return new node_stream_1.PassThrough();
44
- default:
45
- throw new Error(`Unsupported encoding: ${encoding}`);
46
- }
47
- }
48
- const ifString = (value) => typeof value === 'string' ? value : undefined;
49
- async function writeStream(res, stream, contentType = ifString(stream.headers?.['content-type']) ||
50
- 'application/octet-stream', status = 200) {
24
+ function writeStream(res, stream, { status = 200, contentType = 'application/octet-stream', } = {}) {
51
25
  res.statusCode = status;
52
26
  res.setHeader('content-type', contentType);
53
- appendHeader(res, 'vary', 'accept-encoding');
54
- const encoding = negotiateEncoding(res.req.headers['accept-encoding']);
55
- res.setHeader('content-encoding', encoding);
56
- res.setHeader('transfer-encoding', 'chunked');
57
27
  if (res.req.method === 'HEAD') {
58
28
  res.end();
59
29
  stream.destroy();
60
- return;
61
- }
62
- try {
63
- await (0, promises_1.pipeline)(stream, getEncoder(encoding), res);
64
30
  }
65
- catch (err) {
66
- // Prevent the socket from being left open in a bad state
67
- res.socket?.destroy();
68
- if (err != null && typeof err === 'object') {
69
- // If an abort signal is used, we can consider this function's job successful
70
- if ('name' in err && err.name === 'AbortError')
71
- return;
72
- // If the client closes the connection, we don't care about the error
73
- if ('code' in err && err.code === 'ERR_STREAM_PREMATURE_CLOSE')
74
- return;
75
- }
76
- throw err;
31
+ else {
32
+ (0, node_stream_1.pipeline)([stream, res], (_err) => {
33
+ // The error will be propagated through the streams
34
+ });
77
35
  }
78
36
  }
79
- async function writeBuffer(res, buffer, contentType, status = 200) {
80
- const stream = node_stream_1.Readable.from([buffer]);
81
- return writeStream(res, stream, contentType, status);
37
+ function writeBuffer(res, chunk, { status = 200, contentType = 'application/octet-stream', } = {}) {
38
+ res.statusCode = status;
39
+ res.setHeader('content-type', contentType);
40
+ res.end(chunk);
82
41
  }
83
- async function writeJson(res, payload, status = 200, contentType = 'application/json') {
42
+ function writeJson(res, payload, { contentType = 'application/json', ...options } = {}) {
84
43
  const buffer = Buffer.from(JSON.stringify(payload));
85
- return writeBuffer(res, buffer, contentType, status);
44
+ writeBuffer(res, buffer, { ...options, contentType });
86
45
  }
87
- function staticJsonHandler(value, contentType = 'application/json', status = 200) {
46
+ function staticJsonMiddleware(value, { contentType = 'application/json', ...options } = {}) {
88
47
  const buffer = Buffer.from(JSON.stringify(value));
89
- return function (req, res, next) {
90
- void writeBuffer(res, buffer, contentType, status).catch(next);
48
+ const staticOptions = { ...options, contentType };
49
+ return function (req, res) {
50
+ writeBuffer(res, buffer, staticOptions);
91
51
  };
92
52
  }
93
- async function writeHtml(res, html, status = 200, contentType = 'text/html') {
94
- const buffer = Buffer.isBuffer(html) ? html : Buffer.from(html);
95
- return writeBuffer(res, buffer, contentType, status);
53
+ function writeHtml(res, html, { contentType = 'text/html', ...options } = {}) {
54
+ writeBuffer(res, html, { ...options, contentType });
96
55
  }
97
56
  //# sourceMappingURL=response.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/lib/http/response.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/lib/http/response.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-provider.d.ts","sourceRoot":"","sources":["../src/oauth-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth-provider.d.ts","sourceRoot":"","sources":["../src/oauth-provider.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
25
28
  Object.defineProperty(exports, "__esModule", { value: true });
26
29
  exports.OAuthProvider = exports.Keyset = void 0;
27
30
  const fetch_node_1 = require("@atproto-labs/fetch-node");
@@ -29,6 +32,8 @@ const simple_store_memory_1 = require("@atproto-labs/simple-store-memory");
29
32
  const jwk_1 = require("@atproto/jwk");
30
33
  Object.defineProperty(exports, "Keyset", { enumerable: true, get: function () { return jwk_1.Keyset; } });
31
34
  const oauth_types_1 = require("@atproto/oauth-types");
35
+ const accept_1 = require("@hapi/accept");
36
+ const http_errors_1 = __importDefault(require("http-errors"));
32
37
  const zod_1 = __importStar(require("zod"));
33
38
  const access_token_type_js_1 = require("./access-token/access-token-type.js");
34
39
  const account_manager_js_1 = require("./account/account-manager.js");
@@ -519,7 +524,7 @@ class OAuthProvider extends oauth_verifier_js_1.OAuthVerifier {
519
524
  res.setHeader('Cache-Control', 'max-age=300');
520
525
  next();
521
526
  },
522
- (0, index_js_1.staticJsonHandler)(json),
527
+ (0, index_js_1.staticJsonMiddleware)(json),
523
528
  ]);
524
529
  /**
525
530
  * Wrap an OAuth endpoint in a middleware that will set the appropriate
@@ -539,11 +544,18 @@ class OAuthProvider extends oauth_verifier_js_1.OAuthVerifier {
539
544
  res.appendHeader('Access-Control-Expose-Headers', name);
540
545
  }
541
546
  try {
547
+ // Ensure we can agree on a content encoding & type before starting to
548
+ // build the JSON response.
549
+ if (!(0, accept_1.mediaType)(req.headers['accept'], ['application/json'])) {
550
+ throw (0, http_errors_1.default)(406, 'Unsupported media type');
551
+ }
542
552
  const result = await buildJson.call(this, req, res);
543
- if (result !== undefined)
544
- (0, index_js_1.writeJson)(res, result, status);
545
- else if (!res.headersSent)
553
+ if (result !== undefined) {
554
+ (0, index_js_1.writeJson)(res, result, { status });
555
+ }
556
+ else if (!res.headersSent) {
546
557
  res.writeHead(status ?? 204).end();
558
+ }
547
559
  }
548
560
  catch (err) {
549
561
  if (!res.headersSent) {
@@ -552,7 +564,9 @@ class OAuthProvider extends oauth_verifier_js_1.OAuthVerifier {
552
564
  res.setHeader(name, err.wwwAuthenticateHeader);
553
565
  res.appendHeader('Access-Control-Expose-Headers', name);
554
566
  }
555
- (0, index_js_1.writeJson)(res, (0, build_error_payload_js_1.buildErrorPayload)(err), (0, build_error_payload_js_1.buildErrorStatus)(err));
567
+ const payload = (0, build_error_payload_js_1.buildErrorPayload)(err);
568
+ const status = (0, build_error_payload_js_1.buildErrorStatus)(err);
569
+ (0, index_js_1.writeJson)(res, payload, { status });
556
570
  }
557
571
  else {
558
572
  res.destroy();
@@ -574,10 +588,6 @@ class OAuthProvider extends oauth_verifier_js_1.OAuthVerifier {
574
588
  (0, index_js_1.validateFetchDest)(req, res, ['document']);
575
589
  (0, index_js_1.validateSameOrigin)(req, res, issuerOrigin);
576
590
  await handler.call(this, req, res);
577
- // Should never happen (fool proofing)
578
- if (!res.headersSent) {
579
- throw new Error('Navigation handler did not send a response');
580
- }
581
591
  }
582
592
  catch (err) {
583
593
  onError?.(req, res, err, `Failed to handle navigation request to "${req.url}"`);
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-provider.js","sourceRoot":"","sources":["../src/oauth-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth-provider.js","sourceRoot":"","sources":["../src/oauth-provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAAwD;AAExD,2EAAqE;AACrE,sCAA2C;AA4HzC,uFA5Ha,YAAM,OA4Hb;AA3HR,sDA0B6B;AAC7B,yCAAwC;AACxC,8DAAyC;AAEzC,2CAAiC;AAEjC,8EAAqE;AACrE,qEAA6D;AAC7D,iEAMmC;AAEnC,wEAAyE;AACzE,4DAAuE;AACvE,wDAAgE;AAChE,kEAGmC;AACnC,8DAAqE;AAErE,iDAAsE;AAEtE,kEAA0D;AAC1D,8DAAqE;AACrE,4EAAmE;AACnE,sGAA4F;AAC5F,kFAAyE;AACzE,8EAAqE;AACrE,4EAAmE;AACnE,sFAA6E;AAC7E,gFAAuE;AACvE,8EAAqE;AACrE,4DAAoD;AACpD,wFAA+E;AAC/E,kFAAyE;AACzE,kDAiB4B;AAC5B,gDAAuE;AAEvE,oEAA4E;AAE5E,2DAAyE;AAEzE,4EAGwC;AAExC,kEAA0D;AAC1D,oFAG4C;AAC5C,8DAAqE;AACrE,+CAA8C;AAE9C,qEAA6D;AAC7D,+EAAsE;AACtE,6EAAoE;AACpE,iEAAyE;AACzE,6DAAuE;AACvE,qDAA+C;AAC/C,+DAAuD;AACvD,2DAAiE;AA8GjE,MAAa,aAAc,SAAQ,iCAAa;IAC9B,QAAQ,CAAkC;IAC1C,aAAa,CAAgB;IAE7B,oBAAoB,CAAQ;IAE5B,cAAc,CAAgB;IAC9B,WAAW,CAAa;IACxB,aAAa,CAAe;IAC5B,cAAc,CAAgB;IAC9B,YAAY,CAAc;IAE1C,YAAmB,EACjB,QAAQ,EACR,aAAa,GAAG,SAAS,EACzB,oBAAoB,GAAG,qCAAsB,EAC7C,WAAW,GAAG,4BAAa,EAE3B,SAAS,GAAG,IAAA,0BAAa,GAAE,EAC3B,KAAK,EACL,KAAK,EAAE,gCAAgC;IAEvC,kBAAkB;IAClB,YAAY,GAAG,IAAA,iCAAc,EAAC,KAAK,CAAC,EACpC,WAAW,GAAG,IAAA,+BAAa,EAAC,KAAK,CAAC,EAClC,UAAU,GAAG,IAAA,6BAAY,EAAC,KAAK,CAAC;IAEhC,qBAAqB;IACrB,WAAW,GAAG,IAAA,+BAAa,EAAC,KAAK,CAAC,EAClC,WAAW,GAAG,IAAA,+BAAa,EAAC,KAAK,CAAC,EAClC,YAAY,GAAG,IAAA,iCAAc,EAAC,KAAK,CAAC,EAEpC,eAAe,GAAG,IAAI,uCAAiB,CAAC;QACtC,OAAO,EAAE,UAAU;QACnB,GAAG,EAAE,KAAK;KACX,CAAC,EACF,mBAAmB,GAAG,IAAI,uCAAiB,CAAC;QAC1C,OAAO,EAAE,UAAU;QACnB,GAAG,EAAE,KAAK;KACX,CAAC,EAEF,gBAAgB,GAAG,2CAA6B;IAEhD,oCAAoC;IACpC,GAAG,IAAI,EACc;QACrB,KAAK,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC,CAAA;QAEtC,YAAY,KAAK,KAAK;YACpB,CAAC,CAAC,IAAI,0CAAiB,CAAC,EAAE,KAAK,EAAE,CAAC;YAClC,CAAC,CAAC,IAAI,4CAAkB,EAAE,CAAA;QAE5B,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAA;QAChD,IAAI,CAAC,QAAQ,GAAG,IAAA,iCAAa,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QACjE,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAElC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAE9B,IAAI,CAAC,cAAc,GAAG,IAAI,mCAAc,CAAC,YAAY,CAAC,CAAA;QACtD,IAAI,CAAC,aAAa,GAAG,IAAI,iCAAa,CACpC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,MAAM,EACX,IAAI,EACJ,WAAW,IAAI,IAAI,EACnB,gBAAgB,IAAI,IAAI,EACxB,SAAS,EACT,eAAe,EACf,mBAAmB,CACpB,CAAA;QACD,IAAI,CAAC,cAAc,GAAG,IAAI,mCAAc,CACtC,YAAY,EACZ,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,EACb,IAAI,CACL,CAAA;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,+BAAY,CAClC,UAAU,EACV,IAAI,CAAC,MAAM,EACX,IAAI,EACJ,IAAI,CAAC,eAAe,EACpB,WAAW,CACZ,CAAA;IACH,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAA;IAC/B,CAAC;IAES,aAAa,CACrB,MAAc,EACd,UAA+C,EAC/C,IAAuB;QAEvB,iBAAiB;QACjB,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,GAAG,GAAG,CAAA;QAEnE,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO,OAAO,IAAI,IAAI,CAAC,oBAAoB,CAAA;IAC7C,CAAC;IAES,KAAK,CAAC,kBAAkB,CAChC,WAAmC;QAEnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QACxE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,WAAW,EAAE;YACxE,QAAQ,EAAE,IAAI,CAAC,MAAM;SACtB,CAAC,CAAA;QAEF,IACE,MAAM,CAAC,QAAQ,CAAC,gBAAgB,KAAK,QAAQ;YAC7C,UAAU,CAAC,MAAM,KAAK,MAAM,EAC5B,CAAC;YACD,4DAA4D;YAC5D,EAAE;YACF,mEAAmE;YACnE,iEAAiE;YACjE,yEAAyE;YACzE,wEAAwE;YACxE,0EAA0E;YAC1E,mEAAmE;YACnE,iBAAiB;YAEjB,MAAM,IAAI,0CAAiB,CACzB,sDAAsD,CACvD,CAAA;QACH,CAAC;QAED,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;YACpE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,0CAAiB,CAAC,GAAG,UAAU,CAAC,MAAM,aAAa,CAAC,CAAA;YAChE,CAAC;QACH,CAAC;QAED,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAC7B,CAAC;IAES,KAAK,CAAC,SAAS,CACvB,MAAc,EACd,KAAmC;QAWnC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC9D,MAAM,OAAO,GAAG,uDAAyC,CAAC,KAAK,CAC7D,MAAM,CAAC,OAAO,CACf,CAAA;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACxB,MAAM,IAAI,oDAAsB,CAC9B,OAAO,EACP,yCAAyC,CAC1C,CAAA;QACH,CAAC;QAED,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,oDAAsB,CAC9B,OAAO,EACP,kCAAkC,CACnC,CAAA;QACH,CAAC;QAED,IAAI,iBAAiB,IAAI,MAAM,EAAE,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC;gBAChC,MAAM,IAAI,oDAAsB,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAA;YACtE,CAAC;YAED,OAAO;gBACL,GAAG,EAAE,MAAM,IAAA,kCAAiB,EAAC,MAAM,CAAC,GAAG,CAAC;gBACxC,OAAO;gBACP,eAAe,EAAE,MAAM,CAAC,eAGvB;aACF,CAAA;QACH,CAAC;QAED,IAAI,QAAQ,IAAI,MAAM,EAAE,CAAC;YACvB,OAAO;gBACL,OAAO;aACR,CAAA;QACH,CAAC;QAED,sBAAsB;QACtB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;IAC3C,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,0BAA0B,CACxC,WAAmC,EACnC,oBAAkD,EAClD,OAAsB;QAEtB,IAAI,CAAC;YACH,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAA;YAEvE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAC3B,SAAS,IAAI,oBAAoB,CAAC,aAAa;gBAC7C,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,oBAAoB,CAAC;gBACpD,CAAC,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAA;YAEvC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GACtB,MAAM,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAClD,MAAM,EACN,UAAU,EACV,UAAU,EACV,IAAI,EACJ,OAAO,CACR,CAAA;YAEH,OAAO;gBACL,WAAW,EAAE,GAAG;gBAChB,UAAU,EAAE,IAAA,+BAAqB,EAAC,SAAS,CAAC;aAC7C,CAAA;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,8DAA8D;YAC9D,0EAA0E;YAC1E,oEAAoE;YACpE,uEAAuE;YACvE,cAAc;YACd,IAAI,GAAG,YAAY,0CAAiB,EAAE,CAAC;gBACrC,MAAM,IAAI,8CAAmB,CAAC,GAAG,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAA;YAC3D,CAAC;YACD,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,2BAA2B,CACvC,MAAc,EACd,QAAkB,EAClB,KAAqC;QAErC,IAAI,aAAa,IAAI,KAAK,EAAE,CAAC;YAC3B,MAAM,UAAU,GAAG,MAAM,iCAAgB;iBACtC,UAAU,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE,CAAC;iBACjE,KAAK,CAAC,mBAAmB,CAAC,CAAA;YAE7B,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QACjE,CAAC;QAED,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;YAEzD,IAAI,iBAAiB,IAAI,aAAa,IAAI,aAAa,CAAC,eAAe,EAAE,CAAC;gBACxE,uEAAuE;gBACvE,gEAAgE;gBAChE,MAAM,UAAU,GAAe;oBAC7B,MAAM,EAAE,8CAAgC;oBACxC,GAAG,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG;oBACtC,GAAG,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG;oBACtC,GAAG,EAAE,aAAa,CAAC,GAAG;iBACvB,CAAA;gBAED,OAAO,IAAI,CAAC,cAAc,CAAC,0BAA0B,CACnD,MAAM,EACN,UAAU,EACV,aAAa,CAAC,OAAO,EACrB,QAAQ,EACR,IAAI,CACL,CAAA;YACH,CAAC;YAED,OAAO,IAAI,CAAC,cAAc,CAAC,0BAA0B,CACnD,MAAM,EACN,EAAE,MAAM,EAAE,MAAM,EAAE,EAClB,aAAa,CAAC,OAAO,EACrB,QAAQ,EACR,IAAI,CACL,CAAA;QACH,CAAC;QAED,OAAO,IAAI,CAAC,cAAc,CAAC,0BAA0B,CACnD,MAAM,EACN,EAAE,MAAM,EAAE,MAAM,EAAE,EAClB,KAAK,EACL,QAAQ,EACR,IAAI,CACL,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,GAAe,EACf,UAA+C;QAE/C,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,0CAAiB,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,SAAS,CACvB,QAAkB,EAClB,WAAuC,EACvC,KAAqC;QAErC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAEvB,oEAAoE;QACpE,oDAAoD;QACpD,MAAM,mBAAmB,GACvB,cAAc,IAAI,KAAK;YACrB,CAAC,CAAC,CAAC,GAAY,EAAS,EAAE;gBACtB,iFAAiF;gBACjF,MAAM,0CAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAA;YAC7D,CAAC;YACH,CAAC,CAAC,IAAI,CAAA;QAEV,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa;aACpC,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC;aAChC,KAAK,CAAC,mBAAmB,CAAC,CAAA;QAE7B,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,GACnC,MAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,KAAK,CACnE,mBAAmB,CACpB,CAAA;QAEH,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CACrC,MAAM,EACN,UAAU,EACV,QAAQ,EACR,UAAU,CACX,CAAA;YAED,IAAI,UAAU,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACjC,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;gBACzD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3B,MAAM,IAAI,mEAA6B,CAAC,UAAU,CAAC,CAAA;gBACrD,CAAC;gBACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3B,MAAM,IAAI,4CAAkB,CAAC,UAAU,CAAC,CAAA;gBAC1C,CAAC;gBAED,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAE,CAAA;gBAClC,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC;oBAC7B,MAAM,IAAI,4CAAkB,CAAC,UAAU,CAAC,CAAA;gBAC1C,CAAC;gBACD,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;oBAC/B,MAAM,IAAI,gDAAoB,CAAC,UAAU,CAAC,CAAA;gBAC5C,CAAC;gBAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAClD,MAAM,EACN,GAAG,EACH,QAAQ,EACR,UAAU,CAAC,OAAO,CACnB,CAAA;gBAED,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,CAAA;YAC3D,CAAC;YAED,wCAAwC;YACxC,IAAI,UAAU,CAAC,MAAM,IAAI,IAAI,IAAI,UAAU,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;gBAC/D,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;gBACzD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC7B,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAE,CAAA;oBAClC,IAAI,CAAC,UAAU,CAAC,aAAa,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;wBAC7D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAClD,MAAM,EACN,GAAG,EACH,QAAQ,EACR,UAAU,CAAC,OAAO,CACnB,CAAA;wBAED,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,CAAA;oBAC3D,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO;gBACL,MAAM;gBACN,MAAM;gBACN,UAAU;gBACV,SAAS,EAAE;oBACT,GAAG;oBACH,QAAQ;oBACR,YAAY,EAAE,UAAU,CAAC,KAAK;wBAC5B,EAAE,KAAK,CAAC,KAAK,CAAC;yBACb,MAAM,CAAC,OAAO,CAAC;yBACf,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;yBAClC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;wBACf,KAAK;wBACL,wDAAwD;wBACxD,gBAAgB;wBAChB,WAAW,EAAE,SAAS;qBACvB,CAAC,CAAC;iBACN;aACF,CAAA;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;YAEzC,oEAAoE;YACpE,8DAA8D;YAC9D,MAAM,0CAAiB,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAES,KAAK,CAAC,WAAW,CACzB,MAAc,EACd,UAAsB,EACtB,QAAkB,EAClB,UAA+C;QAa/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAEzD,MAAM,IAAI,GAAG,UAAU,CAAC,UAAU,CAAA;QAClC,MAAM,WAAW,GAAG,CAAC,OAAgB,EAAW,EAAE,CAChD,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC;YACvC,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,IAAI,OAAO,CAAC,kBAAkB,KAAK,IAAI,CAAC,CAAA;QAEvE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YAC1C,OAAO;YACP,IAAI;YAEJ,QAAQ,EACN,UAAU,CAAC,MAAM,KAAK,gBAAgB;gBACtC,WAAW,CAAC,OAAO,CAAC;gBACpB,uEAAuE;gBACvE,oEAAoE;gBACpE,wEAAwE;gBACxE,4CAA4C;gBAC5C,QAAQ,CAAC,MAAM,CACb,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAClD,CAAC,CACF,KAAK,CAAC;YACT,aAAa,EACX,UAAU,CAAC,MAAM,KAAK,OAAO;gBAC7B,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC;YAC9C,eAAe,EACb,UAAU,CAAC,MAAM,KAAK,SAAS;gBAC/B,oEAAoE;gBACpE,mEAAmE;gBACnE,sEAAsE;gBACtE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAE7C,WAAW,EAAE,IAAI,IAAI,IAAI,IAAI,WAAW,CAAC,OAAO,CAAC;SAClD,CAAC,CAAC,CAAA;IACL,CAAC;IAES,KAAK,CAAC,MAAM,CACpB,QAAkB,EAClB,GAAe,EACf,QAAkB,EAClB,WAA8B;QAK9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAE3D,wEAAwE;QACxE,oEAAoE;QACpE,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAEtD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CACxD,WAAW,EACX,QAAQ,CACT,CAAA;QAED,OAAO;YACL,OAAO;YACP,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY;gBACvC,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,qEAAqE;oBACrE,mEAAmE;oBACnE,sEAAsE;oBACtE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;SAChD,CAAA;IACH,CAAC;IAES,KAAK,CAAC,aAAa,CAC3B,QAAkB,EAClB,GAAe,EACf,QAAkB,EAClB,GAAW;QAEX,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAE3D,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAC9D,GAAG,EACH,QAAQ,EACR,QAAQ,CACT,CAAA;QAED,IAAI,CAAC;YACH,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;YAEtE,wDAAwD;YACxD,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,4CAAkB,CAC1B,UAAU,EACV,kCAAkC,CACnC,CAAA;YACH,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAClD,MAAM,EACN,GAAG,EACH,QAAQ,EACR,OAAO,CACR,CAAA;YAED,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAC3C,QAAQ,EACR,OAAO,EACP,MAAM,EACN,UAAU,CACX,CAAA;YAED,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,CAAA;QACnD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;YAEzC,MAAM,0CAAiB,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAES,KAAK,CAAC,aAAa,CAC3B,QAAkB,EAClB,GAAe,EACf,QAAkB;QAElB,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAClD,GAAG,EACH,QAAQ,EACR,QAAQ,CACT,CAAA;QAED,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;QAEzC,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU,EAAE,UAAU;YACtB,QAAQ,EAAE;gBACR,KAAK,EAAE,eAAe;gBACtB,iBAAiB,EAAE,eAAe;aACnC;SACF,CAAA;IACH,CAAC;IAES,KAAK,CAAC,KAAK,CACnB,WAAmC,EACnC,OAA0B,EAC1B,OAAsB;QAEtB,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAA;QAEvE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACvE,MAAM,IAAI,0CAAiB,CACzB,eAAe,OAAO,CAAC,UAAU,kCAAkC,CACpE,CAAA;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9D,MAAM,IAAI,0CAAiB,CACzB,IAAI,OAAO,CAAC,UAAU,6CAA6C,CACpE,CAAA;QACH,CAAC;QAED,IAAI,OAAO,CAAC,UAAU,KAAK,oBAAoB,EAAE,CAAC;YAChD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;QAC7D,CAAC;QAED,IAAI,OAAO,CAAC,UAAU,KAAK,eAAe,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;QACrE,CAAC;QAED,MAAM,IAAI,0CAAiB,CACzB,eAAe,OAAO,CAAC,UAAU,iBAAiB,CACnD,CAAA;IACH,CAAC;IAES,KAAK,CAAC,SAAS,CACvB,MAAc,EACd,UAAsB,EACtB,KAA8C,EAC9C,OAAsB;QAEtB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,oBAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAEzC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CACtE,MAAM,EACN,UAAU,EACV,IAAI,CACL,CAAA;YAED,wEAAwE;YACxE,0EAA0E;YAC1E,sEAAsE;YACtE,uEAAuE;YACvE,sEAAsE;YACtE,qEAAqE;YACrE,+CAA+C;YAC/C,EAAE;YACF,sEAAsE;YACtE,yEAAyE;YACzE,wEAAwE;YACxE,yBAAyB;YACzB,EAAE;YACF,iEAAiE;YACjE,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,mBAAmB,CACzD,UAAU,CAAC,cAAc,CAC1B,CAAA;gBACD,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,MAAM,IAAI,0CAAiB,CACzB,gBAAgB,EAChB,6BAA6B,CAC9B,CAAA;gBACH,CAAC;YACH,CAAC;YAED,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;YAEtE,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CACnC,MAAM,EACN,UAAU,EACV,OAAO,EACP,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EACtB,UAAU,EACV,KAAK,EACL,OAAO,CACR,CAAA;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,sEAAsE;YACtE,mEAAmE;YAEnE,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAE1C,wEAAwE;YACxE,0CAA0C;YAE1C,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,MAAc,EACd,UAAsB,EACtB,KAAyC,EACzC,OAAsB;QAEtB,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;IACtE,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,EAA4B;QACxD,uEAAuE;QACvE,6BAA6B;QAC7B,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACvC,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,UAAU,CACxB,WAAmC,EACnC,EAAE,KAAK,EAA4B;QAEnC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAA;QAEvE,gCAAgC;QAChC,EAAE;QACF,2EAA2E;QAC3E,kEAAkE;QAClE,2EAA2E;QAC3E,4EAA4E;QAC5E,wEAAwE;QACxE,uEAAuE;QACvE,IAAI,UAAU,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACjC,MAAM,IAAI,sDAAuB,CAAC,gCAAgC,CAAC,CAAA;QACrE,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACxB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,CACvD,MAAM,EACN,UAAU,EACV,KAAK,CACN,CAAA;YAED,OAAO;gBACL,MAAM,EAAE,IAAI;gBAEZ,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK;gBACtC,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,QAAQ;gBAClC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,kBAAkB;gBAC9C,UAAU,EAAE,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ;gBAClE,qBAAqB,EAAE,SAAS,CAAC,IAAI,CAAC,OAAO,IAAI,SAAS;gBAE1D,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG;gBAC1B,GAAG,EAAE,IAAA,qBAAW,EAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;gBAC1C,GAAG,EAAE,IAAA,qBAAW,EAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;gBAC1C,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;gBACvB,GAAG,EAAE,SAAS,CAAC,EAAE;gBACjB,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG;aAC3B,CAAA;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,iEAAiE;YACjE,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YAEnE,OAAO;gBACL,MAAM,EAAE,KAAK;aACd,CAAA;QACH,CAAC;IACH,CAAC;IAEkB,KAAK,CAAC,iBAAiB,CACxC,SAAyB,EACzB,KAAuB,EACvB,OAAsB,EACtB,aAAwC;QAExC,IAAI,IAAA,uBAAS,EAAC,KAAK,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,sCAAe,CAAC,EAAE,CAAC,CAAA;YAE1D,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAC1C,SAAS,EACT,KAAK,EACL,OAAO,EACP,aAAa,CACd,CAAA;QACH,CAAC;QAED,OAAO,KAAK,CAAC,iBAAiB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;IAC1E,CAAC;IAED;;;OAGG;IACI,WAAW,CAIhB,OAAiC;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAc,OAAO,CAAC,CAAA;QACrD,OAAO,MAAM,CAAC,YAAY,EAAE,CAAA;IAC9B,CAAC;IAEM,WAAW,CAIhB,OAAiC;QACjC,MAAM,aAAa,GAAG,IAAI,iCAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACzD,MAAM,aAAa,GAAG,IAAI,iCAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QAE3D,4DAA4D;QAC5D,MAAM,MAAM,GAAG,IAAI,CAAA;QACnB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAA;QACrC,MAAM,MAAM,GAAG,IAAI,iBAAM,CAAc,SAAS,CAAC,CAAA;QAEjD,QAAQ;QAER,MAAM,UAAU,GAAG,CAAC,GAAe,EAAE,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAA;QACrD,MAAM,OAAO,GACX,OAAO,EAAE,OAAO;YAChB,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,aAAa;gBACxC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAQ,EAAE,CAC3B,OAAO,CAAC,KAAK,CAAC,wBAAwB,GAAG,IAAI,EAAE,GAAG,CAAC;gBACvD,CAAC,CAAC,SAAS,CAAC,CAAA;QAEhB;;WAEG;QACH,MAAM,UAAU,GAAG,CAAC,IAAa,EAA8B,EAAE,CAC/D,IAAA,6BAAkB,EAAC;YACjB,UAAU,GAAG,EAAE,GAAG,EAAE,IAAI;gBACtB,GAAG,CAAC,SAAS,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAA;gBACjD,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,GAAG,CAAC,CAAA;gBAElD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,aAAa,CAAC,CAAA;gBAC7C,IAAI,EAAE,CAAA;YACR,CAAC;YACD,IAAA,+BAAoB,EAAC,IAAI,CAAC;SAC3B,CAAC,CAAA;QAEJ;;;WAGG;QACH,MAAM,WAAW,GAAG,CAClB,SAAkE,EAClE,MAAe,EACS,EAAE,CAC1B,KAAK,WAAW,GAAG,EAAE,GAAG;YACtB,GAAG,CAAC,SAAS,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAA;YACjD,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,GAAG,CAAC,CAAA;YAElD,0DAA0D;YAC1D,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;YAC1C,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;YAEnC,4DAA4D;YAC5D,MAAM,SAAS,GAAG,MAAM,CAAC,aAAa,EAAE,CAAA;YACxC,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,IAAI,GAAG,YAAY,CAAA;gBACzB,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;gBAC9B,GAAG,CAAC,YAAY,CAAC,+BAA+B,EAAE,IAAI,CAAC,CAAA;YACzD,CAAC;YAED,IAAI,CAAC;gBACH,sEAAsE;gBACtE,2BAA2B;gBAC3B,IAAI,CAAC,IAAA,kBAAS,EAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC;oBAC5D,MAAM,IAAA,qBAAe,EAAC,GAAG,EAAE,wBAAwB,CAAC,CAAA;gBACtD,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;gBACnD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,IAAA,oBAAS,EAAC,GAAG,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;gBACpC,CAAC;qBAAM,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;oBAC5B,GAAG,CAAC,SAAS,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;gBACpC,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;oBACrB,IAAI,GAAG,YAAY,gDAAoB,EAAE,CAAC;wBACxC,MAAM,IAAI,GAAG,kBAAkB,CAAA;wBAC/B,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,qBAAqB,CAAC,CAAA;wBAC9C,GAAG,CAAC,YAAY,CAAC,+BAA+B,EAAE,IAAI,CAAC,CAAA;oBACzD,CAAC;oBAED,MAAM,OAAO,GAAG,IAAA,0CAAiB,EAAC,GAAG,CAAC,CAAA;oBACtC,MAAM,MAAM,GAAG,IAAA,yCAAgB,EAAC,GAAG,CAAC,CAAA;oBACpC,IAAA,oBAAS,EAAC,GAAG,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;gBACrC,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,OAAO,EAAE,CAAA;gBACf,CAAC;gBAED,mEAAmE;gBACnE,kBAAkB;gBAClB,IAAI,CAAC,CAAC,GAAG,YAAY,2BAAU,CAAC,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,EAAE,CAAC;oBAC1D,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAA;gBAC9C,CAAC;YACH,CAAC;QACH,CAAC,CAAA;QAEH,MAAM,iBAAiB,GAAG,CACxB,OAAgE,EACxC,EAAE,CAC1B,KAAK,WAAW,GAAG,EAAE,GAAG;YACtB,GAAG,CAAC,SAAS,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAA;YACjD,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,GAAG,CAAC,CAAA;YAElD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;YAC1C,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;YAEnC,IAAI,CAAC;gBACH,IAAA,4BAAiB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;gBACzC,IAAA,4BAAiB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;gBACzC,IAAA,6BAAkB,EAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAA;gBAE1C,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,CACP,GAAG,EACH,GAAG,EACH,GAAG,EACH,2CAA2C,GAAG,CAAC,GAAG,GAAG,CACtD,CAAA;gBAED,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;oBACrB,MAAM,aAAa,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC,CAAA;QAEH;;;;WAIG;QACH,MAAM,6BAA6B,GAAG,CACpC,GAAQ,EACR,GAAQ,EACR,GAAY,EACiB,EAAE;YAC/B,IAAI,GAAG,YAAY,0CAAiB,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;gBACpE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAA;gBACrB,IAAI,KAAK;oBAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,eAAe,CAAC,CAAA;gBAEtD,OAAO;oBACL,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,UAAU,EAAE,GAAG,CAAC,UAAU;oBAC1B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE;iBACvB,CAAA;YACH,CAAC;YAED,MAAM,GAAG,CAAA;QACX,CAAC,CAAA;QAED,0BAA0B;QAE1B,MAAM,CAAC,GAAG,CACR,yCAAyC,EACzC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAC5B,CAAA;QAED,iBAAiB;QACjB,MAAM,aAAa,GAAe,UAAU,GAAG,EAAE,GAAG,EAAE,KAAK;YACzD,GAAG;iBACA,SAAS,CAAC,GAAG,EAAE;gBACd,wFAAwF;gBACxF,EAAE;gBACF,mEAAmE;gBACnE,+DAA+D;gBAC/D,4DAA4D;gBAC5D,kEAAkE;gBAClE,WAAW;gBACX,EAAE;gBACF,4DAA4D;gBAC5D,6BAA6B,EAAE,GAAG;gBAClC,yFAAyF;gBACzF,8DAA8D;gBAC9D,mEAAmE;gBACnE,oEAAoE;gBACpE,iEAAiE;gBACjE,eAAe;gBACf,8BAA8B,EAAE,GAAG;gBACnC,8BAA8B,EAAE,iCAAiC;gBACjE,wBAAwB,EAAE,OAAO,EAAE,QAAQ;aAC5C,CAAC;iBACD,GAAG,EAAE,CAAA;QACV,CAAC,CAAA;QAED,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;QAElD,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,aAAa,CAAC,CAAA;QAC3C,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,WAAW,CAAC,KAAK,WAAW,GAAG,EAAE,IAAI;YACnC,MAAM,OAAO,GAAG,MAAM,IAAA,2BAAgB,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAA;YAEnE,MAAM,WAAW,GAAG,MAAM,0CAA4B;iBACnD,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;iBACvC,KAAK,CAAC,mBAAmB,CAAC,CAAA;YAE7B,MAAM,oBAAoB,GAAG,MAAM,gDAAkC;iBAClE,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;iBACvC,KAAK,CAAC,mBAAmB,CAAC,CAAA;YAE7B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,cAAc,CACzC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EACnB,GAAG,CAAC,MAAO,EACX,IAAI,CAAC,GAAG,CACT,CAAA;YAED,OAAO,MAAM,CAAC,0BAA0B,CACtC,WAAW,EACX,oBAAoB,EACpB,OAAO,CACR,CAAA;QACH,CAAC,EAAE,GAAG,CAAC,CACR,CAAA;QAED,4DAA4D;QAC5D,yEAAyE;QACzE,gEAAgE;QAChE,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,aAAa,CAAC,CAAA;QAC3C,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACpC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;QAC1B,CAAC,CAAC,CAAA;QAEF,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,aAAa,CAAC,CAAA;QAC7C,MAAM,CAAC,IAAI,CACT,cAAc,EACd,WAAW,CAAC,KAAK,WAAW,GAAG,EAAE,IAAI;YACnC,MAAM,OAAO,GAAG,MAAM,IAAA,2BAAgB,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAA;YAEnE,MAAM,WAAW,GAAG,MAAM,0CAA4B;iBACnD,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;iBACvC,KAAK,CAAC,kBAAkB,CAAC,CAAA;YAE5B,MAAM,YAAY,GAAG,MAAM,qCAAuB;iBAC/C,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;iBACvC,KAAK,CAAC,iBAAiB,CAAC,CAAA;YAE3B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,cAAc,CACzC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EACnB,GAAG,CAAC,MAAO,EACX,IAAI,CAAC,GAAG,CACT,CAAA;YAED,OAAO,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,CAAA;QACzD,CAAC,CAAC,CACH,CAAA;QAED,MAAM,CAAC,OAAO,CAAC,eAAe,EAAE,aAAa,CAAC,CAAA;QAC9C,MAAM,CAAC,IAAI,CACT,eAAe,EACf,WAAW,CAAC,KAAK,WAAW,GAAG,EAAE,GAAG;YAClC,MAAM,OAAO,GAAG,MAAM,IAAA,2BAAgB,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAA;YAEnE,MAAM,mBAAmB,GAAG,MAAM,4CAA8B;iBAC7D,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;iBACvC,KAAK,CAAC,mBAAmB,CAAC,CAAA;YAE7B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;YAC1C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,wBAAwB,CAAC,CAAA;YACpD,CAAC;QACH,CAAC,CAAC,CACH,CAAA;QAED,MAAM,CAAC,OAAO,CAAC,eAAe,EAAE,aAAa,CAAC,CAAA;QAC9C,MAAM,CAAC,GAAG,CACR,eAAe,EACf,iBAAiB,CAAC,KAAK,WAAW,GAAG,EAAE,GAAG;YACxC,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;YAEvD,MAAM,mBAAmB,GAAG,MAAM,4CAA8B;iBAC7D,UAAU,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;iBACtC,KAAK,CAAC,mBAAmB,CAAC,CAAA;YAE7B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;YAC1C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,wBAAwB,CAAC,CAAA;YACpD,CAAC;YAED,0CAA0C;YAC1C,4DAA4D;YAE5D,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAA;QACH,CAAC,CAAC,CACH,CAAA;QAED,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,WAAW,CAAC,KAAK,WAAW,GAAG,EAAE,IAAI;YACnC,MAAM,OAAO,GAAG,MAAM,IAAA,2BAAgB,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAA;YAEnE,MAAM,WAAW,GAAG,MAAM,0CAA4B;iBACnD,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;iBACvC,KAAK,CAAC,mBAAmB,CAAC,CAAA;YAE7B,MAAM,mBAAmB,GAAG,MAAM,4CAA8B;iBAC7D,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;iBACvC,KAAK,CAAC,mBAAmB,CAAC,CAAA;YAE7B,OAAO,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAA;QAC5D,CAAC,CAAC,CACH,CAAA;QAED,mCAAmC;QAEnC,MAAM,CAAC,GAAG,CAAC,IAAA,gDAAyB,GAAE,CAAC,CAAA;QAEvC,MAAM,CAAC,GAAG,CACR,kBAAkB,EAClB,iBAAiB,CAAC,KAAK,WAAW,GAAG,EAAE,GAAG;YACxC,IAAA,4BAAiB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAA;YAEnD,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;YAEvD,MAAM,WAAW,GAAG,MAAM,0CAA4B;iBACnD,UAAU,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;iBACrC,KAAK,CAAC,mBAAmB,CAAC,CAAA;YAE7B,IAAI,eAAe,IAAI,WAAW,EAAE,CAAC;gBACnC,MAAM,IAAI,8CAAmB,CAAC,oCAAoC,CAAC,CAAA;YACrE,CAAC;YAED,MAAM,oBAAoB,GAAG,MAAM,kDAAoC;iBACpE,UAAU,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;iBACtC,KAAK,CAAC,mBAAmB,CAAC,CAAA;YAE7B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YAEvD,MAAM,IAAI,GAAG,MAAM,MAAM;iBACtB,SAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,oBAAoB,CAAC;iBACtD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,6BAA6B,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;YAE/D,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC;oBACxB,OAAO,IAAA,kDAAqB,EAAC,GAAG,EAAE,IAAI,CAAC,CAAA;gBACzC,CAAC;gBACD,KAAK,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC;oBACzB,MAAM,IAAA,yBAAc,EAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;oBAC9D,OAAO,aAAa,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;gBACnD,CAAC;gBACD,OAAO,CAAC,CAAC,CAAC;oBACR,sBAAsB;oBACtB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;gBACpD,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CACH,CAAA;QAED,MAAM,mBAAmB,GAAG,aAAC,CAAC,MAAM,CAAC;YACnC,UAAU,EAAE,aAAC,CAAC,MAAM,EAAE;YACtB,WAAW,EAAE,iCAAgB;YAC7B,SAAS,EAAE,6BAAc;YACzB,WAAW,EAAE,0CAAuB;SACrC,CAAC,CAAA;QAEF,MAAM,CAAC,OAAO,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAA;QACzD,MAAM,CAAC,IAAI,CACT,0BAA0B,EAC1B,WAAW,CAAC,KAAK,WAAW,GAAG,EAAE,GAAG;YAClC,IAAA,4BAAiB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,CAAA;YAC5C,IAAA,4BAAiB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,CAAA;YAC5C,IAAA,6BAAkB,EAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAA;YAE1C,MAAM,OAAO,GAAG,MAAM,IAAA,2BAAgB,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;YACrD,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,OAAO,EAAE;gBAC1D,IAAI,EAAE,CAAC,MAAM,CAAC;aACf,CAAC,CAAA;YAEF,IAAA,0BAAe,EAAC,GAAG,EAAE,GAAG,EAAE;gBACxB,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,kBAAkB;aAC7B,CAAC,CAAA;YACF,IAAA,4BAAiB,EACf,GAAG,EACH,GAAG,EACH,KAAK,CAAC,UAAU,EAChB,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAC9B,CAAA;YAED,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YAE7D,OAAO,MAAM,CAAC,MAAM,CAClB,QAAQ,EACR,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,WAAW,CAClB,CAAA;QACH,CAAC,CAAC,CACH,CAAA;QAED,MAAM,iBAAiB,GAAG,aAAC,CAAC,MAAM,CAAC;YACjC,UAAU,EAAE,aAAC,CAAC,MAAM,EAAE;YACtB,WAAW,EAAE,iCAAgB;YAC7B,SAAS,EAAE,6BAAc;YACzB,WAAW,EAAE,aAAC,CAAC,MAAM,EAAE;SACxB,CAAC,CAAA;QAEF,0EAA0E;QAC1E,2EAA2E;QAC3E,kCAAkC;QAClC,8BAA8B;QAC9B,2BAA2B;QAC3B,yCAAyC;QACzC,yCAAyC;QACzC,iEAAiE;QACjE,8CAA8C;QAC9C,MAAM,CAAC,GAAG,CACR,yBAAyB,EACzB,iBAAiB,CAAC,KAAK,WAAW,GAAG,EAAE,GAAG;YACxC,IAAA,4BAAiB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,CAAA;YAE5C,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;YACvD,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,KAAK,EAAE;gBACtD,IAAI,EAAE,CAAC,OAAO,CAAC;aAChB,CAAC,CAAA;YAEF,IAAA,0BAAe,EAAC,GAAG,EAAE,GAAG,EAAE;gBACxB,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,kBAAkB;gBAC5B,YAAY,EAAE;oBACZ,CAAC,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC;oBAClC,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC;iBAC/B;aACF,CAAC,CAAA;YACF,IAAA,4BAAiB,EACf,GAAG,EACH,GAAG,EACH,KAAK,CAAC,UAAU,EAChB,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,EAC7B,IAAI,CACL,CAAA;YAED,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YAEvD,MAAM,IAAI,GAAG,MAAM,MAAM;iBACtB,aAAa,CACZ,QAAQ,EACR,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,WAAW,CAClB;iBACA,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,6BAA6B,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;YAE/D,OAAO,MAAM,IAAA,kDAAqB,EAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QAC/C,CAAC,CAAC,CACH,CAAA;QAED,MAAM,iBAAiB,GAAG,aAAC,CAAC,MAAM,CAAC;YACjC,UAAU,EAAE,aAAC,CAAC,MAAM,EAAE;YACtB,WAAW,EAAE,iCAAgB;YAC7B,SAAS,EAAE,6BAAc;SAC1B,CAAC,CAAA;QAEF,0EAA0E;QAC1E,2EAA2E;QAC3E,kCAAkC;QAClC,8BAA8B;QAC9B,2BAA2B;QAC3B,yCAAyC;QACzC,yCAAyC;QACzC,iEAAiE;QACjE,8CAA8C;QAC9C,MAAM,CAAC,GAAG,CACR,yBAAyB,EACzB,iBAAiB,CAAC,KAAK,WAAW,GAAG,EAAE,GAAG;YACxC,IAAA,4BAAiB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,CAAA;YAE5C,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;YACvD,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,KAAK,EAAE;gBACtD,IAAI,EAAE,CAAC,OAAO,CAAC;aAChB,CAAC,CAAA;YAEF,IAAA,0BAAe,EAAC,GAAG,EAAE,GAAG,EAAE;gBACxB,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,kBAAkB;gBAC5B,YAAY,EAAE;oBACZ,CAAC,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC;oBAClC,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC;iBAC/B;aACF,CAAC,CAAA;YACF,IAAA,4BAAiB,EACf,GAAG,EACH,GAAG,EACH,KAAK,CAAC,UAAU,EAChB,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,EAC7B,IAAI,CACL,CAAA;YAED,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YAEvD,MAAM,IAAI,GAAG,MAAM,MAAM;iBACtB,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC;iBAC3D,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,6BAA6B,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;YAE/D,OAAO,MAAM,IAAA,kDAAqB,EAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QAC/C,CAAC,CAAC,CACH,CAAA;QAED,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AA9vCD,sCA8vCC;AAED,SAAS,iBAAiB,CAAC,GAAY;IACrC,MAAM,IAAI,0CAAiB,CACzB,sBAAsB,CAAC,GAAG,CAAC,IAAI,eAAe,EAC9C,GAAG,CACJ,CAAA;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAY;IACtC,MAAM,IAAI,4CAAkB,CAC1B,sBAAsB,CAAC,GAAG,CAAC,IAAI,8BAA8B,EAC7D,GAAG,CACJ,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAY;IACvC,MAAM,IAAI,8CAAmB,CAC3B,sBAAsB,CAAC,GAAG,CAAC,IAAI,wBAAwB,EACvD,GAAG,CACJ,CAAA;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,GAAY;IAC1C,IAAI,GAAG,YAAY,cAAQ,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;YACvB,6CAA6C;YAC7C,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAA;YAClC,OAAO,kBAAkB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,sBAAsB,KAAK,CAAC,OAAO,EAAE,CAAA;QACvF,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { ServerResponse } from 'node:http';
2
2
  import { BuildDocumentOptions, Html } from '../lib/html/index.js';
3
+ import { WriteResponseOptions } from '../lib/http/response.js';
3
4
  export declare function declareBackendData(name: string, data: unknown): Html;
4
- export declare function sendWebPage(res: ServerResponse, { status, ...options }: BuildDocumentOptions & {
5
- status?: number;
6
- }): Promise<void>;
5
+ export type SendWebPageOptions = BuildDocumentOptions & WriteResponseOptions;
6
+ export declare function sendWebPage(res: ServerResponse, options: SendWebPageOptions): Promise<void>;
7
7
  //# sourceMappingURL=send-web-page.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"send-web-page.d.ts","sourceRoot":"","sources":["../../src/output/send-web-page.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAE1C,OAAO,EAGL,oBAAoB,EACpB,IAAI,EAEL,MAAM,sBAAsB,CAAA;AAG7B,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,QAM7D;AAED,wBAAsB,WAAW,CAC/B,GAAG,EAAE,cAAc,EACnB,EAAE,MAAY,EAAE,GAAG,OAAO,EAAE,EAAE,oBAAoB,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACvE,OAAO,CAAC,IAAI,CAAC,CAiCf"}
1
+ {"version":3,"file":"send-web-page.d.ts","sourceRoot":"","sources":["../../src/output/send-web-page.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAE1C,OAAO,EAGL,oBAAoB,EACpB,IAAI,EAEL,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAa,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAEzE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,QAM7D;AAED,MAAM,MAAM,kBAAkB,GAAG,oBAAoB,GAAG,oBAAoB,CAAA;AAE5E,wBAAsB,WAAW,CAC/B,GAAG,EAAE,cAAc,EACnB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAiCf"}
@@ -12,7 +12,7 @@ function declareBackendData(name, data) {
12
12
  // "readBackendData" in "src/assets/app/backend-data.ts".
13
13
  return (0, index_js_1.js) `window[${name}]=${data};document.currentScript.remove();`;
14
14
  }
15
- async function sendWebPage(res, { status = 200, ...options }) {
15
+ async function sendWebPage(res, options) {
16
16
  // @TODO: make these headers configurable (?)
17
17
  res.setHeader('Permissions-Policy', 'otp-credentials=*, document-domain=()');
18
18
  res.setHeader('Cross-Origin-Embedder-Policy', 'credentialless');
@@ -35,7 +35,7 @@ async function sendWebPage(res, { status = 200, ...options }) {
35
35
  `upgrade-insecure-requests`,
36
36
  ].join('; '));
37
37
  const html = (0, index_js_1.buildDocument)(options);
38
- return (0, response_js_1.writeHtml)(res, html.toString(), status);
38
+ return (0, response_js_1.writeHtml)(res, html.toString(), options);
39
39
  }
40
40
  function assetToHash(asset) {
41
41
  return asset instanceof index_js_1.Html
@@ -1 +1 @@
1
- {"version":3,"file":"send-web-page.js","sourceRoot":"","sources":["../../src/output/send-web-page.ts"],"names":[],"mappings":";;AAYA,gDAMC;AAED,kCAoCC;AAxDD,6CAAwC;AAGxC,mDAM6B;AAC7B,yDAAmD;AAEnD,SAAgB,kBAAkB,CAAC,IAAY,EAAE,IAAa;IAC5D,8EAA8E;IAC9E,8EAA8E;IAC9E,8DAA8D;IAC9D,yDAAyD;IACzD,OAAO,IAAA,aAAE,EAAA,UAAU,IAAI,KAAK,IAAI,mCAAmC,CAAA;AACrE,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,GAAmB,EACnB,EAAE,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,EAA8C;IAExE,6CAA6C;IAC7C,GAAG,CAAC,SAAS,CAAC,oBAAoB,EAAE,uCAAuC,CAAC,CAAA;IAC5E,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,gBAAgB,CAAC,CAAA;IAC/D,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,aAAa,CAAC,CAAA;IAC5D,GAAG,CAAC,SAAS,CAAC,4BAA4B,EAAE,aAAa,CAAC,CAAA;IAC1D,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAA;IAC/C,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAA;IACxC,GAAG,CAAC,SAAS,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAA;IAClD,GAAG,CAAC,SAAS,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAA;IACtC,GAAG,CAAC,SAAS,CAAC,2BAA2B,EAAE,kBAAkB,CAAC,CAAA;IAC9D,GAAG,CAAC,SAAS,CACX,yBAAyB,EACzB;QACE,oBAAoB;QACpB,wBAAwB;QACxB,oBAAoB;QACpB,YAAY,OAAO,CAAC,IAAI,EAAE,MAAM,IAAI,QAAQ,EAAE;QAC9C,qBACE,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EACpE,EAAE;QACF,oBACE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EACnE,EAAE;QACF,6BAA6B;QAC7B,oBAAoB;QACpB,2BAA2B;KAC5B,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAA;IAED,MAAM,IAAI,GAAG,IAAA,wBAAa,EAAC,OAAO,CAAC,CAAA;IAEnC,OAAO,IAAA,uBAAS,EAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAA;AAChD,CAAC;AAED,SAAS,WAAW,CAAC,KAAsB;IACzC,OAAO,KAAK,YAAY,eAAI;QAC1B,CAAC,CAAC,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAA;AAClB,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,WAAW,IAAI,GAAG,CAAA;AAC3B,CAAC"}
1
+ {"version":3,"file":"send-web-page.js","sourceRoot":"","sources":["../../src/output/send-web-page.ts"],"names":[],"mappings":";;AAYA,gDAMC;AAID,kCAoCC;AA1DD,6CAAwC;AAGxC,mDAM6B;AAC7B,yDAAyE;AAEzE,SAAgB,kBAAkB,CAAC,IAAY,EAAE,IAAa;IAC5D,8EAA8E;IAC9E,8EAA8E;IAC9E,8DAA8D;IAC9D,yDAAyD;IACzD,OAAO,IAAA,aAAE,EAAA,UAAU,IAAI,KAAK,IAAI,mCAAmC,CAAA;AACrE,CAAC;AAIM,KAAK,UAAU,WAAW,CAC/B,GAAmB,EACnB,OAA2B;IAE3B,6CAA6C;IAC7C,GAAG,CAAC,SAAS,CAAC,oBAAoB,EAAE,uCAAuC,CAAC,CAAA;IAC5E,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,gBAAgB,CAAC,CAAA;IAC/D,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,aAAa,CAAC,CAAA;IAC5D,GAAG,CAAC,SAAS,CAAC,4BAA4B,EAAE,aAAa,CAAC,CAAA;IAC1D,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAA;IAC/C,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAA;IACxC,GAAG,CAAC,SAAS,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAA;IAClD,GAAG,CAAC,SAAS,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAA;IACtC,GAAG,CAAC,SAAS,CAAC,2BAA2B,EAAE,kBAAkB,CAAC,CAAA;IAC9D,GAAG,CAAC,SAAS,CACX,yBAAyB,EACzB;QACE,oBAAoB;QACpB,wBAAwB;QACxB,oBAAoB;QACpB,YAAY,OAAO,CAAC,IAAI,EAAE,MAAM,IAAI,QAAQ,EAAE;QAC9C,qBACE,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EACpE,EAAE;QACF,oBACE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EACnE,EAAE;QACF,6BAA6B;QAC7B,oBAAoB;QACpB,2BAA2B;KAC5B,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAA;IAED,MAAM,IAAI,GAAG,IAAA,wBAAa,EAAC,OAAO,CAAC,CAAA;IAEnC,OAAO,IAAA,uBAAS,EAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAA;AACjD,CAAC;AAED,SAAS,WAAW,CAAC,KAAsB;IACzC,OAAO,KAAK,YAAY,eAAI;QAC1B,CAAC,CAAC,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAA;AAClB,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,WAAW,IAAI,GAAG,CAAA;AAC3B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atproto/oauth-provider",
3
- "version": "0.2.6",
3
+ "version": "0.2.7",
4
4
  "license": "MIT",
5
5
  "description": "Generic OAuth2 and OpenID Connect provider for Node.js. Currently only supports features needed for Atproto.",
6
6
  "keywords": [
@@ -41,6 +41,6 @@ export function authorizeAssetsMiddleware(): Middleware {
41
41
  res.setHeader('Cache-Control', 'public, max-age=31536000, immutable')
42
42
  }
43
43
 
44
- await writeStream(res, asset.createStream(), asset.type)
44
+ writeStream(res, asset.createStream(), { contentType: asset.type })
45
45
  }
46
46
  }
@@ -39,6 +39,7 @@ type View<
39
39
  * }
40
40
  * )
41
41
  * )
42
+ * ```
42
43
  */
43
44
  export function acceptMiddleware<
44
45
  D,
@@ -95,7 +95,7 @@ export function createFinalHandler(
95
95
  res.setHeader('Content-Security-Policy', "default-src 'none'")
96
96
  res.setHeader('X-Content-Type-Options', 'nosniff')
97
97
 
98
- writeJson(res, payload, status)
98
+ writeJson(res, payload, { status })
99
99
  }
100
100
  }
101
101
 
@@ -1,6 +1,4 @@
1
- import { PassThrough, Readable, Transform } from 'node:stream'
2
- import { pipeline } from 'node:stream/promises'
3
- import { constants, createBrotliCompress, createGzip } from 'node:zlib'
1
+ import { Readable, pipeline } from 'node:stream'
4
2
 
5
3
  import { Handler, ServerResponse } from './types.js'
6
4
 
@@ -26,108 +24,69 @@ export function writeRedirect(
26
24
  res.writeHead(status, { Location: url }).end()
27
25
  }
28
26
 
29
- function negotiateEncoding(accept?: string | string[]) {
30
- if (accept?.includes('br')) return 'br'
31
- if (accept?.includes('gzip')) return 'gzip'
32
- return 'identity'
27
+ export type WriteResponseOptions = {
28
+ status?: number
29
+ contentType?: string
33
30
  }
34
31
 
35
- function getEncoder(encoding: string): Transform {
36
- switch (encoding) {
37
- case 'br':
38
- return createBrotliCompress({
39
- // Default quality is too slow
40
- params: { [constants.BROTLI_PARAM_QUALITY]: 5 },
41
- })
42
- case 'gzip':
43
- return createGzip()
44
- case 'identity':
45
- return new PassThrough()
46
- default:
47
- throw new Error(`Unsupported encoding: ${encoding}`)
48
- }
49
- }
50
-
51
- const ifString = (value: unknown): string | undefined =>
52
- typeof value === 'string' ? value : undefined
53
-
54
- export async function writeStream(
32
+ export function writeStream(
55
33
  res: ServerResponse,
56
34
  stream: Readable,
57
- contentType = ifString((stream as any).headers?.['content-type']) ||
58
- 'application/octet-stream',
59
- status = 200,
60
- ): Promise<void> {
35
+ {
36
+ status = 200,
37
+ contentType = 'application/octet-stream',
38
+ }: WriteResponseOptions = {},
39
+ ): void {
61
40
  res.statusCode = status
62
41
  res.setHeader('content-type', contentType)
63
- appendHeader(res, 'vary', 'accept-encoding')
64
-
65
- const encoding = negotiateEncoding(res.req.headers['accept-encoding'])
66
-
67
- res.setHeader('content-encoding', encoding)
68
- res.setHeader('transfer-encoding', 'chunked')
69
42
 
70
43
  if (res.req.method === 'HEAD') {
71
44
  res.end()
72
45
  stream.destroy()
73
- return
74
- }
75
-
76
- try {
77
- await pipeline(stream, getEncoder(encoding), res)
78
- } catch (err) {
79
- // Prevent the socket from being left open in a bad state
80
- res.socket?.destroy()
81
-
82
- if (err != null && typeof err === 'object') {
83
- // If an abort signal is used, we can consider this function's job successful
84
- if ('name' in err && err.name === 'AbortError') return
85
-
86
- // If the client closes the connection, we don't care about the error
87
- if ('code' in err && err.code === 'ERR_STREAM_PREMATURE_CLOSE') return
88
- }
89
-
90
- throw err
46
+ } else {
47
+ pipeline([stream, res], (_err: Error | null) => {
48
+ // The error will be propagated through the streams
49
+ })
91
50
  }
92
51
  }
93
52
 
94
- export async function writeBuffer(
53
+ export function writeBuffer(
95
54
  res: ServerResponse,
96
- buffer: Buffer,
97
- contentType?: string,
98
- status = 200,
99
- ): Promise<void> {
100
- const stream = Readable.from([buffer])
101
- return writeStream(res, stream, contentType, status)
55
+ chunk: string | Buffer,
56
+ {
57
+ status = 200,
58
+ contentType = 'application/octet-stream',
59
+ }: WriteResponseOptions = {},
60
+ ): void {
61
+ res.statusCode = status
62
+ res.setHeader('content-type', contentType)
63
+ res.end(chunk)
102
64
  }
103
65
 
104
- export async function writeJson(
66
+ export function writeJson(
105
67
  res: ServerResponse,
106
68
  payload: unknown,
107
- status = 200,
108
- contentType = 'application/json',
109
- ): Promise<void> {
69
+ { contentType = 'application/json', ...options }: WriteResponseOptions = {},
70
+ ): void {
110
71
  const buffer = Buffer.from(JSON.stringify(payload))
111
- return writeBuffer(res, buffer, contentType, status)
72
+ writeBuffer(res, buffer, { ...options, contentType })
112
73
  }
113
74
 
114
- export function staticJsonHandler(
75
+ export function staticJsonMiddleware(
115
76
  value: unknown,
116
- contentType = 'application/json',
117
- status = 200,
77
+ { contentType = 'application/json', ...options }: WriteResponseOptions = {},
118
78
  ): Handler<unknown> {
119
79
  const buffer = Buffer.from(JSON.stringify(value))
120
- return function (req, res, next) {
121
- void writeBuffer(res, buffer, contentType, status).catch(next)
80
+ const staticOptions: WriteResponseOptions = { ...options, contentType }
81
+ return function (req, res) {
82
+ writeBuffer(res, buffer, staticOptions)
122
83
  }
123
84
  }
124
85
 
125
- export async function writeHtml(
86
+ export function writeHtml(
126
87
  res: ServerResponse,
127
88
  html: Buffer | string,
128
- status = 200,
129
- contentType = 'text/html',
130
- ): Promise<void> {
131
- const buffer = Buffer.isBuffer(html) ? html : Buffer.from(html)
132
- return writeBuffer(res, buffer, contentType, status)
89
+ { contentType = 'text/html', ...options }: WriteResponseOptions = {},
90
+ ): void {
91
+ writeBuffer(res, html, { ...options, contentType })
133
92
  }
@@ -29,6 +29,8 @@ import {
29
29
  oauthTokenIdentificationSchema,
30
30
  oauthTokenRequestSchema,
31
31
  } from '@atproto/oauth-types'
32
+ import { mediaType } from '@hapi/accept'
33
+ import createHttpError from 'http-errors'
32
34
  import type { Redis, RedisOptions } from 'ioredis'
33
35
  import z, { ZodError } from 'zod'
34
36
 
@@ -75,7 +77,7 @@ import {
75
77
  combineMiddlewares,
76
78
  parseHttpRequest,
77
79
  setupCsrfToken,
78
- staticJsonHandler,
80
+ staticJsonMiddleware,
79
81
  validateCsrfToken,
80
82
  validateFetchDest,
81
83
  validateFetchMode,
@@ -1028,7 +1030,7 @@ export class OAuthProvider extends OAuthVerifier {
1028
1030
  res.setHeader('Cache-Control', 'max-age=300')
1029
1031
  next()
1030
1032
  },
1031
- staticJsonHandler(json),
1033
+ staticJsonMiddleware(json),
1032
1034
  ])
1033
1035
 
1034
1036
  /**
@@ -1056,9 +1058,18 @@ export class OAuthProvider extends OAuthVerifier {
1056
1058
  }
1057
1059
 
1058
1060
  try {
1061
+ // Ensure we can agree on a content encoding & type before starting to
1062
+ // build the JSON response.
1063
+ if (!mediaType(req.headers['accept'], ['application/json'])) {
1064
+ throw createHttpError(406, 'Unsupported media type')
1065
+ }
1066
+
1059
1067
  const result = await buildJson.call(this, req, res)
1060
- if (result !== undefined) writeJson(res, result, status)
1061
- else if (!res.headersSent) res.writeHead(status ?? 204).end()
1068
+ if (result !== undefined) {
1069
+ writeJson(res, result, { status })
1070
+ } else if (!res.headersSent) {
1071
+ res.writeHead(status ?? 204).end()
1072
+ }
1062
1073
  } catch (err) {
1063
1074
  if (!res.headersSent) {
1064
1075
  if (err instanceof WWWAuthenticateError) {
@@ -1067,7 +1078,9 @@ export class OAuthProvider extends OAuthVerifier {
1067
1078
  res.appendHeader('Access-Control-Expose-Headers', name)
1068
1079
  }
1069
1080
 
1070
- writeJson(res, buildErrorPayload(err), buildErrorStatus(err))
1081
+ const payload = buildErrorPayload(err)
1082
+ const status = buildErrorStatus(err)
1083
+ writeJson(res, payload, { status })
1071
1084
  } else {
1072
1085
  res.destroy()
1073
1086
  }
@@ -1096,11 +1109,6 @@ export class OAuthProvider extends OAuthVerifier {
1096
1109
  validateSameOrigin(req, res, issuerOrigin)
1097
1110
 
1098
1111
  await handler.call(this, req, res)
1099
-
1100
- // Should never happen (fool proofing)
1101
- if (!res.headersSent) {
1102
- throw new Error('Navigation handler did not send a response')
1103
- }
1104
1112
  } catch (err) {
1105
1113
  onError?.(
1106
1114
  req,
@@ -8,7 +8,7 @@ import {
8
8
  Html,
9
9
  js,
10
10
  } from '../lib/html/index.js'
11
- import { writeHtml } from '../lib/http/response.js'
11
+ import { writeHtml, WriteResponseOptions } from '../lib/http/response.js'
12
12
 
13
13
  export function declareBackendData(name: string, data: unknown) {
14
14
  // The script tag is removed after the data is assigned to the global variable
@@ -18,9 +18,11 @@ export function declareBackendData(name: string, data: unknown) {
18
18
  return js`window[${name}]=${data};document.currentScript.remove();`
19
19
  }
20
20
 
21
+ export type SendWebPageOptions = BuildDocumentOptions & WriteResponseOptions
22
+
21
23
  export async function sendWebPage(
22
24
  res: ServerResponse,
23
- { status = 200, ...options }: BuildDocumentOptions & { status?: number },
25
+ options: SendWebPageOptions,
24
26
  ): Promise<void> {
25
27
  // @TODO: make these headers configurable (?)
26
28
  res.setHeader('Permissions-Policy', 'otp-credentials=*, document-domain=()')
@@ -53,7 +55,7 @@ export async function sendWebPage(
53
55
 
54
56
  const html = buildDocument(options)
55
57
 
56
- return writeHtml(res, html.toString(), status)
58
+ return writeHtml(res, html.toString(), options)
57
59
  }
58
60
 
59
61
  function assetToHash(asset: Html | AssetRef): string {