@theia/ai-core-ui 1.75.0-next.43 → 1.75.0-next.46
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/lib/browser/ai-configuration/ai-configuration-category.d.ts +9 -2
- package/lib/browser/ai-configuration/ai-configuration-category.d.ts.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-category.js.map +1 -1
- package/lib/browser/ai-configuration/components/ai-configuration-components.spec.js +61 -0
- package/lib/browser/ai-configuration/components/ai-configuration-components.spec.js.map +1 -1
- package/lib/browser/ai-configuration/components/ai-configuration-item-row.d.ts +4 -1
- package/lib/browser/ai-configuration/components/ai-configuration-item-row.d.ts.map +1 -1
- package/lib/browser/ai-configuration/components/ai-configuration-item-row.js +3 -2
- package/lib/browser/ai-configuration/components/ai-configuration-item-row.js.map +1 -1
- package/lib/browser/ai-configuration/components/ai-configuration-origin-badge.d.ts +49 -0
- package/lib/browser/ai-configuration/components/ai-configuration-origin-badge.d.ts.map +1 -0
- package/lib/browser/ai-configuration/components/ai-configuration-origin-badge.js +79 -0
- package/lib/browser/ai-configuration/components/ai-configuration-origin-badge.js.map +1 -0
- package/lib/browser/ai-configuration/components/ai-configuration-primitives.d.ts +7 -1
- package/lib/browser/ai-configuration/components/ai-configuration-primitives.d.ts.map +1 -1
- package/lib/browser/ai-configuration/components/ai-configuration-primitives.js +2 -1
- package/lib/browser/ai-configuration/components/ai-configuration-primitives.js.map +1 -1
- package/lib/browser/ai-configuration/components/collapsible-list.d.ts +7 -0
- package/lib/browser/ai-configuration/components/collapsible-list.d.ts.map +1 -1
- package/lib/browser/ai-configuration/components/collapsible-list.js +2 -1
- package/lib/browser/ai-configuration/components/collapsible-list.js.map +1 -1
- package/lib/browser/ai-configuration/renderers/collection-category-renderer.d.ts +1 -1
- package/lib/browser/ai-configuration/renderers/collection-category-renderer.d.ts.map +1 -1
- package/lib/browser/ai-configuration/renderers/collection-category-renderer.js +3 -3
- package/lib/browser/ai-configuration/renderers/collection-category-renderer.js.map +1 -1
- package/package.json +5 -5
- package/src/browser/ai-configuration/ai-configuration-category.ts +10 -2
- package/src/browser/ai-configuration/components/ai-configuration-components.spec.ts +65 -0
- package/src/browser/ai-configuration/components/ai-configuration-item-row.tsx +6 -2
- package/src/browser/ai-configuration/components/ai-configuration-origin-badge.tsx +114 -0
- package/src/browser/ai-configuration/components/ai-configuration-primitives.tsx +11 -2
- package/src/browser/ai-configuration/components/collapsible-list.tsx +10 -2
- package/src/browser/ai-configuration/renderers/collection-category-renderer.tsx +9 -2
- package/src/browser/style/ai-configuration-components.css +45 -0
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Event } from '@theia/core';
|
|
2
|
+
import type { AiConfigurationOrigin } from './components/ai-configuration-origin-badge';
|
|
2
3
|
/**
|
|
3
4
|
* Contribution point for a category shown in the AI Configuration view.
|
|
4
5
|
*
|
|
@@ -139,10 +140,16 @@ export interface AiConfigurationTreeItem {
|
|
|
139
140
|
readonly label: string;
|
|
140
141
|
/**
|
|
141
142
|
* Short labels shown as badges next to the item's name, for what it *is* rather than what it is doing
|
|
142
|
-
* (which is {@link status})
|
|
143
|
-
*
|
|
143
|
+
* (which is {@link status}). Use {@link origins} for where the item came from, which is a badge of its
|
|
144
|
+
* own kind: it carries an icon and leads somewhere.
|
|
144
145
|
*/
|
|
145
146
|
readonly tags?: string[];
|
|
147
|
+
/**
|
|
148
|
+
* Where the item came from, when that is not the user - an AI registry entry, an Agent Plugin. Shown
|
|
149
|
+
* next to the item's name on the overview and, unchanged, on the item's detail header, so that
|
|
150
|
+
* provenance reads the same in both places.
|
|
151
|
+
*/
|
|
152
|
+
readonly origins?: AiConfigurationOrigin[];
|
|
146
153
|
/** Status badge shown on the overview card and the item detail header. */
|
|
147
154
|
readonly status?: AiConfigurationItemStatus;
|
|
148
155
|
/** Short text for the overview card. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-configuration-category.d.ts","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-category.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ai-configuration-category.d.ts","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-category.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-configuration-category.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-category.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;
|
|
1
|
+
{"version":3,"file":"ai-configuration-category.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-category.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAMhF;;;;;;;GAOG;AACU,QAAA,uBAAuB,GAAG,MAAM,CAAC,yBAAyB,CAAC,CAAC;AAQzE;;;;;GAKG;AACH,IAAiB,4BAA4B,CAW5C;AAXD,WAAiB,4BAA4B;IAC5B,oCAAO,GAAG,GAAG,CAAC;IACd,mCAAM,GAAG,GAAG,CAAC;IACb,0CAAa,GAAG,GAAG,CAAC;IACpB,mCAAM,GAAG,GAAG,CAAC;IACb,+CAAkB,GAAG,GAAG,CAAC;IACzB,4CAAe,GAAG,GAAG,CAAC;IACtB,sCAAS,GAAG,GAAG,CAAC;IAChB,wCAAW,GAAG,GAAG,CAAC;IAClB,kCAAK,GAAG,GAAG,CAAC;IACZ,wCAAW,GAAG,GAAG,CAAC;AACnC,CAAC,EAXgB,4BAA4B,4CAA5B,4BAA4B,QAW5C;AAED;;;;GAIG;AACH,IAAiB,yBAAyB,CAWzC;AAXD,WAAiB,yBAAyB;IACzB,iCAAO,GAAG,SAAS,CAAC;IACpB,gCAAM,GAAG,QAAQ,CAAC;IAClB,uCAAa,GAAG,eAAe,CAAC;IAChC,gCAAM,GAAG,QAAQ,CAAC;IAClB,4CAAkB,GAAG,oBAAoB,CAAC;IAC1C,yCAAe,GAAG,iBAAiB,CAAC;IACpC,mCAAS,GAAG,WAAW,CAAC;IACxB,qCAAW,GAAG,aAAa,CAAC;IAC5B,+BAAK,GAAG,OAAO,CAAC;IAChB,qCAAW,GAAG,aAAa,CAAC;AAC7C,CAAC,EAXgB,yBAAyB,yCAAzB,yBAAyB,QAWzC;AAED;;;;GAIG;AACH,IAAiB,oBAAoB,CAcpC;AAdD,WAAiB,oBAAoB;IACjC;;;OAGG;IACU,kCAAa,GAAG,OAAO,CAAC;IAErC,0GAA0G;IAC1G,SAAgB,YAAY,CAAC,QAAgB;QACzC,OAAO;YACH,UAAU,EAAE,yBAAyB,CAAC,KAAK;YAC3C,SAAS,EAAE,EAAE,KAAK,EAAE,qBAAA,aAAa,GAAG,QAAQ,EAAE;SACjD,CAAC;IACN,CAAC;IALe,iCAAY,eAK3B,CAAA;AACL,CAAC,EAdgB,oBAAoB,oCAApB,oBAAoB,QAcpC"}
|
|
@@ -31,6 +31,7 @@ const react_dom_1 = require("@theia/core/shared/react-dom");
|
|
|
31
31
|
const client_1 = require("@theia/core/shared/react-dom/client");
|
|
32
32
|
const ai_configuration_item_row_1 = require("./ai-configuration-item-row");
|
|
33
33
|
const ai_configuration_primitives_1 = require("./ai-configuration-primitives");
|
|
34
|
+
const ai_configuration_origin_badge_1 = require("./ai-configuration-origin-badge");
|
|
34
35
|
const ai_configuration_setting_row_1 = require("./ai-configuration-setting-row");
|
|
35
36
|
const ai_configuration_controls_1 = require("./ai-configuration-controls");
|
|
36
37
|
const browser_1 = require("@theia/core/lib/browser");
|
|
@@ -192,6 +193,66 @@ describe('AI Configuration primitives', () => {
|
|
|
192
193
|
const tree = await (0, ai_configuration_primitives_1.AiConfigurationItemDetailHeader)({ title: 'Coder', subtitle: 'agent-id-1' });
|
|
193
194
|
(0, chai_1.expect)(textOf(tree)).to.include('Coder').and.to.include('agent-id-1');
|
|
194
195
|
});
|
|
196
|
+
it('AiConfigurationOriginBadge is a button that activates its origin, and does not open the row it sits in', () => {
|
|
197
|
+
let activated = 0;
|
|
198
|
+
let rowOpened = 0;
|
|
199
|
+
const { container, dispose } = mount(React.createElement('div', { onClick: () => { rowOpened++; } }, React.createElement(ai_configuration_origin_badge_1.AiConfigurationOriginBadge, {
|
|
200
|
+
origin: { label: 'From registry', iconClass: 'codicon-link-external', tooltip: 'Open in AI registry: x', activate: () => { activated++; } }
|
|
201
|
+
})));
|
|
202
|
+
try {
|
|
203
|
+
const badge = container.querySelector('button.ai-configuration-origin-badge');
|
|
204
|
+
(0, chai_1.expect)(badge.getAttribute('title')).to.equal('Open in AI registry: x');
|
|
205
|
+
(0, chai_1.expect)(badge.textContent).to.include('From registry');
|
|
206
|
+
(0, react_dom_1.flushSync)(() => badge.click());
|
|
207
|
+
(0, chai_1.expect)(activated).to.equal(1);
|
|
208
|
+
// The surrounding row and detail header are clickable themselves; following the badge must
|
|
209
|
+
// not also open them.
|
|
210
|
+
(0, chai_1.expect)(rowOpened).to.equal(0);
|
|
211
|
+
}
|
|
212
|
+
finally {
|
|
213
|
+
dispose();
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
it('AiConfigurationOriginBadge is not focusable when the origin leads nowhere', () => {
|
|
217
|
+
const { container, dispose } = mount(React.createElement(ai_configuration_origin_badge_1.AiConfigurationOriginBadge, {
|
|
218
|
+
origin: { label: 'via Acme', iconClass: 'codicon-package', tooltip: 'Acme' }
|
|
219
|
+
}));
|
|
220
|
+
try {
|
|
221
|
+
(0, chai_1.expect)(container.querySelector('button')).to.be.null;
|
|
222
|
+
(0, chai_1.expect)(container.querySelector('span.ai-configuration-origin-badge')?.textContent).to.include('via Acme');
|
|
223
|
+
}
|
|
224
|
+
finally {
|
|
225
|
+
dispose();
|
|
226
|
+
}
|
|
227
|
+
});
|
|
228
|
+
it('AiConfigurationOriginBadges renders one badge per origin, in order, and nothing without any', () => {
|
|
229
|
+
const origin = (label) => ({ label, iconClass: 'codicon-link-external', tooltip: label, activate: () => { } });
|
|
230
|
+
const { container, dispose } = mount(React.createElement(ai_configuration_origin_badge_1.AiConfigurationOriginBadges, { origins: [origin('From registry'), origin('via Acme Devtools')] }));
|
|
231
|
+
try {
|
|
232
|
+
(0, chai_1.expect)(Array.from(container.querySelectorAll('.ai-configuration-origin-badge')).map(badge => badge.textContent))
|
|
233
|
+
.to.deep.equal(['From registry', 'via Acme Devtools']);
|
|
234
|
+
}
|
|
235
|
+
finally {
|
|
236
|
+
dispose();
|
|
237
|
+
}
|
|
238
|
+
const empty = mount(React.createElement('div', {}, React.createElement(ai_configuration_origin_badge_1.AiConfigurationOriginBadges, { origins: [] })));
|
|
239
|
+
try {
|
|
240
|
+
(0, chai_1.expect)(empty.container.querySelector('.ai-configuration-origin-badges')).to.be.null;
|
|
241
|
+
}
|
|
242
|
+
finally {
|
|
243
|
+
empty.dispose();
|
|
244
|
+
}
|
|
245
|
+
});
|
|
246
|
+
it('AiConfigurationOrigin builds the same registry and Agent Plugin badges for every page to use', () => {
|
|
247
|
+
const registry = ai_configuration_origin_badge_1.AiConfigurationOrigin.registry('io.github.acme/validator', () => { });
|
|
248
|
+
(0, chai_1.expect)(registry.label).to.equal('From registry');
|
|
249
|
+
(0, chai_1.expect)(registry.iconClass).to.contain('codicon-link-external');
|
|
250
|
+
(0, chai_1.expect)(registry.tooltip).to.contain('io.github.acme/validator');
|
|
251
|
+
const plugin = ai_configuration_origin_badge_1.AiConfigurationOrigin.agentPlugin({ pluginId: 'io.github.acme/devtools', name: 'Acme Devtools' }, () => { });
|
|
252
|
+
(0, chai_1.expect)(plugin.label).to.equal('via Acme Devtools');
|
|
253
|
+
(0, chai_1.expect)(plugin.iconClass).to.contain('codicon-package');
|
|
254
|
+
(0, chai_1.expect)(plugin.tooltip).to.contain('Acme Devtools');
|
|
255
|
+
});
|
|
195
256
|
it('AiConfigurationSettingRow renders title and control, marks modified rows, and hides the raw id', () => {
|
|
196
257
|
const host = document.createElement('div');
|
|
197
258
|
document.body.appendChild(host);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-configuration-components.spec.js","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/ai-configuration-components.spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ai-configuration-components.spec.js","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/ai-configuration-components.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as React from '@theia/core/shared/react';
|
|
2
2
|
import { AiConfigurationItemStatus } from '../ai-configuration-category';
|
|
3
|
+
import { AiConfigurationOrigin } from './ai-configuration-origin-badge';
|
|
3
4
|
export interface AiConfigurationItemRowProps {
|
|
4
5
|
readonly label: string;
|
|
5
6
|
/**
|
|
@@ -12,8 +13,10 @@ export interface AiConfigurationItemRowProps {
|
|
|
12
13
|
/** `codicon(...)` class shown before the label. */
|
|
13
14
|
readonly iconClass?: string;
|
|
14
15
|
readonly description?: string;
|
|
15
|
-
/** Short badges shown after the label,
|
|
16
|
+
/** Short badges shown after the label, for what the item *is*. Use {@link origins} for where it came from. */
|
|
16
17
|
readonly tags?: string[];
|
|
18
|
+
/** Where the item came from, shown after the tags as {@link AiConfigurationOriginBadge}s. */
|
|
19
|
+
readonly origins?: AiConfigurationOrigin[];
|
|
17
20
|
/** Status badge shown on the right (e.g. an alias' resolved model). */
|
|
18
21
|
readonly status?: AiConfigurationItemStatus;
|
|
19
22
|
/** `true` reveals the modified edge (left indicator bar), matching {@link AiConfigurationSettingRow}. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-configuration-item-row.d.ts","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/ai-configuration-item-row.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-configuration-item-row.d.ts","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/ai-configuration-item-row.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,OAAO,EAAE,qBAAqB,EAA+B,MAAM,iCAAiC,CAAC;AAGrG,MAAM,WAAW,2BAA2B;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,+GAA+G;IAC/G,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,mDAAmD;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,8GAA8G;IAC9G,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,6FAA6F;IAC7F,QAAQ,CAAC,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAC3C,uEAAuE;IACvE,QAAQ,CAAC,MAAM,CAAC,EAAE,yBAAyB,CAAC;IAC5C,yGAAyG;IACzG,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,yGAAyG;IACzG,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACpC;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;IAClD;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IACtC,oFAAoF;IACpF,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAClC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAkDxE,CAAC"}
|
|
@@ -19,6 +19,7 @@ const jsx_runtime_1 = require("@theia/core/shared/react/jsx-runtime");
|
|
|
19
19
|
// *****************************************************************************
|
|
20
20
|
const browser_1 = require("@theia/core/lib/browser");
|
|
21
21
|
const ai_configuration_primitives_1 = require("./ai-configuration-primitives");
|
|
22
|
+
const ai_configuration_origin_badge_1 = require("./ai-configuration-origin-badge");
|
|
22
23
|
const ai_configuration_setting_row_1 = require("./ai-configuration-setting-row");
|
|
23
24
|
/**
|
|
24
25
|
* Overview row for a collection item: an icon, a label with an optional description, and a right-hand slot
|
|
@@ -27,7 +28,7 @@ const ai_configuration_setting_row_1 = require("./ai-configuration-setting-row")
|
|
|
27
28
|
* ending in a chevron; without it the row simply presents its trailing control. A flat, list-style
|
|
28
29
|
* alternative to a card grid, matching the Settings and extensions lists; every non-label slot is optional.
|
|
29
30
|
*/
|
|
30
|
-
const AiConfigurationItemRow = ({ label, rowId, tags, monospaceLabel, iconClass, description, status, modified, trailing, onOpenMenu, onSelect, onActivateLabel, labelTooltip }) => {
|
|
31
|
+
const AiConfigurationItemRow = ({ label, rowId, tags, origins, monospaceLabel, iconClass, description, status, modified, trailing, onOpenMenu, onSelect, onActivateLabel, labelTooltip }) => {
|
|
31
32
|
const navigable = onSelect !== undefined;
|
|
32
33
|
const onKeyDown = (event) => {
|
|
33
34
|
if (onSelect && (event.key === 'Enter' || event.key === ' ')) {
|
|
@@ -41,7 +42,7 @@ const AiConfigurationItemRow = ({ label, rowId, tags, monospaceLabel, iconClass,
|
|
|
41
42
|
event.stopPropagation();
|
|
42
43
|
onActivateLabel();
|
|
43
44
|
}, children: label })
|
|
44
|
-
: (0, jsx_runtime_1.jsx)("span", { className: `ai-configuration-item-row-label${monospaceLabel ? ' mono' : ''}`, children: label }), tags && tags.length > 0 && (0, jsx_runtime_1.jsx)("span", { className: 'ai-configuration-item-row-tags', children: tags.map(tag => (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationKindBadge, { label: tag, variant: 'outline' }, tag)) })] }), description && (0, jsx_runtime_1.jsx)("span", { className: 'ai-configuration-item-row-description', children: description })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'ai-configuration-item-row-trailing', children: [status && (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationStatusBadge, { status: status }), trailing, navigable && (0, jsx_runtime_1.jsx)("span", { className: `ai-configuration-item-row-chevron ${(0, browser_1.codicon)('chevron-right')}`, "aria-hidden": true })] })] });
|
|
45
|
+
: (0, jsx_runtime_1.jsx)("span", { className: `ai-configuration-item-row-label${monospaceLabel ? ' mono' : ''}`, children: label }), tags && tags.length > 0 && (0, jsx_runtime_1.jsx)("span", { className: 'ai-configuration-item-row-tags', children: tags.map(tag => (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationKindBadge, { label: tag, variant: 'outline' }, tag)) }), (0, jsx_runtime_1.jsx)(ai_configuration_origin_badge_1.AiConfigurationOriginBadges, { origins: origins })] }), description && (0, jsx_runtime_1.jsx)("span", { className: 'ai-configuration-item-row-description', children: description })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'ai-configuration-item-row-trailing', children: [status && (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationStatusBadge, { status: status }), trailing, navigable && (0, jsx_runtime_1.jsx)("span", { className: `ai-configuration-item-row-chevron ${(0, browser_1.codicon)('chevron-right')}`, "aria-hidden": true })] })] });
|
|
45
46
|
};
|
|
46
47
|
exports.AiConfigurationItemRow = AiConfigurationItemRow;
|
|
47
48
|
//# sourceMappingURL=ai-configuration-item-row.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-configuration-item-row.js","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/ai-configuration-item-row.tsx"],"names":[],"mappings":";;;;AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAEhF,qDAAkD;AAGlD,+EAAqG;AACrG,iFAAqE;
|
|
1
|
+
{"version":3,"file":"ai-configuration-item-row.js","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/ai-configuration-item-row.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { InstalledAgentPluginInfo } from '@theia/ai-core/lib/browser/agent-plugin-ui-bridge';
|
|
2
|
+
import * as React from '@theia/core/shared/react';
|
|
3
|
+
/**
|
|
4
|
+
* Where a configuration entry came from, when that is not the user: an AI registry entry, or an Agent
|
|
5
|
+
* Plugin that contributed it. Built through {@link AiConfigurationOrigin.registry} or
|
|
6
|
+
* {@link AiConfigurationOrigin.agentPlugin} rather than by hand, so that the same origin reads the same
|
|
7
|
+
* on every page - an entry's provenance is surfaced in an overview list, on a detail header and in a
|
|
8
|
+
* collapsible row, and those diverged while each page phrased it for itself.
|
|
9
|
+
*/
|
|
10
|
+
export interface AiConfigurationOrigin {
|
|
11
|
+
/** Short, on one line next to the entry's name; the {@link tooltip} carries the detail. */
|
|
12
|
+
readonly label: string;
|
|
13
|
+
/** `codicon(...)` class shown before the label. */
|
|
14
|
+
readonly iconClass: string;
|
|
15
|
+
readonly tooltip: string;
|
|
16
|
+
/** Opens or reveals the origin. Omit for an origin with nothing to navigate to; the badge is then static. */
|
|
17
|
+
readonly activate?: () => void;
|
|
18
|
+
}
|
|
19
|
+
export declare namespace AiConfigurationOrigin {
|
|
20
|
+
/**
|
|
21
|
+
* An entry installed from, or linked to, an AI registry approval.
|
|
22
|
+
*
|
|
23
|
+
* @param open reveals the entry in the registry UI. Omit it where no registry UI is bound: the entry
|
|
24
|
+
* still came from the registry, which is worth stating, so the badge is shown - just not as a link.
|
|
25
|
+
*/
|
|
26
|
+
function registry(entryId: string, open?: () => void): AiConfigurationOrigin;
|
|
27
|
+
/**
|
|
28
|
+
* An entry contributed by an installed Agent Plugin. Takes the resolved plugin rather than its
|
|
29
|
+
* identifier: a bare identifier is not worth showing, so a caller that cannot resolve one renders no
|
|
30
|
+
* badge at all.
|
|
31
|
+
*/
|
|
32
|
+
function agentPlugin(plugin: InstalledAgentPluginInfo, reveal: () => void): AiConfigurationOrigin;
|
|
33
|
+
}
|
|
34
|
+
export interface AiConfigurationOriginBadgeProps {
|
|
35
|
+
readonly origin: AiConfigurationOrigin;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* One {@link AiConfigurationOrigin} as a pill next to an entry's name: a `<button>` when the origin can
|
|
39
|
+
* be opened, a plain `<span>` when it cannot, so that only what is actually navigable is focusable.
|
|
40
|
+
* The click never bubbles - these sit inside rows and headers that are themselves clickable, and
|
|
41
|
+
* following the badge must not also open the row.
|
|
42
|
+
*/
|
|
43
|
+
export declare const AiConfigurationOriginBadge: React.FC<AiConfigurationOriginBadgeProps>;
|
|
44
|
+
export interface AiConfigurationOriginBadgesProps {
|
|
45
|
+
readonly origins?: AiConfigurationOrigin[];
|
|
46
|
+
}
|
|
47
|
+
/** The origins of one entry, in the order given; nothing at all when it has none, which is the common case. */
|
|
48
|
+
export declare const AiConfigurationOriginBadges: React.FC<AiConfigurationOriginBadgesProps>;
|
|
49
|
+
//# sourceMappingURL=ai-configuration-origin-badge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-configuration-origin-badge.d.ts","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/ai-configuration-origin-badge.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mDAAmD,CAAC;AAC7F,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAElD;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IAClC,2FAA2F;IAC3F,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,6GAA6G;IAC7G,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC;AAED,yBAAiB,qBAAqB,CAAC;IAEnC;;;;;OAKG;IACH,SAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,IAAI,GAAG,qBAAqB,CASlF;IAED;;;;OAIG;IACH,SAAgB,WAAW,CAAC,MAAM,EAAE,wBAAwB,EAAE,MAAM,EAAE,MAAM,IAAI,GAAG,qBAAqB,CASvG;CACJ;AAED,MAAM,WAAW,+BAA+B;IAC5C,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;CAC1C;AAED;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,EAAE,KAAK,CAAC,EAAE,CAAC,+BAA+B,CAiBhF,CAAC;AAEF,MAAM,WAAW,gCAAgC;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;CAC9C;AAED,+GAA+G;AAC/G,eAAO,MAAM,2BAA2B,EAAE,KAAK,CAAC,EAAE,CAAC,gCAAgC,CAKhE,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AiConfigurationOriginBadges = exports.AiConfigurationOriginBadge = exports.AiConfigurationOrigin = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("@theia/core/shared/react/jsx-runtime");
|
|
5
|
+
// *****************************************************************************
|
|
6
|
+
// Copyright (C) 2026 EclipseSource and others.
|
|
7
|
+
//
|
|
8
|
+
// This program and the accompanying materials are made available under the
|
|
9
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
10
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
11
|
+
//
|
|
12
|
+
// This Source Code may also be made available under the following Secondary
|
|
13
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
14
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
15
|
+
// with the GNU Classpath Exception which is available at
|
|
16
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
17
|
+
//
|
|
18
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
19
|
+
// *****************************************************************************
|
|
20
|
+
const core_1 = require("@theia/core");
|
|
21
|
+
const browser_1 = require("@theia/core/lib/browser");
|
|
22
|
+
var AiConfigurationOrigin;
|
|
23
|
+
(function (AiConfigurationOrigin) {
|
|
24
|
+
/**
|
|
25
|
+
* An entry installed from, or linked to, an AI registry approval.
|
|
26
|
+
*
|
|
27
|
+
* @param open reveals the entry in the registry UI. Omit it where no registry UI is bound: the entry
|
|
28
|
+
* still came from the registry, which is worth stating, so the badge is shown - just not as a link.
|
|
29
|
+
*/
|
|
30
|
+
function registry(entryId, open) {
|
|
31
|
+
return {
|
|
32
|
+
label: core_1.nls.localize('theia/ai/core/aiConfiguration/origin/fromRegistry', 'From registry'),
|
|
33
|
+
iconClass: (0, browser_1.codicon)('link-external'),
|
|
34
|
+
tooltip: open
|
|
35
|
+
? core_1.nls.localize('theia/ai/core/aiConfiguration/origin/openInRegistry', 'Open in AI registry: {0}', entryId)
|
|
36
|
+
: core_1.nls.localize('theia/ai/core/aiConfiguration/origin/registryEntry', 'AI registry entry: {0}', entryId),
|
|
37
|
+
activate: open
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
AiConfigurationOrigin.registry = registry;
|
|
41
|
+
/**
|
|
42
|
+
* An entry contributed by an installed Agent Plugin. Takes the resolved plugin rather than its
|
|
43
|
+
* identifier: a bare identifier is not worth showing, so a caller that cannot resolve one renders no
|
|
44
|
+
* badge at all.
|
|
45
|
+
*/
|
|
46
|
+
function agentPlugin(plugin, reveal) {
|
|
47
|
+
return {
|
|
48
|
+
label: core_1.nls.localize('theia/ai/core/aiConfiguration/origin/viaAgentPlugin', 'via {0}', plugin.name),
|
|
49
|
+
// `package`, matching the Agent Plugin cards in the Extensions view; `extensions` is the icon
|
|
50
|
+
// that view's VS Code extension section owns.
|
|
51
|
+
iconClass: (0, browser_1.codicon)('package'),
|
|
52
|
+
tooltip: core_1.nls.localize('theia/ai/core/aiConfiguration/origin/openAgentPlugin', 'Open the Agent Plugin that provides this: {0}', plugin.name),
|
|
53
|
+
activate: reveal
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
AiConfigurationOrigin.agentPlugin = agentPlugin;
|
|
57
|
+
})(AiConfigurationOrigin || (exports.AiConfigurationOrigin = AiConfigurationOrigin = {}));
|
|
58
|
+
/**
|
|
59
|
+
* One {@link AiConfigurationOrigin} as a pill next to an entry's name: a `<button>` when the origin can
|
|
60
|
+
* be opened, a plain `<span>` when it cannot, so that only what is actually navigable is focusable.
|
|
61
|
+
* The click never bubbles - these sit inside rows and headers that are themselves clickable, and
|
|
62
|
+
* following the badge must not also open the row.
|
|
63
|
+
*/
|
|
64
|
+
const AiConfigurationOriginBadge = ({ origin }) => {
|
|
65
|
+
const content = (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("span", { "aria-hidden": 'true', className: `ai-configuration-origin-badge-icon ${origin.iconClass}` }), (0, jsx_runtime_1.jsx)("span", { className: 'ai-configuration-origin-badge-label', children: origin.label })] });
|
|
66
|
+
return origin.activate
|
|
67
|
+
? (0, jsx_runtime_1.jsx)("button", { type: 'button', className: 'ai-configuration-origin-badge activatable', title: origin.tooltip, "aria-label": origin.tooltip, onClick: event => {
|
|
68
|
+
event.stopPropagation();
|
|
69
|
+
origin.activate();
|
|
70
|
+
}, children: content })
|
|
71
|
+
: (0, jsx_runtime_1.jsx)("span", { className: 'ai-configuration-origin-badge', title: origin.tooltip, children: content });
|
|
72
|
+
};
|
|
73
|
+
exports.AiConfigurationOriginBadge = AiConfigurationOriginBadge;
|
|
74
|
+
/** The origins of one entry, in the order given; nothing at all when it has none, which is the common case. */
|
|
75
|
+
const AiConfigurationOriginBadges = ({ origins }) => origins && origins.length > 0
|
|
76
|
+
? (0, jsx_runtime_1.jsx)("span", { className: 'ai-configuration-origin-badges', children: origins.map(origin => (0, jsx_runtime_1.jsx)(exports.AiConfigurationOriginBadge, { origin: origin }, origin.label)) })
|
|
77
|
+
: undefined;
|
|
78
|
+
exports.AiConfigurationOriginBadges = AiConfigurationOriginBadges;
|
|
79
|
+
//# sourceMappingURL=ai-configuration-origin-badge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-configuration-origin-badge.js","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/ai-configuration-origin-badge.tsx"],"names":[],"mappings":";;;;AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAEhF,sCAAkC;AAClC,qDAAkD;AAqBlD,IAAiB,qBAAqB,CAkCrC;AAlCD,WAAiB,qBAAqB;IAElC;;;;;OAKG;IACH,SAAgB,QAAQ,CAAC,OAAe,EAAE,IAAiB;QACvD,OAAO;YACH,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,mDAAmD,EAAE,eAAe,CAAC;YACzF,SAAS,EAAE,IAAA,iBAAO,EAAC,eAAe,CAAC;YACnC,OAAO,EAAE,IAAI;gBACT,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,qDAAqD,EAAE,0BAA0B,EAAE,OAAO,CAAC;gBAC1G,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,oDAAoD,EAAE,wBAAwB,EAAE,OAAO,CAAC;YAC3G,QAAQ,EAAE,IAAI;SACjB,CAAC;IACN,CAAC;IATe,8BAAQ,WASvB,CAAA;IAED;;;;OAIG;IACH,SAAgB,WAAW,CAAC,MAAgC,EAAE,MAAkB;QAC5E,OAAO;YACH,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,qDAAqD,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC;YAClG,8FAA8F;YAC9F,8CAA8C;YAC9C,SAAS,EAAE,IAAA,iBAAO,EAAC,SAAS,CAAC;YAC7B,OAAO,EAAE,UAAG,CAAC,QAAQ,CAAC,sDAAsD,EAAE,+CAA+C,EAAE,MAAM,CAAC,IAAI,CAAC;YAC3I,QAAQ,EAAE,MAAM;SACnB,CAAC;IACN,CAAC;IATe,iCAAW,cAS1B,CAAA;AACL,CAAC,EAlCgB,qBAAqB,qCAArB,qBAAqB,QAkCrC;AAMD;;;;;GAKG;AACI,MAAM,0BAA0B,GAA8C,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;IAChG,MAAM,OAAO,GAAG,6DACZ,gDAAkB,MAAM,EAAC,SAAS,EAAE,sCAAsC,MAAM,CAAC,SAAS,EAAE,GAAS,EACrG,iCAAM,SAAS,EAAC,qCAAqC,YAAE,MAAM,CAAC,KAAK,GAAQ,IAC5E,CAAC;IACJ,OAAO,MAAM,CAAC,QAAQ;QAClB,CAAC,CAAC,mCACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,2CAA2C,EACrD,KAAK,EAAE,MAAM,CAAC,OAAO,gBACT,MAAM,CAAC,OAAO,EAC1B,OAAO,EAAE,KAAK,CAAC,EAAE;gBACb,KAAK,CAAC,eAAe,EAAE,CAAC;gBACxB,MAAM,CAAC,QAAS,EAAE,CAAC;YACvB,CAAC,YACH,OAAO,GAAU;QACnB,CAAC,CAAC,iCAAM,SAAS,EAAC,+BAA+B,EAAC,KAAK,EAAE,MAAM,CAAC,OAAO,YAAG,OAAO,GAAQ,CAAC;AAClG,CAAC,CAAC;AAjBW,QAAA,0BAA0B,8BAiBrC;AAMF,+GAA+G;AACxG,MAAM,2BAA2B,GAA+C,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CACnG,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;IACzB,CAAC,CAAC,iCAAM,SAAS,EAAC,gCAAgC,YAC7C,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,uBAAC,kCAA0B,IAAoB,MAAM,EAAE,MAAM,IAA5B,MAAM,CAAC,KAAK,CAAoB,CAAC,GACtF;IACP,CAAC,CAAC,SAAS,CAAC;AALP,QAAA,2BAA2B,+BAKpB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as React from '@theia/core/shared/react';
|
|
2
2
|
import { AiConfigurationItemStatus } from '../ai-configuration-category';
|
|
3
|
+
import { AiConfigurationOrigin } from './ai-configuration-origin-badge';
|
|
3
4
|
/**
|
|
4
5
|
* Presentational, DI-free display primitives shared across the AI configuration pages: badges, the
|
|
5
6
|
* titled section container, the empty-state placeholder, the "Add …" action, the markdown description
|
|
@@ -145,7 +146,12 @@ export interface AiConfigurationItemDetailHeaderProps {
|
|
|
145
146
|
readonly subtitle?: string;
|
|
146
147
|
/** Status badge shown next to the title. */
|
|
147
148
|
readonly status?: AiConfigurationItemStatus;
|
|
148
|
-
/**
|
|
149
|
+
/**
|
|
150
|
+
* Where the item came from, shown right after the title - the same badges the overview list shows,
|
|
151
|
+
* so provenance does not get a second look on the detail page.
|
|
152
|
+
*/
|
|
153
|
+
readonly origins?: AiConfigurationOrigin[];
|
|
154
|
+
/** Optional inline content shown after the title and the origin badges. */
|
|
149
155
|
readonly titleSuffix?: React.ReactNode;
|
|
150
156
|
/** Trailing slot for header actions and toggles (buttons, switches). */
|
|
151
157
|
readonly actions?: React.ReactNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-configuration-primitives.d.ts","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/ai-configuration-primitives.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-configuration-primitives.d.ts","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/ai-configuration-primitives.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAA+B,MAAM,iCAAiC,CAAC;AAErG;;;;;;;;;GASG;AAEH,MAAM,WAAW,+BAA+B;IAC5C,QAAQ,CAAC,MAAM,EAAE,yBAAyB,CAAC;CAC9C;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,EAAE,KAAK,CAAC,EAAE,CAAC,+BAA+B,CAKhF,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,+BAA+B,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAE7E,MAAM,WAAW,6BAA6B;IAC1C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,+BAA+B,CAAC;IACnD,mDAAmD;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,6CAA6C;IAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,6BAA6B,CAK5E,CAAC;AAEF,MAAM,WAAW,2BAA2B;IACxC,uDAAuD;IACvD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,6GAA6G;IAC7G,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAoCxE,CAAC;AAEF,MAAM,WAAW,2BAA2B;IACxC,oGAAoG;IACpG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC;CACpC;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAI/D,CAAC;AAEX,MAAM,WAAW,4BAA4B;IACzC,6FAA6F;IAC7F,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,wGAAwG;IACxG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,0DAA0D;IAC1D,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7C;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,4BAA4B,CAmC1E,CAAC;AAEF,MAAM,WAAW,8BAA8B;IAC3C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,oDAAoD;IACpD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,+EAA+E;IAC/E,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,oFAAoF;AACpF,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAAC,8BAA8B,CAM9E,CAAC;AAEF,MAAM,WAAW,6BAA6B;IAC1C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;CAChC;AAED,uEAAuE;AACvE,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,6BAA6B,CAS5E,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACvC,2GAA2G;IAC3G,QAAQ,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,WAAW,CAAC;IAC3D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,8EAA8E;IAC9E,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAYtE,CAAC;AAEF,MAAM,WAAW,+BAA+B;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,KAAK,CAAC,EAAE,CAAC,+BAA+B,CA2BhF,CAAC;AAEF,MAAM,WAAW,oCAAoC;IACjD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,4CAA4C;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,yBAAyB,CAAC;IAC5C;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAC3C,2EAA2E;IAC3E,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvC,wEAAwE;IACxE,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACtC;AAED,0GAA0G;AAC1G,eAAO,MAAM,+BAA+B,EAAE,KAAK,CAAC,EAAE,CAAC,oCAAoC,CAoB1F,CAAC"}
|
|
@@ -20,6 +20,7 @@ const jsx_runtime_1 = require("@theia/core/shared/react/jsx-runtime");
|
|
|
20
20
|
const core_1 = require("@theia/core");
|
|
21
21
|
const browser_1 = require("@theia/core/lib/browser");
|
|
22
22
|
const React = require("@theia/core/shared/react");
|
|
23
|
+
const ai_configuration_origin_badge_1 = require("./ai-configuration-origin-badge");
|
|
23
24
|
/**
|
|
24
25
|
* Labeled status affordance: a colored dot paired with its text label, so the
|
|
25
26
|
* state is legible at a glance rather than encoded in color alone. The full
|
|
@@ -125,6 +126,6 @@ const AiConfigurationFilterInput = ({ value, onChange, placeholder }) => {
|
|
|
125
126
|
};
|
|
126
127
|
exports.AiConfigurationFilterInput = AiConfigurationFilterInput;
|
|
127
128
|
/** Header of a collection item's detail page: icon, title, subtitle, status badge and an actions slot. */
|
|
128
|
-
const AiConfigurationItemDetailHeader = ({ title, iconClass, subtitle, status, titleSuffix, actions }) => ((0, jsx_runtime_1.jsxs)("div", { className: 'ai-configuration-item-detail-header', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'ai-configuration-item-detail-header-heading', children: [iconClass && (0, jsx_runtime_1.jsx)("span", { className: `ai-configuration-item-detail-header-icon ${iconClass}` }), (0, jsx_runtime_1.jsxs)("div", { className: 'ai-configuration-item-detail-header-titles', children: [(0, jsx_runtime_1.jsxs)("span", { className: 'ai-configuration-item-detail-header-title-row', children: [(0, jsx_runtime_1.jsx)("span", { className: 'ai-configuration-item-detail-header-title', children: title }), titleSuffix] }), subtitle !== undefined && (0, jsx_runtime_1.jsx)("span", { className: 'ai-configuration-item-detail-header-subtitle', children: subtitle })] })] }), (status || actions !== undefined) && (0, jsx_runtime_1.jsxs)("div", { className: 'ai-configuration-item-detail-header-actions', children: [status && (0, jsx_runtime_1.jsx)(exports.AiConfigurationStatusBadge, { status: status }), actions] })] }));
|
|
129
|
+
const AiConfigurationItemDetailHeader = ({ title, iconClass, subtitle, status, origins, titleSuffix, actions }) => ((0, jsx_runtime_1.jsxs)("div", { className: 'ai-configuration-item-detail-header', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'ai-configuration-item-detail-header-heading', children: [iconClass && (0, jsx_runtime_1.jsx)("span", { className: `ai-configuration-item-detail-header-icon ${iconClass}` }), (0, jsx_runtime_1.jsxs)("div", { className: 'ai-configuration-item-detail-header-titles', children: [(0, jsx_runtime_1.jsxs)("span", { className: 'ai-configuration-item-detail-header-title-row', children: [(0, jsx_runtime_1.jsx)("span", { className: 'ai-configuration-item-detail-header-title', children: title }), (0, jsx_runtime_1.jsx)(ai_configuration_origin_badge_1.AiConfigurationOriginBadges, { origins: origins }), titleSuffix] }), subtitle !== undefined && (0, jsx_runtime_1.jsx)("span", { className: 'ai-configuration-item-detail-header-subtitle', children: subtitle })] })] }), (status || actions !== undefined) && (0, jsx_runtime_1.jsxs)("div", { className: 'ai-configuration-item-detail-header-actions', children: [status && (0, jsx_runtime_1.jsx)(exports.AiConfigurationStatusBadge, { status: status }), actions] })] }));
|
|
129
130
|
exports.AiConfigurationItemDetailHeader = AiConfigurationItemDetailHeader;
|
|
130
131
|
//# sourceMappingURL=ai-configuration-primitives.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-configuration-primitives.js","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/ai-configuration-primitives.tsx"],"names":[],"mappings":";;;;AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAEhF,sCAAkC;AAClC,qDAAkD;AAClD,kDAAkD;
|
|
1
|
+
{"version":3,"file":"ai-configuration-primitives.js","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/ai-configuration-primitives.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as React from '@theia/core/shared/react';
|
|
2
|
+
import { AiConfigurationOrigin } from './ai-configuration-origin-badge';
|
|
2
3
|
/** One expandable row of a {@link CollapsibleList}. */
|
|
3
4
|
export interface CollapsibleRow {
|
|
4
5
|
readonly id: string;
|
|
@@ -8,6 +9,12 @@ export interface CollapsibleRow {
|
|
|
8
9
|
readonly description?: string;
|
|
9
10
|
/** Short badges shown before the actions, e.g. an argument count or the single agent using the row. */
|
|
10
11
|
readonly pills?: string[];
|
|
12
|
+
/**
|
|
13
|
+
* Where the row's entry came from, when that is not the user. Shown after the pills as the same
|
|
14
|
+
* {@link AiConfigurationOriginBadge}s a collection item carries, and reachable while the row is
|
|
15
|
+
* collapsed - provenance is something you scan a list for, not something you expand rows to find.
|
|
16
|
+
*/
|
|
17
|
+
readonly origins?: AiConfigurationOrigin[];
|
|
11
18
|
/**
|
|
12
19
|
* Actions rendered at the row's trailing edge, after the pills, and available whether the row is
|
|
13
20
|
* expanded or not. Use {@link CollapsibleRowAction}, which stops the click from toggling the row.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collapsible-list.d.ts","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/collapsible-list.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"collapsible-list.d.ts","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/collapsible-list.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAA+B,MAAM,iCAAiC,CAAC;AAErG,uDAAuD;AACvD,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,4EAA4E;IAC5E,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,4FAA4F;IAC5F,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,uGAAuG;IACvG,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAC3C;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACnC,yEAAyE;IACzE,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,uDAAuD;IACvD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC/B;AAED,iDAAiD;AACjD,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC;IACpC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,2CAA2C;IAC3C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,mDAAmD;IACnD,QAAQ,CAAC,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CAC1D;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAsC1D,CAAC;AAmBF,MAAM,WAAW,yBAAyB;IACtC,4FAA4F;IAC5F,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,0DAA0D;IAC1D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC;CACnC;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAcpE,CAAC"}
|
|
@@ -20,6 +20,7 @@ const jsx_runtime_1 = require("@theia/core/shared/react/jsx-runtime");
|
|
|
20
20
|
const browser_1 = require("@theia/core/lib/browser");
|
|
21
21
|
const React = require("@theia/core/shared/react");
|
|
22
22
|
const ai_configuration_primitives_1 = require("./ai-configuration-primitives");
|
|
23
|
+
const ai_configuration_origin_badge_1 = require("./ai-configuration-origin-badge");
|
|
23
24
|
/**
|
|
24
25
|
* A filterable list of expandable rows grouped under titled sections, available to any
|
|
25
26
|
* {@link AiConfigurationCategory} that presents a long, browsable list (the Variables and the
|
|
@@ -76,6 +77,6 @@ const CollapsibleRowView = ({ row, expanded, onToggle }) => {
|
|
|
76
77
|
}, [toggle]);
|
|
77
78
|
return (0, jsx_runtime_1.jsxs)("div", { className: 'ai-config-collapsible-row', "data-ai-config-row-id": row.id, children: [(0, jsx_runtime_1.jsxs)("div", { className: `ai-config-collapsible-row-header ${expanded ? 'expanded' : ''}`, role: 'button', tabIndex: 0, "aria-expanded": expanded, "aria-controls": expanded ? bodyId : undefined, onClick: toggle, onKeyDown: onHeaderKeyDown, children: [(0, jsx_runtime_1.jsx)("span", { "aria-hidden": 'true', className: `ai-config-collapsible-expansion-icon ${(0, browser_1.codicon)(expanded ? 'chevron-down' : 'chevron-right')}` }), (0, jsx_runtime_1.jsx)("span", { className: 'ai-config-collapsible-row-title', children: row.title }), expanded
|
|
78
79
|
? (0, jsx_runtime_1.jsx)("span", { className: 'ai-config-collapsible-inline-description-spacer', "aria-hidden": 'true' })
|
|
79
|
-
: (0, jsx_runtime_1.jsx)("span", { className: 'ai-config-collapsible-inline-description', title: row.description || undefined, children: row.description }), row.pills && row.pills.length > 0 && (0, jsx_runtime_1.
|
|
80
|
+
: (0, jsx_runtime_1.jsx)("span", { className: 'ai-config-collapsible-inline-description', title: row.description || undefined, children: row.description }), ((row.pills && row.pills.length > 0) || (row.origins && row.origins.length > 0)) && (0, jsx_runtime_1.jsxs)("div", { className: 'ai-config-collapsible-row-meta', children: [row.pills?.map((pill, index) => (0, jsx_runtime_1.jsx)("span", { className: 'ai-config-collapsible-count-pill', children: pill }, index)), (0, jsx_runtime_1.jsx)(ai_configuration_origin_badge_1.AiConfigurationOriginBadges, { origins: row.origins })] }), row.actions && (0, jsx_runtime_1.jsx)("div", { className: 'ai-config-collapsible-row-actions', children: row.actions })] }), expanded && (0, jsx_runtime_1.jsxs)("div", { className: 'ai-config-collapsible-row-body', id: bodyId, children: [row.description && (0, jsx_runtime_1.jsx)("p", { className: 'ai-config-collapsible-full-description', children: row.description }), row.body] })] });
|
|
80
81
|
};
|
|
81
82
|
//# sourceMappingURL=collapsible-list.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collapsible-list.js","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/collapsible-list.tsx"],"names":[],"mappings":";;;;AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAEhF,qDAAkD;AAClD,kDAAkD;AAClD,+EAA8H;
|
|
1
|
+
{"version":3,"file":"collapsible-list.js","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/components/collapsible-list.tsx"],"names":[],"mappings":"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"}
|
|
@@ -33,7 +33,7 @@ export declare abstract class CollectionCategoryRenderer implements AiConfigurat
|
|
|
33
33
|
renderItemDetail(itemId: string, ctx: AiConfigurationRenderContext): React.ReactNode;
|
|
34
34
|
/** Category-level settings shown above the card grid; nothing by default. */
|
|
35
35
|
protected renderCategorySettings(ctx: AiConfigurationRenderContext): React.ReactNode;
|
|
36
|
-
/** Header of an item detail page; icon/title/subtitle from the item by default. */
|
|
36
|
+
/** Header of an item detail page; icon/title/subtitle/origins from the item by default. */
|
|
37
37
|
protected renderItemHeader(item: AiConfigurationTreeItem, ctx: AiConfigurationRenderContext): React.ReactNode;
|
|
38
38
|
/** Body of an item detail page: typically {@link AiConfigurationSection}s of rows. */
|
|
39
39
|
protected abstract renderItemSections(item: AiConfigurationTreeItem, ctx: AiConfigurationRenderContext): React.ReactNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collection-category-renderer.d.ts","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/renderers/collection-category-renderer.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EACH,4BAA4B,EAC5B,+BAA+B,EAC/B,4BAA4B,EAC5B,uBAAuB,EAC1B,MAAM,8BAA8B,CAAC;AAItC,OAAO,EAAE,4BAA4B,EAAE,CAAC;AASxC,mDAAmD;AACnD;;;;;GAKG;AACH,8BAAsB,0BAA2B,YAAW,+BAA+B;IAEvF,8EAA8E;IAC9E,SAAS,CAAC,QAAQ,KAAK,UAAU,IAAI,MAAM,CAAC;IAE5C,qGAAqG;IACrG,SAAS,CAAC,QAAQ,CAAC,oBAAoB,cAAqB;IAE5D,QAAQ,CAAC,eAAe,IAAI,uBAAuB,EAAE;IAErD,cAAc,CAAC,GAAG,EAAE,4BAA4B,GAAG,KAAK,CAAC,SAAS;
|
|
1
|
+
{"version":3,"file":"collection-category-renderer.d.ts","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/renderers/collection-category-renderer.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EACH,4BAA4B,EAC5B,+BAA+B,EAC/B,4BAA4B,EAC5B,uBAAuB,EAC1B,MAAM,8BAA8B,CAAC;AAItC,OAAO,EAAE,4BAA4B,EAAE,CAAC;AASxC,mDAAmD;AACnD;;;;;GAKG;AACH,8BAAsB,0BAA2B,YAAW,+BAA+B;IAEvF,8EAA8E;IAC9E,SAAS,CAAC,QAAQ,KAAK,UAAU,IAAI,MAAM,CAAC;IAE5C,qGAAqG;IACrG,SAAS,CAAC,QAAQ,CAAC,oBAAoB,cAAqB;IAE5D,QAAQ,CAAC,eAAe,IAAI,uBAAuB,EAAE;IAErD,cAAc,CAAC,GAAG,EAAE,4BAA4B,GAAG,KAAK,CAAC,SAAS;IAmClE;;;;;OAKG;IACH,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,uBAAuB,EAAE,GAAG,uBAAuB,EAAE;IAYvF;;;;OAIG;IACH,SAAS,CAAC,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAShD,4GAA4G;IAC5G,SAAS,KAAK,iBAAiB,IAAI,MAAM,GAAG,SAAS,CAEpD;IAED,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,4BAA4B,GAAG,KAAK,CAAC,SAAS;IAWpF,6EAA6E;IAC7E,SAAS,CAAC,sBAAsB,CAAC,GAAG,EAAE,4BAA4B,GAAG,KAAK,CAAC,SAAS;IAIpF,2FAA2F;IAC3F,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,uBAAuB,EAAE,GAAG,EAAE,4BAA4B,GAAG,KAAK,CAAC,SAAS;IAU7G,sFAAsF;IACtF,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,EAAE,uBAAuB,EAAE,GAAG,EAAE,4BAA4B,GAAG,KAAK,CAAC,SAAS;IAExH,wDAAwD;IACxD,YAAY,CAAC,GAAG,EAAE,4BAA4B,GAAG,4BAA4B,GAAG,SAAS;IAIzF,SAAS,CAAC,eAAe,IAAI,MAAM;CAGtC"}
|
|
@@ -38,7 +38,7 @@ class CollectionCategoryRenderer {
|
|
|
38
38
|
const addAction = add && (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationAddAction, { label: add.label, iconClass: add.iconClass, onClick: () => add.run() });
|
|
39
39
|
const body = items.length === 0
|
|
40
40
|
? (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationEmptyState, { message: this.getEmptyMessage(), action: addAction })
|
|
41
|
-
: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", { className: 'ai-configuration-item-list', children: items.map(item => (0, jsx_runtime_1.jsx)(ai_configuration_item_row_1.AiConfigurationItemRow, { label: item.label, iconClass: item.iconClass, description: item.description, tags: item.tags, status: item.status, onSelect: () => ctx.navigate({ categoryId: this.categoryId, itemId: item.id }) }, item.id)) }), addAction && (0, jsx_runtime_1.jsx)("div", { className: 'ai-configuration-overview-actions', children: addAction })] });
|
|
41
|
+
: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", { className: 'ai-configuration-item-list', children: items.map(item => (0, jsx_runtime_1.jsx)(ai_configuration_item_row_1.AiConfigurationItemRow, { label: item.label, iconClass: item.iconClass, description: item.description, tags: item.tags, origins: item.origins, status: item.status, onSelect: () => ctx.navigate({ categoryId: this.categoryId, itemId: item.id }) }, item.id)) }), addAction && (0, jsx_runtime_1.jsx)("div", { className: 'ai-configuration-overview-actions', children: addAction })] });
|
|
42
42
|
const listTitle = this.overviewListTitle;
|
|
43
43
|
return (0, jsx_runtime_1.jsxs)("div", { className: 'ai-configuration-page', children: [this.renderCategorySettings(ctx), listTitle !== undefined
|
|
44
44
|
// Foldable with its size on the header once there is a list to fold; an empty state stays plain.
|
|
@@ -90,9 +90,9 @@ class CollectionCategoryRenderer {
|
|
|
90
90
|
renderCategorySettings(ctx) {
|
|
91
91
|
return undefined;
|
|
92
92
|
}
|
|
93
|
-
/** Header of an item detail page; icon/title/subtitle from the item by default. */
|
|
93
|
+
/** Header of an item detail page; icon/title/subtitle/origins from the item by default. */
|
|
94
94
|
renderItemHeader(item, ctx) {
|
|
95
|
-
return (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationItemDetailHeader, { title: item.label, iconClass: item.iconClass, subtitle: item.description, status: item.status });
|
|
95
|
+
return (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationItemDetailHeader, { title: item.label, iconClass: item.iconClass, subtitle: item.description, status: item.status, origins: item.origins });
|
|
96
96
|
}
|
|
97
97
|
/** The overview "Add …" affordance; none by default. */
|
|
98
98
|
getAddAction(ctx) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collection-category-renderer.js","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/renderers/collection-category-renderer.tsx"],"names":[],"mappings":";;;;AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAEhF,sCAAkC;AAYlC,2FAKmD;AACnD,uFAAiF;AAEjF,mDAAmD;AACnD;;;;;GAKG;AACH,MAAsB,0BAA0B;IAAhD;QAKI,qGAAqG;QAClF,yBAAoB,GAAG,IAAI,GAAG,EAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"collection-category-renderer.js","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/renderers/collection-category-renderer.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/ai-core-ui",
|
|
3
|
-
"version": "1.75.0-next.
|
|
3
|
+
"version": "1.75.0-next.46+eb558223a",
|
|
4
4
|
"description": "Theia - AI Core UI",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/ai-core": "1.75.0-next.
|
|
7
|
-
"@theia/core": "1.75.0-next.
|
|
8
|
-
"@theia/preferences": "1.75.0-next.
|
|
6
|
+
"@theia/ai-core": "1.75.0-next.46+eb558223a",
|
|
7
|
+
"@theia/core": "1.75.0-next.46+eb558223a",
|
|
8
|
+
"@theia/preferences": "1.75.0-next.46+eb558223a",
|
|
9
9
|
"tslib": "^2.8.1"
|
|
10
10
|
},
|
|
11
11
|
"main": "lib/common",
|
|
@@ -48,5 +48,5 @@
|
|
|
48
48
|
"nyc": {
|
|
49
49
|
"extends": "../../configs/nyc.json"
|
|
50
50
|
},
|
|
51
|
-
"gitHead": "
|
|
51
|
+
"gitHead": "eb558223aae4b1ebf0a64deeb51741032cb8ea50"
|
|
52
52
|
}
|
|
@@ -15,6 +15,8 @@
|
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
17
|
import { Event } from '@theia/core';
|
|
18
|
+
// Type-only, so this contribution point stays free of a runtime dependency on the rendering component.
|
|
19
|
+
import type { AiConfigurationOrigin } from './components/ai-configuration-origin-badge';
|
|
18
20
|
|
|
19
21
|
/**
|
|
20
22
|
* Contribution point for a category shown in the AI Configuration view.
|
|
@@ -178,10 +180,16 @@ export interface AiConfigurationTreeItem {
|
|
|
178
180
|
readonly label: string;
|
|
179
181
|
/**
|
|
180
182
|
* Short labels shown as badges next to the item's name, for what it *is* rather than what it is doing
|
|
181
|
-
* (which is {@link status})
|
|
182
|
-
*
|
|
183
|
+
* (which is {@link status}). Use {@link origins} for where the item came from, which is a badge of its
|
|
184
|
+
* own kind: it carries an icon and leads somewhere.
|
|
183
185
|
*/
|
|
184
186
|
readonly tags?: string[];
|
|
187
|
+
/**
|
|
188
|
+
* Where the item came from, when that is not the user - an AI registry entry, an Agent Plugin. Shown
|
|
189
|
+
* next to the item's name on the overview and, unchanged, on the item's detail header, so that
|
|
190
|
+
* provenance reads the same in both places.
|
|
191
|
+
*/
|
|
192
|
+
readonly origins?: AiConfigurationOrigin[];
|
|
185
193
|
/** Status badge shown on the overview card and the item detail header. */
|
|
186
194
|
readonly status?: AiConfigurationItemStatus;
|
|
187
195
|
/** Short text for the overview card. */
|
|
@@ -31,6 +31,7 @@ import { flushSync } from '@theia/core/shared/react-dom';
|
|
|
31
31
|
import { createRoot } from '@theia/core/shared/react-dom/client';
|
|
32
32
|
import { AiConfigurationItemRow } from './ai-configuration-item-row';
|
|
33
33
|
import { AiConfigurationEmptyState, AiConfigurationItemDetailHeader, AiConfigurationSection } from './ai-configuration-primitives';
|
|
34
|
+
import { AiConfigurationOrigin, AiConfigurationOriginBadge, AiConfigurationOriginBadges } from './ai-configuration-origin-badge';
|
|
34
35
|
import { AiConfigurationSettingRow } from './ai-configuration-setting-row';
|
|
35
36
|
import { AiArrayInput, AiNumberStepper } from './ai-configuration-controls';
|
|
36
37
|
import { ConfirmDialog } from '@theia/core/lib/browser';
|
|
@@ -212,6 +213,70 @@ describe('AI Configuration primitives', () => {
|
|
|
212
213
|
expect(textOf(tree)).to.include('Coder').and.to.include('agent-id-1');
|
|
213
214
|
});
|
|
214
215
|
|
|
216
|
+
it('AiConfigurationOriginBadge is a button that activates its origin, and does not open the row it sits in', () => {
|
|
217
|
+
let activated = 0;
|
|
218
|
+
let rowOpened = 0;
|
|
219
|
+
const { container, dispose } = mount(React.createElement('div', { onClick: () => { rowOpened++; } },
|
|
220
|
+
React.createElement(AiConfigurationOriginBadge, {
|
|
221
|
+
origin: { label: 'From registry', iconClass: 'codicon-link-external', tooltip: 'Open in AI registry: x', activate: () => { activated++; } }
|
|
222
|
+
})));
|
|
223
|
+
try {
|
|
224
|
+
const badge = container.querySelector('button.ai-configuration-origin-badge') as HTMLButtonElement;
|
|
225
|
+
expect(badge.getAttribute('title')).to.equal('Open in AI registry: x');
|
|
226
|
+
expect(badge.textContent).to.include('From registry');
|
|
227
|
+
|
|
228
|
+
flushSync(() => badge.click());
|
|
229
|
+
expect(activated).to.equal(1);
|
|
230
|
+
// The surrounding row and detail header are clickable themselves; following the badge must
|
|
231
|
+
// not also open them.
|
|
232
|
+
expect(rowOpened).to.equal(0);
|
|
233
|
+
} finally {
|
|
234
|
+
dispose();
|
|
235
|
+
}
|
|
236
|
+
});
|
|
237
|
+
|
|
238
|
+
it('AiConfigurationOriginBadge is not focusable when the origin leads nowhere', () => {
|
|
239
|
+
const { container, dispose } = mount(React.createElement(AiConfigurationOriginBadge, {
|
|
240
|
+
origin: { label: 'via Acme', iconClass: 'codicon-package', tooltip: 'Acme' }
|
|
241
|
+
}));
|
|
242
|
+
try {
|
|
243
|
+
expect(container.querySelector('button')).to.be.null;
|
|
244
|
+
expect(container.querySelector('span.ai-configuration-origin-badge')?.textContent).to.include('via Acme');
|
|
245
|
+
} finally {
|
|
246
|
+
dispose();
|
|
247
|
+
}
|
|
248
|
+
});
|
|
249
|
+
|
|
250
|
+
it('AiConfigurationOriginBadges renders one badge per origin, in order, and nothing without any', () => {
|
|
251
|
+
const origin = (label: string) => ({ label, iconClass: 'codicon-link-external', tooltip: label, activate: () => { } });
|
|
252
|
+
const { container, dispose } = mount(React.createElement(AiConfigurationOriginBadges,
|
|
253
|
+
{ origins: [origin('From registry'), origin('via Acme Devtools')] }));
|
|
254
|
+
try {
|
|
255
|
+
expect(Array.from(container.querySelectorAll('.ai-configuration-origin-badge')).map(badge => badge.textContent))
|
|
256
|
+
.to.deep.equal(['From registry', 'via Acme Devtools']);
|
|
257
|
+
} finally {
|
|
258
|
+
dispose();
|
|
259
|
+
}
|
|
260
|
+
const empty = mount(React.createElement('div', {}, React.createElement(AiConfigurationOriginBadges, { origins: [] })));
|
|
261
|
+
try {
|
|
262
|
+
expect(empty.container.querySelector('.ai-configuration-origin-badges')).to.be.null;
|
|
263
|
+
} finally {
|
|
264
|
+
empty.dispose();
|
|
265
|
+
}
|
|
266
|
+
});
|
|
267
|
+
|
|
268
|
+
it('AiConfigurationOrigin builds the same registry and Agent Plugin badges for every page to use', () => {
|
|
269
|
+
const registry = AiConfigurationOrigin.registry('io.github.acme/validator', () => { });
|
|
270
|
+
expect(registry.label).to.equal('From registry');
|
|
271
|
+
expect(registry.iconClass).to.contain('codicon-link-external');
|
|
272
|
+
expect(registry.tooltip).to.contain('io.github.acme/validator');
|
|
273
|
+
|
|
274
|
+
const plugin = AiConfigurationOrigin.agentPlugin({ pluginId: 'io.github.acme/devtools', name: 'Acme Devtools' }, () => { });
|
|
275
|
+
expect(plugin.label).to.equal('via Acme Devtools');
|
|
276
|
+
expect(plugin.iconClass).to.contain('codicon-package');
|
|
277
|
+
expect(plugin.tooltip).to.contain('Acme Devtools');
|
|
278
|
+
});
|
|
279
|
+
|
|
215
280
|
it('AiConfigurationSettingRow renders title and control, marks modified rows, and hides the raw id', () => {
|
|
216
281
|
const host = document.createElement('div');
|
|
217
282
|
document.body.appendChild(host);
|
|
@@ -18,6 +18,7 @@ import { codicon } from '@theia/core/lib/browser';
|
|
|
18
18
|
import * as React from '@theia/core/shared/react';
|
|
19
19
|
import { AiConfigurationItemStatus } from '../ai-configuration-category';
|
|
20
20
|
import { AiConfigurationKindBadge, AiConfigurationStatusBadge } from './ai-configuration-primitives';
|
|
21
|
+
import { AiConfigurationOrigin, AiConfigurationOriginBadges } from './ai-configuration-origin-badge';
|
|
21
22
|
import { AiSettingGearButton } from './ai-configuration-setting-row';
|
|
22
23
|
|
|
23
24
|
export interface AiConfigurationItemRowProps {
|
|
@@ -32,8 +33,10 @@ export interface AiConfigurationItemRowProps {
|
|
|
32
33
|
/** `codicon(...)` class shown before the label. */
|
|
33
34
|
readonly iconClass?: string;
|
|
34
35
|
readonly description?: string;
|
|
35
|
-
/** Short badges shown after the label,
|
|
36
|
+
/** Short badges shown after the label, for what the item *is*. Use {@link origins} for where it came from. */
|
|
36
37
|
readonly tags?: string[];
|
|
38
|
+
/** Where the item came from, shown after the tags as {@link AiConfigurationOriginBadge}s. */
|
|
39
|
+
readonly origins?: AiConfigurationOrigin[];
|
|
37
40
|
/** Status badge shown on the right (e.g. an alias' resolved model). */
|
|
38
41
|
readonly status?: AiConfigurationItemStatus;
|
|
39
42
|
/** `true` reveals the modified edge (left indicator bar), matching {@link AiConfigurationSettingRow}. */
|
|
@@ -72,7 +75,7 @@ export interface AiConfigurationItemRowProps {
|
|
|
72
75
|
* alternative to a card grid, matching the Settings and extensions lists; every non-label slot is optional.
|
|
73
76
|
*/
|
|
74
77
|
export const AiConfigurationItemRow: React.FC<AiConfigurationItemRowProps> = ({
|
|
75
|
-
label, rowId, tags, monospaceLabel, iconClass, description, status, modified, trailing, onOpenMenu, onSelect, onActivateLabel, labelTooltip
|
|
78
|
+
label, rowId, tags, origins, monospaceLabel, iconClass, description, status, modified, trailing, onOpenMenu, onSelect, onActivateLabel, labelTooltip
|
|
76
79
|
}) => {
|
|
77
80
|
const navigable = onSelect !== undefined;
|
|
78
81
|
const onKeyDown = (event: React.KeyboardEvent<HTMLDivElement>): void => {
|
|
@@ -111,6 +114,7 @@ export const AiConfigurationItemRow: React.FC<AiConfigurationItemRowProps> = ({
|
|
|
111
114
|
{tags && tags.length > 0 && <span className='ai-configuration-item-row-tags'>
|
|
112
115
|
{tags.map(tag => <AiConfigurationKindBadge key={tag} label={tag} variant='outline' />)}
|
|
113
116
|
</span>}
|
|
117
|
+
<AiConfigurationOriginBadges origins={origins} />
|
|
114
118
|
</div>
|
|
115
119
|
{description && <span className='ai-configuration-item-row-description'>{description}</span>}
|
|
116
120
|
</div>
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
// *****************************************************************************
|
|
2
|
+
// Copyright (C) 2026 EclipseSource and others.
|
|
3
|
+
//
|
|
4
|
+
// This program and the accompanying materials are made available under the
|
|
5
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
//
|
|
8
|
+
// This Source Code may also be made available under the following Secondary
|
|
9
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
// with the GNU Classpath Exception which is available at
|
|
12
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
//
|
|
14
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
|
+
// *****************************************************************************
|
|
16
|
+
|
|
17
|
+
import { nls } from '@theia/core';
|
|
18
|
+
import { codicon } from '@theia/core/lib/browser';
|
|
19
|
+
import { InstalledAgentPluginInfo } from '@theia/ai-core/lib/browser/agent-plugin-ui-bridge';
|
|
20
|
+
import * as React from '@theia/core/shared/react';
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Where a configuration entry came from, when that is not the user: an AI registry entry, or an Agent
|
|
24
|
+
* Plugin that contributed it. Built through {@link AiConfigurationOrigin.registry} or
|
|
25
|
+
* {@link AiConfigurationOrigin.agentPlugin} rather than by hand, so that the same origin reads the same
|
|
26
|
+
* on every page - an entry's provenance is surfaced in an overview list, on a detail header and in a
|
|
27
|
+
* collapsible row, and those diverged while each page phrased it for itself.
|
|
28
|
+
*/
|
|
29
|
+
export interface AiConfigurationOrigin {
|
|
30
|
+
/** Short, on one line next to the entry's name; the {@link tooltip} carries the detail. */
|
|
31
|
+
readonly label: string;
|
|
32
|
+
/** `codicon(...)` class shown before the label. */
|
|
33
|
+
readonly iconClass: string;
|
|
34
|
+
readonly tooltip: string;
|
|
35
|
+
/** Opens or reveals the origin. Omit for an origin with nothing to navigate to; the badge is then static. */
|
|
36
|
+
readonly activate?: () => void;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export namespace AiConfigurationOrigin {
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* An entry installed from, or linked to, an AI registry approval.
|
|
43
|
+
*
|
|
44
|
+
* @param open reveals the entry in the registry UI. Omit it where no registry UI is bound: the entry
|
|
45
|
+
* still came from the registry, which is worth stating, so the badge is shown - just not as a link.
|
|
46
|
+
*/
|
|
47
|
+
export function registry(entryId: string, open?: () => void): AiConfigurationOrigin {
|
|
48
|
+
return {
|
|
49
|
+
label: nls.localize('theia/ai/core/aiConfiguration/origin/fromRegistry', 'From registry'),
|
|
50
|
+
iconClass: codicon('link-external'),
|
|
51
|
+
tooltip: open
|
|
52
|
+
? nls.localize('theia/ai/core/aiConfiguration/origin/openInRegistry', 'Open in AI registry: {0}', entryId)
|
|
53
|
+
: nls.localize('theia/ai/core/aiConfiguration/origin/registryEntry', 'AI registry entry: {0}', entryId),
|
|
54
|
+
activate: open
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* An entry contributed by an installed Agent Plugin. Takes the resolved plugin rather than its
|
|
60
|
+
* identifier: a bare identifier is not worth showing, so a caller that cannot resolve one renders no
|
|
61
|
+
* badge at all.
|
|
62
|
+
*/
|
|
63
|
+
export function agentPlugin(plugin: InstalledAgentPluginInfo, reveal: () => void): AiConfigurationOrigin {
|
|
64
|
+
return {
|
|
65
|
+
label: nls.localize('theia/ai/core/aiConfiguration/origin/viaAgentPlugin', 'via {0}', plugin.name),
|
|
66
|
+
// `package`, matching the Agent Plugin cards in the Extensions view; `extensions` is the icon
|
|
67
|
+
// that view's VS Code extension section owns.
|
|
68
|
+
iconClass: codicon('package'),
|
|
69
|
+
tooltip: nls.localize('theia/ai/core/aiConfiguration/origin/openAgentPlugin', 'Open the Agent Plugin that provides this: {0}', plugin.name),
|
|
70
|
+
activate: reveal
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export interface AiConfigurationOriginBadgeProps {
|
|
76
|
+
readonly origin: AiConfigurationOrigin;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* One {@link AiConfigurationOrigin} as a pill next to an entry's name: a `<button>` when the origin can
|
|
81
|
+
* be opened, a plain `<span>` when it cannot, so that only what is actually navigable is focusable.
|
|
82
|
+
* The click never bubbles - these sit inside rows and headers that are themselves clickable, and
|
|
83
|
+
* following the badge must not also open the row.
|
|
84
|
+
*/
|
|
85
|
+
export const AiConfigurationOriginBadge: React.FC<AiConfigurationOriginBadgeProps> = ({ origin }) => {
|
|
86
|
+
const content = <>
|
|
87
|
+
<span aria-hidden='true' className={`ai-configuration-origin-badge-icon ${origin.iconClass}`}></span>
|
|
88
|
+
<span className='ai-configuration-origin-badge-label'>{origin.label}</span>
|
|
89
|
+
</>;
|
|
90
|
+
return origin.activate
|
|
91
|
+
? <button
|
|
92
|
+
type='button'
|
|
93
|
+
className='ai-configuration-origin-badge activatable'
|
|
94
|
+
title={origin.tooltip}
|
|
95
|
+
aria-label={origin.tooltip}
|
|
96
|
+
onClick={event => {
|
|
97
|
+
event.stopPropagation();
|
|
98
|
+
origin.activate!();
|
|
99
|
+
}}
|
|
100
|
+
>{content}</button>
|
|
101
|
+
: <span className='ai-configuration-origin-badge' title={origin.tooltip}>{content}</span>;
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
export interface AiConfigurationOriginBadgesProps {
|
|
105
|
+
readonly origins?: AiConfigurationOrigin[];
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/** The origins of one entry, in the order given; nothing at all when it has none, which is the common case. */
|
|
109
|
+
export const AiConfigurationOriginBadges: React.FC<AiConfigurationOriginBadgesProps> = ({ origins }) =>
|
|
110
|
+
origins && origins.length > 0
|
|
111
|
+
? <span className='ai-configuration-origin-badges'>
|
|
112
|
+
{origins.map(origin => <AiConfigurationOriginBadge key={origin.label} origin={origin} />)}
|
|
113
|
+
</span>
|
|
114
|
+
: undefined;
|
|
@@ -18,6 +18,7 @@ import { nls } from '@theia/core';
|
|
|
18
18
|
import { codicon } from '@theia/core/lib/browser';
|
|
19
19
|
import * as React from '@theia/core/shared/react';
|
|
20
20
|
import { AiConfigurationItemStatus } from '../ai-configuration-category';
|
|
21
|
+
import { AiConfigurationOrigin, AiConfigurationOriginBadges } from './ai-configuration-origin-badge';
|
|
21
22
|
|
|
22
23
|
/**
|
|
23
24
|
* Presentational, DI-free display primitives shared across the AI configuration pages: badges, the
|
|
@@ -323,20 +324,28 @@ export interface AiConfigurationItemDetailHeaderProps {
|
|
|
323
324
|
readonly subtitle?: string;
|
|
324
325
|
/** Status badge shown next to the title. */
|
|
325
326
|
readonly status?: AiConfigurationItemStatus;
|
|
326
|
-
/**
|
|
327
|
+
/**
|
|
328
|
+
* Where the item came from, shown right after the title - the same badges the overview list shows,
|
|
329
|
+
* so provenance does not get a second look on the detail page.
|
|
330
|
+
*/
|
|
331
|
+
readonly origins?: AiConfigurationOrigin[];
|
|
332
|
+
/** Optional inline content shown after the title and the origin badges. */
|
|
327
333
|
readonly titleSuffix?: React.ReactNode;
|
|
328
334
|
/** Trailing slot for header actions and toggles (buttons, switches). */
|
|
329
335
|
readonly actions?: React.ReactNode;
|
|
330
336
|
}
|
|
331
337
|
|
|
332
338
|
/** Header of a collection item's detail page: icon, title, subtitle, status badge and an actions slot. */
|
|
333
|
-
export const AiConfigurationItemDetailHeader: React.FC<AiConfigurationItemDetailHeaderProps> = ({
|
|
339
|
+
export const AiConfigurationItemDetailHeader: React.FC<AiConfigurationItemDetailHeaderProps> = ({
|
|
340
|
+
title, iconClass, subtitle, status, origins, titleSuffix, actions
|
|
341
|
+
}) => (
|
|
334
342
|
<div className='ai-configuration-item-detail-header'>
|
|
335
343
|
<div className='ai-configuration-item-detail-header-heading'>
|
|
336
344
|
{iconClass && <span className={`ai-configuration-item-detail-header-icon ${iconClass}`}></span>}
|
|
337
345
|
<div className='ai-configuration-item-detail-header-titles'>
|
|
338
346
|
<span className='ai-configuration-item-detail-header-title-row'>
|
|
339
347
|
<span className='ai-configuration-item-detail-header-title'>{title}</span>
|
|
348
|
+
<AiConfigurationOriginBadges origins={origins} />
|
|
340
349
|
{titleSuffix}
|
|
341
350
|
</span>
|
|
342
351
|
{subtitle !== undefined && <span className='ai-configuration-item-detail-header-subtitle'>{subtitle}</span>}
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
import { codicon } from '@theia/core/lib/browser';
|
|
18
18
|
import * as React from '@theia/core/shared/react';
|
|
19
19
|
import { AiConfigurationEmptyState, AiConfigurationFilterInput, AiConfigurationSection } from './ai-configuration-primitives';
|
|
20
|
+
import { AiConfigurationOrigin, AiConfigurationOriginBadges } from './ai-configuration-origin-badge';
|
|
20
21
|
|
|
21
22
|
/** One expandable row of a {@link CollapsibleList}. */
|
|
22
23
|
export interface CollapsibleRow {
|
|
@@ -27,6 +28,12 @@ export interface CollapsibleRow {
|
|
|
27
28
|
readonly description?: string;
|
|
28
29
|
/** Short badges shown before the actions, e.g. an argument count or the single agent using the row. */
|
|
29
30
|
readonly pills?: string[];
|
|
31
|
+
/**
|
|
32
|
+
* Where the row's entry came from, when that is not the user. Shown after the pills as the same
|
|
33
|
+
* {@link AiConfigurationOriginBadge}s a collection item carries, and reachable while the row is
|
|
34
|
+
* collapsed - provenance is something you scan a list for, not something you expand rows to find.
|
|
35
|
+
*/
|
|
36
|
+
readonly origins?: AiConfigurationOrigin[];
|
|
30
37
|
/**
|
|
31
38
|
* Actions rendered at the row's trailing edge, after the pills, and available whether the row is
|
|
32
39
|
* expanded or not. Use {@link CollapsibleRowAction}, which stops the click from toggling the row.
|
|
@@ -183,8 +190,9 @@ const CollapsibleRowView: React.FC<CollapsibleRowViewProps> = ({ row, expanded,
|
|
|
183
190
|
{expanded
|
|
184
191
|
? <span className='ai-config-collapsible-inline-description-spacer' aria-hidden='true'></span>
|
|
185
192
|
: <span className='ai-config-collapsible-inline-description' title={row.description || undefined}>{row.description}</span>}
|
|
186
|
-
{row.pills && row.pills.length > 0 && <div className='ai-config-collapsible-row-meta'>
|
|
187
|
-
{row.pills
|
|
193
|
+
{((row.pills && row.pills.length > 0) || (row.origins && row.origins.length > 0)) && <div className='ai-config-collapsible-row-meta'>
|
|
194
|
+
{row.pills?.map((pill, index) => <span key={index} className='ai-config-collapsible-count-pill'>{pill}</span>)}
|
|
195
|
+
<AiConfigurationOriginBadges origins={row.origins} />
|
|
188
196
|
</div>}
|
|
189
197
|
{/* Trailing edge, after the pills: the row's actions stay reachable while the row is collapsed. */}
|
|
190
198
|
{row.actions && <div className='ai-config-collapsible-row-actions'>{row.actions}</div>}
|
|
@@ -65,6 +65,7 @@ export abstract class CollectionCategoryRenderer implements AiConfigurationCateg
|
|
|
65
65
|
iconClass={item.iconClass}
|
|
66
66
|
description={item.description}
|
|
67
67
|
tags={item.tags}
|
|
68
|
+
origins={item.origins}
|
|
68
69
|
status={item.status}
|
|
69
70
|
onSelect={() => ctx.navigate({ categoryId: this.categoryId, itemId: item.id })}
|
|
70
71
|
/>)}
|
|
@@ -138,9 +139,15 @@ export abstract class CollectionCategoryRenderer implements AiConfigurationCateg
|
|
|
138
139
|
return undefined;
|
|
139
140
|
}
|
|
140
141
|
|
|
141
|
-
/** Header of an item detail page; icon/title/subtitle from the item by default. */
|
|
142
|
+
/** Header of an item detail page; icon/title/subtitle/origins from the item by default. */
|
|
142
143
|
protected renderItemHeader(item: AiConfigurationTreeItem, ctx: AiConfigurationRenderContext): React.ReactNode {
|
|
143
|
-
return <AiConfigurationItemDetailHeader
|
|
144
|
+
return <AiConfigurationItemDetailHeader
|
|
145
|
+
title={item.label}
|
|
146
|
+
iconClass={item.iconClass}
|
|
147
|
+
subtitle={item.description}
|
|
148
|
+
status={item.status}
|
|
149
|
+
origins={item.origins}
|
|
150
|
+
/>;
|
|
144
151
|
}
|
|
145
152
|
|
|
146
153
|
/** Body of an item detail page: typically {@link AiConfigurationSection}s of rows. */
|
|
@@ -1053,6 +1053,51 @@
|
|
|
1053
1053
|
font-size: var(--theia-ui-font-size0);
|
|
1054
1054
|
}
|
|
1055
1055
|
|
|
1056
|
+
/* Origin badge: where an entry came from (an AI registry entry, an Agent Plugin). Shaped like the
|
|
1057
|
+
outline kind badge so provenance reads as one kind of annotation wherever it appears - in an overview
|
|
1058
|
+
list, on a detail header, on a collapsible row - and differentiated from a plain tag by its leading
|
|
1059
|
+
icon. `button` resets are explicit: the activatable variant is a real button. */
|
|
1060
|
+
.ai-configuration-origin-badges {
|
|
1061
|
+
display: inline-flex;
|
|
1062
|
+
align-items: center;
|
|
1063
|
+
gap: calc(var(--theia-ui-padding) / 2);
|
|
1064
|
+
}
|
|
1065
|
+
|
|
1066
|
+
.ai-configuration-origin-badge {
|
|
1067
|
+
display: inline-flex;
|
|
1068
|
+
align-items: center;
|
|
1069
|
+
gap: calc(var(--theia-ui-padding) / 2);
|
|
1070
|
+
margin: 0;
|
|
1071
|
+
padding: 1px 8px;
|
|
1072
|
+
border: var(--theia-border-width) solid var(--theia-widget-border);
|
|
1073
|
+
border-radius: 10px;
|
|
1074
|
+
background-color: transparent;
|
|
1075
|
+
color: var(--theia-descriptionForeground);
|
|
1076
|
+
font-family: inherit;
|
|
1077
|
+
font-size: var(--theia-ui-font-size0);
|
|
1078
|
+
white-space: nowrap;
|
|
1079
|
+
}
|
|
1080
|
+
|
|
1081
|
+
/* Link-coloured only when it leads somewhere, so the colour is the affordance rather than decoration. */
|
|
1082
|
+
.ai-configuration-origin-badge.activatable {
|
|
1083
|
+
color: var(--theia-textLink-foreground);
|
|
1084
|
+
cursor: pointer;
|
|
1085
|
+
}
|
|
1086
|
+
|
|
1087
|
+
.ai-configuration-origin-badge.activatable:hover {
|
|
1088
|
+
color: var(--theia-textLink-activeForeground);
|
|
1089
|
+
border-color: var(--theia-focusBorder);
|
|
1090
|
+
}
|
|
1091
|
+
|
|
1092
|
+
.ai-configuration-origin-badge.activatable:focus-visible {
|
|
1093
|
+
outline: 1px solid var(--theia-focusBorder);
|
|
1094
|
+
outline-offset: 1px;
|
|
1095
|
+
}
|
|
1096
|
+
|
|
1097
|
+
.ai-configuration-origin-badge-icon {
|
|
1098
|
+
font-size: var(--theia-ui-font-size0);
|
|
1099
|
+
}
|
|
1100
|
+
|
|
1056
1101
|
/* Horizontal, wrapping row of chips/badges */
|
|
1057
1102
|
.ai-configuration-chip-row {
|
|
1058
1103
|
display: flex;
|