@agent-deck/backend 1.1.4 → 1.1.6

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.
Files changed (88) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/config/oauth-redirect.d.ts +18 -0
  3. package/dist/config/oauth-redirect.d.ts.map +1 -0
  4. package/dist/config/oauth-redirect.js +57 -0
  5. package/dist/config/oauth-redirect.js.map +1 -0
  6. package/dist/config/shared-oauth-apps.d.ts +18 -0
  7. package/dist/config/shared-oauth-apps.d.ts.map +1 -0
  8. package/dist/config/shared-oauth-apps.js +35 -0
  9. package/dist/config/shared-oauth-apps.js.map +1 -0
  10. package/dist/data/default-mcp-services.d.ts +14 -0
  11. package/dist/data/default-mcp-services.d.ts.map +1 -0
  12. package/dist/data/default-mcp-services.js +52 -0
  13. package/dist/data/default-mcp-services.js.map +1 -0
  14. package/dist/data/oauth-provider-guides.d.ts +35 -0
  15. package/dist/data/oauth-provider-guides.d.ts.map +1 -0
  16. package/dist/data/oauth-provider-guides.js +298 -0
  17. package/dist/data/oauth-provider-guides.js.map +1 -0
  18. package/dist/data/seed-default-services.d.ts +3 -0
  19. package/dist/data/seed-default-services.d.ts.map +1 -0
  20. package/dist/data/seed-default-services.js +14 -0
  21. package/dist/data/seed-default-services.js.map +1 -0
  22. package/dist/lib/mcp-connection-error.d.ts +4 -0
  23. package/dist/lib/mcp-connection-error.d.ts.map +1 -0
  24. package/dist/lib/mcp-connection-error.js +45 -0
  25. package/dist/lib/mcp-connection-error.js.map +1 -0
  26. package/dist/lib/mcp-oauth-discovery.d.ts +16 -0
  27. package/dist/lib/mcp-oauth-discovery.d.ts.map +1 -0
  28. package/dist/lib/mcp-oauth-discovery.js +161 -0
  29. package/dist/lib/mcp-oauth-discovery.js.map +1 -0
  30. package/dist/lib/oauth-token-response.d.ts +11 -0
  31. package/dist/lib/oauth-token-response.d.ts.map +1 -0
  32. package/dist/lib/oauth-token-response.js +48 -0
  33. package/dist/lib/oauth-token-response.js.map +1 -0
  34. package/dist/lib/pkce.d.ts +7 -0
  35. package/dist/lib/pkce.d.ts.map +1 -0
  36. package/dist/lib/pkce.js +11 -0
  37. package/dist/lib/pkce.js.map +1 -0
  38. package/dist/mcp-server.d.ts +4 -3
  39. package/dist/mcp-server.d.ts.map +1 -1
  40. package/dist/mcp-server.js +128 -32
  41. package/dist/mcp-server.js.map +1 -1
  42. package/dist/mcp-session-binding.d.ts +29 -0
  43. package/dist/mcp-session-binding.d.ts.map +1 -0
  44. package/dist/mcp-session-binding.js +74 -0
  45. package/dist/mcp-session-binding.js.map +1 -0
  46. package/dist/models/database.d.ts +1 -0
  47. package/dist/models/database.d.ts.map +1 -1
  48. package/dist/models/database.js +4 -0
  49. package/dist/models/database.js.map +1 -1
  50. package/dist/routes/oauth.d.ts.map +1 -1
  51. package/dist/routes/oauth.js +85 -48
  52. package/dist/routes/oauth.js.map +1 -1
  53. package/dist/server/index.d.ts.map +1 -1
  54. package/dist/server/index.js +6 -0
  55. package/dist/server/index.js.map +1 -1
  56. package/dist/services/collection-warning-service.d.ts.map +1 -1
  57. package/dist/services/collection-warning-service.js +1 -5
  58. package/dist/services/collection-warning-service.js.map +1 -1
  59. package/dist/services/config-manager.d.ts.map +1 -1
  60. package/dist/services/config-manager.js +5 -5
  61. package/dist/services/config-manager.js.map +1 -1
  62. package/dist/services/mcp-client-manager.d.ts.map +1 -1
  63. package/dist/services/mcp-client-manager.js +6 -1
  64. package/dist/services/mcp-client-manager.js.map +1 -1
  65. package/dist/services/mcp-discovery-service.d.ts +1 -0
  66. package/dist/services/mcp-discovery-service.d.ts.map +1 -1
  67. package/dist/services/mcp-discovery-service.js +2 -79
  68. package/dist/services/mcp-discovery-service.js.map +1 -1
  69. package/dist/services/oauth-connect-service.d.ts +26 -0
  70. package/dist/services/oauth-connect-service.d.ts.map +1 -0
  71. package/dist/services/oauth-connect-service.js +129 -0
  72. package/dist/services/oauth-connect-service.js.map +1 -0
  73. package/dist/services/oauth-manager.d.ts.map +1 -1
  74. package/dist/services/oauth-manager.js +74 -70
  75. package/dist/services/oauth-manager.js.map +1 -1
  76. package/dist/services/service-manager.d.ts +2 -0
  77. package/dist/services/service-manager.d.ts.map +1 -1
  78. package/dist/services/service-manager.js +22 -3
  79. package/dist/services/service-manager.js.map +1 -1
  80. package/package.json +4 -4
  81. package/static-ui/assets/AgentDeckLogo3-CEDxeHlz.png +0 -0
  82. package/static-ui/assets/index-CPNBMDJn.js +354 -0
  83. package/static-ui/assets/index-Df5pC3f-.css +1 -0
  84. package/static-ui/favicon.png +0 -0
  85. package/static-ui/index.html +2 -2
  86. package/static-ui/assets/AgentDeckLogo2-z3pVqJJ3.png +0 -0
  87. package/static-ui/assets/index-BMpKtwqp.js +0 -339
  88. package/static-ui/assets/index-BnA3AsqY.css +0 -1
@@ -0,0 +1,26 @@
1
+ import { MCPDiscoveryService } from './mcp-discovery-service';
2
+ import { OAuthManager } from './oauth-manager';
3
+ import { DatabaseManager } from '../models/database';
4
+ import { type OAuthProviderGuide } from '../data/oauth-provider-guides';
5
+ export type OAuthConnectInput = {
6
+ clientId?: string;
7
+ clientSecret?: string;
8
+ };
9
+ export type OAuthConnectResult = {
10
+ success: true;
11
+ authorizationUrl: string;
12
+ state: string;
13
+ mode: 'dynamic' | 'manual' | 'managed';
14
+ } | {
15
+ success: false;
16
+ needsCredentials: boolean;
17
+ setupMode: OAuthProviderGuide['setupMode'];
18
+ guide: OAuthProviderGuide;
19
+ error: string;
20
+ };
21
+ export declare function getOAuthSetupInfo(db: DatabaseManager, serviceId: string): Promise<{
22
+ guide: OAuthProviderGuide;
23
+ discovery: Awaited<ReturnType<MCPDiscoveryService['discoverService']>>;
24
+ }>;
25
+ export declare function startOAuthConnect(db: DatabaseManager, oauthManager: OAuthManager, serviceId: string, input?: OAuthConnectInput): Promise<OAuthConnectResult>;
26
+ //# sourceMappingURL=oauth-connect-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-connect-service.d.ts","sourceRoot":"","sources":["../../src/services/oauth-connect-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAKL,KAAK,kBAAkB,EACxB,MAAM,+BAA+B,CAAC;AAGvC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B;IACE,OAAO,EAAE,IAAI,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;CACxC,GACD;IACE,OAAO,EAAE,KAAK,CAAC;IACf,gBAAgB,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC3C,KAAK,EAAE,kBAAkB,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEN,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,eAAe,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,KAAK,EAAE,kBAAkB,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC,CAoBhH;AAED,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,eAAe,EACnB,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,iBAAsB,GAC5B,OAAO,CAAC,kBAAkB,CAAC,CAmH7B"}
@@ -0,0 +1,129 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOAuthSetupInfo = getOAuthSetupInfo;
4
+ exports.startOAuthConnect = startOAuthConnect;
5
+ const mcp_discovery_service_1 = require("./mcp-discovery-service");
6
+ const oauth_provider_guides_1 = require("../data/oauth-provider-guides");
7
+ const shared_oauth_apps_1 = require("../config/shared-oauth-apps");
8
+ async function getOAuthSetupInfo(db, serviceId) {
9
+ const service = await db.getService(serviceId);
10
+ if (!service) {
11
+ throw new Error('Service not found');
12
+ }
13
+ const discoveryService = new mcp_discovery_service_1.MCPDiscoveryService();
14
+ const discovery = await discoveryService.discoverService(service.url);
15
+ const provider = discovery.oauth.provider
16
+ ?? (0, oauth_provider_guides_1.inferOAuthProvider)(service.url, []);
17
+ const setupMode = (0, oauth_provider_guides_1.resolveOAuthSetupMode)(provider, discovery.oauth.supportsDynamicRegistration);
18
+ const guide = {
19
+ ...(0, oauth_provider_guides_1.getOAuthProviderGuide)(provider, {
20
+ serviceName: service.name,
21
+ serviceUrl: service.url,
22
+ }),
23
+ setupMode,
24
+ };
25
+ return { guide, discovery };
26
+ }
27
+ async function startOAuthConnect(db, oauthManager, serviceId, input = {}) {
28
+ const service = await db.getService(serviceId);
29
+ if (!service) {
30
+ throw new Error('Service not found');
31
+ }
32
+ const discoveryService = new mcp_discovery_service_1.MCPDiscoveryService();
33
+ const mcpDiscovery = await discoveryService.discoverService(service.url);
34
+ if (!mcpDiscovery.oauth.required) {
35
+ throw new Error('Service does not require OAuth authentication');
36
+ }
37
+ const provider = mcpDiscovery.oauth.provider ?? (0, oauth_provider_guides_1.inferOAuthProvider)(service.url, []);
38
+ const setupMode = (0, oauth_provider_guides_1.resolveOAuthSetupMode)(provider, mcpDiscovery.oauth.supportsDynamicRegistration);
39
+ const guide = {
40
+ ...(0, oauth_provider_guides_1.getOAuthProviderGuide)(provider, {
41
+ serviceName: service.name,
42
+ serviceUrl: service.url,
43
+ }),
44
+ setupMode,
45
+ };
46
+ if (guide.setupMode === 'unavailable') {
47
+ return {
48
+ success: false,
49
+ needsCredentials: false,
50
+ setupMode: guide.setupMode,
51
+ guide,
52
+ error: guide.unavailableReason ?? 'OAuth is not available for this provider in Agent Deck.',
53
+ };
54
+ }
55
+ const redirectUri = (0, oauth_provider_guides_1.getOAuthRedirectUri)();
56
+ const scope = mcpDiscovery.oauth.scopesSupported?.length
57
+ ? mcpDiscovery.oauth.scopesSupported.join(' ')
58
+ : 'read write';
59
+ const oauthConfig = {
60
+ clientId: '',
61
+ clientSecret: '',
62
+ authorizationUrl: mcpDiscovery.oauth.authorizationUrl || '',
63
+ tokenUrl: mcpDiscovery.oauth.tokenUrl || '',
64
+ redirectUri,
65
+ scope,
66
+ };
67
+ if (!oauthConfig.authorizationUrl || !oauthConfig.tokenUrl) {
68
+ return {
69
+ success: false,
70
+ needsCredentials: false,
71
+ setupMode: guide.setupMode,
72
+ guide,
73
+ error: 'Could not discover OAuth authorization and token URLs for this service.',
74
+ };
75
+ }
76
+ const manualClientId = input.clientId?.trim() || service.oauthClientId?.trim();
77
+ const manualClientSecret = input.clientSecret?.trim() || service.oauthClientSecret?.trim();
78
+ let clientId = manualClientId;
79
+ let clientSecret = manualClientSecret;
80
+ let mode = manualClientId ? 'manual' : 'dynamic';
81
+ const shared = !manualClientId ? (0, shared_oauth_apps_1.getSharedOAuthCredentials)(provider) : null;
82
+ if (shared) {
83
+ clientId = shared.clientId;
84
+ clientSecret = shared.clientSecret;
85
+ mode = 'managed';
86
+ }
87
+ else if (!clientId) {
88
+ const registration = await oauthManager.autoRegisterOAuthApp(service.url, oauthConfig);
89
+ if (!registration.success || !registration.clientId) {
90
+ return {
91
+ success: false,
92
+ needsCredentials: true,
93
+ setupMode: 'manual',
94
+ guide: {
95
+ ...(0, oauth_provider_guides_1.getOAuthProviderGuide)(provider, {
96
+ serviceName: service.name,
97
+ serviceUrl: service.url,
98
+ }),
99
+ setupMode: 'manual',
100
+ },
101
+ error: guide.setupMode === 'manual'
102
+ ? 'Add your OAuth Client ID and Client Secret below, then click Connect.'
103
+ : registration.error ?? 'Failed to register OAuth application automatically.',
104
+ };
105
+ }
106
+ clientId = registration.clientId;
107
+ clientSecret = registration.clientSecret;
108
+ mode = 'dynamic';
109
+ }
110
+ await db.updateService(serviceId, {
111
+ oauthClientId: clientId,
112
+ oauthClientSecret: clientSecret,
113
+ oauthAuthorizationUrl: oauthConfig.authorizationUrl,
114
+ oauthTokenUrl: oauthConfig.tokenUrl,
115
+ oauthRedirectUri: redirectUri,
116
+ oauthScope: scope,
117
+ });
118
+ const { authorizationUrl, state } = await oauthManager.initiateOAuthFlow({
119
+ serviceId,
120
+ redirectUri,
121
+ });
122
+ return {
123
+ success: true,
124
+ authorizationUrl,
125
+ state,
126
+ mode,
127
+ };
128
+ }
129
+ //# sourceMappingURL=oauth-connect-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-connect-service.js","sourceRoot":"","sources":["../../src/services/oauth-connect-service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-manager.d.ts","sourceRoot":"","sources":["../../src/services/oauth-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,WAAW,EACX,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAwBrD,qBAAa,YAAY;IAOX,OAAO,CAAC,EAAE;IANtB,OAAO,CAAC,WAAW,CAA6B;IAEhD,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;gBAI5B,EAAE,EAAE,eAAe;IAEjC,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAkEhE,iBAAiB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC;QAAE,gBAAgB,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IA8B9F,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC;IA8EnE,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC;IAoDhE,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAanD,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA4B9D,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC;QAC3E,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;CAyIH"}
1
+ {"version":3,"file":"oauth-manager.d.ts","sourceRoot":"","sources":["../../src/services/oauth-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,WAAW,EACX,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EAElB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AA2BrD,qBAAa,YAAY;IAOX,OAAO,CAAC,EAAE;IANtB,OAAO,CAAC,WAAW,CAAsC;IAEzD,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;gBAI5B,EAAE,EAAE,eAAe;IAEjC,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAkEhE,iBAAiB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC;QAAE,gBAAgB,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAiC9F,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC;IA+EnE,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC;IAqDhE,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQnD,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA4B9D,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC;QAC3E,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;CAqJH"}
@@ -1,12 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.OAuthManager = void 0;
4
+ const shared_1 = require("@agent-deck/shared");
4
5
  const crypto_1 = require("crypto");
6
+ const pkce_1 = require("../lib/pkce");
7
+ const oauth_redirect_1 = require("../config/oauth-redirect");
8
+ const oauth_token_response_1 = require("../lib/oauth-token-response");
5
9
  class OAuthManager {
6
10
  db;
7
- oauthStates = new Map(); // state -> serviceId mapping
11
+ oauthStates = new Map();
8
12
  getOAuthState(state) {
9
- return this.oauthStates.get(state);
13
+ return this.oauthStates.get(state)?.serviceId;
10
14
  }
11
15
  constructor(db) {
12
16
  this.db = db;
@@ -77,30 +81,32 @@ class OAuthManager {
77
81
  if (!service.oauthAuthorizationUrl) {
78
82
  throw new Error('Service does not have OAuth configuration');
79
83
  }
80
- // Generate state parameter for security
81
84
  const state = (0, crypto_1.randomBytes)(32).toString('hex');
82
- // Store state mapping in memory
83
- this.oauthStates.set(state, input.serviceId);
84
- // Build authorization URL
85
+ const { codeVerifier, codeChallenge } = (0, pkce_1.generatePkcePair)();
86
+ this.oauthStates.set(state, {
87
+ serviceId: input.serviceId,
88
+ codeVerifier,
89
+ });
85
90
  const url = new URL(service.oauthAuthorizationUrl);
86
91
  url.searchParams.set('response_type', 'code');
87
92
  url.searchParams.set('client_id', service.oauthClientId || '');
88
93
  url.searchParams.set('redirect_uri', input.redirectUri);
89
94
  url.searchParams.set('scope', service.oauthScope || 'read write');
90
95
  url.searchParams.set('state', state);
96
+ url.searchParams.set('code_challenge', codeChallenge);
97
+ url.searchParams.set('code_challenge_method', 'S256');
91
98
  return {
92
99
  authorizationUrl: url.toString(),
93
100
  state,
94
101
  };
95
102
  }
96
103
  async handleOAuthCallback(input) {
97
- // Extract service ID from state parameter
98
- const serviceId = this.oauthStates.get(input.state);
99
- if (!serviceId) {
104
+ const stateEntry = this.oauthStates.get(input.state);
105
+ if (!stateEntry) {
100
106
  throw new Error('Invalid or expired OAuth state parameter');
101
107
  }
102
- // Clean up the state after successful retrieval
103
108
  this.oauthStates.delete(input.state);
109
+ const { serviceId, codeVerifier } = stateEntry;
104
110
  const service = await this.db.getService(serviceId);
105
111
  if (!service) {
106
112
  throw new Error(`Service ${serviceId} not found`);
@@ -117,25 +123,26 @@ class OAuthManager {
117
123
  redirectUri,
118
124
  tokenUrl: service.oauthTokenUrl,
119
125
  });
120
- // Exchange authorization code for tokens
126
+ const tokenBody = new URLSearchParams({
127
+ grant_type: 'authorization_code',
128
+ client_id: service.oauthClientId || '',
129
+ code: input.code,
130
+ redirect_uri: redirectUri,
131
+ code_verifier: codeVerifier,
132
+ });
133
+ if (service.oauthClientSecret) {
134
+ tokenBody.set('client_secret', service.oauthClientSecret);
135
+ }
121
136
  const tokenResponse = await fetch(service.oauthTokenUrl, {
122
137
  method: 'POST',
123
- headers: {
124
- 'Content-Type': 'application/x-www-form-urlencoded',
125
- },
126
- body: new URLSearchParams({
127
- grant_type: 'authorization_code',
128
- client_id: service.oauthClientId || '',
129
- client_secret: service.oauthClientSecret || '',
130
- code: input.code,
131
- redirect_uri: redirectUri,
132
- }),
138
+ headers: (0, oauth_token_response_1.oauthTokenRequestHeaders)(),
139
+ body: tokenBody,
133
140
  });
134
141
  if (!tokenResponse.ok) {
135
142
  const errorText = await tokenResponse.text();
136
143
  throw new Error(`OAuth token exchange failed: ${tokenResponse.status} ${errorText}`);
137
144
  }
138
- const tokenData = await tokenResponse.json();
145
+ const tokenData = await (0, oauth_token_response_1.parseOAuthTokenResponse)(tokenResponse);
139
146
  const token = {
140
147
  accessToken: tokenData.access_token,
141
148
  refreshToken: tokenData.refresh_token,
@@ -161,24 +168,24 @@ class OAuthManager {
161
168
  if (!service.oauthTokenUrl) {
162
169
  throw new Error('Service does not have OAuth token URL configured');
163
170
  }
164
- // Exchange refresh token for new access token
171
+ const refreshBody = new URLSearchParams({
172
+ grant_type: 'refresh_token',
173
+ client_id: service.oauthClientId || '',
174
+ refresh_token: input.refreshToken,
175
+ });
176
+ if (service.oauthClientSecret) {
177
+ refreshBody.set('client_secret', service.oauthClientSecret);
178
+ }
165
179
  const tokenResponse = await fetch(service.oauthTokenUrl, {
166
180
  method: 'POST',
167
- headers: {
168
- 'Content-Type': 'application/x-www-form-urlencoded',
169
- },
170
- body: new URLSearchParams({
171
- grant_type: 'refresh_token',
172
- client_id: service.oauthClientId || '',
173
- client_secret: service.oauthClientSecret || '',
174
- refresh_token: input.refreshToken,
175
- }),
181
+ headers: (0, oauth_token_response_1.oauthTokenRequestHeaders)(),
182
+ body: refreshBody,
176
183
  });
177
184
  if (!tokenResponse.ok) {
178
185
  const errorText = await tokenResponse.text();
179
186
  throw new Error(`OAuth token refresh failed: ${tokenResponse.status} ${errorText}`);
180
187
  }
181
- const tokenData = await tokenResponse.json();
188
+ const tokenData = await (0, oauth_token_response_1.parseOAuthTokenResponse)(tokenResponse);
182
189
  const token = {
183
190
  accessToken: tokenData.access_token,
184
191
  refreshToken: tokenData.refresh_token || input.refreshToken,
@@ -194,21 +201,18 @@ class OAuthManager {
194
201
  }
195
202
  async isTokenExpired(serviceId) {
196
203
  const service = await this.db.getService(serviceId);
197
- if (!service || !service.oauthTokenExpiresAt) {
204
+ if (!service) {
198
205
  return true;
199
206
  }
200
- const expiresAt = new Date(service.oauthTokenExpiresAt);
201
- const now = new Date();
202
- // Consider token expired if it expires within the next 5 minutes
203
- return expiresAt.getTime() <= now.getTime() + 5 * 60 * 1000;
207
+ return (0, shared_1.isOAuthAccessTokenExpired)(service);
204
208
  }
205
209
  async getValidAccessToken(serviceId) {
206
210
  const service = await this.db.getService(serviceId);
207
211
  if (!service || !service.oauthAccessToken) {
208
212
  return null;
209
213
  }
210
- // Check if token is expired
211
- if (await this.isTokenExpired(serviceId)) {
214
+ // Check if token is expired (missing expiry means still valid)
215
+ if ((0, shared_1.isOAuthAccessTokenExpired)(service)) {
212
216
  // Try to refresh the token
213
217
  if (service.oauthRefreshToken) {
214
218
  try {
@@ -245,43 +249,48 @@ class OAuthManager {
245
249
  console.log('OAuth metadata found:', metadata);
246
250
  if (metadata.registration_endpoint) {
247
251
  console.log('Found registration endpoint:', metadata.registration_endpoint);
248
- // Try dynamic client registration with the MCP service
249
- const registrationResponse = await fetch(metadata.registration_endpoint, {
250
- method: 'POST',
251
- headers: {
252
- 'Content-Type': 'application/json',
253
- 'Accept': 'application/json',
252
+ const oauthRedirectUri = (0, oauth_redirect_1.getOAuthRedirectUri)();
253
+ const registrationPayloads = [
254
+ {
255
+ client_name: 'AgentDeck',
256
+ redirect_uris: [oauthRedirectUri],
257
+ grant_types: ['authorization_code', 'refresh_token'],
258
+ response_types: ['code'],
259
+ token_endpoint_auth_method: 'none',
260
+ scope: config.scope || 'read write',
254
261
  },
255
- body: JSON.stringify({
262
+ {
256
263
  client_name: 'AgentDeck',
257
- redirect_uris: [`http://localhost:8000/api/oauth/callback`],
264
+ redirect_uris: [oauthRedirectUri],
258
265
  grant_types: ['authorization_code', 'refresh_token'],
259
266
  response_types: ['code'],
260
267
  token_endpoint_auth_method: 'client_secret_basic',
261
268
  scope: config.scope || 'read write',
262
- }),
263
- });
264
- if (registrationResponse.ok) {
269
+ },
270
+ ];
271
+ for (const payload of registrationPayloads) {
272
+ const registrationResponse = await fetch(metadata.registration_endpoint, {
273
+ method: 'POST',
274
+ headers: {
275
+ 'Content-Type': 'application/json',
276
+ 'Accept': 'application/json',
277
+ },
278
+ body: JSON.stringify(payload),
279
+ });
280
+ if (!registrationResponse.ok) {
281
+ console.log('MCP service registration failed:', payload.token_endpoint_auth_method, await registrationResponse.text());
282
+ continue;
283
+ }
265
284
  const data = await registrationResponse.json();
266
285
  console.log('Dynamic client registration successful:', data);
267
- // Validate that we got real client credentials
268
- if (data.client_id && data.client_secret &&
269
- typeof data.client_id === 'string' &&
270
- typeof data.client_secret === 'string' &&
271
- data.client_id.length > 10 &&
272
- data.client_secret.length > 10) {
286
+ if (data.client_id && typeof data.client_id === 'string' && data.client_id.length > 0) {
273
287
  return {
274
288
  success: true,
275
289
  clientId: data.client_id,
276
290
  clientSecret: data.client_secret,
277
291
  };
278
292
  }
279
- else {
280
- console.log('Invalid client credentials received from MCP service');
281
- }
282
- }
283
- else {
284
- console.log('MCP service registration failed:', await registrationResponse.text());
293
+ console.log('Invalid client credentials received from MCP service');
285
294
  }
286
295
  }
287
296
  else {
@@ -314,19 +323,14 @@ class OAuthManager {
314
323
  },
315
324
  body: JSON.stringify({
316
325
  client_name: 'AgentDeck',
317
- redirect_uri: `http://localhost:8000/api/oauth/callback`,
326
+ redirect_uri: (0, oauth_redirect_1.getOAuthRedirectUri)(),
318
327
  scope: config.scope || 'read write',
319
328
  }),
320
329
  });
321
330
  if (response.ok) {
322
331
  const data = await response.json();
323
332
  console.log('MCP OAuth registration successful at:', endpoint, data);
324
- // Validate that we got real client credentials
325
- if (data.client_id && data.client_secret &&
326
- typeof data.client_id === 'string' &&
327
- typeof data.client_secret === 'string' &&
328
- data.client_id.length > 10 &&
329
- data.client_secret.length > 10) {
333
+ if (data.client_id && typeof data.client_id === 'string' && data.client_id.length > 0) {
330
334
  return {
331
335
  success: true,
332
336
  clientId: data.client_id,
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-manager.js","sourceRoot":"","sources":["../../src/services/oauth-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth-manager.js","sourceRoot":"","sources":["../../src/services/oauth-manager.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,8 @@ export declare class ServiceManager {
14
14
  refreshUnknownServiceHealth(onUpdate?: (update: ServiceStatusUpdate) => void): Promise<void>;
15
15
  private shouldBackgroundProbe;
16
16
  refreshServiceIcon(serviceId: string): Promise<Service | null>;
17
+ private shouldResolveIcon;
18
+ backfillMissingIcons(): Promise<void>;
17
19
  getService(id: string): Promise<Service | null>;
18
20
  getAllServices(): Promise<Service[]>;
19
21
  updateService(id: string, input: UpdateServiceInput): Promise<Service | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"service-manager.d.ts","sourceRoot":"","sources":["../../src/services/service-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EAIjB,8BAA8B,EAC9B,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAmB/C,qBAAa,cAAc;IAIvB,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,YAAY;IALtB,OAAO,CAAC,aAAa,CAAgB;gBAG3B,EAAE,EAAE,eAAe,EACnB,SAAS,EAAE,gBAAgB,EAC3B,YAAY,EAAE,YAAY;IAKpC,IAAI,gBAAgB,IAAI,gBAAgB,CAEvC;IAEK,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC;IA0ChE,OAAO,CAAC,kBAAkB;IAMpB,2BAA2B,CAC/B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,GAC/C,OAAO,CAAC,IAAI,CAAC;IAwBhB,OAAO,CAAC,qBAAqB;IA0BvB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAoB9D,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAI/C,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAIpC,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAO7E,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA6B3C,oBAAoB,CACxB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAC/B,OAAO,CAAC,WAAW,EAAE,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAgCvD,kBAAkB,CACtB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAgB1B,OAAO,CAAC,wBAAwB;IAW1B,eAAe,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAmDpE,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,OAAO,CAAA;KAAE,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;YAsBtI,gBAAgB;YA2BhB,WAAW;IAsBzB;;OAEG;IACG,4BAA4B,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAwC3E;;OAEG;IACH,eAAe,IAAI,MAAM;IAKzB;;OAEG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcxD;;OAEG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBvD;;OAEG;IACG,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CA+B5D"}
1
+ {"version":3,"file":"service-manager.d.ts","sourceRoot":"","sources":["../../src/services/service-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EAIjB,8BAA8B,EAC9B,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAmB/C,qBAAa,cAAc;IAIvB,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,YAAY;IALtB,OAAO,CAAC,aAAa,CAAgB;gBAG3B,EAAE,EAAE,eAAe,EACnB,SAAS,EAAE,gBAAgB,EAC3B,YAAY,EAAE,YAAY;IAKpC,IAAI,gBAAgB,IAAI,gBAAgB,CAEvC;IAEK,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC;IA0ChE,OAAO,CAAC,kBAAkB;IAMpB,2BAA2B,CAC/B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,GAC/C,OAAO,CAAC,IAAI,CAAC;IAwBhB,OAAO,CAAC,qBAAqB;IA0BvB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAoBpE,OAAO,CAAC,iBAAiB;IAInB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAarC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAI/C,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAapC,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAO7E,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA6B3C,oBAAoB,CACxB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAC/B,OAAO,CAAC,WAAW,EAAE,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAiCvD,kBAAkB,CACtB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAgB1B,OAAO,CAAC,wBAAwB;IAW1B,eAAe,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAmDpE,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,OAAO,CAAA;KAAE,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;YAsBtI,gBAAgB;YA2BhB,WAAW;IAsBzB;;OAEG;IACG,4BAA4B,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAwC3E;;OAEG;IACH,eAAe,IAAI,MAAM;IAKzB;;OAEG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcxD;;OAEG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBvD;;OAEG;IACG,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CA+B5D"}
@@ -134,7 +134,7 @@ class ServiceManager {
134
134
  if (!service) {
135
135
  return null;
136
136
  }
137
- if (service.type === 'local-mcp' || service.url.startsWith('local://')) {
137
+ if (!this.shouldResolveIcon(service)) {
138
138
  return service;
139
139
  }
140
140
  const result = await (0, icon_resolver_1.cacheIconForService)(serviceId, service.url);
@@ -145,11 +145,29 @@ class ServiceManager {
145
145
  iconUrl: (0, icon_resolver_1.serviceIconApiPath)(serviceId),
146
146
  });
147
147
  }
148
+ shouldResolveIcon(service) {
149
+ return service.type !== 'local-mcp' && !service.url.startsWith('local://');
150
+ }
151
+ async backfillMissingIcons() {
152
+ const services = await this.db.getAllServices();
153
+ await Promise.all(services
154
+ .filter((service) => !service.iconUrl && this.shouldResolveIcon(service))
155
+ .map((service) => this.refreshServiceIcon(service.id).catch((error) => {
156
+ console.warn(`Failed to resolve icon for service ${service.name}:`, error);
157
+ })));
158
+ }
148
159
  async getService(id) {
149
160
  return await this.db.getService(id);
150
161
  }
151
162
  async getAllServices() {
152
- return await this.db.getAllServices();
163
+ const services = await this.db.getAllServices();
164
+ return Promise.all(services.map(async (service) => {
165
+ if (!service.iconUrl && this.shouldResolveIcon(service)) {
166
+ const updated = await this.refreshServiceIcon(service.id);
167
+ return updated ?? service;
168
+ }
169
+ return service;
170
+ }));
153
171
  }
154
172
  async updateService(id, input) {
155
173
  // Validate input
@@ -205,7 +223,8 @@ class ServiceManager {
205
223
  catch (error) {
206
224
  console.error(`Failed to discover tools for service ${serviceId}:`, error);
207
225
  await this.db.updateServiceStatus(serviceId, false, 'unhealthy');
208
- return { success: false, error: 'Failed to discover tools' };
226
+ const message = error instanceof Error ? error.message : 'Failed to discover tools';
227
+ return { success: false, error: message };
209
228
  }
210
229
  }
211
230
  async updateToolSettings(serviceId, input) {
@@ -1 +1 @@
1
- {"version":3,"file":"service-manager.js","sourceRoot":"","sources":["../../src/services/service-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service-manager.js","sourceRoot":"","sources":["../../src/services/service-manager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAY4B;AAI5B,qDAAiD;AACjD,mDAIyB;AAazB,MAAa,cAAc;IAIf;IACA;IACA;IALF,aAAa,CAAgB;IAErC,YACU,EAAmB,EACnB,SAA2B,EAC3B,YAA0B;QAF1B,OAAE,GAAF,EAAE,CAAiB;QACnB,cAAS,GAAT,SAAS,CAAkB;QAC3B,iBAAY,GAAZ,YAAY,CAAc;QAElC,IAAI,CAAC,aAAa,GAAG,IAAI,8BAAa,EAAE,CAAC;IAC3C,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAAyB;QAC3C,iBAAiB;QACjB,MAAM,cAAc,GAAG,4BAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAExD,2BAA2B;QAC3B,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC;QACxD,MAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI,CAAC,CAAC;QAChF,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,sBAAsB,cAAc,CAAC,IAAI,kBAAkB,CAAC,CAAC;QAC/E,CAAC;QAED,6BAA6B;QAC7B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;QAE5D,6DAA6D;QAC7D,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YACrD,IAAI,CAAC;gBACH,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC1E,IAAI,cAAc,CAAC,QAAQ,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;oBACrD,MAAM,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,EAAE;wBACtC,aAAa,EAAE,cAAc,CAAC,MAAM,CAAC,QAAQ;wBAC7C,iBAAiB,EAAE,cAAc,CAAC,MAAM,CAAC,YAAY;wBACrD,qBAAqB,EAAE,cAAc,CAAC,MAAM,CAAC,gBAAgB;wBAC7D,aAAa,EAAE,cAAc,CAAC,MAAM,CAAC,QAAQ;wBAC7C,gBAAgB,EAAE,cAAc,CAAC,MAAM,CAAC,WAAW;wBACnD,UAAU,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK;qBACxC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,wCAAwC,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;QAED,KAAK,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACvD,OAAO,CAAC,IAAI,CAAC,sCAAsC,OAAO,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QAEH,KAAK,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEzC,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,kBAAkB,CAAC,SAAiB;QAC1C,KAAK,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACxD,OAAO,CAAC,IAAI,CAAC,2CAA2C,SAAS,GAAG,EAAE,KAAK,CAAC,CAAC;QAC/E,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC/B,QAAgD;QAEhD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC;QAEhD,MAAM,OAAO,CAAC,GAAG,CACf,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YAC7B,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzC,OAAO;YACT,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACzD,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC1D,OAAO;YACT,CAAC;YAED,QAAQ,CAAC;gBACP,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,MAAM,EAAE,MAAM,CAAC,MAAuC;gBACtD,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACnC,CAAC,CAAC;QACL,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,qBAAqB,CAAC,OAAgB;QAC5C,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC3D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,cAAc,GAAG,OAAO,CAC5B,OAAO,CAAC,aAAa;YACnB,OAAO,CAAC,qBAAqB;YAC7B,OAAO,CAAC,aAAa,CACxB,CAAC;QACF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QACpF,IAAI,cAAc,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QACxC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mCAAmB,EAAC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE;YAC5C,OAAO,EAAE,IAAA,kCAAkB,EAAC,SAAS,CAAC;SACvC,CAAC,CAAC;IACL,CAAC;IAEO,iBAAiB,CAAC,OAAgB;QACxC,OAAO,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC;QAChD,MAAM,OAAO,CAAC,GAAG,CACf,QAAQ;aACL,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;aACxE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACf,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAClD,OAAO,CAAC,IAAI,CAAC,sCAAsC,OAAO,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;QAC7E,CAAC,CAAC,CACH,CACJ,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,EAAU;QACzB,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC;QAChD,OAAO,OAAO,CAAC,GAAG,CAChB,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YAC7B,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC1D,OAAO,OAAO,IAAI,OAAO,CAAC;YAC5B,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAU,EAAE,KAAyB;QACvD,iBAAiB;QACjB,MAAM,cAAc,GAAG,4BAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAExD,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAU;QAC5B,6DAA6D;QAC7D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,KAAK,CAAC,CAAC,wBAAwB;QACxC,CAAC;QAED,4CAA4C;QAC5C,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,OAAO,CAAC,GAAG,CAAC,iDAAiD,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC7E,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;YACjC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,sCAAsC,OAAO,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;QACpE,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,EAAE,uBAAuB,EAAE,GAAG,wDAAa,+BAA+B,GAAC,CAAC;YAClF,MAAM,IAAI,uBAAuB,CAC/B,sBAAsB,OAAO,CAAC,IAAI,iCAAiC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC9G,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,SAAiB,EACjB,OAAgC;QAEhC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;QACxD,CAAC;QAED,IAAI,CAAC;YACH,IAAI,KAAoB,CAAC;YAEzB,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC3D,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YACtD,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;gBAClC,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,6BAA6B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YAChF,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;YACxF,MAAM,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;YAE9D,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;gBACtB,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;YAC5D,CAAC;YAED,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,wCAAwC,SAAS,GAAG,EAAE,KAAK,CAAC,CAAC;YAC3E,MAAM,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,SAAS,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;YACjE,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC;YACpF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,SAAiB,EACjB,KAAqC;QAErC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,EAAE,CAAC,0BAA0B,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC,EAAE,CAAC,0BAA0B,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAEO,wBAAwB,CAC9B,KAAoB,EACpB,iBAA2B;QAE3B,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC5C,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC1B,GAAG,IAAI;YACP,OAAO,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;SAClC,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,KAAuB;QAC3C,iBAAiB;QACjB,MAAM,cAAc,GAAG,0BAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAEtD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACnE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,mBAAmB;aAC3B,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxE,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,SAAS,cAAc,CAAC,QAAQ,gCAAgC;aACxE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC3D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAC1C,OAAO,EACP,cAAc,CAAC,QAAQ,EACvB,cAAc,CAAC,SAAS,CACzB,CAAC;gBACF,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,MAAM;iBACf,CAAC;YACJ,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;gBAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,cAAc,CAAC,QAAQ,EAAE,cAAc,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;gBACxG,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,MAAM;iBACf,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,6BAA6B,OAAO,CAAC,IAAI,EAAE;iBACnD,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,mCAAmC,cAAc,CAAC,SAAS,GAAG,EAAE,KAAK,CAAC,CAAC;YACrF,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,qBAAqB;aAC7B,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QACxC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;QACxD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,WAAW;gBACnB,WAAW,EAAE,KAAK;aACnB,CAAC;QACJ,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,IAAI;SAClB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,OAAgB;QAC7C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,WAAW,CAAC,CAAC;YACxD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,iCAAiC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YAC1E,CAAC;YAED,MAAM,QAAQ,GAAgB,MAAM,QAAQ,CAAC,IAAI,EAAiB,CAAC;YACnE,MAAM,KAAK,GAAkB,EAAE,CAAC;YAEhC,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACvB,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBAClE,KAAK,CAAC,IAAI,CAAC;wBACT,IAAI;wBACJ,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,iBAAiB,IAAI,EAAE;wBAC5D,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,EAAE;qBACxC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,4CAA4C,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YAChF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,OAAgB,EAAE,QAAgB,EAAE,UAA+B;QAC3F,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,IAAI,QAAQ,EAAE,EAAE;gBACzD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,GAAG,OAAO,CAAC,OAAO;iBACnB;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;aACjC,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YAClE,CAAC;YAED,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,QAAQ,gBAAgB,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YACvF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,4BAA4B,CAAC,WAAmB;QACpD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YAEjE,MAAM,eAAe,GAAc,EAAE,CAAC;YAEtC,KAAK,MAAM,YAAY,IAAI,QAAQ,EAAE,CAAC;gBACpC,4DAA4D;gBAC5D,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC;gBACxD,MAAM,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;gBAEjF,IAAI,eAAe,EAAE,CAAC;oBACpB,OAAO,CAAC,GAAG,CAAC,yBAAyB,YAAY,CAAC,IAAI,2BAA2B,eAAe,CAAC,IAAI,aAAa,CAAC,CAAC;oBACpH,MAAM,IAAI,KAAK,CAAC,sBAAsB,YAAY,CAAC,IAAI,kBAAkB,CAAC,CAAC;gBAC7E,CAAC;gBAED,0BAA0B;gBAC1B,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,YAAa,CAAC,EAAE,CAAC;oBAClE,OAAO,CAAC,IAAI,CAAC,2CAA2C,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC;oBACrF,SAAS;gBACX,CAAC;gBAED,iCAAiC;gBACjC,IAAI,YAAY,CAAC,QAAQ,EAAE,CAAC;oBAC1B,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACxF,CAAC;gBAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC9B,OAAO,CAAC,GAAG,CAAC,+BAA+B,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7D,CAAC;YAED,OAAO,eAAe,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,+CAA+C,EAAE,KAAK,CAAC,CAAC;YACtE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,eAAe;QACb,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE,CAAC;QACnE,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,SAAiB;QACtC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,qEAAqE;QACrE,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,SAAiB;QACrC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,2DAA2D;QAC3D,MAAM,YAAY,GAAI,IAAI,CAAC,SAAiB,CAAC,kBAAkB,CAAC;QAChE,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,SAAiB;QAC1C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,2DAA2D;QAC3D,MAAM,YAAY,GAAI,IAAI,CAAC,SAAiB,CAAC,kBAAkB,CAAC;QAChE,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,aAAa,GAAG,YAAY,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;YAC7D,IAAI,aAAa,EAAE,CAAC;gBAClB,OAAO;oBACL,SAAS,EAAE,aAAa,CAAC,SAAS;oBAClC,SAAS,EAAE,aAAa,CAAC,SAAS;oBAClC,YAAY,EAAE,aAAa,CAAC,YAAY;oBACxC,YAAY,EAAE,aAAa,CAAC,YAAY;iBACzC,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC;CACF;AAngBD,wCAmgBC"}