vue-ssr-lite 0.2.3 → 0.2.5
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 +29 -45
- package/dist/SsrConfigCompileRuntime.d.ts +44 -4
- package/dist/SsrConfigCompileRuntime.d.ts.map +1 -1
- package/dist/SsrConfigTypes.d.ts +17 -2
- package/dist/SsrConfigTypes.d.ts.map +1 -1
- package/dist/chunks/SsrHtmlRuntime-DlQTSRzv.mjs +451 -0
- package/dist/chunks/SsrServerRuntime-Cwm6YaxC.mjs +703 -0
- package/dist/cli.mjs +10 -9
- package/dist/server/SsrServerRuntime.d.ts.map +1 -1
- package/dist/server.mjs +78 -73
- package/dist/vite/SsrVitePlugin.d.ts +11 -9
- package/dist/vite/SsrVitePlugin.d.ts.map +1 -1
- package/dist/vite.mjs +63 -48
- package/package.json +1 -1
- package/dist/chunks/SsrHtmlRuntime-cTFsMSAZ.mjs +0 -54
- package/dist/chunks/SsrServerRuntime-DqUVv06J.mjs +0 -1004
package/README.md
CHANGED
|
@@ -276,9 +276,8 @@ cookies, endpoints, and roles. The library expands domains, matches hosts by
|
|
|
276
276
|
specificity, and exposes context through `useSsrDomain()`.
|
|
277
277
|
|
|
278
278
|
```ts
|
|
279
|
-
// ssr.config.ts
|
|
279
|
+
// ssr.config.ts — single source of truth for apps, domains, and Vite entries
|
|
280
280
|
import { defineSsrConfig } from 'vue-ssr-lite'
|
|
281
|
-
import { websiteApplication } from './src/website/SsrApplication'
|
|
282
281
|
|
|
283
282
|
export default defineSsrConfig({
|
|
284
283
|
name: 'my-platform',
|
|
@@ -302,7 +301,12 @@ export default defineSsrConfig({
|
|
|
302
301
|
},
|
|
303
302
|
},
|
|
304
303
|
website: {
|
|
305
|
-
|
|
304
|
+
// Path form so Vite can derive the hydration client without importing
|
|
305
|
+
// the application module into Node during config load.
|
|
306
|
+
ssr: {
|
|
307
|
+
module: './src/website/SsrApplication.ts',
|
|
308
|
+
exportName: 'websiteApplication',
|
|
309
|
+
},
|
|
306
310
|
template: 'site.html',
|
|
307
311
|
roles: ['unified', 'website'],
|
|
308
312
|
domain: {
|
|
@@ -338,46 +342,25 @@ When the server starts, the console prints a ready message with a clickable loca
|
|
|
338
342
|
|
|
339
343
|
## 4. Configure Vite
|
|
340
344
|
|
|
341
|
-
|
|
345
|
+
Keep Vite-only concerns here (Vue, CSS, GraphQL codegen, aliases). Application
|
|
346
|
+
wiring stays in `ssr.config.ts` — `vueSsrLite()` auto-discovers it:
|
|
342
347
|
|
|
343
348
|
```ts
|
|
344
349
|
// vite.config.ts
|
|
345
350
|
import { defineConfig } from 'vite'
|
|
346
351
|
import vue from '@vitejs/plugin-vue'
|
|
347
|
-
|
|
348
352
|
import { vueSsrLite } from 'vue-ssr-lite/vite'
|
|
349
353
|
|
|
350
354
|
export default defineConfig({
|
|
351
355
|
plugins: [
|
|
356
|
+
vueSsrLite(),
|
|
352
357
|
vue(),
|
|
353
|
-
|
|
354
|
-
vueSsrLite({
|
|
355
|
-
applications: [
|
|
356
|
-
{
|
|
357
|
-
id: 'website',
|
|
358
|
-
definition: 'src/website/SsrApplication.ts',
|
|
359
|
-
exportName: 'websiteApplication',
|
|
360
|
-
template: 'site.html',
|
|
361
|
-
},
|
|
362
|
-
],
|
|
363
|
-
|
|
364
|
-
spaEntries: {
|
|
365
|
-
dashboard: 'index.html',
|
|
366
|
-
},
|
|
367
|
-
}),
|
|
368
358
|
],
|
|
369
359
|
})
|
|
370
360
|
```
|
|
371
361
|
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
Contains applications that use server-side rendering and browser hydration.
|
|
375
|
-
|
|
376
|
-
### `spaEntries`
|
|
377
|
-
|
|
378
|
-
Contains normal Vite SPA HTML entries.
|
|
379
|
-
|
|
380
|
-
Do not add SPA applications to the `applications` array.
|
|
362
|
+
`vueSsrLite()` reads each application's `template`, SPA shells (`spa: true`),
|
|
363
|
+
and SSR module refs (`ssr: { module, exportName }`) from `ssr.config.*`.
|
|
381
364
|
|
|
382
365
|
## 5. Add Commands
|
|
383
366
|
|
|
@@ -413,7 +396,10 @@ export default defineSsrConfig({
|
|
|
413
396
|
name: 'my-website',
|
|
414
397
|
applications: {
|
|
415
398
|
website: {
|
|
416
|
-
ssr:
|
|
399
|
+
ssr: {
|
|
400
|
+
module: './src/website/SsrApplication.ts',
|
|
401
|
+
exportName: 'websiteApplication',
|
|
402
|
+
},
|
|
417
403
|
template: 'site.html',
|
|
418
404
|
domain: {
|
|
419
405
|
development: 'localhost',
|
|
@@ -425,19 +411,9 @@ export default defineSsrConfig({
|
|
|
425
411
|
})
|
|
426
412
|
```
|
|
427
413
|
|
|
428
|
-
Vite configuration:
|
|
429
|
-
|
|
430
414
|
```ts
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
{
|
|
434
|
-
id: 'website',
|
|
435
|
-
definition: 'src/website/SsrApplication.ts',
|
|
436
|
-
exportName: 'websiteApplication',
|
|
437
|
-
template: 'site.html',
|
|
438
|
-
},
|
|
439
|
-
],
|
|
440
|
-
})
|
|
415
|
+
// vite.config.ts
|
|
416
|
+
vueSsrLite()
|
|
441
417
|
```
|
|
442
418
|
|
|
443
419
|
## SPA-Only Application
|
|
@@ -461,7 +437,9 @@ export default defineSsrConfig({
|
|
|
461
437
|
})
|
|
462
438
|
```
|
|
463
439
|
|
|
464
|
-
|
|
440
|
+
Mount the SPA from a browser entry with `mountSpaApplication()` (see the HTML
|
|
441
|
+
`script` pointing at your client file). `vueSsrLite()` still registers the SPA
|
|
442
|
+
HTML input from `ssr.config`.
|
|
465
443
|
|
|
466
444
|
## Using the Same Vue Plugins
|
|
467
445
|
|
|
@@ -718,7 +696,10 @@ export default defineSsrConfig({
|
|
|
718
696
|
},
|
|
719
697
|
},
|
|
720
698
|
website: {
|
|
721
|
-
ssr:
|
|
699
|
+
ssr: {
|
|
700
|
+
module: './src/website/SsrApplication.ts',
|
|
701
|
+
exportName: 'websiteApplication',
|
|
702
|
+
},
|
|
722
703
|
template: 'site.html',
|
|
723
704
|
domain: {
|
|
724
705
|
development: 'shop.localhost',
|
|
@@ -800,7 +781,10 @@ export default defineSsrConfig({
|
|
|
800
781
|
},
|
|
801
782
|
},
|
|
802
783
|
website: {
|
|
803
|
-
ssr:
|
|
784
|
+
ssr: {
|
|
785
|
+
module: './src/website/SsrApplication.ts',
|
|
786
|
+
exportName: 'websiteApplication',
|
|
787
|
+
},
|
|
804
788
|
template: 'site.html',
|
|
805
789
|
roles: ['unified', 'website'],
|
|
806
790
|
domain: {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SsrApplicationDomainConfig, SsrDomainMode } from './SsrConfigTypes';
|
|
1
|
+
import { SsrApplicationDomainConfig, SsrApplicationModuleRef, SsrConfig, SsrDomainMode } from './SsrConfigTypes';
|
|
2
2
|
import { defineSsrConfig } from './SsrConfigRuntime';
|
|
3
3
|
import { SsrApplicationDefinition, SsrEndpointDefinition, SsrEntryKind, SsrReadinessProbe, SsrResponseCacheStrategy, SsrServerOptions } from './SsrRuntimeTypes';
|
|
4
4
|
export { defineSsrConfig };
|
|
@@ -16,6 +16,8 @@ export interface SsrCompiledApplication {
|
|
|
16
16
|
cookieAllowlist: string[];
|
|
17
17
|
cookieDenylist: string[];
|
|
18
18
|
publicConfig: Record<string, unknown>;
|
|
19
|
+
/** Present when `ssr` was declared as a module reference. */
|
|
20
|
+
ssrModule?: SsrApplicationModuleRef;
|
|
19
21
|
domain: {
|
|
20
22
|
development: string;
|
|
21
23
|
production: string;
|
|
@@ -33,8 +35,46 @@ export interface SsrCompiledConfig {
|
|
|
33
35
|
readiness?: SsrReadinessProbe[];
|
|
34
36
|
development: boolean;
|
|
35
37
|
}
|
|
36
|
-
export
|
|
37
|
-
|
|
38
|
+
export interface SsrViteApplicationEntry {
|
|
39
|
+
id: string;
|
|
40
|
+
definition: string;
|
|
41
|
+
exportName?: string;
|
|
42
|
+
template: string;
|
|
43
|
+
mountSelector?: string;
|
|
44
|
+
}
|
|
45
|
+
export interface SsrViteEntries {
|
|
46
|
+
applications: SsrViteApplicationEntry[];
|
|
47
|
+
spaEntries: Record<string, string>;
|
|
48
|
+
}
|
|
49
|
+
export declare const isSsrApplicationModuleRef: (value: unknown) => value is SsrApplicationModuleRef;
|
|
50
|
+
export interface CompileSsrConfigOptions {
|
|
38
51
|
development?: boolean;
|
|
39
|
-
}
|
|
52
|
+
/** Project root used to resolve `{ module }` paths. */
|
|
53
|
+
root?: string;
|
|
54
|
+
/**
|
|
55
|
+
* Custom importer for module references (Vite `ssrLoadModule` in development).
|
|
56
|
+
* Falls back to a Node ESM import of the resolved file URL.
|
|
57
|
+
*/
|
|
58
|
+
importModule?: (specifier: string) => Promise<Record<string, unknown>>;
|
|
59
|
+
}
|
|
60
|
+
export declare const resolveSsrConfigPath: (root: string, explicit?: string) => Promise<string>;
|
|
61
|
+
/** Derive Vite HTML / hydration entries from a loaded `SsrConfig`. */
|
|
62
|
+
export declare const extractSsrViteEntries: (config: SsrConfig) => SsrViteEntries;
|
|
63
|
+
/**
|
|
64
|
+
* Load `ssr.config` for Vite entry discovery without going through the
|
|
65
|
+
* consumer's Vite plugin graph. Relative local imports are bundled; packages
|
|
66
|
+
* stay external.
|
|
67
|
+
*
|
|
68
|
+
* The bundled file is written under the project `node_modules` tree so Node can
|
|
69
|
+
* resolve bare imports like `vue-ssr-lite` from the consumer's dependencies.
|
|
70
|
+
* Writing under the OS temp directory breaks package resolution.
|
|
71
|
+
*/
|
|
72
|
+
export declare const loadSsrConfigFile: (root: string, configPath?: string) => Promise<SsrConfig>;
|
|
73
|
+
export declare const resolveSsrViteEntries: (root: string, configPath?: string) => Promise<SsrViteEntries>;
|
|
74
|
+
/**
|
|
75
|
+
* Rewrite `ssr: { module, exportName }` object literals into Vite-analyzable
|
|
76
|
+
* dynamic import loaders so production SSR bundles include the application.
|
|
77
|
+
*/
|
|
78
|
+
export declare const transformSsrModuleRefs: (code: string, filename: string) => string | null;
|
|
79
|
+
export declare const compileSsrConfig: (loaded: unknown, options?: CompileSsrConfigOptions) => Promise<SsrCompiledConfig>;
|
|
40
80
|
//# sourceMappingURL=SsrConfigCompileRuntime.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SsrConfigCompileRuntime.d.ts","sourceRoot":"","sources":["../src/SsrConfigCompileRuntime.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SsrConfigCompileRuntime.d.ts","sourceRoot":"","sources":["../src/SsrConfigCompileRuntime.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,0BAA0B,EAE1B,uBAAuB,EAEvB,SAAS,EAET,aAAa,EACd,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EACV,wBAAwB,EACxB,qBAAqB,EACrB,YAAY,EACZ,iBAAiB,EACjB,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,mBAAmB,CAAA;AAQ1B,OAAO,EAAE,eAAe,EAAE,CAAA;AAU1B,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,WAAW,CAAC,EAAE,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IACrD,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,wBAAwB,CAAC,GAAG,CAAC,CAAA;IAC7C,SAAS,EAAE,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAA;IACvC,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACrC,6DAA6D;IAC7D,SAAS,CAAC,EAAE,uBAAuB,CAAA;IACnC,MAAM,EAAE;QACN,WAAW,EAAE,MAAM,CAAA;QACnB,UAAU,EAAE,MAAM,CAAA;QAClB,IAAI,EAAE,aAAa,CAAA;QACnB,YAAY,EAAE,OAAO,CAAA;QACrB,aAAa,EAAE,OAAO,CAAA;QACtB,MAAM,EAAE,0BAA0B,CAAC,QAAQ,CAAC,CAAA;KAC7C,CAAA;CACF;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,sBAAsB,EAAE,CAAA;IACtC,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,MAAM,EAAE,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IACjD,SAAS,CAAC,EAAE,iBAAiB,EAAE,CAAA;IAC/B,WAAW,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,uBAAuB,EAAE,CAAA;IACvC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACnC;AAED,eAAO,MAAM,yBAAyB,GACpC,OAAO,OAAO,KACb,KAAK,IAAI,uBAOT,CAAA;AAiHH,MAAM,WAAW,uBAAuB;IACtC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;CACvE;AAsBD,eAAO,MAAM,oBAAoB,GAC/B,MAAM,MAAM,EACZ,WAAW,MAAM,KAChB,OAAO,CAAC,MAAM,CAchB,CAAA;AAED,sEAAsE;AACtE,eAAO,MAAM,qBAAqB,GAAI,QAAQ,SAAS,KAAG,cA6BzD,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,GAC5B,MAAM,MAAM,EACZ,aAAa,MAAM,KAClB,OAAO,CAAC,SAAS,CAwCnB,CAAA;AAED,eAAO,MAAM,qBAAqB,GAChC,MAAM,MAAM,EACZ,aAAa,MAAM,KAClB,OAAO,CAAC,cAAc,CAGxB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GAAI,MAAM,MAAM,EAAE,UAAU,MAAM,KAAG,MAAM,GAAG,IAkBhF,CAAA;AAED,eAAO,MAAM,gBAAgB,GAC3B,QAAQ,OAAO,EACf,UAAS,uBAA4B,KACpC,OAAO,CAAC,iBAAiB,CAkI3B,CAAA"}
|
package/dist/SsrConfigTypes.d.ts
CHANGED
|
@@ -35,6 +35,18 @@ export interface SsrApplicationCookiesConfig {
|
|
|
35
35
|
deny?: readonly string[];
|
|
36
36
|
}
|
|
37
37
|
export type SsrApplicationLoader = SsrApplicationDefinition<any, any, any> | (() => SsrApplicationDefinition<any, any, any> | Promise<SsrApplicationDefinition<any, any, any>>);
|
|
38
|
+
/**
|
|
39
|
+
* Path-based SSR application reference shared by the Node runtime and the Vite
|
|
40
|
+
* plugin. Prefer this over importing the definition in `ssr.config` so the Vite
|
|
41
|
+
* config can discover client entries without loading browser-only modules.
|
|
42
|
+
*/
|
|
43
|
+
export interface SsrApplicationModuleRef {
|
|
44
|
+
/** Project-root-relative module path (e.g. `./src/site/App.ts`). */
|
|
45
|
+
module: string;
|
|
46
|
+
/** Named export. Defaults to the module's `default` export. */
|
|
47
|
+
exportName?: string;
|
|
48
|
+
}
|
|
49
|
+
export type SsrApplicationSource = SsrApplicationLoader | SsrApplicationModuleRef;
|
|
38
50
|
/**
|
|
39
51
|
* One self-contained SPA or SSR application: runtime, domain, security,
|
|
40
52
|
* endpoints, and public configuration live together.
|
|
@@ -46,8 +58,11 @@ export interface SsrApplicationConfig {
|
|
|
46
58
|
* `mountSpaApplication()` from a browser entry instead.
|
|
47
59
|
*/
|
|
48
60
|
spa?: true | SsrApplicationLoader;
|
|
49
|
-
/**
|
|
50
|
-
|
|
61
|
+
/**
|
|
62
|
+
* Server-rendered Vue application. Prefer `{ module, exportName }` so
|
|
63
|
+
* `vueSsrLite()` can derive the hydration client entry from `ssr.config`.
|
|
64
|
+
*/
|
|
65
|
+
ssr?: SsrApplicationSource;
|
|
51
66
|
template: string;
|
|
52
67
|
roles?: readonly string[];
|
|
53
68
|
domain: SsrApplicationDomainConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SsrConfigTypes.d.ts","sourceRoot":"","sources":["../src/SsrConfigTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,KAAK,EACV,qBAAqB,EACrB,SAAS,EACT,iBAAiB,EACjB,wBAAwB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,gEAAgE;AAChE,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,YAAY,GAAG,qBAAqB,CAAA;AAEzE,MAAM,WAAW,0BAA0B;IACzC,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;CAC/B;AAED,MAAM,WAAW,0BAA0B;IACzC,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAA;IACnB,+BAA+B;IAC/B,UAAU,EAAE,MAAM,CAAA;IAClB,yCAAyC;IACzC,IAAI,CAAC,EAAE,aAAa,CAAA;IACpB,mEAAmE;IACnE,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,gEAAgE;IAChE,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,uDAAuD;IACvD,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACnC,2EAA2E;IAC3E,MAAM,CAAC,EAAE,0BAA0B,CAAA;CACpC;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,2BAA2B;IAC1C,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA;IAClC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CACzB;AAED,MAAM,MAAM,oBAAoB,GAC5B,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GACvC,CAAC,MACG,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GACvC,OAAO,CAAC,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;AAEzD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,GAAG,CAAC,EAAE,IAAI,GAAG,oBAAoB,CAAA;IACjC
|
|
1
|
+
{"version":3,"file":"SsrConfigTypes.d.ts","sourceRoot":"","sources":["../src/SsrConfigTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,KAAK,EACV,qBAAqB,EACrB,SAAS,EACT,iBAAiB,EACjB,wBAAwB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,gEAAgE;AAChE,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,YAAY,GAAG,qBAAqB,CAAA;AAEzE,MAAM,WAAW,0BAA0B;IACzC,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;CAC/B;AAED,MAAM,WAAW,0BAA0B;IACzC,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAA;IACnB,+BAA+B;IAC/B,UAAU,EAAE,MAAM,CAAA;IAClB,yCAAyC;IACzC,IAAI,CAAC,EAAE,aAAa,CAAA;IACpB,mEAAmE;IACnE,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,gEAAgE;IAChE,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,uDAAuD;IACvD,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACnC,2EAA2E;IAC3E,MAAM,CAAC,EAAE,0BAA0B,CAAA;CACpC;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,2BAA2B;IAC1C,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA;IAClC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CACzB;AAED,MAAM,MAAM,oBAAoB,GAC5B,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GACvC,CAAC,MACG,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GACvC,OAAO,CAAC,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;AAEzD;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,oEAAoE;IACpE,MAAM,EAAE,MAAM,CAAA;IACd,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,MAAM,oBAAoB,GAAG,oBAAoB,GAAG,uBAAuB,CAAA;AAEjF;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,GAAG,CAAC,EAAE,IAAI,GAAG,oBAAoB,CAAA;IACjC;;;OAGG;IACH,GAAG,CAAC,EAAE,oBAAoB,CAAA;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACzB,MAAM,EAAE,0BAA0B,CAAA;IAClC,OAAO,CAAC,EAAE,2BAA2B,CAAA;IACrC,OAAO,CAAC,EAAE,2BAA2B,CAAA;IACrC,SAAS,CAAC,EAAE,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAA;IACxC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,wBAAwB,CAAC,GAAG,CAAC,CAAA;IAC7C,mEAAmE;IACnE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACvC;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,MAAM,CAAC,EAAE,SAAS,CAAA;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,sBAAsB,CAAA;IAC/B,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAA;IAClD,0DAA0D;IAC1D,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,SAAS,CAAC,EAAE,iBAAiB,EAAE,CAAA;CAChC;AAED,MAAM,MAAM,eAAe,GACvB,SAAS,GACT,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;AAE1C,kFAAkF;AAClF,MAAM,WAAW,gBAAgB;IAC/B,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,4DAA4D;IAC5D,UAAU,EAAE,MAAM,CAAA;IAClB,8EAA8E;IAC9E,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,cAAc,EAAE,OAAO,CAAA;IACvB,WAAW,EAAE,OAAO,CAAA;IACpB,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B"}
|