@theia/ai-ide 1.76.0-next.7 → 1.76.0
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-allow-all-mode-chat-banner.js +1 -1
- package/lib/browser/ai-allow-all-mode-chat-banner.js.map +1 -1
- package/lib/browser/ai-aware-scm-commit-widget.d.ts +27 -0
- package/lib/browser/ai-aware-scm-commit-widget.d.ts.map +1 -0
- package/lib/browser/ai-aware-scm-commit-widget.js +142 -0
- package/lib/browser/ai-aware-scm-commit-widget.js.map +1 -0
- package/lib/browser/ai-configuration/ai-configuration-detail-widget.d.ts +10 -4
- package/lib/browser/ai-configuration/ai-configuration-detail-widget.d.ts.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-detail-widget.js +12 -7
- package/lib/browser/ai-configuration/ai-configuration-detail-widget.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-detail-widget.spec.js +14 -14
- package/lib/browser/ai-configuration/ai-configuration-detail-widget.spec.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-tree-widget.d.ts +6 -0
- package/lib/browser/ai-configuration/ai-configuration-tree-widget.d.ts.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-tree-widget.js +9 -0
- package/lib/browser/ai-configuration/ai-configuration-tree-widget.js.map +1 -1
- package/lib/browser/ai-configuration/categories/agent-capabilities-settings.d.ts.map +1 -1
- package/lib/browser/ai-configuration/categories/agent-capabilities-settings.js +2 -1
- package/lib/browser/ai-configuration/categories/agent-capabilities-settings.js.map +1 -1
- package/lib/browser/ai-configuration/categories/agent-chips.js +1 -1
- package/lib/browser/ai-configuration/categories/agent-chips.js.map +1 -1
- package/lib/browser/ai-configuration/categories/model-aliases-configuration-category.d.ts +8 -0
- package/lib/browser/ai-configuration/categories/model-aliases-configuration-category.d.ts.map +1 -1
- package/lib/browser/ai-configuration/categories/model-aliases-configuration-category.js +27 -8
- package/lib/browser/ai-configuration/categories/model-aliases-configuration-category.js.map +1 -1
- package/lib/browser/ai-configuration/categories/model-aliases-configuration-category.spec.js +38 -2
- package/lib/browser/ai-configuration/categories/model-aliases-configuration-category.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/models-configuration-category.d.ts +13 -2
- package/lib/browser/ai-configuration/categories/models-configuration-category.d.ts.map +1 -1
- package/lib/browser/ai-configuration/categories/models-configuration-category.js +41 -2
- package/lib/browser/ai-configuration/categories/models-configuration-category.js.map +1 -1
- package/lib/browser/ai-configuration/categories/models-configuration-category.spec.js +32 -2
- package/lib/browser/ai-configuration/categories/models-configuration-category.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/provider-model-discovery-section.d.ts +26 -0
- package/lib/browser/ai-configuration/categories/provider-model-discovery-section.d.ts.map +1 -0
- package/lib/browser/ai-configuration/categories/provider-model-discovery-section.js +212 -0
- package/lib/browser/ai-configuration/categories/provider-model-discovery-section.js.map +1 -0
- package/lib/browser/ai-configuration/categories/provider-model-discovery-section.spec.d.ts +2 -0
- package/lib/browser/ai-configuration/categories/provider-model-discovery-section.spec.d.ts.map +1 -0
- package/lib/browser/ai-configuration/categories/provider-model-discovery-section.spec.js +423 -0
- package/lib/browser/ai-configuration/categories/provider-model-discovery-section.spec.js.map +1 -0
- package/lib/browser/ai-configuration/language-model-renderer.d.ts.map +1 -1
- package/lib/browser/ai-configuration/language-model-renderer.js +10 -3
- package/lib/browser/ai-configuration/language-model-renderer.js.map +1 -1
- package/lib/browser/ai-getting-started-commands.d.ts +10 -0
- package/lib/browser/ai-getting-started-commands.d.ts.map +1 -0
- package/lib/browser/ai-getting-started-commands.js +34 -0
- package/lib/browser/ai-getting-started-commands.js.map +1 -0
- package/lib/browser/ai-getting-started-contribution.d.ts +20 -0
- package/lib/browser/ai-getting-started-contribution.d.ts.map +1 -0
- package/lib/browser/ai-getting-started-contribution.js +70 -0
- package/lib/browser/ai-getting-started-contribution.js.map +1 -0
- package/lib/browser/ai-getting-started-walkthrough.d.ts +41 -0
- package/lib/browser/ai-getting-started-walkthrough.d.ts.map +1 -0
- package/lib/browser/ai-getting-started-walkthrough.js +225 -0
- package/lib/browser/ai-getting-started-walkthrough.js.map +1 -0
- package/lib/browser/ai-getting-started-walkthrough.spec.d.ts +2 -0
- package/lib/browser/ai-getting-started-walkthrough.spec.d.ts.map +1 -0
- package/lib/browser/ai-getting-started-walkthrough.spec.js +124 -0
- package/lib/browser/ai-getting-started-walkthrough.spec.js.map +1 -0
- package/lib/browser/ai-walkthrough-context-keys.d.ts +55 -0
- package/lib/browser/ai-walkthrough-context-keys.d.ts.map +1 -0
- package/lib/browser/ai-walkthrough-context-keys.js +145 -0
- package/lib/browser/ai-walkthrough-context-keys.js.map +1 -0
- package/lib/browser/ai-walkthrough-context-keys.spec.d.ts +2 -0
- package/lib/browser/ai-walkthrough-context-keys.spec.d.ts.map +1 -0
- package/lib/browser/ai-walkthrough-context-keys.spec.js +166 -0
- package/lib/browser/ai-walkthrough-context-keys.spec.js.map +1 -0
- package/lib/browser/chat-session-item.js +2 -2
- package/lib/browser/chat-session-item.js.map +1 -1
- package/lib/browser/commit-message-agent.d.ts +31 -0
- package/lib/browser/commit-message-agent.d.ts.map +1 -0
- package/lib/browser/commit-message-agent.js +99 -0
- package/lib/browser/commit-message-agent.js.map +1 -0
- package/lib/browser/commit-message-agent.spec.d.ts +2 -0
- package/lib/browser/commit-message-agent.spec.d.ts.map +1 -0
- package/lib/browser/commit-message-agent.spec.js +82 -0
- package/lib/browser/commit-message-agent.spec.js.map +1 -0
- package/lib/browser/commit-message-command-contribution.d.ts +15 -0
- package/lib/browser/commit-message-command-contribution.d.ts.map +1 -0
- package/lib/browser/commit-message-command-contribution.js +73 -0
- package/lib/browser/commit-message-command-contribution.js.map +1 -0
- package/lib/browser/commit-message-commands.d.ts +5 -0
- package/lib/browser/commit-message-commands.d.ts.map +1 -0
- package/lib/browser/commit-message-commands.js +28 -0
- package/lib/browser/commit-message-commands.js.map +1 -0
- package/lib/browser/commit-message-prompt-template.d.ts +11 -0
- package/lib/browser/commit-message-prompt-template.d.ts.map +1 -0
- package/lib/browser/commit-message-prompt-template.js +63 -0
- package/lib/browser/commit-message-prompt-template.js.map +1 -0
- package/lib/browser/commit-message-runner.d.ts +41 -0
- package/lib/browser/commit-message-runner.d.ts.map +1 -0
- package/lib/browser/commit-message-runner.js +143 -0
- package/lib/browser/commit-message-runner.js.map +1 -0
- package/lib/browser/commit-message-runner.spec.d.ts +2 -0
- package/lib/browser/commit-message-runner.spec.d.ts.map +1 -0
- package/lib/browser/commit-message-runner.spec.js +206 -0
- package/lib/browser/commit-message-runner.spec.js.map +1 -0
- package/lib/browser/frontend-module.d.ts.map +1 -1
- package/lib/browser/frontend-module.js +25 -0
- package/lib/browser/frontend-module.js.map +1 -1
- package/lib/browser/git-changes-tool.d.ts +73 -0
- package/lib/browser/git-changes-tool.d.ts.map +1 -0
- package/lib/browser/git-changes-tool.js +217 -0
- package/lib/browser/git-changes-tool.js.map +1 -0
- package/lib/browser/git-changes-tool.spec.d.ts +2 -0
- package/lib/browser/git-changes-tool.spec.d.ts.map +1 -0
- package/lib/browser/git-changes-tool.spec.js +167 -0
- package/lib/browser/git-changes-tool.spec.js.map +1 -0
- package/lib/browser/ide-chat-welcome-message-provider.d.ts +26 -28
- package/lib/browser/ide-chat-welcome-message-provider.d.ts.map +1 -1
- package/lib/browser/ide-chat-welcome-message-provider.js +61 -151
- package/lib/browser/ide-chat-welcome-message-provider.js.map +1 -1
- package/lib/browser/review/pr-review-capability-contribution.js +1 -1
- package/lib/browser/review/pr-review-capability-contribution.js.map +1 -1
- package/lib/browser/user-interaction-tool-renderer.d.ts +6 -0
- package/lib/browser/user-interaction-tool-renderer.d.ts.map +1 -1
- package/lib/browser/user-interaction-tool-renderer.js +36 -7
- package/lib/browser/user-interaction-tool-renderer.js.map +1 -1
- package/lib/browser/user-interaction-tool.d.ts +23 -1
- package/lib/browser/user-interaction-tool.d.ts.map +1 -1
- package/lib/browser/user-interaction-tool.js +56 -17
- package/lib/browser/user-interaction-tool.js.map +1 -1
- package/lib/browser/user-interaction-tool.spec.js +151 -2
- package/lib/browser/user-interaction-tool.spec.js.map +1 -1
- package/lib/common/command-prompt-template.js +1 -1
- package/lib/common/user-interaction-tool.d.ts +19 -1
- package/lib/common/user-interaction-tool.d.ts.map +1 -1
- package/lib/common/user-interaction-tool.js +100 -29
- package/lib/common/user-interaction-tool.js.map +1 -1
- package/lib/common/user-interaction-tool.spec.js +215 -174
- package/lib/common/user-interaction-tool.spec.js.map +1 -1
- package/package.json +26 -25
- package/src/browser/ai-allow-all-mode-chat-banner.tsx +2 -2
- package/src/browser/ai-aware-scm-commit-widget.tsx +153 -0
- package/src/browser/ai-configuration/ai-configuration-detail-widget.spec.ts +14 -14
- package/src/browser/ai-configuration/ai-configuration-detail-widget.tsx +12 -7
- package/src/browser/ai-configuration/ai-configuration-tree-widget.tsx +8 -0
- package/src/browser/ai-configuration/categories/agent-capabilities-settings.tsx +7 -8
- package/src/browser/ai-configuration/categories/agent-chips.tsx +1 -1
- package/src/browser/ai-configuration/categories/model-aliases-configuration-category.spec.ts +40 -2
- package/src/browser/ai-configuration/categories/model-aliases-configuration-category.tsx +31 -10
- package/src/browser/ai-configuration/categories/models-configuration-category.spec.ts +47 -2
- package/src/browser/ai-configuration/categories/models-configuration-category.tsx +52 -5
- package/src/browser/ai-configuration/categories/provider-model-discovery-section.spec.tsx +451 -0
- package/src/browser/ai-configuration/categories/provider-model-discovery-section.tsx +341 -0
- package/src/browser/ai-configuration/language-model-renderer.tsx +11 -3
- package/src/browser/ai-getting-started-commands.ts +33 -0
- package/src/browser/ai-getting-started-contribution.ts +64 -0
- package/src/browser/ai-getting-started-walkthrough.spec.ts +146 -0
- package/src/browser/ai-getting-started-walkthrough.ts +249 -0
- package/src/browser/ai-walkthrough-context-keys.spec.ts +209 -0
- package/src/browser/ai-walkthrough-context-keys.ts +147 -0
- package/src/browser/chat-session-item.tsx +2 -2
- package/src/browser/commit-message-agent.spec.ts +97 -0
- package/src/browser/commit-message-agent.ts +113 -0
- package/src/browser/commit-message-command-contribution.ts +67 -0
- package/src/browser/commit-message-commands.ts +25 -0
- package/src/browser/commit-message-prompt-template.ts +65 -0
- package/src/browser/commit-message-runner.spec.ts +266 -0
- package/src/browser/commit-message-runner.ts +163 -0
- package/src/browser/frontend-module.ts +27 -0
- package/src/browser/git-changes-tool.spec.ts +200 -0
- package/src/browser/git-changes-tool.ts +239 -0
- package/src/browser/ide-chat-welcome-message-provider.tsx +93 -230
- package/src/browser/review/pr-review-capability-contribution.ts +1 -1
- package/src/browser/style/commit-message-overlay.css +64 -0
- package/src/browser/style/index.css +4 -42
- package/src/browser/user-interaction-tool-renderer.tsx +38 -8
- package/src/browser/user-interaction-tool.spec.ts +201 -2
- package/src/browser/user-interaction-tool.ts +69 -18
- package/src/common/command-prompt-template.ts +1 -1
- package/src/common/user-interaction-tool.spec.ts +217 -161
- package/src/common/user-interaction-tool.ts +127 -32
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProviderModelDiscoverySection = 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
|
+
const React = require("@theia/core/shared/react");
|
|
23
|
+
const date_fns_1 = require("date-fns");
|
|
24
|
+
const common_1 = require("@theia/ai-core/lib/common");
|
|
25
|
+
const ai_configuration_primitives_1 = require("@theia/ai-core-ui/lib/browser/ai-configuration/components/ai-configuration-primitives");
|
|
26
|
+
const ai_configuration_item_row_1 = require("@theia/ai-core-ui/lib/browser/ai-configuration/components/ai-configuration-item-row");
|
|
27
|
+
/**
|
|
28
|
+
* Number of models from which the list gets a filter. Below it, scanning the list is faster than
|
|
29
|
+
* typing; above it — OpenAI reports dozens — it is not.
|
|
30
|
+
*/
|
|
31
|
+
const FILTER_THRESHOLD = 8;
|
|
32
|
+
/**
|
|
33
|
+
* Renders a provider's model-discovery state (fetching / ready / cached / error / no credentials /
|
|
34
|
+
* awaiting consent / manual), a manual refresh, and the discovered models, below the provider's
|
|
35
|
+
* settings in the Models category. This is the provider-level surface that per-model status cannot
|
|
36
|
+
* give: fetching progress and failure of the list call itself.
|
|
37
|
+
*
|
|
38
|
+
* The list holds everything the provider offers, one entry per release included, which is more than
|
|
39
|
+
* a model picker can carry. Which of them the pickers offer is shown and controlled here, by the
|
|
40
|
+
* star on each row.
|
|
41
|
+
*/
|
|
42
|
+
const ProviderModelDiscoverySection = ({ status, models, favorites, onRefresh, onAction }) => {
|
|
43
|
+
const [filter, setFilter] = React.useState('');
|
|
44
|
+
const [favoritesOnly, setFavoritesOnly] = React.useState(false);
|
|
45
|
+
// Re-render when a star is set anywhere, and when a discovery changes what is featured.
|
|
46
|
+
const [favoritesRevision, setFavoritesRevision] = React.useState(0);
|
|
47
|
+
React.useEffect(() => {
|
|
48
|
+
const listener = favorites.onDidChange(() => setFavoritesRevision(revision => revision + 1));
|
|
49
|
+
return () => listener.dispose();
|
|
50
|
+
}, [favorites]);
|
|
51
|
+
const fetching = status.state === 'fetching';
|
|
52
|
+
const modelIdPrefix = status.modelIdPrefix ?? status.providerId;
|
|
53
|
+
const overridden = favorites.hasOverrides(modelIdPrefix);
|
|
54
|
+
// Without a credential there is nothing to ask the provider; refreshing would only report the same
|
|
55
|
+
// state back. The setting or the sign-in above the list is what moves this on.
|
|
56
|
+
const refreshable = status.state !== 'no-credentials' && status.state !== 'awaiting-consent';
|
|
57
|
+
// Newest first: a provider's recent models are what a list this long is scrolled for. Models whose
|
|
58
|
+
// provider reports no release date (Gemini reports none) fall back to alphabetical order.
|
|
59
|
+
const rows = React.useMemo(() => models
|
|
60
|
+
.slice()
|
|
61
|
+
.sort(common_1.compareModelsByRecency)
|
|
62
|
+
// `favoritesRevision` is not read here: it is what re-runs this when a star or the featured set changes.
|
|
63
|
+
.map(model => describeModel(model, status.discovered, favorites))
|
|
64
|
+
// The provider's current line-up first, newest first within each part. A list this long is read
|
|
65
|
+
// from the top, and the models the picker starts with are what it is usually opened for. The sort
|
|
66
|
+
// is stable, so it only lifts them past the older ones without disturbing the order.
|
|
67
|
+
.sort((left, right) => Number(right.featured) - Number(left.featured)), [models, status.discovered, favorites, favoritesRevision]);
|
|
68
|
+
const matches = React.useMemo(() => rows.filter(row => (!favoritesOnly || row.favorite) && matchesFilter(row, filter)), [rows, filter, favoritesOnly]);
|
|
69
|
+
const favoritesOnlyLabel = favoritesOnly
|
|
70
|
+
? core_1.nls.localize('theia/ai/ide/modelsConfiguration/showAllModels', 'Show all discovered models')
|
|
71
|
+
: core_1.nls.localize('theia/ai/ide/modelsConfiguration/showCheckedModels', 'Show only the models the AI chat input\'s model picker shows');
|
|
72
|
+
const filterToggles = [{
|
|
73
|
+
iconClass: (0, browser_1.codicon)('pass'),
|
|
74
|
+
title: favoritesOnlyLabel,
|
|
75
|
+
active: favoritesOnly,
|
|
76
|
+
onToggle: () => setFavoritesOnly(!favoritesOnly)
|
|
77
|
+
}];
|
|
78
|
+
return (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationSection, { title: core_1.nls.localize('theia/ai/ide/modelsConfiguration/discovery', 'Model Discovery'), count: rows.length > 0 ? rows.length : undefined, subtitle: sectionSubtitle(status, rows.length, rows.filter(row => row.favorite).length), actions: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationStatusBadge, { status: discoveryStatusBadge(status) }), (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationIconButton, { iconClass: (0, browser_1.codicon)(fetching ? 'sync' : 'refresh'), title: refreshable
|
|
79
|
+
? core_1.nls.localize('theia/ai/ide/modelsConfiguration/refresh', 'Refresh the model list')
|
|
80
|
+
: status.message ?? core_1.nls.localize('theia/ai/ide/modelsConfiguration/refreshUnavailable', 'Nothing to refresh until the provider has a credential'), busy: fetching, disabled: fetching || !refreshable, onClick: onRefresh }), (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationIconButton, { iconClass: (0, browser_1.codicon)('discard'), title: overridden
|
|
81
|
+
? core_1.nls.localize('theia/ai/ide/modelsConfiguration/resetShown', 'Reset to defaults')
|
|
82
|
+
: core_1.nls.localize('theia/ai/ide/modelsConfiguration/resetShownUnavailable', 'Already at the defaults'), disabled: !overridden, onClick: () => favorites.resetToDefaults(modelIdPrefix) })] }), children: (0, jsx_runtime_1.jsx)(DiscoveryBody, { status: status, rows: rows, matches: matches, filter: filter, onFilterChange: setFilter, filterToggles: filterToggles, favorites: favorites, onRefresh: onRefresh, onAction: onAction }) });
|
|
83
|
+
};
|
|
84
|
+
exports.ProviderModelDiscoverySection = ProviderModelDiscoverySection;
|
|
85
|
+
/**
|
|
86
|
+
* The line under the section title. A manually configured list says so, since that is why no discovery
|
|
87
|
+
* ran; otherwise it states once — rather than leaving it to the tooltip of each of forty rows — that
|
|
88
|
+
* the checks are about the chat input alone. An agent's model and a model alias are picked from every
|
|
89
|
+
* discovered model, on their own pages.
|
|
90
|
+
*/
|
|
91
|
+
function sectionSubtitle(status, rowCount, shownCount) {
|
|
92
|
+
if (status.state === 'overridden') {
|
|
93
|
+
return status.message;
|
|
94
|
+
}
|
|
95
|
+
// The ratio is the overview a list this long cannot give by itself, and it says what the checks mean.
|
|
96
|
+
return rowCount > 0
|
|
97
|
+
? core_1.nls.localize('theia/ai/ide/modelsConfiguration/shownExplanation', '{0} of {1} shown in the AI chat input\'s model picker', shownCount, rowCount)
|
|
98
|
+
: undefined;
|
|
99
|
+
}
|
|
100
|
+
function describeModel(model, discovered, favorites) {
|
|
101
|
+
// Registered ids carry the `<provider>/` prefix; what the provider reported does not.
|
|
102
|
+
const id = model.id.substring(model.id.indexOf('/') + 1);
|
|
103
|
+
const reported = discovered?.find(candidate => candidate.id === id);
|
|
104
|
+
return {
|
|
105
|
+
id,
|
|
106
|
+
qualifiedId: model.id,
|
|
107
|
+
label: reported?.label ?? model.name,
|
|
108
|
+
description: reported?.description,
|
|
109
|
+
released: model.released ?? reported?.released,
|
|
110
|
+
ready: model.status.status === 'ready',
|
|
111
|
+
statusMessage: model.status.message,
|
|
112
|
+
favorite: favorites.isFavorite(model.id),
|
|
113
|
+
featured: favorites.isFeatured(model.id)
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
function matchesFilter(row, filter) {
|
|
117
|
+
const query = filter.trim().toLowerCase();
|
|
118
|
+
return query.length === 0
|
|
119
|
+
|| row.id.toLowerCase().includes(query)
|
|
120
|
+
|| (row.label?.toLowerCase().includes(query) ?? false);
|
|
121
|
+
}
|
|
122
|
+
const DiscoveryBody = ({ status, rows, matches, filter, onFilterChange, filterToggles, favorites, onRefresh, onAction }) => {
|
|
123
|
+
// The provider's API-key and consent settings sit on the same page, right above this section — but
|
|
124
|
+
// a provider whose credential is a sign-in rather than a setting names the command that gets one.
|
|
125
|
+
if (status.state === 'no-credentials' || status.state === 'awaiting-consent') {
|
|
126
|
+
return (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationEmptyState, { message: status.message ?? '', iconClass: (0, browser_1.codicon)('key'), action: status.action && (0, jsx_runtime_1.jsx)("button", { className: 'theia-button main', onClick: () => onAction(status.action), children: status.action.label }) });
|
|
127
|
+
}
|
|
128
|
+
const retry = (0, jsx_runtime_1.jsx)("button", { className: 'theia-button main', onClick: onRefresh, children: core_1.nls.localizeByDefault('Retry') });
|
|
129
|
+
const refresh = (0, jsx_runtime_1.jsx)("button", { className: 'theia-button main', onClick: onRefresh, children: core_1.nls.localizeByDefault('Refresh') });
|
|
130
|
+
return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [status.state === 'error' && (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationCallout, { message: status.message ?? '', action: retry }), status.state === 'ready' && status.fromCache && status.message && (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationCallout, { message: status.message, action: refresh }), rows.length === 0
|
|
131
|
+
? (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationEmptyState, { message: core_1.nls.localize('theia/ai/ide/modelsConfiguration/noModels', 'No models discovered yet.'), iconClass: (0, browser_1.codicon)('cloud') })
|
|
132
|
+
: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [rows.length > FILTER_THRESHOLD && (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationFilterInput, { value: filter, onChange: onFilterChange, placeholder: core_1.nls.localize('theia/ai/ide/modelsConfiguration/filterModels', 'Filter models'), toggles: filterToggles }), matches.length === 0
|
|
133
|
+
? (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationEmptyState, { message: core_1.nls.localizeByDefault('No results found') })
|
|
134
|
+
: (0, jsx_runtime_1.jsx)(ModelRows, { rows: matches, favorites: favorites })] })] });
|
|
135
|
+
};
|
|
136
|
+
const ModelRows = ({ rows, favorites }) => (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: rows.map(row => (0, jsx_runtime_1.jsx)(ai_configuration_item_row_1.AiConfigurationItemRow, {
|
|
137
|
+
// The id is the heading on every row, whatever the provider reports: it is what agents, aliases
|
|
138
|
+
// and settings reference, and OpenAI reports nothing else, so heading it with the name where
|
|
139
|
+
// there is one would give each provider a differently shaped list.
|
|
140
|
+
label: row.id,
|
|
141
|
+
// Kept on the row whether the model is checked or not: it says that this is one of the
|
|
142
|
+
// provider's current models, which is why the picker starts with it and stays true after
|
|
143
|
+
// someone unchecks it.
|
|
144
|
+
tags: row.featured
|
|
145
|
+
? [{
|
|
146
|
+
label: core_1.nls.localizeByDefault('Default'),
|
|
147
|
+
title: core_1.nls.localize('theia/ai/ide/modelsConfiguration/defaultModel', 'One of the newest models of this provider, which the AI chat input\'s model picker shows unless it is hidden here')
|
|
148
|
+
}]
|
|
149
|
+
: undefined, description: modelRowDescription(row),
|
|
150
|
+
// Every model in this list is ready as long as the provider has a key, which it has whenever the
|
|
151
|
+
// list is shown at all. Only the exception is worth a badge.
|
|
152
|
+
status: row.ready ? undefined : notReadyBadge(row), trailing: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [row.released !== undefined && (0, jsx_runtime_1.jsx)("span", { className: 'ai-configuration-item-row-detail', children: core_1.nls.localize('theia/ai/ide/modelsConfiguration/released', 'released {0}', (0, date_fns_1.formatDistanceToNow)(row.released, { addSuffix: true })) }), (0, jsx_runtime_1.jsx)(ShowInChatButton, { row: row, favorites: favorites })] }) }, row.id)) });
|
|
153
|
+
/**
|
|
154
|
+
* Whether the AI chat input's model picker shows this model: a checked circle when it does, an empty
|
|
155
|
+
* one when it does not. Nothing else is affected — an agent's model and a model alias are picked from
|
|
156
|
+
* every discovered model, on their own pages.
|
|
157
|
+
*
|
|
158
|
+
* What a model released tomorrow is shown by is the `Default` badge on its row, not a check made
|
|
159
|
+
* here; unchecking one of those is what says otherwise, and that is all that is stored.
|
|
160
|
+
*/
|
|
161
|
+
const ShowInChatButton = ({ row, favorites }) => {
|
|
162
|
+
const title = row.favorite
|
|
163
|
+
? core_1.nls.localize('theia/ai/ide/modelsConfiguration/hideModel', 'Hide this model from the AI chat input\'s model picker')
|
|
164
|
+
: core_1.nls.localize('theia/ai/ide/modelsConfiguration/showModel', 'Show this model in the AI chat input\'s model picker');
|
|
165
|
+
return (0, jsx_runtime_1.jsx)(ai_configuration_primitives_1.AiConfigurationIconButton, { iconClass: (0, browser_1.codicon)(row.favorite ? 'pass' : 'circle-large'), title: title, onClick: () => favorites.toggleFavorite(row.qualifiedId) });
|
|
166
|
+
};
|
|
167
|
+
/** What the provider reports about the model, if anything: its name, its description, or both. */
|
|
168
|
+
function modelRowDescription(row) {
|
|
169
|
+
const parts = [row.label, row.description].filter(part => part !== undefined);
|
|
170
|
+
return parts.length > 0 ? parts.join(' · ') : undefined;
|
|
171
|
+
}
|
|
172
|
+
function notReadyBadge(row) {
|
|
173
|
+
return {
|
|
174
|
+
kind: 'warn',
|
|
175
|
+
label: core_1.nls.localize('theia/ai/ide/modelsConfiguration/modelNotReady', 'Not ready'),
|
|
176
|
+
tooltip: row.statusMessage
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
/** Maps the discovery state onto the shared status badge, so it reads like every other badge in the view. */
|
|
180
|
+
function discoveryStatusBadge(status) {
|
|
181
|
+
const badge = genericStatusBadge(status);
|
|
182
|
+
// A provider whose credential is not an API key says so itself; the state alone cannot know.
|
|
183
|
+
return status.stateLabel ? { ...badge, label: status.stateLabel } : badge;
|
|
184
|
+
}
|
|
185
|
+
function genericStatusBadge(status) {
|
|
186
|
+
switch (status.state) {
|
|
187
|
+
case 'no-credentials':
|
|
188
|
+
return { kind: 'warn', label: core_1.nls.localize('theia/ai/ide/modelsConfiguration/noKey', 'No API key'), tooltip: status.message };
|
|
189
|
+
case 'awaiting-consent':
|
|
190
|
+
return { kind: 'warn', label: core_1.nls.localize('theia/ai/ide/modelsConfiguration/awaitingConsent', 'Awaiting consent'), tooltip: status.message };
|
|
191
|
+
case 'fetching':
|
|
192
|
+
return { kind: 'off', label: core_1.nls.localize('theia/ai/ide/modelsConfiguration/fetching', 'Fetching…'), tooltip: status.message };
|
|
193
|
+
case 'error':
|
|
194
|
+
return { kind: 'error', label: core_1.nls.localizeByDefault('Error'), tooltip: status.message };
|
|
195
|
+
case 'overridden':
|
|
196
|
+
return { kind: 'off', label: core_1.nls.localizeByDefault('Manual'), tooltip: status.message };
|
|
197
|
+
case 'ready':
|
|
198
|
+
if (status.fromCache) {
|
|
199
|
+
return { kind: 'warn', label: core_1.nls.localizeByDefault('Cached'), tooltip: status.message };
|
|
200
|
+
}
|
|
201
|
+
return {
|
|
202
|
+
kind: 'on',
|
|
203
|
+
label: status.lastFetch
|
|
204
|
+
? core_1.nls.localize('theia/ai/ide/modelsConfiguration/updated', 'Updated {0}', (0, date_fns_1.formatDistanceToNow)(status.lastFetch, { addSuffix: true }))
|
|
205
|
+
: core_1.nls.localize('theia/ai/ide/modelsConfiguration/ready', 'Ready'),
|
|
206
|
+
tooltip: status.message
|
|
207
|
+
};
|
|
208
|
+
default:
|
|
209
|
+
return { kind: 'off', label: core_1.nls.localizeByDefault('Idle'), tooltip: status.message };
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
//# sourceMappingURL=provider-model-discovery-section.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-model-discovery-section.js","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/categories/provider-model-discovery-section.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;AAClD,uCAA+C;AAC/C,sDAAkF;AAIlF,uIAG+F;AAC/F,mIAA6H;AAE7H;;;GAGG;AACH,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAa3B;;;;;;;;;GASG;AACI,MAAM,6BAA6B,GAAiD,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC9I,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC/C,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChE,wFAAwF;IACxF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,MAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;QAC7F,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IACpC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,KAAK,UAAU,CAAC;IAC7C,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,UAAU,CAAC;IAChE,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IACzD,mGAAmG;IACnG,+EAA+E;IAC/E,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,KAAK,gBAAgB,IAAI,MAAM,CAAC,KAAK,KAAK,kBAAkB,CAAC;IAC7F,mGAAmG;IACnG,0FAA0F;IAC1F,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM;SAClC,KAAK,EAAE;SACP,IAAI,CAAC,+BAAsB,CAAC;QAC7B,yGAAyG;SACxG,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QACjE,gGAAgG;QAChG,kGAAkG;QAClG,qFAAqF;SACpF,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAC1E,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CACzB,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,EACxF,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAChC,CAAC;IACF,MAAM,kBAAkB,GAAG,aAAa;QACpC,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,gDAAgD,EAAE,4BAA4B,CAAC;QAC9F,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,oDAAoD,EAAE,8DAA8D,CAAC,CAAC;IACzI,MAAM,aAAa,GAAkC,CAAC;YAClD,SAAS,EAAE,IAAA,iBAAO,EAAC,MAAM,CAAC;YAC1B,KAAK,EAAE,kBAAkB;YACzB,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,CAAC,aAAa,CAAC;SACnD,CAAC,CAAC;IACH,OAAO,uBAAC,oDAAsB,IAC1B,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,4CAA4C,EAAE,iBAAiB,CAAC,EACpF,KAAK,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAChD,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EACvF,OAAO,EAAE,6DACL,uBAAC,wDAA0B,IAAC,MAAM,EAAE,oBAAoB,CAAC,MAAM,CAAC,GAAI,EACpE,uBAAC,uDAAyB,IACtB,SAAS,EAAE,IAAA,iBAAO,EAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,EACjD,KAAK,EAAE,WAAW;wBACd,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,0CAA0C,EAAE,wBAAwB,CAAC;wBACpF,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,UAAG,CAAC,QAAQ,CAAC,qDAAqD,EAAE,wDAAwD,CAAC,EACrJ,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,QAAQ,IAAI,CAAC,WAAW,EAClC,OAAO,EAAE,SAAS,GACpB,EACF,uBAAC,uDAAyB,IACtB,SAAS,EAAE,IAAA,iBAAO,EAAC,SAAS,CAAC,EAC7B,KAAK,EAAE,UAAU;wBACb,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,6CAA6C,EAAE,mBAAmB,CAAC;wBAClF,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,wDAAwD,EAAE,yBAAyB,CAAC,EACvG,QAAQ,EAAE,CAAC,UAAU,EACrB,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,eAAe,CAAC,aAAa,CAAC,GACzD,IACH,YAEH,uBAAC,aAAa,IACV,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,SAAS,EACzB,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,GACpB,GACmB,CAAC;AAC9B,CAAC,CAAC;AA7EW,QAAA,6BAA6B,iCA6ExC;AAEF;;;;;GAKG;AACH,SAAS,eAAe,CAAC,MAA4B,EAAE,QAAgB,EAAE,UAAkB;IACvF,IAAI,MAAM,CAAC,KAAK,KAAK,YAAY,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC,OAAO,CAAC;IAC1B,CAAC;IACD,sGAAsG;IACtG,OAAO,QAAQ,GAAG,CAAC;QACf,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,mDAAmD,EAC9D,uDAAuD,EAAE,UAAU,EAAE,QAAQ,CAAC;QAClF,CAAC,CAAC,SAAS,CAAC;AACpB,CAAC;AAkBD,SAAS,aAAa,CAAC,KAAoB,EAAE,UAAkD,EAAE,SAAgC;IAC7H,sFAAsF;IACtF,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACpE,OAAO;QACH,EAAE;QACF,WAAW,EAAE,KAAK,CAAC,EAAE;QACrB,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,KAAK,CAAC,IAAI;QACpC,WAAW,EAAE,QAAQ,EAAE,WAAW;QAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,QAAQ,EAAE,QAAQ;QAC9C,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,OAAO;QACtC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO;QACnC,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;KAC3C,CAAC;AACN,CAAC;AAED,SAAS,aAAa,CAAC,GAAa,EAAE,MAAc;IAChD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1C,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;WAClB,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;WACpC,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC;AAC/D,CAAC;AAeD,MAAM,aAAa,GAAiC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IACrJ,mGAAmG;IACnG,kGAAkG;IAClG,IAAI,MAAM,CAAC,KAAK,KAAK,gBAAgB,IAAI,MAAM,CAAC,KAAK,KAAK,kBAAkB,EAAE,CAAC;QAC3E,OAAO,uBAAC,uDAAyB,IAC7B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE,EAC7B,SAAS,EAAE,IAAA,iBAAO,EAAC,KAAK,CAAC,EACzB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,mCAAQ,SAAS,EAAC,mBAAmB,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAO,CAAC,YAAG,MAAM,CAAC,MAAM,CAAC,KAAK,GAAU,GACxI,CAAC;IACP,CAAC;IACD,MAAM,KAAK,GAAG,mCAAQ,SAAS,EAAC,mBAAmB,EAAC,OAAO,EAAE,SAAS,YAAG,UAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,GAAU,CAAC;IAClH,MAAM,OAAO,GAAG,mCAAQ,SAAS,EAAC,mBAAmB,EAAC,OAAO,EAAE,SAAS,YAAG,UAAG,CAAC,iBAAiB,CAAC,SAAS,CAAC,GAAU,CAAC;IACtH,OAAO,6DAGF,MAAM,CAAC,KAAK,KAAK,OAAO,IAAI,uBAAC,oDAAsB,IAAC,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,GAAI,EACpG,MAAM,CAAC,KAAK,KAAK,OAAO,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO,IAAI,uBAAC,oDAAsB,IAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAI,EACtI,IAAI,CAAC,MAAM,KAAK,CAAC;gBACd,CAAC,CAAC,uBAAC,uDAAyB,IACxB,OAAO,EAAE,UAAG,CAAC,QAAQ,CAAC,2CAA2C,EAAE,2BAA2B,CAAC,EAC/F,SAAS,EAAE,IAAA,iBAAO,EAAC,OAAO,CAAC,GAC7B;gBACF,CAAC,CAAC,6DACG,IAAI,CAAC,MAAM,GAAG,gBAAgB,IAAI,uBAAC,wDAA0B,IAC1D,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAE,UAAG,CAAC,QAAQ,CAAC,+CAA+C,EAAE,eAAe,CAAC,EAC3F,OAAO,EAAE,aAAa,GACxB,EACD,OAAO,CAAC,MAAM,KAAK,CAAC;4BACjB,CAAC,CAAC,uBAAC,uDAAyB,IAAC,OAAO,EAAE,UAAG,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,GAAI;4BACnF,CAAC,CAAC,uBAAC,SAAS,IAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,GAAI,IACzD,IACR,CAAC;AACR,CAAC,CAAC;AAEF,MAAM,SAAS,GAAqE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,2DACxG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,uBAAC,kDAAsB;QAEpC,gGAAgG;QAChG,6FAA6F;QAC7F,mEAAmE;QACnE,KAAK,EAAE,GAAG,CAAC,EAAE;QACb,uFAAuF;QACvF,yFAAyF;QACzF,uBAAuB;QACvB,IAAI,EAAE,GAAG,CAAC,QAAQ;YACd,CAAC,CAAC,CAAC;oBACC,KAAK,EAAE,UAAG,CAAC,iBAAiB,CAAC,SAAS,CAAC;oBACvC,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,+CAA+C,EAC/D,mHAAmH,CAAC;iBAC3H,CAAC;YACF,CAAC,CAAC,SAAS,EACf,WAAW,EAAE,mBAAmB,CAAC,GAAG,CAAC;QACrC,iGAAiG;QACjG,6DAA6D;QAC7D,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,EAClD,QAAQ,EAAE,6DAEL,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,iCAAM,SAAS,EAAC,kCAAkC,YAC5E,UAAG,CAAC,QAAQ,CAAC,2CAA2C,EAAE,cAAc,EACrE,IAAA,8BAAmB,EAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,GACxD,EACP,uBAAC,gBAAgB,IAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,GAAI,IACrD,IA1BE,GAAG,CAAC,EAAE,CA2Bb,CAAC,GACJ,CAAC;AAEJ;;;;;;;GAOG;AACH,MAAM,gBAAgB,GAAkE,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE;IAC3G,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ;QACtB,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,4CAA4C,EAAE,wDAAwD,CAAC;QACtH,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,4CAA4C,EAAE,sDAAsD,CAAC,CAAC;IACzH,OAAO,uBAAC,uDAAyB,IAC7B,SAAS,EAAE,IAAA,iBAAO,EAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,EAC1D,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,GAC1D,CAAC;AACP,CAAC,CAAC;AAEF,kGAAkG;AAClG,SAAS,mBAAmB,CAAC,GAAa;IACtC,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAC9E,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5D,CAAC;AAED,SAAS,aAAa,CAAC,GAAa;IAChC,OAAO;QACH,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,gDAAgD,EAAE,WAAW,CAAC;QAClF,OAAO,EAAE,GAAG,CAAC,aAAa;KAC7B,CAAC;AACN,CAAC;AAED,6GAA6G;AAC7G,SAAS,oBAAoB,CAAC,MAA4B;IACtD,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACzC,6FAA6F;IAC7F,OAAO,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AAC9E,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA4B;IACpD,QAAQ,MAAM,CAAC,KAAK,EAAE,CAAC;QACnB,KAAK,gBAAgB;YACjB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,wCAAwC,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;QAClI,KAAK,kBAAkB;YACnB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,kDAAkD,EAAE,kBAAkB,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;QAClJ,KAAK,UAAU;YACX,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,2CAA2C,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;QACnI,KAAK,OAAO;YACR,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,UAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;QAC7F,KAAK,YAAY;YACb,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;QAC5F,KAAK,OAAO;YACR,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACnB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YAC7F,CAAC;YACD,OAAO;gBACH,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,MAAM,CAAC,SAAS;oBACnB,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,0CAA0C,EAAE,aAAa,EAAE,IAAA,8BAAmB,EAAC,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBACrI,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,wCAAwC,EAAE,OAAO,CAAC;gBACrE,OAAO,EAAE,MAAM,CAAC,OAAO;aAC1B,CAAC;QACN;YACI,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;IAC9F,CAAC;AACL,CAAC"}
|
package/lib/browser/ai-configuration/categories/provider-model-discovery-section.spec.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-model-discovery-section.spec.d.ts","sourceRoot":"","sources":["../../../../src/browser/ai-configuration/categories/provider-model-discovery-section.spec.tsx"],"names":[],"mappings":""}
|