@maravilla-labs/adapter-core 4.0.0 → 4.1.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAgD5F;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAKvF"}
1
+ {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAwD5F;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAKvF"}
package/dist/bundle.js CHANGED
@@ -15,6 +15,13 @@ export async function bundleServerEntry(options) {
15
15
  platform: 'neutral',
16
16
  format: 'esm',
17
17
  target: 'es2022',
18
+ supported: {
19
+ // The Rust runtime loads bundles with `JsRuntime::execute_script()` and
20
+ // wraps them in a classic function. Lower any `import.meta` expression
21
+ // not covered by the explicit defines below so the emitted bundle stays
22
+ // valid script code after wrapping.
23
+ 'import-meta': false,
24
+ },
18
25
  mainFields: ['module', 'main'],
19
26
  conditions: ['worker', 'webworker'],
20
27
  external: [
@@ -26,6 +33,7 @@ export async function bundleServerEntry(options) {
26
33
  'process.env.NODE_ENV': '"production"',
27
34
  // Replace import.meta.* at bundle time since our runtime wraps
28
35
  // bundles in an IIFE (not an ES module), making import.meta illegal.
36
+ 'import.meta.url': '"file:///bundle.js"',
29
37
  'import.meta.env.DEV': 'false',
30
38
  'import.meta.env.PROD': 'true',
31
39
  'import.meta.env.SSR': 'true',
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.js","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAAsB;IAC5D,MAAM,EACJ,UAAU,EACV,OAAO,EACP,QAAQ,GAAG,EAAE,EACb,MAAM,GAAG,EAAE,EACX,MAAM,GAAG,IAAI,EACb,WAAW,GAAG,KAAK,EACnB,KAAK,GACN,GAAG,OAAO,CAAC;IAEZ,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC;QACjC,WAAW,EAAE,CAAC,UAAU,CAAC;QACzB,OAAO;QACP,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC9B,UAAU,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC;QACnC,QAAQ,EAAE;YACR,GAAG,QAAQ;YACX,qBAAqB;SACtB;QACD,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,MAAM,EAAE;YACN,sBAAsB,EAAE,cAAc;YACtC,+DAA+D;YAC/D,qEAAqE;YACrE,qBAAqB,EAAE,OAAO;YAC9B,sBAAsB,EAAE,MAAM;YAC9B,qBAAqB,EAAE,MAAM;YAC7B,iBAAiB,EAAE,WAAW;YAC9B,oCAAoC;YACpC,qBAAqB,EAAE,MAAM;YAC7B,uBAAuB,EAAE,OAAO;YAChC,yCAAyC,EAAE,OAAO;YAClD,GAAG,MAAM;SACV;QACD,MAAM;QACN,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,MAAM;QAChB,SAAS,EAAE,IAAI;QACf,WAAW;KACZ,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAA2B;IAC7D,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,OAAO,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"bundle.js","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAAsB;IAC5D,MAAM,EACJ,UAAU,EACV,OAAO,EACP,QAAQ,GAAG,EAAE,EACb,MAAM,GAAG,EAAE,EACX,MAAM,GAAG,IAAI,EACb,WAAW,GAAG,KAAK,EACnB,KAAK,GACN,GAAG,OAAO,CAAC;IAEZ,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC;QACjC,WAAW,EAAE,CAAC,UAAU,CAAC;QACzB,OAAO;QACP,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,QAAQ;QAChB,SAAS,EAAE;YACT,wEAAwE;YACxE,uEAAuE;YACvE,wEAAwE;YACxE,oCAAoC;YACpC,aAAa,EAAE,KAAK;SACrB;QACD,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC9B,UAAU,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC;QACnC,QAAQ,EAAE;YACR,GAAG,QAAQ;YACX,qBAAqB;SACtB;QACD,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,MAAM,EAAE;YACN,sBAAsB,EAAE,cAAc;YACtC,+DAA+D;YAC/D,qEAAqE;YACrE,iBAAiB,EAAE,qBAAqB;YACxC,qBAAqB,EAAE,OAAO;YAC9B,sBAAsB,EAAE,MAAM;YAC9B,qBAAqB,EAAE,MAAM;YAC7B,iBAAiB,EAAE,WAAW;YAC9B,oCAAoC;YACpC,qBAAqB,EAAE,MAAM;YAC7B,uBAAuB,EAAE,OAAO;YAChC,yCAAyC,EAAE,OAAO;YAClD,GAAG,MAAM;SACV;QACD,MAAM;QACN,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,MAAM;QAChB,SAAS,EAAE,IAAI;QACf,WAAW;KACZ,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAA2B;IAC7D,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,OAAO,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { AuthConfigBlock, DatabaseConfigBlock, DocumentIndexDeclaration, StudioConfigBlock } from './types.js';
1
+ import type { AuthConfigBlock, DatabaseConfigBlock, DocumentIndexDeclaration, StudioConfigBlock, RealtimeConfigBlock, SecurityConfigBlock, ProxyConfigBlock } from './types.js';
2
2
  import type { TransformsConfig } from './transforms/index.js';
3
3
  export interface MaravillaConfig {
4
4
  auth?: AuthConfigBlock;
@@ -17,6 +17,23 @@ export interface MaravillaConfig {
17
17
  * `crates/dev-server/src/config_loader.rs`'s `StudioConfig`.
18
18
  */
19
19
  studio?: StudioConfigBlock;
20
+ /**
21
+ * Realtime settings — today which channels keep a replayable message history.
22
+ * Mirrors `RealtimeConfigBlock` in `packages/platform/src/config.ts`.
23
+ */
24
+ realtime?: RealtimeConfigBlock;
25
+ /**
26
+ * Security settings — today the extra origins allowed to frame this site.
27
+ * Mirrors `SecurityConfigBlock` in `packages/adapter-core/src/types.ts`.
28
+ */
29
+ security?: SecurityConfigBlock;
30
+ /**
31
+ * Reverse-proxy mounts — paths served by forwarding to an external origin.
32
+ * Mirrors `ProxyConfigBlock` in `packages/adapter-core/src/types.ts` and the
33
+ * Rust `ProxyManifest` in
34
+ * `crates/server-integration/src/manifest/proxy.rs`.
35
+ */
36
+ proxy?: ProxyConfigBlock;
20
37
  }
21
38
  export interface OAuthProviderDefinition {
22
39
  enabled: boolean;
@@ -47,4 +64,5 @@ export declare class ConfigError extends Error {
47
64
  export declare function loadMaravillaConfig(projectRoot: string): Promise<LoadResult>;
48
65
  export declare function normalizeDocumentIndex(raw: unknown, file: string, path: string): DocumentIndexDeclaration;
49
66
  export type { AuthConfigBlock, DatabaseConfigBlock, DocumentIndexDeclaration, VectorIndexDeclaration, } from './types.js';
67
+ export declare function normalizeProxy(raw: unknown, file: string, field: string): ProxyConfigBlock;
50
68
  //# sourceMappingURL=config-loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../src/config-loader.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EAElB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAe9D,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B;;;;OAIG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AACD,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,SAAS,CAAC;IACzB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AACD,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAWjD,MAAM,WAAW,UAAU;IACzB,0EAA0E;IAC1E,MAAM,EAAE,eAAe,CAAC;IACxB,8EAA8E;IAC9E,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,qBAAa,WAAY,SAAQ,KAAK;aAGlB,IAAI,EAAE,MAAM,GAAG,IAAI;aACnB,KAAK,CAAC,EAAE,MAAM;gBAF9B,OAAO,EAAE,MAAM,EACC,IAAI,GAAE,MAAM,GAAG,IAAW,EAC1B,KAAK,CAAC,EAAE,MAAM,YAAA;CASjC;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAkBlF;AAkKD,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,wBAAwB,CAkC1B;AA8ND,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../src/config-loader.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAKjB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAe9D,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B;;;;OAIG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B;;;;;OAKG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AACD,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,SAAS,CAAC;IACzB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AACD,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAWjD,MAAM,WAAW,UAAU;IACzB,0EAA0E;IAC1E,MAAM,EAAE,eAAe,CAAC;IACxB,8EAA8E;IAC9E,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,qBAAa,WAAY,SAAQ,KAAK;aAGlB,IAAI,EAAE,MAAM,GAAG,IAAI;aACnB,KAAK,CAAC,EAAE,MAAM;gBAF9B,OAAO,EAAE,MAAM,EACC,IAAI,GAAE,MAAM,GAAG,IAAW,EAC1B,KAAK,CAAC,EAAE,MAAM,YAAA;CASjC;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAkBlF;AAoQD,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,wBAAwB,CAkC1B;AA8ND,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AA8WpB,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,gBAAgB,CAqB1F"}
@@ -162,6 +162,94 @@ function normalize(raw, file) {
162
162
  if (src.studio !== undefined) {
163
163
  out.studio = normalizeStudio(src.studio, file, 'studio');
164
164
  }
165
+ if (src.realtime !== undefined) {
166
+ out.realtime = normalizeRealtime(src.realtime, file, 'realtime');
167
+ }
168
+ if (src.security !== undefined) {
169
+ out.security = normalizeSecurity(src.security, file, 'security');
170
+ }
171
+ if (src.proxy !== undefined) {
172
+ out.proxy = normalizeProxy(src.proxy, file, 'proxy');
173
+ }
174
+ return out;
175
+ }
176
+ // ── Security normalization ──
177
+ //
178
+ // Validated here rather than passed through, because a malformed source is
179
+ // silent at every later layer: the manifest carries it, delivery unions it into
180
+ // the CSP, and the browser drops the whole `frame-ancestors` directive it
181
+ // cannot parse — which reads as "the platform ignored my setting", not as a
182
+ // typo. A path, a port-less scheme mismatch or a bare `*` are the common ones.
183
+ /**
184
+ * A CSP `frame-ancestors` source we accept: `'self'`, `'none'`, or an
185
+ * http(s) origin with an optional single leading `*.` label and no path.
186
+ * A bare `*` is rejected on purpose — it is almost never what the author
187
+ * means, and it cannot be narrowed later without breaking whoever relied on it.
188
+ */
189
+ function validateFrameAncestor(value, file, field) {
190
+ if (value === "'self'" || value === "'none'")
191
+ return value;
192
+ if (!/^https?:\/\//.test(value)) {
193
+ throw new ConfigError(`${field} must be 'self', 'none', or an https:// origin (got ${JSON.stringify(value)})`, file);
194
+ }
195
+ const rest = value.replace(/^https?:\/\//, '');
196
+ if (rest.includes('/')) {
197
+ throw new ConfigError(`${field} must be an origin with no path (got ${JSON.stringify(value)})`, file);
198
+ }
199
+ const host = rest.split(':')[0];
200
+ if (host === '*' || host.length === 0) {
201
+ throw new ConfigError(`${field} must name a host, not a bare wildcard`, file);
202
+ }
203
+ const labels = host.startsWith('*.') ? host.slice(2) : host;
204
+ if (labels.includes('*')) {
205
+ throw new ConfigError(`${field} allows at most one leading '*.' label (got ${JSON.stringify(value)})`, file);
206
+ }
207
+ return value;
208
+ }
209
+ function normalizeSecurity(raw, file, field) {
210
+ const obj = expectObject(raw, file, field);
211
+ const out = {};
212
+ if (obj.frameAncestors !== undefined) {
213
+ if (!Array.isArray(obj.frameAncestors)) {
214
+ throw new ConfigError(`${field}.frameAncestors must be an array of origins`, file);
215
+ }
216
+ out.frameAncestors = obj.frameAncestors.map((v, i) => {
217
+ if (typeof v !== 'string' || v.length === 0) {
218
+ throw new ConfigError(`${field}.frameAncestors[${i}] must be a non-empty string`, file);
219
+ }
220
+ return validateFrameAncestor(v, file, `${field}.frameAncestors[${i}]`);
221
+ });
222
+ }
223
+ return out;
224
+ }
225
+ // ── Realtime normalization ──
226
+ //
227
+ // Validated here rather than passed through, because a typo in `channels` is
228
+ // silent at every later layer: the manifest carries it, registration accepts it,
229
+ // and the only symptom is a replay that returns nothing.
230
+ function normalizeRealtime(raw, file, field) {
231
+ const obj = expectObject(raw, file, field);
232
+ const out = {};
233
+ if (obj.history !== undefined) {
234
+ const h = expectObject(obj.history, file, `${field}.history`);
235
+ if (!Array.isArray(h.channels)) {
236
+ throw new ConfigError(`${field}.history.channels must be an array of channel patterns`, file);
237
+ }
238
+ const channels = h.channels.map((c, i) => {
239
+ if (typeof c !== 'string' || c.length === 0) {
240
+ throw new ConfigError(`${field}.history.channels[${i}] must be a non-empty string`, file);
241
+ }
242
+ return c;
243
+ });
244
+ const history = { channels };
245
+ if (h.maxMessages !== undefined) {
246
+ if (typeof h.maxMessages !== 'number' || !Number.isFinite(h.maxMessages) || h.maxMessages < 0) {
247
+ throw new ConfigError(`${field}.history.maxMessages must be a non-negative number`, file);
248
+ }
249
+ history.maxMessages = h.maxMessages;
250
+ }
251
+ out.history = history;
252
+ }
165
253
  return out;
166
254
  }
167
255
  // ── Studio normalization ──
@@ -416,4 +504,334 @@ function errMsg(e) {
416
504
  return e.message;
417
505
  return String(e);
418
506
  }
507
+ // ── Proxy normalization ──
508
+ //
509
+ // A proxy mount is the one config block that can reach OUT of the platform, so
510
+ // it is validated hardest and at build time: a bad target here is not a broken
511
+ // page, it is a request the platform makes on the author's behalf. Two classes
512
+ // of mistake are caught rather than deployed:
513
+ //
514
+ // * a target naming a private or loopback address, which would turn a
515
+ // tenant-authored config into a request-forgery primitive against the
516
+ // platform's own internal APIs (delivery's `/_internal/*` listens on
517
+ // loopback). Delivery re-checks this at request time — including what the
518
+ // hostname actually resolves to — but a config that can never work should
519
+ // fail the build, not each request.
520
+ // * a mount that shadows a platform path (`/_auth/*`, `/_assets/*`, …), which
521
+ // would silently break login, assets or realtime for the whole site.
522
+ /**
523
+ * Path prefixes delivery owns. A mount may not claim any of them: the site's
524
+ * own login pages, asset serving, realtime sockets and health endpoints all
525
+ * live here, and a mount that swallowed one would break the site in a way whose
526
+ * cause is invisible from the app's own code.
527
+ */
528
+ const RESERVED_PROXY_PREFIXES = [
529
+ '/_assets', '/_auth', '/_rt', '/_push', '/_internal', '/_mcp', '/_queue',
530
+ '/health', '/stats', '/metrics', '/.well-known',
531
+ ];
532
+ /** Methods we will forward. Anything else is a config error, not a 405 at runtime. */
533
+ const PROXY_METHODS = new Set([
534
+ 'GET', 'HEAD', 'POST', 'PUT', 'PATCH', 'DELETE', 'OPTIONS',
535
+ ]);
536
+ /**
537
+ * Headers a mount may not set on the upstream request or on our response.
538
+ * These are either connection-scoped (the HTTP client owns them) or the
539
+ * proxy's own bookkeeping, and letting config forge them makes the hop
540
+ * unreadable — an upstream trusting `X-Forwarded-For` would trust whatever the
541
+ * config said instead of the real client.
542
+ */
543
+ const PROXY_FORBIDDEN_HEADERS = new Set([
544
+ 'host', 'connection', 'keep-alive', 'transfer-encoding', 'upgrade', 'te',
545
+ 'trailer', 'proxy-authorization', 'proxy-authenticate', 'content-length',
546
+ 'x-forwarded-for', 'x-forwarded-proto', 'x-forwarded-host',
547
+ ]);
548
+ /**
549
+ * Reject a target that names the platform's own network. Literal-IP checks
550
+ * cover the direct attempt; the hostname list covers the obvious names. A
551
+ * hostname that *resolves* into private space is caught by delivery at request
552
+ * time — that check cannot be done honestly here, since the build machine's
553
+ * DNS is not the server's.
554
+ */
555
+ function isPrivateHost(host) {
556
+ const h = host.toLowerCase();
557
+ if (h === 'localhost' || h.endsWith('.localhost') || h.endsWith('.local') || h.endsWith('.internal')) {
558
+ return true;
559
+ }
560
+ // IPv6 literal, as it appears in a URL: [::1]
561
+ if (h.startsWith('[')) {
562
+ const inner = h.slice(1, h.endsWith(']') ? -1 : undefined);
563
+ if (inner === '::1' || inner === '::')
564
+ return true;
565
+ // fc00::/7 (unique-local) and fe80::/10 (link-local)
566
+ if (/^f[cd][0-9a-f]{2}:/.test(inner) || /^fe[89ab][0-9a-f]:/.test(inner))
567
+ return true;
568
+ return false;
569
+ }
570
+ const v4 = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/.exec(h);
571
+ if (!v4)
572
+ return false;
573
+ const [a, b] = [Number(v4[1]), Number(v4[2])];
574
+ if (a === 127 || a === 0 || a === 10)
575
+ return true;
576
+ if (a === 172 && b >= 16 && b <= 31)
577
+ return true;
578
+ if (a === 192 && b === 168)
579
+ return true;
580
+ if (a === 169 && b === 254)
581
+ return true; // link-local, incl. cloud metadata
582
+ if (a === 100 && b >= 64 && b <= 127)
583
+ return true; // CGNAT
584
+ return false;
585
+ }
586
+ function normalizeProxyTarget(raw, file, field) {
587
+ if (typeof raw !== 'string' || raw.length === 0) {
588
+ throw new ConfigError(`${field} must be a non-empty http(s) URL`, file);
589
+ }
590
+ let url;
591
+ try {
592
+ url = new URL(raw);
593
+ }
594
+ catch {
595
+ throw new ConfigError(`${field} must be an absolute URL (got ${JSON.stringify(raw)})`, file);
596
+ }
597
+ if (url.protocol !== 'http:' && url.protocol !== 'https:') {
598
+ throw new ConfigError(`${field} must use http:// or https:// (got ${url.protocol})`, file);
599
+ }
600
+ if (url.search || url.hash) {
601
+ throw new ConfigError(`${field} must not carry a query string or fragment — the visitor's own query is forwarded`, file);
602
+ }
603
+ if (url.username || url.password) {
604
+ throw new ConfigError(`${field} must not embed credentials — use requestHeaders for an upstream secret`, file);
605
+ }
606
+ if (isPrivateHost(url.hostname)) {
607
+ throw new ConfigError(`${field} names a private or loopback address (${url.hostname}); a proxy target must be a public origin`, file);
608
+ }
609
+ // Normalize: keep an explicit base path, drop the trailing slash so joining
610
+ // is unambiguous later (`/site` + `/cart`, never `/site//cart`).
611
+ const basePath = url.pathname.replace(/\/+$/, '');
612
+ return `${url.protocol}//${url.host}${basePath}`;
613
+ }
614
+ function normalizeProxyPath(raw, file, field) {
615
+ if (typeof raw !== 'string' || raw.length === 0) {
616
+ throw new ConfigError(`${field} must be a non-empty path`, file);
617
+ }
618
+ if (!raw.startsWith('/')) {
619
+ throw new ConfigError(`${field} must start with '/' (got ${JSON.stringify(raw)})`, file);
620
+ }
621
+ if (raw.includes('?') || raw.includes('#')) {
622
+ throw new ConfigError(`${field} must be a path with no query or fragment`, file);
623
+ }
624
+ const star = raw.indexOf('*');
625
+ if (star !== -1 && !raw.endsWith('/*')) {
626
+ throw new ConfigError(`${field} may only use a trailing '/*' wildcard (got ${JSON.stringify(raw)})`, file);
627
+ }
628
+ const mount = raw.endsWith('/*') ? raw.slice(0, -2) : raw.replace(/\/+$/, '');
629
+ if (mount === '') {
630
+ // '/*' — the whole site. Legal, but then nothing of ours is left to serve.
631
+ throw new ConfigError(`${field} may not mount the whole site ('/*') — proxy the sections that live elsewhere`, file);
632
+ }
633
+ const lower = mount.toLowerCase();
634
+ for (const reserved of RESERVED_PROXY_PREFIXES) {
635
+ if (lower === reserved || lower.startsWith(`${reserved}/`)) {
636
+ throw new ConfigError(`${field} may not claim ${reserved} — that path belongs to the platform`, file);
637
+ }
638
+ }
639
+ return raw;
640
+ }
641
+ function normalizeProxyHeaders(raw, file, field) {
642
+ const obj = expectObject(raw, file, field);
643
+ const out = {};
644
+ for (const [name, value] of Object.entries(obj)) {
645
+ const lower = name.toLowerCase();
646
+ if (!/^[!#$%&'*+\-.^_`|~0-9a-z]+$/.test(lower)) {
647
+ throw new ConfigError(`${field}: ${JSON.stringify(name)} is not a valid header name`, file);
648
+ }
649
+ if (PROXY_FORBIDDEN_HEADERS.has(lower)) {
650
+ throw new ConfigError(`${field}: ${name} is set by the proxy itself and cannot be overridden`, file);
651
+ }
652
+ if (typeof value !== 'string') {
653
+ throw new ConfigError(`${field}.${name} must be a string`, file);
654
+ }
655
+ if (/[\r\n]/.test(value)) {
656
+ throw new ConfigError(`${field}.${name} must not contain a newline`, file);
657
+ }
658
+ out[lower] = value;
659
+ }
660
+ return out;
661
+ }
662
+ function expectPositiveInt(raw, file, field, max) {
663
+ if (typeof raw !== 'number' || !Number.isFinite(raw) || raw < 0 || !Number.isInteger(raw)) {
664
+ throw new ConfigError(`${field} must be a non-negative whole number`, file);
665
+ }
666
+ if (max !== undefined && raw > max) {
667
+ throw new ConfigError(`${field} must be at most ${max}`, file);
668
+ }
669
+ return raw;
670
+ }
671
+ function normalizeStringArray(raw, file, field) {
672
+ const arr = expectArray(raw, file, field);
673
+ return arr.map((v, i) => {
674
+ if (typeof v !== 'string' || v.length === 0) {
675
+ throw new ConfigError(`${field}[${i}] must be a non-empty string`, file);
676
+ }
677
+ return v;
678
+ });
679
+ }
680
+ /**
681
+ * Validate a list of path patterns — the grammar shared by `blockPaths` and
682
+ * `cache.bypassPaths`. Kept as one function so the two can never drift apart:
683
+ * an author who learns the grammar in one field should not find it means
684
+ * something else in the other.
685
+ */
686
+ function normalizePathPatterns(raw, file, field) {
687
+ return normalizeStringArray(raw, file, field).map((p, i) => {
688
+ if (!p.startsWith('/')) {
689
+ throw new ConfigError(`${field}[${i}] must start with '/' (got ${JSON.stringify(p)})`, file);
690
+ }
691
+ const star = p.indexOf('*');
692
+ if (star !== -1 && star !== p.length - 1) {
693
+ throw new ConfigError(`${field}[${i}] may only use a trailing '*' (got ${JSON.stringify(p)})`, file);
694
+ }
695
+ return p;
696
+ });
697
+ }
698
+ function normalizeProxyCache(raw, file, field) {
699
+ const obj = expectObject(raw, file, field);
700
+ const out = {};
701
+ if (obj.ttl !== undefined)
702
+ out.ttl = expectPositiveInt(obj.ttl, file, `${field}.ttl`, 31536000);
703
+ if (obj.staleWhileRevalidate !== undefined) {
704
+ out.staleWhileRevalidate = expectPositiveInt(obj.staleWhileRevalidate, file, `${field}.staleWhileRevalidate`, 31536000);
705
+ }
706
+ if (obj.methods !== undefined) {
707
+ out.methods = normalizeStringArray(obj.methods, file, `${field}.methods`).map((m) => {
708
+ const upper = m.toUpperCase();
709
+ if (upper !== 'GET' && upper !== 'HEAD') {
710
+ throw new ConfigError(`${field}.methods may only contain GET or HEAD — caching a ${upper} would serve one visitor's write to the next`, file);
711
+ }
712
+ return upper;
713
+ });
714
+ }
715
+ if (obj.ignoreUpstreamCacheControl !== undefined) {
716
+ if (typeof obj.ignoreUpstreamCacheControl !== 'boolean') {
717
+ throw new ConfigError(`${field}.ignoreUpstreamCacheControl must be a boolean`, file);
718
+ }
719
+ out.ignoreUpstreamCacheControl = obj.ignoreUpstreamCacheControl;
720
+ }
721
+ if (obj.varyHeaders !== undefined) {
722
+ out.varyHeaders = normalizeStringArray(obj.varyHeaders, file, `${field}.varyHeaders`)
723
+ .map((h) => h.toLowerCase());
724
+ }
725
+ if (obj.bypassPaths !== undefined) {
726
+ out.bypassPaths = normalizePathPatterns(obj.bypassPaths, file, `${field}.bypassPaths`);
727
+ }
728
+ if (obj.bypassCookies !== undefined) {
729
+ if (typeof obj.bypassCookies !== 'boolean') {
730
+ throw new ConfigError(`${field}.bypassCookies must be a boolean`, file);
731
+ }
732
+ out.bypassCookies = obj.bypassCookies;
733
+ }
734
+ if (obj.maxBodyBytes !== undefined) {
735
+ out.maxBodyBytes = expectPositiveInt(obj.maxBodyBytes, file, `${field}.maxBodyBytes`, 33554432);
736
+ }
737
+ return out;
738
+ }
739
+ function normalizeProxyRewrite(raw, file, field) {
740
+ const obj = expectObject(raw, file, field);
741
+ const out = {};
742
+ if (obj.links !== undefined) {
743
+ if (typeof obj.links !== 'boolean') {
744
+ throw new ConfigError(`${field}.links must be a boolean`, file);
745
+ }
746
+ out.links = obj.links;
747
+ }
748
+ if (obj.hosts !== undefined) {
749
+ out.hosts = normalizeStringArray(obj.hosts, file, `${field}.hosts`).map((h, i) => {
750
+ const host = h.toLowerCase();
751
+ if (host.includes('/') || host.includes(':')) {
752
+ throw new ConfigError(`${field}.hosts[${i}] must be a bare hostname, no scheme, port or path (got ${JSON.stringify(h)})`, file);
753
+ }
754
+ return host;
755
+ });
756
+ }
757
+ if (obj.contentTypes !== undefined) {
758
+ out.contentTypes = normalizeStringArray(obj.contentTypes, file, `${field}.contentTypes`)
759
+ .map((t) => t.toLowerCase());
760
+ }
761
+ if (obj.setCookieDomain !== undefined) {
762
+ if (typeof obj.setCookieDomain !== 'boolean') {
763
+ throw new ConfigError(`${field}.setCookieDomain must be a boolean`, file);
764
+ }
765
+ out.setCookieDomain = obj.setCookieDomain;
766
+ }
767
+ if (obj.maxBodyBytes !== undefined) {
768
+ out.maxBodyBytes = expectPositiveInt(obj.maxBodyBytes, file, `${field}.maxBodyBytes`, 67108864);
769
+ }
770
+ return out;
771
+ }
772
+ function normalizeProxyRoute(raw, file, field) {
773
+ const obj = expectObject(raw, file, field);
774
+ const out = {
775
+ path: normalizeProxyPath(obj.path, file, `${field}.path`),
776
+ target: normalizeProxyTarget(obj.target, file, `${field}.target`),
777
+ };
778
+ if (obj.stripPrefix !== undefined) {
779
+ if (typeof obj.stripPrefix !== 'boolean') {
780
+ throw new ConfigError(`${field}.stripPrefix must be a boolean`, file);
781
+ }
782
+ out.stripPrefix = obj.stripPrefix;
783
+ }
784
+ if (obj.preserveHostHeader !== undefined) {
785
+ if (typeof obj.preserveHostHeader !== 'boolean') {
786
+ throw new ConfigError(`${field}.preserveHostHeader must be a boolean`, file);
787
+ }
788
+ out.preserveHostHeader = obj.preserveHostHeader;
789
+ }
790
+ if (obj.methods !== undefined) {
791
+ out.methods = normalizeStringArray(obj.methods, file, `${field}.methods`).map((m) => {
792
+ const upper = m.toUpperCase();
793
+ if (!PROXY_METHODS.has(upper)) {
794
+ throw new ConfigError(`${field}.methods: ${JSON.stringify(m)} is not a forwardable method`, file);
795
+ }
796
+ return upper;
797
+ });
798
+ }
799
+ if (obj.blockPaths !== undefined) {
800
+ out.blockPaths = normalizePathPatterns(obj.blockPaths, file, `${field}.blockPaths`);
801
+ }
802
+ if (obj.timeoutMs !== undefined) {
803
+ out.timeoutMs = expectPositiveInt(obj.timeoutMs, file, `${field}.timeoutMs`, 120000);
804
+ }
805
+ if (obj.cache !== undefined)
806
+ out.cache = normalizeProxyCache(obj.cache, file, `${field}.cache`);
807
+ if (obj.rewrite !== undefined) {
808
+ out.rewrite = normalizeProxyRewrite(obj.rewrite, file, `${field}.rewrite`);
809
+ }
810
+ if (obj.requestHeaders !== undefined) {
811
+ out.requestHeaders = normalizeProxyHeaders(obj.requestHeaders, file, `${field}.requestHeaders`);
812
+ }
813
+ if (obj.responseHeaders !== undefined) {
814
+ out.responseHeaders = normalizeProxyHeaders(obj.responseHeaders, file, `${field}.responseHeaders`);
815
+ }
816
+ return out;
817
+ }
818
+ export function normalizeProxy(raw, file, field) {
819
+ const obj = expectObject(raw, file, field);
820
+ const out = {};
821
+ if (obj.routes !== undefined) {
822
+ const arr = expectArray(obj.routes, file, `${field}.routes`);
823
+ const routes = arr.map((r, i) => normalizeProxyRoute(r, file, `${field}.routes[${i}]`));
824
+ // Two mounts on the same path is not a precedence question, it is a typo:
825
+ // the second is unreachable and its author will never see why.
826
+ const seen = new Set();
827
+ for (const route of routes) {
828
+ if (seen.has(route.path)) {
829
+ throw new ConfigError(`${field}.routes: ${route.path} is mounted twice — the second one can never match`, file);
830
+ }
831
+ seen.add(route.path);
832
+ }
833
+ out.routes = routes;
834
+ }
835
+ return out;
836
+ }
419
837
  //# sourceMappingURL=config-loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../src/config-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../src/config-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAgBzC;;;;;GAKG;AACH,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAS;IAC3C,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ;IAC/C,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY;CACrD,CAAC,CAAC;AAgDH,MAAM,gBAAgB,GAAG;IACvB,qBAAqB;IACrB,sBAAsB;IACtB,qBAAqB;IACrB,uBAAuB;IACvB,sBAAsB;IACtB,uBAAuB;CACf,CAAC;AASX,MAAM,OAAO,WAAY,SAAQ,KAAK;IAGlB;IACA;IAHlB,YACE,OAAe,EACC,OAAsB,IAAI,EAC1B,KAAc;QAE9B,KAAK,CACH,IAAI;YACF,CAAC,CAAC,eAAe,OAAO,QAAQ,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG;YACrE,CAAC,CAAC,eAAe,OAAO,EAAE,CAC7B,CAAC;QAPc,SAAI,GAAJ,IAAI,CAAsB;QAC1B,UAAK,GAAL,KAAK,CAAS;QAO9B,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC5B,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,WAAmB;IAC3D,MAAM,UAAU,GAAG,gBAAgB;SAChC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,CAAC;SAC/C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAEhC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACpC,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,WAAW,CACnB,+DAA+D,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACvF,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAE,CAAC;IAChC,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACxC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACpC,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,QAAgB;IACvC,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,WAAW,CAAC,iBAAiB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5D,IAAI,IAA2B,CAAC;QAChC,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,WAAW,CACnB,mGAAmG,EACnG,QAAQ,CACT,CAAC;QACJ,CAAC;QACD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,WAAW,CAAC,iBAAiB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACtF,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IACD,MAAM,IAAI,WAAW,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,QAAgB;IACxC,yEAAyE;IACzE,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;YACvD,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,WAAW,CAAC,0BAA0B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IACD,uDAAuD;IACvD,IAAI,UAA4C,CAAC;IACjD,IAAI,CAAC;QACH,CAAC,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,WAAW,CACnB,yGAAyG,EACzG,QAAQ,CACT,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9D,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1C,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,WAAW,CAAC,qCAAqC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IACpF,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,GAAY;IAClC,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,SAAS,IAAK,GAA+B,EAAE,CAAC;QACpF,OAAQ,GAA+B,CAAC,OAAO,CAAC;IAClD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,mCAAmC;AAEnC,SAAS,SAAS,CAAC,GAAY,EAAE,IAAY;IAC3C,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACjD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,WAAW,CAAC,qCAAqC,OAAO,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;IACjF,CAAC;IACD,MAAM,GAAG,GAAG,GAA8B,CAAC;IAC3C,MAAM,GAAG,GAAoB,EAAE,CAAC;IAChC,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC3B,GAAG,CAAC,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;IACD,6EAA6E;IAC7E,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,SAAS,KAAK,SAAS,EAAE,CAAC;QACrE,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAyC,EAAE,CAAC;IAC/F,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC/B,GAAG,CAAC,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACjC,oEAAoE;QACpE,oEAAoE;QACpE,uEAAuE;QACvE,iEAAiE;QACjE,IAAI,GAAG,CAAC,UAAU,KAAK,IAAI,IAAI,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YAClE,MAAM,IAAI,WAAW,CAAC,8BAA8B,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAC5E,CAAC;QACD,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAA8B,CAAC;IACtD,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC7B,GAAG,CAAC,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC/B,GAAG,CAAC,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC/B,GAAG,CAAC,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC5B,GAAG,CAAC,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,+BAA+B;AAC/B,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;AAChF,0EAA0E;AAC1E,4EAA4E;AAC5E,+EAA+E;AAE/E;;;;;GAKG;AACH,SAAS,qBAAqB,CAAC,KAAa,EAAE,IAAY,EAAE,KAAa;IACvE,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC3D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,uDAAuD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EACvF,IAAI,CACL,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,wCAAwC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACxG,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,wCAAwC,EAAE,IAAI,CAAC,CAAC;IAChF,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5D,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,+CAA+C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAC/E,IAAI,CACL,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IAClE,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,IAAI,GAAG,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,6CAA6C,EAAE,IAAI,CAAC,CAAC;QACrF,CAAC;QACD,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACnD,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5C,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,mBAAmB,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAC;YAC1F,CAAC;YACD,OAAO,qBAAqB,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,KAAK,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,+BAA+B;AAC/B,EAAE;AACF,6EAA6E;AAC7E,iFAAiF;AACjF,yDAAyD;AAEzD,SAAS,iBAAiB,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IAClE,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,UAAU,CAAC,CAAC;QAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,wDAAwD,EAAE,IAAI,CAAC,CAAC;QAChG,CAAC;QACD,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACvC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5C,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,qBAAqB,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAC;YAC5F,CAAC;YACD,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,GAAgD,EAAE,QAAQ,EAAE,CAAC;QAC1E,IAAI,CAAC,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBAC9F,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,oDAAoD,EAAE,IAAI,CAAC,CAAC;YAC5F,CAAC;YACD,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC;QACtC,CAAC;QACD,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,6BAA6B;AAE7B,SAAS,eAAe,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IAChE,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3C,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS;QAAE,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,UAAU,CAAC,CAAC;IACjF,MAAM,GAAG,GAAsB,EAAE,OAAO,EAAG,GAAG,CAAC,OAAmB,IAAI,KAAK,EAAE,CAAC;IAC9E,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACjC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,KAAK,aAAa,CAAC,CAAC;QAC1D,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAoB,CAAC;IAC5C,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC7B,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC;QAClD,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAgB,CAAC;IACpC,CAAC;IACD,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAChC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,YAAY,CAAC,CAAC;QACxD,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,SAAmB,CAAC;IAC1C,CAAC;IACD,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACnC,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAChF,MAAM,IAAI,WAAW,CAAC,kBAAkB,EAAE,IAAI,EAAE,GAAG,KAAK,eAAe,CAAC,CAAC;QAC3E,CAAC;QACD,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;IACtC,CAAC;IACD,IAAI,GAAG,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACtC,YAAY,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,EAAE,GAAG,KAAK,kBAAkB,CAAC,CAAC;QACpE,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,eAAyB,CAAC;IACtD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,+BAA+B;AAE/B,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;AAC5D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AAE3D,SAAS,iBAAiB,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IAClE,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5C,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,oBAAoB,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,GAAG,GAAG,GAA8B,CAAC;IAC3C,MAAM,GAAG,GAAwB,EAAE,CAAC;IAEpC,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC9B,GAAG,CAAC,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAC/E,sBAAsB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,YAAY,CAAC,GAAG,CAAC,CAC7D,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACpC,GAAG,CAAC,aAAa,GAAG,WAAW,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,EAAE,GAAG,KAAK,gBAAgB,CAAC,CAAC,GAAG,CACpF,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,kBAAkB,CAAC,GAAG,CAAC,CAC9E,CAAC;IACJ,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,sBAAsB,CACpC,GAAY,EACZ,IAAY,EACZ,IAAY;IAEZ,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1C,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IAEzD,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,WAAW,CAAC,+BAA+B,EAAE,IAAI,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC;IAC/E,CAAC;IACD,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC;IAE3D,MAAM,GAAG,GAA6B;QACpC,UAAU,EAAE,GAAG,CAAC,UAAoB;QACpC,IAAI;KACL,CAAC;IACF,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC3B,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC;QAC7C,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAc,CAAC;IAChC,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;QAAE,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,SAAS,CAAC,CAAC;IAC1F,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;QAAE,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,SAAS,CAAC,CAAC;IAC1F,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC9B,GAAG,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,UAAU,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,GAAG,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,CAAC,GAAG,GAAG,CAAC,kBAAkB,CAAC;QACjC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,WAAW,CACnB,8BAA8B,EAC9B,IAAI,EACJ,GAAG,IAAI,qBAAqB,CAC7B,CAAC;QACJ,CAAC;QACD,GAAG,CAAC,kBAAkB,GAAG,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,wEAAwE;AACxE,yEAAyE;AACzE,gFAAgF;AAChF,4EAA4E;AAC5E,8EAA8E;AAC9E,4BAA4B;AAC5B,SAAS,aAAa,CACpB,GAAY,EACZ,IAAY,EACZ,IAAY;IAEZ,+CAA+C;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACzB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9C,MAAM,IAAI,WAAW,CACnB,mCAAmC,EACnC,IAAI,EACJ,GAAG,IAAI,IAAI,CAAC,GAAG,CAChB,CAAC;YACJ,CAAC;YACD,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;YACpB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5C,MAAM,IAAI,WAAW,CAAC,kCAAkC,EAAE,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;YACtF,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,WAAW,CAAC,2BAA2B,EAAE,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/E,CAAC;YACD,OAAO,CAAC,CAAC,EAAE,CAAC,CAAqB,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;IACD,uEAAuE;IACvE,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5C,MAAM,GAAG,GAAG,GAA8B,CAAC;QAC3C,MAAM,GAAG,GAA4B,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,WAAW,CAAC,2BAA2B,EAAE,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3E,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,WAAW,CAAC,qCAAqC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3E,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACD,MAAM,IAAI,WAAW,CAAC,0BAA0B,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,oBAAoB,CAC3B,GAAY,EACZ,IAAY,EACZ,IAAY;IAEZ,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1C,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IACzD,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,QAAQ,CAAC,CAAC;IAE/C,IAAI,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC;QACnG,MAAM,IAAI,WAAW,CAAC,uCAAuC,EAAE,IAAI,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IAC7F,CAAC;IAED,MAAM,GAAG,GAA2B;QAClC,UAAU,EAAE,GAAG,CAAC,UAAoB;QACpC,KAAK,EAAE,GAAG,CAAC,KAAe;QAC1B,UAAU,EAAE,GAAG,CAAC,UAAU;KAC3B,CAAC;IAEF,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC7B,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,WAAW,CACnB,yBAAyB,CAAC,GAAG,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EACzD,IAAI,EACJ,GAAG,IAAI,SAAS,CACjB,CAAC;QACJ,CAAC;QACD,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAA0C,CAAC;IAC9D,CAAC;IACD,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACxE,MAAM,IAAI,WAAW,CACnB,0BAA0B,CAAC,GAAG,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC1D,IAAI,EACJ,GAAG,IAAI,UAAU,CAClB,CAAC;QACJ,CAAC;QACD,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAA4C,CAAC;IACjE,CAAC;IACD,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACjC,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,GAAG,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QAClC,GAAG,CAAC,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,IAAI,cAAc,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,UAAU,CAAC,CAAU,EAAE,IAAY,EAAE,KAAa;IACzD,IAAI,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,WAAW,CAAC,kBAAkB,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,aAAa,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IAC9D,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5C,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,oBAAoB,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,GAAG,GAAG,GAA8B,CAAC;IAC3C,MAAM,GAAG,GAAoB,EAAE,CAAC;IAEhC,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAChC,GAAG,CAAC,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAClF,MAAM,IAAI,GAAG,GAAG,KAAK,cAAc,CAAC,GAAG,CAAC;YACxC,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACxC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC;YAC7C,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,QAAQ,CAAC,CAAC;YAC/C,oBAAoB,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,UAAU,CAAC,CAAC;YAC3D,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBAC1E,MAAM,IAAI,WAAW,CACnB,GAAG,IAAI,yBAAyB,CAAC,GAAG,oBAAoB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EACtE,IAAI,EACJ,GAAG,IAAI,OAAO,CACf,CAAC;YACJ,CAAC;YACD,OAAO,GAAmE,CAAC;QAC7E,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC7B,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACzE,MAAM,IAAI,GAAG,GAAG,KAAK,WAAW,CAAC,GAAG,CAAC;YACrC,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACxC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC;YAC7C,OAAO,GAAgE,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAChC,GAAG,CAAC,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAClF,MAAM,IAAI,GAAG,GAAG,KAAK,cAAc,CAAC,GAAG,CAAC;YACxC,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACxC,YAAY,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,EAAE,GAAG,IAAI,gBAAgB,CAAC,CAAC;YAC/D,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,QAAQ,CAAC,CAAC;YAC/C,OAAO,GAAmE,CAAC;QAC7E,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,KAAK,eAAe,CAAC,CAAC;QAC1E,GAAG,CAAC,YAAY,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,sBAAsB,CAA8F,EAAE,CAAC;IAC5L,CAAC;IAED,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC;QAC5D,MAAM,SAAS,GAA4C,EAAE,CAAC;QAC9D,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,GAAG,KAAK,UAAU,GAAG,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC7C,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,IAAI,YAAY,CAAC,CAAC;YACxD,iBAAiB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,GAAG,IAAI,gBAAgB,CAAC,CAAC;YACrE,oBAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,SAAS,CAAC,CAAC;YAC1D,SAAS,CAAC,GAAG,CAAC,GAAG,IAA0C,CAAC;QAC9D,CAAC;QACD,GAAG,CAAC,KAAK,GAAG,SAAgD,CAAC;IAC/D,CAAC;IAED,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC/B,GAAG,CAAC,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,WAAW,CAAgC,CAAC;IACtG,CAAC;IAED,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC/B,GAAG,CAAC,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,WAAW,CAAgC,CAAC;IACtG,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,yBAAyB;AAEzB,SAAS,YAAY,CAAC,CAAU,EAAE,IAAY,EAAE,KAAa;IAC3D,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,MAAM,IAAI,WAAW,CAAC,iBAAiB,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,CAA4B,CAAC;AACtC,CAAC;AAED,SAAS,WAAW,CAAC,CAAU,EAAE,IAAY,EAAE,KAAa;IAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,WAAW,CAAC,gBAAgB,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC5E,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,YAAY,CAAC,CAAU,EAAE,IAAY,EAAE,KAAa;IAC3D,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,WAAW,CAAC,2BAA2B,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,CAAU,EAAE,IAAY,EAAE,KAAa;IACnE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,WAAW,CAAC,mBAAmB,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,CAAU,EAAE,IAAY,EAAE,KAAa;IAChE,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO;IAClC,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAQ,CAA6B,CAAC,GAAG,KAAK,QAAQ;QAAE,OAAO;IAC1G,MAAM,IAAI,WAAW,CACnB,iDAAiD,EACjD,IAAI,EACJ,KAAK,CACN,CAAC;AACJ,CAAC;AAED,SAAS,MAAM,CAAC,CAAU;IACxB,IAAI,CAAC,YAAY,KAAK;QAAE,OAAO,CAAC,CAAC,OAAO,CAAC;IACzC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAUD,4BAA4B;AAC5B,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,+EAA+E;AAC/E,8CAA8C;AAC9C,EAAE;AACF,uEAAuE;AACvE,yEAAyE;AACzE,wEAAwE;AACxE,6EAA6E;AAC7E,6EAA6E;AAC7E,uCAAuC;AACvC,+EAA+E;AAC/E,wEAAwE;AAExE;;;;;GAKG;AACH,MAAM,uBAAuB,GAAG;IAC9B,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS;IACxE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc;CACvC,CAAC;AAEX,sFAAsF;AACtF,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC5B,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS;CAC3D,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC;IACtC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI;IACxE,SAAS,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,gBAAgB;IACxE,iBAAiB,EAAE,mBAAmB,EAAE,kBAAkB;CAC3D,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAC7B,IAAI,CAAC,KAAK,WAAW,IAAI,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QACrG,OAAO,IAAI,CAAC;IACd,CAAC;IACD,8CAA8C;IAC9C,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC3D,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACnD,qDAAqD;QACrD,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACtF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,EAAE,GAAG,8CAA8C,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClE,IAAI,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IACtB,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAClD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC;IACjD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC,CAAC,mCAAmC;IAC5E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG;QAAE,OAAO,IAAI,CAAC,CAAC,QAAQ;IAC3D,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IACrE,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,kCAAkC,EAAE,IAAI,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,iCAAiC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1D,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,sCAAsC,GAAG,CAAC,QAAQ,GAAG,EAAE,IAAI,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QAC3B,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,mFAAmF,EAC3F,IAAI,CACL,CAAC;IACJ,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;QACjC,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,yEAAyE,EACjF,IAAI,CACL,CAAC;IACJ,CAAC;IACD,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,yCAAyC,GAAG,CAAC,QAAQ,2CAA2C,EACxG,IAAI,CACL,CAAC;IACJ,CAAC;IACD,4EAA4E;IAC5E,iEAAiE;IACjE,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClD,OAAO,GAAG,GAAG,CAAC,QAAQ,KAAK,GAAG,CAAC,IAAI,GAAG,QAAQ,EAAE,CAAC;AACnD,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IACnE,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,2BAA2B,EAAE,IAAI,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,6BAA6B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC3F,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,2CAA2C,EAAE,IAAI,CAAC,CAAC;IACnF,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,+CAA+C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAC7E,IAAI,CACL,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC9E,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QACjB,2EAA2E;QAC3E,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,+EAA+E,EACvF,IAAI,CACL,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAClC,KAAK,MAAM,QAAQ,IAAI,uBAAuB,EAAE,CAAC;QAC/C,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,kBAAkB,QAAQ,sCAAsC,EACxE,IAAI,CACL,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,qBAAqB,CAC5B,GAAY,EACZ,IAAY,EACZ,KAAa;IAEb,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3C,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACjC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,6BAA6B,EAAE,IAAI,CAAC,CAAC;QAC9F,CAAC;QACD,IAAI,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,KAAK,IAAI,sDAAsD,EACvE,IAAI,CACL,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,IAAI,IAAI,mBAAmB,EAAE,IAAI,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,IAAI,IAAI,6BAA6B,EAAE,IAAI,CAAC,CAAC;QAC7E,CAAC;QACD,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;IACrB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa,EAAE,GAAY;IAChF,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1F,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,sCAAsC,EAAE,IAAI,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QACnC,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,oBAAoB,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IACrE,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1C,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACtB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,IAAI,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAC;QAC3E,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAS,qBAAqB,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IACtE,OAAO,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACzD,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,IAAI,CAAC,8BAA8B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EAC/D,IAAI,CACL,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,IAAI,CAAC,sCAAsC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EACvE,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IACpE,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3C,MAAM,GAAG,GAA0B,EAAE,CAAC;IACtC,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS;QAAE,GAAG,CAAC,GAAG,GAAG,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChG,IAAI,GAAG,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;QAC3C,GAAG,CAAC,oBAAoB,GAAG,iBAAiB,CAC1C,GAAG,CAAC,oBAAoB,EAAE,IAAI,EAAE,GAAG,KAAK,uBAAuB,EAAE,QAAQ,CAC1E,CAAC;IACJ,CAAC;IACD,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC9B,GAAG,CAAC,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAClF,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;YAC9B,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;gBACxC,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,qDAAqD,KAAK,8CAA8C,EAChH,IAAI,CACL,CAAC;YACJ,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,GAAG,CAAC,0BAA0B,KAAK,SAAS,EAAE,CAAC;QACjD,IAAI,OAAO,GAAG,CAAC,0BAA0B,KAAK,SAAS,EAAE,CAAC;YACxD,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,+CAA+C,EAAE,IAAI,CAAC,CAAC;QACvF,CAAC;QACD,GAAG,CAAC,0BAA0B,GAAG,GAAG,CAAC,0BAA0B,CAAC;IAClE,CAAC;IACD,IAAI,GAAG,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QAClC,GAAG,CAAC,WAAW,GAAG,oBAAoB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,cAAc,CAAC;aAClF,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,GAAG,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QAClC,GAAG,CAAC,WAAW,GAAG,qBAAqB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,cAAc,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACpC,IAAI,OAAO,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YAC3C,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,kCAAkC,EAAE,IAAI,CAAC,CAAC;QAC1E,CAAC;QACD,GAAG,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;IACxC,CAAC;IACD,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACnC,GAAG,CAAC,YAAY,GAAG,iBAAiB,CAClC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,KAAK,eAAe,EAAE,QAAQ,CAC1D,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IACtE,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3C,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC5B,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,0BAA0B,EAAE,IAAI,CAAC,CAAC;QAClE,CAAC;QACD,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;IACxB,CAAC;IACD,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC5B,GAAG,CAAC,KAAK,GAAG,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC/E,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7C,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,UAAU,CAAC,2DAA2D,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EAClG,IAAI,CACL,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACnC,GAAG,CAAC,YAAY,GAAG,oBAAoB,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,KAAK,eAAe,CAAC;aACrF,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,GAAG,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACtC,IAAI,OAAO,GAAG,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAC7C,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,oCAAoC,EAAE,IAAI,CAAC,CAAC;QAC5E,CAAC;QACD,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,eAAe,CAAC;IAC5C,CAAC;IACD,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACnC,GAAG,CAAC,YAAY,GAAG,iBAAiB,CAClC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,KAAK,eAAe,EAAE,QAAQ,CAC1D,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IACpE,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3C,MAAM,GAAG,GAA0B;QACjC,IAAI,EAAE,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC;QACzD,MAAM,EAAE,oBAAoB,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,SAAS,CAAC;KAClE,CAAC;IACF,IAAI,GAAG,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,gCAAgC,EAAE,IAAI,CAAC,CAAC;QACxE,CAAC;QACD,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;IACpC,CAAC;IACD,IAAI,GAAG,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACzC,IAAI,OAAO,GAAG,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YAChD,MAAM,IAAI,WAAW,CAAC,GAAG,KAAK,uCAAuC,EAAE,IAAI,CAAC,CAAC;QAC/E,CAAC;QACD,GAAG,CAAC,kBAAkB,GAAG,GAAG,CAAC,kBAAkB,CAAC;IAClD,CAAC;IACD,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC9B,GAAG,CAAC,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAClF,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;YAC9B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,aAAa,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,8BAA8B,EACpE,IAAI,CACL,CAAC;YACJ,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACjC,GAAG,CAAC,UAAU,GAAG,qBAAqB,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,KAAK,aAAa,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAChC,GAAG,CAAC,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,YAAY,EAAE,MAAM,CAAC,CAAC;IACvF,CAAC;IACD,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS;QAAE,GAAG,CAAC,KAAK,GAAG,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC;IAChG,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC9B,GAAG,CAAC,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,UAAU,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,GAAG,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACrC,GAAG,CAAC,cAAc,GAAG,qBAAqB,CACxC,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,GAAG,KAAK,iBAAiB,CACpD,CAAC;IACJ,CAAC;IACD,IAAI,GAAG,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACtC,GAAG,CAAC,eAAe,GAAG,qBAAqB,CACzC,GAAG,CAAC,eAAe,EAAE,IAAI,EAAE,GAAG,KAAK,kBAAkB,CACtD,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAY,EAAE,IAAY,EAAE,KAAa;IACtE,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAqB,EAAE,CAAC;IACjC,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,KAAK,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;QACxF,0EAA0E;QAC1E,+DAA+D;QAC/D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,WAAW,CACnB,GAAG,KAAK,YAAY,KAAK,CAAC,IAAI,oDAAoD,EAClF,IAAI,CACL,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QACD,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
package/dist/index.d.ts CHANGED
@@ -8,7 +8,7 @@ export { loadMcpAPI, buildAndIntegrateMcp } from './mcp.js';
8
8
  export { WORKER_POLYFILLS } from './polyfills.js';
9
9
  export { loadMaravillaConfig, ConfigError } from './config-loader.js';
10
10
  export type { LoadResult } from './config-loader.js';
11
- export type { ManifestV2, RoutingConfig, DynamicRoutes, RouteConfig, EnvConfig, Features, FunctionsConfig, FunctionRoute, FunctionsMetadata, EventsConfig, EventHandlerDescriptor, EventTrigger, EventTriggerKv, EventTriggerDb, EventTriggerAuth, EventTriggerSchedule, EventTriggerQueue, EventTriggerChannel, EventTriggerDeploy, EventTriggerStorage, EventTriggerRen, McpManifest, McpServerInfo, McpToolDescriptor, ToolUiRef, UiTemplateDescriptor, AdapterOptions, BundleOptions, ManifestOptions, } from './types.js';
11
+ export type { ManifestV2, RoutingConfig, DynamicRoutes, RouteConfig, EnvConfig, Features, FunctionsConfig, FunctionRoute, FunctionsMetadata, EventsConfig, EventHandlerDescriptor, EventTrigger, EventTriggerKv, EventTriggerDb, EventTriggerAuth, EventTriggerSchedule, EventTriggerQueue, EventTriggerChannel, EventTriggerDeploy, EventTriggerStorage, EventTriggerRen, McpManifest, McpServerInfo, McpToolDescriptor, ToolUiRef, UiTemplateDescriptor, AdapterOptions, BundleOptions, ManifestOptions, SecurityConfigBlock, RealtimeConfigBlock, ProxyConfigBlock, ProxyRouteDeclaration, ProxyCacheDeclaration, ProxyRewriteDeclaration, } from './types.js';
12
12
  export { compileTransforms, generateHandler, } from './transforms/index.js';
13
13
  export type { CompiledTransforms, TransformsConfig, TransformsPatternSpec, TransformVideoFormat, TransformImageFormat, TransformTranscodeOpts, TransformThumbnailOpts, TransformResizeOpts, TransformOcrOpts, } from './transforms/index.js';
14
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,YAAY,EACV,UAAU,EACV,aAAa,EACb,aAAa,EACb,WAAW,EACX,SAAS,EACT,QAAQ,EACR,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,sBAAsB,EACtB,YAAY,EACZ,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,oBAAoB,EACpB,cAAc,EACd,aAAa,EACb,eAAe,GAChB,MAAM,YAAY,CAAC;AAIpB,OAAO,EACL,iBAAiB,EACjB,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,YAAY,EACV,UAAU,EACV,aAAa,EACb,aAAa,EACb,WAAW,EACX,SAAS,EACT,QAAQ,EACR,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,sBAAsB,EACtB,YAAY,EACZ,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,oBAAoB,EACpB,cAAc,EACd,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,YAAY,CAAC;AAIpB,OAAO,EACL,iBAAiB,EACjB,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAkCtE,yEAAyE;AACzE,mEAAmE;AACnE,OAAO,EACL,iBAAiB,EACjB,eAAe,GAChB,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAwCtE,yEAAyE;AACzE,mEAAmE;AACnE,OAAO,EACL,iBAAiB,EACjB,eAAe,GAChB,MAAM,uBAAuB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE9D;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,EAAG,CAAU,CAAC;AAmBlD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAOhE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,UAAU,CAuErE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,IAAI,CAKxE"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE9D;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,EAAG,CAAU,CAAC;AAmBlD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAOhE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,UAAU,CA6ErE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,IAAI,CAKxE"}
package/dist/manifest.js CHANGED
@@ -37,7 +37,7 @@ export function filterStaticAssets(allAssets) {
37
37
  * Generate a Maravilla manifest.json conforming to the Rust Manifest struct.
38
38
  */
39
39
  export function generateManifest(options) {
40
- const { adapterName, prerenderedPaths, staticAssets, include = ['/*'], exclude = [], envPrefix = 'PUBLIC_', features, extraMetadata = {}, auth, database, studio, } = options;
40
+ const { adapterName, prerenderedPaths, staticAssets, include = ['/*'], exclude = [], envPrefix = 'PUBLIC_', features, extraMetadata = {}, auth, database, studio, realtime, security, proxy, } = options;
41
41
  const prerendered = prerenderedPaths.map(entry => {
42
42
  const p = entry.startsWith('/') ? entry : `/${entry}`;
43
43
  // Already a concrete file (e.g. /cloud/index.html): record it as-is.
@@ -87,6 +87,9 @@ export function generateManifest(options) {
87
87
  ...(auth ? { auth } : {}),
88
88
  ...(database ? { database } : {}),
89
89
  ...(studio ? { studio } : {}),
90
+ ...(realtime ? { realtime } : {}),
91
+ ...(security ? { security } : {}),
92
+ ...(proxy ? { proxy } : {}),
90
93
  };
91
94
  }
92
95
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -113,6 +113,237 @@ export interface ManifestV2 {
113
113
  * pre-built rather than run against its TS/JS/YAML source config.
114
114
  */
115
115
  studio?: StudioConfigBlock;
116
+ /**
117
+ * Optional realtime block declared in `maravilla.config.*` — today just which
118
+ * channels keep a replayable message history. Registered on deploy activation
119
+ * (`crates/server-integration/src/service/activation.rs`). Absent means channels
120
+ * are pure broadcast, which is what every deployment did before this existed.
121
+ */
122
+ realtime?: RealtimeConfigBlock;
123
+ /**
124
+ * Optional security block declared in `maravilla.config.*` — today just the
125
+ * extra origins allowed to frame this deployment. Delivery unions them into
126
+ * the platform's own `frame-ancestors` list; it never replaces it.
127
+ */
128
+ security?: SecurityConfigBlock;
129
+ /**
130
+ * Optional proxy block declared in `maravilla.config.*` — paths this
131
+ * deployment serves by forwarding to an external origin. Delivery matches
132
+ * these in Rust, before the V8 runtime is ever reached.
133
+ */
134
+ proxy?: ProxyConfigBlock;
135
+ }
136
+ /** Security settings passed through from `maravilla.config.*`. */
137
+ export interface SecurityConfigBlock {
138
+ /**
139
+ * Extra origins allowed to frame this site, ADDED to the platform's own list
140
+ * (the Studio editor surfaces), never replacing it. Same grammar as a CSP
141
+ * `frame-ancestors` source: `'self'`, or an origin with an optional single
142
+ * leading `*.` label — e.g. `https://teams.microsoft.com`,
143
+ * `https://*.cloud.microsoft`.
144
+ *
145
+ * A site can equally set its own `Content-Security-Policy` at runtime: what
146
+ * it declares there is unioned in the same way. This block exists so the
147
+ * allowlist can be reviewed in the repo rather than buried in a handler.
148
+ */
149
+ frameAncestors?: string[];
150
+ }
151
+ /**
152
+ * Reverse-proxy mounts: paths this deployment serves by forwarding the request
153
+ * to another origin and returning its response as our own.
154
+ *
155
+ * This is a proxy, not a redirect — the visitor's address bar never leaves the
156
+ * site, cookies stay first-party, and the upstream never appears in the URL.
157
+ * It exists for the portal case: a site that lives here while one section of it
158
+ * (a WordPress/WooCommerce shop, a legacy booking engine) keeps running
159
+ * elsewhere, with a single domain and a single TLS certificate in front of both.
160
+ *
161
+ * Matched and served entirely in Rust inside delivery — the V8 isolate is never
162
+ * started for a proxied path, so a proxied section costs no cold start and can
163
+ * be cached at the edge of our own stack.
164
+ */
165
+ export interface ProxyConfigBlock {
166
+ routes?: ProxyRouteDeclaration[];
167
+ }
168
+ /** One mount: a path prefix on this site, and the origin behind it. */
169
+ export interface ProxyRouteDeclaration {
170
+ /**
171
+ * The path this mount owns, e.g. `/shop/*` (prefix — `/shop` and everything
172
+ * under it) or `/shop` (that one path only). Must start with `/`. The
173
+ * longest matching mount wins, so `/shop/api/*` can be routed differently
174
+ * from `/shop/*`.
175
+ *
176
+ * Platform paths are never proxiable: `/_assets/*`, `/_auth/*`, `/_rt/*`,
177
+ * `/_push/*`, `/_internal/*`, `/_mcp`, `/health`, `/stats`, `/metrics`.
178
+ */
179
+ path: string;
180
+ /**
181
+ * Where to forward it — an `http://` or `https://` origin, optionally with a
182
+ * base path (`https://wp.example.com/site`). Private and loopback addresses
183
+ * are rejected: a tenant-controlled target that could name `localhost` would
184
+ * turn this into a request forgery primitive against the platform itself.
185
+ */
186
+ target: string;
187
+ /**
188
+ * Drop the mount prefix before forwarding, so `/shop/cart` arrives upstream
189
+ * as `/cart`. Default `false`, which is the shape that needs no rewriting:
190
+ * the upstream is configured to live at the same path here and there, and its
191
+ * own root-relative links already resolve inside the mount.
192
+ *
193
+ * With `true`, an upstream link to `/cart` would escape the mount, so
194
+ * {@link ProxyRewriteDeclaration.links} rewriting is applied to HTML and CSS
195
+ * bodies to pull those paths back under the prefix.
196
+ */
197
+ stripPrefix?: boolean;
198
+ /**
199
+ * Forward the visitor's `Host` header instead of the upstream's own. Default
200
+ * `false`. Turn it on only for an upstream that is configured to answer for
201
+ * this site's hostname — most virtual hosts (and most TLS terminators) will
202
+ * reject or misroute a Host they do not serve.
203
+ */
204
+ preserveHostHeader?: boolean;
205
+ /**
206
+ * HTTP methods this mount accepts. Default: all of them. Narrow it to
207
+ * `['GET', 'HEAD']` for a read-only mount so a stray POST cannot reach the
208
+ * upstream at all.
209
+ */
210
+ methods?: string[];
211
+ /**
212
+ * Paths under the mount that are never forwarded — the upstream's admin
213
+ * surface and login endpoints, which a public portal has no reason to
214
+ * expose. Literal paths, or a trailing-`*` prefix; a pattern containing `?`
215
+ * is matched against path and query together. Answered as 404, the same as
216
+ * any path this site does not have.
217
+ *
218
+ * Different from {@link ProxyCacheDeclaration.bypassPaths}, which still
219
+ * forwards and only declines to cache. A mount is a hole in the perimeter;
220
+ * this is how the hole is made smaller than the upstream.
221
+ *
222
+ * @example ['/shop/wp-admin*', '/shop/wp-login.php', '/shop/xmlrpc.php']
223
+ */
224
+ blockPaths?: string[];
225
+ /** Upstream timeout in milliseconds. Default 30000, ceiling 120000. */
226
+ timeoutMs?: number;
227
+ /** Delivery-side response cache. Absent or `ttl: 0` means no caching. */
228
+ cache?: ProxyCacheDeclaration;
229
+ /** URL rewriting applied to the upstream's headers and text bodies. */
230
+ rewrite?: ProxyRewriteDeclaration;
231
+ /**
232
+ * Extra headers added to the upstream request — a shared secret that proves
233
+ * the request came through the proxy, say. Values are literal; use an env
234
+ * placeholder (`${MY_TOKEN}`) to resolve one from the project's environment
235
+ * at request time.
236
+ */
237
+ requestHeaders?: Record<string, string>;
238
+ /** Extra headers added to the response we return. */
239
+ responseHeaders?: Record<string, string>;
240
+ }
241
+ /**
242
+ * Cache policy for a proxied mount. Delivery caches in Redis, shared across
243
+ * delivery nodes, so a hit never touches the upstream at all — which is the
244
+ * point for a WordPress origin that cannot take the portal's traffic.
245
+ */
246
+ export interface ProxyCacheDeclaration {
247
+ /** Fresh lifetime in seconds. `0` (the default) disables the cache. */
248
+ ttl?: number;
249
+ /**
250
+ * Seconds past `ttl` a stale entry may still be served while a single
251
+ * background request refreshes it. Turns an upstream that is slow, or briefly
252
+ * down, into a fast response rather than a 502. Default 0.
253
+ */
254
+ staleWhileRevalidate?: number;
255
+ /** Cacheable methods. Default `['GET', 'HEAD']`; nothing else is ever cached. */
256
+ methods?: string[];
257
+ /**
258
+ * Cache even when the upstream said `no-store` / `no-cache` / `private`.
259
+ * Default `false` — the upstream's own policy is honoured, because it is
260
+ * usually right and always the author's. Turn this on for an origin whose
261
+ * headers are wrong (WordPress sends `no-cache` on pages it has no reason to).
262
+ */
263
+ ignoreUpstreamCacheControl?: boolean;
264
+ /**
265
+ * Request headers that are part of the cache key, e.g. `['accept-language']`
266
+ * for a multilingual upstream. Keep the list short: every header multiplies
267
+ * the number of entries.
268
+ */
269
+ varyHeaders?: string[];
270
+ /**
271
+ * Paths under the mount that are never cached — literal paths, or a
272
+ * trailing-`*` prefix. A pattern containing `?` is matched against path and
273
+ * query together, so a WooCommerce AJAX endpoint (`/shop/?wc-ajax=*`), whose
274
+ * route lives entirely in its query string, can be excluded.
275
+ *
276
+ * {@link bypassCookies} already covers a visitor who has a session; this
277
+ * covers the FIRST request to a cart or checkout page, which arrives without
278
+ * one and would otherwise pin an empty cart in front of everybody.
279
+ */
280
+ bypassPaths?: string[];
281
+ /**
282
+ * Never serve a cached response to a request carrying cookies, and never
283
+ * cache one. Default `true`: a logged-in WooCommerce cart must not be handed
284
+ * to the next visitor, and that is exactly the mistake this prevents.
285
+ */
286
+ bypassCookies?: boolean;
287
+ /**
288
+ * Largest response body to cache, in bytes. Default 1048576 (1 MiB). Bigger
289
+ * responses are proxied straight through.
290
+ */
291
+ maxBodyBytes?: number;
292
+ }
293
+ /**
294
+ * How much of the upstream's own addressing to translate. Every rewrite maps an
295
+ * upstream URL back to this site's origin plus the mount prefix, so what the
296
+ * browser sees never names the upstream.
297
+ */
298
+ export interface ProxyRewriteDeclaration {
299
+ /**
300
+ * Rewrite upstream URLs found in text response bodies (HTML, CSS, JS, JSON,
301
+ * XML). Default `true`. Absolute upstream URLs become same-origin URLs under
302
+ * the mount; with {@link ProxyRouteDeclaration.stripPrefix} on, root-relative
303
+ * URLs in HTML attributes and CSS `url()` are pulled under the prefix too.
304
+ */
305
+ links?: boolean;
306
+ /**
307
+ * Extra hosts to rewrite alongside the target's own — a separate asset or CDN
308
+ * host the upstream emits, e.g. `['static.wp.example.com']`. Only useful when
309
+ * those hosts are themselves proxied by another mount, or serve identical
310
+ * paths.
311
+ */
312
+ hosts?: string[];
313
+ /**
314
+ * Content types eligible for body rewriting. Default: `text/html`,
315
+ * `text/css`, `application/javascript`, `text/javascript`,
316
+ * `application/json`, `application/xml`, `text/xml`, `image/svg+xml`.
317
+ */
318
+ contentTypes?: string[];
319
+ /**
320
+ * Strip the `Domain` attribute from the upstream's `Set-Cookie` headers so
321
+ * its session cookies bind to this site's host instead of being dropped by
322
+ * the browser as cross-domain. Default `true` — a shop upstream is useless
323
+ * through a proxy that loses its session cookie.
324
+ */
325
+ setCookieDomain?: boolean;
326
+ /**
327
+ * Largest text body to buffer for rewriting, in bytes. Default 8388608
328
+ * (8 MiB). Anything larger streams through unrewritten rather than being held
329
+ * in memory.
330
+ */
331
+ maxBodyBytes?: number;
332
+ }
333
+ export interface RealtimeConfigBlock {
334
+ /**
335
+ * Channels whose messages are persisted so a late joiner can replay them via
336
+ * `platform.realtime.history(channel, { limit, after })`.
337
+ *
338
+ * Opt-in: persisting a channel costs a document insert plus a trim on EVERY
339
+ * publish, so only name channels whose history is actually read.
340
+ */
341
+ history?: {
342
+ /** Glob patterns — `chat:*`, `private-order-*`, `*`. Empty keeps nothing. */
343
+ channels: string[];
344
+ /** Retained per channel; defaults to 1000. A replay returns at most 500. */
345
+ maxMessages?: number;
346
+ };
116
347
  }
117
348
  export interface RoutingConfig {
118
349
  prerendered: string[];
@@ -383,5 +614,21 @@ export interface ManifestOptions {
383
614
  * project when falling back to `.maravilla/manifest.json`.
384
615
  */
385
616
  studio?: StudioConfigBlock;
617
+ /**
618
+ * Optional realtime block loaded from `maravilla.config.*`. Emitted into the
619
+ * manifest as-is; the Rust side registers it on deploy activation.
620
+ */
621
+ realtime?: RealtimeConfigBlock;
622
+ /**
623
+ * Optional security block loaded from `maravilla.config.*`. Emitted into the
624
+ * manifest as-is; delivery reads it when composing the response CSP.
625
+ */
626
+ security?: SecurityConfigBlock;
627
+ /**
628
+ * Optional proxy block loaded from `maravilla.config.*`. Emitted into the
629
+ * manifest as-is; delivery matches it in Rust ahead of every other route
630
+ * decision.
631
+ */
632
+ proxy?: ProxyConfigBlock;
386
633
  }
387
634
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maravilla-labs/adapter-core",
3
- "version": "4.0.0",
3
+ "version": "4.1.1",
4
4
  "description": "Shared utilities for Maravilla Runtime framework adapters",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -45,6 +45,6 @@
45
45
  "scripts": {
46
46
  "build": "tsc",
47
47
  "dev": "tsc --watch",
48
- "test": "vitest run"
48
+ "test": "vitest run --passWithNoTests"
49
49
  }
50
50
  }