@analogjs/vite-plugin-angular 2.0.0-alpha.10 → 2.0.0-alpha.12

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@analogjs/vite-plugin-angular",
3
- "version": "2.0.0-alpha.10",
3
+ "version": "2.0.0-alpha.12",
4
4
  "description": "Vite Plugin for Angular",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -24,8 +24,8 @@
24
24
  "url": "https://github.com/sponsors/brandonroberts"
25
25
  },
26
26
  "peerDependencies": {
27
- "@angular-devkit/build-angular": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
28
- "@angular/build": "^18.0.0 || ^19.0.0"
27
+ "@angular-devkit/build-angular": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0",
28
+ "@angular/build": "^18.0.0 || ^19.0.0 || ^20.0.0"
29
29
  },
30
30
  "peerDependenciesMeta": {
31
31
  "@angular-devkit/build-angular": {
@@ -10,7 +10,8 @@ export function pendingTasksPlugin() {
10
10
  return {
11
11
  name: 'analogjs-pending-tasks-plugin',
12
12
  transform(code, id) {
13
- if (Number(`${angularMajor}${angularMinor}${angularPatch}`) < 1904 &&
13
+ const padVersion = (version) => String(version).padStart(2, '0');
14
+ if (Number(`${angularMajor}${padVersion(angularMinor)}${padVersion(angularPatch)}`) < 190004 &&
14
15
  id.includes('analogjs-content.mjs')) {
15
16
  return {
16
17
  code: code.replace('ɵPendingTasksInternal', 'ɵPendingTasks'),
@@ -1 +1 @@
1
- {"version":3,"file":"angular-pending-tasks.plugin.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-angular/src/lib/angular-pending-tasks.plugin.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE7E;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO;QACL,IAAI,EAAE,+BAA+B;QACrC,SAAS,CAAC,IAAI,EAAE,EAAE;YAChB,IACE,MAAM,CAAC,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,EAAE,CAAC,GAAG,IAAI;gBAC9D,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EACnC,CAAC;gBACD,OAAO;oBACL,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,eAAe,CAAC;iBAC7D,CAAC;YACJ,CAAC;YACD,OAAO;QACT,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"angular-pending-tasks.plugin.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-angular/src/lib/angular-pending-tasks.plugin.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE7E;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO;QACL,IAAI,EAAE,+BAA+B;QACrC,SAAS,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,UAAU,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAEzE,IACE,MAAM,CACJ,GAAG,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,EAAE,CACxE,GAAG,MAAM;gBACV,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EACnC,CAAC;gBACD,OAAO;oBACL,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,eAAe,CAAC;iBAC7D,CAAC;YACJ,CAAC;YACD,OAAO;QACT,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -33,7 +33,7 @@ export interface PluginOptions {
33
33
  disableTypeChecking?: boolean;
34
34
  }
35
35
  export declare function angular(options?: PluginOptions): Plugin[];
36
- export declare function getFileMetadata(program: ts.BuilderProgram, angularCompiler?: NgtscProgram['compiler'], liveReload?: boolean, disableTypeChecking?: boolean): (file: string, stale?: ts.SourceFile) => {
36
+ export declare function getFileMetadata(program: ts.BuilderProgram, angularCompiler?: NgtscProgram['compiler'], liveReload?: boolean, disableTypeChecking?: boolean): (file: string) => {
37
37
  errors?: undefined;
38
38
  warnings?: undefined;
39
39
  hmrUpdateCode?: undefined;
@@ -17,14 +17,13 @@ import { getFrontmatterMetadata } from './authoring/frontmatter.js';
17
17
  import { defaultMarkdownTemplateTransforms, } from './authoring/markdown-transform.js';
18
18
  import { routerPlugin } from './router-plugin.js';
19
19
  import { pendingTasksPlugin } from './angular-pending-tasks.plugin.js';
20
- import { analyzeFileUpdates } from './utils/hmr-candidates.js';
20
+ import { liveReloadPlugin } from './live-reload-plugin.js';
21
21
  /**
22
22
  * TypeScript file extension regex
23
23
  * Match .(c or m)ts, .ts extensions with an optional ? for query params
24
24
  * Ignore .tsx extensions
25
25
  */
26
26
  const TS_EXT_REGEX = /\.[cm]?(ts|analog|ag)[^x]?\??/;
27
- const ANGULAR_COMPONENT_PREFIX = '/@ng/component';
28
27
  const classNames = new Map();
29
28
  export function angular(options) {
30
29
  /**
@@ -142,40 +141,6 @@ export function angular(options) {
142
141
  server.watcher.on('unlink', async () => {
143
142
  await performCompilation(resolvedConfig);
144
143
  });
145
- if (pluginOptions.liveReload) {
146
- const angularComponentMiddleware = async (req, res, next) => {
147
- if (req.url === undefined || res.writableEnded) {
148
- return;
149
- }
150
- if (!req.url.includes(ANGULAR_COMPONENT_PREFIX)) {
151
- next();
152
- return;
153
- }
154
- const requestUrl = new URL(req.url, 'http://localhost');
155
- const componentId = requestUrl.searchParams.get('c');
156
- if (!componentId) {
157
- res.statusCode = 400;
158
- res.end();
159
- return;
160
- }
161
- const [fileId] = decodeURIComponent(componentId).split('@');
162
- const resolvedId = resolve(process.cwd(), fileId);
163
- const invalidated = !!server.moduleGraph.getModuleById(resolvedId)
164
- ?.lastInvalidationTimestamp && classNames.get(resolvedId);
165
- // don't send an HMR update until the file has been invalidated
166
- if (!invalidated) {
167
- res.setHeader('Content-Type', 'text/javascript');
168
- res.setHeader('Cache-Control', 'no-cache');
169
- res.end('');
170
- return;
171
- }
172
- const result = fileEmitter(resolvedId);
173
- res.setHeader('Content-Type', 'text/javascript');
174
- res.setHeader('Cache-Control', 'no-cache');
175
- res.end(`${result?.hmrUpdateCode || ''}`);
176
- };
177
- viteServer.middlewares.use(angularComponentMiddleware);
178
- }
179
144
  },
180
145
  async buildStart() {
181
146
  // Defer the first compilation in test mode
@@ -195,11 +160,10 @@ export function angular(options) {
195
160
  ['ag', 'analog', 'agx'].some((ext) => fileId.endsWith(ext))) {
196
161
  fileId += '.ts';
197
162
  }
198
- sourceFileCache.invalidate([fileId]);
199
163
  await performCompilation(resolvedConfig, [fileId]);
200
164
  const result = fileEmitter(fileId);
201
165
  if (pluginOptions.liveReload &&
202
- !!result?.hmrEligible &&
166
+ result?.hmrEligible &&
203
167
  classNames.get(fileId)) {
204
168
  const relativeFileId = `${relative(process.cwd(), fileId)}@${classNames.get(fileId)}`;
205
169
  sendHMRComponentUpdate(ctx.server, relativeFileId);
@@ -287,7 +251,7 @@ export function angular(options) {
287
251
  classNames.clear();
288
252
  return ctx.modules;
289
253
  },
290
- resolveId(id, importer, options) {
254
+ resolveId(id, importer) {
291
255
  if (id.startsWith('angular:jit:')) {
292
256
  const path = id.split(';')[1];
293
257
  return `${normalizePath(resolve(dirname(importer), path))}?raw`;
@@ -299,15 +263,9 @@ export function angular(options) {
299
263
  return componentStyles + new URL(id, 'http://localhost').search;
300
264
  }
301
265
  }
302
- if (options?.ssr && id.includes(ANGULAR_COMPONENT_PREFIX)) {
303
- const requestUrl = new URL(id.slice(1), 'http://localhost');
304
- const componentId = requestUrl.searchParams.get('c');
305
- const res = resolve(process.cwd(), decodeURIComponent(componentId).split('@')[0]);
306
- return res;
307
- }
308
266
  return undefined;
309
267
  },
310
- async load(id, options) {
268
+ async load(id) {
311
269
  // Map angular inline styles to the source text
312
270
  if (isComponentStyleSheet(id)) {
313
271
  const componentStyles = inlineComponentStyles?.get(getFilenameFromPath(id));
@@ -315,17 +273,6 @@ export function angular(options) {
315
273
  return componentStyles;
316
274
  }
317
275
  }
318
- if (pluginOptions.liveReload &&
319
- options?.ssr &&
320
- id.includes(ANGULAR_COMPONENT_PREFIX)) {
321
- const requestUrl = new URL(id.slice(1), 'http://localhost');
322
- const componentId = requestUrl.searchParams.get('c');
323
- if (!componentId) {
324
- return;
325
- }
326
- const result = fileEmitter(resolve(process.cwd(), decodeURIComponent(componentId).split('@')[0]));
327
- return result?.hmrUpdateCode || '';
328
- }
329
276
  return;
330
277
  },
331
278
  async transform(code, id) {
@@ -463,6 +410,7 @@ export function angular(options) {
463
410
  }
464
411
  return [
465
412
  angularPlugin(),
413
+ pluginOptions.liveReload && liveReloadPlugin({ classNames, fileEmitter }),
466
414
  ...(isTest && !isStackBlitz ? angularVitestPlugins() : []),
467
415
  (jit &&
468
416
  jitPlugin({
@@ -639,9 +587,7 @@ export function angular(options) {
639
587
  if (filename.includes('ngtypecheck.ts') || filename.includes('.d.')) {
640
588
  return;
641
589
  }
642
- const metadata = watchMode
643
- ? fileMetadata(filename, sourceFileCache.get(filename))
644
- : {};
590
+ const metadata = watchMode ? fileMetadata(filename) : {};
645
591
  outputFiles.set(filename, {
646
592
  content,
647
593
  dependencies: [],
@@ -708,14 +654,11 @@ function sendHMRComponentUpdate(server, id) {
708
654
  }
709
655
  export function getFileMetadata(program, angularCompiler, liveReload, disableTypeChecking) {
710
656
  const ts = require('typescript');
711
- return (file, stale) => {
657
+ return (file) => {
712
658
  const sourceFile = program.getSourceFile(file);
713
659
  if (!sourceFile) {
714
660
  return {};
715
661
  }
716
- const hmrEligible = liveReload && stale
717
- ? !!analyzeFileUpdates(stale, sourceFile, angularCompiler)
718
- : false;
719
662
  const diagnostics = getDiagnosticsForSourceFile(sourceFile, !!disableTypeChecking, program, angularCompiler);
720
663
  const errors = diagnostics
721
664
  .filter((d) => d.category === ts.DiagnosticCategory?.Error)
@@ -726,11 +669,15 @@ export function getFileMetadata(program, angularCompiler, liveReload, disableTyp
726
669
  .filter((d) => d.category === ts.DiagnosticCategory?.Warning)
727
670
  .map((d) => d.messageText);
728
671
  let hmrUpdateCode = undefined;
672
+ let hmrEligible = false;
729
673
  if (liveReload) {
730
674
  for (const node of sourceFile.statements) {
731
675
  if (ts.isClassDeclaration(node) && node.name != null) {
732
676
  hmrUpdateCode = angularCompiler?.emitHmrUpdateModule(node);
733
- !!hmrUpdateCode && classNames.set(file, node.name.getText());
677
+ if (!!hmrUpdateCode) {
678
+ classNames.set(file, node.name.getText());
679
+ hmrEligible = true;
680
+ }
734
681
  }
735
682
  }
736
683
  }
@@ -1 +1 @@
1
- {"version":3,"file":"angular-vite-plugin.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-angular/src/lib/angular-vite-plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEnD,OAAO,KAAK,WAAW,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAEL,aAAa,EAGb,aAAa,GAGd,MAAM,MAAM,CAAC;AACd,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EACL,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,EAC5B,iBAAiB,GAClB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E,OAAO,EACL,4BAA4B,EAC5B,eAAe,EACf,YAAY,GACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEvE,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EACL,iCAAiC,GAElC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AA8C/D;;;;GAIG;AACH,MAAM,YAAY,GAAG,+BAA+B,CAAC;AACrD,MAAM,wBAAwB,GAAG,gBAAgB,CAAC;AAClD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;AAQ7B,MAAM,UAAU,OAAO,CAAC,OAAuB;IAC7C;;;OAGG;IACH,MAAM,aAAa,GAAG;QACpB,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,EAAE;QACjC,aAAa,EAAE,OAAO,EAAE,aAAa,IAAI,OAAO,CAAC,GAAG,EAAE;QACtD,qBAAqB,EAAE,OAAO,EAAE,qBAAqB,IAAI,KAAK;QAC9D,QAAQ,EAAE;YACR,cAAc,EAAE;gBACd,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,IAAI,EAAE;gBACvD,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,IAAI,EAAE;gBACrD,iBAAiB,EACf,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,iBAAiB,IAAI,EAAE;aAC7D;SACF;QACD,iBAAiB,EAAE,OAAO,EAAE,iBAAiB,IAAI,CAAC,WAAW,CAAC;QAC9D,GAAG,EAAE,OAAO,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG;QACtE,mBAAmB,EAAE,OAAO,EAAE,YAAY,EAAE,mBAAmB,IAAI,KAAK;QACxE,0BAA0B,EAAE,OAAO,EAAE,YAAY;YAC/C,EAAE,0BAA0B,EAAE,MAAM;YACpC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,0BAA0B;YACjD,CAAC,CAAC,iCAAiC;QACrC,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE;QAC/B,qBAAqB,EAAE,OAAO,EAAE,qBAAqB,IAAI,EAAE;QAC3D,UAAU,EAAE,OAAO,EAAE,UAAU,IAAI,KAAK;QACxC,mBAAmB,EAAE,OAAO,EAAE,mBAAmB,IAAI,IAAI;KAC1D,CAAC;IAEF,IAAI,cAA8B,CAAC;IACnC,IAAI,WAAkD,CAAC;IACvD,IAAI,cAA2D,CAAC;IAChE,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,aAAa,GAAG,eAAe,EAAE,CAAC;IACtC,IAAI,qBAAsD,CAAC;IAC3D,IAAI,uBAAwD,CAAC;IAC7D,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7E,MAAM,cAAc,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACxD,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,MAAM,CAAC;IAClE,MAAM,WAAW,GACf,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,KAAK,MAAM,CAAC;IAE7C,MAAM,GAAG,GACP,OAAO,aAAa,EAAE,GAAG,KAAK,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;IACzE,IAAI,UAAqC,CAAC;IAE1C,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAClD,MAAM,oBAAoB,GAAG,IAAI,oBAAoB,EAAE,CAAC;IACxD,MAAM,WAAW,GAAG,IAAI,GAAG,EAA0B,CAAC;IACtD,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,EAAE;QACnC,OAAO,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC;IACF,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,MAAM,gBAAgB,GAAsB,EAAE,CAAC;IAE/C,SAAS,aAAa;QACpB,IAAI,MAAM,GAAG,KAAK,CAAC;QAEnB,IAAI,YAAY,GAAG,EAAE,IAAI,MAAM,EAAE,CAAC;YAChC,aAAa,CAAC,UAAU,GAAG,KAAK,CAAC;QACnC,CAAC;QAED,OAAO;YACL,IAAI,EAAE,+BAA+B;YACrC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE;gBAC9B,SAAS,GAAG,OAAO,KAAK,OAAO,CAAC;gBAChC,MAAM;oBACJ,MAAM,CAAC,IAAI,KAAK,YAAY;wBAC5B,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,YAAY,CAAC;gBAC3C,aAAa,CAAC,QAAQ,GAAG,eAAe,CACtC,MAAM,CAAC,IAAI,IAAI,GAAG,EAClB,aAAa,EACb,MAAM,EACN,MAAM,EACN,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CACrB,CAAC;gBAEF,OAAO;oBACL,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,KAAK;oBAChC,YAAY,EAAE;wBACZ,OAAO,EAAE,CAAC,gBAAgB,EAAE,MAAM,CAAC;wBACnC,OAAO,EAAE,CAAC,0BAA0B,CAAC;wBACrC,cAAc,EAAE;4BACd,OAAO,EAAE;gCACP,oBAAoB,CAClB;oCACE,QAAQ,EAAE,aAAa,CAAC,QAAQ;oCAChC,SAAS,EAAE,CAAC,MAAM;oCAClB,qBAAqB,EAAE,MAAM;oCAC7B,GAAG;oCACH,WAAW,EAAE,SAAS;iCACvB,EACD,MAAM,EACN,CAAC,kBAAkB,CACpB;6BACF;4BACD,MAAM,EAAE;gCACN,SAAS,EAAE,OAAO;gCAClB,iBAAiB,EAAE,OAAO;gCAC1B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;6BAC7C;yBACF;qBACF;oBACD,OAAO,EAAE;wBACP,UAAU,EAAE,CAAC,OAAO,CAAC;qBACtB;iBACF,CAAC;YACJ,CAAC;YACD,cAAc,CAAC,MAAM;gBACnB,cAAc,GAAG,MAAM,CAAC;gBAExB,IAAI,MAAM,EAAE,CAAC;oBACX,sBAAsB;oBACtB,sCAAsC;oBACtC,0FAA0F;oBAC1F,wCAAwC;oBACxC,qDAAqD;oBACrD,aAAa;wBACX,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC;4BAC/B,MAAM,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI;4BAC3B,aAAa,CAAC;gBAClB,CAAC;YACH,CAAC;YACD,eAAe,CAAC,MAAM;gBACpB,UAAU,GAAG,MAAM,CAAC;gBACpB,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;oBAClC,MAAM,kBAAkB,CAAC,cAAc,CAAC,CAAC;gBAC3C,CAAC,CAAC,CAAC;gBACH,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;oBACrC,MAAM,kBAAkB,CAAC,cAAc,CAAC,CAAC;gBAC3C,CAAC,CAAC,CAAC;gBAEH,IAAI,aAAa,CAAC,UAAU,EAAE,CAAC;oBAC7B,MAAM,0BAA0B,GAA2B,KAAK,EAC9D,GAA4B,EAC5B,GAA4C,EAC5C,IAA0B,EAC1B,EAAE;wBACF,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;4BAC/C,OAAO;wBACT,CAAC;wBAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;4BAChD,IAAI,EAAE,CAAC;4BAEP,OAAO;wBACT,CAAC;wBAED,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;wBACxD,MAAM,WAAW,GAAG,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAErD,IAAI,CAAC,WAAW,EAAE,CAAC;4BACjB,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;4BACrB,GAAG,CAAC,GAAG,EAAE,CAAC;4BAEV,OAAO;wBACT,CAAC;wBAED,MAAM,CAAC,MAAM,CAAC,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBAC5D,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;wBAClD,MAAM,WAAW,GACf,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,CAAC;4BAC5C,EAAE,yBAAyB,IAAI,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;wBAE9D,+DAA+D;wBAC/D,IAAI,CAAC,WAAW,EAAE,CAAC;4BACjB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;4BACjD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;4BAC3C,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;4BACZ,OAAO;wBACT,CAAC;wBAED,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;wBACvC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;wBACjD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;wBAC3C,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,aAAa,IAAI,EAAE,EAAE,CAAC,CAAC;oBAC5C,CAAC,CAAC;oBAEF,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;gBACzD,CAAC;YACH,CAAC;YACD,KAAK,CAAC,UAAU;gBACd,2CAA2C;gBAC3C,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,kBAAkB,CAAC,cAAc,CAAC,CAAC;oBAC1D,kBAAkB,GAAG,IAAI,CAAC;oBAE1B,oCAAoC;oBACpC,IAAI,SAAS,EAAE,CAAC;wBACd,sBAAsB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;oBAChD,CAAC;gBACH,CAAC;YACH,CAAC;YACD,KAAK,CAAC,eAAe,CAAC,GAAG;gBACvB,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBAChC,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAEnC,IACE,aAAa,CAAC,mBAAmB;wBACjC,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAC3D,CAAC;wBACD,MAAM,IAAI,KAAK,CAAC;oBAClB,CAAC;oBAED,eAAe,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;oBACrC,MAAM,kBAAkB,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;oBAEnD,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;oBAEnC,IACE,aAAa,CAAC,UAAU;wBACxB,CAAC,CAAC,MAAM,EAAE,WAAW;wBACrB,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EACtB,CAAC;wBACD,MAAM,cAAc,GAAG,GAAG,QAAQ,CAChC,OAAO,CAAC,GAAG,EAAE,EACb,MAAM,CACP,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;wBAE9B,sBAAsB,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;wBAEnD,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;4BAC7B,IAAI,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;gCACxB,OAAO,uBAAuB,CAAC,GAAG,CAAC,CAAC;4BACtC,CAAC;4BAED,OAAO,GAAG,CAAC;wBACb,CAAC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAED,IAAI,kCAAkC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACtD;;;uBAGG;oBACH,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAC/B,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,SAAS,CAAC,CAC9D,CAAC;oBACF,IAAI,QAAQ,EAAE,CAAC;wBACb,IAAI,aAAa,CAAC,UAAU,IAAI,QAAQ,EAAE,EAAE,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;4BAC9D,MAAM,gBAAgB,GACpB,QAAQ,CAAC,IAAI,KAAK,KAAK,IAAI,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;4BAChE,IAAI,gBAAgB,EAAE,CAAC;gCACrB,MAAM,EAAE,aAAa,EAAE,GAAG,0BAA0B,CAClD,QAAQ,CAAC,EAAE,CACZ,CAAC;gCAEF,sDAAsD;gCACtD,yDAAyD;gCACzD,qEAAqE;gCACrE,IAAI,aAAa,KAAK,QAAQ,EAAE,CAAC;oCAC/B,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC;wCACjB,IAAI,EAAE,QAAQ;wCACd,OAAO,EAAE;4CACP;gDACE,IAAI,EAAE,YAAY;gDAClB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gDACrB,IAAI,EAAE,QAAQ,CAAC,GAAG;gDAClB,YAAY,EAAE,QAAQ,CAAC,IAAI;6CAC5B;yCACF;qCACF,CAAC,CAAC;oCAEH,OAAO,GAAG,CAAC,OAAO;yCACf,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;wCACd,0GAA0G;wCAC1G,sKAAsK;wCACtK,OAAO,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,CAAC;oCACzD,CAAC,CAAC;yCACD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;wCACX,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;4CAC1B,OAAO,uBAAuB,CAAC,GAAG,CAAC,CAAC;wCACtC,CAAC;wCACD,OAAO,GAAG,CAAC;oCACb,CAAC,CAAiB,CAAC;gCACvB,CAAC;4BACH,CAAC;wBACH,CAAC;wBACD,OAAO,GAAG,CAAC,OAAO,CAAC;oBACrB,CAAC;oBAED,MAAM,IAAI,GAAiB,EAAE,CAAC;oBAC9B,MAAM,OAAO,GAAa,EAAE,CAAC;oBAC7B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;wBAC1B,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;4BAC5B,eAAe,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;4BACrC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;4BAE7C,IAAI,aAAa,CAAC,UAAU,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gCACvD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAY,CAAC,CAAC;4BACjC,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;4BACjB,CAAC;wBACH,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,MAAM,kBAAkB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;oBAElD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACvB,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;4BAC3B,MAAM,iBAAiB,GAAG,GAAG,QAAQ,CACnC,OAAO,CAAC,GAAG,EAAE,EACb,QAAQ,CACT,IAAI,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAEhC,sBAAsB,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;wBACxD,CAAC,CAAC,CAAC;wBAEH,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;4BAC7B,IAAI,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;gCACxB,OAAO,uBAAuB,CAAC,GAAG,CAAC,CAAC;4BACtC,CAAC;4BAED,OAAO,GAAG,CAAC;wBACb,CAAC,CAAC,CAAC;oBACL,CAAC;oBAED,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,uCAAuC;gBACvC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACnB,OAAO,GAAG,CAAC,OAAO,CAAC;YACrB,CAAC;YACD,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO;gBAC7B,IAAI,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;oBAClC,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC9B,OAAO,GAAG,aAAa,CACrB,OAAO,CAAC,OAAO,CAAC,QAAkB,CAAC,EAAE,IAAI,CAAC,CAC3C,MAAM,CAAC;gBACV,CAAC;gBAED,oDAAoD;gBACpD,IAAI,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC9B,MAAM,eAAe,GAAG,uBAAuB,EAAE,GAAG,CAClD,mBAAmB,CAAC,EAAE,CAAC,CACxB,CAAC;oBACF,IAAI,eAAe,EAAE,CAAC;wBACpB,OAAO,eAAe,GAAG,IAAI,GAAG,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAC,MAAM,CAAC;oBAClE,CAAC;gBACH,CAAC;gBAED,IAAI,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;oBAC1D,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;oBAC5D,MAAM,WAAW,GAAG,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAErD,MAAM,GAAG,GAAG,OAAO,CACjB,OAAO,CAAC,GAAG,EAAE,EACb,kBAAkB,CAAC,WAAqB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CACxD,CAAC;oBAEF,OAAO,GAAG,CAAC;gBACb,CAAC;gBAED,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO;gBACpB,+CAA+C;gBAC/C,IAAI,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC9B,MAAM,eAAe,GAAG,qBAAqB,EAAE,GAAG,CAChD,mBAAmB,CAAC,EAAE,CAAC,CACxB,CAAC;oBACF,IAAI,eAAe,EAAE,CAAC;wBACpB,OAAO,eAAe,CAAC;oBACzB,CAAC;gBACH,CAAC;gBAED,IACE,aAAa,CAAC,UAAU;oBACxB,OAAO,EAAE,GAAG;oBACZ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EACrC,CAAC;oBACD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;oBAC5D,MAAM,WAAW,GAAG,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAErD,IAAI,CAAC,WAAW,EAAE,CAAC;wBACjB,OAAO;oBACT,CAAC;oBAED,MAAM,MAAM,GAAG,WAAW,CACxB,OAAO,CACL,OAAO,CAAC,GAAG,EAAE,EACb,kBAAkB,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAC9C,CACF,CAAC;oBAEF,OAAO,MAAM,EAAE,aAAa,IAAI,EAAE,CAAC;gBACrC,CAAC;gBAED,OAAO;YACT,CAAC;YACD,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE;gBACtB,iCAAiC;gBACjC,IAAI,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;oBAChC,OAAO;gBACT,CAAC;gBAED;;mBAEG;gBACH,IACE,OAAO,EAAE,eAAe;oBACxB,CAAC,CAAC,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,EAC7C,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED;;;;;;;mBAOG;gBACH,IAAI,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oBAC/B,OAAO;gBACT,CAAC;gBAED;;mBAEG;gBACH,IAAI,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;oBACnC,OAAO;gBACT,CAAC;gBAED;;mBAEG;gBACH,IAAI,aAAa,CAAC,UAAU,IAAI,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC1D,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,0BAA0B,CAAC,EAAE,CAAC,CAAC;oBACtE,IAAI,aAAa,KAAK,UAAU,IAAI,WAAW,EAAE,CAAC;wBAChD,MAAM,YAAY,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;wBACpE,OAAO;4BACL,IAAI,EAAE,YAAY;4BAClB,GAAG,EAAE,IAAI;yBACV,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC1B,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;wBACxB,oCAAoC;wBACpC,uCAAuC;wBACvC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBAChC,CAAC;oBAED;;;uBAGG;oBACH,IAAI,MAAM,EAAE,CAAC;wBACX,IAAI,cAAc,IAAI,CAAC,kBAAkB,EAAE,CAAC;4BAC1C,8BAA8B;4BAC9B,MAAM,kBAAkB,CAAC,cAAc,CAAC,CAAC;4BACzC,kBAAkB,GAAG,IAAI,CAAC;wBAC5B,CAAC;wBAED,MAAM,KAAK,GAAG,UAAU,EAAE,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;wBACxD,IAAI,KAAK,EAAE,CAAC;4BACV,MAAM,WAAW,GAAG,KAAK,CAAC,yBAAyB,CAAC;4BAEpD,IAAI,aAAa,IAAI,WAAW,EAAE,CAAC;gCACjC,eAAe,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gCAEjC,MAAM,kBAAkB,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;4BACjD,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,MAAM,YAAY,GAAG,oBAAoB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAC5D,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAEtD,IAAI,SAAS,EAAE,CAAC;wBACd,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,YAAY,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC;4BACrD,+DAA+D;4BAC/D,sCAAsC;4BACtC,wFAAwF;4BACxF,MAAM,CAAC,EAAE,eAAe,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;4BAC9C,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;wBACrC,CAAC;oBACH,CAAC;oBAED,MAAM,gBAAgB,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;oBAEzC,IACE,gBAAgB,EAAE,QAAQ;wBAC1B,gBAAgB,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,EACrC,CAAC;wBACD,IAAI,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACvD,CAAC;oBAED,IAAI,gBAAgB,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACpE,IAAI,CAAC,KAAK,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACtD,CAAC;oBAED,qBAAqB;oBACrB,IAAI,IAAI,GAAG,gBAAgB,EAAE,OAAO,IAAI,EAAE,CAAC;oBAE3C,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;wBACzC,IAAI,GAAG,IAAI,CAAC,OAAO,CACjB,4BAA4B,EAC5B,mCAAmC,CACpC,CAAC;wBAEF,YAAY,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE;4BACtC,MAAM,CAAC,YAAY,EAAE,mBAAmB,CAAC,GACvC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;4BAC5B,IAAI,GAAG,IAAI,CAAC,OAAO,CACjB,6BAA6B,YAAY,EAAE,EAC3C,GAAG,mBAAmB,MAAM,CAC7B,CAAC;wBACJ,CAAC,CAAC,CAAC;wBAEH,SAAS,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;4BAChC,MAAM,CAAC,SAAS,EAAE,gBAAgB,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;4BAC7D,IAAI,GAAG,IAAI,CAAC,OAAO,CACjB,0BAA0B,SAAS,EAAE,EACrC,GAAG,gBAAgB,SAAS,CAC7B,CAAC;wBACJ,CAAC,CAAC,CAAC;oBACL,CAAC;oBAED,IAAI,GAAG,EAAE,CAAC;wBACR,OAAO;4BACL,IAAI,EAAE,IAAI;4BACV,GAAG,EAAE,IAAI;yBACV,CAAC;oBACJ,CAAC;oBAED,IACE,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;wBACrB,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;wBACnB,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;wBACrB,aAAa,CAAC,mBAAmB;wBACjC,WAAW,EACX,CAAC;wBACD,eAAe,CAAC,UAAU,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;wBACzC,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;wBAC7C,IAAI,GAAG,YAAY,EAAE,OAAO,IAAI,EAAE,CAAC;wBAEnC,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;4BACxB,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAC3C,IAAI,EACJ,EAAE,EACF,aAAa,CAAC,0BAA0B,IAAI,EAAE,CAC/C,CAAC;4BACF,IAAI,IAAI,QAAQ,CAAC;wBACnB,CAAC;oBACH,CAAC;oBAED,OAAO;wBACL,IAAI,EAAE,IAAI;wBACV,GAAG,EAAE,IAAI;qBACV,CAAC;gBACJ,CAAC;gBAED,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,WAAW;gBACT,gBAAgB,CAAC,OAAO,CACtB,CAAC,EAAE,kBAAkB,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,EAAE;oBAChD,SAAS,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBACnD,aAAa,CAAC,eAAe,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;gBAChD,CAAC,CACF,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,aAAa,EAAE;QACf,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,CAAC,GAAG;YACF,SAAS,CAAC;gBACR,qBAAqB,EAAE,aAAa,CAAC,qBAAqB;aAC3D,CAAC,CAAW;QACf,oBAAoB,CAAC;YACnB,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;YAClD,GAAG;SACJ,CAAC;QACF,CAAC,WAAW,IAAI,sBAAsB,EAAE,CAAW;QACnD,YAAY,EAAE;QACd,kBAAkB,EAAE;KACrB,CAAC,MAAM,CAAC,OAAO,CAAa,CAAC;IAE9B,SAAS,eAAe,CAAC,MAAsB;QAC7C,MAAM,YAAY,GAAG,aAAa,CAAC,mBAAmB,CAAC;QACvD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,UAAU,GAAa,EAAE,CAAC;QAE9B,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;YACrC,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gBACzB,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC;YACpC,CAAC;QACH,CAAC;QAED,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;QAChC,MAAM,OAAO,GAAG,aAAa,CAC3B,OAAO,CAAC,aAAa,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,CACzD,CAAC;QACF,MAAM,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC;QAE1E,MAAM,KAAK,GAAG;YACZ,GAAG,OAAO,uBAAuB;YACjC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,aAAa,GAAG,IAAI,kBAAkB,CAAC;YACtE,GAAG,CAAC,aAAa,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC,GAAG,CAChD,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,aAAa,GAAG,IAAI,WAAW,CAC7C;YACD,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACpC,GAAG,aAAa,GAAG,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CACtD;SACF,CAAC;QAEF,OAAO,EAAE;aACN,IAAI,CAAC,KAAK,EAAE;YACX,GAAG,EAAE,IAAI;SACV,CAAC;aACD,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,SAAS,YAAY;QACnB,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;QAEhC,MAAM,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC;QAE1E,MAAM,KAAK,GAAG;YACZ,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,aAAa,GAAG,IAAI,EAAE,CAAC;SAClE,CAAC;QAEF,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE;YACpB,GAAG,EAAE,IAAI;SACV,CAAC,CAAC;IACL,CAAC;IAED,SAAS,eAAe,CACtB,IAAY,EACZ,OAAsB,EACtB,MAAe,EACf,MAAe,EACf,KAAc;QAEd,IAAI,OAAO,CAAC,QAAQ,IAAI,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrD,OAAO,OAAO,CAAC,QAAQ,CAAC;QAC1B,CAAC;QAED,IAAI,gBAAgB,GAAG,qBAAqB,CAAC;QAE7C,IAAI,KAAK,EAAE,CAAC;YACV,gBAAgB,GAAG,MAAM;gBACvB,CAAC,CAAC,0BAA0B;gBAC5B,CAAC,CAAC,qBAAqB,CAAC;QAC5B,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACX,gBAAgB,GAAG,sBAAsB,CAAC;QAC5C,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;QACtC,CAAC;QAED,OAAO,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,UAAU,kBAAkB,CAAC,MAAsB,EAAE,GAAc;QACtE,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,KAAK,YAAY,CAAC;QAC5C,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,YAAY,EAAE,CAAC;QAEpC,IAAI,EAAE,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAC3C,WAAW,CAAC,iBAAiB,CAAC,aAAa,CAAC,QAAQ,EAAE;YACpD,uBAAuB,EAAE,IAAI;YAC7B,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,KAAK;YAChB,eAAe,EAAE,CAAC,MAAM;YACxB,aAAa,EAAE,CAAC,MAAM;YACtB,WAAW,EAAE,KAAK;YAClB,cAAc,EAAE,KAAK;YACrB,sBAAsB,EAAE,KAAK;YAC7B,aAAa,EAAE,YAAY;YAC3B,sBAAsB,EAAE,KAAK;YAC7B,aAAa,EAAE,KAAK;YACpB,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,SAAS;YACrB,cAAc,EAAE,KAAK;YACrB,cAAc,EAAE,KAAK;SACtB,CAAC,CAAC;QAEL,IAAI,aAAa,CAAC,mBAAmB,EAAE,CAAC;YACtC,8CAA8C;YAC9C,wCAAwC;YACxC,4CAA4C;YAC5C,iBAAiB,CAAC,eAAe,GAAG,oBAAoB,CAAC;QAC3D,CAAC;QAED,IAAI,aAAa,CAAC,UAAU,IAAI,SAAS,EAAE,CAAC;YAC1C,iBAAiB,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;YACvC,iBAAiB,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC;YAClD,iEAAiE;YACjE,2DAA2D;YAC3D,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;QAC7C,CAAC;QAED,IAAI,iBAAiB,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACpD,+CAA+C;YAC/C,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;YAC3C,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;QAC7C,CAAC;QAED,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;YACjC,iBAAiB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;YACxC,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAAC;YAChD,iBAAiB,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC;QAC5C,CAAC;QAED,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACxD,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,EAAE,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,CAAC;QAEjE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,QAAgB,EAAE,EAAE,CACxD,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YACxC,qBAAqB,GAAG,iBAAiB,CAAC,uBAAuB,CAAC;gBAChE,CAAC,CAAC,IAAI,GAAG,EAAE;gBACX,CAAC,CAAC,SAAS,CAAC;YACd,uBAAuB,GAAG,iBAAiB,CAAC,uBAAuB,CAAC;gBAClE,CAAC,CAAC,IAAI,GAAG,EAAE;gBACX,CAAC,CAAC,SAAS,CAAC;YACd,wBAAwB,CAAC,IAAI,EAAE,cAAc,EAAE;gBAC7C,qBAAqB,EAAE,aAAa,CAAC,qBAAqB;gBAC1D,mBAAmB,EAAE,aAAa,CAAC,mBAAmB;gBACtD,MAAM;gBACN,0BAA0B,EAAE,aAAa,CAAC,0BAA0B;gBACpE,qBAAqB;gBACrB,uBAAuB;aACxB,CAAC,CAAC;QACL,CAAC;QAED;;;;WAIG;QACH,IAAI,OAE2C,CAAC;QAChD,IAAI,iBAA6B,CAAC;QAClC,IAAI,eAAyC,CAAC;QAE9C,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,yEAAyE;YACzE,MAAM,cAAc,GAAiB,IAAI,WAAW,CAAC,YAAY,CAC/D,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EACvC,iBAAiB,EACjB,IAAoB,EACpB,WAAkB,CACnB,CAAC;YACF,eAAe,GAAG,cAAc,CAAC,QAAQ,CAAC;YAC1C,iBAAiB,GAAG,cAAc,CAAC,YAAY,EAAE,CAAC;YAClD,4BAA4B,CAAC,iBAAiB,CAAC,CAAC;YAEhD,OAAO,GAAG,EAAE,CAAC,8CAA8C,CACzD,iBAAiB,EACjB,IAAI,EACJ,cAAc,CACf,CAAC;YAEF,MAAM,eAAe,CAAC,YAAY,EAAE,CAAC;YAErC,WAAW,GAAG,cAAc,CAAC;YAC7B,cAAc;gBACZ,OAAiE,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,EAAE,CAAC,8CAA8C,CACzD,SAAS,EACT,iBAAiB,EACjB,IAAI,EACJ,WAAW,CACZ,CAAC;YAEF,iBAAiB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,yFAAyF;YACzF,kEAAkE;YAClE,OAAO,GAAG,EAAE,CAAC,qBAAqB,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,kBAAkB,GAAG,GAAG;YAC5B,CAAC,CAAC;gBACE,WAAW,CAAC,uCAAuC,CACjD,OAAO,CAAC,UAAU,EAAE,CACrB;gBACD,4BAA4B,CAAC,GAAG,EAAE,CAChC,OAAO,CAAC,UAAU,EAAE,CAAC,cAAc,EAAE,CACtC;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,YAAY,GAAG,iBAAiB,CACpC,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAgB,CAAC,WAAW,EAAE,CAAC,YAAY,CACvD,CAAC;QAEF,MAAM,YAAY,GAAG,eAAe,CAClC,OAAO,EACP,eAAgB,EAChB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,mBAAmB,CAClC,CAAC;QAEF,MAAM,iBAAiB,GAAyB,CAC9C,SAAS,EACT,OAAO,EACP,EAAE,EACF,EAAE,EACF,WAAW,EACX,EAAE;YACF,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;gBACzB,OAAO;YACT,CAAC;YAED,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAExD,IAAI,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpE,OAAO;YACT,CAAC;YAED,MAAM,QAAQ,GAAG,SAAS;gBACxB,CAAC,CAAC,YAAY,CAAC,QAAQ,EAAE,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACvD,CAAC,CAAC,EAAE,CAAC;YAEP,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE;gBACxB,OAAO;gBACP,YAAY,EAAE,EAAE;gBAChB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,aAAa,EAAE,QAAQ,CAAC,aAAa;gBACrC,WAAW,EAAE,QAAQ,CAAC,WAAW;aAClC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,MAAM,eAAe,GAAG,CAAC,EAAU,EAAE,EAAE;YACrC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC7C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO;YACT,CAAC;YAED,IAAI,OAAO,GAAG,EAAE,CAAC;YACjB,OAAO,CAAC,IAAI,CACV,UAAU,EACV,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE;gBACjB,IAAI,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAChC,OAAO,GAAG,IAAI,CAAC;gBACjB,CAAC;gBAED,IACE,CAAC,SAAS;oBACV,CAAC,MAAM;oBACP,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;oBACxB,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,EACnC,CAAC;oBACD,sCAAsC;oBACtC,MAAM,eAAe,GAAG,OAAO,CAC7B,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,KAAK,CAAC,MAAM,EACnB,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAChC,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;oBAExB,MAAM,kBAAkB,GAAG,eAAe;yBACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;yBAC/B,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;oBAEzB,gBAAgB,CAAC,IAAI,CAAC;wBACpB,kBAAkB;wBAClB,eAAe;wBACf,IAAI;qBACL,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,EACD,SAAS,CAAC,uBAAuB,EACjC,SAAS,CAAC,sBAAsB,EAChC,YAAY,CACb,CAAC;YAEF,iBAAiB,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QACjE,CAAC,CAAC;QAEF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC1C,MAAM,EAAE,GAAG,EAAG,CAAC,QAAQ,CAAC;gBACxB,eAAe,CAAC,EAAE,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,6EAA6E;gBAC7E,OAEI,OACD,CAAC,oBAAoB,CACpB,iBAAiB,EACjB,SAAS,EACT,SAAS,EACT,YAAY,CACb,EACD,CAAC;oBACD,WAAW;gBACb,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAqB,EAAE,EAAU;IAC/D,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,0BAA0B,EAAE;QACzC,EAAE,EAAE,kBAAkB,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;KACtB,CAAC,CAAC;IAEH,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,OAA0B,EAC1B,eAA0C,EAC1C,UAAoB,EACpB,mBAA6B;IAE7B,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACjC,OAAO,CAAC,IAAY,EAAE,KAAqB,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,WAAW,GACf,UAAU,IAAI,KAAK;YACjB,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,EAAE,UAAU,EAAE,eAAgB,CAAC;YAC3D,CAAC,CAAC,KAAK,CAAC;QAEZ,MAAM,WAAW,GAAG,2BAA2B,CAC7C,UAAU,EACV,CAAC,CAAC,mBAAmB,EACrB,OAAO,EACP,eAAe,CAChB,CAAC;QAEF,MAAM,MAAM,GAAG,WAAW;aACvB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,kBAAkB,EAAE,KAAK,CAAC;aAC1D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACT,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ;YAC/B,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW;YAC3B,CAAC,CAAC,CAAC,CAAC,WAAW,CAClB,CAAC;QAEJ,MAAM,QAAQ,GAAG,WAAW;aACzB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,kBAAkB,EAAE,OAAO,CAAC;aAC5D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAE7B,IAAI,aAAa,GAA8B,SAAS,CAAC;QAEzD,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;gBACzC,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAK,IAAY,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;oBAC9D,aAAa,GAAG,eAAe,EAAE,mBAAmB,CAAC,IAAW,CAAC,CAAC;oBAClE,CAAC,CAAC,aAAa,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,EAAG,IAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC;IAC1D,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAClC,UAAyB,EACzB,mBAA4B,EAC5B,OAA0B,EAC1B,eAA0C;IAE1C,MAAM,oBAAoB,GAAG,OAAO,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;IAEzE,IAAI,mBAAmB,EAAE,CAAC;QACxB,+EAA+E;QAC/E,+EAA+E;QAC/E,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED,MAAM,mBAAmB,GAAG,OAAO,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,eAAe;QACxC,CAAC,CAAC,eAAe,CAAC,qBAAqB,CAAC,UAAU,EAAE,CAAC,CAAC;QACtD,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;QACL,GAAG,oBAAoB;QACvB,GAAG,mBAAmB;QACtB,GAAG,kBAAkB;KACtB,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAe;IAC9C,iBAAiB;IACjB,IAAI,eAAe,IAAI,GAAG,EAAE,CAAC;QAC1B,GAAW,CAAC,eAAe,CAAC,CAAC,eAAe,GAAG,IAAI,CAAC;IACvD,CAAC;IAED,OAAO;QACL,GAAG,GAAG;QACN,eAAe,EAAE,IAAI;KACR,CAAC;AAClB,CAAC;AAED,SAAS,qBAAqB,CAAC,EAAU;IACvC,OAAO,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,0BAA0B,CAAC,EAAU;IAI5C,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAC,YAAY,CAAC;IAC5D,MAAM,oBAAoB,GAAG;QAC3B,GAAG,EAAE,UAAU;QACf,GAAG,EAAE,MAAM;QACX,GAAG,EAAE,QAAQ;KACd,CAAC;IACF,OAAO;QACL,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAE;QAClC,aAAa,EAAE,oBAAoB,CACjC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAsC,CACnB;KACpC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,EAAU;IACrC,OAAO,IAAI,GAAG,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACrE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI;IACjD,eAAe;IACf,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IAED,kBAAkB;IAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IAC9D,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wCAAwC;IACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3D,IAAI,QAAQ,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,0BAA0B;IAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;IACtC,IAAI,QAAQ,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"angular-vite-plugin.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-angular/src/lib/angular-vite-plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { Plugin } from 'vite';
2
+ import { EmitFileResult } from './models.js';
3
+ export declare function liveReloadPlugin({ classNames, fileEmitter, }: {
4
+ classNames: Map<string, string>;
5
+ fileEmitter: (file: string) => EmitFileResult | undefined;
6
+ }): Plugin;
@@ -0,0 +1,63 @@
1
+ import { resolve } from 'node:path';
2
+ const ANGULAR_COMPONENT_PREFIX = '/@ng/component';
3
+ const FILE_PREFIX = 'file:';
4
+ export function liveReloadPlugin({ classNames, fileEmitter, }) {
5
+ return {
6
+ name: 'analogjs-live-reload-plugin',
7
+ configureServer(server) {
8
+ const angularComponentMiddleware = async (req, res, next) => {
9
+ if (req.url === undefined || res.writableEnded) {
10
+ return;
11
+ }
12
+ if (!req.url.includes(ANGULAR_COMPONENT_PREFIX)) {
13
+ next();
14
+ return;
15
+ }
16
+ const requestUrl = new URL(req.url, 'http://localhost');
17
+ const componentId = requestUrl.searchParams.get('c');
18
+ if (!componentId) {
19
+ res.statusCode = 400;
20
+ res.end();
21
+ return;
22
+ }
23
+ const [fileId] = decodeURIComponent(componentId).split('@');
24
+ const resolvedId = resolve(process.cwd(), fileId);
25
+ const invalidated = !!server.moduleGraph.getModuleById(resolvedId)
26
+ ?.lastInvalidationTimestamp && classNames.get(resolvedId);
27
+ // don't send an HMR update until the file has been invalidated
28
+ if (!invalidated) {
29
+ res.setHeader('Content-Type', 'text/javascript');
30
+ res.setHeader('Cache-Control', 'no-cache');
31
+ res.end('');
32
+ return;
33
+ }
34
+ const result = fileEmitter(resolvedId);
35
+ res.setHeader('Content-Type', 'text/javascript');
36
+ res.setHeader('Cache-Control', 'no-cache');
37
+ res.end(`${result?.hmrUpdateCode || ''}`);
38
+ };
39
+ server.middlewares.use(angularComponentMiddleware);
40
+ },
41
+ resolveId(id, _importer, options) {
42
+ if (options?.ssr &&
43
+ id.startsWith(FILE_PREFIX) &&
44
+ id.includes(ANGULAR_COMPONENT_PREFIX)) {
45
+ return `\0${id}`;
46
+ }
47
+ return undefined;
48
+ },
49
+ load(id, options) {
50
+ if (options?.ssr && id.includes(ANGULAR_COMPONENT_PREFIX)) {
51
+ const requestUrl = new URL(id.slice(1), 'http://localhost');
52
+ const componentId = requestUrl.searchParams.get('c');
53
+ if (!componentId) {
54
+ return;
55
+ }
56
+ const result = fileEmitter(resolve(process.cwd(), decodeURIComponent(componentId).split('@')[0]));
57
+ return result?.hmrUpdateCode || '';
58
+ }
59
+ return;
60
+ },
61
+ };
62
+ }
63
+ //# sourceMappingURL=live-reload-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"live-reload-plugin.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-angular/src/lib/live-reload-plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type ts from 'typescript';
2
+ export interface EmitFileResult {
3
+ content?: string;
4
+ map?: string;
5
+ dependencies: readonly string[];
6
+ hash?: Uint8Array;
7
+ errors?: (string | ts.DiagnosticMessageChain)[];
8
+ warnings?: (string | ts.DiagnosticMessageChain)[];
9
+ hmrUpdateCode?: string | null;
10
+ hmrEligible?: boolean | null;
11
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-angular/src/lib/models.ts"],"names":[],"mappings":""}
@@ -96,6 +96,7 @@ export function analyzeFileUpdates(stale, updated, compiler) {
96
96
  }
97
97
  // Check for component class nodes
98
98
  const meta = compiler?.getMeta(updatedNode);
99
+ console.log('meta', stale.fileName, meta);
99
100
  if (meta?.decorator &&
100
101
  meta.isComponent === true) {
101
102
  const updatedDecorators = ts.getDecorators(updatedNode);
@@ -132,7 +133,8 @@ export function analyzeFileUpdates(stale, updated, compiler) {
132
133
  return null;
133
134
  }
134
135
  // Compare component meta decorator object literals
135
- if (hasUnsupportedMetaUpdates(staleDecoratorExpression, stale, updatedDecoratorExpression, updated)) {
136
+ const analysis = analyzeMetaUpdates(staleDecoratorExpression, stale, updatedDecoratorExpression, updated);
137
+ if (analysis === MetaUpdateAnalysis.Unsupported) {
136
138
  return null;
137
139
  }
138
140
  // Compare text of the member nodes to determine if any changes have occurred
@@ -141,7 +143,9 @@ export function analyzeFileUpdates(stale, updated, compiler) {
141
143
  return null;
142
144
  }
143
145
  // If all previous class checks passed, this class is supported for HMR updates
144
- candidates.push(updatedNode);
146
+ if (analysis === MetaUpdateAnalysis.Supported) {
147
+ candidates.push(updatedNode);
148
+ }
145
149
  continue;
146
150
  }
147
151
  }
@@ -157,13 +161,19 @@ export function analyzeFileUpdates(stale, updated, compiler) {
157
161
  /**
158
162
  * The set of Angular component metadata fields that are supported by HMR updates.
159
163
  */
160
- const SUPPORTED_FIELDS = new Set([
164
+ const SUPPORTED_FIELD_NAMES = new Set([
161
165
  'template',
162
166
  'templateUrl',
163
167
  'styles',
164
168
  'styleUrl',
165
169
  'stylesUrl',
166
170
  ]);
171
+ var MetaUpdateAnalysis;
172
+ (function (MetaUpdateAnalysis) {
173
+ MetaUpdateAnalysis[MetaUpdateAnalysis["Supported"] = 0] = "Supported";
174
+ MetaUpdateAnalysis[MetaUpdateAnalysis["Unsupported"] = 1] = "Unsupported";
175
+ MetaUpdateAnalysis[MetaUpdateAnalysis["None"] = 2] = "None";
176
+ })(MetaUpdateAnalysis || (MetaUpdateAnalysis = {}));
167
177
  /**
168
178
  * Analyzes the metadata fields of a decorator call expression for unsupported HMR updates.
169
179
  * Only updates to supported fields can be present for HMR to be viable.
@@ -171,24 +181,27 @@ const SUPPORTED_FIELDS = new Set([
171
181
  * @param staleSource The source file instance containing the stale call instance.
172
182
  * @param updatedCall A call expression instance.
173
183
  * @param updatedSource The source file instance containing the updated call instance.
174
- * @returns true, if unsupported metadata updates are present; false, otherwise.
184
+ * @returns A MetaUpdateAnalysis enum value.
175
185
  */
176
- function hasUnsupportedMetaUpdates(staleCall, staleSource, updatedCall, updatedSource) {
186
+ function analyzeMetaUpdates(staleCall, staleSource, updatedCall, updatedSource) {
177
187
  const staleObject = staleCall.arguments[0];
178
188
  const updatedObject = updatedCall.arguments[0];
189
+ let hasSupportedUpdate = false;
179
190
  if (!ts.isObjectLiteralExpression(staleObject) ||
180
191
  !ts.isObjectLiteralExpression(updatedObject)) {
181
- return true;
192
+ return MetaUpdateAnalysis.Unsupported;
182
193
  }
194
+ const supportedFields = new Map();
183
195
  const unsupportedFields = [];
184
196
  for (const property of staleObject.properties) {
185
197
  if (!ts.isPropertyAssignment(property) ||
186
198
  ts.isComputedPropertyName(property.name)) {
187
199
  // Unsupported object literal property
188
- return true;
200
+ return MetaUpdateAnalysis.Unsupported;
189
201
  }
190
202
  const name = property.name.text;
191
- if (SUPPORTED_FIELDS.has(name)) {
203
+ if (SUPPORTED_FIELD_NAMES.has(name)) {
204
+ supportedFields.set(name, property.initializer);
192
205
  continue;
193
206
  }
194
207
  unsupportedFields.push(property.initializer);
@@ -198,18 +211,33 @@ function hasUnsupportedMetaUpdates(staleCall, staleSource, updatedCall, updatedS
198
211
  if (!ts.isPropertyAssignment(property) ||
199
212
  ts.isComputedPropertyName(property.name)) {
200
213
  // Unsupported object literal property
201
- return true;
214
+ return MetaUpdateAnalysis.Unsupported;
202
215
  }
203
216
  const name = property.name.text;
204
- if (SUPPORTED_FIELDS.has(name)) {
217
+ if (SUPPORTED_FIELD_NAMES.has(name)) {
218
+ const staleInitializer = supportedFields.get(name);
219
+ // If the supported field was added or has its content changed, there has been a supported update
220
+ if (!staleInitializer ||
221
+ !equalRangeText(property.initializer, updatedSource, staleInitializer, staleSource)) {
222
+ hasSupportedUpdate = true;
223
+ }
224
+ // Remove the field entry to allow tracking removed fields
225
+ supportedFields.delete(name);
205
226
  continue;
206
227
  }
207
228
  // Compare in order
208
229
  if (!equalRangeText(property.initializer, updatedSource, unsupportedFields[i++], staleSource)) {
209
- return true;
230
+ return MetaUpdateAnalysis.Unsupported;
210
231
  }
211
232
  }
212
- return i !== unsupportedFields.length;
233
+ if (i !== unsupportedFields.length) {
234
+ return MetaUpdateAnalysis.Unsupported;
235
+ }
236
+ // Any remaining supported field indicates a field removal. This is also considered a supported update.
237
+ hasSupportedUpdate ||= supportedFields.size > 0;
238
+ return hasSupportedUpdate
239
+ ? MetaUpdateAnalysis.Supported
240
+ : MetaUpdateAnalysis.None;
213
241
  }
214
242
  /**
215
243
  * Compares the text from a provided range in a source file to the text of a range in a second source file.
@@ -1 +1 @@
1
- {"version":3,"file":"hmr-candidates.js","sourceRoot":"","sources":["../../../../../../packages/vite-plugin-angular/src/lib/utils/hmr-candidates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hmr-candidates.js","sourceRoot":"","sources":["../../../../../../packages/vite-plugin-angular/src/lib/utils/hmr-candidates.ts"],"names":[],"mappings":"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"}