Skip to content

Commit 4997b95

Browse files
authored
Merge pull request #13 from constewart9/conorstw/types-NEW
Conorstw/types new
2 parents 474335b + e35bf29 commit 4997b95

31 files changed

+4642
-52
lines changed
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
name: Chat Types PR Validation
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
paths:
8+
- 'types/codegen/schema/chatTypes.json'
9+
workflow_dispatch:
10+
11+
jobs:
12+
validate-pr:
13+
name: Validate PR with chatTypes.json changes
14+
runs-on: ubuntu-latest
15+
16+
steps:
17+
- name: Checkout repository
18+
uses: actions/checkout@v4
19+
20+
- name: Setup Node.js
21+
uses: actions/setup-node@v4
22+
with:
23+
node-version: '20.x'
24+
#should we cache: 'npm'
25+
26+
# - name: Install root dependencies
27+
# working-directory: .
28+
# run: npm install
29+
30+
- name: Install codegen dependencies
31+
working-directory: types/codegen
32+
run: npm install
33+
34+
- name: Generate types
35+
working-directory: types/codegen
36+
run: npm run generate
37+
38+
- name: Build TypeScript
39+
working-directory: types/codegen/generated/typescript
40+
run: |
41+
npm i
42+
npm run build
43+
- name: Setup Java
44+
uses: actions/setup-java@v4
45+
with:
46+
distribution: 'corretto'
47+
java-version: '21'
48+
cache: 'maven'
49+
50+
- name: Build Java with Maven
51+
working-directory: types/codegen/generated/java
52+
run: |
53+
# Install the LSP4J dependency before compiling
54+
mvn dependency:get -Dartifact=org.eclipse.lsp4j:org.eclipse.lsp4j:0.22.0
55+
mvn clean compile -Djava.version=21

chat-client-ui-types/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
"author": "Amazon Web Services",
1919
"license": "Apache-2.0",
2020
"dependencies": {
21-
"@aws/language-server-runtimes-types": "^0.1.56"
21+
"@aws/language-server-runtimes-types": "^0.1.56",
22+
"@local/language-server-runtimes-generated-types": "file:../types/codegen/generated/typescript"
2223
}
2324
}

chat-client-ui-types/src/uiContracts.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,16 @@
1+
import { OPEN_TAB_REQUEST_METHOD, GET_SERIALIZED_CHAT_REQUEST_METHOD } from '@aws/language-server-runtimes-types'
12
import {
23
InsertToCursorPositionParams,
34
ChatOptions,
45
CodeSelectionType,
56
ReferenceTrackerInformation,
6-
OPEN_TAB_REQUEST_METHOD,
77
OpenTabResult,
8-
GET_SERIALIZED_CHAT_REQUEST_METHOD,
98
GetSerializedChatResult,
109
ChatPrompt,
1110
OpenFileDialogParams,
1211
DropFilesParams,
13-
} from '@aws/language-server-runtimes-types'
14-
export { InsertToCursorPositionParams } from '@aws/language-server-runtimes-types'
12+
} from '@local/language-server-runtimes-generated-types'
13+
export { InsertToCursorPositionParams } from '@local/language-server-runtimes-generated-types'
1514

1615
export type AuthFollowUpType = 'full-auth' | 're-auth' | 'missing_scopes' | 'use-supported-auth'
1716
export function isValidAuthFollowUpType(value: string): value is AuthFollowUpType {

package-lock.json

Lines changed: 15 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
],
1212
"workspaces": [
1313
"types",
14+
"types/codegen/generated/typescript",
1415
"runtimes",
1516
"chat-client-ui-types"
1617
],
@@ -36,7 +37,8 @@
3637
"test": "npm run test --workspaces --if-present",
3738
"preversion": "npm run test",
3839
"version": "npm run compile && git add -A .",
39-
"watch": "tsc --build --watch"
40+
"watch": "tsc --build --watch",
41+
"gen-comp": "cd ./types/codegen/ && npm run generate && cd ./generated/typescript && npm run build && cd ../../../ && npm run compile"
4042
},
4143
"devDependencies": {
4244
"@commitlint/cli": "^19.8.1",

runtimes/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
},
3232
"dependencies": {
3333
"@aws/language-server-runtimes-types": "^0.1.56",
34+
"@local/language-server-runtimes-generated-types": "file:../types/codegen/generated/typescript",
3435
"@opentelemetry/api": "^1.9.0",
3536
"@opentelemetry/api-logs": "^0.200.0",
3637
"@opentelemetry/core": "^2.0.0",

runtimes/protocol/chat.ts

Lines changed: 40 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,4 @@
11
import {
2-
ChatParams,
3-
ChatResult,
4-
EndChatParams,
5-
EndChatResult,
6-
FeedbackParams,
7-
FollowUpClickParams,
8-
InfoLinkClickParams,
9-
InsertToCursorPositionParams,
10-
LinkClickParams,
11-
QuickActionParams,
12-
SourceLinkClickParams,
13-
TabAddParams,
14-
TabChangeParams,
15-
TabRemoveParams,
162
ProtocolNotificationType,
173
ProtocolRequestType,
184
CHAT_REQUEST_METHOD,
@@ -29,63 +15,77 @@ import {
2915
TAB_CHANGE_NOTIFICATION_METHOD,
3016
TAB_REMOVE_NOTIFICATION_METHOD,
3117
AutoParameterStructuresProtocolRequestType,
18+
OPEN_TAB_REQUEST_METHOD,
19+
CHAT_UPDATE_NOTIFICATION_METHOD,
20+
FILE_CLICK_NOTIFICATION_METHOD,
21+
INLINE_CHAT_REQUEST_METHOD,
22+
CONTEXT_COMMAND_NOTIFICATION_METHOD,
23+
CREATE_PROMPT_NOTIFICATION_METHOD,
24+
INLINE_CHAT_RESULT_NOTIFICATION_METHOD,
25+
PINNED_CONTEXT_NOTIFICATION_METHOD,
26+
LIST_CONVERSATIONS_REQUEST_METHOD,
27+
CONVERSATION_CLICK_REQUEST_METHOD,
28+
GET_SERIALIZED_CHAT_REQUEST_METHOD,
29+
TAB_BAR_ACTION_REQUEST_METHOD,
30+
CHAT_OPTIONS_UPDATE_NOTIFICATION_METHOD,
31+
PROMPT_INPUT_OPTION_CHANGE_METHOD,
32+
BUTTON_CLICK_REQUEST_METHOD,
33+
LIST_MCP_SERVERS_REQUEST_METHOD,
34+
MCP_SERVER_CLICK_REQUEST_METHOD,
35+
RULE_CLICK_REQUEST_METHOD,
36+
LIST_RULES_REQUEST_METHOD,
37+
PINNED_CONTEXT_ADD_NOTIFICATION_METHOD,
38+
PINNED_CONTEXT_REMOVE_NOTIFICATION_METHOD,
39+
ACTIVE_EDITOR_CHANGED_NOTIFICATION_METHOD,
40+
OPEN_FILE_DIALOG_METHOD,
41+
ChatParams,
42+
ChatResult,
43+
EndChatParams,
44+
EndChatResult,
45+
FeedbackParams,
46+
FollowUpClickParams,
47+
InfoLinkClickParams,
48+
InsertToCursorPositionParams,
49+
LinkClickParams,
50+
QuickActionParams,
51+
SourceLinkClickParams,
52+
TabAddParams,
53+
TabChangeParams,
54+
TabRemoveParams,
3255
EncryptedChatParams,
3356
EncryptedQuickActionParams,
3457
QuickActionResult,
35-
OPEN_TAB_REQUEST_METHOD,
3658
OpenTabParams,
3759
OpenTabResult,
38-
CHAT_UPDATE_NOTIFICATION_METHOD,
39-
FILE_CLICK_NOTIFICATION_METHOD,
4060
ChatUpdateParams,
4161
FileClickParams,
42-
INLINE_CHAT_REQUEST_METHOD,
4362
InlineChatParams,
4463
InlineChatResult,
45-
CONTEXT_COMMAND_NOTIFICATION_METHOD,
4664
ContextCommandParams,
47-
CREATE_PROMPT_NOTIFICATION_METHOD,
4865
CreatePromptParams,
49-
INLINE_CHAT_RESULT_NOTIFICATION_METHOD,
50-
PINNED_CONTEXT_NOTIFICATION_METHOD,
5166
InlineChatResultParams,
5267
ListConversationsParams,
5368
ListConversationsResult,
54-
LIST_CONVERSATIONS_REQUEST_METHOD,
5569
ConversationClickParams,
5670
ConversationClickResult,
57-
CONVERSATION_CLICK_REQUEST_METHOD,
5871
GetSerializedChatParams,
5972
GetSerializedChatResult,
60-
GET_SERIALIZED_CHAT_REQUEST_METHOD,
6173
TabBarActionParams,
6274
TabBarActionResult,
63-
TAB_BAR_ACTION_REQUEST_METHOD,
6475
ChatOptionsUpdateParams,
65-
CHAT_OPTIONS_UPDATE_NOTIFICATION_METHOD,
6676
PromptInputOptionChangeParams,
67-
PROMPT_INPUT_OPTION_CHANGE_METHOD,
6877
ButtonClickParams,
6978
ButtonClickResult,
70-
BUTTON_CLICK_REQUEST_METHOD,
7179
ListMcpServersParams,
7280
ListMcpServersResult,
73-
LIST_MCP_SERVERS_REQUEST_METHOD,
81+
ListRulesResult,
82+
RuleClickResult,
83+
PinnedContextParams,
7484
McpServerClickParams,
7585
McpServerClickResult,
76-
MCP_SERVER_CLICK_REQUEST_METHOD,
7786
ListRulesParams,
7887
RuleClickParams,
79-
RULE_CLICK_REQUEST_METHOD,
80-
LIST_RULES_REQUEST_METHOD,
81-
ListRulesResult,
82-
RuleClickResult,
83-
PinnedContextParams,
84-
PINNED_CONTEXT_ADD_NOTIFICATION_METHOD,
85-
PINNED_CONTEXT_REMOVE_NOTIFICATION_METHOD,
8688
ActiveEditorChangedParams,
87-
ACTIVE_EDITOR_CHANGED_NOTIFICATION_METHOD,
88-
OPEN_FILE_DIALOG_METHOD,
8989
OpenFileDialogParams,
9090
OpenFileDialogResult,
9191
LIST_AVAILABLE_MODELS_REQUEST_METHOD,

runtimes/protocol/lsp.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,13 @@ import {
1212
RegistrationType,
1313
RequestType,
1414
} from 'vscode-languageserver-protocol'
15-
import { ChatOptions } from '@aws/language-server-runtimes-types'
15+
import { ChatOptions } from '@local/language-server-runtimes-generated-types'
1616
import { LogLevel } from '../runtimes/util/loggingUtil'
1717

18+
//Changed so only METHODS are exported from ./chat
1819
export * from '@aws/language-server-runtimes-types'
20+
21+
export * from '@local/language-server-runtimes-generated-types'
1922
export { TextDocument } from 'vscode-languageserver-textdocument'
2023

2124
// LSP protocol is a core dependency for LSP feature provided by runtimes.

types/.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
11
LICENSE
22
NOTICE
3-
SECURITY.md
3+
SECURITY.md
4+
codegen/scripts/**/*
5+
codegen/generated/**/*
6+
codegen/tests/fixtures/**/*

types/codegen/.gitignore

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# Generated code
2+
generated/
3+
4+
# Template bank
5+
typescript-template-bank/
6+
7+
# OpenAPI generator metadata
8+
.openapi-generator/
9+
10+
# Node.js dependencies
11+
node_modules/
12+
13+
# Build outputs
14+
dist/

0 commit comments

Comments
 (0)