@google/gemini-cli-core 0.12.0-nightly.20251023.c4c0c0d1 → 0.12.0-nightly.20251027.cb0947c5
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/dist/index.d.ts +2 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/src/agents/subagent-tool-wrapper.test.js +2 -4
- package/dist/src/agents/subagent-tool-wrapper.test.js.map +1 -1
- package/dist/src/code_assist/oauth2.d.ts +2 -2
- package/dist/src/code_assist/oauth2.js +45 -32
- package/dist/src/code_assist/oauth2.js.map +1 -1
- package/dist/src/code_assist/oauth2.test.js +33 -1
- package/dist/src/code_assist/oauth2.test.js.map +1 -1
- package/dist/src/code_assist/server.d.ts +3 -3
- package/dist/src/code_assist/server.js.map +1 -1
- package/dist/src/code_assist/setup.d.ts +2 -2
- package/dist/src/code_assist/setup.js.map +1 -1
- package/dist/src/config/config.d.ts +4 -1
- package/dist/src/config/config.js +7 -4
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +0 -10
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/core/client.d.ts +1 -11
- package/dist/src/core/client.js +17 -165
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/client.test.js +70 -405
- package/dist/src/core/client.test.js.map +1 -1
- package/dist/src/core/contentGenerator.js +4 -0
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/contentGenerator.test.js +15 -0
- package/dist/src/core/contentGenerator.test.js.map +1 -1
- package/dist/src/core/coreToolScheduler.d.ts +7 -7
- package/dist/src/core/coreToolScheduler.js +211 -95
- package/dist/src/core/coreToolScheduler.js.map +1 -1
- package/dist/src/core/coreToolScheduler.test.js +239 -9
- package/dist/src/core/coreToolScheduler.test.js.map +1 -1
- package/dist/src/core/fakeContentGenerator.d.ts +26 -0
- package/dist/src/core/fakeContentGenerator.js +61 -0
- package/dist/src/core/fakeContentGenerator.js.map +1 -0
- package/dist/src/core/fakeContentGenerator.test.d.ts +6 -0
- package/dist/src/core/fakeContentGenerator.test.js +140 -0
- package/dist/src/core/fakeContentGenerator.test.js.map +1 -0
- package/dist/src/core/nonInteractiveToolExecutor.js +5 -4
- package/dist/src/core/nonInteractiveToolExecutor.js.map +1 -1
- package/dist/src/core/prompts.test.js +30 -108
- package/dist/src/core/prompts.test.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp/google-auth-provider.d.ts +4 -0
- package/dist/src/mcp/google-auth-provider.js +58 -7
- package/dist/src/mcp/google-auth-provider.js.map +1 -1
- package/dist/src/mcp/google-auth-provider.test.js +105 -11
- package/dist/src/mcp/google-auth-provider.test.js.map +1 -1
- package/dist/src/mcp/oauth-provider.js +2 -2
- package/dist/src/mcp/oauth-provider.js.map +1 -1
- package/dist/src/mcp/oauth-provider.test.js +130 -0
- package/dist/src/mcp/oauth-provider.test.js.map +1 -1
- package/dist/src/mcp/oauth-token-storage.js +5 -4
- package/dist/src/mcp/oauth-token-storage.js.map +1 -1
- package/dist/src/mcp/oauth-token-storage.test.js +17 -11
- package/dist/src/mcp/oauth-token-storage.test.js.map +1 -1
- package/dist/src/mcp/oauth-utils.d.ts +7 -0
- package/dist/src/mcp/oauth-utils.js +19 -0
- package/dist/src/mcp/oauth-utils.js.map +1 -1
- package/dist/src/mcp/oauth-utils.test.js +32 -0
- package/dist/src/mcp/oauth-utils.test.js.map +1 -1
- package/dist/src/mcp/sa-impersonation-provider.d.ts +0 -6
- package/dist/src/mcp/sa-impersonation-provider.js +3 -21
- package/dist/src/mcp/sa-impersonation-provider.js.map +1 -1
- package/dist/src/mcp/token-storage/base-token-storage.test.js +75 -84
- package/dist/src/mcp/token-storage/base-token-storage.test.js.map +1 -1
- package/dist/src/mcp/token-storage/keychain-token-storage.js +5 -4
- package/dist/src/mcp/token-storage/keychain-token-storage.js.map +1 -1
- package/dist/src/mcp/token-storage/keychain-token-storage.test.js +21 -3
- package/dist/src/mcp/token-storage/keychain-token-storage.test.js.map +1 -1
- package/dist/src/services/chatCompressionService.d.ts +32 -0
- package/dist/src/services/chatCompressionService.js +164 -0
- package/dist/src/services/chatCompressionService.js.map +1 -0
- package/dist/src/services/chatCompressionService.test.d.ts +6 -0
- package/dist/src/services/chatCompressionService.test.js +211 -0
- package/dist/src/services/chatCompressionService.test.js.map +1 -0
- package/dist/src/services/fileDiscoveryService.d.ts +0 -8
- package/dist/src/services/fileDiscoveryService.js +5 -33
- package/dist/src/services/fileDiscoveryService.js.map +1 -1
- package/dist/src/services/fileDiscoveryService.test.js +11 -11
- package/dist/src/services/fileDiscoveryService.test.js.map +1 -1
- package/dist/src/services/loopDetectionService.js +19 -9
- package/dist/src/services/loopDetectionService.js.map +1 -1
- package/dist/src/services/loopDetectionService.test.js +40 -11
- package/dist/src/services/loopDetectionService.test.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +1 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +35 -28
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
- package/dist/src/telemetry/metrics.test.js +2 -2
- package/dist/src/telemetry/metrics.test.js.map +1 -1
- package/dist/src/tools/edit.d.ts +3 -2
- package/dist/src/tools/edit.js +15 -11
- package/dist/src/tools/edit.js.map +1 -1
- package/dist/src/tools/edit.test.js +19 -0
- package/dist/src/tools/edit.test.js.map +1 -1
- package/dist/src/tools/glob.js +4 -2
- package/dist/src/tools/glob.js.map +1 -1
- package/dist/src/tools/grep.js +2 -2
- package/dist/src/tools/grep.js.map +1 -1
- package/dist/src/tools/ls.js +2 -1
- package/dist/src/tools/ls.js.map +1 -1
- package/dist/src/tools/ls.test.js +0 -7
- package/dist/src/tools/ls.test.js.map +1 -1
- package/dist/src/tools/mcp-tool.d.ts +2 -1
- package/dist/src/tools/mcp-tool.js +1 -1
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/memoryTool.d.ts +5 -3
- package/dist/src/tools/memoryTool.js +9 -7
- package/dist/src/tools/memoryTool.js.map +1 -1
- package/dist/src/tools/read-file.js +7 -3
- package/dist/src/tools/read-file.js.map +1 -1
- package/dist/src/tools/read-file.test.js +25 -2
- package/dist/src/tools/read-file.test.js.map +1 -1
- package/dist/src/tools/shell.d.ts +6 -4
- package/dist/src/tools/shell.js +18 -12
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/shell.test.js +7 -0
- package/dist/src/tools/shell.test.js.map +1 -1
- package/dist/src/tools/smart-edit.d.ts +2 -1
- package/dist/src/tools/smart-edit.js +10 -9
- package/dist/src/tools/smart-edit.js.map +1 -1
- package/dist/src/tools/tool-registry.d.ts +2 -1
- package/dist/src/tools/tool-registry.js +1 -1
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/tools/tools.d.ts +7 -0
- package/dist/src/tools/tools.js +11 -16
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/web-fetch.js +1 -12
- package/dist/src/tools/web-fetch.js.map +1 -1
- package/dist/src/tools/web-fetch.test.js +2 -2
- package/dist/src/tools/web-fetch.test.js.map +1 -1
- package/dist/src/tools/write-file.d.ts +2 -1
- package/dist/src/tools/write-file.js +6 -6
- package/dist/src/tools/write-file.js.map +1 -1
- package/dist/src/tools/write-todos.d.ts +2 -1
- package/dist/src/tools/write-todos.js +1 -1
- package/dist/src/tools/write-todos.js.map +1 -1
- package/dist/src/utils/environmentContext.d.ts +2 -1
- package/dist/src/utils/environmentContext.js +18 -0
- package/dist/src/utils/environmentContext.js.map +1 -1
- package/dist/src/utils/errorParsing.d.ts +1 -1
- package/dist/src/utils/errorParsing.js +5 -33
- package/dist/src/utils/errorParsing.js.map +1 -1
- package/dist/src/utils/errorParsing.test.js +0 -88
- package/dist/src/utils/errorParsing.test.js.map +1 -1
- package/dist/src/utils/errors.d.ts +3 -0
- package/dist/src/utils/errors.js +6 -0
- package/dist/src/utils/errors.js.map +1 -1
- package/dist/src/utils/flashFallback.test.js +26 -45
- package/dist/src/utils/flashFallback.test.js.map +1 -1
- package/dist/src/utils/getFolderStructure.js +7 -16
- package/dist/src/utils/getFolderStructure.js.map +1 -1
- package/dist/src/utils/googleErrors.d.ts +104 -0
- package/dist/src/utils/googleErrors.js +152 -0
- package/dist/src/utils/googleErrors.js.map +1 -0
- package/dist/src/utils/googleErrors.test.d.ts +6 -0
- package/dist/src/utils/googleErrors.test.js +301 -0
- package/dist/src/utils/googleErrors.test.js.map +1 -0
- package/dist/src/utils/googleQuotaErrors.d.ts +35 -0
- package/dist/src/utils/googleQuotaErrors.js +131 -0
- package/dist/src/utils/googleQuotaErrors.js.map +1 -0
- package/dist/src/utils/googleQuotaErrors.test.d.ts +6 -0
- package/dist/src/utils/googleQuotaErrors.test.js +281 -0
- package/dist/src/utils/googleQuotaErrors.test.js.map +1 -0
- package/dist/src/utils/ignorePatterns.test.js +26 -30
- package/dist/src/utils/ignorePatterns.test.js.map +1 -1
- package/dist/src/utils/paths.js +126 -26
- package/dist/src/utils/paths.js.map +1 -1
- package/dist/src/utils/paths.test.js +200 -68
- package/dist/src/utils/paths.test.js.map +1 -1
- package/dist/src/utils/quotaErrorDetection.d.ts +0 -2
- package/dist/src/utils/quotaErrorDetection.js +0 -46
- package/dist/src/utils/quotaErrorDetection.js.map +1 -1
- package/dist/src/utils/retry.js +41 -145
- package/dist/src/utils/retry.js.map +1 -1
- package/dist/src/utils/retry.test.js +31 -110
- package/dist/src/utils/retry.test.js.map +1 -1
- package/dist/src/utils/shell-utils.test.js +70 -0
- package/dist/src/utils/shell-utils.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/dist/google-gemini-cli-core-0.12.0-nightly.20251022.0542de95.tgz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google-auth-provider.js","sourceRoot":"","sources":["../../../src/mcp/google-auth-provider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"google-auth-provider.js","sourceRoot":"","sources":["../../../src/mcp/google-auth-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,11 +14,14 @@ describe('GoogleCredentialProvider', () => {
|
|
|
14
14
|
scopes: ['scope1', 'scope2'],
|
|
15
15
|
},
|
|
16
16
|
};
|
|
17
|
+
beforeEach(() => {
|
|
18
|
+
vi.clearAllMocks();
|
|
19
|
+
});
|
|
17
20
|
it('should throw an error if no scopes are provided', () => {
|
|
18
21
|
const config = {
|
|
19
22
|
url: 'https://test.googleapis.com',
|
|
20
23
|
};
|
|
21
|
-
expect(() => new GoogleCredentialProvider(config)).toThrow('Scopes must be provided in the oauth config for Google Credentials provider');
|
|
24
|
+
expect(() => new GoogleCredentialProvider(config)).toThrow('Scopes must be provided in the oauth config for Google Credentials provider (or enable allow_unscoped_id_tokens_for_cloud_run to use ID tokens for Cloud Run endpoints)');
|
|
22
25
|
});
|
|
23
26
|
it('should use scopes from the config if provided', () => {
|
|
24
27
|
new GoogleCredentialProvider(validConfig);
|
|
@@ -62,28 +65,119 @@ describe('GoogleCredentialProvider', () => {
|
|
|
62
65
|
};
|
|
63
66
|
expect(() => new GoogleCredentialProvider(config)).toThrow('Host "googleapis.com" is not an allowed host for Google Credential provider.');
|
|
64
67
|
});
|
|
65
|
-
|
|
68
|
+
it('should not allow run.app host even when unscoped ID token flag is not present', () => {
|
|
69
|
+
const config = {
|
|
70
|
+
url: 'https://test.run.app',
|
|
71
|
+
oauth: {
|
|
72
|
+
scopes: ['scope1', 'scope2'],
|
|
73
|
+
},
|
|
74
|
+
};
|
|
75
|
+
expect(() => new GoogleCredentialProvider(config)).toThrow('To enable the Cloud Run MCP Server at https://test.run.app please set allow_unscoped_id_tokens_cloud_run:true in the MCP Server config.');
|
|
76
|
+
});
|
|
77
|
+
describe('with provider instance (Access Tokens)', () => {
|
|
66
78
|
let provider;
|
|
79
|
+
let mockGetAccessToken;
|
|
80
|
+
let mockClient;
|
|
67
81
|
beforeEach(() => {
|
|
82
|
+
// clear and reset mock client before each test
|
|
83
|
+
mockGetAccessToken = vi.fn();
|
|
84
|
+
mockClient = {
|
|
85
|
+
getAccessToken: mockGetAccessToken,
|
|
86
|
+
};
|
|
87
|
+
GoogleAuth.prototype.getClient.mockResolvedValue(mockClient);
|
|
68
88
|
provider = new GoogleCredentialProvider(validConfig);
|
|
69
|
-
vi.clearAllMocks();
|
|
70
89
|
});
|
|
71
90
|
it('should return credentials', async () => {
|
|
72
|
-
|
|
73
|
-
getAccessToken: vi.fn().mockResolvedValue({ token: 'test-token' }),
|
|
74
|
-
};
|
|
75
|
-
GoogleAuth.prototype.getClient.mockResolvedValue(mockClient);
|
|
91
|
+
mockGetAccessToken.mockResolvedValue({ token: 'test-token' });
|
|
76
92
|
const credentials = await provider.tokens();
|
|
77
93
|
expect(credentials?.access_token).toBe('test-token');
|
|
78
94
|
});
|
|
79
95
|
it('should return undefined if access token is not available', async () => {
|
|
80
|
-
|
|
81
|
-
getAccessToken: vi.fn().mockResolvedValue({ token: null }),
|
|
82
|
-
};
|
|
83
|
-
GoogleAuth.prototype.getClient.mockResolvedValue(mockClient);
|
|
96
|
+
mockGetAccessToken.mockResolvedValue({ token: null });
|
|
84
97
|
const credentials = await provider.tokens();
|
|
85
98
|
expect(credentials).toBeUndefined();
|
|
86
99
|
});
|
|
100
|
+
it('should return a cached token if it is not expired', async () => {
|
|
101
|
+
vi.useFakeTimers();
|
|
102
|
+
mockClient.credentials = { expiry_date: Date.now() + 3600 * 1000 }; // 1 hour
|
|
103
|
+
mockGetAccessToken.mockResolvedValue({ token: 'test-token' });
|
|
104
|
+
// first call
|
|
105
|
+
const firstTokens = await provider.tokens();
|
|
106
|
+
expect(firstTokens?.access_token).toBe('test-token');
|
|
107
|
+
expect(mockGetAccessToken).toHaveBeenCalledTimes(1);
|
|
108
|
+
// second call
|
|
109
|
+
vi.advanceTimersByTime(1800 * 1000); // Advance time by 30 minutes
|
|
110
|
+
const secondTokens = await provider.tokens();
|
|
111
|
+
expect(secondTokens).toBe(firstTokens);
|
|
112
|
+
expect(mockGetAccessToken).toHaveBeenCalledTimes(1); // Should not be called again
|
|
113
|
+
vi.useRealTimers();
|
|
114
|
+
});
|
|
115
|
+
it('should fetch a new token if the cached token is expired', async () => {
|
|
116
|
+
vi.useFakeTimers();
|
|
117
|
+
// first call
|
|
118
|
+
mockClient.credentials = { expiry_date: Date.now() + 1000 }; // Expires in 1 second
|
|
119
|
+
mockGetAccessToken.mockResolvedValue({ token: 'expired-token' });
|
|
120
|
+
const firstTokens = await provider.tokens();
|
|
121
|
+
expect(firstTokens?.access_token).toBe('expired-token');
|
|
122
|
+
expect(mockGetAccessToken).toHaveBeenCalledTimes(1);
|
|
123
|
+
// second call
|
|
124
|
+
vi.advanceTimersByTime(1001); // Advance time past expiry
|
|
125
|
+
mockClient.credentials = { expiry_date: Date.now() + 3600 * 1000 }; // New expiry
|
|
126
|
+
mockGetAccessToken.mockResolvedValue({ token: 'new-token' });
|
|
127
|
+
const newTokens = await provider.tokens();
|
|
128
|
+
expect(newTokens?.access_token).toBe('new-token');
|
|
129
|
+
expect(mockGetAccessToken).toHaveBeenCalledTimes(2); // new fetch
|
|
130
|
+
vi.useRealTimers();
|
|
131
|
+
});
|
|
132
|
+
});
|
|
133
|
+
describe('ID token flow (allow_unscoped_id_tokens_cloud_run)', () => {
|
|
134
|
+
let mockFetchIdToken;
|
|
135
|
+
let mockIdClient;
|
|
136
|
+
beforeEach(() => {
|
|
137
|
+
mockFetchIdToken = vi.fn();
|
|
138
|
+
mockIdClient = {
|
|
139
|
+
idTokenProvider: {
|
|
140
|
+
fetchIdToken: mockFetchIdToken,
|
|
141
|
+
},
|
|
142
|
+
};
|
|
143
|
+
GoogleAuth.prototype.getIdTokenClient.mockResolvedValue(mockIdClient);
|
|
144
|
+
});
|
|
145
|
+
it('should return ID token when flag is enabled and derive audience from hostname', async () => {
|
|
146
|
+
const config = {
|
|
147
|
+
url: 'https://test.run.app/path',
|
|
148
|
+
allow_unscoped_id_tokens_cloud_run: true,
|
|
149
|
+
};
|
|
150
|
+
const payload = { exp: Math.floor(Date.now() / 1000) + 3600 };
|
|
151
|
+
const validToken = `header.${Buffer.from(JSON.stringify(payload)).toString('base64')}.signature`;
|
|
152
|
+
mockFetchIdToken.mockResolvedValue(validToken);
|
|
153
|
+
const provider = new GoogleCredentialProvider(config);
|
|
154
|
+
const tokens = await provider.tokens();
|
|
155
|
+
expect(tokens?.access_token).toBe(validToken);
|
|
156
|
+
expect(GoogleAuth.prototype.getIdTokenClient).toHaveBeenCalledWith('test.run.app');
|
|
157
|
+
expect(mockFetchIdToken).toHaveBeenCalledWith('test.run.app');
|
|
158
|
+
});
|
|
159
|
+
it('should return undefined and log error when fetching ID token fails', async () => {
|
|
160
|
+
const config = {
|
|
161
|
+
url: 'https://test.run.app/path',
|
|
162
|
+
allow_unscoped_id_tokens_cloud_run: true,
|
|
163
|
+
};
|
|
164
|
+
const consoleErrorSpy = vi
|
|
165
|
+
.spyOn(console, 'error')
|
|
166
|
+
.mockImplementation(() => { });
|
|
167
|
+
mockFetchIdToken.mockRejectedValue(new Error('Fetch failed'));
|
|
168
|
+
const provider = new GoogleCredentialProvider(config);
|
|
169
|
+
const tokens = await provider.tokens();
|
|
170
|
+
expect(tokens).toBeUndefined();
|
|
171
|
+
expect(consoleErrorSpy).toHaveBeenCalledWith('Failed to get ID token from Google ADC', expect.any(Error));
|
|
172
|
+
consoleErrorSpy.mockRestore();
|
|
173
|
+
});
|
|
174
|
+
it('should not require scopes when flag allow_unscoped_id_tokens_cloud_run is true', () => {
|
|
175
|
+
const config = {
|
|
176
|
+
url: 'https://test.run.app',
|
|
177
|
+
allow_unscoped_id_tokens_cloud_run: true,
|
|
178
|
+
};
|
|
179
|
+
expect(() => new GoogleCredentialProvider(config)).not.toThrow();
|
|
180
|
+
});
|
|
87
181
|
});
|
|
88
182
|
});
|
|
89
183
|
//# sourceMappingURL=google-auth-provider.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google-auth-provider.test.js","sourceRoot":"","sources":["../../../src/mcp/google-auth-provider.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAG9D,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;AAE/B,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,MAAM,WAAW,GAAG;QAClB,GAAG,EAAE,6BAA6B;QAClC,KAAK,EAAE;YACL,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;SAC7B;KACiB,CAAC;IAErB,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,MAAM,GAAG;YACb,GAAG,EAAE,6BAA6B;SAChB,CAAC;QACrB,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CACxD,
|
|
1
|
+
{"version":3,"file":"google-auth-provider.test.js","sourceRoot":"","sources":["../../../src/mcp/google-auth-provider.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -431,7 +431,7 @@ export class MCPOAuthProvider {
|
|
|
431
431
|
...config,
|
|
432
432
|
authorizationUrl: discoveredConfig.authorizationUrl,
|
|
433
433
|
tokenUrl: discoveredConfig.tokenUrl,
|
|
434
|
-
scopes:
|
|
434
|
+
scopes: config.scopes || discoveredConfig.scopes || [],
|
|
435
435
|
// Preserve existing client credentials
|
|
436
436
|
clientId: config.clientId,
|
|
437
437
|
clientSecret: config.clientSecret,
|
|
@@ -452,7 +452,7 @@ export class MCPOAuthProvider {
|
|
|
452
452
|
...config,
|
|
453
453
|
authorizationUrl: discoveredConfig.authorizationUrl,
|
|
454
454
|
tokenUrl: discoveredConfig.tokenUrl,
|
|
455
|
-
scopes:
|
|
455
|
+
scopes: config.scopes || discoveredConfig.scopes || [],
|
|
456
456
|
registrationUrl: discoveredConfig.registrationUrl,
|
|
457
457
|
// Preserve existing client credentials
|
|
458
458
|
clientId: config.clientId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth-provider.js","sourceRoot":"","sources":["../../../src/mcp/oauth-provider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"oauth-provider.js","sourceRoot":"","sources":["../../../src/mcp/oauth-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -842,6 +842,136 @@ describe('MCPOAuthProvider', () => {
|
|
|
842
842
|
expect(url.hash).toBe('#login');
|
|
843
843
|
expect(url.pathname).toBe('/authorize');
|
|
844
844
|
});
|
|
845
|
+
it('should use user-configured scopes over discovered scopes', async () => {
|
|
846
|
+
let capturedUrl;
|
|
847
|
+
mockOpenBrowserSecurely.mockImplementation((url) => {
|
|
848
|
+
capturedUrl = url;
|
|
849
|
+
return Promise.resolve();
|
|
850
|
+
});
|
|
851
|
+
const configWithUserScopes = {
|
|
852
|
+
...mockConfig,
|
|
853
|
+
clientId: 'test-client-id',
|
|
854
|
+
clientSecret: 'test-client-secret',
|
|
855
|
+
scopes: ['user-scope'],
|
|
856
|
+
};
|
|
857
|
+
delete configWithUserScopes.authorizationUrl;
|
|
858
|
+
delete configWithUserScopes.tokenUrl;
|
|
859
|
+
const mockResourceMetadata = {
|
|
860
|
+
authorization_servers: ['https://discovered.auth.com'],
|
|
861
|
+
};
|
|
862
|
+
const mockAuthServerMetadata = {
|
|
863
|
+
authorization_endpoint: 'https://discovered.auth.com/authorize',
|
|
864
|
+
token_endpoint: 'https://discovered.auth.com/token',
|
|
865
|
+
scopes_supported: ['discovered-scope'],
|
|
866
|
+
};
|
|
867
|
+
mockFetch
|
|
868
|
+
.mockResolvedValueOnce(createMockResponse({ ok: true, status: 200 }))
|
|
869
|
+
.mockResolvedValueOnce(createMockResponse({
|
|
870
|
+
ok: true,
|
|
871
|
+
contentType: 'application/json',
|
|
872
|
+
text: JSON.stringify(mockResourceMetadata),
|
|
873
|
+
json: mockResourceMetadata,
|
|
874
|
+
}))
|
|
875
|
+
.mockResolvedValueOnce(createMockResponse({
|
|
876
|
+
ok: true,
|
|
877
|
+
contentType: 'application/json',
|
|
878
|
+
text: JSON.stringify(mockAuthServerMetadata),
|
|
879
|
+
json: mockAuthServerMetadata,
|
|
880
|
+
}));
|
|
881
|
+
// Setup callback handler
|
|
882
|
+
let callbackHandler;
|
|
883
|
+
vi.mocked(http.createServer).mockImplementation((handler) => {
|
|
884
|
+
callbackHandler = handler;
|
|
885
|
+
return mockHttpServer;
|
|
886
|
+
});
|
|
887
|
+
mockHttpServer.listen.mockImplementation((port, callback) => {
|
|
888
|
+
callback?.();
|
|
889
|
+
setTimeout(() => {
|
|
890
|
+
const mockReq = {
|
|
891
|
+
url: '/oauth/callback?code=auth_code&state=bW9ja19zdGF0ZV8xNl9ieXRlcw',
|
|
892
|
+
};
|
|
893
|
+
const mockRes = { writeHead: vi.fn(), end: vi.fn() };
|
|
894
|
+
callbackHandler(mockReq, mockRes);
|
|
895
|
+
}, 10);
|
|
896
|
+
});
|
|
897
|
+
// Mock token exchange
|
|
898
|
+
mockFetch.mockResolvedValueOnce(createMockResponse({
|
|
899
|
+
ok: true,
|
|
900
|
+
contentType: 'application/json',
|
|
901
|
+
text: JSON.stringify(mockTokenResponse),
|
|
902
|
+
json: mockTokenResponse,
|
|
903
|
+
}));
|
|
904
|
+
const authProvider = new MCPOAuthProvider();
|
|
905
|
+
await authProvider.authenticate('test-server', configWithUserScopes, 'https://api.example.com');
|
|
906
|
+
expect(capturedUrl).toBeDefined();
|
|
907
|
+
const url = new URL(capturedUrl);
|
|
908
|
+
expect(url.searchParams.get('scope')).toBe('user-scope');
|
|
909
|
+
});
|
|
910
|
+
it('should use discovered scopes when no user-configured scopes are provided', async () => {
|
|
911
|
+
let capturedUrl;
|
|
912
|
+
mockOpenBrowserSecurely.mockImplementation((url) => {
|
|
913
|
+
capturedUrl = url;
|
|
914
|
+
return Promise.resolve();
|
|
915
|
+
});
|
|
916
|
+
const configWithoutScopes = {
|
|
917
|
+
...mockConfig,
|
|
918
|
+
clientId: 'test-client-id',
|
|
919
|
+
clientSecret: 'test-client-secret',
|
|
920
|
+
};
|
|
921
|
+
delete configWithoutScopes.scopes;
|
|
922
|
+
delete configWithoutScopes.authorizationUrl;
|
|
923
|
+
delete configWithoutScopes.tokenUrl;
|
|
924
|
+
const mockResourceMetadata = {
|
|
925
|
+
authorization_servers: ['https://discovered.auth.com'],
|
|
926
|
+
};
|
|
927
|
+
const mockAuthServerMetadata = {
|
|
928
|
+
authorization_endpoint: 'https://discovered.auth.com/authorize',
|
|
929
|
+
token_endpoint: 'https://discovered.auth.com/token',
|
|
930
|
+
scopes_supported: ['discovered-scope-1', 'discovered-scope-2'],
|
|
931
|
+
};
|
|
932
|
+
mockFetch
|
|
933
|
+
.mockResolvedValueOnce(createMockResponse({ ok: true, status: 200 }))
|
|
934
|
+
.mockResolvedValueOnce(createMockResponse({
|
|
935
|
+
ok: true,
|
|
936
|
+
contentType: 'application/json',
|
|
937
|
+
text: JSON.stringify(mockResourceMetadata),
|
|
938
|
+
json: mockResourceMetadata,
|
|
939
|
+
}))
|
|
940
|
+
.mockResolvedValueOnce(createMockResponse({
|
|
941
|
+
ok: true,
|
|
942
|
+
contentType: 'application/json',
|
|
943
|
+
text: JSON.stringify(mockAuthServerMetadata),
|
|
944
|
+
json: mockAuthServerMetadata,
|
|
945
|
+
}));
|
|
946
|
+
// Setup callback handler
|
|
947
|
+
let callbackHandler;
|
|
948
|
+
vi.mocked(http.createServer).mockImplementation((handler) => {
|
|
949
|
+
callbackHandler = handler;
|
|
950
|
+
return mockHttpServer;
|
|
951
|
+
});
|
|
952
|
+
mockHttpServer.listen.mockImplementation((port, callback) => {
|
|
953
|
+
callback?.();
|
|
954
|
+
setTimeout(() => {
|
|
955
|
+
const mockReq = {
|
|
956
|
+
url: '/oauth/callback?code=auth_code&state=bW9ja19zdGF0ZV8xNl9ieXRlcw',
|
|
957
|
+
};
|
|
958
|
+
const mockRes = { writeHead: vi.fn(), end: vi.fn() };
|
|
959
|
+
callbackHandler(mockReq, mockRes);
|
|
960
|
+
}, 10);
|
|
961
|
+
});
|
|
962
|
+
// Mock token exchange
|
|
963
|
+
mockFetch.mockResolvedValueOnce(createMockResponse({
|
|
964
|
+
ok: true,
|
|
965
|
+
contentType: 'application/json',
|
|
966
|
+
text: JSON.stringify(mockTokenResponse),
|
|
967
|
+
json: mockTokenResponse,
|
|
968
|
+
}));
|
|
969
|
+
const authProvider = new MCPOAuthProvider();
|
|
970
|
+
await authProvider.authenticate('test-server', configWithoutScopes, 'https://api.example.com');
|
|
971
|
+
expect(capturedUrl).toBeDefined();
|
|
972
|
+
const url = new URL(capturedUrl);
|
|
973
|
+
expect(url.searchParams.get('scope')).toBe('discovered-scope-1 discovered-scope-2');
|
|
974
|
+
});
|
|
845
975
|
});
|
|
846
976
|
});
|
|
847
977
|
//# sourceMappingURL=oauth-provider.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth-provider.test.js","sourceRoot":"","sources":["../../../src/mcp/oauth-provider.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"oauth-provider.test.js","sourceRoot":"","sources":["../../../src/mcp/oauth-provider.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE5B,+BAA+B;AAC/B,MAAM,uBAAuB,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AAC1D,EAAE,CAAC,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE,CAAC,CAAC;IACpD,mBAAmB,EAAE,uBAAuB;CAC7C,CAAC,CAAC,CAAC;AACJ,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACvB,EAAE,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACvC,MAAM,aAAa,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAC9B,MAAM,kBAAkB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IACnC,MAAM,kBAAkB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IACnC,MAAM,qBAAqB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAEtC,OAAO;QACL,oBAAoB,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;YACjC,SAAS,EAAE,aAAa;YACxB,cAAc,EAAE,kBAAkB;YAClC,cAAc,EAAE,kBAAkB;YAClC,iBAAiB,EAAE,qBAAqB;SACzC,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAMtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAMhE,sBAAsB;AACtB,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;AAC1B,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC;AAEzB,qEAAqE;AACrE,MAAM,kBAAkB,GAAG,CAAC,OAM3B,EAAE,EAAE;IACH,MAAM,QAAQ,GAQV;QACF,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,OAAO,EAAE;YACP,GAAG,EAAE,CAAC,IAAY,EAAE,EAAE;gBACpB,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,cAAc,EAAE,CAAC;oBAC1C,OAAO,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC;gBACrC,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;SACF;KACF,CAAC;IAEF,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC/B,QAAQ,CAAC,IAAI;YACX,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;gBAC9B,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAc,CAAC;gBAC/C,CAAC,CAAE,OAAO,CAAC,IAA8B,CAAC;IAChD,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC/B,QAAQ,CAAC,IAAI;YACX,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU;gBAChC,CAAC,CAAE,OAAO,CAAC,IAA+B;gBAC1C,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,sEAAsE;AACtE,MAAM,cAAc,GAAG;IACrB,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE;IACf,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;IACd,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;CACZ,CAAC;AACF,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1B,YAAY,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC;CAC1C,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,MAAM,UAAU,GAAmB;QACjC,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,gBAAgB;QAC1B,YAAY,EAAE,oBAAoB;QAClC,gBAAgB,EAAE,oCAAoC;QACtD,QAAQ,EAAE,gCAAgC;QAC1C,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;QACzB,WAAW,EAAE,sCAAsC;QACnD,SAAS,EAAE,CAAC,yBAAyB,CAAC;KACvC,CAAC;IAEF,MAAM,SAAS,GAAe;QAC5B,WAAW,EAAE,kBAAkB;QAC/B,YAAY,EAAE,mBAAmB;QACjC,SAAS,EAAE,QAAQ;QACnB,KAAK,EAAE,YAAY;QACnB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;KAChC,CAAC;IAEF,MAAM,iBAAiB,GAAuB;QAC5C,YAAY,EAAE,kBAAkB;QAChC,UAAU,EAAE,QAAQ;QACpB,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE,mBAAmB;QAClC,KAAK,EAAE,YAAY;KACpB,CAAC;IAEF,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAC;QACnB,uBAAuB,CAAC,SAAS,EAAE,CAAC;QACpC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACtD,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACvD,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAExD,wBAAwB;QACxB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAY,EAAE,EAAE;YAChE,IAAI,IAAI,KAAK,EAAE;gBAAE,OAAO,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;YACxE,IAAI,IAAI,KAAK,EAAE;gBAAE,OAAO,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACxD,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC;YAC3C,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,cAAc,EAAE;YAChC,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,qBAAqB,CAAC;SAC7B,CAAC,CAAC;QAE7B,0DAA0D;QAC1D,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,EAAE;YACxD,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;gBAChB,OAAO,MAAM,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;YAChE,CAAC;iBAAM,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;gBACvB,OAAO,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,qBAAqB;QACrB,MAAM,YAAY,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAChD,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC/D,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,EAAE,CAAC,eAAe,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,4BAA4B;YAC5B,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,0BAA0B;gBAC1B,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,qEAAqE;qBAC3E,CAAC;oBACF,MAAM,OAAO,GAAG;wBACd,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;wBAClB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;qBACb,CAAC;oBACD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,sBAAsB;YACtB,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,iBAAiB;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YAE1E,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACrB,WAAW,EAAE,kBAAkB;gBAC/B,YAAY,EAAE,mBAAmB;gBACjC,SAAS,EAAE,QAAQ;gBACnB,KAAK,EAAE,YAAY;gBACnB,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;aAC9B,CAAC,CAAC;YAEH,MAAM,CAAC,uBAAuB,CAAC,CAAC,oBAAoB,CAClD,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,CACrC,CAAC;YACF,MAAM,YAAY,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAChD,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,oBAAoB,CACjD,aAAa,EACb,MAAM,CAAC,gBAAgB,CAAC,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC,EAC5D,gBAAgB,EAChB,gCAAgC,EAChC,SAAS,CACV,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YAChF,8BAA8B;YAC9B,MAAM,iBAAiB,GAAmB;gBACxC,GAAG,UAAU;gBACb,QAAQ,EAAE,gBAAgB;gBAC1B,YAAY,EAAE,oBAAoB;aACnC,CAAC;YACF,OAAO,iBAAiB,CAAC,gBAAgB,CAAC;YAC1C,OAAO,iBAAiB,CAAC,QAAQ,CAAC;YAElC,MAAM,oBAAoB,GAAG;gBAC3B,qBAAqB,EAAE,CAAC,6BAA6B,CAAC;aACvD,CAAC;YAEF,MAAM,sBAAsB,GAAG;gBAC7B,sBAAsB,EAAE,uCAAuC;gBAC/D,cAAc,EAAE,mCAAmC;gBACnD,gBAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;aACpC,CAAC;YAEF,+CAA+C;YAC/C,SAAS;iBACN,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,MAAM,EAAE,GAAG;aACZ,CAAC,CACH;iBACA,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;gBAC1C,IAAI,EAAE,oBAAoB;aAC3B,CAAC,CACH;iBACA,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC;gBAC5C,IAAI,EAAE,sBAAsB;aAC7B,CAAC,CACH,CAAC;YAEJ,yBAAyB;YACzB,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,qEAAqE;qBAC3E,CAAC;oBACF,MAAM,OAAO,GAAG;wBACd,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;wBAClB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;qBACb,CAAC;oBACD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,+CAA+C;YAC/C,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,iBAAiB;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,CAC5C,aAAa,EACb,iBAAiB,EACjB,yBAAyB,CAC1B,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;YAC7B,MAAM,CAAC,SAAS,CAAC,CAAC,oBAAoB,CACpC,mCAAmC,EACnC,MAAM,CAAC,gBAAgB,CAAC;gBACtB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC;oBAC/B,cAAc,EAAE,mCAAmC;iBACpD,CAAC;aACH,CAAC,CACH,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2GAA2G,EAAE,KAAK,IAAI,EAAE;YACzH,MAAM,mBAAmB,GAAmB;gBAC1C,GAAG,UAAU;gBACb,eAAe,EAAE,mCAAmC;aACrD,CAAC;YACF,OAAO,mBAAmB,CAAC,QAAQ,CAAC;YAEpC,MAAM,wBAAwB,GAAoC;gBAChE,SAAS,EAAE,mBAAmB;gBAC9B,aAAa,EAAE,uBAAuB;gBACtC,aAAa,EAAE,CAAC,sCAAsC,CAAC;gBACvD,WAAW,EAAE,CAAC,oBAAoB,EAAE,eAAe,CAAC;gBACpD,cAAc,EAAE,CAAC,MAAM,CAAC;gBACxB,0BAA0B,EAAE,MAAM;aACnC,CAAC;YAEF,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC;gBAC9C,IAAI,EAAE,wBAAwB;aAC/B,CAAC,CACH,CAAC;YAEF,yBAAyB;YACzB,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,qEAAqE;qBAC3E,CAAC;oBACF,MAAM,OAAO,GAAG;wBACd,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;wBAClB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;qBACb,CAAC;oBACD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,sBAAsB;YACtB,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,iBAAiB;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,CAC5C,aAAa,EACb,mBAAmB,CACpB,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;YAC7B,MAAM,CAAC,SAAS,CAAC,CAAC,oBAAoB,CACpC,mCAAmC,EACnC,MAAM,CAAC,gBAAgB,CAAC;gBACtB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;aAChD,CAAC,CACH,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+GAA+G,EAAE,KAAK,IAAI,EAAE;YAC7H,MAAM,mBAAmB,GAAmB,EAAE,GAAG,UAAU,EAAE,CAAC;YAC9D,OAAO,mBAAmB,CAAC,QAAQ,CAAC;YAEpC,MAAM,wBAAwB,GAAoC;gBAChE,SAAS,EAAE,mBAAmB;gBAC9B,aAAa,EAAE,uBAAuB;gBACtC,aAAa,EAAE,CAAC,sCAAsC,CAAC;gBACvD,WAAW,EAAE,CAAC,oBAAoB,EAAE,eAAe,CAAC;gBACpD,cAAc,EAAE,CAAC,MAAM,CAAC;gBACxB,0BAA0B,EAAE,MAAM;aACnC,CAAC;YAEF,MAAM,sBAAsB,GAAqC;gBAC/D,MAAM,EAAE,0BAA0B;gBAClC,sBAAsB,EAAE,oCAAoC;gBAC5D,cAAc,EAAE,gCAAgC;gBAChD,qBAAqB,EAAE,mCAAmC;aAC3D,CAAC;YAEF,SAAS;iBACN,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC;gBAC5C,IAAI,EAAE,sBAAsB;aAC7B,CAAC,CACH;iBACA,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC;gBAC9C,IAAI,EAAE,wBAAwB;aAC/B,CAAC,CACH,CAAC;YAEJ,yBAAyB;YACzB,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,qEAAqE;qBAC3E,CAAC;oBACF,MAAM,OAAO,GAAG;wBACd,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;wBAClB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;qBACb,CAAC;oBACD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,sBAAsB;YACtB,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,iBAAiB;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,CAC5C,aAAa,EACb,mBAAmB,CACpB,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;YAC7B,MAAM,CAAC,SAAS,CAAC,CAAC,oBAAoB,CACpC,mCAAmC,EACnC,MAAM,CAAC,gBAAgB,CAAC;gBACtB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;aAChD,CAAC,CACH,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uIAAuI,EAAE,KAAK,IAAI,EAAE;YACrJ,MAAM,sCAAsC,GAAmB;gBAC7D,GAAG,UAAU;aACd,CAAC;YACF,OAAO,sCAAsC,CAAC,QAAQ,CAAC;YACvD,OAAO,sCAAsC,CAAC,gBAAgB,CAAC;YAE/D,MAAM,oBAAoB,GAAmC;gBAC3D,QAAQ,EAAE,yBAAyB;gBACnC,qBAAqB,EAAE,CAAC,0BAA0B,CAAC;aACpD,CAAC;YAEF,MAAM,sBAAsB,GAAqC;gBAC/D,MAAM,EAAE,0BAA0B;gBAClC,sBAAsB,EAAE,oCAAoC;gBAC5D,cAAc,EAAE,gCAAgC;gBAChD,qBAAqB,EAAE,mCAAmC;aAC3D,CAAC;YAEF,MAAM,wBAAwB,GAAoC;gBAChE,SAAS,EAAE,mBAAmB;gBAC9B,aAAa,EAAE,uBAAuB;gBACtC,aAAa,EAAE,CAAC,sCAAsC,CAAC;gBACvD,WAAW,EAAE,CAAC,oBAAoB,EAAE,eAAe,CAAC;gBACpD,cAAc,EAAE,CAAC,MAAM,CAAC;gBACxB,0BAA0B,EAAE,MAAM;aACnC,CAAC;YAEF,SAAS;iBACN,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,MAAM,EAAE,GAAG;aACZ,CAAC,CACH;iBACA,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;gBAC1C,IAAI,EAAE,oBAAoB;aAC3B,CAAC,CACH;iBACA,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC;gBAC5C,IAAI,EAAE,sBAAsB;aAC7B,CAAC,CACH;iBACA,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC;gBAC9C,IAAI,EAAE,wBAAwB;aAC/B,CAAC,CACH,CAAC;YAEJ,yBAAyB;YACzB,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,qEAAqE;qBAC3E,CAAC;oBACF,MAAM,OAAO,GAAG;wBACd,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;wBAClB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;qBACb,CAAC;oBACD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,sBAAsB;YACtB,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,iBAAiB;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,CAC5C,aAAa,EACb,sCAAsC,EACtC,yBAAyB,CAC1B,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;YAC7B,MAAM,CAAC,SAAS,CAAC,CAAC,oBAAoB,CACpC,mCAAmC,EACnC,MAAM,CAAC,gBAAgB,CAAC;gBACtB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;aAChD,CAAC,CACH,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;YACnD,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,8EAA8E;qBACpF,CAAC;oBACF,MAAM,OAAO,GAAG;wBACd,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;wBAClB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;qBACb,CAAC;oBACD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,CACV,YAAY,CAAC,YAAY,CAAC,aAAa,EAAE,UAAU,CAAC,CACrD,CAAC,OAAO,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,sDAAsD;qBAC5D,CAAC;oBACF,MAAM,OAAO,GAAG;wBACd,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;wBAClB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;qBACb,CAAC;oBACD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,CACV,YAAY,CAAC,YAAY,CAAC,aAAa,EAAE,UAAU,CAAC,CACrD,CAAC,OAAO,CAAC,OAAO,CAAC,uCAAuC,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YACpD,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,qEAAqE;qBAC3E,CAAC;oBACF,MAAM,OAAO,GAAG;wBACd,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;wBAClB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;qBACb,CAAC;oBACD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,GAAG;gBACX,WAAW,EAAE,mCAAmC;gBAChD,IAAI,EAAE,qDAAqD;aAC5D,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,CACV,YAAY,CAAC,YAAY,CAAC,aAAa,EAAE,UAAU,CAAC,CACrD,CAAC,OAAO,CAAC,OAAO,CAAC,sDAAsD,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;YAC9C,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAC7C,GAAG,EAAE,CAAC,cAAwC,CAC/C,CAAC;YAEF,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,4CAA4C;YAC9C,CAAC,CAAC,CAAC;YAEH,iDAAiD;YACjD,MAAM,kBAAkB,GAAG,MAAM,CAAC,UAAU,CAAC;YAC7C,MAAM,CAAC,UAAU,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;gBAC5C,IAAI,KAAK,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;oBAC5B,mBAAmB;oBACnB,QAAQ,EAAE,CAAC;gBACb,CAAC;gBACD,OAAO,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YACzC,CAAC,CAAiC,CAAC;YAEnC,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,CACV,YAAY,CAAC,YAAY,CAAC,aAAa,EAAE,UAAU,CAAC,CACrD,CAAC,OAAO,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;YAE5C,MAAM,CAAC,UAAU,GAAG,kBAAkB,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAClC,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,eAAe,GAAG;gBACtB,YAAY,EAAE,kBAAkB;gBAChC,UAAU,EAAE,QAAQ;gBACpB,UAAU,EAAE,IAAI;gBAChB,aAAa,EAAE,mBAAmB;aACnC,CAAC;YAEF,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;gBACrC,IAAI,EAAE,eAAe;aACtB,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,kBAAkB,CAClD,UAAU,EACV,mBAAmB,EACnB,gCAAgC,CACjC,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;YACxC,MAAM,CAAC,SAAS,CAAC,CAAC,oBAAoB,CACpC,gCAAgC,EAChC,MAAM,CAAC,gBAAgB,CAAC;gBACtB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,mCAAmC;oBACnD,MAAM,EAAE,qDAAqD;iBAC9D;gBACD,IAAI,EAAE,MAAM,CAAC,gBAAgB,CAAC,0BAA0B,CAAC;aAC1D,CAAC,CACH,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC9E,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,iBAAiB;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,YAAY,CAAC,kBAAkB,CACnC,UAAU,EACV,eAAe,EACf,gCAAgC,CACjC,CAAC;YAEF,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,kCAAkC,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;YACnD,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,GAAG;gBACX,WAAW,EAAE,mCAAmC;gBAChD,IAAI,EAAE,+DAA+D;aACtE,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,CACV,YAAY,CAAC,kBAAkB,CAC7B,UAAU,EACV,uBAAuB,EACvB,gCAAgC,CACjC,CACF,CAAC,OAAO,CAAC,OAAO,CACf,+DAA+D,CAChE,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC7B,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;YAC1D,MAAM,gBAAgB,GAAG;gBACvB,UAAU,EAAE,aAAa;gBACzB,KAAK,EAAE,SAAS;gBAChB,QAAQ,EAAE,gBAAgB;gBAC1B,QAAQ,EAAE,gCAAgC;gBAC1C,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAChD,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,iBAAiB,CACtD,gBAAgB,CACjB,CAAC;YACF,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAE9D,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,aAAa,CAC7C,aAAa,EACb,UAAU,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,kBAAkB,GAAG;gBACzB,UAAU,EAAE,aAAa;gBACzB,KAAK,EAAE,EAAE,GAAG,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE;gBACxD,QAAQ,EAAE,gBAAgB;gBAC1B,QAAQ,EAAE,gCAAgC;gBAC1C,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAChD,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,iBAAiB,CACtD,kBAAkB,CACnB,CAAC;YACF,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAE7D,MAAM,eAAe,GAAG;gBACtB,YAAY,EAAE,kBAAkB;gBAChC,UAAU,EAAE,QAAQ;gBACpB,UAAU,EAAE,IAAI;gBAChB,aAAa,EAAE,mBAAmB;aACnC,CAAC;YAEF,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;gBACrC,IAAI,EAAE,eAAe;aACtB,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,aAAa,CAC7C,aAAa,EACb,UAAU,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACxC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,oBAAoB,CACjD,aAAa,EACb,MAAM,CAAC,gBAAgB,CAAC,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC,EAC5D,gBAAgB,EAChB,gCAAgC,EAChC,SAAS,CACV,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,YAAY,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAChD,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAE/D,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,aAAa,CAC7C,aAAa,EACb,UAAU,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,MAAM,kBAAkB,GAAG;gBACzB,UAAU,EAAE,aAAa;gBACzB,KAAK,EAAE,EAAE,GAAG,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE;gBACxD,QAAQ,EAAE,gBAAgB;gBAC1B,QAAQ,EAAE,gCAAgC;gBAC1C,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAChD,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,iBAAiB,CACtD,kBAAkB,CACnB,CAAC;YACF,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC7D,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAEvE,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,GAAG;gBACX,WAAW,EAAE,mCAAmC;gBAChD,IAAI,EAAE,+DAA+D;aACtE,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,aAAa,CAC7C,aAAa,EACb,UAAU,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC1B,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,CACzD,aAAa,CACd,CAAC;YACF,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,oBAAoB,CACxC,MAAM,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,CACnD,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YACvE,MAAM,mBAAmB,GAAG;gBAC1B,UAAU,EAAE,aAAa;gBACzB,KAAK,EAAE;oBACL,GAAG,SAAS;oBACZ,YAAY,EAAE,SAAS;oBACvB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;iBAChC;gBACD,QAAQ,EAAE,gBAAgB;gBAC1B,QAAQ,EAAE,gCAAgC;gBAC1C,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAChD,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,iBAAiB,CACtD,mBAAmB,CACpB,CAAC;YACF,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAE7D,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,aAAa,CAC7C,aAAa,EACb,UAAU,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;YACrD,qEAAqE;YACrE,wCAAwC;YACxC,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,qEAAqE;qBAC3E,CAAC;oBACF,MAAM,OAAO,GAAG;wBACd,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;wBAClB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;qBACb,CAAC;oBACD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,iBAAiB;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,YAAY,CAAC,YAAY,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YAE3D,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB;YACrE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ;YAC7D,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAC1C,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;YAC1E,+CAA+C;YAC/C,IAAI,WAA+B,CAAC;YACpC,uBAAuB,CAAC,kBAAkB,CAAC,CAAC,GAAW,EAAE,EAAE;gBACzD,WAAW,GAAG,GAAG,CAAC;gBAClB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,qEAAqE;qBAC3E,CAAC;oBACF,MAAM,OAAO,GAAG;wBACd,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;wBAClB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;qBACb,CAAC;oBACD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,iBAAiB;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,YAAY,CAAC,YAAY,CAC7B,aAAa,EACb,UAAU,EACV,0BAA0B,CAC3B,CAAC;YAEF,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;YAClC,MAAM,CAAC,WAAY,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;YACrD,MAAM,CAAC,WAAY,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;YAC3D,MAAM,CAAC,WAAY,CAAC,CAAC,SAAS,CAAC,oCAAoC,CAAC,CAAC;YACrE,MAAM,CAAC,WAAY,CAAC,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC;YAC7D,MAAM,CAAC,WAAY,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;YACnD,MAAM,CAAC,WAAY,CAAC,CAAC,SAAS,CAAC,yCAAyC,CAAC,CAAC;YAC1E,MAAM,CAAC,WAAY,CAAC,CAAC,SAAS,CAAC,wCAAwC,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0FAA0F,EAAE,KAAK,IAAI,EAAE;YACxG,+CAA+C;YAC/C,IAAI,WAAmB,CAAC;YACxB,uBAAuB,CAAC,kBAAkB,CAAC,CAAC,GAAW,EAAE,EAAE;gBACzD,WAAW,GAAG,GAAG,CAAC;gBAClB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,qEAAqE;qBAC3E,CAAC;oBACF,MAAM,OAAO,GAAG;wBACd,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;wBAClB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;qBACb,CAAC;oBACD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,iBAAiB;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,qBAAqB,GAAG;gBAC5B,GAAG,UAAU;gBACb,gBAAgB,EAAE,kDAAkD;aACrE,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,YAAY,CAAC,YAAY,CAAC,aAAa,EAAE,qBAAqB,CAAC,CAAC;YAEtE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,WAAY,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtD,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACjE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAC3E,+CAA+C;YAC/C,IAAI,WAAmB,CAAC;YACxB,uBAAuB,CAAC,kBAAkB,CAAC,CAAC,GAAW,EAAE,EAAE;gBACzD,WAAW,GAAG,GAAG,CAAC;gBAClB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,qEAAqE;qBAC3E,CAAC;oBACF,MAAM,OAAO,GAAG;wBACd,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;wBAClB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;qBACb,CAAC;oBACD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,iBAAiB;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,kBAAkB,GAAG;gBACzB,GAAG,UAAU;gBACb,gBAAgB,EAAE,0CAA0C;aAC7D,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,YAAY,CAAC,YAAY,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;YAEnE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,WAAY,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACjE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YACxE,IAAI,WAA+B,CAAC;YACpC,uBAAuB,CAAC,kBAAkB,CAAC,CAAC,GAAW,EAAE,EAAE;gBACzD,WAAW,GAAG,GAAG,CAAC;gBAClB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,MAAM,oBAAoB,GAAmB;gBAC3C,GAAG,UAAU;gBACb,QAAQ,EAAE,gBAAgB;gBAC1B,YAAY,EAAE,oBAAoB;gBAClC,MAAM,EAAE,CAAC,YAAY,CAAC;aACvB,CAAC;YACF,OAAO,oBAAoB,CAAC,gBAAgB,CAAC;YAC7C,OAAO,oBAAoB,CAAC,QAAQ,CAAC;YAErC,MAAM,oBAAoB,GAAG;gBAC3B,qBAAqB,EAAE,CAAC,6BAA6B,CAAC;aACvD,CAAC;YAEF,MAAM,sBAAsB,GAAG;gBAC7B,sBAAsB,EAAE,uCAAuC;gBAC/D,cAAc,EAAE,mCAAmC;gBACnD,gBAAgB,EAAE,CAAC,kBAAkB,CAAC;aACvC,CAAC;YAEF,SAAS;iBACN,qBAAqB,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;iBACpE,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;gBAC1C,IAAI,EAAE,oBAAoB;aAC3B,CAAC,CACH;iBACA,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC;gBAC5C,IAAI,EAAE,sBAAsB;aAC7B,CAAC,CACH,CAAC;YAEJ,yBAAyB;YACzB,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,iEAAiE;qBACvE,CAAC;oBACF,MAAM,OAAO,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;oBACpD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,sBAAsB;YACtB,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,iBAAiB;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,YAAY,CAAC,YAAY,CAC7B,aAAa,EACb,oBAAoB,EACpB,yBAAyB,CAC1B,CAAC;YAEF,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;YAClC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,WAAY,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;YACxF,IAAI,WAA+B,CAAC;YACpC,uBAAuB,CAAC,kBAAkB,CAAC,CAAC,GAAW,EAAE,EAAE;gBACzD,WAAW,GAAG,GAAG,CAAC;gBAClB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,MAAM,mBAAmB,GAAmB;gBAC1C,GAAG,UAAU;gBACb,QAAQ,EAAE,gBAAgB;gBAC1B,YAAY,EAAE,oBAAoB;aACnC,CAAC;YACF,OAAO,mBAAmB,CAAC,MAAM,CAAC;YAClC,OAAO,mBAAmB,CAAC,gBAAgB,CAAC;YAC5C,OAAO,mBAAmB,CAAC,QAAQ,CAAC;YAEpC,MAAM,oBAAoB,GAAG;gBAC3B,qBAAqB,EAAE,CAAC,6BAA6B,CAAC;aACvD,CAAC;YAEF,MAAM,sBAAsB,GAAG;gBAC7B,sBAAsB,EAAE,uCAAuC;gBAC/D,cAAc,EAAE,mCAAmC;gBACnD,gBAAgB,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;aAC/D,CAAC;YAEF,SAAS;iBACN,qBAAqB,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;iBACpE,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;gBAC1C,IAAI,EAAE,oBAAoB;aAC3B,CAAC,CACH;iBACA,qBAAqB,CACpB,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC;gBAC5C,IAAI,EAAE,sBAAsB;aAC7B,CAAC,CACH,CAAC;YAEJ,yBAAyB;YACzB,IAAI,eAAwB,CAAC;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC1D,eAAe,GAAG,OAAO,CAAC;gBAC1B,OAAO,cAAwC,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC1D,QAAQ,EAAE,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,iEAAiE;qBACvE,CAAC;oBACF,MAAM,OAAO,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;oBACpD,eAAwD,CACvD,OAAO,EACP,OAAO,CACR,CAAC;gBACJ,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,CAAC;YAEH,sBAAsB;YACtB,SAAS,CAAC,qBAAqB,CAC7B,kBAAkB,CAAC;gBACjB,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,iBAAiB;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,YAAY,CAAC,YAAY,CAC7B,aAAa,EACb,mBAAmB,EACnB,yBAAyB,CAC1B,CAAC;YAEF,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;YAClC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,WAAY,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACxC,uCAAuC,CACxC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Copyright 2025 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { coreEvents } from '@google/gemini-cli-core';
|
|
6
7
|
import { promises as fs } from 'node:fs';
|
|
7
8
|
import * as path from 'node:path';
|
|
8
9
|
import { Storage } from '../config/storage.js';
|
|
@@ -51,7 +52,7 @@ export class MCPOAuthTokenStorage {
|
|
|
51
52
|
catch (error) {
|
|
52
53
|
// File doesn't exist or is invalid, return empty map
|
|
53
54
|
if (error.code !== 'ENOENT') {
|
|
54
|
-
|
|
55
|
+
coreEvents.emitFeedback('error', `Failed to load MCP OAuth tokens: ${getErrorMessage(error)}`, error);
|
|
55
56
|
}
|
|
56
57
|
}
|
|
57
58
|
return tokenMap;
|
|
@@ -75,7 +76,7 @@ export class MCPOAuthTokenStorage {
|
|
|
75
76
|
await fs.writeFile(tokenFile, JSON.stringify(tokenArray, null, 2), { mode: 0o600 });
|
|
76
77
|
}
|
|
77
78
|
catch (error) {
|
|
78
|
-
|
|
79
|
+
coreEvents.emitFeedback('error', `Failed to save MCP OAuth token: ${getErrorMessage(error)}`, error);
|
|
79
80
|
throw error;
|
|
80
81
|
}
|
|
81
82
|
}
|
|
@@ -141,7 +142,7 @@ export class MCPOAuthTokenStorage {
|
|
|
141
142
|
}
|
|
142
143
|
}
|
|
143
144
|
catch (error) {
|
|
144
|
-
|
|
145
|
+
coreEvents.emitFeedback('error', `Failed to remove MCP OAuth token: ${getErrorMessage(error)}`, error);
|
|
145
146
|
}
|
|
146
147
|
}
|
|
147
148
|
}
|
|
@@ -172,7 +173,7 @@ export class MCPOAuthTokenStorage {
|
|
|
172
173
|
}
|
|
173
174
|
catch (error) {
|
|
174
175
|
if (error.code !== 'ENOENT') {
|
|
175
|
-
|
|
176
|
+
coreEvents.emitFeedback('error', `Failed to clear MCP OAuth tokens: ${getErrorMessage(error)}`, error);
|
|
176
177
|
}
|
|
177
178
|
}
|
|
178
179
|
}
|