@redocly/revel-reef 0.126.0 → 0.126.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/server/plugins/mcp/docs-mcp/tools/get-full-spec-document.d.ts +4 -0
- package/dist/server/plugins/mcp/docs-mcp/tools/get-full-spec-document.d.ts.map +1 -0
- package/dist/server/plugins/mcp/docs-mcp/tools/get-full-spec-document.js +1 -0
- package/dist/server/plugins/mcp/docs-mcp/tools/get-full-spec-document.js.map +1 -0
- package/dist/server/plugins/mcp/docs-mcp/tools/index.js +1 -1
- package/dist/server/plugins/mcp/docs-mcp/tools/index.js.map +1 -1
- package/dist/server/providers/database/database-preconnect-service.js +1 -1
- package/dist/server/providers/database/database-preconnect-service.js.map +1 -1
- package/package.json +7 -7
- package/dist/server/plugins/mcp/docs-mcp/tools/get-full-definition.d.ts +0 -4
- package/dist/server/plugins/mcp/docs-mcp/tools/get-full-definition.d.ts.map +0 -1
- package/dist/server/plugins/mcp/docs-mcp/tools/get-full-definition.js +0 -1
- package/dist/server/plugins/mcp/docs-mcp/tools/get-full-definition.js.map +0 -1
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { OpenAPIDefinition } from '@redocly/openapi-docs';
|
|
2
|
+
import type { McpServer } from '@redocly/mcp-typescript-sdk/server/mcp.js';
|
|
3
|
+
export declare function registerGetFullSpecDocTools(server: McpServer, definitions: OpenAPIDefinition[]): void;
|
|
4
|
+
//# sourceMappingURL=get-full-spec-document.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-full-spec-document.d.ts","sourceRoot":"","sources":["../../../../../../../../src/server/plugins/mcp/docs-mcp/tools/get-full-spec-document.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAC;AAoB3E,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,iBAAiB,EAAE,GAC/B,IAAI,CA4CN"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{findDefinitionByName as i}from"../utils.js";import{telemetry as n}from"../../../../telemetry/index.js";const t="get-full-spec-document",c={type:"object",required:["name"],additionalProperties:!1,properties:{name:{type:"string",description:"API name (or part of it)",minLength:1}}};function l(r,s){r.tool(t,"Get the complete OpenAPI spec document for an API",c,async({name:o})=>{try{const e=i(s,o);return e?(n.sendMcpToolCalledMessage({server_type:"docs",tool:t}),{content:[{type:"text",text:JSON.stringify({api:e.info?.title||"",version:e.info?.version||"",definition:e},null,2)}]}):{content:[{type:"text",text:`No APIs found matching "${o}"`}]}}catch(e){throw n.sendMcpErrorMessage({server_type:"docs",tool:t,message:e?.message||"",stack:e?.stack||""}),e}})}export{l as registerGetFullSpecDocTools};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-full-spec-document.js","sourceRoot":"","sources":["../../../../../../../../src/server/plugins/mcp/docs-mcp/tools/get-full-spec-document.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,MAAM,SAAS,GAAG,wBAAwB,CAAC;AAE3C,MAAM,gBAAgB,GAA6B;IACjD,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,CAAC,MAAM,CAAC;IAClB,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,0BAA0B;YACvC,SAAS,EAAE,CAAC;SACb;KACF;CACF,CAAC;AAEF,MAAM,UAAU,2BAA2B,CACzC,MAAiB,EACjB,WAAgC;IAEhC,MAAM,CAAC,IAAI,CACT,SAAS,EACT,mDAAmD,EACnD,gBAAgB,EAChB,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QACjB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,oBAAoB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAEpD,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,2BAA2B,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC;YAC5F,CAAC;YAED,SAAS,CAAC,wBAAwB,CAAC;gBACjC,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,SAAS;aAChB,CAAC,CAAC;YACH,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;4BACE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;4BAC1B,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE;4BAChC,UAAU,EAAE,GAAG;yBAChB,EACD,IAAI,EACJ,CAAC,CACF;qBACF;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,CAAC,mBAAmB,CAAC;gBAC5B,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,EAAE;gBAC7B,KAAK,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;aAC1B,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{registerListApisTools as
|
|
1
|
+
import{registerListApisTools as l}from"./list-apis.js";import{registerGetEndpointsTools as i}from"./get-endpoints.js";import{registerGetEndpointTools as e}from"./get-endpoint-info.js";import{registerGetSecuritySchemesTools as g}from"./get-security-schemes.js";import{registerGetFullSpecDocTools as s}from"./get-full-spec-document.js";import{registerSearchTool as T}from"./search.js";import{registerWhoAmITool as c}from"./whoami.js";function E({server:o,definitions:t,baseUrl:m,outdir:p,headers:r}){c(o,r),l(o,t),i(o,t),e(o,t),g(o,t),s(o,t),T(o,m,p,r)}export{E as registerDocsTools};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../src/server/plugins/mcp/docs-mcp/tools/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../src/server/plugins/mcp/docs-mcp/tools/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,MAAM,EACN,WAAW,EACX,OAAO,EACP,MAAM,EACN,OAAO,GAOR;IACC,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,qBAAqB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC3C,yBAAyB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC/C,wBAAwB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC9C,+BAA+B,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACrD,2BAA2B,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACjD,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AACvD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{logger as
|
|
1
|
+
import{logger as e}from"../../utils/index.js";import{DatabaseConnectionsManager as n}from"./database-connections-manager.js";import{CATALOG_DATABASE_MIGRATIONS_FOLDER as o,CATALOG_REMOTE_DATABASE_FOLDER as r,CATALOG_REMOTE_DATABASE_NAME as E}from"../../plugins/catalog-entities/database/consts.js";import{RemoteDatabaseInitializationStrategy as A}from"./database-initialization-strategy.js";class a{static isInitialized=!1;static async init(s){if(!(process.env.REDOCLY_LOCAL_DEV==="true"||process.env.CI==="true")&&!a.isInitialized)try{await a.preconnectCatalogEntitiesDatabase(s)==="PRECONNECTED"&&(a.isInitialized=!0)}catch(t){e.error("Failed to preconnect to databases",t)}}static async preconnectCatalogEntitiesDatabase(s){const i=process.env.SQLD_REMOTE_DATABASE_URL,t=process.env.SQLD_REMOTE_DATABASE_AUTH_TOKEN;return!i||!t?(e.warn("SQLD_REMOTE_DATABASE_URL or SQLD_REMOTE_DATABASE_AUTH_TOKEN is not set yet"),"NOT_PRECONNECTED"):await n.getConnection({config:{baseDbDir:s,syncUrl:i,authToken:t,databaseName:E,additionalFolder:r,migrationsFolder:o},strategy:new A({skipLogs:!1})})?(e.info("Catalog entities database preconnected"),"PRECONNECTED"):(e.warn("Catalog entities database preconnect failed"),"NOT_PRECONNECTED")}}export{a as DatabasePreconnectService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database-preconnect-service.js","sourceRoot":"","sources":["../../../../../../src/server/providers/database/database-preconnect-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEjD,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EACL,kCAAkC,EAClC,8BAA8B,EAC9B,4BAA4B,GAC7B,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAE7F,MAAM,OAAO,yBAAyB;IAC5B,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC;IAErC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAiB;QACjC,MAAM,kBAAkB,GACtB,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,MAAM,CAAC;QAExE,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QAED,IAAI,yBAAyB,CAAC,aAAa,EAAE,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC,iCAAiC,CAAC,SAAS,CAAC,CAAC;YAC5F,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;gBAC9B,yBAAyB,CAAC,aAAa,GAAG,IAAI,CAAC;YACjD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,iCAAiC,CACpD,SAAiB;QAEjB,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;QAC5D,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC;QAEzE,IAAI,CAAC,cAAc,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC7C,
|
|
1
|
+
{"version":3,"file":"database-preconnect-service.js","sourceRoot":"","sources":["../../../../../../src/server/providers/database/database-preconnect-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEjD,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EACL,kCAAkC,EAClC,8BAA8B,EAC9B,4BAA4B,GAC7B,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAE7F,MAAM,OAAO,yBAAyB;IAC5B,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC;IAErC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAiB;QACjC,MAAM,kBAAkB,GACtB,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,MAAM,CAAC;QAExE,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QAED,IAAI,yBAAyB,CAAC,aAAa,EAAE,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC,iCAAiC,CAAC,SAAS,CAAC,CAAC;YAC5F,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;gBAC9B,yBAAyB,CAAC,aAAa,GAAG,IAAI,CAAC;YACjD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,iCAAiC,CACpD,SAAiB;QAEjB,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;QAC5D,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC;QAEzE,IAAI,CAAC,cAAc,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;YAE1F,OAAO,kBAAkB,CAAC;QAC5B,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,0BAA0B,CAAC,aAAa,CAAC;YAC5D,MAAM,EAAE;gBACN,SAAS;gBACT,OAAO,EAAE,cAAc;gBACvB,SAAS,EAAE,oBAAoB;gBAC/B,YAAY,EAAE,4BAA4B;gBAC1C,gBAAgB,EAAE,8BAA8B;gBAChD,gBAAgB,EAAE,kCAAkC;aACrD;YACD,QAAQ,EAAE,IAAI,oCAAoC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;SACxE,CAAC,CAAC;QACH,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;YACtD,OAAO,cAAc,CAAC;QACxB,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QAC3D,OAAO,kBAAkB,CAAC;IAC5B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@redocly/revel-reef",
|
|
3
|
-
"version": "0.126.
|
|
3
|
+
"version": "0.126.1",
|
|
4
4
|
"description": "",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -93,14 +93,14 @@
|
|
|
93
93
|
"xml-crypto": "6.0.1",
|
|
94
94
|
"xpath": "0.0.34",
|
|
95
95
|
"yaml-ast-parser": "0.0.43",
|
|
96
|
-
"@redocly/
|
|
96
|
+
"@redocly/asyncapi-docs": "1.3.1",
|
|
97
97
|
"@redocly/graphql-docs": "1.3.0",
|
|
98
|
-
"@redocly/openapi-docs": "3.14.
|
|
98
|
+
"@redocly/openapi-docs": "3.14.1",
|
|
99
99
|
"@redocly/portal-legacy-ui": "0.9.0",
|
|
100
|
-
"@redocly/
|
|
101
|
-
"@redocly/
|
|
102
|
-
"@redocly/
|
|
103
|
-
"@redocly/
|
|
100
|
+
"@redocly/config": "0.35.1",
|
|
101
|
+
"@redocly/portal-plugin-mock-server": "0.11.1",
|
|
102
|
+
"@redocly/realm-asyncapi-sdk": "0.4.1",
|
|
103
|
+
"@redocly/theme": "0.58.1"
|
|
104
104
|
},
|
|
105
105
|
"peerDependencies": {
|
|
106
106
|
"react": "^19.1.0",
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { OpenAPIDefinition } from '@redocly/openapi-docs';
|
|
2
|
-
import type { McpServer } from '@redocly/mcp-typescript-sdk/server/mcp.js';
|
|
3
|
-
export declare function registerGetFullDefinitionTools(server: McpServer, definitions: OpenAPIDefinition[]): void;
|
|
4
|
-
//# sourceMappingURL=get-full-definition.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-full-definition.d.ts","sourceRoot":"","sources":["../../../../../../../../src/server/plugins/mcp/docs-mcp/tools/get-full-definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAC;AAoB3E,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,iBAAiB,EAAE,GAC/B,IAAI,CA4CN"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{findDefinitionByName as s}from"../utils.js";import{telemetry as n}from"../../../../telemetry/index.js";const t="get-full-definition",a={type:"object",required:["name"],additionalProperties:!1,properties:{name:{type:"string",description:"API name (or part of it)",minLength:1}}};function p(i,r){i.tool(t,"Get the complete OpenAPI definition for an API",a,async({name:o})=>{try{const e=s(r,o);return e?(n.sendMcpToolCalledMessage({server_type:"docs",tool:t}),{content:[{type:"text",text:JSON.stringify({api:e.info?.title||"",version:e.info?.version||"",definition:e},null,2)}]}):{content:[{type:"text",text:`No APIs found matching "${o}"`}]}}catch(e){throw n.sendMcpErrorMessage({server_type:"docs",tool:t,message:e?.message||"",stack:e?.stack||""}),e}})}export{p as registerGetFullDefinitionTools};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-full-definition.js","sourceRoot":"","sources":["../../../../../../../../src/server/plugins/mcp/docs-mcp/tools/get-full-definition.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,MAAM,SAAS,GAAG,qBAAqB,CAAC;AAExC,MAAM,gBAAgB,GAA6B;IACjD,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,CAAC,MAAM,CAAC;IAClB,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,0BAA0B;YACvC,SAAS,EAAE,CAAC;SACb;KACF;CACF,CAAC;AAEF,MAAM,UAAU,8BAA8B,CAC5C,MAAiB,EACjB,WAAgC;IAEhC,MAAM,CAAC,IAAI,CACT,SAAS,EACT,gDAAgD,EAChD,gBAAgB,EAChB,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QACjB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,oBAAoB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAEpD,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,2BAA2B,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC;YAC5F,CAAC;YAED,SAAS,CAAC,wBAAwB,CAAC;gBACjC,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,SAAS;aAChB,CAAC,CAAC;YACH,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;4BACE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;4BAC1B,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE;4BAChC,UAAU,EAAE,GAAG;yBAChB,EACD,IAAI,EACJ,CAAC,CACF;qBACF;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,CAAC,mBAAmB,CAAC;gBAC5B,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,EAAE;gBAC7B,KAAK,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;aAC1B,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
|