@powerlines/plugin-capnp 0.1.49 → 0.1.50

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.
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1 @@
1
+ export { };
package/dist/index.cjs CHANGED
@@ -1,7 +1 @@
1
- 'use strict';Object.defineProperty(exports,'__esModule',{value:true});var types$1=require('@storm-software/config-tools/types'),compile=require('@stryke/capnp/compile'),helpers=require('@stryke/capnp/helpers'),filePathFns=require('@stryke/path/file-path-fns'),isParentPath=require('@stryke/path/is-parent-path'),joinPaths=require('@stryke/path/join-paths'),replace=require('@stryke/path/replace'),m=require('defu'),paths=require('powerlines/plugin-utils/paths'),types=require('./types');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var m__default=/*#__PURE__*/_interopDefault(m);/*****************************************
2
- *
3
- * ⚡ Built by Storm Software
4
- *
5
- *****************************************/
6
-
7
- var s=Object.defineProperty;var e=(n,o)=>s(n,"name",{value:o,configurable:true});const P=e((n={})=>({name:"capnp",config(){return {capnp:m__default.default(n,{ts:true,js:false,dts:false,tty:true,tsconfig:this.tsconfig,schema:joinPaths.joinPaths(this.workspaceConfig.workspaceRoot,this.config.projectRoot,"*.capnp"),outputPath:joinPaths.joinPaths("{builtinPath}","capnp")})}},configResolved(){this.config.capnp.outputPath=paths.replacePathTokens(this,this.config.capnp.outputPath);},async prepare(){const o=await helpers.resolveOptions({...this.config.capnp,schemas:this.config.capnp.schema.toString(),projectRoot:this.config.projectRoot,workspaceRoot:this.workspaceConfig.workspaceRoot});if(!o?.schemas?.length){this.log(types$1.LogLevelLabel.WARN,"No Cap'n Proto schemas found to compile.");return}const a=await compile.capnpc(o);isParentPath.isParentPath(this.config.capnp.outputPath,this.builtinsPath)?await Promise.all(Object.entries(a.files).map(async([i,p])=>this.emitBuiltin(p,filePathFns.findFileName(joinPaths.joinPaths(replace.replacePath(this.config.capnp.outputPath,this.builtinsPath),i),{withExtension:false}),joinPaths.joinPaths(this.config.capnp.outputPath,i)))):await Promise.all(Object.entries(a.files).map(async([i,p])=>this.fs.write(joinPaths.joinPaths(this.config.capnp.outputPath,i),p)));}}),"plugin");var E=P;exports.default=E;exports.plugin=P;Object.keys(types).forEach(function(k){if(k!=='default'&&!Object.prototype.hasOwnProperty.call(exports,k))Object.defineProperty(exports,k,{enumerable:true,get:function(){return types[k]}})});
1
+ Object.defineProperty(exports,`__esModule`,{value:!0});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));require(`./plugin-DHXHjv16.cjs`),require(`./types-DHkg7xmX.cjs`);let c=require(`@storm-software/config-tools/types`),l=require(`@stryke/capnp/compile`),u=require(`@stryke/capnp/helpers`),d=require(`@stryke/path/file-path-fns`),f=require(`@stryke/path/is-parent-path`),p=require(`@stryke/path/join-paths`),m=require(`@stryke/path/replace`),h=require(`defu`);h=s(h);function g(e,t){return t&&t.replaceAll(`{workspaceRoot}`,e.workspaceConfig.workspaceRoot).replaceAll(`{root}`,e.config.projectRoot).replaceAll(`{projectRoot}`,e.config.projectRoot).replaceAll(`{sourceRoot}`,e.config.sourceRoot).replaceAll(`{powerlinesPath}`,e.powerlinesPath).replaceAll(`{cachePath}`,e.cachePath).replaceAll(`{dataPath}`,e.dataPath).replaceAll(`{logPath}`,e.envPaths.log).replaceAll(`{tempPath}`,e.envPaths.temp).replaceAll(`{configPath}`,e.envPaths.config).replaceAll(`{outputPath}`,e.config.output.outputPath).replaceAll(`{buildPath}`,e.config.output.buildPath).replaceAll(`{artifactsPath}`,(0,m.replacePath)(e.artifactsPath,e.workspaceConfig.workspaceRoot)).replaceAll(`{builtinPath}`,(0,m.replacePath)(e.builtinsPath,e.workspaceConfig.workspaceRoot)).replaceAll(`{entryPath}`,(0,m.replacePath)(e.entryPath,e.workspaceConfig.workspaceRoot))}const _=(e={})=>({name:`capnp`,config(){return{capnp:(0,h.default)(e,{ts:!0,js:!1,dts:!1,tty:!0,tsconfig:this.tsconfig,schema:(0,p.joinPaths)(this.workspaceConfig.workspaceRoot,this.config.projectRoot,`*.capnp`),outputPath:(0,p.joinPaths)(`{builtinPath}`,`capnp`)})}},configResolved(){this.config.capnp.outputPath=g(this,this.config.capnp.outputPath)},async prepare(){let e=await(0,u.resolveOptions)({...this.config.capnp,schemas:this.config.capnp.schema.toString(),projectRoot:this.config.projectRoot,workspaceRoot:this.workspaceConfig.workspaceRoot});if(!e?.schemas?.length){this.log(c.LogLevelLabel.WARN,`No Cap'n Proto schemas found to compile.`);return}let t=await(0,l.capnpc)(e);(0,f.isParentPath)(this.config.capnp.outputPath,this.builtinsPath)?await Promise.all(Object.entries(t.files).map(async([e,t])=>this.emitBuiltin(t,(0,d.findFileName)((0,p.joinPaths)((0,m.replacePath)(this.config.capnp.outputPath,this.builtinsPath),e),{withExtension:!1}),(0,p.joinPaths)(this.config.capnp.outputPath,e)))):await Promise.all(Object.entries(t.files).map(async([e,t])=>this.fs.write((0,p.joinPaths)(this.config.capnp.outputPath,e),t)))}});var v=_;exports.default=v,exports.plugin=_;
package/dist/index.d.cts CHANGED
@@ -1,27 +1,7 @@
1
- import { C as CapnpPluginContext, a as CapnpPluginOptions, P as Plugin } from './index-Dxx8KoZq.cjs';
2
- export { c as CapnpPluginResolvedConfig, b as CapnpPluginUserConfig, f as __ΩCapnpPluginContext, _ as __ΩCapnpPluginOptions, e as __ΩCapnpPluginResolvedConfig, d as __ΩCapnpPluginUserConfig } from './index-Dxx8KoZq.cjs';
3
- import '@stryke/capnp/types';
4
- import '@storm-software/build-tools/types';
5
- import '@storm-software/config-tools/types';
6
- import '@storm-software/config/types';
7
- import '@stryke/types/base';
8
- import '@stryke/types/configuration';
9
- import '@stryke/types/file';
10
- import 'vite';
11
- import '@stryke/env/get-env-paths';
12
- import '@stryke/http/fetch';
13
- import '@stryke/types/package-json';
14
- import 'jiti';
15
- import 'magic-string';
16
- import 'oxc-parser';
17
- import 'semver';
18
- import 'ts-morph';
19
- import 'undici';
20
- import 'unplugin';
21
- import '@stryke/fs/resolve';
22
- import '@stryke/types/tsconfig';
23
- import 'typescript';
24
- import '@stryke/types/array';
1
+ import { a as __ΩCapnpPluginContext, c as __ΩCapnpPluginUserConfig, i as CapnpPluginUserConfig, l as Plugin, n as CapnpPluginOptions, o as __ΩCapnpPluginOptions, r as CapnpPluginResolvedConfig, s as __ΩCapnpPluginResolvedConfig, t as CapnpPluginContext } from "./plugin-C5Wbyo9a.cjs";
2
+ import "./index-CEgs-Dz2.cjs";
3
+
4
+ //#region src/index.d.ts
25
5
 
26
6
  /**
27
7
  * A Powerlines plugin to integrate Cap'n Proto for code generation.
@@ -30,5 +10,6 @@ import '@stryke/types/array';
30
10
  * @returns A Powerlines plugin instance.
31
11
  */
32
12
  declare const plugin: <TContext extends CapnpPluginContext = CapnpPluginContext>(options?: CapnpPluginOptions) => Plugin<TContext>;
33
-
34
- export { CapnpPluginContext, CapnpPluginOptions, plugin as default, plugin };
13
+ //#endregion
14
+ export { CapnpPluginContext, CapnpPluginOptions, CapnpPluginResolvedConfig, CapnpPluginUserConfig, __ΩCapnpPluginContext, __ΩCapnpPluginOptions, __ΩCapnpPluginResolvedConfig, __ΩCapnpPluginUserConfig, plugin as default, plugin };
15
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/index.ts"],"sourcesContent":[],"mappings":";;;;;;AA0CA;;;;;AAIG,cAJU,MAIV,EAAA,CAAA,iBAHgB,kBAGhB,GAHqC,kBAGrC,CAAA,CAAA,OAAA,CAAA,EADQ,kBACR,EAAA,GAAA,MAAA,CAAO,QAAP,CAAA"}
@@ -0,0 +1,15 @@
1
+ import { a as __ΩCapnpPluginContext, c as __ΩCapnpPluginUserConfig, i as CapnpPluginUserConfig, l as Plugin, n as CapnpPluginOptions, o as __ΩCapnpPluginOptions, r as CapnpPluginResolvedConfig, s as __ΩCapnpPluginResolvedConfig, t as CapnpPluginContext } from "./plugin-BmaFdKVE.mjs";
2
+ import "./index-BgAdqTbb.mjs";
3
+
4
+ //#region src/index.d.ts
5
+
6
+ /**
7
+ * A Powerlines plugin to integrate Cap'n Proto for code generation.
8
+ *
9
+ * @param options - The plugin options.
10
+ * @returns A Powerlines plugin instance.
11
+ */
12
+ declare const plugin: <TContext extends CapnpPluginContext = CapnpPluginContext>(options?: CapnpPluginOptions) => Plugin<TContext>;
13
+ //#endregion
14
+ export { CapnpPluginContext, CapnpPluginOptions, CapnpPluginResolvedConfig, CapnpPluginUserConfig, __ΩCapnpPluginContext, __ΩCapnpPluginOptions, __ΩCapnpPluginResolvedConfig, __ΩCapnpPluginUserConfig, plugin as default, plugin };
15
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/index.ts"],"sourcesContent":[],"mappings":";;;;;;AA0CA;;;;;AAIG,cAJU,MAIV,EAAA,CAAA,iBAHgB,kBAGhB,GAHqC,kBAGrC,CAAA,CAAA,OAAA,CAAA,EADQ,kBACR,EAAA,GAAA,MAAA,CAAO,QAAP,CAAA"}
package/dist/index.mjs ADDED
@@ -0,0 +1,2 @@
1
+ import"./plugin-Bvn-he2n.mjs";import"./types-B7VYa_Pp.mjs";import{LogLevelLabel as e}from"@storm-software/config-tools/types";import{capnpc as t}from"@stryke/capnp/compile";import{resolveOptions as n}from"@stryke/capnp/helpers";import{findFileName as r}from"@stryke/path/file-path-fns";import{isParentPath as i}from"@stryke/path/is-parent-path";import{joinPaths as a}from"@stryke/path/join-paths";import{replacePath as o}from"@stryke/path/replace";import s from"defu";function c(e,t){return t&&t.replaceAll(`{workspaceRoot}`,e.workspaceConfig.workspaceRoot).replaceAll(`{root}`,e.config.projectRoot).replaceAll(`{projectRoot}`,e.config.projectRoot).replaceAll(`{sourceRoot}`,e.config.sourceRoot).replaceAll(`{powerlinesPath}`,e.powerlinesPath).replaceAll(`{cachePath}`,e.cachePath).replaceAll(`{dataPath}`,e.dataPath).replaceAll(`{logPath}`,e.envPaths.log).replaceAll(`{tempPath}`,e.envPaths.temp).replaceAll(`{configPath}`,e.envPaths.config).replaceAll(`{outputPath}`,e.config.output.outputPath).replaceAll(`{buildPath}`,e.config.output.buildPath).replaceAll(`{artifactsPath}`,o(e.artifactsPath,e.workspaceConfig.workspaceRoot)).replaceAll(`{builtinPath}`,o(e.builtinsPath,e.workspaceConfig.workspaceRoot)).replaceAll(`{entryPath}`,o(e.entryPath,e.workspaceConfig.workspaceRoot))}const l=(l={})=>({name:`capnp`,config(){return{capnp:s(l,{ts:!0,js:!1,dts:!1,tty:!0,tsconfig:this.tsconfig,schema:a(this.workspaceConfig.workspaceRoot,this.config.projectRoot,`*.capnp`),outputPath:a(`{builtinPath}`,`capnp`)})}},configResolved(){this.config.capnp.outputPath=c(this,this.config.capnp.outputPath)},async prepare(){let s=await n({...this.config.capnp,schemas:this.config.capnp.schema.toString(),projectRoot:this.config.projectRoot,workspaceRoot:this.workspaceConfig.workspaceRoot});if(!s?.schemas?.length){this.log(e.WARN,`No Cap'n Proto schemas found to compile.`);return}let c=await t(s);i(this.config.capnp.outputPath,this.builtinsPath)?await Promise.all(Object.entries(c.files).map(async([e,t])=>this.emitBuiltin(t,r(a(o(this.config.capnp.outputPath,this.builtinsPath),e),{withExtension:!1}),a(this.config.capnp.outputPath,e)))):await Promise.all(Object.entries(c.files).map(async([e,t])=>this.fs.write(a(this.config.capnp.outputPath,e),t)))}});var u=l;export{u as default,l as plugin};
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../powerlines/src/plugin-utils/paths.ts","../src/index.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { replacePath } from \"@stryke/path/replace\";\nimport { IsUndefined } from \"@stryke/types/base\";\nimport { UnresolvedContext } from \"../types/context\";\n\n/**\n * Replaces tokens in the given path string with their corresponding values from the context.\n *\n * @remarks\n * The following tokens are supported:\n * - `{workspaceRoot}` - The root directory of the workspace.\n * - `{root}` - The root directory of the project (same as `{projectRoot}`).\n * - `{projectRoot}` - The root directory of the project (same as `{root}`).\n * - `{sourceRoot}` - The source root directory of the project (usually `./src`).\n * - `{powerlinesPath}` - The directory where Powerlines is installed.\n * - `{cachePath}` - The environment's directory for cached files.\n * - `{dataPath}` - The environment's directory for data files.\n * - `{logPath}` - The environment's directory for log files.\n * - `{tempPath}` - The environment's directory for temporary files.\n * - `{configPath}` - The environment's directory for configuration files.\n * - `{outputPath}` - The configured output directory for the project.\n * - `{buildPath}` - The configured distribution directory for the project.\n * - `{artifactsPath}` - The configured directory for build artifacts.\n * - `{builtinPath}` - The configured directory for generated built-in plugins.\n * - `{entryPath}` - The configured directory for generated entry files.\n *\n * @param context - The context containing the values for the path tokens.\n * @param path - The path string with tokens to replace.\n * @returns The path string with tokens replaced by their corresponding values from the context.\n */\nexport function replacePathTokens(\n context: UnresolvedContext,\n path?: string\n): IsUndefined<typeof path> extends true ? undefined : string {\n if (!path) {\n return path as IsUndefined<typeof path> extends true ? undefined : string;\n }\n\n return path\n .replaceAll(\"{workspaceRoot}\", context.workspaceConfig.workspaceRoot)\n .replaceAll(\"{root}\", context.config.projectRoot)\n .replaceAll(\"{projectRoot}\", context.config.projectRoot)\n .replaceAll(\"{sourceRoot}\", context.config.sourceRoot)\n .replaceAll(\"{powerlinesPath}\", context.powerlinesPath)\n .replaceAll(\"{cachePath}\", context.cachePath)\n .replaceAll(\"{dataPath}\", context.dataPath)\n .replaceAll(\"{logPath}\", context.envPaths.log)\n .replaceAll(\"{tempPath}\", context.envPaths.temp)\n .replaceAll(\"{configPath}\", context.envPaths.config)\n .replaceAll(\"{outputPath}\", context.config.output.outputPath)\n .replaceAll(\"{buildPath}\", context.config.output.buildPath)\n .replaceAll(\n \"{artifactsPath}\",\n replacePath(context.artifactsPath, context.workspaceConfig.workspaceRoot)\n )\n .replaceAll(\n \"{builtinPath}\",\n replacePath(context.builtinsPath, context.workspaceConfig.workspaceRoot)\n )\n .replaceAll(\n \"{entryPath}\",\n replacePath(context.entryPath, context.workspaceConfig.workspaceRoot)\n );\n}\n","/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { LogLevelLabel } from \"@storm-software/config-tools/types\";\nimport { capnpc } from \"@stryke/capnp/compile\";\nimport { resolveOptions } from \"@stryke/capnp/helpers\";\nimport { findFileName } from \"@stryke/path/file-path-fns\";\nimport { isParentPath } from \"@stryke/path/is-parent-path\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { replacePath } from \"@stryke/path/replace\";\nimport defu from \"defu\";\nimport { replacePathTokens } from \"powerlines/plugin-utils/paths\";\nimport { Plugin } from \"powerlines/types/plugin\";\nimport {\n CapnpPluginContext,\n CapnpPluginOptions,\n CapnpPluginUserConfig\n} from \"./types/plugin\";\n\nexport * from \"./types\";\n\n/**\n * A Powerlines plugin to integrate Cap'n Proto for code generation.\n *\n * @param options - The plugin options.\n * @returns A Powerlines plugin instance.\n */\nexport const plugin = <\n TContext extends CapnpPluginContext = CapnpPluginContext\n>(\n options: CapnpPluginOptions = {}\n): Plugin<TContext> => {\n return {\n name: \"capnp\",\n config() {\n return {\n capnp: defu(options, {\n ts: true,\n js: false,\n dts: false,\n tty: true,\n tsconfig: this.tsconfig,\n schema: joinPaths(\n this.workspaceConfig.workspaceRoot,\n this.config.projectRoot,\n \"*.capnp\"\n ),\n outputPath: joinPaths(\"{builtinPath}\", \"capnp\")\n })\n } as Partial<CapnpPluginUserConfig>;\n },\n configResolved() {\n this.config.capnp.outputPath = replacePathTokens(\n this,\n this.config.capnp.outputPath\n );\n },\n async prepare() {\n const resolvedOptions = await resolveOptions({\n ...this.config.capnp,\n schemas: this.config.capnp.schema.toString(),\n projectRoot: this.config.projectRoot,\n workspaceRoot: this.workspaceConfig.workspaceRoot\n });\n if (!resolvedOptions?.schemas?.length) {\n this.log(\n LogLevelLabel.WARN,\n \"No Cap'n Proto schemas found to compile.\"\n );\n\n return;\n }\n\n const result = await capnpc(resolvedOptions);\n\n if (isParentPath(this.config.capnp.outputPath, this.builtinsPath)) {\n await Promise.all(\n Object.entries(result.files).map(async ([filePath, content]) =>\n this.emitBuiltin(\n content,\n findFileName(\n joinPaths(\n replacePath(this.config.capnp.outputPath, this.builtinsPath),\n filePath\n ),\n { withExtension: false }\n ),\n joinPaths(this.config.capnp.outputPath, filePath)\n )\n )\n );\n } else {\n await Promise.all(\n Object.entries(result.files).map(async ([filePath, content]) =>\n this.fs.write(\n joinPaths(this.config.capnp.outputPath, filePath),\n content\n )\n )\n );\n }\n }\n };\n};\n\nexport default plugin;\n"],"mappings":"odA+CA,SAAgB,EACd,EACA,EAC4D,CAK5D,OAJK,GAIE,EACJ,WAAW,kBAAmB,EAAQ,gBAAgB,cAAc,CACpE,WAAW,SAAU,EAAQ,OAAO,YAAY,CAChD,WAAW,gBAAiB,EAAQ,OAAO,YAAY,CACvD,WAAW,eAAgB,EAAQ,OAAO,WAAW,CACrD,WAAW,mBAAoB,EAAQ,eAAe,CACtD,WAAW,cAAe,EAAQ,UAAU,CAC5C,WAAW,aAAc,EAAQ,SAAS,CAC1C,WAAW,YAAa,EAAQ,SAAS,IAAI,CAC7C,WAAW,aAAc,EAAQ,SAAS,KAAK,CAC/C,WAAW,eAAgB,EAAQ,SAAS,OAAO,CACnD,WAAW,eAAgB,EAAQ,OAAO,OAAO,WAAW,CAC5D,WAAW,cAAe,EAAQ,OAAO,OAAO,UAAU,CAC1D,WACC,kBACA,EAAY,EAAQ,cAAe,EAAQ,gBAAgB,cAAc,CAC1E,CACA,WACC,gBACA,EAAY,EAAQ,aAAc,EAAQ,gBAAgB,cAAc,CACzE,CACA,WACC,cACA,EAAY,EAAQ,UAAW,EAAQ,gBAAgB,cAAc,CACtE,CCrCL,MAAa,GAGX,EAA8B,EAAE,IAEzB,CACL,KAAM,QACN,QAAS,CACP,MAAO,CACL,MAAO,EAAK,EAAS,CACnB,GAAI,GACJ,GAAI,GACJ,IAAK,GACL,IAAK,GACL,SAAU,KAAK,SACf,OAAQ,EACN,KAAK,gBAAgB,cACrB,KAAK,OAAO,YACZ,UACD,CACD,WAAY,EAAU,gBAAiB,QAAQ,CAChD,CAAC,CACH,EAEH,gBAAiB,CACf,KAAK,OAAO,MAAM,WAAa,EAC7B,KACA,KAAK,OAAO,MAAM,WACnB,EAEH,MAAM,SAAU,CACd,IAAM,EAAkB,MAAM,EAAe,CAC3C,GAAG,KAAK,OAAO,MACf,QAAS,KAAK,OAAO,MAAM,OAAO,UAAU,CAC5C,YAAa,KAAK,OAAO,YACzB,cAAe,KAAK,gBAAgB,cACrC,CAAC,CACF,GAAI,CAAC,GAAiB,SAAS,OAAQ,CACrC,KAAK,IACH,EAAc,KACd,2CACD,CAED,OAGF,IAAM,EAAS,MAAM,EAAO,EAAgB,CAExC,EAAa,KAAK,OAAO,MAAM,WAAY,KAAK,aAAa,CAC/D,MAAM,QAAQ,IACZ,OAAO,QAAQ,EAAO,MAAM,CAAC,IAAI,MAAO,CAAC,EAAU,KACjD,KAAK,YACH,EACA,EACE,EACE,EAAY,KAAK,OAAO,MAAM,WAAY,KAAK,aAAa,CAC5D,EACD,CACD,CAAE,cAAe,GAAO,CACzB,CACD,EAAU,KAAK,OAAO,MAAM,WAAY,EAAS,CAClD,CACF,CACF,CAED,MAAM,QAAQ,IACZ,OAAO,QAAQ,EAAO,MAAM,CAAC,IAAI,MAAO,CAAC,EAAU,KACjD,KAAK,GAAG,MACN,EAAU,KAAK,OAAO,MAAM,WAAY,EAAS,CACjD,EACD,CACF,CACF,EAGN,EAGH,IAAA,EAAe"}