Skip to content

Commit

Permalink
Add entrypint for genui. (#3177)
Browse files Browse the repository at this point in the history
  • Loading branch information
polina-c authored Mar 5, 2025
1 parent eae13fd commit e0e1377
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 4 deletions.
21 changes: 20 additions & 1 deletion pkgs/dart_services/lib/src/common_server.dart
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ class CommonServerImpl {
});

Future<void> init() async {
log.fine('initing CommonServerImpl');
log.fine('initializing CommonServerImpl');

analyzer = Analyzer(sdk);
await analyzer.init();
Expand Down Expand Up @@ -326,6 +326,25 @@ class CommonServerApi {
);
}

Future<Response> generateUi(Request request, String apiVersion) async {
if (apiVersion != api3) return unhandledVersion(apiVersion);

final generateCodeRequest = api.GenerateCodeRequest.fromJson(
await request.readAsJson(),
);

return _streamResponse(
'generateUi',
Stream.fromIterable([
'hello',
' from',
' genui',
' for ',
generateCodeRequest.prompt,
]),
);
}

Future<Response> updateCode(Request request, String apiVersion) async {
if (apiVersion != api3) return unhandledVersion(apiVersion);

Expand Down
15 changes: 15 additions & 0 deletions pkgs/dartpad_shared/lib/model.dart
Original file line number Diff line number Diff line change
Expand Up @@ -469,6 +469,21 @@ class GenerateCodeRequest {
String toString() => 'GenerateCodeRequest [$prompt]';
}

@JsonSerializable()
class GenerateUiRequest {
final String prompt;

GenerateUiRequest({required this.prompt});

factory GenerateUiRequest.fromJson(Map<String, Object?> json) =>
_$GenerateUiRequestFromJson(json);

Map<String, Object?> toJson() => _$GenerateUiRequestToJson(this);

@override
String toString() => 'GenerateUiRequest [$prompt]';
}

@JsonSerializable()
class UpdateCodeRequest {
final AppType appType;
Expand Down
12 changes: 9 additions & 3 deletions pkgs/dartpad_shared/lib/model.g.dart

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit e0e1377

Please sign in to comment.