@aws/lsp-codewhisperer 0.0.3
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 +7 -0
- package/README.md +19 -0
- package/out/client/sigv4/codewhisperer.d.ts +3 -0
- package/out/client/sigv4/codewhisperer.js +14 -0
- package/out/client/sigv4/codewhisperer.js.map +1 -0
- package/out/client/sigv4/service.json +346 -0
- package/out/client/token/bearer-token-service.json +1627 -0
- package/out/client/token/codewhisperer.d.ts +14 -0
- package/out/client/token/codewhisperer.js +23 -0
- package/out/client/token/codewhisperer.js.map +1 -0
- package/out/index.d.ts +2 -0
- package/out/index.js +19 -0
- package/out/index.js.map +1 -0
- package/out/language-server/auto-trigger/autoTrigger.d.ts +38 -0
- package/out/language-server/auto-trigger/autoTrigger.js +119 -0
- package/out/language-server/auto-trigger/autoTrigger.js.map +1 -0
- package/out/language-server/auto-trigger/autoTrigger.test.d.ts +1 -0
- package/out/language-server/auto-trigger/autoTrigger.test.js +82 -0
- package/out/language-server/auto-trigger/autoTrigger.test.js.map +1 -0
- package/out/language-server/auto-trigger/coefficients.json +405 -0
- package/out/language-server/codeWhispererSecurityScanServer.d.ts +4 -0
- package/out/language-server/codeWhispererSecurityScanServer.js +76 -0
- package/out/language-server/codeWhispererSecurityScanServer.js.map +1 -0
- package/out/language-server/codeWhispererServer.d.ts +7 -0
- package/out/language-server/codeWhispererServer.js +425 -0
- package/out/language-server/codeWhispererServer.js.map +1 -0
- package/out/language-server/codeWhispererServer.test.d.ts +1 -0
- package/out/language-server/codeWhispererServer.test.js +1218 -0
- package/out/language-server/codeWhispererServer.test.js.map +1 -0
- package/out/language-server/codeWhispererService.d.ts +84 -0
- package/out/language-server/codeWhispererService.js +168 -0
- package/out/language-server/codeWhispererService.js.map +1 -0
- package/out/language-server/dependencyGraph/commonUtil.d.ts +2 -0
- package/out/language-server/dependencyGraph/commonUtil.js +20 -0
- package/out/language-server/dependencyGraph/commonUtil.js.map +1 -0
- package/out/language-server/dependencyGraph/constants.d.ts +2 -0
- package/out/language-server/dependencyGraph/constants.js +6 -0
- package/out/language-server/dependencyGraph/constants.js.map +1 -0
- package/out/language-server/dependencyGraph/csharpDependencyGraph.d.ts +27 -0
- package/out/language-server/dependencyGraph/csharpDependencyGraph.js +145 -0
- package/out/language-server/dependencyGraph/csharpDependencyGraph.js.map +1 -0
- package/out/language-server/dependencyGraph/csharpDependencyGraph.test.d.ts +1 -0
- package/out/language-server/dependencyGraph/csharpDependencyGraph.test.js +341 -0
- package/out/language-server/dependencyGraph/csharpDependencyGraph.test.js.map +1 -0
- package/out/language-server/dependencyGraph/dependencyGraph.d.ts +125 -0
- package/out/language-server/dependencyGraph/dependencyGraph.js +152 -0
- package/out/language-server/dependencyGraph/dependencyGraph.js.map +1 -0
- package/out/language-server/dependencyGraph/dependencyGraphFactory.d.ts +15 -0
- package/out/language-server/dependencyGraph/dependencyGraphFactory.js +22 -0
- package/out/language-server/dependencyGraph/dependencyGraphFactory.js.map +1 -0
- package/out/language-server/languageDetection.d.ts +3 -0
- package/out/language-server/languageDetection.js +56 -0
- package/out/language-server/languageDetection.js.map +1 -0
- package/out/language-server/mergeRightUtils.d.ts +6 -0
- package/out/language-server/mergeRightUtils.js +37 -0
- package/out/language-server/mergeRightUtils.js.map +1 -0
- package/out/language-server/mergeRightUtils.test.d.ts +1 -0
- package/out/language-server/mergeRightUtils.test.js +53 -0
- package/out/language-server/mergeRightUtils.test.js.map +1 -0
- package/out/language-server/proxy-server.d.ts +2 -0
- package/out/language-server/proxy-server.js +35 -0
- package/out/language-server/proxy-server.js.map +1 -0
- package/out/language-server/securityScan/securityScanHandler.d.ts +17 -0
- package/out/language-server/securityScan/securityScanHandler.js +139 -0
- package/out/language-server/securityScan/securityScanHandler.js.map +1 -0
- package/out/language-server/securityScan/securityScanHandler.test.d.ts +1 -0
- package/out/language-server/securityScan/securityScanHandler.test.js +170 -0
- package/out/language-server/securityScan/securityScanHandler.test.js.map +1 -0
- package/out/language-server/securityScan/types.d.ts +49 -0
- package/out/language-server/securityScan/types.js +3 -0
- package/out/language-server/securityScan/types.js.map +1 -0
- package/out/language-server/session/sessionManager.d.ts +91 -0
- package/out/language-server/session/sessionManager.js +234 -0
- package/out/language-server/session/sessionManager.js.map +1 -0
- package/out/language-server/session/sessionManager.test.d.ts +1 -0
- package/out/language-server/session/sessionManager.test.js +584 -0
- package/out/language-server/session/sessionManager.test.js.map +1 -0
- package/out/language-server/telemetry/codePercentage.d.ts +17 -0
- package/out/language-server/telemetry/codePercentage.js +82 -0
- package/out/language-server/telemetry/codePercentage.js.map +1 -0
- package/out/language-server/telemetry/codePercentage.test.d.ts +1 -0
- package/out/language-server/telemetry/codePercentage.test.js +85 -0
- package/out/language-server/telemetry/codePercentage.test.js.map +1 -0
- package/out/language-server/telemetry/types.d.ts +68 -0
- package/out/language-server/telemetry/types.js +3 -0
- package/out/language-server/telemetry/types.js.map +1 -0
- package/out/language-server/telemetry/userTriggerDecision.test.d.ts +1 -0
- package/out/language-server/telemetry/userTriggerDecision.test.js +946 -0
- package/out/language-server/telemetry/userTriggerDecision.test.js.map +1 -0
- package/out/language-server/telemetry.test.d.ts +1 -0
- package/out/language-server/telemetry.test.js +96 -0
- package/out/language-server/telemetry.test.js.map +1 -0
- package/out/language-server/testUtils.d.ts +69 -0
- package/out/language-server/testUtils.js +90 -0
- package/out/language-server/testUtils.js.map +1 -0
- package/out/language-server/utils.d.ts +6 -0
- package/out/language-server/utils.js +31 -0
- package/out/language-server/utils.js.map +1 -0
- package/package.json +53 -0
- package/script/generateServiceClient.ts +242 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userTriggerDecision.test.js","sourceRoot":"","sources":["../../../src/language-server/telemetry/userTriggerDecision.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const testing_1 = require("@aws/language-server-runtimes/out/testing");
|
|
4
|
+
const ts_sinon_1 = require("ts-sinon");
|
|
5
|
+
const vscode_languageserver_1 = require("vscode-languageserver");
|
|
6
|
+
const vscode_languageserver_textdocument_1 = require("vscode-languageserver-textdocument");
|
|
7
|
+
const codeWhispererServer_1 = require("./codeWhispererServer");
|
|
8
|
+
describe('CodeWhisperer Server', () => {
|
|
9
|
+
const HELLO_WORLD_IN_CSHARP = `
|
|
10
|
+
class HelloWorld
|
|
11
|
+
{
|
|
12
|
+
static void Main()
|
|
13
|
+
{
|
|
14
|
+
Console.WriteLine("Hello World!");
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
`;
|
|
18
|
+
const SOME_FILE = vscode_languageserver_textdocument_1.TextDocument.create('file:///test.cs', 'csharp', 1, HELLO_WORLD_IN_CSHARP);
|
|
19
|
+
const SOME_TYPING = '// this is the end of the file\n';
|
|
20
|
+
const EXPECTED_SUGGESTION = [{ itemId: 'cwspr-item-id', content: '// a recommendation' }];
|
|
21
|
+
const EXPECTED_RESPONSE_CONTEXT = {
|
|
22
|
+
requestId: 'cwspr-request-id',
|
|
23
|
+
codewhispererSessionId: 'cwspr-session-id',
|
|
24
|
+
};
|
|
25
|
+
describe('Telemetry', () => {
|
|
26
|
+
let features;
|
|
27
|
+
let server;
|
|
28
|
+
// TODO move more of the service code out of the stub and into the testable realm
|
|
29
|
+
// See: https://aws.amazon.com/blogs/developer/mocking-modular-aws-sdk-for-javascript-v3-in-unit-tests/
|
|
30
|
+
// for examples on how to mock just the SDK client
|
|
31
|
+
let service;
|
|
32
|
+
let clock;
|
|
33
|
+
beforeEach(async () => {
|
|
34
|
+
clock = ts_sinon_1.default.useFakeTimers();
|
|
35
|
+
// Set up the server with a mock service, returning predefined recommendations
|
|
36
|
+
service = (0, ts_sinon_1.stubInterface)();
|
|
37
|
+
service.generateSuggestions.returns(Promise.resolve({
|
|
38
|
+
suggestions: EXPECTED_SUGGESTION,
|
|
39
|
+
responseContext: EXPECTED_RESPONSE_CONTEXT,
|
|
40
|
+
}));
|
|
41
|
+
server = (0, codeWhispererServer_1.CodewhispererServerFactory)(_auth => service);
|
|
42
|
+
// Initialize the features, but don't start server yet
|
|
43
|
+
features = new testing_1.TestFeatures();
|
|
44
|
+
// Return no specific configuration for CodeWhisperer
|
|
45
|
+
features.lsp.workspace.getConfiguration.returns(Promise.resolve({}));
|
|
46
|
+
// Start the server and open a document
|
|
47
|
+
await features.start(server);
|
|
48
|
+
features.openDocument(SOME_FILE);
|
|
49
|
+
});
|
|
50
|
+
afterEach(() => {
|
|
51
|
+
clock.restore();
|
|
52
|
+
features.dispose();
|
|
53
|
+
});
|
|
54
|
+
it('should emit Code Percentage telemetry event every 5 minutes', async () => {
|
|
55
|
+
await features.simulateTyping(SOME_FILE.uri, SOME_TYPING);
|
|
56
|
+
const updatedDocument = features.documents[SOME_FILE.uri];
|
|
57
|
+
const endPosition = updatedDocument.positionAt(updatedDocument.getText().length);
|
|
58
|
+
const result = (await features.doInlineCompletionWithReferences({
|
|
59
|
+
textDocument: { uri: SOME_FILE.uri },
|
|
60
|
+
position: { line: 0, character: 0 },
|
|
61
|
+
context: { triggerKind: vscode_languageserver_1.InlineCompletionTriggerKind.Invoked },
|
|
62
|
+
}, vscode_languageserver_1.CancellationToken.None));
|
|
63
|
+
await features.doChangeTextDocument({
|
|
64
|
+
textDocument: { uri: SOME_FILE.uri, version: updatedDocument.version },
|
|
65
|
+
contentChanges: [
|
|
66
|
+
{ range: { start: endPosition, end: endPosition }, text: EXPECTED_SUGGESTION[0].content },
|
|
67
|
+
],
|
|
68
|
+
});
|
|
69
|
+
await features.doLogInlineCompletionSessionResults({
|
|
70
|
+
sessionId: result?.sessionId,
|
|
71
|
+
completionSessionResult: {
|
|
72
|
+
[result.items[0].itemId]: {
|
|
73
|
+
accepted: true,
|
|
74
|
+
seen: true,
|
|
75
|
+
discarded: false,
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
const totalInsertCharacters = SOME_TYPING.length + EXPECTED_SUGGESTION[0].content.length;
|
|
80
|
+
const codeWhispererCharacters = EXPECTED_SUGGESTION[0].content.length;
|
|
81
|
+
const codePercentage = Math.round((codeWhispererCharacters / totalInsertCharacters) * 10000) / 100;
|
|
82
|
+
clock.tick(5000 * 60);
|
|
83
|
+
ts_sinon_1.default.assert.calledWithExactly(features.telemetry.emitMetric, {
|
|
84
|
+
name: 'codewhisperer_codePercentage',
|
|
85
|
+
data: {
|
|
86
|
+
codewhispererTotalTokens: totalInsertCharacters,
|
|
87
|
+
codewhispererLanguage: 'csharp',
|
|
88
|
+
codewhispererAcceptedTokens: codeWhispererCharacters,
|
|
89
|
+
codewhispererPercentage: codePercentage,
|
|
90
|
+
successCount: 1,
|
|
91
|
+
},
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
//# sourceMappingURL=telemetry.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telemetry.test.js","sourceRoot":"","sources":["../../src/language-server/telemetry.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { TextDocument } from 'vscode-languageserver-textdocument';
|
|
2
|
+
import { ResponseContext, Suggestion } from './codeWhispererService';
|
|
3
|
+
export declare const HELLO_WORLD_IN_CSHARP = "class HelloWorld\n{\n static void Main()\n {\n Console.WriteLine(\"Hello World!\");\n }\n}";
|
|
4
|
+
export declare const HELLO_WORLD_WITH_WINDOWS_ENDING: string;
|
|
5
|
+
export declare const SOME_FILE: TextDocument;
|
|
6
|
+
export declare const SOME_FILE_WITH_ALT_CASED_LANGUAGE_ID: TextDocument;
|
|
7
|
+
export declare const SOME_CLOSED_FILE: TextDocument;
|
|
8
|
+
export declare const SOME_UNSUPPORTED_FILE: TextDocument;
|
|
9
|
+
export declare const SOME_FILE_WITH_EXTENSION: TextDocument;
|
|
10
|
+
export declare const HELLO_WORLD_LINE = "Console.WriteLine(\"Hello World!\");";
|
|
11
|
+
export declare const SINGLE_LINE_FILE_CUTOFF_INDEX = 2;
|
|
12
|
+
export declare const SOME_SINGLE_LINE_FILE: TextDocument;
|
|
13
|
+
export declare const EXPECTED_SUGGESTION: Suggestion[];
|
|
14
|
+
export declare const EXPECTED_RESPONSE_CONTEXT: ResponseContext;
|
|
15
|
+
export declare const EXPECTED_SESSION_ID = "some-random-session-uuid-0";
|
|
16
|
+
export declare const EXPECTED_RESULT: {
|
|
17
|
+
sessionId: string;
|
|
18
|
+
items: {
|
|
19
|
+
itemId: string;
|
|
20
|
+
insertText: string;
|
|
21
|
+
range: undefined;
|
|
22
|
+
references: undefined;
|
|
23
|
+
}[];
|
|
24
|
+
};
|
|
25
|
+
export declare const EXPECTED_REFERENCE: {
|
|
26
|
+
licenseName: string;
|
|
27
|
+
repository: string;
|
|
28
|
+
url: string;
|
|
29
|
+
recommendationContentSpan: {
|
|
30
|
+
start: number;
|
|
31
|
+
end: number;
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
export declare const EXPECTED_SUGGESTION_LIST: Suggestion[];
|
|
35
|
+
export declare const EXPECTED_RESULT_WITH_REFERENCES: {
|
|
36
|
+
sessionId: string;
|
|
37
|
+
items: ({
|
|
38
|
+
itemId: string;
|
|
39
|
+
insertText: string;
|
|
40
|
+
range: undefined;
|
|
41
|
+
references: undefined;
|
|
42
|
+
} | {
|
|
43
|
+
itemId: string;
|
|
44
|
+
insertText: string;
|
|
45
|
+
range: undefined;
|
|
46
|
+
references: {
|
|
47
|
+
licenseName: string;
|
|
48
|
+
referenceName: string;
|
|
49
|
+
referenceUrl: string;
|
|
50
|
+
position: {
|
|
51
|
+
startCharacter: number;
|
|
52
|
+
endCharacter: number;
|
|
53
|
+
};
|
|
54
|
+
}[];
|
|
55
|
+
})[];
|
|
56
|
+
};
|
|
57
|
+
export declare const EXPECTED_RESULT_WITHOUT_REFERENCES: {
|
|
58
|
+
sessionId: string;
|
|
59
|
+
items: {
|
|
60
|
+
itemId: string;
|
|
61
|
+
insertText: string;
|
|
62
|
+
range: undefined;
|
|
63
|
+
references: undefined;
|
|
64
|
+
}[];
|
|
65
|
+
};
|
|
66
|
+
export declare const EMPTY_RESULT: {
|
|
67
|
+
items: never[];
|
|
68
|
+
sessionId: string;
|
|
69
|
+
};
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EMPTY_RESULT = exports.EXPECTED_RESULT_WITHOUT_REFERENCES = exports.EXPECTED_RESULT_WITH_REFERENCES = exports.EXPECTED_SUGGESTION_LIST = exports.EXPECTED_REFERENCE = exports.EXPECTED_RESULT = exports.EXPECTED_SESSION_ID = exports.EXPECTED_RESPONSE_CONTEXT = exports.EXPECTED_SUGGESTION = exports.SOME_SINGLE_LINE_FILE = exports.SINGLE_LINE_FILE_CUTOFF_INDEX = exports.HELLO_WORLD_LINE = exports.SOME_FILE_WITH_EXTENSION = exports.SOME_UNSUPPORTED_FILE = exports.SOME_CLOSED_FILE = exports.SOME_FILE_WITH_ALT_CASED_LANGUAGE_ID = exports.SOME_FILE = exports.HELLO_WORLD_WITH_WINDOWS_ENDING = exports.HELLO_WORLD_IN_CSHARP = void 0;
|
|
4
|
+
const vscode_languageserver_textdocument_1 = require("vscode-languageserver-textdocument");
|
|
5
|
+
exports.HELLO_WORLD_IN_CSHARP = `class HelloWorld
|
|
6
|
+
{
|
|
7
|
+
static void Main()
|
|
8
|
+
{
|
|
9
|
+
Console.WriteLine("Hello World!");
|
|
10
|
+
}
|
|
11
|
+
}`;
|
|
12
|
+
exports.HELLO_WORLD_WITH_WINDOWS_ENDING = exports.HELLO_WORLD_IN_CSHARP.replaceAll('\n', '\r\n');
|
|
13
|
+
exports.SOME_FILE = vscode_languageserver_textdocument_1.TextDocument.create('file:///test.cs', 'csharp', 1, exports.HELLO_WORLD_IN_CSHARP);
|
|
14
|
+
exports.SOME_FILE_WITH_ALT_CASED_LANGUAGE_ID = vscode_languageserver_textdocument_1.TextDocument.create(
|
|
15
|
+
// Use unsupported extension, so that we can test that we get a match based on the LanguageId
|
|
16
|
+
'file:///test.seesharp', 'CSharp', 1, exports.HELLO_WORLD_IN_CSHARP);
|
|
17
|
+
exports.SOME_CLOSED_FILE = vscode_languageserver_textdocument_1.TextDocument.create('file:///closed.cs', 'csharp', 1, exports.HELLO_WORLD_IN_CSHARP);
|
|
18
|
+
exports.SOME_UNSUPPORTED_FILE = vscode_languageserver_textdocument_1.TextDocument.create('file:///hopper.fm', 'flow-matic', 1, 'INPUT HELLO ; OUTPUT WORLD');
|
|
19
|
+
exports.SOME_FILE_WITH_EXTENSION = vscode_languageserver_textdocument_1.TextDocument.create('file:///missing.hpp', '', 1, exports.HELLO_WORLD_IN_CSHARP);
|
|
20
|
+
exports.HELLO_WORLD_LINE = `Console.WriteLine("Hello World!");`;
|
|
21
|
+
// Single line file will not have the full line contents
|
|
22
|
+
exports.SINGLE_LINE_FILE_CUTOFF_INDEX = 2;
|
|
23
|
+
exports.SOME_SINGLE_LINE_FILE = vscode_languageserver_textdocument_1.TextDocument.create('file:///single.cs', 'csharp', 1, exports.HELLO_WORLD_LINE.substring(exports.SINGLE_LINE_FILE_CUTOFF_INDEX));
|
|
24
|
+
exports.EXPECTED_SUGGESTION = [{ itemId: 'cwspr-item-id', content: 'recommendation' }];
|
|
25
|
+
exports.EXPECTED_RESPONSE_CONTEXT = {
|
|
26
|
+
requestId: 'cwspr-request-id',
|
|
27
|
+
codewhispererSessionId: 'cwspr-session-id',
|
|
28
|
+
};
|
|
29
|
+
exports.EXPECTED_SESSION_ID = 'some-random-session-uuid-0';
|
|
30
|
+
exports.EXPECTED_RESULT = {
|
|
31
|
+
sessionId: exports.EXPECTED_SESSION_ID,
|
|
32
|
+
items: [
|
|
33
|
+
{
|
|
34
|
+
itemId: exports.EXPECTED_SUGGESTION[0].itemId,
|
|
35
|
+
insertText: exports.EXPECTED_SUGGESTION[0].content,
|
|
36
|
+
range: undefined,
|
|
37
|
+
references: undefined,
|
|
38
|
+
},
|
|
39
|
+
],
|
|
40
|
+
};
|
|
41
|
+
exports.EXPECTED_REFERENCE = {
|
|
42
|
+
licenseName: 'test license',
|
|
43
|
+
repository: 'test repository',
|
|
44
|
+
url: 'test url',
|
|
45
|
+
recommendationContentSpan: { start: 0, end: 1 },
|
|
46
|
+
};
|
|
47
|
+
exports.EXPECTED_SUGGESTION_LIST = [
|
|
48
|
+
{ itemId: 'cwspr-item-id-1', content: 'recommendation without reference' },
|
|
49
|
+
{ itemId: 'cwspr-item-id-2', content: 'recommendation with reference', references: [exports.EXPECTED_REFERENCE] },
|
|
50
|
+
];
|
|
51
|
+
exports.EXPECTED_RESULT_WITH_REFERENCES = {
|
|
52
|
+
sessionId: exports.EXPECTED_SESSION_ID,
|
|
53
|
+
items: [
|
|
54
|
+
{
|
|
55
|
+
itemId: exports.EXPECTED_SUGGESTION_LIST[0].itemId,
|
|
56
|
+
insertText: exports.EXPECTED_SUGGESTION_LIST[0].content,
|
|
57
|
+
range: undefined,
|
|
58
|
+
references: undefined,
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
itemId: exports.EXPECTED_SUGGESTION_LIST[1].itemId,
|
|
62
|
+
insertText: exports.EXPECTED_SUGGESTION_LIST[1].content,
|
|
63
|
+
range: undefined,
|
|
64
|
+
references: [
|
|
65
|
+
{
|
|
66
|
+
licenseName: exports.EXPECTED_REFERENCE.licenseName,
|
|
67
|
+
referenceName: exports.EXPECTED_REFERENCE.repository,
|
|
68
|
+
referenceUrl: exports.EXPECTED_REFERENCE.url,
|
|
69
|
+
position: {
|
|
70
|
+
startCharacter: exports.EXPECTED_REFERENCE.recommendationContentSpan?.start,
|
|
71
|
+
endCharacter: exports.EXPECTED_REFERENCE.recommendationContentSpan?.end,
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
],
|
|
75
|
+
},
|
|
76
|
+
],
|
|
77
|
+
};
|
|
78
|
+
exports.EXPECTED_RESULT_WITHOUT_REFERENCES = {
|
|
79
|
+
sessionId: exports.EXPECTED_SESSION_ID,
|
|
80
|
+
items: [
|
|
81
|
+
{
|
|
82
|
+
itemId: exports.EXPECTED_SUGGESTION_LIST[0].itemId,
|
|
83
|
+
insertText: exports.EXPECTED_SUGGESTION_LIST[0].content,
|
|
84
|
+
range: undefined,
|
|
85
|
+
references: undefined,
|
|
86
|
+
},
|
|
87
|
+
],
|
|
88
|
+
};
|
|
89
|
+
exports.EMPTY_RESULT = { items: [], sessionId: '' };
|
|
90
|
+
//# sourceMappingURL=testUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testUtils.js","sourceRoot":"","sources":["../../src/language-server/testUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { AWSError } from 'aws-sdk';
|
|
2
|
+
import { Suggestion } from './codeWhispererService';
|
|
3
|
+
import { CodewhispererCompletionType } from './telemetry/types';
|
|
4
|
+
export declare function isAwsError(error: unknown): error is AWSError;
|
|
5
|
+
export declare function getCompletionType(suggestion: Suggestion): CodewhispererCompletionType;
|
|
6
|
+
export declare function parseJson(jsonString: string): any;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseJson = exports.getCompletionType = exports.isAwsError = void 0;
|
|
4
|
+
function isAwsError(error) {
|
|
5
|
+
if (error === undefined) {
|
|
6
|
+
return false;
|
|
7
|
+
}
|
|
8
|
+
return error instanceof Error && hasCode(error) && hasTime(error);
|
|
9
|
+
}
|
|
10
|
+
exports.isAwsError = isAwsError;
|
|
11
|
+
function hasCode(error) {
|
|
12
|
+
return typeof error.code === 'string';
|
|
13
|
+
}
|
|
14
|
+
function hasTime(error) {
|
|
15
|
+
return error.time instanceof Date;
|
|
16
|
+
}
|
|
17
|
+
function getCompletionType(suggestion) {
|
|
18
|
+
const nonBlankLines = suggestion.content.split('\n').filter(line => line.trim() !== '').length;
|
|
19
|
+
return nonBlankLines > 1 ? 'Block' : 'Line';
|
|
20
|
+
}
|
|
21
|
+
exports.getCompletionType = getCompletionType;
|
|
22
|
+
function parseJson(jsonString) {
|
|
23
|
+
try {
|
|
24
|
+
return JSON.parse(jsonString);
|
|
25
|
+
}
|
|
26
|
+
catch {
|
|
27
|
+
throw new Error(`error while parsing string: ${jsonString}`);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.parseJson = parseJson;
|
|
31
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/language-server/utils.ts"],"names":[],"mappings":";;;AAIA,SAAgB,UAAU,CAAC,KAAc;IACrC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,KAAK,CAAA;IAChB,CAAC;IAED,OAAO,KAAK,YAAY,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAA;AACrE,CAAC;AAND,gCAMC;AAED,SAAS,OAAO,CAAI,KAAQ;IACxB,OAAO,OAAQ,KAA4B,CAAC,IAAI,KAAK,QAAQ,CAAA;AACjE,CAAC;AAED,SAAS,OAAO,CAAC,KAAY;IACzB,OAAQ,KAA4B,CAAC,IAAI,YAAY,IAAI,CAAA;AAC7D,CAAC;AAED,SAAgB,iBAAiB,CAAC,UAAsB;IACpD,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAA;IAE9F,OAAO,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAA;AAC/C,CAAC;AAJD,8CAIC;AAED,SAAgB,SAAS,CAAC,UAAkB;IACxC,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IACjC,CAAC;IAAC,MAAM,CAAC;QACL,MAAM,IAAI,KAAK,CAAC,+BAA+B,UAAU,EAAE,CAAC,CAAA;IAChE,CAAC;AACL,CAAC;AAND,8BAMC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@aws/lsp-codewhisperer",
|
|
3
|
+
"version": "0.0.3",
|
|
4
|
+
"description": "CodeWhisperer Language Server",
|
|
5
|
+
"main": "out/index.js",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "https://github.com/aws/language-servers"
|
|
9
|
+
},
|
|
10
|
+
"author": "Amazon Web Services",
|
|
11
|
+
"license": "Apache-2.0",
|
|
12
|
+
"engines": {
|
|
13
|
+
"node": ">=18.0.0"
|
|
14
|
+
},
|
|
15
|
+
"scripts": {
|
|
16
|
+
"compile": "tsc --build",
|
|
17
|
+
"postcompile": "npm run copyServiceClient",
|
|
18
|
+
"copyServiceClient": "copyfiles -u 1 --error ./src/client/sigv4/*.json out && copyfiles -u 1 --error ./src/client/token/*.json out",
|
|
19
|
+
"test:unit": "ts-mocha -b 'src/**/*.test.ts'",
|
|
20
|
+
"test:prettier": "prettier . --check",
|
|
21
|
+
"test": "npm run test:prettier && npm run test:unit",
|
|
22
|
+
"fix:prettier": "prettier . --write"
|
|
23
|
+
},
|
|
24
|
+
"dependencies": {
|
|
25
|
+
"@aws/language-server-runtimes": "file:../../bin/aws-language-server-runtimes-0.1.1.tgz",
|
|
26
|
+
"adm-zip": "^0.5.10",
|
|
27
|
+
"aws-sdk": "^2.1403.0",
|
|
28
|
+
"got": "^11.8.5",
|
|
29
|
+
"js-md5": "^0.8.3",
|
|
30
|
+
"proxy-http-agent": "^1.0.1",
|
|
31
|
+
"uuid": "^9.0.1",
|
|
32
|
+
"vscode-languageserver": "^9.0.1",
|
|
33
|
+
"vscode-languageserver-textdocument": "^1.0.8"
|
|
34
|
+
},
|
|
35
|
+
"devDependencies": {
|
|
36
|
+
"@types/adm-zip": "^0.4.34",
|
|
37
|
+
"@types/uuid": "^9.0.6",
|
|
38
|
+
"assert": "^2.1.0",
|
|
39
|
+
"copyfiles": "^2.4.1",
|
|
40
|
+
"ts-mocha": "^10.0.0",
|
|
41
|
+
"ts-sinon": "^2.0.2"
|
|
42
|
+
},
|
|
43
|
+
"prettier": {
|
|
44
|
+
"printWidth": 120,
|
|
45
|
+
"trailingComma": "es5",
|
|
46
|
+
"tabWidth": 4,
|
|
47
|
+
"singleQuote": true,
|
|
48
|
+
"semi": false,
|
|
49
|
+
"bracketSpacing": true,
|
|
50
|
+
"arrowParens": "avoid",
|
|
51
|
+
"endOfLine": "lf"
|
|
52
|
+
}
|
|
53
|
+
}
|