vite 2.8.0-beta.0 → 2.8.0-beta.4

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.

Potentially problematic release.


This version of vite might be problematic. Click here for more details.

Files changed (87) hide show
  1. package/CHANGELOG.md +79 -1
  2. package/LICENSE.md +34 -54
  3. package/bin/vite.js +3 -1
  4. package/client.d.ts +4 -0
  5. package/dist/client/client.mjs +10 -5
  6. package/dist/client/client.mjs.map +1 -1
  7. package/dist/node/chunks/dep-0ebab0df.js +0 -1
  8. package/dist/node/chunks/dep-2056ae8a.js +0 -1
  9. package/dist/node/chunks/{dep-7cd25957.js → dep-2451c479.js} +1 -2
  10. package/dist/node/chunks/{dep-372aad6a.js → dep-4ef300ce.js} +1 -2
  11. package/dist/node/chunks/{dep-920a704a.js → dep-778bed46.js} +147 -482
  12. package/dist/node/chunks/{dep-5ad1713b.js → dep-7b4d034a.js} +3065 -2361
  13. package/dist/node/cli.js +4 -6
  14. package/dist/node/index.d.ts +10 -1
  15. package/dist/node/index.js +1 -3
  16. package/package.json +6 -6
  17. package/src/client/client.ts +12 -6
  18. package/types/importMeta.d.ts +17 -2
  19. package/dist/node/build.d.ts +0 -200
  20. package/dist/node/certificate.d.ts +0 -2
  21. package/dist/node/chunks/dep-0ebab0df.js.map +0 -1
  22. package/dist/node/chunks/dep-2056ae8a.js.map +0 -1
  23. package/dist/node/chunks/dep-372aad6a.js.map +0 -1
  24. package/dist/node/chunks/dep-5ad1713b.js.map +0 -1
  25. package/dist/node/chunks/dep-7cd25957.js.map +0 -1
  26. package/dist/node/chunks/dep-920a704a.js.map +0 -1
  27. package/dist/node/cli.d.ts +0 -1
  28. package/dist/node/cli.js.map +0 -1
  29. package/dist/node/config.d.ts +0 -221
  30. package/dist/node/constants.d.ts +0 -33
  31. package/dist/node/http.d.ts +0 -88
  32. package/dist/node/importGlob.d.ts +0 -14
  33. package/dist/node/index.js.map +0 -1
  34. package/dist/node/logger.d.ts +0 -35
  35. package/dist/node/optimizer/esbuildDepPlugin.d.ts +0 -4
  36. package/dist/node/optimizer/index.d.ts +0 -66
  37. package/dist/node/optimizer/registerMissing.d.ts +0 -2
  38. package/dist/node/optimizer/scan.d.ts +0 -9
  39. package/dist/node/packages.d.ts +0 -25
  40. package/dist/node/plugin.d.ts +0 -115
  41. package/dist/node/plugins/asset.d.ts +0 -40
  42. package/dist/node/plugins/assetImportMetaUrl.d.ts +0 -13
  43. package/dist/node/plugins/clientInjections.d.ts +0 -7
  44. package/dist/node/plugins/css.d.ts +0 -70
  45. package/dist/node/plugins/dataUri.d.ts +0 -5
  46. package/dist/node/plugins/define.d.ts +0 -3
  47. package/dist/node/plugins/esbuild.d.ts +0 -15
  48. package/dist/node/plugins/html.d.ts +0 -103
  49. package/dist/node/plugins/importAnalysis.d.ts +0 -46
  50. package/dist/node/plugins/importAnalysisBuild.d.ts +0 -15
  51. package/dist/node/plugins/index.d.ts +0 -3
  52. package/dist/node/plugins/json.d.ts +0 -22
  53. package/dist/node/plugins/loadFallback.d.ts +0 -5
  54. package/dist/node/plugins/manifest.d.ts +0 -14
  55. package/dist/node/plugins/modulePreloadPolyfill.d.ts +0 -4
  56. package/dist/node/plugins/preAlias.d.ts +0 -5
  57. package/dist/node/plugins/reporter.d.ts +0 -3
  58. package/dist/node/plugins/resolve.d.ts +0 -38
  59. package/dist/node/plugins/ssrRequireHook.d.ts +0 -12
  60. package/dist/node/plugins/terser.d.ts +0 -3
  61. package/dist/node/plugins/wasm.d.ts +0 -3
  62. package/dist/node/plugins/worker.d.ts +0 -3
  63. package/dist/node/preview.d.ts +0 -31
  64. package/dist/node/server/hmr.d.ts +0 -37
  65. package/dist/node/server/index.d.ts +0 -222
  66. package/dist/node/server/middlewares/base.d.ts +0 -3
  67. package/dist/node/server/middlewares/error.d.ts +0 -8
  68. package/dist/node/server/middlewares/indexHtml.d.ts +0 -4
  69. package/dist/node/server/middlewares/proxy.d.ts +0 -20
  70. package/dist/node/server/middlewares/spaFallback.d.ts +0 -2
  71. package/dist/node/server/middlewares/static.d.ts +0 -6
  72. package/dist/node/server/middlewares/time.d.ts +0 -2
  73. package/dist/node/server/middlewares/transform.d.ts +0 -3
  74. package/dist/node/server/moduleGraph.d.ts +0 -53
  75. package/dist/node/server/openBrowser.d.ts +0 -15
  76. package/dist/node/server/pluginContainer.d.ts +0 -37
  77. package/dist/node/server/searchRoot.d.ts +0 -8
  78. package/dist/node/server/send.d.ts +0 -10
  79. package/dist/node/server/sourcemap.d.ts +0 -8
  80. package/dist/node/server/transformRequest.d.ts +0 -14
  81. package/dist/node/server/ws.d.ts +0 -14
  82. package/dist/node/ssr/ssrExternal.d.ts +0 -7
  83. package/dist/node/ssr/ssrManifestPlugin.d.ts +0 -3
  84. package/dist/node/ssr/ssrModuleLoader.d.ts +0 -7
  85. package/dist/node/ssr/ssrStacktrace.d.ts +0 -3
  86. package/dist/node/ssr/ssrTransform.d.ts +0 -8
  87. package/dist/node/utils.d.ts +0 -115
package/dist/node/cli.js CHANGED
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var require$$0 = require('events');
4
- var build = require('./chunks/dep-5ad1713b.js');
4
+ var build = require('./chunks/dep-7b4d034a.js');
5
5
  var perf_hooks = require('perf_hooks');
6
6
  require('fs');
7
7
  require('path');
@@ -22,7 +22,6 @@ require('assert');
22
22
  require('buffer');
23
23
  require('querystring');
24
24
  require('esbuild');
25
- require('json5');
26
25
  require('child_process');
27
26
  require('worker_threads');
28
27
  require('readline');
@@ -684,7 +683,7 @@ cli
684
683
  .action(async (root, options) => {
685
684
  // output structure is preserved even after bundling so require()
686
685
  // is ok here
687
- const { createServer } = await Promise.resolve().then(function () { return require('./chunks/dep-5ad1713b.js'); }).then(function (n) { return n.index$1; });
686
+ const { createServer } = await Promise.resolve().then(function () { return require('./chunks/dep-7b4d034a.js'); }).then(function (n) { return n.index$1; });
688
687
  try {
689
688
  const server = await createServer({
690
689
  root,
@@ -733,7 +732,7 @@ cli
733
732
  .option('--emptyOutDir', `[boolean] force empty outDir when it's outside of root`)
734
733
  .option('-w, --watch', `[boolean] rebuilds when modules have changed on disk`)
735
734
  .action(async (root, options) => {
736
- const { build: build$1 } = await Promise.resolve().then(function () { return require('./chunks/dep-5ad1713b.js'); }).then(function (n) { return n.build$1; });
735
+ const { build: build$1 } = await Promise.resolve().then(function () { return require('./chunks/dep-7b4d034a.js'); }).then(function (n) { return n.build$1; });
737
736
  const buildOptions = cleanOptions(options);
738
737
  try {
739
738
  await build$1({
@@ -756,7 +755,7 @@ cli
756
755
  .command('optimize [root]')
757
756
  .option('--force', `[boolean] force the optimizer to ignore the cache and re-bundle`)
758
757
  .action(async (root, options) => {
759
- const { optimizeDeps } = await Promise.resolve().then(function () { return require('./chunks/dep-5ad1713b.js'); }).then(function (n) { return n.index; });
758
+ const { optimizeDeps } = await Promise.resolve().then(function () { return require('./chunks/dep-7b4d034a.js'); }).then(function (n) { return n.index; });
760
759
  try {
761
760
  const config = await build.resolveConfig({
762
761
  root,
@@ -804,4 +803,3 @@ cli
804
803
  cli.help();
805
804
  cli.version(require('../../package.json').version);
806
805
  cli.parse();
807
- //# sourceMappingURL=cli.js.map
@@ -1326,13 +1326,14 @@ export declare function resolveConfig(inlineConfig: InlineConfig, command: 'buil
1326
1326
 
1327
1327
  export declare type ResolvedBuildOptions = Required<Omit<BuildOptions, 'base' | 'cleanCssOptions' | 'polyfillDynamicImport' | 'brotliSize'>>;
1328
1328
 
1329
- export declare type ResolvedConfig = Readonly<Omit<UserConfig, 'plugins' | 'alias' | 'dedupe' | 'assetsInclude' | 'optimizeDeps'> & {
1329
+ export declare type ResolvedConfig = Readonly<Omit<UserConfig, 'plugins' | 'alias' | 'dedupe' | 'assetsInclude' | 'optimizeDeps' | 'worker'> & {
1330
1330
  configFile: string | undefined;
1331
1331
  configFileDependencies: string[];
1332
1332
  inlineConfig: InlineConfig;
1333
1333
  root: string;
1334
1334
  base: string;
1335
1335
  publicDir: string;
1336
+ cacheDir: string;
1336
1337
  command: 'build' | 'serve';
1337
1338
  mode: string;
1338
1339
  isProduction: boolean;
@@ -1349,6 +1350,7 @@ export declare type ResolvedConfig = Readonly<Omit<UserConfig, 'plugins' | 'alia
1349
1350
  createResolver: (options?: Partial<InternalResolveOptions>) => ResolveFn;
1350
1351
  optimizeDeps: Omit<DepOptimizationOptions, 'keepNames'>;
1351
1352
  /* Excluded from this release type: packageCache */
1353
+ worker: ResolveWorkerOptions;
1352
1354
  }>;
1353
1355
 
1354
1356
  export declare interface ResolvedPreviewOptions extends PreviewOptions {
@@ -1387,6 +1389,12 @@ export declare interface ResolverObject {
1387
1389
  resolveId: ResolverFunction
1388
1390
  }
1389
1391
 
1392
+ export declare interface ResolveWorkerOptions {
1393
+ format: 'es' | 'iife';
1394
+ plugins: Plugin[];
1395
+ rollupOptions: RollupOptions;
1396
+ }
1397
+
1390
1398
  /**
1391
1399
  * https://github.com/rollup/plugins/blob/master/packages/commonjs/types/index.d.ts
1392
1400
  *
@@ -1887,6 +1895,7 @@ export declare interface UserConfig {
1887
1895
  * the performance. You can use `--force` flag or manually delete the directory
1888
1896
  * to regenerate the cache files. The value can be either an absolute file
1889
1897
  * system path or a path relative to <root>.
1898
+ * Default to `.vite` when no package.json is detected.
1890
1899
  * @default 'node_modules/.vite'
1891
1900
  */
1892
1901
  cacheDir?: string;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var build = require('./chunks/dep-5ad1713b.js');
5
+ var build = require('./chunks/dep-7b4d034a.js');
6
6
  require('fs');
7
7
  require('path');
8
8
  require('tty');
@@ -24,7 +24,6 @@ require('assert');
24
24
  require('buffer');
25
25
  require('querystring');
26
26
  require('esbuild');
27
- require('json5');
28
27
  require('child_process');
29
28
  require('worker_threads');
30
29
  require('readline');
@@ -50,4 +49,3 @@ exports.searchForWorkspaceRoot = build.searchForWorkspaceRoot;
50
49
  exports.send = build.send;
51
50
  exports.sortUserPlugins = build.sortUserPlugins;
52
51
  exports.transformWithEsbuild = build.transformWithEsbuild;
53
- //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vite",
3
- "version": "2.8.0-beta.0",
3
+ "version": "2.8.0-beta.4",
4
4
  "license": "MIT",
5
5
  "author": "Evan You",
6
6
  "description": "Native-ESM powered web dev build tool",
@@ -45,7 +45,6 @@
45
45
  "//": "READ CONTRIBUTING.md to understand what to put under deps vs. devDeps!",
46
46
  "dependencies": {
47
47
  "esbuild": "0.14.3",
48
- "json5": "^2.2.0",
49
48
  "postcss": "^8.4.5",
50
49
  "resolve": "^1.20.0",
51
50
  "rollup": "^2.59.0"
@@ -88,29 +87,30 @@
88
87
  "cors": "^2.8.5",
89
88
  "cross-spawn": "^7.0.3",
90
89
  "debug": "^4.3.3",
91
- "dotenv": "^10.0.0",
90
+ "dotenv": "^14.3.2",
92
91
  "dotenv-expand": "^5.1.0",
93
92
  "es-module-lexer": "^0.9.3",
94
93
  "estree-walker": "^2.0.2",
95
94
  "etag": "^1.8.1",
96
95
  "fast-glob": "^3.2.7",
97
96
  "http-proxy": "^1.18.1",
97
+ "json5": "^2.2.0",
98
98
  "launch-editor-middleware": "^2.3.0",
99
99
  "magic-string": "^0.25.7",
100
100
  "micromatch": "^4.0.4",
101
101
  "mrmime": "^1.0.0",
102
- "node-forge": "^0.10.0",
102
+ "node-forge": "^1.2.0",
103
103
  "okie": "^1.0.1",
104
104
  "open": "^8.4.0",
105
105
  "periscopic": "^2.0.3",
106
106
  "picocolors": "^1.0.0",
107
107
  "postcss-import": "^14.0.2",
108
- "postcss-load-config": "^3.1.0",
108
+ "postcss-load-config": "^3.1.1",
109
109
  "postcss-modules": "^4.3.0",
110
110
  "resolve.exports": "^1.1.0",
111
111
  "rollup-plugin-license": "^2.6.0",
112
112
  "sirv": "^2.0.0",
113
- "source-map": "^0.6.1",
113
+ "source-map-js": "^1.0.2",
114
114
  "source-map-support": "^0.5.21",
115
115
  "strip-ansi": "^6.0.1",
116
116
  "terser": "^5.10.0",
@@ -39,6 +39,12 @@ function warnFailedFetch(err: Error, path: string | string[]) {
39
39
  )
40
40
  }
41
41
 
42
+ function cleanUrl(pathname: string): string {
43
+ const url = new URL(pathname, location.toString())
44
+ url.searchParams.delete('direct')
45
+ return url.pathname + url.search
46
+ }
47
+
42
48
  // Listen for messages
43
49
  socket.addEventListener('message', async ({ data }) => {
44
50
  handleMessage(JSON.parse(data))
@@ -73,21 +79,21 @@ async function handleMessage(payload: HMRPayload) {
73
79
  } else {
74
80
  // css-update
75
81
  // this is only sent when a css file referenced with <link> is updated
76
- let { path, timestamp } = update
77
- path = path.replace(/\?.*/, '')
82
+ const { path, timestamp } = update
83
+ const searchUrl = cleanUrl(path)
78
84
  // can't use querySelector with `[href*=]` here since the link may be
79
85
  // using relative paths so we need to use link.href to grab the full
80
86
  // URL for the include check.
81
87
  const el = Array.from(
82
88
  document.querySelectorAll<HTMLLinkElement>('link')
83
- ).find((e) => e.href.includes(path))
89
+ ).find((e) => cleanUrl(e.href).includes(searchUrl))
84
90
  if (el) {
85
- const newPath = `${base}${path.slice(1)}${
86
- path.includes('?') ? '&' : '?'
91
+ const newPath = `${base}${searchUrl.slice(1)}${
92
+ searchUrl.includes('?') ? '&' : '?'
87
93
  }t=${timestamp}`
88
94
  el.href = new URL(newPath, el.href).href
89
95
  }
90
- console.log(`[vite] css hot updated: ${path}`)
96
+ console.log(`[vite] css hot updated: ${searchUrl}`)
91
97
  }
92
98
  })
93
99
  break
@@ -4,6 +4,15 @@
4
4
 
5
5
  /* eslint-disable @typescript-eslint/consistent-type-imports */
6
6
 
7
+ // Duplicate import('../src/node/importGlob').AssertOptions
8
+ // Avoid breaking the production client type because this file is referenced
9
+ // in vite/client.d.ts and in production src/node/importGlob.ts doesn't exist
10
+ interface AssertOptions {
11
+ assert?: {
12
+ type: string
13
+ }
14
+ }
15
+
7
16
  interface ImportMeta {
8
17
  url: string
9
18
 
@@ -50,14 +59,20 @@ interface ImportMeta {
50
59
 
51
60
  readonly env: ImportMetaEnv
52
61
 
53
- glob(pattern: string): Record<
62
+ glob(
63
+ pattern: string,
64
+ options?: AssertOptions
65
+ ): Record<
54
66
  string,
55
67
  () => Promise<{
56
68
  [key: string]: any
57
69
  }>
58
70
  >
59
71
 
60
- globEager(pattern: string): Record<
72
+ globEager(
73
+ pattern: string,
74
+ options?: AssertOptions
75
+ ): Record<
61
76
  string,
62
77
  {
63
78
  [key: string]: any
@@ -1,200 +0,0 @@
1
- import type { InlineConfig, ResolvedConfig } from './config';
2
- import type { Plugin, RollupOptions, RollupWarning, WarningHandler, RollupOutput, WatcherOptions, RollupWatcher, ModuleFormat } from 'rollup';
3
- import type { Terser } from 'types/terser';
4
- import type { RollupCommonJSOptions } from 'types/commonjs';
5
- import type { RollupDynamicImportVarsOptions } from 'types/dynamicImportVars';
6
- import type { TransformOptions } from 'esbuild';
7
- export interface BuildOptions {
8
- /**
9
- * Base public path when served in production.
10
- * @deprecated `base` is now a root-level config option.
11
- */
12
- base?: string;
13
- /**
14
- * Compatibility transform target. The transform is performed with esbuild
15
- * and the lowest supported target is es2015/es6. Note this only handles
16
- * syntax transformation and does not cover polyfills (except for dynamic
17
- * import)
18
- *
19
- * Default: 'modules' - Similar to `@babel/preset-env`'s targets.esmodules,
20
- * transpile targeting browsers that natively support dynamic es module imports.
21
- * https://caniuse.com/es6-module-dynamic-import
22
- *
23
- * Another special value is 'esnext' - which only performs minimal transpiling
24
- * (for minification compat) and assumes native dynamic imports support.
25
- *
26
- * For custom targets, see https://esbuild.github.io/api/#target and
27
- * https://esbuild.github.io/content-types/#javascript for more details.
28
- */
29
- target?: 'modules' | TransformOptions['target'] | false;
30
- /**
31
- * whether to inject module preload polyfill.
32
- * Note: does not apply to library mode.
33
- * @default true
34
- */
35
- polyfillModulePreload?: boolean;
36
- /**
37
- * whether to inject dynamic import polyfill.
38
- * Note: does not apply to library mode.
39
- * @default false
40
- * @deprecated use plugin-legacy for browsers that don't support dynamic import
41
- */
42
- polyfillDynamicImport?: boolean;
43
- /**
44
- * Directory relative from `root` where build output will be placed. If the
45
- * directory exists, it will be removed before the build.
46
- * @default 'dist'
47
- */
48
- outDir?: string;
49
- /**
50
- * Directory relative from `outDir` where the built js/css/image assets will
51
- * be placed.
52
- * @default 'assets'
53
- */
54
- assetsDir?: string;
55
- /**
56
- * Static asset files smaller than this number (in bytes) will be inlined as
57
- * base64 strings. Default limit is `4096` (4kb). Set to `0` to disable.
58
- * @default 4096
59
- */
60
- assetsInlineLimit?: number;
61
- /**
62
- * Whether to code-split CSS. When enabled, CSS in async chunks will be
63
- * inlined as strings in the chunk and inserted via dynamically created
64
- * style tags when the chunk is loaded.
65
- * @default true
66
- */
67
- cssCodeSplit?: boolean;
68
- /**
69
- * An optional separate target for CSS minification.
70
- * As esbuild only supports configuring targets to mainstream
71
- * browsers, users may need this option when they are targeting
72
- * a niche browser that comes with most modern JavaScript features
73
- * but has poor CSS support, e.g. Android WeChat WebView, which
74
- * doesn't support the #RGBA syntax.
75
- */
76
- cssTarget?: TransformOptions['target'] | false;
77
- /**
78
- * If `true`, a separate sourcemap file will be created. If 'inline', the
79
- * sourcemap will be appended to the resulting output file as data URI.
80
- * 'hidden' works like `true` except that the corresponding sourcemap
81
- * comments in the bundled files are suppressed.
82
- * @default false
83
- */
84
- sourcemap?: boolean | 'inline' | 'hidden';
85
- /**
86
- * Set to `false` to disable minification, or specify the minifier to use.
87
- * Available options are 'terser' or 'esbuild'.
88
- * @default 'esbuild'
89
- */
90
- minify?: boolean | 'terser' | 'esbuild';
91
- /**
92
- * Options for terser
93
- * https://terser.org/docs/api-reference#minify-options
94
- */
95
- terserOptions?: Terser.MinifyOptions;
96
- /**
97
- * @deprecated Vite now uses esbuild for CSS minification.
98
- */
99
- cleanCssOptions?: any;
100
- /**
101
- * Will be merged with internal rollup options.
102
- * https://rollupjs.org/guide/en/#big-list-of-options
103
- */
104
- rollupOptions?: RollupOptions;
105
- /**
106
- * Options to pass on to `@rollup/plugin-commonjs`
107
- */
108
- commonjsOptions?: RollupCommonJSOptions;
109
- /**
110
- * Options to pass on to `@rollup/plugin-dynamic-import-vars`
111
- */
112
- dynamicImportVarsOptions?: RollupDynamicImportVarsOptions;
113
- /**
114
- * Whether to write bundle to disk
115
- * @default true
116
- */
117
- write?: boolean;
118
- /**
119
- * Empty outDir on write.
120
- * @default true when outDir is a sub directory of project root
121
- */
122
- emptyOutDir?: boolean | null;
123
- /**
124
- * Whether to emit a manifest.json under assets dir to map hash-less filenames
125
- * to their hashed versions. Useful when you want to generate your own HTML
126
- * instead of using the one generated by Vite.
127
- *
128
- * Example:
129
- *
130
- * ```json
131
- * {
132
- * "main.js": {
133
- * "file": "main.68fe3fad.js",
134
- * "css": "main.e6b63442.css",
135
- * "imports": [...],
136
- * "dynamicImports": [...]
137
- * }
138
- * }
139
- * ```
140
- * @default false
141
- */
142
- manifest?: boolean;
143
- /**
144
- * Build in library mode. The value should be the global name of the lib in
145
- * UMD mode. This will produce esm + cjs + umd bundle formats with default
146
- * configurations that are suitable for distributing libraries.
147
- */
148
- lib?: LibraryOptions | false;
149
- /**
150
- * Produce SSR oriented build. Note this requires specifying SSR entry via
151
- * `rollupOptions.input`.
152
- */
153
- ssr?: boolean | string;
154
- /**
155
- * Generate SSR manifest for determining style links and asset preload
156
- * directives in production.
157
- */
158
- ssrManifest?: boolean;
159
- /**
160
- * Set to false to disable reporting compressed chunk sizes.
161
- * Can slightly improve build speed.
162
- */
163
- reportCompressedSize?: boolean;
164
- /**
165
- * Set to false to disable brotli compressed size reporting for build.
166
- * Can slightly improve build speed.
167
- * @deprecated use `build.reportCompressedSize` instead.
168
- */
169
- brotliSize?: boolean;
170
- /**
171
- * Adjust chunk size warning limit (in kbs).
172
- * @default 500
173
- */
174
- chunkSizeWarningLimit?: number;
175
- /**
176
- * Rollup watch options
177
- * https://rollupjs.org/guide/en/#watchoptions
178
- */
179
- watch?: WatcherOptions | null;
180
- }
181
- export interface LibraryOptions {
182
- entry: string;
183
- name?: string;
184
- formats?: LibraryFormats[];
185
- fileName?: string | ((format: ModuleFormat) => string);
186
- }
187
- export declare type LibraryFormats = 'es' | 'cjs' | 'umd' | 'iife';
188
- export declare type ResolvedBuildOptions = Required<Omit<BuildOptions, 'base' | 'cleanCssOptions' | 'polyfillDynamicImport' | 'brotliSize'>>;
189
- export declare function resolveBuildOptions(root: string, raw?: BuildOptions, isBuild?: boolean): ResolvedBuildOptions;
190
- export declare function resolveBuildPlugins(config: ResolvedConfig): {
191
- pre: Plugin[];
192
- post: Plugin[];
193
- };
194
- /**
195
- * Bundles the app for production.
196
- * Returns a Promise containing the build result.
197
- */
198
- export declare function build(inlineConfig?: InlineConfig): Promise<RollupOutput | RollupOutput[] | RollupWatcher>;
199
- export declare function resolveLibFilename(libOptions: LibraryOptions, format: ModuleFormat, root: string): string;
200
- export declare function onRollupWarning(warning: RollupWarning, warn: WarningHandler, config: ResolvedConfig): void;
@@ -1,2 +0,0 @@
1
- import 'node-forge/lib/pki';
2
- export declare function createCertificate(): string;
@@ -1 +0,0 @@
1
- {"version":3,"file":"dep-0ebab0df.js","sources":["../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/join-media.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/resolve-id.js","../../../../../node_modules/.pnpm/pify@2.3.0/node_modules/pify/index.js","../../../../../node_modules/.pnpm/read-cache@1.0.0/node_modules/read-cache/index.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/load-content.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/process-content.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/parse-statements.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/index.js"],"sourcesContent":["\"use strict\"\n\nmodule.exports = function (parentMedia, childMedia) {\n if (!parentMedia.length && childMedia.length) return childMedia\n if (parentMedia.length && !childMedia.length) return parentMedia\n if (!parentMedia.length && !childMedia.length) return []\n\n const media = []\n\n parentMedia.forEach(parentItem => {\n childMedia.forEach(childItem => {\n if (parentItem !== childItem) media.push(`${parentItem} and ${childItem}`)\n })\n })\n\n return media\n}\n","\"use strict\"\n\n// external tooling\nconst resolve = require(\"resolve\")\n\nconst moduleDirectories = [\"web_modules\", \"node_modules\"]\n\nfunction resolveModule(id, opts) {\n return new Promise((res, rej) => {\n resolve(id, opts, (err, path) => (err ? rej(err) : res(path)))\n })\n}\n\nmodule.exports = function (id, base, options) {\n const paths = options.path\n\n const resolveOpts = {\n basedir: base,\n moduleDirectory: moduleDirectories.concat(options.addModulesDirectories),\n paths,\n extensions: [\".css\"],\n packageFilter: function processPackage(pkg) {\n if (pkg.style) pkg.main = pkg.style\n else if (!pkg.main || !/\\.css$/.test(pkg.main)) pkg.main = \"index.css\"\n return pkg\n },\n preserveSymlinks: false,\n }\n\n return resolveModule(`./${id}`, resolveOpts)\n .catch(() => resolveModule(id, resolveOpts))\n .catch(() => {\n if (paths.indexOf(base) === -1) paths.unshift(base)\n\n throw new Error(\n `Failed to find '${id}'\n in [\n ${paths.join(\",\\n \")}\n ]`\n )\n })\n}\n","'use strict';\n\nvar processFn = function (fn, P, opts) {\n\treturn function () {\n\t\tvar that = this;\n\t\tvar args = new Array(arguments.length);\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\targs[i] = arguments[i];\n\t\t}\n\n\t\treturn new P(function (resolve, reject) {\n\t\t\targs.push(function (err, result) {\n\t\t\t\tif (err) {\n\t\t\t\t\treject(err);\n\t\t\t\t} else if (opts.multiArgs) {\n\t\t\t\t\tvar results = new Array(arguments.length - 1);\n\n\t\t\t\t\tfor (var i = 1; i < arguments.length; i++) {\n\t\t\t\t\t\tresults[i - 1] = arguments[i];\n\t\t\t\t\t}\n\n\t\t\t\t\tresolve(results);\n\t\t\t\t} else {\n\t\t\t\t\tresolve(result);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tfn.apply(that, args);\n\t\t});\n\t};\n};\n\nvar pify = module.exports = function (obj, P, opts) {\n\tif (typeof P !== 'function') {\n\t\topts = P;\n\t\tP = Promise;\n\t}\n\n\topts = opts || {};\n\topts.exclude = opts.exclude || [/.+Sync$/];\n\n\tvar filter = function (key) {\n\t\tvar match = function (pattern) {\n\t\t\treturn typeof pattern === 'string' ? key === pattern : pattern.test(key);\n\t\t};\n\n\t\treturn opts.include ? opts.include.some(match) : !opts.exclude.some(match);\n\t};\n\n\tvar ret = typeof obj === 'function' ? function () {\n\t\tif (opts.excludeMain) {\n\t\t\treturn obj.apply(this, arguments);\n\t\t}\n\n\t\treturn processFn(obj, P, opts).apply(this, arguments);\n\t} : {};\n\n\treturn Object.keys(obj).reduce(function (ret, key) {\n\t\tvar x = obj[key];\n\n\t\tret[key] = typeof x === 'function' && filter(key) ? processFn(x, P, opts) : x;\n\n\t\treturn ret;\n\t}, ret);\n};\n\npify.all = pify;\n","var fs = require('fs');\r\nvar path = require('path');\r\nvar pify = require('pify');\r\n\r\nvar stat = pify(fs.stat);\r\nvar readFile = pify(fs.readFile);\r\nvar resolve = path.resolve;\r\n\r\nvar cache = Object.create(null);\r\n\r\nfunction convert(content, encoding) {\r\n\tif (Buffer.isEncoding(encoding)) {\r\n\t\treturn content.toString(encoding);\r\n\t}\r\n\treturn content;\r\n}\r\n\r\nmodule.exports = function (path, encoding) {\r\n\tpath = resolve(path);\r\n\r\n\treturn stat(path).then(function (stats) {\r\n\t\tvar item = cache[path];\r\n\r\n\t\tif (item && item.mtime.getTime() === stats.mtime.getTime()) {\r\n\t\t\treturn convert(item.content, encoding);\r\n\t\t}\r\n\r\n\t\treturn readFile(path).then(function (data) {\r\n\t\t\tcache[path] = {\r\n\t\t\t\tmtime: stats.mtime,\r\n\t\t\t\tcontent: data\r\n\t\t\t};\r\n\r\n\t\t\treturn convert(data, encoding);\r\n\t\t});\r\n\t}).catch(function (err) {\r\n\t\tcache[path] = null;\r\n\t\treturn Promise.reject(err);\r\n\t});\r\n};\r\n\r\nmodule.exports.sync = function (path, encoding) {\r\n\tpath = resolve(path);\r\n\r\n\ttry {\r\n\t\tvar stats = fs.statSync(path);\r\n\t\tvar item = cache[path];\r\n\r\n\t\tif (item && item.mtime.getTime() === stats.mtime.getTime()) {\r\n\t\t\treturn convert(item.content, encoding);\r\n\t\t}\r\n\r\n\t\tvar data = fs.readFileSync(path);\r\n\r\n\t\tcache[path] = {\r\n\t\t\tmtime: stats.mtime,\r\n\t\t\tcontent: data\r\n\t\t};\r\n\r\n\t\treturn convert(data, encoding);\r\n\t} catch (err) {\r\n\t\tcache[path] = null;\r\n\t\tthrow err;\r\n\t}\r\n\r\n};\r\n\r\nmodule.exports.get = function (path, encoding) {\r\n\tpath = resolve(path);\r\n\tif (cache[path]) {\r\n\t\treturn convert(cache[path].content, encoding);\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nmodule.exports.clear = function () {\r\n\tcache = Object.create(null);\r\n};\r\n","\"use strict\"\n\nconst readCache = require(\"read-cache\")\n\nmodule.exports = filename => readCache(filename, \"utf-8\")\n","\"use strict\"\n\n// builtin tooling\nconst path = require(\"path\")\n\n// placeholder tooling\nlet sugarss\n\nmodule.exports = function processContent(\n result,\n content,\n filename,\n options,\n postcss\n) {\n const { plugins } = options\n const ext = path.extname(filename)\n\n const parserList = []\n\n // SugarSS support:\n if (ext === \".sss\") {\n if (!sugarss) {\n try {\n sugarss = require(\"sugarss\")\n } catch {} // Ignore\n }\n if (sugarss)\n return runPostcss(postcss, content, filename, plugins, [sugarss])\n }\n\n // Syntax support:\n if (result.opts.syntax && result.opts.syntax.parse) {\n parserList.push(result.opts.syntax.parse)\n }\n\n // Parser support:\n if (result.opts.parser) parserList.push(result.opts.parser)\n // Try the default as a last resort:\n parserList.push(null)\n\n return runPostcss(postcss, content, filename, plugins, parserList)\n}\n\nfunction runPostcss(postcss, content, filename, plugins, parsers, index) {\n if (!index) index = 0\n return postcss(plugins)\n .process(content, {\n from: filename,\n parser: parsers[index],\n })\n .catch(err => {\n // If there's an error, try the next parser\n index++\n // If there are no parsers left, throw it\n if (index === parsers.length) throw err\n return runPostcss(postcss, content, filename, plugins, parsers, index)\n })\n}\n","\"use strict\"\n\n// external tooling\nconst valueParser = require(\"postcss-value-parser\")\n\n// extended tooling\nconst { stringify } = valueParser\n\nfunction split(params, start) {\n const list = []\n const last = params.reduce((item, node, index) => {\n if (index < start) return \"\"\n if (node.type === \"div\" && node.value === \",\") {\n list.push(item)\n return \"\"\n }\n return item + stringify(node)\n }, \"\")\n list.push(last)\n return list\n}\n\nmodule.exports = function (result, styles) {\n const statements = []\n let nodes = []\n\n styles.each(node => {\n let stmt\n if (node.type === \"atrule\") {\n if (node.name === \"import\") stmt = parseImport(result, node)\n else if (node.name === \"media\") stmt = parseMedia(result, node)\n else if (node.name === \"charset\") stmt = parseCharset(result, node)\n }\n\n if (stmt) {\n if (nodes.length) {\n statements.push({\n type: \"nodes\",\n nodes,\n media: [],\n })\n nodes = []\n }\n statements.push(stmt)\n } else nodes.push(node)\n })\n\n if (nodes.length) {\n statements.push({\n type: \"nodes\",\n nodes,\n media: [],\n })\n }\n\n return statements\n}\n\nfunction parseMedia(result, atRule) {\n const params = valueParser(atRule.params).nodes\n return {\n type: \"media\",\n node: atRule,\n media: split(params, 0),\n }\n}\n\nfunction parseCharset(result, atRule) {\n if (atRule.prev()) {\n return result.warn(\"@charset must precede all other statements\", {\n node: atRule,\n })\n }\n return {\n type: \"charset\",\n node: atRule,\n media: [],\n }\n}\n\nfunction parseImport(result, atRule) {\n let prev = atRule.prev()\n if (prev) {\n do {\n if (\n prev.type !== \"comment\" &&\n (prev.type !== \"atrule\" ||\n (prev.name !== \"import\" && prev.name !== \"charset\"))\n ) {\n return result.warn(\n \"@import must precede all other statements (besides @charset)\",\n { node: atRule }\n )\n }\n prev = prev.prev()\n } while (prev)\n }\n\n if (atRule.nodes) {\n return result.warn(\n \"It looks like you didn't end your @import statement correctly. \" +\n \"Child nodes are attached to it.\",\n { node: atRule }\n )\n }\n\n const params = valueParser(atRule.params).nodes\n const stmt = {\n type: \"import\",\n node: atRule,\n media: [],\n }\n\n // prettier-ignore\n if (\n !params.length ||\n (\n params[0].type !== \"string\" ||\n !params[0].value\n ) &&\n (\n params[0].type !== \"function\" ||\n params[0].value !== \"url\" ||\n !params[0].nodes.length ||\n !params[0].nodes[0].value\n )\n ) {\n return result.warn(`Unable to find uri in '${ atRule.toString() }'`, {\n node: atRule,\n })\n }\n\n if (params[0].type === \"string\") stmt.uri = params[0].value\n else stmt.uri = params[0].nodes[0].value\n stmt.fullUri = stringify(params[0])\n\n if (params.length > 2) {\n if (params[1].type !== \"space\") {\n return result.warn(\"Invalid import media statement\", { node: atRule })\n }\n stmt.media = split(params, 2)\n }\n\n return stmt\n}\n","\"use strict\"\n// builtin tooling\nconst path = require(\"path\")\n\n// internal tooling\nconst joinMedia = require(\"./lib/join-media\")\nconst resolveId = require(\"./lib/resolve-id\")\nconst loadContent = require(\"./lib/load-content\")\nconst processContent = require(\"./lib/process-content\")\nconst parseStatements = require(\"./lib/parse-statements\")\n\nfunction AtImport(options) {\n options = {\n root: process.cwd(),\n path: [],\n skipDuplicates: true,\n resolve: resolveId,\n load: loadContent,\n plugins: [],\n addModulesDirectories: [],\n ...options,\n }\n\n options.root = path.resolve(options.root)\n\n // convert string to an array of a single element\n if (typeof options.path === \"string\") options.path = [options.path]\n\n if (!Array.isArray(options.path)) options.path = []\n\n options.path = options.path.map(p => path.resolve(options.root, p))\n\n return {\n postcssPlugin: \"postcss-import\",\n Once(styles, { result, atRule, postcss }) {\n const state = {\n importedFiles: {},\n hashFiles: {},\n }\n\n if (styles.source && styles.source.input && styles.source.input.file) {\n state.importedFiles[styles.source.input.file] = {}\n }\n\n if (options.plugins && !Array.isArray(options.plugins)) {\n throw new Error(\"plugins option must be an array\")\n }\n\n return parseStyles(result, styles, options, state, []).then(bundle => {\n applyRaws(bundle)\n applyMedia(bundle)\n applyStyles(bundle, styles)\n })\n\n function applyRaws(bundle) {\n bundle.forEach((stmt, index) => {\n if (index === 0) return\n\n if (stmt.parent) {\n const { before } = stmt.parent.node.raws\n if (stmt.type === \"nodes\") stmt.nodes[0].raws.before = before\n else stmt.node.raws.before = before\n } else if (stmt.type === \"nodes\") {\n stmt.nodes[0].raws.before = stmt.nodes[0].raws.before || \"\\n\"\n }\n })\n }\n\n function applyMedia(bundle) {\n bundle.forEach(stmt => {\n if (!stmt.media.length || stmt.type === \"charset\") return\n if (stmt.type === \"import\") {\n stmt.node.params = `${stmt.fullUri} ${stmt.media.join(\", \")}`\n } else if (stmt.type === \"media\")\n stmt.node.params = stmt.media.join(\", \")\n else {\n const { nodes } = stmt\n const { parent } = nodes[0]\n const mediaNode = atRule({\n name: \"media\",\n params: stmt.media.join(\", \"),\n source: parent.source,\n })\n\n parent.insertBefore(nodes[0], mediaNode)\n\n // remove nodes\n nodes.forEach(node => {\n node.parent = undefined\n })\n\n // better output\n nodes[0].raws.before = nodes[0].raws.before || \"\\n\"\n\n // wrap new rules with media query\n mediaNode.append(nodes)\n\n stmt.type = \"media\"\n stmt.node = mediaNode\n delete stmt.nodes\n }\n })\n }\n\n function applyStyles(bundle, styles) {\n styles.nodes = []\n\n // Strip additional statements.\n bundle.forEach(stmt => {\n if ([\"charset\", \"import\", \"media\"].includes(stmt.type)) {\n stmt.node.parent = undefined\n styles.append(stmt.node)\n } else if (stmt.type === \"nodes\") {\n stmt.nodes.forEach(node => {\n node.parent = undefined\n styles.append(node)\n })\n }\n })\n }\n\n function parseStyles(result, styles, options, state, media) {\n const statements = parseStatements(result, styles)\n\n return Promise.resolve(statements)\n .then(stmts => {\n // process each statement in series\n return stmts.reduce((promise, stmt) => {\n return promise.then(() => {\n stmt.media = joinMedia(media, stmt.media || [])\n\n // skip protocol base uri (protocol://url) or protocol-relative\n if (\n stmt.type !== \"import\" ||\n /^(?:[a-z]+:)?\\/\\//i.test(stmt.uri)\n ) {\n return\n }\n\n if (options.filter && !options.filter(stmt.uri)) {\n // rejected by filter\n return\n }\n\n return resolveImportId(result, stmt, options, state)\n })\n }, Promise.resolve())\n })\n .then(() => {\n let charset\n const imports = []\n const bundle = []\n\n function handleCharset(stmt) {\n if (!charset) charset = stmt\n // charsets aren't case-sensitive, so convert to lower case to compare\n else if (\n stmt.node.params.toLowerCase() !==\n charset.node.params.toLowerCase()\n ) {\n throw new Error(\n `Incompatable @charset statements:\n ${stmt.node.params} specified in ${stmt.node.source.input.file}\n ${charset.node.params} specified in ${charset.node.source.input.file}`\n )\n }\n }\n\n // squash statements and their children\n statements.forEach(stmt => {\n if (stmt.type === \"charset\") handleCharset(stmt)\n else if (stmt.type === \"import\") {\n if (stmt.children) {\n stmt.children.forEach((child, index) => {\n if (child.type === \"import\") imports.push(child)\n else if (child.type === \"charset\") handleCharset(child)\n else bundle.push(child)\n // For better output\n if (index === 0) child.parent = stmt\n })\n } else imports.push(stmt)\n } else if (stmt.type === \"media\" || stmt.type === \"nodes\") {\n bundle.push(stmt)\n }\n })\n\n return charset\n ? [charset, ...imports.concat(bundle)]\n : imports.concat(bundle)\n })\n }\n\n function resolveImportId(result, stmt, options, state) {\n const atRule = stmt.node\n let sourceFile\n if (atRule.source && atRule.source.input && atRule.source.input.file) {\n sourceFile = atRule.source.input.file\n }\n const base = sourceFile\n ? path.dirname(atRule.source.input.file)\n : options.root\n\n return Promise.resolve(options.resolve(stmt.uri, base, options))\n .then(paths => {\n if (!Array.isArray(paths)) paths = [paths]\n // Ensure that each path is absolute:\n return Promise.all(\n paths.map(file => {\n return !path.isAbsolute(file)\n ? resolveId(file, base, options)\n : file\n })\n )\n })\n .then(resolved => {\n // Add dependency messages:\n resolved.forEach(file => {\n result.messages.push({\n type: \"dependency\",\n plugin: \"postcss-import\",\n file,\n parent: sourceFile,\n })\n })\n\n return Promise.all(\n resolved.map(file => {\n return loadImportContent(result, stmt, file, options, state)\n })\n )\n })\n .then(result => {\n // Merge loaded statements\n stmt.children = result.reduce((result, statements) => {\n return statements ? result.concat(statements) : result\n }, [])\n })\n }\n\n function loadImportContent(result, stmt, filename, options, state) {\n const atRule = stmt.node\n const { media } = stmt\n if (options.skipDuplicates) {\n // skip files already imported at the same scope\n if (\n state.importedFiles[filename] &&\n state.importedFiles[filename][media]\n ) {\n return\n }\n\n // save imported files to skip them next time\n if (!state.importedFiles[filename]) state.importedFiles[filename] = {}\n state.importedFiles[filename][media] = true\n }\n\n return Promise.resolve(options.load(filename, options)).then(\n content => {\n if (content.trim() === \"\") {\n result.warn(`${filename} is empty`, { node: atRule })\n return\n }\n\n // skip previous imported files not containing @import rules\n if (state.hashFiles[content] && state.hashFiles[content][media])\n return\n\n return processContent(\n result,\n content,\n filename,\n options,\n postcss\n ).then(importedResult => {\n const styles = importedResult.root\n result.messages = result.messages.concat(importedResult.messages)\n\n if (options.skipDuplicates) {\n const hasImport = styles.some(child => {\n return child.type === \"atrule\" && child.name === \"import\"\n })\n if (!hasImport) {\n // save hash files to skip them next time\n if (!state.hashFiles[content]) state.hashFiles[content] = {}\n state.hashFiles[content][media] = true\n }\n }\n\n // recursion: import @import from imported file\n return parseStyles(result, styles, options, state, media)\n })\n }\n )\n }\n },\n }\n}\n\nAtImport.postcss = true\n\nmodule.exports = AtImport\n"],"names":["joinMedia","resolve","require$$0","resolveId","pify","pifyModule","path","require$$1","require$$2","readCacheModule","loadContent","processContent","parseStatements","require$$3","require$$4","require$$5"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;IAEAA,WAAc,GAAG,UAAU,WAAW,EAAE,UAAU,EAAE;AACpD,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,EAAE,OAAO,UAAU;AACjE,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,WAAW;AAClE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE;AAC1D;AACA,EAAE,MAAM,KAAK,GAAG,GAAE;AAClB;AACA,EAAE,WAAW,CAAC,OAAO,CAAC,UAAU,IAAI;AACpC,IAAI,UAAU,CAAC,OAAO,CAAC,SAAS,IAAI;AACpC,MAAM,IAAI,UAAU,KAAK,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAC;AAChF,KAAK,EAAC;AACN,GAAG,EAAC;AACJ;AACA,EAAE,OAAO,KAAK;AACd;;ACdA;AACA,MAAMC,SAAO,GAAGC,iBAAkB;AAClC;AACA,MAAM,iBAAiB,GAAG,CAAC,aAAa,EAAE,cAAc,EAAC;AACzD;AACA,SAAS,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE;AACjC,EAAE,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK;AACnC,IAAID,SAAO,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,EAAC;AAClE,GAAG,CAAC;AACJ,CAAC;AACD;IACAE,WAAc,GAAG,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;AAC9C,EAAE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAI;AAC5B;AACA,EAAE,MAAM,WAAW,GAAG;AACtB,IAAI,OAAO,EAAE,IAAI;AACjB,IAAI,eAAe,EAAE,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC;AAC5E,IAAI,KAAK;AACT,IAAI,UAAU,EAAE,CAAC,MAAM,CAAC;AACxB,IAAI,aAAa,EAAE,SAAS,cAAc,CAAC,GAAG,EAAE;AAChD,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAK;AACzC,WAAW,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,GAAG,YAAW;AAC5E,MAAM,OAAO,GAAG;AAChB,KAAK;AACL,IAAI,gBAAgB,EAAE,KAAK;AAC3B,IAAG;AACH;AACA,EAAE,OAAO,aAAa,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC;AAC9C,KAAK,KAAK,CAAC,MAAM,aAAa,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;AAChD,KAAK,KAAK,CAAC,MAAM;AACjB,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAC;AACzD;AACA,MAAM,MAAM,IAAI,KAAK;AACrB,QAAQ,CAAC,gBAAgB,EAAE,EAAE,CAAC;AAC9B;AACA,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAChC,GAAG,CAAC;AACJ,OAAO;AACP,KAAK,CAAC;AACN;;;;;;ACvCA,IAAI,SAAS,GAAG,UAAU,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE;AACvC,CAAC,OAAO,YAAY;AACpB,EAAE,IAAI,IAAI,GAAG,IAAI,CAAC;AAClB,EAAE,IAAI,IAAI,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACzC;AACA,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC7C,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAC1B,GAAG;AACH;AACA,EAAE,OAAO,IAAI,CAAC,CAAC,UAAU,OAAO,EAAE,MAAM,EAAE;AAC1C,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,EAAE,MAAM,EAAE;AACpC,IAAI,IAAI,GAAG,EAAE;AACb,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC;AACjB,KAAK,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE;AAC/B,KAAK,IAAI,OAAO,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACnD;AACA,KAAK,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAChD,MAAM,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AACpC,MAAM;AACN;AACA,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AACtB,KAAK,MAAM;AACX,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AACrB,KAAK;AACL,IAAI,CAAC,CAAC;AACN;AACA,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACxB,GAAG,CAAC,CAAC;AACL,EAAE,CAAC;AACH,CAAC,CAAC;AACF;AACA,IAAIC,MAAI,GAAGC,cAAc,GAAG,UAAU,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE;AACpD,CAAC,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE;AAC9B,EAAE,IAAI,GAAG,CAAC,CAAC;AACX,EAAE,CAAC,GAAG,OAAO,CAAC;AACd,EAAE;AACF;AACA,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;AACnB,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC;AAC5C;AACA,CAAC,IAAI,MAAM,GAAG,UAAU,GAAG,EAAE;AAC7B,EAAE,IAAI,KAAK,GAAG,UAAU,OAAO,EAAE;AACjC,GAAG,OAAO,OAAO,OAAO,KAAK,QAAQ,GAAG,GAAG,KAAK,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5E,GAAG,CAAC;AACJ;AACA,EAAE,OAAO,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC7E,EAAE,CAAC;AACH;AACA,CAAC,IAAI,GAAG,GAAG,OAAO,GAAG,KAAK,UAAU,GAAG,YAAY;AACnD,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE;AACxB,GAAG,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACrC,GAAG;AACH;AACA,EAAE,OAAO,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACxD,EAAE,GAAG,EAAE,CAAC;AACR;AACA,CAAC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,GAAG,EAAE,GAAG,EAAE;AACpD,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;AACnB;AACA,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,KAAK,UAAU,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;AAChF;AACA,EAAE,OAAO,GAAG,CAAC;AACb,EAAE,EAAE,GAAG,CAAC,CAAC;AACT,CAAC,CAAC;AACF;AACAD,MAAI,CAAC,GAAG,GAAGA,MAAI;;ACnEf,IAAI,EAAE,GAAGF,WAAa,CAAC;AACvB,IAAII,MAAI,GAAGC,aAAe,CAAC;AAC3B,IAAI,IAAI,GAAGC,cAAe,CAAC;AAC3B;AACA,IAAI,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AACzB,IAAI,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;AACjC,IAAI,OAAO,GAAGF,MAAI,CAAC,OAAO,CAAC;AAC3B;AACA,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAChC;AACA,SAAS,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE;AACpC,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;AAClC,EAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACpC,EAAE;AACF,CAAC,OAAO,OAAO,CAAC;AAChB,CAAC;AACD;AACAG,mBAAc,GAAG,UAAU,IAAI,EAAE,QAAQ,EAAE;AAC3C,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AACtB;AACA,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,EAAE;AACzC,EAAE,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;AACzB;AACA,EAAE,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE;AAC9D,GAAG,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAC1C,GAAG;AACH;AACA,EAAE,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE;AAC7C,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG;AACjB,IAAI,KAAK,EAAE,KAAK,CAAC,KAAK;AACtB,IAAI,OAAO,EAAE,IAAI;AACjB,IAAI,CAAC;AACL;AACA,GAAG,OAAO,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAClC,GAAG,CAAC,CAAC;AACL,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE;AACzB,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AACrB,EAAE,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC7B,EAAE,CAAC,CAAC;AACJ,CAAC,CAAC;AACF;wBACmB,GAAG,UAAU,IAAI,EAAE,QAAQ,EAAE;AAChD,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AACtB;AACA,CAAC,IAAI;AACL,EAAE,IAAI,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAChC,EAAE,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;AACzB;AACA,EAAE,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE;AAC9D,GAAG,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAC1C,GAAG;AACH;AACA,EAAE,IAAI,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AACnC;AACA,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG;AAChB,GAAG,KAAK,EAAE,KAAK,CAAC,KAAK;AACrB,GAAG,OAAO,EAAE,IAAI;AAChB,GAAG,CAAC;AACJ;AACA,EAAE,OAAO,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AACjC,EAAE,CAAC,OAAO,GAAG,EAAE;AACf,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AACrB,EAAE,MAAM,GAAG,CAAC;AACZ,EAAE;AACF;AACA,EAAE;AACF;uBACkB,GAAG,UAAU,IAAI,EAAE,QAAQ,EAAE;AAC/C,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AACtB,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE;AAClB,EAAE,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAChD,EAAE;AACF,CAAC,OAAO,IAAI,CAAC;AACb,EAAE;AACF;yBACoB,GAAG,YAAY;AACnC,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC7B;;AC3EA,MAAM,SAAS,GAAGP,oBAAqB;AACvC;IACAQ,aAAc,GAAG,QAAQ,IAAI,SAAS,CAAC,QAAQ,EAAE,OAAO;;ACFxD;AACA,MAAMJ,MAAI,GAAGJ,cAAe;AAC5B;AACA;AACA,IAAI,QAAO;AACX;IACAS,gBAAc,GAAG,SAAS,cAAc;AACxC,EAAE,MAAM;AACR,EAAE,OAAO;AACT,EAAE,QAAQ;AACV,EAAE,OAAO;AACT,EAAE,OAAO;AACT,EAAE;AACF,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,QAAO;AAC7B,EAAE,MAAM,GAAG,GAAGL,MAAI,CAAC,OAAO,CAAC,QAAQ,EAAC;AACpC;AACA,EAAE,MAAM,UAAU,GAAG,GAAE;AACvB;AACA;AACA,EAAE,IAAI,GAAG,KAAK,MAAM,EAAE;AACtB,IAAI,IAAI,CAAC,OAAO,EAAE;AAClB,MAAM,IAAI;AACV,QAAQ,OAAO,GAAG,2BAAkB;AACpC,OAAO,CAAC,MAAM,EAAE;AAChB,KAAK;AACL,IAAI,IAAI,OAAO;AACf,MAAM,OAAO,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC;AACvE,GAAG;AACH;AACA;AACA,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;AACtD,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAC;AAC7C,GAAG;AACH;AACA;AACA,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAC;AAC7D;AACA,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,EAAC;AACvB;AACA,EAAE,OAAO,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC;AACpE,EAAC;AACD;AACA,SAAS,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;AACzE,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,EAAC;AACvB,EAAE,OAAO,OAAO,CAAC,OAAO,CAAC;AACzB,KAAK,OAAO,CAAC,OAAO,EAAE;AACtB,MAAM,IAAI,EAAE,QAAQ;AACpB,MAAM,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC;AAC5B,KAAK,CAAC;AACN,KAAK,KAAK,CAAC,GAAG,IAAI;AAClB;AACA,MAAM,KAAK,GAAE;AACb;AACA,MAAM,IAAI,KAAK,KAAK,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG;AAC7C,MAAM,OAAO,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC;AAC5E,KAAK,CAAC;AACN;;ACxDA;AACA,MAAM,WAAW,GAAGJ,YAA+B;AACnD;AACA;AACA,MAAM,EAAE,SAAS,EAAE,GAAG,YAAW;AACjC;AACA,SAAS,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE;AAC9B,EAAE,MAAM,IAAI,GAAG,GAAE;AACjB,EAAE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,KAAK;AACpD,IAAI,IAAI,KAAK,GAAG,KAAK,EAAE,OAAO,EAAE;AAChC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,GAAG,EAAE;AACnD,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAC;AACrB,MAAM,OAAO,EAAE;AACf,KAAK;AACL,IAAI,OAAO,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC;AACjC,GAAG,EAAE,EAAE,EAAC;AACR,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAC;AACjB,EAAE,OAAO,IAAI;AACb,CAAC;AACD;IACAU,iBAAc,GAAG,UAAU,MAAM,EAAE,MAAM,EAAE;AAC3C,EAAE,MAAM,UAAU,GAAG,GAAE;AACvB,EAAE,IAAI,KAAK,GAAG,GAAE;AAChB;AACA,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI;AACtB,IAAI,IAAI,KAAI;AACZ,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;AAChC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,IAAI,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,EAAC;AAClE,WAAW,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,EAAC;AACrE,WAAW,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE,IAAI,EAAC;AACzE,KAAK;AACL;AACA,IAAI,IAAI,IAAI,EAAE;AACd,MAAM,IAAI,KAAK,CAAC,MAAM,EAAE;AACxB,QAAQ,UAAU,CAAC,IAAI,CAAC;AACxB,UAAU,IAAI,EAAE,OAAO;AACvB,UAAU,KAAK;AACf,UAAU,KAAK,EAAE,EAAE;AACnB,SAAS,EAAC;AACV,QAAQ,KAAK,GAAG,GAAE;AAClB,OAAO;AACP,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,EAAC;AAC3B,KAAK,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,EAAC;AAC3B,GAAG,EAAC;AACJ;AACA,EAAE,IAAI,KAAK,CAAC,MAAM,EAAE;AACpB,IAAI,UAAU,CAAC,IAAI,CAAC;AACpB,MAAM,IAAI,EAAE,OAAO;AACnB,MAAM,KAAK;AACX,MAAM,KAAK,EAAE,EAAE;AACf,KAAK,EAAC;AACN,GAAG;AACH;AACA,EAAE,OAAO,UAAU;AACnB,EAAC;AACD;AACA,SAAS,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE;AACpC,EAAE,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAK;AACjD,EAAE,OAAO;AACT,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;AAC3B,GAAG;AACH,CAAC;AACD;AACA,SAAS,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE;AACtC,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE;AACrB,IAAI,OAAO,MAAM,CAAC,IAAI,CAAC,4CAA4C,EAAE;AACrE,MAAM,IAAI,EAAE,MAAM;AAClB,KAAK,CAAC;AACN,GAAG;AACH,EAAE,OAAO;AACT,IAAI,IAAI,EAAE,SAAS;AACnB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,KAAK,EAAE,EAAE;AACb,GAAG;AACH,CAAC;AACD;AACA,SAAS,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE;AACrC,EAAE,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,GAAE;AAC1B,EAAE,IAAI,IAAI,EAAE;AACZ,IAAI,GAAG;AACP,MAAM;AACN,QAAQ,IAAI,CAAC,IAAI,KAAK,SAAS;AAC/B,SAAS,IAAI,CAAC,IAAI,KAAK,QAAQ;AAC/B,WAAW,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;AAC9D,QAAQ;AACR,QAAQ,OAAO,MAAM,CAAC,IAAI;AAC1B,UAAU,8DAA8D;AACxE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;AAC1B,SAAS;AACT,OAAO;AACP,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,GAAE;AACxB,KAAK,QAAQ,IAAI,CAAC;AAClB,GAAG;AACH;AACA,EAAE,IAAI,MAAM,CAAC,KAAK,EAAE;AACpB,IAAI,OAAO,MAAM,CAAC,IAAI;AACtB,MAAM,iEAAiE;AACvE,QAAQ,iCAAiC;AACzC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;AACtB,KAAK;AACL,GAAG;AACH;AACA,EAAE,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAK;AACjD,EAAE,MAAM,IAAI,GAAG;AACf,IAAI,IAAI,EAAE,QAAQ;AAClB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,KAAK,EAAE,EAAE;AACb,IAAG;AACH;AACA;AACA,EAAE;AACF,IAAI,CAAC,MAAM,CAAC,MAAM;AAClB,IAAI;AACJ,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ;AACjC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK;AACtB;AACA;AACA,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU;AACnC,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK;AAC/B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM;AAC7B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK;AAC/B,KAAK;AACL,IAAI;AACJ,IAAI,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,uBAAuB,IAAI,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE;AAC3E,MAAM,IAAI,EAAE,MAAM;AAClB,KAAK,CAAC;AACN,GAAG;AACH;AACA,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAK;AAC7D,OAAO,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAK;AAC1C,EAAE,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAC;AACrC;AACA,EAAE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;AACzB,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE;AACpC,MAAM,OAAO,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC5E,KAAK;AACL,IAAI,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAC;AACjC,GAAG;AACH;AACA,EAAE,OAAO,IAAI;AACb;;AC/IA;AACA,MAAM,IAAI,GAAGV,cAAe;AAC5B;AACA;AACA,MAAM,SAAS,GAAGK,YAA2B;AAC7C,MAAM,SAAS,GAAGC,YAA2B;AAC7C,MAAM,WAAW,GAAGK,cAA6B;AACjD,MAAM,cAAc,GAAGC,iBAAgC;AACvD,MAAM,eAAe,GAAGC,kBAAiC;AACzD;AACA,SAAS,QAAQ,CAAC,OAAO,EAAE;AAC3B,EAAE,OAAO,GAAG;AACZ,IAAI,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE;AACvB,IAAI,IAAI,EAAE,EAAE;AACZ,IAAI,cAAc,EAAE,IAAI;AACxB,IAAI,OAAO,EAAE,SAAS;AACtB,IAAI,IAAI,EAAE,WAAW;AACrB,IAAI,OAAO,EAAE,EAAE;AACf,IAAI,qBAAqB,EAAE,EAAE;AAC7B,IAAI,GAAG,OAAO;AACd,IAAG;AACH;AACA,EAAE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAC;AAC3C;AACA;AACA,EAAE,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAC;AACrE;AACA,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,GAAG,GAAE;AACrD;AACA,EAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,EAAC;AACrE;AACA,EAAE,OAAO;AACT,IAAI,aAAa,EAAE,gBAAgB;AACnC,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;AAC9C,MAAM,MAAM,KAAK,GAAG;AACpB,QAAQ,aAAa,EAAE,EAAE;AACzB,QAAQ,SAAS,EAAE,EAAE;AACrB,QAAO;AACP;AACA,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;AAC5E,QAAQ,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAE;AAC1D,OAAO;AACP;AACA,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;AAC9D,QAAQ,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC;AAC1D,OAAO;AACP;AACA,MAAM,OAAO,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI;AAC5E,QAAQ,SAAS,CAAC,MAAM,EAAC;AACzB,QAAQ,UAAU,CAAC,MAAM,EAAC;AAC1B,QAAQ,WAAW,CAAC,MAAM,EAAE,MAAM,EAAC;AACnC,OAAO,CAAC;AACR;AACA,MAAM,SAAS,SAAS,CAAC,MAAM,EAAE;AACjC,QAAQ,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK;AACxC,UAAU,IAAI,KAAK,KAAK,CAAC,EAAE,MAAM;AACjC;AACA,UAAU,IAAI,IAAI,CAAC,MAAM,EAAE;AAC3B,YAAY,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAI;AACpD,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,OAAM;AACzE,iBAAiB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,OAAM;AAC/C,WAAW,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;AAC5C,YAAY,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,KAAI;AACzE,WAAW;AACX,SAAS,EAAC;AACV,OAAO;AACP;AACA,MAAM,SAAS,UAAU,CAAC,MAAM,EAAE;AAClC,QAAQ,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;AAC/B,UAAU,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,MAAM;AACnE,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;AACtC,YAAY,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAC;AACzE,WAAW,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;AAC1C,YAAY,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAC;AACpD,eAAe;AACf,YAAY,MAAM,EAAE,KAAK,EAAE,GAAG,KAAI;AAClC,YAAY,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,EAAC;AACvC,YAAY,MAAM,SAAS,GAAG,MAAM,CAAC;AACrC,cAAc,IAAI,EAAE,OAAO;AAC3B,cAAc,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AAC3C,cAAc,MAAM,EAAE,MAAM,CAAC,MAAM;AACnC,aAAa,EAAC;AACd;AACA,YAAY,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,EAAC;AACpD;AACA;AACA,YAAY,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI;AAClC,cAAc,IAAI,CAAC,MAAM,GAAG,UAAS;AACrC,aAAa,EAAC;AACd;AACA;AACA,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,KAAI;AAC/D;AACA;AACA,YAAY,SAAS,CAAC,MAAM,CAAC,KAAK,EAAC;AACnC;AACA,YAAY,IAAI,CAAC,IAAI,GAAG,QAAO;AAC/B,YAAY,IAAI,CAAC,IAAI,GAAG,UAAS;AACjC,YAAY,OAAO,IAAI,CAAC,MAAK;AAC7B,WAAW;AACX,SAAS,EAAC;AACV,OAAO;AACP;AACA,MAAM,SAAS,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE;AAC3C,QAAQ,MAAM,CAAC,KAAK,GAAG,GAAE;AACzB;AACA;AACA,QAAQ,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;AAC/B,UAAU,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AAClE,YAAY,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,UAAS;AACxC,YAAY,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAC;AACpC,WAAW,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;AAC5C,YAAY,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI;AACvC,cAAc,IAAI,CAAC,MAAM,GAAG,UAAS;AACrC,cAAc,MAAM,CAAC,MAAM,CAAC,IAAI,EAAC;AACjC,aAAa,EAAC;AACd,WAAW;AACX,SAAS,EAAC;AACV,OAAO;AACP;AACA,MAAM,SAAS,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE;AAClE,QAAQ,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,EAAE,MAAM,EAAC;AAC1D;AACA,QAAQ,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;AAC1C,WAAW,IAAI,CAAC,KAAK,IAAI;AACzB;AACA,YAAY,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,IAAI,KAAK;AACnD,cAAc,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM;AACxC,gBAAgB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,EAAC;AAC/D;AACA;AACA,gBAAgB;AAChB,kBAAkB,IAAI,CAAC,IAAI,KAAK,QAAQ;AACxC,kBAAkB,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AACrD,kBAAkB;AAClB,kBAAkB,MAAM;AACxB,iBAAiB;AACjB;AACA,gBAAgB,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;AACjE;AACA,kBAAkB,MAAM;AACxB,iBAAiB;AACjB;AACA,gBAAgB,OAAO,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC;AACpE,eAAe,CAAC;AAChB,aAAa,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;AACjC,WAAW,CAAC;AACZ,WAAW,IAAI,CAAC,MAAM;AACtB,YAAY,IAAI,QAAO;AACvB,YAAY,MAAM,OAAO,GAAG,GAAE;AAC9B,YAAY,MAAM,MAAM,GAAG,GAAE;AAC7B;AACA,YAAY,SAAS,aAAa,CAAC,IAAI,EAAE;AACzC,cAAc,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,KAAI;AAC1C;AACA,mBAAmB;AACnB,gBAAgB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;AAC9C,gBAAgB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;AACjD,gBAAgB;AAChB,gBAAgB,MAAM,IAAI,KAAK;AAC/B,kBAAkB,CAAC;AACnB,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;AACjE,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACxE,iBAAiB;AACjB,eAAe;AACf,aAAa;AACb;AACA;AACA,YAAY,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI;AACvC,cAAc,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,aAAa,CAAC,IAAI,EAAC;AAC9D,mBAAmB,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;AAC/C,gBAAgB,IAAI,IAAI,CAAC,QAAQ,EAAE;AACnC,kBAAkB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK;AAC1D,oBAAoB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAC;AACpE,yBAAyB,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,aAAa,CAAC,KAAK,EAAC;AAC3E,yBAAyB,MAAM,CAAC,IAAI,CAAC,KAAK,EAAC;AAC3C;AACA,oBAAoB,IAAI,KAAK,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,KAAI;AACxD,mBAAmB,EAAC;AACpB,iBAAiB,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,EAAC;AACzC,eAAe,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;AACzE,gBAAgB,MAAM,CAAC,IAAI,CAAC,IAAI,EAAC;AACjC,eAAe;AACf,aAAa,EAAC;AACd;AACA,YAAY,OAAO,OAAO;AAC1B,gBAAgB,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AACpD,gBAAgB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;AACtC,WAAW,CAAC;AACZ,OAAO;AACP;AACA,MAAM,SAAS,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE;AAC7D,QAAQ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAI;AAChC,QAAQ,IAAI,WAAU;AACtB,QAAQ,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;AAC9E,UAAU,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAI;AAC/C,SAAS;AACT,QAAQ,MAAM,IAAI,GAAG,UAAU;AAC/B,YAAY,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;AAClD,YAAY,OAAO,CAAC,KAAI;AACxB;AACA,QAAQ,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AACxE,WAAW,IAAI,CAAC,KAAK,IAAI;AACzB,YAAY,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,CAAC,KAAK,EAAC;AACtD;AACA,YAAY,OAAO,OAAO,CAAC,GAAG;AAC9B,cAAc,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI;AAChC,gBAAgB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;AAC7C,oBAAoB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC;AAClD,oBAAoB,IAAI;AACxB,eAAe,CAAC;AAChB,aAAa;AACb,WAAW,CAAC;AACZ,WAAW,IAAI,CAAC,QAAQ,IAAI;AAC5B;AACA,YAAY,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI;AACrC,cAAc,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;AACnC,gBAAgB,IAAI,EAAE,YAAY;AAClC,gBAAgB,MAAM,EAAE,gBAAgB;AACxC,gBAAgB,IAAI;AACpB,gBAAgB,MAAM,EAAE,UAAU;AAClC,eAAe,EAAC;AAChB,aAAa,EAAC;AACd;AACA,YAAY,OAAO,OAAO,CAAC,GAAG;AAC9B,cAAc,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI;AACnC,gBAAgB,OAAO,iBAAiB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC;AAC5E,eAAe,CAAC;AAChB,aAAa;AACb,WAAW,CAAC;AACZ,WAAW,IAAI,CAAC,MAAM,IAAI;AAC1B;AACA,YAAY,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,UAAU,KAAK;AAClE,cAAc,OAAO,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM;AACpE,aAAa,EAAE,EAAE,EAAC;AAClB,WAAW,CAAC;AACZ,OAAO;AACP;AACA,MAAM,SAAS,iBAAiB,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE;AACzE,QAAQ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAI;AAChC,QAAQ,MAAM,EAAE,KAAK,EAAE,GAAG,KAAI;AAC9B,QAAQ,IAAI,OAAO,CAAC,cAAc,EAAE;AACpC;AACA,UAAU;AACV,YAAY,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC;AACzC,YAAY,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;AAChD,YAAY;AACZ,YAAY,MAAM;AAClB,WAAW;AACX;AACA;AACA,UAAU,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,GAAE;AAChF,UAAU,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,KAAI;AACrD,SAAS;AACT;AACA,QAAQ,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI;AACpE,UAAU,OAAO,IAAI;AACrB,YAAY,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;AACvC,cAAc,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAC;AACnE,cAAc,MAAM;AACpB,aAAa;AACb;AACA;AACA,YAAY,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC;AAC3E,cAAc,MAAM;AACpB;AACA,YAAY,OAAO,cAAc;AACjC,cAAc,MAAM;AACpB,cAAc,OAAO;AACrB,cAAc,QAAQ;AACtB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa,CAAC,IAAI,CAAC,cAAc,IAAI;AACrC,cAAc,MAAM,MAAM,GAAG,cAAc,CAAC,KAAI;AAChD,cAAc,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAC;AAC/E;AACA,cAAc,IAAI,OAAO,CAAC,cAAc,EAAE;AAC1C,gBAAgB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI;AACvD,kBAAkB,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;AAC3E,iBAAiB,EAAC;AAClB,gBAAgB,IAAI,CAAC,SAAS,EAAE;AAChC;AACA,kBAAkB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,GAAE;AAC9E,kBAAkB,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,KAAI;AACxD,iBAAiB;AACjB,eAAe;AACf;AACA;AACA,cAAc,OAAO,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC;AACvE,aAAa,CAAC;AACd,WAAW;AACX,SAAS;AACT,OAAO;AACP,KAAK;AACL,GAAG;AACH,CAAC;AACD;AACA,QAAQ,CAAC,OAAO,GAAG,KAAI;AACvB;IACA,aAAc,GAAG;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dep-2056ae8a.js","sources":["../../../../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/parse.js","../../../../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/walk.js","../../../../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/stringify.js","../../../../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/unit.js","../../../../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/index.js"],"sourcesContent":["var openParentheses = \"(\".charCodeAt(0);\nvar closeParentheses = \")\".charCodeAt(0);\nvar singleQuote = \"'\".charCodeAt(0);\nvar doubleQuote = '\"'.charCodeAt(0);\nvar backslash = \"\\\\\".charCodeAt(0);\nvar slash = \"/\".charCodeAt(0);\nvar comma = \",\".charCodeAt(0);\nvar colon = \":\".charCodeAt(0);\nvar star = \"*\".charCodeAt(0);\nvar uLower = \"u\".charCodeAt(0);\nvar uUpper = \"U\".charCodeAt(0);\nvar plus = \"+\".charCodeAt(0);\nvar isUnicodeRange = /^[a-f0-9?-]+$/i;\n\nmodule.exports = function(input) {\n var tokens = [];\n var value = input;\n\n var next,\n quote,\n prev,\n token,\n escape,\n escapePos,\n whitespacePos,\n parenthesesOpenPos;\n var pos = 0;\n var code = value.charCodeAt(pos);\n var max = value.length;\n var stack = [{ nodes: tokens }];\n var balanced = 0;\n var parent;\n\n var name = \"\";\n var before = \"\";\n var after = \"\";\n\n while (pos < max) {\n // Whitespaces\n if (code <= 32) {\n next = pos;\n do {\n next += 1;\n code = value.charCodeAt(next);\n } while (code <= 32);\n token = value.slice(pos, next);\n\n prev = tokens[tokens.length - 1];\n if (code === closeParentheses && balanced) {\n after = token;\n } else if (prev && prev.type === \"div\") {\n prev.after = token;\n prev.sourceEndIndex += token.length;\n } else if (\n code === comma ||\n code === colon ||\n (code === slash &&\n value.charCodeAt(next + 1) !== star &&\n (!parent ||\n (parent && parent.type === \"function\" && parent.value !== \"calc\")))\n ) {\n before = token;\n } else {\n tokens.push({\n type: \"space\",\n sourceIndex: pos,\n sourceEndIndex: next,\n value: token\n });\n }\n\n pos = next;\n\n // Quotes\n } else if (code === singleQuote || code === doubleQuote) {\n next = pos;\n quote = code === singleQuote ? \"'\" : '\"';\n token = {\n type: \"string\",\n sourceIndex: pos,\n quote: quote\n };\n do {\n escape = false;\n next = value.indexOf(quote, next + 1);\n if (~next) {\n escapePos = next;\n while (value.charCodeAt(escapePos - 1) === backslash) {\n escapePos -= 1;\n escape = !escape;\n }\n } else {\n value += quote;\n next = value.length - 1;\n token.unclosed = true;\n }\n } while (escape);\n token.value = value.slice(pos + 1, next);\n token.sourceEndIndex = token.unclosed ? next : next + 1;\n tokens.push(token);\n pos = next + 1;\n code = value.charCodeAt(pos);\n\n // Comments\n } else if (code === slash && value.charCodeAt(pos + 1) === star) {\n next = value.indexOf(\"*/\", pos);\n\n token = {\n type: \"comment\",\n sourceIndex: pos,\n sourceEndIndex: next + 2\n };\n\n if (next === -1) {\n token.unclosed = true;\n next = value.length;\n token.sourceEndIndex = next;\n }\n\n token.value = value.slice(pos + 2, next);\n tokens.push(token);\n\n pos = next + 2;\n code = value.charCodeAt(pos);\n\n // Operation within calc\n } else if (\n (code === slash || code === star) &&\n parent &&\n parent.type === \"function\" &&\n parent.value === \"calc\"\n ) {\n token = value[pos];\n tokens.push({\n type: \"word\",\n sourceIndex: pos - before.length,\n sourceEndIndex: pos + token.length,\n value: token\n });\n pos += 1;\n code = value.charCodeAt(pos);\n\n // Dividers\n } else if (code === slash || code === comma || code === colon) {\n token = value[pos];\n\n tokens.push({\n type: \"div\",\n sourceIndex: pos - before.length,\n sourceEndIndex: pos + token.length,\n value: token,\n before: before,\n after: \"\"\n });\n before = \"\";\n\n pos += 1;\n code = value.charCodeAt(pos);\n\n // Open parentheses\n } else if (openParentheses === code) {\n // Whitespaces after open parentheses\n next = pos;\n do {\n next += 1;\n code = value.charCodeAt(next);\n } while (code <= 32);\n parenthesesOpenPos = pos;\n token = {\n type: \"function\",\n sourceIndex: pos - name.length,\n value: name,\n before: value.slice(parenthesesOpenPos + 1, next)\n };\n pos = next;\n\n if (name === \"url\" && code !== singleQuote && code !== doubleQuote) {\n next -= 1;\n do {\n escape = false;\n next = value.indexOf(\")\", next + 1);\n if (~next) {\n escapePos = next;\n while (value.charCodeAt(escapePos - 1) === backslash) {\n escapePos -= 1;\n escape = !escape;\n }\n } else {\n value += \")\";\n next = value.length - 1;\n token.unclosed = true;\n }\n } while (escape);\n // Whitespaces before closed\n whitespacePos = next;\n do {\n whitespacePos -= 1;\n code = value.charCodeAt(whitespacePos);\n } while (code <= 32);\n if (parenthesesOpenPos < whitespacePos) {\n if (pos !== whitespacePos + 1) {\n token.nodes = [\n {\n type: \"word\",\n sourceIndex: pos,\n sourceEndIndex: whitespacePos + 1,\n value: value.slice(pos, whitespacePos + 1)\n }\n ];\n } else {\n token.nodes = [];\n }\n if (token.unclosed && whitespacePos + 1 !== next) {\n token.after = \"\";\n token.nodes.push({\n type: \"space\",\n sourceIndex: whitespacePos + 1,\n sourceEndIndex: next,\n value: value.slice(whitespacePos + 1, next)\n });\n } else {\n token.after = value.slice(whitespacePos + 1, next);\n token.sourceEndIndex = next;\n }\n } else {\n token.after = \"\";\n token.nodes = [];\n }\n pos = next + 1;\n token.sourceEndIndex = token.unclosed ? next : pos;\n code = value.charCodeAt(pos);\n tokens.push(token);\n } else {\n balanced += 1;\n token.after = \"\";\n token.sourceEndIndex = pos + 1;\n tokens.push(token);\n stack.push(token);\n tokens = token.nodes = [];\n parent = token;\n }\n name = \"\";\n\n // Close parentheses\n } else if (closeParentheses === code && balanced) {\n pos += 1;\n code = value.charCodeAt(pos);\n\n parent.after = after;\n parent.sourceEndIndex += after.length;\n after = \"\";\n balanced -= 1;\n stack[stack.length - 1].sourceEndIndex = pos;\n stack.pop();\n parent = stack[balanced];\n tokens = parent.nodes;\n\n // Words\n } else {\n next = pos;\n do {\n if (code === backslash) {\n next += 1;\n }\n next += 1;\n code = value.charCodeAt(next);\n } while (\n next < max &&\n !(\n code <= 32 ||\n code === singleQuote ||\n code === doubleQuote ||\n code === comma ||\n code === colon ||\n code === slash ||\n code === openParentheses ||\n (code === star &&\n parent &&\n parent.type === \"function\" &&\n parent.value === \"calc\") ||\n (code === slash &&\n parent.type === \"function\" &&\n parent.value === \"calc\") ||\n (code === closeParentheses && balanced)\n )\n );\n token = value.slice(pos, next);\n\n if (openParentheses === code) {\n name = token;\n } else if (\n (uLower === token.charCodeAt(0) || uUpper === token.charCodeAt(0)) &&\n plus === token.charCodeAt(1) &&\n isUnicodeRange.test(token.slice(2))\n ) {\n tokens.push({\n type: \"unicode-range\",\n sourceIndex: pos,\n sourceEndIndex: next,\n value: token\n });\n } else {\n tokens.push({\n type: \"word\",\n sourceIndex: pos,\n sourceEndIndex: next,\n value: token\n });\n }\n\n pos = next;\n }\n }\n\n for (pos = stack.length - 1; pos; pos -= 1) {\n stack[pos].unclosed = true;\n stack[pos].sourceEndIndex = value.length;\n }\n\n return stack[0].nodes;\n};\n","module.exports = function walk(nodes, cb, bubble) {\n var i, max, node, result;\n\n for (i = 0, max = nodes.length; i < max; i += 1) {\n node = nodes[i];\n if (!bubble) {\n result = cb(node, i, nodes);\n }\n\n if (\n result !== false &&\n node.type === \"function\" &&\n Array.isArray(node.nodes)\n ) {\n walk(node.nodes, cb, bubble);\n }\n\n if (bubble) {\n cb(node, i, nodes);\n }\n }\n};\n","function stringifyNode(node, custom) {\n var type = node.type;\n var value = node.value;\n var buf;\n var customResult;\n\n if (custom && (customResult = custom(node)) !== undefined) {\n return customResult;\n } else if (type === \"word\" || type === \"space\") {\n return value;\n } else if (type === \"string\") {\n buf = node.quote || \"\";\n return buf + value + (node.unclosed ? \"\" : buf);\n } else if (type === \"comment\") {\n return \"/*\" + value + (node.unclosed ? \"\" : \"*/\");\n } else if (type === \"div\") {\n return (node.before || \"\") + value + (node.after || \"\");\n } else if (Array.isArray(node.nodes)) {\n buf = stringify(node.nodes, custom);\n if (type !== \"function\") {\n return buf;\n }\n return (\n value +\n \"(\" +\n (node.before || \"\") +\n buf +\n (node.after || \"\") +\n (node.unclosed ? \"\" : \")\")\n );\n }\n return value;\n}\n\nfunction stringify(nodes, custom) {\n var result, i;\n\n if (Array.isArray(nodes)) {\n result = \"\";\n for (i = nodes.length - 1; ~i; i -= 1) {\n result = stringifyNode(nodes[i], custom) + result;\n }\n return result;\n }\n return stringifyNode(nodes, custom);\n}\n\nmodule.exports = stringify;\n","var minus = \"-\".charCodeAt(0);\nvar plus = \"+\".charCodeAt(0);\nvar dot = \".\".charCodeAt(0);\nvar exp = \"e\".charCodeAt(0);\nvar EXP = \"E\".charCodeAt(0);\n\n// Check if three code points would start a number\n// https://www.w3.org/TR/css-syntax-3/#starts-with-a-number\nfunction likeNumber(value) {\n var code = value.charCodeAt(0);\n var nextCode;\n\n if (code === plus || code === minus) {\n nextCode = value.charCodeAt(1);\n\n if (nextCode >= 48 && nextCode <= 57) {\n return true;\n }\n\n var nextNextCode = value.charCodeAt(2);\n\n if (nextCode === dot && nextNextCode >= 48 && nextNextCode <= 57) {\n return true;\n }\n\n return false;\n }\n\n if (code === dot) {\n nextCode = value.charCodeAt(1);\n\n if (nextCode >= 48 && nextCode <= 57) {\n return true;\n }\n\n return false;\n }\n\n if (code >= 48 && code <= 57) {\n return true;\n }\n\n return false;\n}\n\n// Consume a number\n// https://www.w3.org/TR/css-syntax-3/#consume-number\nmodule.exports = function(value) {\n var pos = 0;\n var length = value.length;\n var code;\n var nextCode;\n var nextNextCode;\n\n if (length === 0 || !likeNumber(value)) {\n return false;\n }\n\n code = value.charCodeAt(pos);\n\n if (code === plus || code === minus) {\n pos++;\n }\n\n while (pos < length) {\n code = value.charCodeAt(pos);\n\n if (code < 48 || code > 57) {\n break;\n }\n\n pos += 1;\n }\n\n code = value.charCodeAt(pos);\n nextCode = value.charCodeAt(pos + 1);\n\n if (code === dot && nextCode >= 48 && nextCode <= 57) {\n pos += 2;\n\n while (pos < length) {\n code = value.charCodeAt(pos);\n\n if (code < 48 || code > 57) {\n break;\n }\n\n pos += 1;\n }\n }\n\n code = value.charCodeAt(pos);\n nextCode = value.charCodeAt(pos + 1);\n nextNextCode = value.charCodeAt(pos + 2);\n\n if (\n (code === exp || code === EXP) &&\n ((nextCode >= 48 && nextCode <= 57) ||\n ((nextCode === plus || nextCode === minus) &&\n nextNextCode >= 48 &&\n nextNextCode <= 57))\n ) {\n pos += nextCode === plus || nextCode === minus ? 3 : 2;\n\n while (pos < length) {\n code = value.charCodeAt(pos);\n\n if (code < 48 || code > 57) {\n break;\n }\n\n pos += 1;\n }\n }\n\n return {\n number: value.slice(0, pos),\n unit: value.slice(pos)\n };\n};\n","var parse = require(\"./parse\");\nvar walk = require(\"./walk\");\nvar stringify = require(\"./stringify\");\n\nfunction ValueParser(value) {\n if (this instanceof ValueParser) {\n this.nodes = parse(value);\n return this;\n }\n return new ValueParser(value);\n}\n\nValueParser.prototype.toString = function() {\n return Array.isArray(this.nodes) ? stringify(this.nodes) : \"\";\n};\n\nValueParser.prototype.walk = function(cb, bubble) {\n walk(this.nodes, cb, bubble);\n return this;\n};\n\nValueParser.unit = require(\"./unit\");\n\nValueParser.walk = walk;\n\nValueParser.stringify = stringify;\n\nmodule.exports = ValueParser;\n"],"names":["plus","parse","walk","stringify","require$$0","require$$1","require$$2","require$$3"],"mappings":"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"}