@braidlabs/gateway 0.7.1 → 0.8.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.
- package/README.md +28 -0
- package/package.json +1 -1
- package/src/cookie-scope.js +4 -1
- package/src/cookie-scope.js.map +1 -1
- package/src/gateway.d.ts +36 -1
- package/src/gateway.js +211 -37
- package/src/gateway.js.map +1 -1
- package/src/index.d.ts +2 -0
- package/src/index.js +1 -0
- package/src/index.js.map +1 -1
- package/src/node.d.ts +2 -0
- package/src/node.js +8 -1
- package/src/node.js.map +1 -1
- package/src/preferences-file.d.ts +15 -0
- package/src/preferences-file.js +76 -0
- package/src/preferences-file.js.map +1 -0
- package/src/preferences.d.ts +73 -0
- package/src/preferences.js +206 -0
- package/src/preferences.js.map +1 -0
- package/src/protocol.d.ts +2 -0
- package/src/protocol.js +11 -5
- package/src/protocol.js.map +1 -1
- package/src/registry.d.ts +20 -1
- package/src/registry.js +4 -0
- package/src/registry.js.map +1 -1
- package/src/rewriter/transforms.d.ts +9 -2
- package/src/rewriter/transforms.js +39 -14
- package/src/rewriter/transforms.js.map +1 -1
- package/src/speculation.d.ts +56 -0
- package/src/speculation.js +85 -0
- package/src/speculation.js.map +1 -0
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
/** Thrown by a backend's `set` when the write would take the subject past its {@link PreferenceLimits}. */
|
|
2
|
+
export class PreferenceQuotaError extends Error {
|
|
3
|
+
constructor(message = 'preference quota exceeded') {
|
|
4
|
+
super(message);
|
|
5
|
+
this.name = 'PreferenceQuotaError';
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
export const DEFAULT_PREFERENCES_PATH = '/__braid/preferences';
|
|
9
|
+
const DEFAULT_MAX_VALUE_BYTES = 64 * 1024;
|
|
10
|
+
const DEFAULT_MAX_ENTRIES = 1000;
|
|
11
|
+
const DEFAULT_MAX_TOTAL_BYTES = 1024 * 1024;
|
|
12
|
+
const MAX_KEY_LENGTH = 512;
|
|
13
|
+
const MAX_SEGMENTS = 8;
|
|
14
|
+
const SEGMENT = /^[A-Za-z0-9._~%-]{1,128}$/;
|
|
15
|
+
/** Whether `key` is a preference key: see {@link PreferencesOptions}. */
|
|
16
|
+
export function isPreferenceKey(key) {
|
|
17
|
+
if (key.length === 0 || key.length > MAX_KEY_LENGTH)
|
|
18
|
+
return false;
|
|
19
|
+
const segments = key.split('/');
|
|
20
|
+
return segments.length <= MAX_SEGMENTS && segments.every((segment) => SEGMENT.test(segment) && segment !== '.' && segment !== '..');
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Whether a subject's entries, with `key` set to `json`, stay within `limits`. For backends: call it
|
|
24
|
+
* on the entries as they are inside the write's critical section.
|
|
25
|
+
*/
|
|
26
|
+
export function withinLimits(entries, key, json, limits) {
|
|
27
|
+
let count = 0;
|
|
28
|
+
let bytes = 0;
|
|
29
|
+
for (const [existing, value] of entries) {
|
|
30
|
+
if (existing === key)
|
|
31
|
+
continue;
|
|
32
|
+
count++;
|
|
33
|
+
bytes += existing.length + value.length;
|
|
34
|
+
}
|
|
35
|
+
return count + 1 <= limits.maxEntries && bytes + key.length + json.length <= limits.maxTotalBytes;
|
|
36
|
+
}
|
|
37
|
+
/** Entries in memory, gone when the process exits. For tests and single-process development. */
|
|
38
|
+
export function memoryPreferenceBackend() {
|
|
39
|
+
const subjects = new Map();
|
|
40
|
+
const entries = (subject) => {
|
|
41
|
+
let map = subjects.get(subject);
|
|
42
|
+
if (!map)
|
|
43
|
+
subjects.set(subject, (map = new Map()));
|
|
44
|
+
return map;
|
|
45
|
+
};
|
|
46
|
+
return {
|
|
47
|
+
async get(subject, key) {
|
|
48
|
+
return subjects.get(subject)?.get(key);
|
|
49
|
+
},
|
|
50
|
+
async set(subject, key, json, limits) {
|
|
51
|
+
// synchronous from check to write, so nothing can interleave
|
|
52
|
+
const map = entries(subject);
|
|
53
|
+
if (!withinLimits(map, key, json, limits))
|
|
54
|
+
throw new PreferenceQuotaError();
|
|
55
|
+
map.set(key, json);
|
|
56
|
+
},
|
|
57
|
+
async delete(subject, key) {
|
|
58
|
+
subjects.get(subject)?.delete(key);
|
|
59
|
+
},
|
|
60
|
+
async list(subject, prefix) {
|
|
61
|
+
return [...(subjects.get(subject)?.keys() ?? [])].filter((key) => key.startsWith(prefix));
|
|
62
|
+
},
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
export function createPreferencesHandler(options, resolvePrincipal) {
|
|
66
|
+
if (!options)
|
|
67
|
+
return null;
|
|
68
|
+
const path = (options.path ?? DEFAULT_PREFERENCES_PATH).replace(/\/+$/, '');
|
|
69
|
+
// a root path, or a relative one, would claim every request the gateway sees
|
|
70
|
+
if (!path.startsWith('/') || path === '' || path.includes('//')) {
|
|
71
|
+
throw new Error(`braid-gateway: preferences.path "${options.path}" must be an absolute path such as "${DEFAULT_PREFERENCES_PATH}"`);
|
|
72
|
+
}
|
|
73
|
+
const maxValueBytes = options.maxValueBytes ?? DEFAULT_MAX_VALUE_BYTES;
|
|
74
|
+
const limits = {
|
|
75
|
+
maxEntries: options.maxEntries ?? DEFAULT_MAX_ENTRIES,
|
|
76
|
+
maxTotalBytes: options.maxTotalBytes ?? DEFAULT_MAX_TOTAL_BYTES,
|
|
77
|
+
};
|
|
78
|
+
const { backend } = options;
|
|
79
|
+
return {
|
|
80
|
+
owns(pathname) {
|
|
81
|
+
return pathname === path || pathname.startsWith(`${path}/`);
|
|
82
|
+
},
|
|
83
|
+
async handle(request, url) {
|
|
84
|
+
// nothing here is for another site, reads included: they would only tell it what exists
|
|
85
|
+
if (crossSite(request, url))
|
|
86
|
+
return json({ error: 'cross-site requests are refused' }, 403);
|
|
87
|
+
let subject;
|
|
88
|
+
try {
|
|
89
|
+
subject = (await resolvePrincipal(request))?.subject;
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
console.error('braid-gateway: the principal resolver failed for a preferences request', error);
|
|
93
|
+
return json({ error: 'preferences are unavailable' }, 500);
|
|
94
|
+
}
|
|
95
|
+
if (typeof subject !== 'string' || subject.length === 0)
|
|
96
|
+
return json({ error: 'sign in to use preferences' }, 401);
|
|
97
|
+
const rest = url.pathname.slice(path.length);
|
|
98
|
+
try {
|
|
99
|
+
if (rest === '' || rest === '/') {
|
|
100
|
+
if (request.method !== 'GET')
|
|
101
|
+
return json({ error: 'method not allowed' }, 405, { Allow: 'GET' });
|
|
102
|
+
const prefix = url.searchParams.get('prefix') ?? '';
|
|
103
|
+
if (prefix !== '' && !isPreferenceKey(prefix.replace(/\/$/, '')))
|
|
104
|
+
return json({ error: 'malformed prefix' }, 400);
|
|
105
|
+
return json({ keys: (await backend.list(subject, prefix)).sort() }, 200);
|
|
106
|
+
}
|
|
107
|
+
const key = decodeKey(rest.slice(1));
|
|
108
|
+
if (key === undefined)
|
|
109
|
+
return json({ error: 'malformed key' }, 400);
|
|
110
|
+
if (request.method === 'GET') {
|
|
111
|
+
const value = await backend.get(subject, key);
|
|
112
|
+
return value === undefined ? json({ error: 'not found' }, 404) : text(value, 200);
|
|
113
|
+
}
|
|
114
|
+
if (request.method !== 'PUT' && request.method !== 'DELETE') {
|
|
115
|
+
return json({ error: 'method not allowed' }, 405, { Allow: 'GET, PUT, DELETE' });
|
|
116
|
+
}
|
|
117
|
+
if (request.method === 'DELETE') {
|
|
118
|
+
await backend.delete(subject, key);
|
|
119
|
+
return new Response(null, { status: 204, headers: NO_STORE });
|
|
120
|
+
}
|
|
121
|
+
if (!/^application\/json\s*(;|$)/i.test(request.headers.get('content-type') ?? '')) {
|
|
122
|
+
return json({ error: 'send the value as application/json' }, 415);
|
|
123
|
+
}
|
|
124
|
+
const body = await readLimited(request, maxValueBytes);
|
|
125
|
+
if (body === undefined)
|
|
126
|
+
return json({ error: `values are limited to ${maxValueBytes} bytes` }, 413);
|
|
127
|
+
let value;
|
|
128
|
+
try {
|
|
129
|
+
value = JSON.parse(body);
|
|
130
|
+
}
|
|
131
|
+
catch {
|
|
132
|
+
return json({ error: 'the value is not JSON' }, 400);
|
|
133
|
+
}
|
|
134
|
+
await backend.set(subject, key, JSON.stringify(value), limits);
|
|
135
|
+
return new Response(null, { status: 204, headers: NO_STORE });
|
|
136
|
+
}
|
|
137
|
+
catch (error) {
|
|
138
|
+
if (error instanceof PreferenceQuotaError || error?.name === 'PreferenceQuotaError') {
|
|
139
|
+
return json({ error: `at most ${limits.maxEntries} preferences, ${limits.maxTotalBytes} bytes in all, per user` }, 413);
|
|
140
|
+
}
|
|
141
|
+
console.error('braid-gateway: preferences backend failed', error);
|
|
142
|
+
return json({ error: 'preferences are unavailable' }, 500);
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
/** Each segment percent-decoded, then the whole checked; undefined if it is not a key. */
|
|
148
|
+
function decodeKey(raw) {
|
|
149
|
+
try {
|
|
150
|
+
const key = raw.split('/').map(decodeURIComponent).join('/');
|
|
151
|
+
return isPreferenceKey(key) && key.split('/').length === raw.split('/').length ? key : undefined;
|
|
152
|
+
}
|
|
153
|
+
catch {
|
|
154
|
+
return undefined;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* A request the browser says came from another origin: by `Sec-Fetch-Site` where it sends one, and
|
|
159
|
+
* otherwise by `Origin`, which every browser sends on a PUT or DELETE. Neither header (a non-browser
|
|
160
|
+
* client, or a same-origin GET in an older browser) is not cross-site.
|
|
161
|
+
*/
|
|
162
|
+
function crossSite(request, url) {
|
|
163
|
+
const site = request.headers.get('sec-fetch-site');
|
|
164
|
+
if (site !== null)
|
|
165
|
+
return site !== 'same-origin' && site !== 'none';
|
|
166
|
+
const origin = request.headers.get('origin');
|
|
167
|
+
return origin !== null && origin !== url.origin;
|
|
168
|
+
}
|
|
169
|
+
/** The body as text, or undefined once it passes `limit` bytes — without reading the rest. */
|
|
170
|
+
async function readLimited(request, limit) {
|
|
171
|
+
const declared = Number(request.headers.get('content-length'));
|
|
172
|
+
if (Number.isFinite(declared) && declared > limit)
|
|
173
|
+
return undefined;
|
|
174
|
+
if (!request.body)
|
|
175
|
+
return '';
|
|
176
|
+
const reader = request.body.getReader();
|
|
177
|
+
const chunks = [];
|
|
178
|
+
let size = 0;
|
|
179
|
+
for (;;) {
|
|
180
|
+
const { done, value } = await reader.read();
|
|
181
|
+
if (done)
|
|
182
|
+
break;
|
|
183
|
+
size += value.byteLength;
|
|
184
|
+
if (size > limit) {
|
|
185
|
+
await reader.cancel();
|
|
186
|
+
return undefined;
|
|
187
|
+
}
|
|
188
|
+
chunks.push(value);
|
|
189
|
+
}
|
|
190
|
+
const bytes = new Uint8Array(size);
|
|
191
|
+
let offset = 0;
|
|
192
|
+
for (const chunk of chunks) {
|
|
193
|
+
bytes.set(chunk, offset);
|
|
194
|
+
offset += chunk.byteLength;
|
|
195
|
+
}
|
|
196
|
+
return new TextDecoder().decode(bytes);
|
|
197
|
+
}
|
|
198
|
+
/** A person's own data: never in a shared cache, never kept by the browser either. */
|
|
199
|
+
const NO_STORE = { 'cache-control': 'private, no-store', 'x-content-type-options': 'nosniff' };
|
|
200
|
+
function json(body, status, headers = {}) {
|
|
201
|
+
return text(JSON.stringify(body), status, headers);
|
|
202
|
+
}
|
|
203
|
+
function text(body, status, headers = {}) {
|
|
204
|
+
return new Response(body, { status, headers: { 'content-type': 'application/json', ...NO_STORE, ...headers } });
|
|
205
|
+
}
|
|
206
|
+
//# sourceMappingURL=preferences.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preferences.js","sourceRoot":"","sources":["../../../../libs/braid-gateway/src/preferences.ts"],"names":[],"mappings":"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"}
|
package/src/protocol.d.ts
CHANGED
|
@@ -29,6 +29,8 @@ export declare const BRAID_NAMESPACE_PREFIX = "/__braid/frag/";
|
|
|
29
29
|
*/
|
|
30
30
|
/** Where the gateway serves its generated service worker, when asked to. */
|
|
31
31
|
export declare const BRAID_SERVICE_WORKER_PATH = "/__braid/sw.js";
|
|
32
|
+
/** The Speculation Rules the gateway derives from its registry, served only when `speculationRules` is on. */
|
|
33
|
+
export declare const BRAID_SPECULATION_RULES_PATH = "/__braid/speculation-rules.json";
|
|
32
34
|
/** The web-vitals collector, served only when telemetry's `webVitals` is on. */
|
|
33
35
|
export declare const BRAID_VITALS_SCRIPT_PATH = "/__braid/vitals.js";
|
|
34
36
|
/** Where that collector beacons its report. */
|
package/src/protocol.js
CHANGED
|
@@ -29,6 +29,8 @@ export const BRAID_NAMESPACE_PREFIX = BRAID_FRAGMENT_PREFIX;
|
|
|
29
29
|
*/
|
|
30
30
|
/** Where the gateway serves its generated service worker, when asked to. */
|
|
31
31
|
export const BRAID_SERVICE_WORKER_PATH = '/__braid/sw.js';
|
|
32
|
+
/** The Speculation Rules the gateway derives from its registry, served only when `speculationRules` is on. */
|
|
33
|
+
export const BRAID_SPECULATION_RULES_PATH = '/__braid/speculation-rules.json';
|
|
32
34
|
/** The web-vitals collector, served only when telemetry's `webVitals` is on. */
|
|
33
35
|
export const BRAID_VITALS_SCRIPT_PATH = '/__braid/vitals.js';
|
|
34
36
|
/** Where that collector beacons its report. */
|
|
@@ -91,11 +93,15 @@ export function parseBraidPathname(pathname) {
|
|
|
91
93
|
const encodedFragmentId = slashIndex === -1 ? rest : rest.slice(0, slashIndex);
|
|
92
94
|
if (!encodedFragmentId)
|
|
93
95
|
return null;
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
fragmentId
|
|
97
|
-
|
|
98
|
-
|
|
96
|
+
let fragmentId;
|
|
97
|
+
try {
|
|
98
|
+
fragmentId = decodeURIComponent(encodedFragmentId);
|
|
99
|
+
}
|
|
100
|
+
catch {
|
|
101
|
+
// not valid percent-encoding, so not an id any fragment has: the path names nothing here
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
104
|
+
return { kind, fragmentId, pathname: slashIndex === -1 ? '/' : rest.slice(slashIndex) };
|
|
99
105
|
}
|
|
100
106
|
return null;
|
|
101
107
|
}
|
package/src/protocol.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../../libs/braid-gateway/src/protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AACtD,MAAM,CAAC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AACpD,MAAM,CAAC,MAAM,qBAAqB,GAAG,eAAe,CAAC;AAErD,4FAA4F;AAC5F,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAE5D;;;;;;GAMG;AACH,4EAA4E;AAC5E,MAAM,CAAC,MAAM,yBAAyB,GAAG,gBAAgB,CAAC;AAE1D,gFAAgF;AAChF,MAAM,CAAC,MAAM,wBAAwB,GAAG,oBAAoB,CAAC;AAC7D,+CAA+C;AAC/C,MAAM,CAAC,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;AAE1D,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAE1C,6FAA6F;AAC7F,MAAM,CAAC,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AAEpD,wGAAwG;AACxG,MAAM,CAAC,MAAM,kBAAkB,GAAG,eAAe,CAAC;AAElD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,uBAAuB,CAAC;AAElE;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAE9C;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC;AAEhC,sEAAsE;AACtE,MAAM,CAAC,MAAM,wBAAwB,GAAG,qBAAqB,CAAC;AAE9D;;;;GAIG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,2BAA2B,CAAC;AAE1E;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,oBAAoB,CAAC;AAkB5D,MAAM,QAAQ,GAAqD;IACjE,CAAC,qBAAqB,EAAE,UAAU,CAAC;IACnC,CAAC,kBAAkB,EAAE,OAAO,CAAC;IAC7B,CAAC,qBAAqB,EAAE,UAAU,CAAC;CACpC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD,KAAK,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,SAAS;QAE3C,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,iBAAiB,GAAG,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;QAE/E,IAAI,CAAC,iBAAiB;YAAE,OAAO,IAAI,CAAC;QAEpC,
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../../libs/braid-gateway/src/protocol.ts"],"names":[],"mappings":"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"}
|
package/src/registry.d.ts
CHANGED
|
@@ -75,7 +75,8 @@ export interface FragmentManifest {
|
|
|
75
75
|
* default), its own (`'partitioned'`), or a store shared by name (`{ partition: 'kcd' }`).
|
|
76
76
|
*/
|
|
77
77
|
storage?: 'partitioned' | 'shared' | {
|
|
78
|
-
partition
|
|
78
|
+
partition?: string;
|
|
79
|
+
databases?: boolean;
|
|
79
80
|
};
|
|
80
81
|
/** What the fragment's own runtime HTML writes may contain: `'sanitize'` or `'report'`. */
|
|
81
82
|
html?: 'report' | 'sanitize';
|
|
@@ -148,6 +149,19 @@ export interface FragmentManifest {
|
|
|
148
149
|
* content in-order.
|
|
149
150
|
*/
|
|
150
151
|
stream?: 'in-order' | 'out-of-order';
|
|
152
|
+
/**
|
|
153
|
+
* Let the browser fetch this fragment's pages before the user follows a link to one, when the
|
|
154
|
+
* gateway's `speculationRules` option is on. The pages are this fragment's `pierce` routes.
|
|
155
|
+
*
|
|
156
|
+
* - `'prefetch'` fetches the composed document, so a click skips the round trip.
|
|
157
|
+
* - `'prerender'` also renders it, the fragment's realm and code included, so the page appears
|
|
158
|
+
* at once.
|
|
159
|
+
*
|
|
160
|
+
* A prerendered page runs the fragment's code before anyone sees it: analytics, view counts and
|
|
161
|
+
* anything else with a side effect fire for pages the user may never open. That is why this is
|
|
162
|
+
* per fragment, and off unless a fragment asks for it. Chromium only; other browsers ignore it.
|
|
163
|
+
*/
|
|
164
|
+
speculate?: 'prefetch' | 'prerender';
|
|
151
165
|
/**
|
|
152
166
|
* Opt this fragment out of concurrent-fetch coalescing. Defaults to `true` (coalesced).
|
|
153
167
|
*
|
|
@@ -233,6 +247,11 @@ export interface AccessRule {
|
|
|
233
247
|
}
|
|
234
248
|
/** Who is asking, as resolved from a request by the gateway's host application. */
|
|
235
249
|
export interface Principal {
|
|
250
|
+
/**
|
|
251
|
+
* Who this is: a stable, unique user id (an OIDC `sub`, say). Only per-user state needs it —
|
|
252
|
+
* the gateway's `preferences` are keyed by it and refused without it. Access rules ignore it.
|
|
253
|
+
*/
|
|
254
|
+
subject?: string;
|
|
236
255
|
roles?: readonly string[];
|
|
237
256
|
scopes?: readonly string[];
|
|
238
257
|
}
|
package/src/registry.js
CHANGED
|
@@ -86,6 +86,10 @@ export function normalizeManifest(manifest) {
|
|
|
86
86
|
throw new Error(`braid-gateway: manifest "${manifest.id}" declares redirect: "${String(manifest.redirect)}" — ` +
|
|
87
87
|
`use "error" or "navigate"`);
|
|
88
88
|
}
|
|
89
|
+
if (manifest.speculate !== undefined && manifest.speculate !== 'prefetch' && manifest.speculate !== 'prerender') {
|
|
90
|
+
throw new Error(`braid-gateway: manifest "${manifest.id}" declares speculate: "${String(manifest.speculate)}" — ` +
|
|
91
|
+
`use "prefetch" or "prerender"`);
|
|
92
|
+
}
|
|
89
93
|
return {
|
|
90
94
|
...manifest,
|
|
91
95
|
adapter: manifest.adapter ?? DEFAULT_ADAPTER,
|
package/src/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../libs/braid-gateway/src/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../libs/braid-gateway/src/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,8 +24,15 @@ export declare const BRAID_SHELL_STYLES = "<style>fragment-slot { display: block
|
|
|
24
24
|
export declare function cspNonceOf(headers: Headers): string | null;
|
|
25
25
|
/** Stamps a nonce onto generated inline markup. A no-op when the shell has no policy. */
|
|
26
26
|
export declare function withNonce(markup: string, nonce: string | null): string;
|
|
27
|
-
/**
|
|
28
|
-
|
|
27
|
+
/**
|
|
28
|
+
* The `<style>` that goes inside every fragment's shadow root.
|
|
29
|
+
*
|
|
30
|
+
* It opens with the reset for portals a slot lifts into the top layer (`overlays="top-layer"`,
|
|
31
|
+
* `@braidlabs/core`'s `overlay-layer.ts`), in a cascade layer declared here, first in the shadow
|
|
32
|
+
* root, so it ranks below every layer of the fragment's own and every unlayered rule. The client's
|
|
33
|
+
* slot stylesheet opens with the same rule; the overlays e2e test holds the two together.
|
|
34
|
+
*/
|
|
35
|
+
export declare const BRAID_FRAGMENT_STYLES: string;
|
|
29
36
|
/**
|
|
30
37
|
* Prepares a fragment's HTML for life inside the host page:
|
|
31
38
|
*
|
|
@@ -38,8 +38,17 @@ export function withNonce(markup, nonce) {
|
|
|
38
38
|
return markup;
|
|
39
39
|
return markup.replace(/<(script|style)(?=[\s>])/g, `<$1 nonce="${escapeAttribute(nonce)}"`);
|
|
40
40
|
}
|
|
41
|
-
/**
|
|
42
|
-
|
|
41
|
+
/**
|
|
42
|
+
* The `<style>` that goes inside every fragment's shadow root.
|
|
43
|
+
*
|
|
44
|
+
* It opens with the reset for portals a slot lifts into the top layer (`overlays="top-layer"`,
|
|
45
|
+
* `@braidlabs/core`'s `overlay-layer.ts`), in a cascade layer declared here, first in the shadow
|
|
46
|
+
* root, so it ranks below every layer of the fragment's own and every unlayered rule. The client's
|
|
47
|
+
* slot stylesheet opens with the same rule; the overlays e2e test holds the two together.
|
|
48
|
+
*/
|
|
49
|
+
export const BRAID_FRAGMENT_STYLES = '<style>@layer braid-overlay-reset { :where([data-braid-overlay]) { position: absolute; inset: auto; margin: 0; padding: 0; border: 0; ' +
|
|
50
|
+
'background: none; color: inherit; overflow: visible; width: auto; height: auto; max-width: none; max-height: none; } }' +
|
|
51
|
+
':host, braid-document, braid-html, braid-body { display: block; } braid-head { display: none; }</style>';
|
|
43
52
|
/**
|
|
44
53
|
* Inline event handler content attributes (`onclick`, `onerror`, …).
|
|
45
54
|
*
|
|
@@ -145,7 +154,7 @@ export function prepareFragmentHtml(body, options) {
|
|
|
145
154
|
handlers: {
|
|
146
155
|
'*': {
|
|
147
156
|
element(tag) {
|
|
148
|
-
// before the handlers go: the onload
|
|
157
|
+
// before the handlers go: the onload (or Angular's ngCspMedia) says which media the sheet is really for
|
|
149
158
|
if (tag.tagName === 'link')
|
|
150
159
|
applyDeferredStylesheetMedia(tag);
|
|
151
160
|
for (const attributeName of tag.attributeNames) {
|
|
@@ -219,22 +228,25 @@ export function prepareFragmentHtml(body, options) {
|
|
|
219
228
|
},
|
|
220
229
|
});
|
|
221
230
|
}
|
|
231
|
+
/** A plain media query list (range syntax included): no quote or `&`, nothing to smuggle out of an attribute. */
|
|
232
|
+
const PLAIN_MEDIA = /[\w\s(),:.<>=/-]+/;
|
|
233
|
+
const PLAIN_MEDIA_ONLY = new RegExp(`^${PLAIN_MEDIA.source}$`);
|
|
222
234
|
/**
|
|
223
235
|
* The media an `onload="this.media='…'"` handler switches a stylesheet to.
|
|
224
236
|
*
|
|
225
|
-
* Captured only when the value is a plain media query list
|
|
226
|
-
*
|
|
227
|
-
*
|
|
237
|
+
* Captured only when the value is a {@link PLAIN_MEDIA plain media query list}, so the result is
|
|
238
|
+
* the same either way the browser would read it. The `this.onload=null` reset is accepted before
|
|
239
|
+
* or after.
|
|
228
240
|
*/
|
|
229
|
-
const DEFERRED_STYLESHEET_ONLOAD =
|
|
241
|
+
const DEFERRED_STYLESHEET_ONLOAD = new RegExp(`^\\s*(?:this\\.onload\\s*=\\s*null\\s*;\\s*)?this\\.media\\s*=\\s*(['"])(${PLAIN_MEDIA.source})\\1\\s*(?:;\\s*this\\.onload\\s*=\\s*null\\s*)?(?:;\\s*)?$`);
|
|
230
242
|
/**
|
|
231
|
-
* Longer than any real
|
|
232
|
-
* separated by only optional tokens, which made an earlier version quadratic on a long
|
|
233
|
-
* spaces — but a fragment's attribute is unbounded input, so it is not trusted to stay that way.
|
|
243
|
+
* Longer than any real deferred-media attribute. The onload pattern is linear — no two whitespace
|
|
244
|
+
* runs are separated by only optional tokens, which made an earlier version quadratic on a long
|
|
245
|
+
* run of spaces — but a fragment's attribute is unbounded input, so it is not trusted to stay that way.
|
|
234
246
|
*/
|
|
235
|
-
const
|
|
247
|
+
const MAX_DEFERRED_MEDIA_ATTRIBUTE = 512;
|
|
236
248
|
/**
|
|
237
|
-
* Applies the media a deferred stylesheet
|
|
249
|
+
* Applies the media a deferred stylesheet would have switched itself to once loaded.
|
|
238
250
|
*
|
|
239
251
|
* `<link rel="stylesheet" media="print" onload="this.media='all'">` is how Angular (through its
|
|
240
252
|
* critical-CSS inliner) and others load a stylesheet without blocking render: the sheet is fetched
|
|
@@ -243,13 +255,26 @@ const MAX_DEFERRED_STYLESHEET_ONLOAD = 512;
|
|
|
243
255
|
* the fragment would render unstyled. Writing the promoted media up front costs only the
|
|
244
256
|
* non-blocking load, which a fragment's shadow root does not get anyway.
|
|
245
257
|
*
|
|
246
|
-
*
|
|
258
|
+
* Angular before 22.2 with a CSP nonce writes `ngCspMedia="all"` instead of the handler, and a
|
|
259
|
+
* nonce'd script copies it into `media` from a capture-phase `load` listener on the document. In a
|
|
260
|
+
* fragment that script runs only once the realm boots, while the link starts loading as soon as it
|
|
261
|
+
* is in the host's shadow root: a sheet that arrives first — a cache hit, say — loads before
|
|
262
|
+
* anything is listening, and stays print-only. The attribute is applied here instead, and removed
|
|
263
|
+
* so nothing applies it twice. A value that is not plain media falls back to the onload, if any.
|
|
264
|
+
*
|
|
265
|
+
* A `media="print"` link with neither is a real print stylesheet and is left alone.
|
|
247
266
|
*/
|
|
248
267
|
function applyDeferredStylesheetMedia(tag) {
|
|
249
268
|
if (!/(?:^|\s)stylesheet(?:\s|$)/i.test(tag.getAttribute('rel') ?? ''))
|
|
250
269
|
return;
|
|
270
|
+
const cspMedia = tag.getAttribute('ngcspmedia')?.trim();
|
|
271
|
+
if (cspMedia && cspMedia.length <= MAX_DEFERRED_MEDIA_ATTRIBUTE && PLAIN_MEDIA_ONLY.test(cspMedia)) {
|
|
272
|
+
tag.setAttribute('media', cspMedia);
|
|
273
|
+
tag.removeAttribute('ngcspmedia');
|
|
274
|
+
return;
|
|
275
|
+
}
|
|
251
276
|
const onload = tag.getAttribute('onload') ?? '';
|
|
252
|
-
if (onload.length >
|
|
277
|
+
if (onload.length > MAX_DEFERRED_MEDIA_ATTRIBUTE)
|
|
253
278
|
return;
|
|
254
279
|
const media = DEFERRED_STYLESHEET_ONLOAD.exec(onload)?.[2];
|
|
255
280
|
if (media)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transforms.js","sourceRoot":"","sources":["../../../../../libs/braid-gateway/src/rewriter/transforms.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"transforms.js","sourceRoot":"","sources":["../../../../../libs/braid-gateway/src/rewriter/transforms.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAa,iBAAiB,EAAY,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEnH;;;;;;GAMG;AAEH,2FAA2F;AAC3F,MAAM,CAAC,MAAM,kBAAkB,GAC7B,kDAAkD,CAAC;AAErD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,UAAU,CAAC,OAAgB;IACzC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACtD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,8FAA8F;IAC9F,+FAA+F;IAC/F,MAAM,KAAK,GAAG,iFAAiF,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7G,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AAC5B,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,SAAS,CAAC,MAAc,EAAE,KAAoB;IAC5D,IAAI,CAAC,KAAK;QAAE,OAAO,MAAM,CAAC;IAC1B,OAAO,MAAM,CAAC,OAAO,CAAC,2BAA2B,EAAE,cAAc,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC9F,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAChC,wIAAwI;IACxI,wHAAwH;IACxH,yGAAyG,CAAC;AAE5G;;;;;;;;;GASG;AACH,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAE1C;;;;;;;;;;;;;GAaG;AACH,MAAM,sBAAsB,GAAsC;IAChE,KAAK,EAAE,CAAC,KAAK,CAAC;IACd,KAAK,EAAE,CAAC,KAAK,CAAC;IACd,MAAM,EAAE,CAAC,KAAK,CAAC;IACf,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;IACtB,KAAK,EAAE,CAAC,KAAK,CAAC;IACd,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,MAAM,EAAE,CAAC,MAAM,CAAC;IAChB,MAAM,EAAE,CAAC,KAAK,CAAC;IACf,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,KAAK,EAAE,CAAC,KAAK,CAAC;IACd,GAAG,EAAE,CAAC,MAAM,CAAC;IACb,KAAK,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;CACzB,CAAC;AAEF,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;AAE9C;;;;;;;;;;GAUG;AACH,MAAM,uBAAuB,GAA2B;IACtD,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,MAAM;CACf,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,mBAAmB,CACjC,IAAgC,EAChC,OAKC;IAED,8FAA8F;IAC9F,MAAM,YAAY,GAAG,gBAAgB,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEpF,2FAA2F;IAC3F,sFAAsF;IACtF,MAAM,IAAI,GAAG,CAAC,IAAmB,EAAE,WAA0B,EAAE,EAAE;QAC/D,IAAI,IAAI,EAAE,UAAU,CAAC,GAAG,YAAY,GAAG,CAAC;YAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;IACtF,CAAC,CAAC;IAEF,4FAA4F;IAC5F,4FAA4F;IAC5F,IAAI,gBAAgB,GAAG,GAAG,CAAC;IAE3B,OAAO,iBAAiB,CAAC,IAAI,EAAE;QAC7B,YAAY,EAAE,IAAI;QAClB,QAAQ,EAAE;YACR,GAAG,EAAE;gBACH,OAAO,CAAC,GAAG;oBACT,wGAAwG;oBACxG,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM;wBAAE,4BAA4B,CAAC,GAAG,CAAC,CAAC;oBAC9D,KAAK,MAAM,aAAa,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;wBAC/C,IAAI,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;4BAC7C,GAAG,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;wBACrC,CAAC;oBACH,CAAC;oBACD,yBAAyB,CAAC,GAAG,CAAC,CAAC;oBAC/B,sBAAsB,CAAC,GAAG,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;gBAC9D,CAAC;aACF;YACD,IAAI,EAAE;gBACJ,OAAO,CAAC,GAAG;oBACT,iFAAiF;oBACjF,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;oBACtC,IAAI,IAAI;wBAAE,gBAAgB,GAAG,IAAI,CAAC;gBACpC,CAAC;aACF;YACD,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,YAAY,CAAC,EAAE;YAC7D,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,YAAY,CAAC,EAAE;YAC7D,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,YAAY,CAAC,EAAE;YAC7D,MAAM,EAAE;gBACN,OAAO,CAAC,GAAG;oBACT,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;oBACtC,mFAAmF;oBACnF,4FAA4F;oBAC5F,wCAAwC;oBACxC,MAAM,WAAW,GAAG,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;oBACpD,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;wBAC7C,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;oBACvF,CAAC;oBACD,IAAI,IAAI;wBAAE,GAAG,CAAC,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;oBACrD,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACpC,CAAC;aACF;YACD,IAAI,EAAE;gBACJ,OAAO,CAAC,GAAG;oBACT,MAAM,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpC,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;oBACtC,MAAM,WAAW,GAAG,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;oBACpD,yFAAyF;oBACzF,kFAAkF;oBAClF,2FAA2F;oBAC3F,+EAA+E;oBAC/E,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;wBACjE,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,EAAE,CAAC,CAAC;wBAC1C,GAAG,CAAC,YAAY,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;wBAC9C,OAAO;oBACT,CAAC;oBACD,IAAI,GAAG,KAAK,eAAe;wBAAE,IAAI,CAAC,IAAI,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC;oBAC3D,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,QAAQ;wBAAE,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;oBACtF,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,eAAe,EAAE,CAAC;wBACvE,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,EAAE,CAAC,CAAC;oBAC1C,CAAC;gBACH,CAAC;aACF;YACD,IAAI,EAAE;gBACJ,OAAO,CAAC,GAAG;oBACT,uFAAuF;oBACvF,2CAA2C;oBAC3C,IAAI,GAAG,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,SAAS;wBAAE,OAAO;oBAC/E,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;oBAClC,GAAG,CAAC,YAAY,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAC;gBACzD,CAAC;aACF;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED,iHAAiH;AACjH,MAAM,WAAW,GAAG,mBAAmB,CAAC;AACxC,MAAM,gBAAgB,GAAG,IAAI,MAAM,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;AAE/D;;;;;;GAMG;AACH,MAAM,0BAA0B,GAAG,IAAI,MAAM,CAC3C,4EAA4E,WAAW,CAAC,MAAM,6DAA6D,CAC5J,CAAC;AAEF;;;;GAIG;AACH,MAAM,4BAA4B,GAAG,GAAG,CAAC;AAEzC;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAS,4BAA4B,CAAC,GAAa;IACjD,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAAE,OAAO;IAC/E,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC;IACxD,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,IAAI,4BAA4B,IAAI,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnG,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACpC,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAClC,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAChD,IAAI,MAAM,CAAC,MAAM,GAAG,4BAA4B;QAAE,OAAO;IACzD,MAAM,KAAK,GAAG,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAI,KAAK;QAAE,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,yBAAyB,CAAC,GAAa;IAC9C,MAAM,eAAe,GAAG,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7D,IAAI,CAAC,eAAe;QAAE,OAAO;IAE7B,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IACjD,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAChC,CAAC;IAED,oFAAoF;IACpF,IAAI,GAAG,CAAC,OAAO,KAAK,QAAQ,IAAI,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC;IAED,IAAI,OAAO,CAAC,MAAM;QAAE,GAAG,CAAC,YAAY,CAAC,oBAAoB,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,gGAAgG;AAChG,SAAS,kBAAkB,CAAC,MAAc;IACxC,MAAM,GAAG,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IACrD,MAAM,MAAM,GAAG,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACtD,OAAO,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,OAAO,IAAI,GAAG,KAAK,aAAa,CAAC;AAClG,CAAC;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,MAAc;IACxC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC5C,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IACrB,OAAO,KAAK,GAAG,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI;QAAE,KAAK,EAAE,CAAC;IAC7D,OAAO,GAAG,GAAG,KAAK,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,IAAI;QAAE,GAAG,EAAE,CAAC;IAC7D,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC/B,CAAC;AAED,uEAAuE;AACvE,SAAS,sBAAsB,CAAC,GAAa,EAAE,YAAoB,EAAE,QAAgB;IACnF,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,sBAAsB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxH,IAAI,CAAC,UAAU;QAAE,OAAO;IAExB,KAAK,MAAM,aAAa,IAAI,UAAU,EAAE,CAAC;QACvC,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK;YAAE,SAAS;QAErB,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC;YACpD,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,CAAC;YAC9C,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QAEhD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,GAAG,CAAC,YAAY,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,MAAc,EAAE,YAAoB,EAAE,QAAgB;IAC1E,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IAC1B,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,yFAAyF;IACzF,IAAI,GAAG,KAAK,YAAY,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,YAAY,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAE5E,4FAA4F;IAC5F,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,uBAAuB,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC7G,OAAO,GAAG,YAAY,GAAG,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;AACjF,CAAC;AAED,uFAAuF;AACvF,SAAS,aAAa,CAAC,KAAa,EAAE,YAAoB,EAAE,QAAgB;IAC1E,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QAC7C,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAE7B,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC;QAC3C,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QAC7D,IAAI,UAAU,KAAK,IAAI;YAAE,OAAO,SAAS,CAAC;QAE1C,OAAO,GAAG,IAAI,CAAC;QACf,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9C,CAAC;AAYD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAA8B;IAChE,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACzE,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE;QAC7B,MAAM,IAAI,GAAG,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,iBAAiB,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC;QACzH,OAAO,8BAA8B,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC;IACxE,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAgDD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC;AAE3C;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,gBAAgB,CAAC;AAoBnD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,eAAe,CAAC,OAAsB;IACpD,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAE7C,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC9F,qGAAqG;IACrG,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,sGAAsG;IACtG,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACzC,IAAI,SAAS,IAAI,QAAQ;YAAE,KAAK,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACpH,CAAC;IACD;;;;OAIG;IACH,MAAM,WAAW,GAAG,CAAC,MAA2B,EAAoB,EAAE,CACpE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;QAC/B,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;QACvB,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACtB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC9E,KAAK,MAAM,CAAC,OAAO,CAAC,IAAI,CACtB,GAAG,EAAE;gBACH,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,EACD,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;QACJ,CAAC,CAAC,CAAC;IAET,mFAAmF;IACnF,MAAM,IAAI,GAA0B,EAAE,CAAC;IACvC;;;;OAIG;IACH,IAAI,SAA6B,CAAC;IAElC,MAAM,MAAM,GAAG,KAAK,EAAE,MAA0C,EAAyB,EAAE,CACzF,SAAS,IAAI,MAAM;QACjB,CAAC,CAAC;YACE,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,GAAG,CAAC,MAAM,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC;YACxD,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;YAC9D,GAAG,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC;SAC1B;QACH,CAAC,CAAC,MAAM,CAAC;IAEb,MAAM,UAAU,GAAG,CAAC,MAAoB,EAAe,EAAE,CAAC;QACxD,kCAAkC;QAClC,qBAAqB;QACrB,kBAAkB;QAClB,MAAM,CAAC,OAAO,IAAI,EAAE;QACpB,mBAAmB;QACnB,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,aAAa;KACd,CAAC;IAEF,+EAA+E;IAC/E,MAAM,UAAU,GAAG,CAAC,MAAoB,EAAa,EAAE,CACrD,aAAa,CAAC;QACZ,wBAAwB,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG;YAC3D,0FAA0F;YAC1F,4BAA4B;YAC5B,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,yBAAyB;QACvF,GAAG,UAAU,CAAC,MAAM,CAAC;QACrB,kBAAkB;KACnB,CAAC,CAAC;IAEL,8EAA8E;IAC9E,MAAM,gBAAgB,GAAG,KAAK,IAAoC,EAAE;QAClE,MAAM,SAAS,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACxC,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,OAAO,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9F,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7E,CAAC,CAAC;IAEF;;;;;;OAMG;IACH,MAAM,WAAW,GAAG,GAA0B,EAAE;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QACtC,MAAM,KAAK,GAAG,eAAe,CAAC,SAAU,CAAC,CAAC;QAC1C,OAAO,gBAAgB,CACrB,CAAC,KAAK,SAAS,CAAC;YACd,0FAA0F;YAC1F,0EAA0E;YAC1E,MAAM,QAAQ,GAAG,IAAI,GAAG,CACtB,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;gBACtB,MAAM,CAAC,UAAU;gBACjB,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAiB,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;aAC7F,CAAC,CACH,CAAC;YACF,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACrB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBACrD,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACnC,MAAM,IAAI,GAAG,IAAI,cAAc,SAAS,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,KAAK,GAAG,CAAC;gBAC/F,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,yBAAyB,eAAe,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/G,KAAK,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,GAAG,IAAI,uBAAuB,MAAM,aAAa,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC;oBACpG,SAAS;gBACX,CAAC;gBACD,KAAK,CAAC,CAAC,OAAO,CACZ,aAAa,CAAC;oBACZ,GAAG,IAAI,UAAU;oBACjB,GAAG,UAAU,CAAC,MAAM,CAAC;oBACrB,IAAI,kBAAkB,MAAM,kBAAkB,MAAM,cAAc,GAAG;iBACtE,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,EAAE,CACL,CAAC;IACJ,CAAC,CAAC;IAEF,0EAA0E;IAC1E,MAAM,aAAa,GAAG,KAAK,IAAoC,EAAE;QAC/D,MAAM,KAAK,GAAG,CAAC,MAAM,gBAAgB,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAqB,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QAChH,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACzD,CAAC,CAAC;IAEF,OAAO,iBAAiB,CAAC,KAAK,EAAE;QAC9B,QAAQ,EAAE;YACR,IAAI,EAAE;gBACJ,OAAO,CAAC,GAAG;oBACT,IAAI,cAAc;wBAAE,OAAO;oBAC3B,cAAc,GAAG,IAAI,CAAC;oBACtB,uFAAuF;oBACvF,kEAAkE;oBAClE,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,kBAAkB,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC;gBACjF,CAAC;aACF;YAED,eAAe,EAAE;gBACf,OAAO,CAAC,GAAG;oBACT,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;oBAEtC,sFAAsF;oBACtF,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACnD,uFAAuF;wBACvF,IAAI,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,WAAW,IAAI,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,UAAU;4BAAE,OAAO;wBACpG,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACpE,IAAI,CAAC,MAAM;4BAAE,OAAO;wBACpB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;wBAClC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;wBAChC,8DAA8D;wBAC9D,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;wBAC5C,OAAO,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;oBACjC,CAAC;oBAED,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBACvD,qEAAqE;oBACrE,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,IAAI,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;4BAC/B,uFAAuF;4BACvF,8EAA8E;4BAC9E,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;4BAC5B,GAAG,CAAC,YAAY,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;4BAC/C,OAAO,CAAC,IAAI,CACV,yCAAyC,IAAI,yCAAyC;gCACpF,UAAU,IAAI,8EAA8E,CAC/F,CAAC;wBACJ,CAAC;wBACD,OAAO;oBACT,CAAC;oBACD,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;oBACrC,OAAO,UAAU,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;gBACpC,CAAC;aACF;YAED,IAAI,EAAE;gBACJ,KAAK,CAAC,MAAM,CAAC,GAAG;oBACd,MAAM,GAAG,GAAG,MAAM,aAAa,EAAE,CAAC;oBAClC,IAAI,GAAG;wBAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC3B,CAAC;aACF;SACF;QAED,gFAAgF;QAChF,KAAK,EAAE,aAAa;KACrB,CAAC,CAAC;IAEH,iGAAiG;IACjG,KAAK,UAAU,UAAU,CAAC,GAAa,EAAE,SAA6C;QACpF,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,SAAS,CAAC,GAAG,IAAI,QAAQ,IAAI,QAAQ,KAAK,SAAS,CAAC,GAAG,EAAE,CAAC;YAC5D,sFAAsF;YACtF,qFAAqF;YACrF,iEAAiE;YACjE,OAAO,CAAC,IAAI,CACV,qCAAqC,SAAS,CAAC,UAAU,mBAAmB,QAAQ,IAAI;gBACtF,kCAAkC,SAAS,CAAC,GAAG,yCAAyC;gBACxF,sCAAsC,CACzC,CAAC;QACJ,CAAC;QACD,IAAI,SAAS,CAAC,GAAG,IAAI,CAAC,QAAQ;YAAE,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;QAEvE,IAAI,SAAS,IAAI,SAAS,IAAI,SAAS,CAAC,UAAU,IAAI,CAAC,CAAC,MAAM,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YACtF,6FAA6F;YAC7F,kDAAkD;YAClD,SAAS,KAAK,MAAM,CAAC,UAAU,EAAE,CAAC;YAClC,GAAG,CAAC,YAAY,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;YACnD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QAED,4CAA4C;QAC5C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;QAEvC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,iFAAiF;YACjF,2CAA2C;YAC3C,IAAI,MAAM,CAAC,cAAc;gBAAE,GAAG,CAAC,YAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;YAC1F,OAAO;QACT,CAAC;QAED,GAAG,CAAC,YAAY,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;QAC3C,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACtC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,QAAQ,CAAC,IAAkB;IAClC,OAAO,IAAI,cAAc,CACvB;QACE,IAAI,CAAC,UAAU;YACb,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC;YACrB,IAAI,KAAK;gBAAE,UAAU,CAAC,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/D,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;KACF,EACD,EAAE,aAAa,EAAE,CAAC,EAAE,CACrB,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC1F,CAAC;AAED,yEAAyE;AACzE,KAAK,SAAS,CAAC,CAAC,OAAO,CAAC,MAAkC;IACxD,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;IAClC,IAAI,CAAC;QACH,SAAS,CAAC;YACR,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,IAAI;gBAAE,OAAO;YACjB,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;AACH,CAAC"}
|