Skip to content

Commit a533a82

Browse files
ergunshDevtools-frontend LUCI CQ
authored andcommitted
[AiAssistance] Move AiAssistance related models to models/ folder
Fixed: 404223216 Change-Id: I843077b9a6dbe41239c8eb7918877c121cf0fc31 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6361635 Reviewed-by: Nikolay Vitkov <[email protected]> Commit-Queue: Ergün Erdoğmuş <[email protected]>
1 parent 89471a3 commit a533a82

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+440
-380
lines changed

config/gni/devtools_grd_files.gni

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,7 @@ grd_files_release_sources = [
376376
"front_end/js_app.html",
377377
"front_end/legacy_test_runner/legacy_test_runner.js",
378378
"front_end/legacy_test_runner/test_runner/test_runner.js",
379+
"front_end/models/ai_assistance/ai_assistance.js",
379380
"front_end/models/autofill_manager/autofill_manager.js",
380381
"front_end/models/bindings/bindings.js",
381382
"front_end/models/breakpoints/breakpoints.js",
@@ -979,6 +980,23 @@ grd_files_debug_sources = [
979980
"front_end/generated/SupportedCSSProperties.js",
980981
"front_end/generated/protocol.js",
981982
"front_end/legacy_test_runner/test_runner/TestRunner.js",
983+
"front_end/models/ai_assistance/AgentProject.js",
984+
"front_end/models/ai_assistance/AiHistoryStorage.js",
985+
"front_end/models/ai_assistance/ChangeManager.js",
986+
"front_end/models/ai_assistance/EvaluateAction.js",
987+
"front_end/models/ai_assistance/ExtensionScope.js",
988+
"front_end/models/ai_assistance/agents/AiAgent.js",
989+
"front_end/models/ai_assistance/agents/FileAgent.js",
990+
"front_end/models/ai_assistance/agents/NetworkAgent.js",
991+
"front_end/models/ai_assistance/agents/PatchAgent.js",
992+
"front_end/models/ai_assistance/agents/PerformanceAgent.js",
993+
"front_end/models/ai_assistance/agents/PerformanceInsightsAgent.js",
994+
"front_end/models/ai_assistance/agents/StylingAgent.js",
995+
"front_end/models/ai_assistance/data_formatters/FileFormatter.js",
996+
"front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.js",
997+
"front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.js",
998+
"front_end/models/ai_assistance/debug.js",
999+
"front_end/models/ai_assistance/injected.js",
9821000
"front_end/models/autofill_manager/AutofillManager.js",
9831001
"front_end/models/bindings/CSSWorkspaceBinding.js",
9841002
"front_end/models/bindings/CompilerScriptMapping.js",
@@ -1205,32 +1223,15 @@ grd_files_debug_sources = [
12051223
"front_end/panels/accessibility/accessibilityNode.css.js",
12061224
"front_end/panels/accessibility/accessibilityProperties.css.js",
12071225
"front_end/panels/accessibility/axBreadcrumbs.css.js",
1208-
"front_end/panels/ai_assistance/AgentProject.js",
12091226
"front_end/panels/ai_assistance/AiAssistancePanel.js",
1210-
"front_end/panels/ai_assistance/AiHistoryStorage.js",
1211-
"front_end/panels/ai_assistance/ChangeManager.js",
1212-
"front_end/panels/ai_assistance/EvaluateAction.js",
1213-
"front_end/panels/ai_assistance/ExtensionScope.js",
12141227
"front_end/panels/ai_assistance/PatchWidget.js",
12151228
"front_end/panels/ai_assistance/SelectWorkspaceDialog.js",
1216-
"front_end/panels/ai_assistance/agents/AiAgent.js",
1217-
"front_end/panels/ai_assistance/agents/FileAgent.js",
1218-
"front_end/panels/ai_assistance/agents/NetworkAgent.js",
1219-
"front_end/panels/ai_assistance/agents/PatchAgent.js",
1220-
"front_end/panels/ai_assistance/agents/PerformanceAgent.js",
1221-
"front_end/panels/ai_assistance/agents/PerformanceInsightsAgent.js",
1222-
"front_end/panels/ai_assistance/agents/StylingAgent.js",
12231229
"front_end/panels/ai_assistance/aiAssistancePanel.css.js",
12241230
"front_end/panels/ai_assistance/components/ChatView.js",
12251231
"front_end/panels/ai_assistance/components/MarkdownRendererWithCodeBlock.js",
12261232
"front_end/panels/ai_assistance/components/UserActionRow.js",
12271233
"front_end/panels/ai_assistance/components/chatView.css.js",
12281234
"front_end/panels/ai_assistance/components/userActionRow.css.js",
1229-
"front_end/panels/ai_assistance/data_formatters/FileFormatter.js",
1230-
"front_end/panels/ai_assistance/data_formatters/NetworkRequestFormatter.js",
1231-
"front_end/panels/ai_assistance/data_formatters/PerformanceInsightFormatter.js",
1232-
"front_end/panels/ai_assistance/debug.js",
1233-
"front_end/panels/ai_assistance/injected.js",
12341235
"front_end/panels/ai_assistance/selectWorkspaceDialog.css.js",
12351236
"front_end/panels/animation/AnimationGroupPreviewUI.js",
12361237
"front_end/panels/animation/AnimationScreenshotPopover.js",

front_end/BUILD.gn

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ group("unittests") {
131131
"entrypoints/inspector_main:unittests",
132132
"entrypoints/main:unittests",
133133
"entrypoints/wasmparser_worker:unittests",
134+
"models/ai_assistance:unittests",
134135
"models/autofill_manager:unittests",
135136
"models/bindings:unittests",
136137
"models/breakpoints:unittests",

front_end/panels/ai_assistance/AgentProject.test.ts renamed to front_end/models/ai_assistance/AgentProject.test.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44

55
import {createTestFilesystem} from '../../testing/AiAssistanceHelpers.js';
66
import {describeWithEnvironment} from '../../testing/EnvironmentHelpers.js';
7-
8-
import * as AiAssistance from './ai_assistance.js';
7+
import * as AiAssistanceModel from '../ai_assistance/ai_assistance.js';
98

109
describeWithEnvironment('AgentProject', () => {
1110
async function mockProject(
@@ -18,7 +17,7 @@ describeWithEnvironment('AgentProject', () => {
1817
maxLinesChanged: number,
1918
}) {
2019
const {project, uiSourceCode} = createTestFilesystem('file:///path/to/project', files);
21-
return {project: new AiAssistance.AgentProject(project, options), uiSourceCode};
20+
return {project: new AiAssistanceModel.AgentProject(project, options), uiSourceCode};
2221
}
2322

2423
it('can list files', async () => {

front_end/panels/ai_assistance/AgentProject.ts renamed to front_end/models/ai_assistance/AgentProject.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
44

5-
import * as Persistence from '../../models/persistence/persistence.js';
6-
import * as TextUtils from '../../models/text_utils/text_utils.js';
7-
import type * as Workspace from '../../models/workspace/workspace.js';
85
import * as Diff from '../../third_party/diff/diff.js';
6+
import * as Persistence from '../persistence/persistence.js';
7+
import * as TextUtils from '../text_utils/text_utils.js';
8+
import type * as Workspace from '../workspace/workspace.js';
99

1010
import {debugLog} from './debug.js';
1111

front_end/panels/ai_assistance/AiHistoryStorage.test.ts renamed to front_end/models/ai_assistance/AiHistoryStorage.test.ts

File renamed without changes.
File renamed without changes.
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
# Copyright 2025 The Chromium Authors. All rights reserved.
2+
# Use of this source code is governed by a BSD-style license that can be
3+
# found in the LICENSE file.
4+
5+
import("../../../scripts/build/ninja/devtools_entrypoint.gni")
6+
import("../../../scripts/build/ninja/devtools_module.gni")
7+
import("../../../scripts/build/typescript/typescript.gni")
8+
import("../visibility.gni")
9+
10+
devtools_module("ai_assistance") {
11+
sources = [
12+
"AgentProject.ts",
13+
"AiHistoryStorage.ts",
14+
"ChangeManager.ts",
15+
"EvaluateAction.ts",
16+
"ExtensionScope.ts",
17+
"agents/AiAgent.ts",
18+
"agents/FileAgent.ts",
19+
"agents/NetworkAgent.ts",
20+
"agents/PatchAgent.ts",
21+
"agents/PerformanceAgent.ts",
22+
"agents/PerformanceInsightsAgent.ts",
23+
"agents/StylingAgent.ts",
24+
"data_formatters/FileFormatter.ts",
25+
"data_formatters/NetworkRequestFormatter.ts",
26+
"data_formatters/PerformanceInsightFormatter.ts",
27+
"debug.ts",
28+
"injected.ts",
29+
]
30+
31+
deps = [
32+
"../../core/common:bundle",
33+
"../../core/host:bundle",
34+
"../../core/i18n:bundle",
35+
"../../core/root:bundle",
36+
"../../panels/elements:bundle",
37+
"../../panels/network:bundle",
38+
"../../panels/timeline/utils:bundle",
39+
"../../panels/utils:bundle",
40+
"../../third_party/diff:bundle",
41+
"../../ui/legacy:bundle",
42+
"../../ui/lit:bundle",
43+
"../bindings:bundle",
44+
"../logs:bundle",
45+
"../trace:bundle",
46+
"../workspace:bundle",
47+
]
48+
}
49+
50+
devtools_entrypoint("bundle") {
51+
entrypoint = "ai_assistance.ts"
52+
53+
deps = [ ":ai_assistance" ]
54+
55+
visibility = [
56+
":*",
57+
"../../entrypoints/main/*",
58+
"../../panels/ai_assistance/*",
59+
]
60+
61+
visibility += devtools_models_visibility
62+
}
63+
64+
ts_library("unittests") {
65+
testonly = true
66+
67+
sources = [
68+
"AgentProject.test.ts",
69+
"AiHistoryStorage.test.ts",
70+
"ChangeManager.test.ts",
71+
"EvaluateAction.test.ts",
72+
"ExtensionScope.test.ts",
73+
"agents/AiAgent.test.ts",
74+
"agents/FileAgent.test.ts",
75+
"agents/NetworkAgent.test.ts",
76+
"agents/PatchAgent.test.ts",
77+
"agents/PerformanceAgent.test.ts",
78+
"agents/PerformanceInsightsAgent.test.ts",
79+
"agents/StylingAgent.test.ts",
80+
"data_formatters/FileFormatter.test.ts",
81+
"data_formatters/NetworkRequestFormatter.test.ts",
82+
"data_formatters/PerformanceInsightFormatter.test.ts",
83+
]
84+
85+
deps = [
86+
":bundle",
87+
"../../core/common:bundle",
88+
"../../core/host:bundle",
89+
"../../core/platform:bundle",
90+
"../../core/sdk:bundle",
91+
"../../generated:protocol",
92+
"../../testing",
93+
"../bindings:bundle",
94+
"../trace:bundle",
95+
]
96+
}

front_end/panels/ai_assistance/ChangeManager.test.ts renamed to front_end/models/ai_assistance/ChangeManager.test.ts

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44

55
import * as SDK from '../../core/sdk/sdk.js';
66
import type * as Protocol from '../../generated/protocol.js';
7-
8-
import * as AiAssistance from './ai_assistance.js';
7+
import * as AiAssistanceModel from '../ai_assistance/ai_assistance.js';
98

109
describe('ChangeManager', () => {
1110
let styleSheetId = 0;
@@ -45,7 +44,7 @@ describe('ChangeManager', () => {
4544
}
4645

4746
it('can register a change', async () => {
48-
const changeManager = new AiAssistance.ChangeManager();
47+
const changeManager = new AiAssistanceModel.ChangeManager();
4948
const cssModel = createModel();
5049
await changeManager.addChange(cssModel, frameId, {
5150
groupId: agentId,
@@ -63,7 +62,7 @@ describe('ChangeManager', () => {
6362
});
6463

6564
it('can merge multiple changes with same className', async () => {
66-
const changeManager = new AiAssistance.ChangeManager();
65+
const changeManager = new AiAssistanceModel.ChangeManager();
6766
const cssModel = createModel();
6867
await changeManager.addChange(cssModel, frameId, {
6968
groupId: agentId,
@@ -92,7 +91,7 @@ describe('ChangeManager', () => {
9291
});
9392

9493
it('can register multiple changes with the same selector', async () => {
95-
const changeManager = new AiAssistance.ChangeManager();
94+
const changeManager = new AiAssistanceModel.ChangeManager();
9695
const cssModel = createModel();
9796
await changeManager.addChange(cssModel, frameId, {
9897
groupId: agentId,
@@ -120,7 +119,7 @@ describe('ChangeManager', () => {
120119
});
121120

122121
it('creates a stylesheet per frame', async () => {
123-
const changeManager = new AiAssistance.ChangeManager();
122+
const changeManager = new AiAssistanceModel.ChangeManager();
124123
const cssModel = createModel();
125124
await changeManager.addChange(cssModel, frameId, {
126125
groupId: agentId,
@@ -151,7 +150,7 @@ describe('ChangeManager', () => {
151150
});
152151

153152
it('can clear changes', async () => {
154-
const changeManager = new AiAssistance.ChangeManager();
153+
const changeManager = new AiAssistanceModel.ChangeManager();
155154
let cssModel = createModel();
156155
await changeManager.addChange(cssModel, frameId, {
157156
groupId: agentId,
@@ -185,13 +184,13 @@ describe('ChangeManager', () => {
185184

186185
describe('format changes', () => {
187186
it('returns empty string when there are no changes from the given agent', async () => {
188-
const changeManager = new AiAssistance.ChangeManager();
187+
const changeManager = new AiAssistanceModel.ChangeManager();
189188

190189
assert.strictEqual(changeManager.formatChangesForPatching(agentId), '');
191190
});
192191

193192
it('returns formatted changes for an agent without `.ai-style-change` classes', async () => {
194-
const changeManager = new AiAssistance.ChangeManager();
193+
const changeManager = new AiAssistanceModel.ChangeManager();
195194
const cssModel = createModel();
196195

197196
await changeManager.addChange(cssModel, frameId, {
@@ -208,7 +207,7 @@ describe('ChangeManager', () => {
208207
});
209208

210209
it('formats source location', async () => {
211-
const changeManager = new AiAssistance.ChangeManager();
210+
const changeManager = new AiAssistanceModel.ChangeManager();
212211
const cssModel = createModel();
213212
await changeManager.addChange(cssModel, frameId, {
214213
groupId: agentId,
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)