@aws/lsp-codewhisperer 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/out/language-server/codeWhispererSecurityScanServer.d.ts +1 -2
- package/out/language-server/codeWhispererSecurityScanServer.js +137 -25
- package/out/language-server/codeWhispererSecurityScanServer.js.map +1 -1
- package/out/language-server/codeWhispererServer.d.ts +1 -2
- package/out/language-server/codeWhispererServer.js +2 -2
- package/out/language-server/codeWhispererServer.js.map +1 -1
- package/out/language-server/codeWhispererServer.test.js +100 -101
- package/out/language-server/codeWhispererServer.test.js.map +1 -1
- package/out/language-server/codeWhispererService.d.ts +1 -1
- package/out/language-server/codeWhispererService.js.map +1 -1
- package/out/language-server/dependencyGraph/csharpDependencyGraph.d.ts +3 -3
- package/out/language-server/dependencyGraph/csharpDependencyGraph.js +40 -37
- package/out/language-server/dependencyGraph/csharpDependencyGraph.js.map +1 -1
- package/out/language-server/dependencyGraph/csharpDependencyGraph.test.js +106 -78
- package/out/language-server/dependencyGraph/csharpDependencyGraph.test.js.map +1 -1
- package/out/language-server/dependencyGraph/dependencyGraph.d.ts +12 -4
- package/out/language-server/dependencyGraph/dependencyGraph.js +24 -6
- package/out/language-server/dependencyGraph/dependencyGraph.js.map +1 -1
- package/out/language-server/dependencyGraph/dependencyGraphFactory.d.ts +2 -3
- package/out/language-server/dependencyGraph/dependencyGraphFactory.js +2 -2
- package/out/language-server/dependencyGraph/dependencyGraphFactory.js.map +1 -1
- package/out/language-server/languageDetection.d.ts +2 -1
- package/out/language-server/languageDetection.js +2 -1
- package/out/language-server/languageDetection.js.map +1 -1
- package/out/language-server/netTransformServer.d.ts +12 -0
- package/out/language-server/netTransformServer.js +27 -0
- package/out/language-server/netTransformServer.js.map +1 -0
- package/out/language-server/proxy-server.d.ts +2 -2
- package/out/language-server/securityScan/securityScanDiagnosticsProvider.d.ts +29 -0
- package/out/language-server/securityScan/securityScanDiagnosticsProvider.js +129 -0
- package/out/language-server/securityScan/securityScanDiagnosticsProvider.js.map +1 -0
- package/out/language-server/securityScan/securityScanHandler.d.ts +12 -5
- package/out/language-server/securityScan/securityScanHandler.js +69 -19
- package/out/language-server/securityScan/securityScanHandler.js.map +1 -1
- package/out/language-server/securityScan/securityScanHandler.test.js +3 -2
- package/out/language-server/securityScan/securityScanHandler.test.js.map +1 -1
- package/out/language-server/securityScan/types.d.ts +13 -0
- package/out/language-server/session/sessionManager.d.ts +1 -2
- package/out/language-server/session/sessionManager.js.map +1 -1
- package/out/language-server/telemetry/codePercentage.d.ts +1 -1
- package/out/language-server/telemetry/types.d.ts +20 -0
- package/out/language-server/telemetry/userTriggerDecision.test.js +8 -8
- package/out/language-server/telemetry/userTriggerDecision.test.js.map +1 -1
- package/out/language-server/telemetry.test.js +4 -4
- package/out/language-server/telemetry.test.js.map +1 -1
- package/package.json +5 -5
- package/script/generateServiceClient.ts +0 -242
|
@@ -3,10 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const assert = require("assert");
|
|
4
4
|
const path = require("path");
|
|
5
5
|
const Sinon = require("sinon");
|
|
6
|
+
const ts_sinon_1 = require("ts-sinon");
|
|
6
7
|
const csharpDependencyGraph_1 = require("./csharpDependencyGraph");
|
|
7
|
-
describe('
|
|
8
|
+
describe('Test CsharpDependencyGraph', () => {
|
|
8
9
|
let csharpDependencyGraph;
|
|
9
10
|
const mockedGetWorkspaceFolder = Sinon.mock();
|
|
11
|
+
let mockedLogging;
|
|
10
12
|
const projectPathUri = path.resolve(path.join(__dirname, 'sampleWs'));
|
|
11
13
|
const tempDirPath = path.resolve('\\Temp');
|
|
12
14
|
const mockedFs = {
|
|
@@ -24,18 +26,16 @@ describe('test CsharpDependencyGraph', () => {
|
|
|
24
26
|
getWorkspaceFolder: mockedGetWorkspaceFolder,
|
|
25
27
|
fs: mockedFs,
|
|
26
28
|
};
|
|
27
|
-
before(() => {
|
|
28
|
-
csharpDependencyGraph = new csharpDependencyGraph_1.CsharpDependencyGraph(mockedWorkspace);
|
|
29
|
-
});
|
|
30
29
|
beforeEach(() => {
|
|
31
30
|
mockedGetWorkspaceFolder.reset();
|
|
32
31
|
mockedGetWorkspaceFolder.returns(undefined);
|
|
33
|
-
|
|
32
|
+
mockedLogging = (0, ts_sinon_1.stubInterface)();
|
|
33
|
+
csharpDependencyGraph = new csharpDependencyGraph_1.CsharpDependencyGraph(mockedWorkspace, mockedLogging, projectPathUri);
|
|
34
34
|
});
|
|
35
35
|
describe('Test getPayloadSizeLimitInBytes', () => {
|
|
36
36
|
it('should return correct payload size', () => {
|
|
37
37
|
const expectedPayloadSize = Math.pow(2, 20);
|
|
38
|
-
assert.
|
|
38
|
+
assert.strictEqual(csharpDependencyGraph.getPayloadSizeLimitInBytes(), expectedPayloadSize);
|
|
39
39
|
});
|
|
40
40
|
});
|
|
41
41
|
describe('Test getProjectName', () => {
|
|
@@ -45,12 +45,12 @@ describe('test CsharpDependencyGraph', () => {
|
|
|
45
45
|
});
|
|
46
46
|
it('should return current folder name for given file path outside workspace folder', async () => {
|
|
47
47
|
mockedFs.isFile.resolves(true);
|
|
48
|
-
assert.
|
|
48
|
+
assert.strictEqual(await csharpDependencyGraph.getProjectName(path.join(projectPathUri, 'sample.cs')), 'sampleWs');
|
|
49
49
|
});
|
|
50
50
|
it('should return correct project name for given forlder path within workspace folder', async () => {
|
|
51
51
|
const expectedProjectName = 'sampleWs';
|
|
52
52
|
mockedGetWorkspaceFolder.returns({ uri: projectPathUri, name: expectedProjectName });
|
|
53
|
-
assert.
|
|
53
|
+
assert.strictEqual(await csharpDependencyGraph.getProjectName(path.join(projectPathUri, 'src')), expectedProjectName);
|
|
54
54
|
});
|
|
55
55
|
});
|
|
56
56
|
describe('Test getProjectPath', () => {
|
|
@@ -63,59 +63,68 @@ describe('test CsharpDependencyGraph', () => {
|
|
|
63
63
|
const fileUri = path.join(fileFolderPath, 'sample.cs');
|
|
64
64
|
mockedFs.isFile.resolves(true);
|
|
65
65
|
const response = await csharpDependencyGraph.getProjectPath(fileUri);
|
|
66
|
-
assert.
|
|
66
|
+
assert.strictEqual(response, fileFolderPath);
|
|
67
67
|
});
|
|
68
68
|
it('should return project name for within project file', async () => {
|
|
69
69
|
const expectedProjectName = 'sampleWs';
|
|
70
70
|
mockedGetWorkspaceFolder.returns({ uri: projectPathUri, name: expectedProjectName });
|
|
71
|
-
assert.
|
|
71
|
+
assert.strictEqual(await csharpDependencyGraph.getProjectPath(path.join(projectPathUri, 'src')), projectPathUri);
|
|
72
72
|
mockedGetWorkspaceFolder.reset();
|
|
73
73
|
});
|
|
74
74
|
});
|
|
75
75
|
describe('Test getReadableSizeLimit', () => {
|
|
76
76
|
it('should return size 1 MB', () => {
|
|
77
|
-
assert.
|
|
77
|
+
assert.strictEqual(csharpDependencyGraph.getReadableSizeLimit(), '1MB');
|
|
78
78
|
});
|
|
79
79
|
});
|
|
80
80
|
describe('Test exceedsSizeLimit', () => {
|
|
81
81
|
it('should not exceed size limit', () => {
|
|
82
82
|
const size = 100;
|
|
83
83
|
const expectedResult = false;
|
|
84
|
-
assert.
|
|
84
|
+
assert.strictEqual(csharpDependencyGraph.exceedsSizeLimit(size), expectedResult);
|
|
85
85
|
});
|
|
86
86
|
it('should exceed size limit', () => {
|
|
87
87
|
const size = Math.pow(2, 21);
|
|
88
88
|
const expectedResult = true;
|
|
89
|
-
assert.
|
|
89
|
+
assert.strictEqual(csharpDependencyGraph.exceedsSizeLimit(size), expectedResult);
|
|
90
90
|
});
|
|
91
91
|
});
|
|
92
92
|
describe('Test createNamespaceFilenameMapper', () => {
|
|
93
93
|
beforeEach(() => {
|
|
94
94
|
mockedFs.readdir.reset();
|
|
95
95
|
mockedFs.readFile.reset();
|
|
96
|
-
mockedFs.readdir.
|
|
97
|
-
{
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
96
|
+
mockedFs.readdir.callsFake(async (dirpath) => {
|
|
97
|
+
switch (dirpath) {
|
|
98
|
+
case projectPathUri:
|
|
99
|
+
return [
|
|
100
|
+
{
|
|
101
|
+
isFile: () => false,
|
|
102
|
+
isDirectory: () => true,
|
|
103
|
+
name: 'src',
|
|
104
|
+
path: projectPathUri,
|
|
105
|
+
},
|
|
106
|
+
];
|
|
107
|
+
case path.join(projectPathUri, 'src'):
|
|
108
|
+
return [
|
|
109
|
+
{
|
|
110
|
+
isFile: () => true,
|
|
111
|
+
isDirectory: () => false,
|
|
112
|
+
name: 'sample.cs',
|
|
113
|
+
path: path.join(projectPathUri, 'src'),
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
isFile: () => true,
|
|
117
|
+
isDirectory: () => false,
|
|
118
|
+
name: 'model.cs',
|
|
119
|
+
path: path.join(projectPathUri, 'src'),
|
|
120
|
+
},
|
|
121
|
+
];
|
|
122
|
+
default:
|
|
123
|
+
return [];
|
|
124
|
+
}
|
|
125
|
+
});
|
|
116
126
|
});
|
|
117
127
|
it('should create the map with namespace to filepath mapping', async () => {
|
|
118
|
-
csharpDependencyGraph.namespaceToFilepathDirectory = new Map();
|
|
119
128
|
mockedFs.readFile.callsFake(async (filePath) => {
|
|
120
129
|
if (filePath === path.join(projectPathUri, 'src', 'sample.cs')) {
|
|
121
130
|
return `namespace Amazon.Cw.Utils.Sample {}`;
|
|
@@ -125,7 +134,7 @@ describe('test CsharpDependencyGraph', () => {
|
|
|
125
134
|
}
|
|
126
135
|
});
|
|
127
136
|
await csharpDependencyGraph.createNamespaceFilenameMapper(projectPathUri);
|
|
128
|
-
assert.
|
|
137
|
+
assert.deepStrictEqual(csharpDependencyGraph.namespaceToFilepathDirectory, new Map([
|
|
129
138
|
['Amazon.Cw.Model', new Set([path.join(projectPathUri, 'src', 'model.cs')])],
|
|
130
139
|
['Amazon.Cw.Utils.Sample', new Set([path.join(projectPathUri, 'src', 'sample.cs')])],
|
|
131
140
|
]));
|
|
@@ -141,7 +150,7 @@ describe('test CsharpDependencyGraph', () => {
|
|
|
141
150
|
}
|
|
142
151
|
});
|
|
143
152
|
await csharpDependencyGraph.createNamespaceFilenameMapper(projectPathUri);
|
|
144
|
-
assert.
|
|
153
|
+
assert.deepStrictEqual(csharpDependencyGraph.namespaceToFilepathDirectory, new Map([]));
|
|
145
154
|
});
|
|
146
155
|
});
|
|
147
156
|
describe('Test searchDependency', () => {
|
|
@@ -165,14 +174,14 @@ describe('test CsharpDependencyGraph', () => {
|
|
|
165
174
|
mockedFs.getFileSize.resolves({ size: 1000 });
|
|
166
175
|
const filePath = path.join(projectPathUri, 'main.cs');
|
|
167
176
|
const pickedSourceFiles = await csharpDependencyGraph.searchDependency(filePath);
|
|
168
|
-
assert.
|
|
177
|
+
assert.deepStrictEqual(pickedSourceFiles, new Set([filePath]));
|
|
169
178
|
});
|
|
170
179
|
it("should return source file with its dependecies' file path", async () => {
|
|
171
180
|
mockedFs.getFileSize.atLeast(1).resolves({ size: 1000 });
|
|
172
181
|
mockedFs.readFile.onFirstCall().resolves(`using Amazon.Cw.Props;
|
|
173
182
|
var total = 5 + 4;`);
|
|
174
183
|
const pickedSourceFiles = await csharpDependencyGraph.searchDependency(path.join(projectPathUri, 'main.cs'));
|
|
175
|
-
assert.
|
|
184
|
+
assert.deepStrictEqual(pickedSourceFiles, new Set([
|
|
176
185
|
path.join(projectPathUri, 'main.cs'),
|
|
177
186
|
path.join(projectPathUri, 'src', 'interface', 'recommendations.cs'),
|
|
178
187
|
path.join(projectPathUri, 'src', 'interface', 'model.cs'),
|
|
@@ -184,7 +193,7 @@ describe('test CsharpDependencyGraph', () => {
|
|
|
184
193
|
mockedFs.readFile.onFirstCall().resolves(`using Amazon.Cw.Props;
|
|
185
194
|
var total = 5 + 4;`);
|
|
186
195
|
const pickedSourceFiles = await csharpDependencyGraph.searchDependency(path.join(projectPathUri, 'main.cs'));
|
|
187
|
-
assert.
|
|
196
|
+
assert.deepStrictEqual(pickedSourceFiles, new Set([
|
|
188
197
|
path.join(projectPathUri, 'main.cs'),
|
|
189
198
|
path.join(projectPathUri, 'src', 'interface', 'model.cs'),
|
|
190
199
|
]));
|
|
@@ -206,44 +215,63 @@ describe('test CsharpDependencyGraph', () => {
|
|
|
206
215
|
]),
|
|
207
216
|
],
|
|
208
217
|
]);
|
|
209
|
-
mockedFs.readdir.
|
|
210
|
-
{
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
218
|
+
mockedFs.readdir.callsFake(async (dirpath) => {
|
|
219
|
+
switch (dirpath) {
|
|
220
|
+
case projectPathUri:
|
|
221
|
+
return [
|
|
222
|
+
{
|
|
223
|
+
isFile: () => false,
|
|
224
|
+
isDirectory: () => true,
|
|
225
|
+
name: 'src',
|
|
226
|
+
path: projectPathUri,
|
|
227
|
+
},
|
|
228
|
+
];
|
|
229
|
+
case path.join(projectPathUri, 'src'):
|
|
230
|
+
return [
|
|
231
|
+
{
|
|
232
|
+
isFile: () => true,
|
|
233
|
+
isDirectory: () => false,
|
|
234
|
+
name: 'sample.cs',
|
|
235
|
+
path: path.join(projectPathUri, 'src'),
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
isFile: () => true,
|
|
239
|
+
isDirectory: () => false,
|
|
240
|
+
name: 'model.cs',
|
|
241
|
+
path: path.join(projectPathUri, 'src'),
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
isFile: () => false,
|
|
245
|
+
isDirectory: () => true,
|
|
246
|
+
name: 'props',
|
|
247
|
+
path: path.join(projectPathUri, 'src'),
|
|
248
|
+
},
|
|
249
|
+
];
|
|
250
|
+
case path.join(projectPathUri, 'src', 'props'):
|
|
251
|
+
return [
|
|
252
|
+
{
|
|
253
|
+
isFile: () => true,
|
|
254
|
+
isDirectory: () => false,
|
|
255
|
+
name: 'scan.cs',
|
|
256
|
+
path: path.join(projectPathUri, 'src', 'props'),
|
|
257
|
+
},
|
|
258
|
+
{
|
|
259
|
+
isFile: () => true,
|
|
260
|
+
isDirectory: () => false,
|
|
261
|
+
name: 'recommendation.cs',
|
|
262
|
+
path: path.join(projectPathUri, 'src', 'props'),
|
|
263
|
+
},
|
|
264
|
+
];
|
|
265
|
+
default:
|
|
266
|
+
return [];
|
|
267
|
+
}
|
|
268
|
+
});
|
|
241
269
|
});
|
|
242
270
|
it('should return without traversing due to payload size limit reached', async () => {
|
|
243
271
|
mockedFs.getFileSize.resolves({ size: Math.pow(2, 20) });
|
|
244
272
|
await csharpDependencyGraph.searchDependency(path.join(projectPathUri, 'main.cs'));
|
|
245
273
|
await csharpDependencyGraph.traverseDir(projectPathUri);
|
|
246
|
-
assert.
|
|
274
|
+
assert.strictEqual(mockedFs.readFile.calledWith(projectPathUri), false);
|
|
247
275
|
});
|
|
248
276
|
it('should traverse through files until it reaches payload size limit', async () => {
|
|
249
277
|
mockedFs.getFileSize.atLeast(1).resolves({ size: Math.pow(2, 19) });
|
|
@@ -275,10 +303,10 @@ describe('test CsharpDependencyGraph', () => {
|
|
|
275
303
|
path.join(projectPathUri, 'src', 'model.cs'),
|
|
276
304
|
path.join(projectPathUri, 'src', 'sample.cs'),
|
|
277
305
|
]);
|
|
278
|
-
assert.
|
|
306
|
+
assert.deepStrictEqual(csharpDependencyGraph.getDependencies(['Amazon.Cw.Utils.Sample', 'Amazon.Cw.Model']), expectedResponse);
|
|
279
307
|
});
|
|
280
308
|
it('should return empty list', () => {
|
|
281
|
-
assert.
|
|
309
|
+
assert.deepStrictEqual(csharpDependencyGraph.getDependencies(['Amazon.Cw']), new Set());
|
|
282
310
|
});
|
|
283
311
|
});
|
|
284
312
|
describe('Test readImports', () => {
|
|
@@ -297,7 +325,7 @@ namespace Amazon.Toolkit.Demo {
|
|
|
297
325
|
`;
|
|
298
326
|
const response = csharpDependencyGraph.readImports(content);
|
|
299
327
|
const expectedImports = ['Amazon.Cw.Utils', 'Amazon.Cw.Model', 'Amazon.Cw.Prototypes'];
|
|
300
|
-
assert.
|
|
328
|
+
assert.deepStrictEqual(response, expectedImports);
|
|
301
329
|
});
|
|
302
330
|
it('should return empty list', () => {
|
|
303
331
|
const content = `
|
|
@@ -309,7 +337,7 @@ namespace Amazon.Toolkit.Demo {
|
|
|
309
337
|
}
|
|
310
338
|
`;
|
|
311
339
|
const response = csharpDependencyGraph.readImports(content);
|
|
312
|
-
assert.
|
|
340
|
+
assert.deepStrictEqual(response, []);
|
|
313
341
|
});
|
|
314
342
|
});
|
|
315
343
|
describe('Test generateTruncation', () => {
|
|
@@ -328,13 +356,13 @@ namespace Amazon.Toolkit.Demo {
|
|
|
328
356
|
rootDir: path.join(tempDirPath, 'codewhisperer_scan_111111111'),
|
|
329
357
|
zipFileBuffer,
|
|
330
358
|
scannedFiles: new Set([path.join(projectPathUri, 'main.cs')]),
|
|
331
|
-
srcPayloadSizeInBytes:
|
|
359
|
+
srcPayloadSizeInBytes: zipSize,
|
|
332
360
|
zipFileSizeInBytes: zipSize,
|
|
333
361
|
buildPayloadSizeInBytes: 0,
|
|
334
362
|
lines: 0,
|
|
335
363
|
};
|
|
336
364
|
const trucation = await csharpDependencyGraph.generateTruncation(path.join(projectPathUri, 'main.cs'));
|
|
337
|
-
assert.
|
|
365
|
+
assert.deepStrictEqual(trucation, expectedResult);
|
|
338
366
|
});
|
|
339
367
|
});
|
|
340
368
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"csharpDependencyGraph.test.js","sourceRoot":"","sources":["../../../src/language-server/dependencyGraph/csharpDependencyGraph.test.ts"],"names":[],"mappings":";;AAAA,iCAAgC;AAChC,6BAA4B;AAC5B,+BAA8B;AAC9B,mEAA+D;AAE/D,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IACxC,IAAI,qBAA4C,CAAA;IAChD,MAAM,wBAAwB,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IAC7C,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAA;IACrE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC1C,MAAM,QAAQ,GAAG;QACb,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;QAClB,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE;QACpB,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE;QACzB,cAAc,EAAE,GAAG,EAAE,CAAC,WAAW;QACjC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE;QACrB,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE;QACtB,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE;QACpB,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE;KACvB,CAAA;IACD,MAAM,eAAe,GAAG;QACpB,eAAe,EAAE,KAAK,CAAC,IAAI,EAAE;QAC7B,kBAAkB,EAAE,wBAAwB;QAC5C,EAAE,EAAE,QAAQ;KACf,CAAA;IACD,MAAM,CAAC,GAAG,EAAE;QACR,qBAAqB,GAAG,IAAI,6CAAqB,CAAC,eAAe,CAAC,CAAA;IACtE,CAAC,CAAC,CAAA;IACF,UAAU,CAAC,GAAG,EAAE;QACZ,wBAAwB,CAAC,KAAK,EAAE,CAAA;QAChC,wBAAwB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QAE3C,qBAAqB,GAAG,IAAI,6CAAqB,CAAC,eAAe,CAAC,CAAA;IACtE,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC7C,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC1C,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC3C,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,0BAA0B,EAAE,EAAE,mBAAmB,CAAC,CAAA;QACzF,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACjC,UAAU,CAAC,GAAG,EAAE;YACZ,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;YACvB,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,gFAAgF,EAAE,KAAK,IAAI,EAAE;YAC5F,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC9B,MAAM,CAAC,KAAK,CAAC,MAAM,qBAAqB,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;QAChH,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,mFAAmF,EAAE,KAAK,IAAI,EAAE;YAC/F,MAAM,mBAAmB,GAAG,UAAU,CAAA;YACtC,wBAAwB,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAA;YACpF,MAAM,CAAC,KAAK,CACR,MAAM,qBAAqB,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,EAC5E,mBAAmB,CACtB,CAAA;QACL,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACjC,UAAU,CAAC,GAAG,EAAE;YACZ,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;YACvB,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YAClE,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAA;YACvD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC,CAAA;YACtD,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAE9B,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;YACpE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAA;QAC1C,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;YAChE,MAAM,mBAAmB,GAAG,UAAU,CAAA;YAEtC,wBAAwB,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAA;YACpF,MAAM,CAAC,KAAK,CAAC,MAAM,qBAAqB,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAA;YAC1G,wBAAwB,CAAC,KAAK,EAAE,CAAA;QACpC,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACvC,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;YAC/B,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,oBAAoB,EAAE,EAAE,KAAK,CAAC,CAAA;QACrE,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACnC,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACpC,MAAM,IAAI,GAAG,GAAG,CAAA;YAChB,MAAM,cAAc,GAAG,KAAK,CAAA;YAC5B,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,CAAA;QAC9E,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC5B,MAAM,cAAc,GAAG,IAAI,CAAA;YAC3B,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,CAAA;QAC9E,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAChD,UAAU,CAAC,GAAG,EAAE;YACZ,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;YACxB,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YACzB,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACtB;oBACI,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK;oBACnB,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI;oBACvB,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,cAAc;iBACvB;gBACD;oBACI,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI;oBAClB,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK;oBACxB,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC;iBACzC;gBACD;oBACI,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI;oBAClB,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK;oBACxB,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC;iBACzC;aACJ,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YACtE,qBAAqB,CAAC,4BAA4B,GAAG,IAAI,GAAG,EAAuB,CAAA;YACnF,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;gBACzC,IAAI,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC;oBAC7D,OAAO,qCAAqC,CAAA;gBAChD,CAAC;gBACD,IAAI,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;oBAC5D,OAAO,8BAA8B,CAAA;gBACzC,CAAC;YACL,CAAC,CAAC,CAAA;YACF,MAAM,qBAAqB,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAA;YACzE,MAAM,CAAC,SAAS,CACZ,qBAAqB,CAAC,4BAA4B,EAClD,IAAI,GAAG,CAAC;gBACJ,CAAC,iBAAiB,EAAE,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC5E,CAAC,wBAAwB,EAAE,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;aACvF,CAAC,CACL,CAAA;QACL,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;YACrC,qBAAqB,CAAC,4BAA4B,GAAG,IAAI,GAAG,EAAuB,CAAA;YACnF,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;gBACzC,IAAI,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC;oBAC7D,OAAO,gCAAgC,CAAA;gBAC3C,CAAC;gBACD,IAAI,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;oBAC5D,OAAO,EAAE,CAAA;gBACb,CAAC;YACL,CAAC,CAAC,CAAA;YACF,MAAM,qBAAqB,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAA;YACzE,MAAM,CAAC,SAAS,CAAC,qBAAqB,CAAC,4BAA4B,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;QACrF,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IACF,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACnC,UAAU,CAAC,GAAG,EAAE;YACZ,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,CAAA;YAC5B,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YAEzB,qBAAqB,CAAC,4BAA4B,GAAG,IAAI,GAAG,CAAC;gBACzD,CAAC,iBAAiB,EAAE,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC5E,CAAC,wBAAwB,EAAE,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;gBACpF;oBACI,iBAAiB;oBACjB,IAAI,GAAG,CAAC;wBACJ,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC;wBACzD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,oBAAoB,CAAC;qBACtE,CAAC;iBACL;aACJ,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;YAChE,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAA;YAChD,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAA;YAErD,MAAM,iBAAiB,GAAG,MAAM,qBAAqB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAA;YAChF,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAC5D,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;YACvE,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YAExD,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CACpC;2BACW,CACd,CAAA;YACD,MAAM,iBAAiB,GAAG,MAAM,qBAAqB,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,CAAA;YAC5G,MAAM,CAAC,SAAS,CACZ,iBAAiB,EACjB,IAAI,GAAG,CAAC;gBACJ,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC;gBACpC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,oBAAoB,CAAC;gBACnE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC;aAC5D,CAAC,CACL,CAAA;QACL,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,wFAAwF,EAAE,KAAK,IAAI,EAAE;YACpG,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;YACtE,QAAQ,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;YAEvE,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CACpC;2BACW,CACd,CAAA;YACD,MAAM,iBAAiB,GAAG,MAAM,qBAAqB,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,CAAA;YAC5G,MAAM,CAAC,SAAS,CACZ,iBAAiB,EACjB,IAAI,GAAG,CAAC;gBACJ,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC;gBACpC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC;aAC5D,CAAC,CACL,CAAA;QACL,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IACF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAC9B,UAAU,CAAC,GAAG,EAAE;YACZ,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,CAAA;YAC5B,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YACzB,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;YACxB,qBAAqB,CAAC,4BAA4B,GAAG,IAAI,GAAG,CAAC;gBACzD,CAAC,iBAAiB,EAAE,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC5E,CAAC,wBAAwB,EAAE,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;gBACpF;oBACI,iBAAiB;oBACjB,IAAI,GAAG,CAAC;wBACJ,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC;wBACxD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,oBAAoB,CAAC;qBACtE,CAAC;iBACL;aACJ,CAAC,CAAA;YACF,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACtB;oBACI,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK;oBACnB,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI;oBACvB,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,cAAc;iBACvB;gBACD;oBACI,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI;oBAClB,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK;oBACxB,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC;iBACzC;gBACD;oBACI,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI;oBAClB,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK;oBACxB,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC;iBACzC;gBACD;oBACI,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI;oBAClB,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK;oBACxB,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC;iBAClD;gBACD;oBACI,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI;oBAClB,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK;oBACxB,IAAI,EAAE,mBAAmB;oBACzB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC;iBAClD;aACJ,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YAChF,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;YACxD,MAAM,qBAAqB,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,CAAA;YAClF,MAAM,qBAAqB,CAAC,WAAW,CAAC,cAAc,CAAC,CAAA;YACvD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,CAAA;QACrE,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;YAC/E,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;YACnE,MAAM,qBAAqB,CAAC,WAAW,CAAC,cAAc,CAAC,CAAA;YACvD,MAAM,CAAC,WAAW,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAA;QACtE,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YAC/C,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;YACnE,MAAM,qBAAqB,CAAC,WAAW,CAAC,cAAc,CAAC,CAAA;YACvD,MAAM,CAAC,WAAW,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAA;QACvE,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IACF,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QAClC,UAAU,CAAC,GAAG,EAAE;YACZ,qBAAqB,CAAC,4BAA4B,GAAG,IAAI,GAAG,CAAC;gBACzD,CAAC,iBAAiB,EAAE,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC5E,CAAC,wBAAwB,EAAE,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;gBACpF;oBACI,iBAAiB;oBACjB,IAAI,GAAG,CAAC;wBACJ,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC;wBACxD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,oBAAoB,CAAC;qBACtE,CAAC;iBACL;aACJ,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YAClD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,UAAU,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,CAAC;aAChD,CAAC,CAAA;YACF,MAAM,CAAC,SAAS,CACZ,qBAAqB,CAAC,eAAe,CAAC,CAAC,wBAAwB,EAAE,iBAAiB,CAAC,CAAC,EACpF,gBAAgB,CACnB,CAAA;QACL,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAChC,MAAM,CAAC,SAAS,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;QACrF,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IACF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;YACtC,MAAM,OAAO,GAAG;;;;;;;;;;;SAWnB,CAAA;YACG,MAAM,QAAQ,GAAG,qBAAqB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;YAC3D,MAAM,eAAe,GAAG,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,sBAAsB,CAAC,CAAA;YACtF,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAChC,MAAM,OAAO,GAAG;;;;;;;SAOnB,CAAA;YACG,MAAM,QAAQ,GAAG,qBAAqB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;YAC3D,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QAClC,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IACF,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACrC,MAAM,CAAC,GAAG,EAAE;YACR,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE;YACjC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC/B,MAAM,aAAa,GAAG,gBAAgB,CAAA;YACtC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;YAC3D,qBAAqB,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC;gBACnD,aAAa;gBACb,WAAW,EAAE,OAAO;aACvB,CAAC,CAAA;YACF,MAAM,cAAc,GAAG;gBACnB,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,8BAA8B,CAAC;gBAC/D,aAAa;gBACb,YAAY,EAAE,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC;gBAC7D,qBAAqB,EAAE,CAAC;gBACxB,kBAAkB,EAAE,OAAO;gBAC3B,uBAAuB,EAAE,CAAC;gBAC1B,KAAK,EAAE,CAAC;aACX,CAAA;YAED,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,CAAA;YAEtG,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"csharpDependencyGraph.test.js","sourceRoot":"","sources":["../../../src/language-server/dependencyGraph/csharpDependencyGraph.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import { Workspace } from '@aws/language-server-runtimes/
|
|
2
|
+
import { Logging, Workspace } from '@aws/language-server-runtimes/server-interface';
|
|
3
3
|
export interface Truncation {
|
|
4
4
|
rootDir: string;
|
|
5
5
|
zipFileBuffer: Buffer;
|
|
@@ -15,7 +15,7 @@ export interface Truncation {
|
|
|
15
15
|
* @returns
|
|
16
16
|
*/
|
|
17
17
|
export declare abstract class DependencyGraph {
|
|
18
|
-
workspace: Workspace;
|
|
18
|
+
protected workspace: Workspace;
|
|
19
19
|
protected _sysPaths: Set<string>;
|
|
20
20
|
protected _parsedStatements: Set<string>;
|
|
21
21
|
protected _pickedSourceFiles: Set<string>;
|
|
@@ -24,8 +24,10 @@ export declare abstract class DependencyGraph {
|
|
|
24
24
|
protected _tmpDir: string;
|
|
25
25
|
protected _truncDir: string;
|
|
26
26
|
protected _totalLines: number;
|
|
27
|
+
protected logging: Logging;
|
|
28
|
+
protected _workspaceFolderPath: string;
|
|
27
29
|
private _isProjectTruncated;
|
|
28
|
-
constructor(workspace: Workspace);
|
|
30
|
+
constructor(workspace: Workspace, logging: Logging, workspaceFolderPath: string);
|
|
29
31
|
/**
|
|
30
32
|
* Retrun project name if given uri is within project. If not then return last folder name where file is present.
|
|
31
33
|
* @param uri file path to get project name
|
|
@@ -54,6 +56,12 @@ export declare abstract class DependencyGraph {
|
|
|
54
56
|
* set value for _isProjectTruncated
|
|
55
57
|
*/
|
|
56
58
|
set isProjectTruncated(value: boolean);
|
|
59
|
+
/**
|
|
60
|
+
* find all the files inside `dir` recursively.
|
|
61
|
+
* @param dir folder path from where search for all the files.
|
|
62
|
+
* @returns return a promise of list of absolute file paths
|
|
63
|
+
*/
|
|
64
|
+
getFiles(dir: string): Promise<string[]>;
|
|
57
65
|
/**
|
|
58
66
|
* copy list of file to temp dir
|
|
59
67
|
*/
|
|
@@ -92,7 +100,7 @@ export declare abstract class DependencyGraph {
|
|
|
92
100
|
/**
|
|
93
101
|
* remove all copied files from temp directory
|
|
94
102
|
*/
|
|
95
|
-
|
|
103
|
+
removeTmpFiles(): Promise<void>;
|
|
96
104
|
/**
|
|
97
105
|
* This method will traverse throw the input file and its dependecy files to creates a list of files for the scan.
|
|
98
106
|
* If the list does not exceeds the payload size limit then it will scan all the remaining files to add them into the list
|
|
@@ -10,7 +10,7 @@ const CodeWhispererConstants = require("./constants");
|
|
|
10
10
|
* @returns
|
|
11
11
|
*/
|
|
12
12
|
class DependencyGraph {
|
|
13
|
-
constructor(workspace) {
|
|
13
|
+
constructor(workspace, logging, workspaceFolderPath) {
|
|
14
14
|
this._sysPaths = new Set();
|
|
15
15
|
this._parsedStatements = new Set();
|
|
16
16
|
this._pickedSourceFiles = new Set();
|
|
@@ -21,7 +21,9 @@ class DependencyGraph {
|
|
|
21
21
|
this._totalLines = 0;
|
|
22
22
|
this._isProjectTruncated = false;
|
|
23
23
|
this.workspace = workspace;
|
|
24
|
+
this.logging = logging;
|
|
24
25
|
this._tmpDir = this.workspace.fs.getTempDirPath();
|
|
26
|
+
this._workspaceFolderPath = workspaceFolderPath;
|
|
25
27
|
}
|
|
26
28
|
/**
|
|
27
29
|
* Retrun project name if given uri is within project. If not then return last folder name where file is present.
|
|
@@ -39,10 +41,13 @@ class DependencyGraph {
|
|
|
39
41
|
*/
|
|
40
42
|
async getProjectPath(uri) {
|
|
41
43
|
const workspaceFolder = this.workspace.getWorkspaceFolder(uri);
|
|
42
|
-
if (
|
|
43
|
-
return
|
|
44
|
+
if (workspaceFolder) {
|
|
45
|
+
return workspaceFolder.uri;
|
|
44
46
|
}
|
|
45
|
-
|
|
47
|
+
if (uri.includes(this._workspaceFolderPath)) {
|
|
48
|
+
return this._workspaceFolderPath;
|
|
49
|
+
}
|
|
50
|
+
return (await this.workspace.fs.isFile(uri)) ? path.dirname(uri) : uri;
|
|
46
51
|
}
|
|
47
52
|
/**
|
|
48
53
|
* Retrun readable size limit value in MB or KB
|
|
@@ -75,6 +80,19 @@ class DependencyGraph {
|
|
|
75
80
|
set isProjectTruncated(value) {
|
|
76
81
|
this._isProjectTruncated = value;
|
|
77
82
|
}
|
|
83
|
+
/**
|
|
84
|
+
* find all the files inside `dir` recursively.
|
|
85
|
+
* @param dir folder path from where search for all the files.
|
|
86
|
+
* @returns return a promise of list of absolute file paths
|
|
87
|
+
*/
|
|
88
|
+
async getFiles(dir) {
|
|
89
|
+
const subdirs = await this.workspace.fs.readdir(dir);
|
|
90
|
+
const files = await Promise.all(subdirs.map(async (subdir) => {
|
|
91
|
+
const res = path.resolve(dir, subdir.name);
|
|
92
|
+
return subdir.isDirectory() ? await this.getFiles(res) : [res];
|
|
93
|
+
}));
|
|
94
|
+
return files.reduce((a, f) => a.concat(f), []);
|
|
95
|
+
}
|
|
78
96
|
/**
|
|
79
97
|
* copy list of file to temp dir
|
|
80
98
|
*/
|
|
@@ -144,8 +162,8 @@ class DependencyGraph {
|
|
|
144
162
|
/**
|
|
145
163
|
* remove all copied files from temp directory
|
|
146
164
|
*/
|
|
147
|
-
async removeTmpFiles(
|
|
148
|
-
await this.removeDir(
|
|
165
|
+
async removeTmpFiles() {
|
|
166
|
+
await this.removeDir(this.getTruncDirPath());
|
|
149
167
|
}
|
|
150
168
|
}
|
|
151
169
|
exports.DependencyGraph = DependencyGraph;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependencyGraph.js","sourceRoot":"","sources":["../../../src/language-server/dependencyGraph/dependencyGraph.ts"],"names":[],"mappings":";;;AACA,kCAAiC;AACjC,6BAA4B;AAC5B,sDAAqD;AAYrD;;;;GAIG;AACH,MAAsB,eAAe;
|
|
1
|
+
{"version":3,"file":"dependencyGraph.js","sourceRoot":"","sources":["../../../src/language-server/dependencyGraph/dependencyGraph.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { Workspace } from '@aws/language-server-runtimes/
|
|
2
|
-
import { TextDocument } from 'vscode-languageserver-textdocument';
|
|
1
|
+
import { Logging, Workspace, TextDocument } from '@aws/language-server-runtimes/server-interface';
|
|
3
2
|
import { CsharpDependencyGraph } from './csharpDependencyGraph';
|
|
4
3
|
declare const languageMap: {
|
|
5
4
|
readonly csharp: typeof CsharpDependencyGraph;
|
|
@@ -10,6 +9,6 @@ type Tuples<T> = T extends Keys ? [T, InstanceType<LanguageMap[T]>] : never;
|
|
|
10
9
|
type ClassType<A extends Keys> = Extract<Tuples<Keys>, [A, any]>[1];
|
|
11
10
|
export declare class DependencyGraphFactory {
|
|
12
11
|
static getDependencyGraphFromFileExtensions<K extends Keys>(fileName: string): ClassType<K>;
|
|
13
|
-
static getDependencyGraph<K extends Keys>(document: TextDocument, workspace:
|
|
12
|
+
static getDependencyGraph<K extends Keys>(document: TextDocument, workspace: Workspace, logging: Logging, workspaceFolderPath: string): ClassType<K>;
|
|
14
13
|
}
|
|
15
14
|
export {};
|
|
@@ -9,10 +9,10 @@ class DependencyGraphFactory {
|
|
|
9
9
|
static getDependencyGraphFromFileExtensions(fileName) {
|
|
10
10
|
return undefined;
|
|
11
11
|
}
|
|
12
|
-
static getDependencyGraph(document, workspace) {
|
|
12
|
+
static getDependencyGraph(document, workspace, logging, workspaceFolderPath) {
|
|
13
13
|
switch (document.languageId.toLowerCase()) {
|
|
14
14
|
case 'csharp':
|
|
15
|
-
return new languageMap['csharp'](workspace);
|
|
15
|
+
return new languageMap['csharp'](workspace, logging, workspaceFolderPath);
|
|
16
16
|
default:
|
|
17
17
|
return this.getDependencyGraphFromFileExtensions(document.uri);
|
|
18
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependencyGraphFactory.js","sourceRoot":"","sources":["../../../src/language-server/dependencyGraph/dependencyGraphFactory.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"dependencyGraphFactory.js","sourceRoot":"","sources":["../../../src/language-server/dependencyGraph/dependencyGraphFactory.ts"],"names":[],"mappings":";;;AACA,mEAA+D;AAE/D,MAAM,WAAW,GAAG;IAChB,MAAM,EAAE,6CAAqB;CACvB,CAAA;AAOV,MAAa,sBAAsB;IAC/B,MAAM,CAAC,oCAAoC,CAAiB,QAAgB;QACxE,OAAO,SAAS,CAAA;IACpB,CAAC;IAED,MAAM,CAAC,kBAAkB,CACrB,QAAsB,EACtB,SAAoB,EACpB,OAAgB,EAChB,mBAA2B;QAE3B,QAAQ,QAAQ,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC;YACxC,KAAK,QAAQ;gBACT,OAAO,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAA;YAC7E;gBACI,OAAO,IAAI,CAAC,oCAAoC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;QACtE,CAAC;IACL,CAAC;CACJ;AAlBD,wDAkBC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import { TextDocument } from '
|
|
1
|
+
import { TextDocument } from '@aws/language-server-runtimes/server-interface';
|
|
2
2
|
export type CodewhispererLanguage = 'java' | 'python' | 'jsx' | 'javascript' | 'typescript' | 'tsx' | 'csharp' | 'c' | 'cpp' | 'cpp' | 'go' | 'kotlin' | 'php' | 'ruby' | 'rust' | 'scala' | 'shell' | 'shell' | 'sql' | 'plaintext';
|
|
3
|
+
export declare const supportedSecurityScanLanguages: CodewhispererLanguage[];
|
|
3
4
|
export declare const getSupportedLanguageId: (textDocument: TextDocument | undefined) => CodewhispererLanguage | undefined;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getSupportedLanguageId = void 0;
|
|
3
|
+
exports.getSupportedLanguageId = exports.supportedSecurityScanLanguages = void 0;
|
|
4
4
|
// This will be extended as more language features
|
|
5
5
|
// are integrated into the language server and clients.
|
|
6
6
|
// See: https://microsoft.github.io/language-server-protocol/specifications/lsp/3.18/specification/#textDocumentItem
|
|
7
7
|
const supportedFileTypes = ['c', 'cpp', 'csharp', 'javascript', 'python', 'typescript'];
|
|
8
|
+
exports.supportedSecurityScanLanguages = ['csharp'];
|
|
8
9
|
const supportedExtensions = {
|
|
9
10
|
'.c': 'c',
|
|
10
11
|
'.h': 'c',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"languageDetection.js","sourceRoot":"","sources":["../../src/language-server/languageDetection.ts"],"names":[],"mappings":";;;AAwBA,kDAAkD;AAClD,uDAAuD;AACvD,oHAAoH;AACpH,MAAM,kBAAkB,GAA4B,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"languageDetection.js","sourceRoot":"","sources":["../../src/language-server/languageDetection.ts"],"names":[],"mappings":";;;AAwBA,kDAAkD;AAClD,uDAAuD;AACvD,oHAAoH;AACpH,MAAM,kBAAkB,GAA4B,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;AACnG,QAAA,8BAA8B,GAA4B,CAAC,QAAQ,CAAC,CAAA;AACjF,MAAM,mBAAmB,GAA6C;IAClE,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,YAAY;IACnB,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,YAAY;CACtB,CAAA;AAEM,MAAM,sBAAsB,GAAG,CAAC,YAAsC,EAAqC,EAAE;IAChH,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,OAAM;IACV,CAAC;IAED,MAAM,UAAU,GAAG,kDAAkD,CAAC,YAAY,CAAC,UAAU,CAAC,CAAA;IAC9F,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,UAAU,CAAA;IACrB,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,mBAAmB,EAAE,CAAC;QAC1C,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACvC,OAAO,mBAAmB,CAAC,SAAS,CAAC,CAAA;QACzC,CAAC;IACL,CAAC;AACL,CAAC,CAAA;AAfY,QAAA,sBAAsB,0BAelC;AAED;;;;;GAKG;AACH,SAAS,kDAAkD,CACvD,sBAAsD;IAEtD,IAAI,sBAAsB,KAAK,SAAS,EAAE,CAAC;QACvC,OAAO,SAAS,CAAA;IACpB,CAAC;IAED,IAAI,kBAAkB,CAAC,QAAQ,CAAC,sBAA+C,CAAC,EAAE,CAAC;QAC/E,OAAO,sBAA+C,CAAA;IAC1D,CAAC;IAED,sEAAsE;IACtE,qCAAqC;IACrC,mGAAmG;IACnG,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE,CAAC;QACjD,IAAI,sBAAsB,CAAC,WAAW,EAAE,KAAK,iBAAiB,CAAC,WAAW,EAAE,EAAE,CAAC;YAC3E,OAAO,iBAA0C,CAAA;QACrD,CAAC;IACL,CAAC;IAED,OAAO,SAAS,CAAA;AACpB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Server, CredentialsProvider } from '@aws/language-server-runtimes/server-interface';
|
|
2
|
+
import { CodeWhispererServiceToken } from './codeWhispererService';
|
|
3
|
+
/**
|
|
4
|
+
*
|
|
5
|
+
* @param createService Inject service instance based on credentials provider.
|
|
6
|
+
* @returns NetTransform server
|
|
7
|
+
*/
|
|
8
|
+
export declare const NetTransformServerFactory: (createService: (credentialsProvider: CredentialsProvider) => CodeWhispererServiceToken) => Server;
|
|
9
|
+
/**
|
|
10
|
+
* Default NetTransformServer using Token authentication.
|
|
11
|
+
*/
|
|
12
|
+
export declare const NetTransformServer: Server;
|