@theia/ai-ide 1.76.0-next.16 → 1.76.0-next.23
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-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-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/frontend-module.d.ts.map +1 -1
- package/lib/browser/frontend-module.js +8 -0
- package/lib/browser/frontend-module.js.map +1 -1
- 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/user-interaction-tool-renderer.d.ts.map +1 -1
- package/lib/browser/user-interaction-tool-renderer.js +19 -6
- package/lib/browser/user-interaction-tool-renderer.js.map +1 -1
- package/lib/browser/user-interaction-tool.d.ts +8 -1
- package/lib/browser/user-interaction-tool.d.ts.map +1 -1
- package/lib/browser/user-interaction-tool.js +23 -15
- package/lib/browser/user-interaction-tool.js.map +1 -1
- package/lib/browser/user-interaction-tool.spec.js +55 -2
- package/lib/browser/user-interaction-tool.spec.js.map +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 +25 -24
- 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-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/frontend-module.ts +9 -0
- package/src/browser/ide-chat-welcome-message-provider.tsx +93 -230
- package/src/browser/style/index.css +1 -41
- package/src/browser/user-interaction-tool-renderer.tsx +19 -7
- package/src/browser/user-interaction-tool.spec.ts +62 -2
- package/src/browser/user-interaction-tool.ts +25 -15
- package/src/common/user-interaction-tool.spec.ts +217 -161
- package/src/common/user-interaction-tool.ts +127 -32
|
@@ -9,6 +9,8 @@ export declare class AiConfigurationDetailWidget extends ReactWidget {
|
|
|
9
9
|
static readonly ID = "ai-configuration-detail";
|
|
10
10
|
/** Frames a pending search highlight waits for its target row to be mounted before it is dropped. */
|
|
11
11
|
static readonly HIGHLIGHT_RETRY_FRAMES = 10;
|
|
12
|
+
/** Space kept above a row a deep link scrolled to, so that its section header stays visible. */
|
|
13
|
+
static readonly TARGET_ROW_MARGIN = 24;
|
|
12
14
|
protected readonly registry: AiConfigurationCategoryRegistry;
|
|
13
15
|
protected readonly selectionModel: AiConfigurationSelectionModel;
|
|
14
16
|
protected readonly aiConfigurationService: AiConfigurationService;
|
|
@@ -37,14 +39,18 @@ export declare class AiConfigurationDetailWidget extends ReactWidget {
|
|
|
37
39
|
protected onUpdateRequest(msg: Message): void;
|
|
38
40
|
protected applyScrollAndHighlight(): void;
|
|
39
41
|
/**
|
|
40
|
-
*
|
|
42
|
+
* Scrolls `body`, and nothing else, so that `element` sits at the top of it.
|
|
43
|
+
*
|
|
44
|
+
* Top rather than centered: a deep link lands on a page the user has not seen before, and a row in the
|
|
45
|
+
* middle of it reads as "the page opened somewhere", with the rows above it competing for the attention
|
|
46
|
+
* the flash is meant to direct. {@link TARGET_ROW_MARGIN} keeps the section header above the row visible.
|
|
41
47
|
*
|
|
42
48
|
* Deliberately not `Element.scrollIntoView`: that scrolls *every* scrollable ancestor to satisfy the
|
|
43
49
|
* requested alignment, and `overflow: hidden` does not prevent programmatic scrolling. When a row cannot
|
|
44
|
-
* be
|
|
45
|
-
* widget, which have no scrollbar for the user to scroll back
|
|
50
|
+
* be revealed inside the body alone, it therefore nudges the `overflow: hidden` containers above this
|
|
51
|
+
* widget, which have no scrollbar for the user to scroll back, shifting the whole shell, pushing the menu
|
|
46
52
|
* bar out of view and leaving a gap below the status bar.
|
|
47
53
|
*/
|
|
48
|
-
protected
|
|
54
|
+
protected revealInBody(body: HTMLElement, element: HTMLElement): void;
|
|
49
55
|
}
|
|
50
56
|
//# sourceMappingURL=ai-configuration-detail-widget.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-configuration-detail-widget.d.ts","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-detail-widget.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAO,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAW,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,+BAA+B,EAAE,MAAM,mFAAmF,CAAC;AACpI,OAAO,EAAE,6BAA6B,EAAE,MAAM,iFAAiF,CAAC;AAEhI,OAAO,EACH,uBAAuB,EAAE,4BAA4B,EAAE,oBAAoB,EAAE,wBAAwB,EACxG,MAAM,0EAA0E,CAAC;AAElF,qBACa,2BAA4B,SAAQ,WAAW;IAExD,MAAM,CAAC,QAAQ,CAAC,EAAE,6BAA6B;IAE/C,qGAAqG;IACrG,MAAM,CAAC,QAAQ,CAAC,sBAAsB,MAAM;
|
|
1
|
+
{"version":3,"file":"ai-configuration-detail-widget.d.ts","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-detail-widget.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAO,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAW,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,+BAA+B,EAAE,MAAM,mFAAmF,CAAC;AACpI,OAAO,EAAE,6BAA6B,EAAE,MAAM,iFAAiF,CAAC;AAEhI,OAAO,EACH,uBAAuB,EAAE,4BAA4B,EAAE,oBAAoB,EAAE,wBAAwB,EACxG,MAAM,0EAA0E,CAAC;AAElF,qBACa,2BAA4B,SAAQ,WAAW;IAExD,MAAM,CAAC,QAAQ,CAAC,EAAE,6BAA6B;IAE/C,qGAAqG;IACrG,MAAM,CAAC,QAAQ,CAAC,sBAAsB,MAAM;IAC5C,gGAAgG;IAChG,MAAM,CAAC,QAAQ,CAAC,iBAAiB,MAAM;IAGvC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,+BAA+B,CAAC;IAG7D,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,6BAA6B,CAAC;IAGjE,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAGlE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAExD,mGAAmG;IACnG,SAAS,CAAC,KAAK,EAAE,oBAAoB,CAAU;IAE/C,SAAS,CAAC,WAAW,UAAS;IAC9B,SAAS,CAAC,gBAAgB,CAAC,EAAE,wBAAwB,CAAC,WAAW,CAAC,CAAC;IACnE,6GAA6G;IAC7G,SAAS,CAAC,sBAAsB,SAAK;IAGrC,SAAS,CAAC,IAAI,IAAI,IAAI;IAqBtB,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAOpC,SAAS,CAAC,mBAAmB,IAAI,4BAA4B;IAQ7D,SAAS,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS;IAiBnC;;;OAGG;IACH,SAAS,CAAC,2BAA2B,CAAC,QAAQ,EAAE,uBAAuB,GAAG,IAAI;IAS9E,SAAS,CAAC,iBAAiB,IAAI,KAAK,CAAC,SAAS;IAO9C,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,uBAAuB,EAAE,SAAS,EAAE,wBAAwB,EAAE,GAAG,EAAE,4BAA4B,GAAG,KAAK,CAAC,SAAS;IA6BhJ,yGAAyG;IACzG,SAAS,CAAC,oBAAoB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,KAAK,CAAC,SAAS;IAMlF,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,KAAK,CAAC,SAAS;IAM9E,SAAS,CAAC,iBAAiB,IAAI,KAAK,CAAC,SAAS;cAM3B,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKtD,SAAS,CAAC,uBAAuB,IAAI,IAAI;IAoCzC;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI;CAOxE"}
|
|
@@ -24,6 +24,8 @@ let AiConfigurationDetailWidget = class AiConfigurationDetailWidget extends brow
|
|
|
24
24
|
static { this.ID = 'ai-configuration-detail'; }
|
|
25
25
|
/** Frames a pending search highlight waits for its target row to be mounted before it is dropped. */
|
|
26
26
|
static { this.HIGHLIGHT_RETRY_FRAMES = 10; }
|
|
27
|
+
/** Space kept above a row a deep link scrolled to, so that its section header stays visible. */
|
|
28
|
+
static { this.TARGET_ROW_MARGIN = 24; }
|
|
27
29
|
init() {
|
|
28
30
|
this.id = AiConfigurationDetailWidget_1.ID;
|
|
29
31
|
this.addClass('ai-configuration-detail-widget');
|
|
@@ -144,7 +146,7 @@ let AiConfigurationDetailWidget = class AiConfigurationDetailWidget extends brow
|
|
|
144
146
|
const element = body.querySelector(`[data-ai-config-row-id="${highlight.rowId}"]`);
|
|
145
147
|
if (element) {
|
|
146
148
|
this.pendingHighlight = undefined;
|
|
147
|
-
this.
|
|
149
|
+
this.revealInBody(body, element);
|
|
148
150
|
element.classList.add('ai-configuration-row-flash');
|
|
149
151
|
window.setTimeout(() => element.classList.remove('ai-configuration-row-flash'), 1200);
|
|
150
152
|
}
|
|
@@ -162,21 +164,24 @@ let AiConfigurationDetailWidget = class AiConfigurationDetailWidget extends brow
|
|
|
162
164
|
});
|
|
163
165
|
}
|
|
164
166
|
/**
|
|
165
|
-
*
|
|
167
|
+
* Scrolls `body`, and nothing else, so that `element` sits at the top of it.
|
|
168
|
+
*
|
|
169
|
+
* Top rather than centered: a deep link lands on a page the user has not seen before, and a row in the
|
|
170
|
+
* middle of it reads as "the page opened somewhere", with the rows above it competing for the attention
|
|
171
|
+
* the flash is meant to direct. {@link TARGET_ROW_MARGIN} keeps the section header above the row visible.
|
|
166
172
|
*
|
|
167
173
|
* Deliberately not `Element.scrollIntoView`: that scrolls *every* scrollable ancestor to satisfy the
|
|
168
174
|
* requested alignment, and `overflow: hidden` does not prevent programmatic scrolling. When a row cannot
|
|
169
|
-
* be
|
|
170
|
-
* widget, which have no scrollbar for the user to scroll back
|
|
175
|
+
* be revealed inside the body alone, it therefore nudges the `overflow: hidden` containers above this
|
|
176
|
+
* widget, which have no scrollbar for the user to scroll back, shifting the whole shell, pushing the menu
|
|
171
177
|
* bar out of view and leaving a gap below the status bar.
|
|
172
178
|
*/
|
|
173
|
-
|
|
179
|
+
revealInBody(body, element) {
|
|
174
180
|
const bodyRect = body.getBoundingClientRect();
|
|
175
181
|
const elementRect = element.getBoundingClientRect();
|
|
176
182
|
const current = elementRect.top - bodyRect.top;
|
|
177
|
-
const centered = (body.clientHeight - elementRect.height) / 2;
|
|
178
183
|
// Assigning `scrollTop` clamps to the scrollable range, so short pages simply do not scroll.
|
|
179
|
-
body.scrollTop += current -
|
|
184
|
+
body.scrollTop += current - AiConfigurationDetailWidget_1.TARGET_ROW_MARGIN;
|
|
180
185
|
}
|
|
181
186
|
};
|
|
182
187
|
exports.AiConfigurationDetailWidget = AiConfigurationDetailWidget;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-configuration-detail-widget.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-detail-widget.tsx"],"names":[],"mappings":";;;;;;AAiBA,sCAAqD;AACrD,4DAAiF;AACjF,qDAAwE;AACxE,4CAAwD;AACxD,0IAAoI;AACpI,sIAAgI;AAChI,uIAAwI;AAMjI,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,qBAAW;IAArD;;
|
|
1
|
+
{"version":3,"file":"ai-configuration-detail-widget.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-detail-widget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -78,7 +78,7 @@ describe('AiConfigurationDetailWidget dispatch', () => {
|
|
|
78
78
|
});
|
|
79
79
|
});
|
|
80
80
|
/**
|
|
81
|
-
* Pins the scrolling arithmetic of {@link AiConfigurationDetailWidget#
|
|
81
|
+
* Pins the scrolling arithmetic of {@link AiConfigurationDetailWidget#revealInBody} and, more importantly,
|
|
82
82
|
* that it writes only the scroll container.
|
|
83
83
|
*
|
|
84
84
|
* The predecessor was `element.scrollIntoView({ block: 'center' })`, which also scrolls every scrollable
|
|
@@ -87,7 +87,7 @@ describe('AiConfigurationDetailWidget dispatch', () => {
|
|
|
87
87
|
* `clientHeight` are stubbed; it also does not implement `scrollIntoView`, so reverting to it fails every
|
|
88
88
|
* assertion here (verified by patching the method back).
|
|
89
89
|
*/
|
|
90
|
-
describe('AiConfigurationDetailWidget
|
|
90
|
+
describe('AiConfigurationDetailWidget revealInBody', () => {
|
|
91
91
|
before(() => disableJSDOM = (0, jsdom_1.enableJSDOM)());
|
|
92
92
|
after(() => disableJSDOM());
|
|
93
93
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -111,27 +111,27 @@ describe('AiConfigurationDetailWidget centerInBody', () => {
|
|
|
111
111
|
body.appendChild(element);
|
|
112
112
|
return { ancestor, body, element };
|
|
113
113
|
}
|
|
114
|
-
it('scrolls the container so the row
|
|
114
|
+
it('scrolls the container so the row sits at its top', () => {
|
|
115
115
|
const { body, element } = hierarchy(500);
|
|
116
|
-
// Row sits 400px below the body's top
|
|
117
|
-
widget.
|
|
118
|
-
(0, chai_1.expect)(body.scrollTop).to.equal(
|
|
116
|
+
// Row sits 400px below the body's top, less the margin kept above it.
|
|
117
|
+
widget.revealInBody(body, element);
|
|
118
|
+
(0, chai_1.expect)(body.scrollTop).to.equal(400 - ai_configuration_detail_widget_1.AiConfigurationDetailWidget.TARGET_ROW_MARGIN);
|
|
119
119
|
});
|
|
120
|
-
it('leaves the scroll position alone when the row is already
|
|
121
|
-
const { body, element } = hierarchy(
|
|
122
|
-
widget.
|
|
120
|
+
it('leaves the scroll position alone when the row is already at the top', () => {
|
|
121
|
+
const { body, element } = hierarchy(100 + ai_configuration_detail_widget_1.AiConfigurationDetailWidget.TARGET_ROW_MARGIN);
|
|
122
|
+
widget.revealInBody(body, element);
|
|
123
123
|
(0, chai_1.expect)(body.scrollTop).to.equal(0);
|
|
124
124
|
});
|
|
125
|
-
it('scrolls back up for a row above the
|
|
125
|
+
it('scrolls back up for a row above the current position', () => {
|
|
126
126
|
const { body, element } = hierarchy(120);
|
|
127
|
-
// 20px below the body's top, so it has to scroll up
|
|
127
|
+
// 20px below the body's top, so it has to scroll up to put the row at the margin.
|
|
128
128
|
body.scrollTop = 300;
|
|
129
|
-
widget.
|
|
130
|
-
(0, chai_1.expect)(body.scrollTop).to.equal(
|
|
129
|
+
widget.revealInBody(body, element);
|
|
130
|
+
(0, chai_1.expect)(body.scrollTop).to.equal(300 + 20 - ai_configuration_detail_widget_1.AiConfigurationDetailWidget.TARGET_ROW_MARGIN);
|
|
131
131
|
});
|
|
132
132
|
it('never scrolls an ancestor of the container', () => {
|
|
133
133
|
const { ancestor, body, element } = hierarchy(500);
|
|
134
|
-
widget.
|
|
134
|
+
widget.revealInBody(body, element);
|
|
135
135
|
(0, chai_1.expect)(body.scrollTop, 'the container itself should have scrolled').to.not.equal(0);
|
|
136
136
|
(0, chai_1.expect)(ancestor.scrollTop, 'scrolling an ancestor shifts the whole shell').to.equal(0);
|
|
137
137
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-configuration-detail-widget.spec.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-detail-widget.spec.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ai-configuration-detail-widget.spec.js","sourceRoot":"","sources":["../../../src/browser/ai-configuration/ai-configuration-detail-widget.spec.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;;AAEhF,8DAAiE;AACjE,IAAI,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC;AAEjC,uHAAiH;AACjH,wEAAiC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAE1C,+BAA8B;AAK9B,qFAA+E;AAE/E,YAAY,EAAE,CAAC;AAEf;;;;GAIG;AACH,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;IAElD,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC,CAAC;IAC3C,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;IAE5B,8DAA8D;IAC9D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,4DAA2B,CAAC,SAAS,CAAQ,CAAC;IAC3E,MAAM,GAAG,GAAG,EAAkC,CAAC;IAE/C,SAAS,QAAQ,CAAC,IAAkC,EAAE,QAA6C;QAC/F,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,sBAAsB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IACtF,CAAC;IAED,SAAS,UAAU,CAAC,GAA4B,EAAE,SAAmC;QACjF,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;IAClD,CAAC;IAED,yGAAyG;IACzG,uEAAuE;IACvE,SAAS,SAAS,CAAC,GAA4B,EAAE,SAAmC;QAChF,8DAA8D;QAC9D,OAAQ,UAAU,CAAC,GAAG,EAAE,SAAS,CAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,EAAE,CAAC,qFAAqF,EAAE,GAAG,EAAE;QAC3F,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,EAAE;YAC/B,gBAAgB,EAAE,MAAM,CAAC,EAAE,CAAC,UAAU,MAAM,EAAE;YAC9C,cAAc,EAAE,GAAG,EAAE,CAAC,UAAU;SACnC,CAAC,CAAC;QACH,IAAA,aAAM,EAAC,UAAU,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,GAAG,EAAE;QAC/F,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;QACzE,IAAA,aAAM,EAAC,SAAS,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACvE,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QACnG,IAAA,aAAM,EAAC,SAAS,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACnD,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QAClE,IAAA,aAAM,EAAC,SAAS,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mFAAmF,EAAE,GAAG,EAAE;QACzF,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QACxC,gFAAgF;QAChF,8DAA8D;QAC9D,IAAA,aAAM,EAAE,SAAS,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,CAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACrE,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QAClE,8DAA8D;QAC9D,MAAM,MAAM,GAAI,UAAU,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,CAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC/E,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,kCAAkC,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH;;;;;;;;;GASG;AACH,QAAQ,CAAC,0CAA0C,EAAE,GAAG,EAAE;IAEtD,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC,CAAC;IAC3C,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;IAE5B,8DAA8D;IAC9D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,4DAA2B,CAAC,SAAS,CAAQ,CAAC;IAE3E,4GAA4G;IAC5G,SAAS,UAAU,CAAC,IAAqC,EAAE,YAAqB;QAC5E,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,CAAC,qBAAqB,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAY,CAAC;QAC1F,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,6FAA6F;IAC7F,SAAS,SAAS,CAAC,UAAkB;QACjC,MAAM,QAAQ,GAAG,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG,UAAU,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QAC5D,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1B,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IACvC,CAAC;IAED,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QACxD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QACzC,sEAAsE;QACtE,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACnC,IAAA,aAAM,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,GAAG,4DAA2B,CAAC,iBAAiB,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC3E,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,GAAG,GAAG,4DAA2B,CAAC,iBAAiB,CAAC,CAAC;QACzF,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACnC,IAAA,aAAM,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC5D,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QACzC,kFAAkF;QAClF,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;QACrB,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACnC,IAAA,aAAM,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,GAAG,4DAA2B,CAAC,iBAAiB,CAAC,CAAC;IAC9F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QAClD,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QACnD,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACnC,IAAA,aAAM,EAAC,IAAI,CAAC,SAAS,EAAE,2CAA2C,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACpF,IAAA,aAAM,EAAC,QAAQ,CAAC,SAAS,EAAE,8CAA8C,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Command } from '@theia/core/lib/common/command';
|
|
2
|
+
/** Opens the AI getting started walkthrough, from the chat view, a menu or the command palette. */
|
|
3
|
+
export declare const AI_OPEN_GETTING_STARTED_WALKTHROUGH: Command;
|
|
4
|
+
/**
|
|
5
|
+
* Sets the default chat agent to the agent id passed as the first argument.
|
|
6
|
+
* Lets the walkthrough offer the recommended agents as one click each, rather than sending the user to the
|
|
7
|
+
* preference row to pick one there.
|
|
8
|
+
*/
|
|
9
|
+
export declare const AI_SET_DEFAULT_CHAT_AGENT: Command;
|
|
10
|
+
//# sourceMappingURL=ai-getting-started-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-getting-started-commands.d.ts","sourceRoot":"","sources":["../../src/browser/ai-getting-started-commands.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAEzD,mGAAmG;AACnG,eAAO,MAAM,mCAAmC,SAGA,CAAC;AAEjD;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,SAGA,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2026 EclipseSource GmbH.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.AI_SET_DEFAULT_CHAT_AGENT = exports.AI_OPEN_GETTING_STARTED_WALKTHROUGH = void 0;
|
|
19
|
+
const command_1 = require("@theia/core/lib/common/command");
|
|
20
|
+
/** Opens the AI getting started walkthrough, from the chat view, a menu or the command palette. */
|
|
21
|
+
exports.AI_OPEN_GETTING_STARTED_WALKTHROUGH = command_1.Command.toLocalizedCommand({
|
|
22
|
+
id: 'ai.openGettingStartedWalkthrough',
|
|
23
|
+
label: 'Get Started with AI'
|
|
24
|
+
}, 'theia/ai/ide/openGettingStartedWalkthrough');
|
|
25
|
+
/**
|
|
26
|
+
* Sets the default chat agent to the agent id passed as the first argument.
|
|
27
|
+
* Lets the walkthrough offer the recommended agents as one click each, rather than sending the user to the
|
|
28
|
+
* preference row to pick one there.
|
|
29
|
+
*/
|
|
30
|
+
exports.AI_SET_DEFAULT_CHAT_AGENT = command_1.Command.toLocalizedCommand({
|
|
31
|
+
id: 'ai.setDefaultChatAgent',
|
|
32
|
+
label: 'Set Default Chat Agent'
|
|
33
|
+
}, 'theia/ai/ide/setDefaultChatAgent');
|
|
34
|
+
//# sourceMappingURL=ai-getting-started-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-getting-started-commands.js","sourceRoot":"","sources":["../../src/browser/ai-getting-started-commands.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,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,4DAAyD;AAEzD,mGAAmG;AACtF,QAAA,mCAAmC,GAAG,iBAAO,CAAC,kBAAkB,CAAC;IAC1E,EAAE,EAAE,kCAAkC;IACtC,KAAK,EAAE,qBAAqB;CAC/B,EAAE,4CAA4C,CAAC,CAAC;AAEjD;;;;GAIG;AACU,QAAA,yBAAyB,GAAG,iBAAO,CAAC,kBAAkB,CAAC;IAChE,EAAE,EAAE,wBAAwB;IAC5B,KAAK,EAAE,wBAAwB;CAClC,EAAE,kCAAkC,CAAC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { CommandContribution, CommandRegistry } from '@theia/core/lib/common/command';
|
|
2
|
+
import { PreferenceService } from '@theia/core/lib/common/preferences';
|
|
3
|
+
import { MessageService } from '@theia/core/lib/common/message-service';
|
|
4
|
+
import { ChatAgentService } from '@theia/ai-chat/lib/common';
|
|
5
|
+
/**
|
|
6
|
+
* Opens the AI getting started walkthrough from anywhere - the chat view, the command palette or a menu -
|
|
7
|
+
* without every caller having to know the walkthrough id.
|
|
8
|
+
*/
|
|
9
|
+
export declare class AiGettingStartedContribution implements CommandContribution {
|
|
10
|
+
protected readonly preferenceService: PreferenceService;
|
|
11
|
+
protected readonly messageService: MessageService;
|
|
12
|
+
protected readonly chatAgentService: ChatAgentService;
|
|
13
|
+
registerCommands(commands: CommandRegistry): void;
|
|
14
|
+
/**
|
|
15
|
+
* Writes the default chat agent preference and says so: the walkthrough offers this as a button, and
|
|
16
|
+
* without the message the only feedback would be the step ticking itself off further up the page.
|
|
17
|
+
*/
|
|
18
|
+
protected setDefaultChatAgent(agentId: string): Promise<void>;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=ai-getting-started-contribution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-getting-started-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/ai-getting-started-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtF,OAAO,EAAmB,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAO7D;;;GAGG;AACH,qBACa,4BAA6B,YAAW,mBAAmB;IAGpE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAEtD,gBAAgB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAWjD;;;OAGG;cACa,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAKtE"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2026 EclipseSource GmbH.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.AiGettingStartedContribution = void 0;
|
|
19
|
+
const tslib_1 = require("tslib");
|
|
20
|
+
const preferences_1 = require("@theia/core/lib/common/preferences");
|
|
21
|
+
const message_service_1 = require("@theia/core/lib/common/message-service");
|
|
22
|
+
const nls_1 = require("@theia/core/lib/common/nls");
|
|
23
|
+
const common_1 = require("@theia/ai-chat/lib/common");
|
|
24
|
+
const ai_chat_preferences_1 = require("@theia/ai-chat/lib/common/ai-chat-preferences");
|
|
25
|
+
const walkthrough_commands_1 = require("@theia/getting-started/lib/common/walkthrough-commands");
|
|
26
|
+
const inversify_1 = require("@theia/core/shared/inversify");
|
|
27
|
+
const ai_getting_started_walkthrough_1 = require("./ai-getting-started-walkthrough");
|
|
28
|
+
const ai_getting_started_commands_1 = require("./ai-getting-started-commands");
|
|
29
|
+
/**
|
|
30
|
+
* Opens the AI getting started walkthrough from anywhere - the chat view, the command palette or a menu -
|
|
31
|
+
* without every caller having to know the walkthrough id.
|
|
32
|
+
*/
|
|
33
|
+
let AiGettingStartedContribution = class AiGettingStartedContribution {
|
|
34
|
+
registerCommands(commands) {
|
|
35
|
+
// Deliberately not gated on the AI features being enabled: this is where they get enabled.
|
|
36
|
+
commands.registerCommand(ai_getting_started_commands_1.AI_OPEN_GETTING_STARTED_WALKTHROUGH, {
|
|
37
|
+
execute: () => commands.executeCommand(walkthrough_commands_1.WalkthroughCommands.OPEN_WALKTHROUGH.id, ai_getting_started_walkthrough_1.AI_GETTING_STARTED_WALKTHROUGH_ID)
|
|
38
|
+
});
|
|
39
|
+
commands.registerCommand(ai_getting_started_commands_1.AI_SET_DEFAULT_CHAT_AGENT, {
|
|
40
|
+
execute: (agentId) => this.setDefaultChatAgent(agentId),
|
|
41
|
+
isEnabled: (agentId) => typeof agentId === 'string' && !!agentId
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Writes the default chat agent preference and says so: the walkthrough offers this as a button, and
|
|
46
|
+
* without the message the only feedback would be the step ticking itself off further up the page.
|
|
47
|
+
*/
|
|
48
|
+
async setDefaultChatAgent(agentId) {
|
|
49
|
+
await this.preferenceService.set(ai_chat_preferences_1.DEFAULT_CHAT_AGENT_PREF, agentId, preferences_1.PreferenceScope.User);
|
|
50
|
+
const label = this.chatAgentService.getAgent(agentId)?.name ?? agentId;
|
|
51
|
+
this.messageService.info(nls_1.nls.localize('theia/ai/ide/defaultChatAgentSet', 'The default chat agent is now {0}.', label));
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
exports.AiGettingStartedContribution = AiGettingStartedContribution;
|
|
55
|
+
tslib_1.__decorate([
|
|
56
|
+
(0, inversify_1.inject)(preferences_1.PreferenceService),
|
|
57
|
+
tslib_1.__metadata("design:type", Object)
|
|
58
|
+
], AiGettingStartedContribution.prototype, "preferenceService", void 0);
|
|
59
|
+
tslib_1.__decorate([
|
|
60
|
+
(0, inversify_1.inject)(message_service_1.MessageService),
|
|
61
|
+
tslib_1.__metadata("design:type", message_service_1.MessageService)
|
|
62
|
+
], AiGettingStartedContribution.prototype, "messageService", void 0);
|
|
63
|
+
tslib_1.__decorate([
|
|
64
|
+
(0, inversify_1.inject)(common_1.ChatAgentService),
|
|
65
|
+
tslib_1.__metadata("design:type", Object)
|
|
66
|
+
], AiGettingStartedContribution.prototype, "chatAgentService", void 0);
|
|
67
|
+
exports.AiGettingStartedContribution = AiGettingStartedContribution = tslib_1.__decorate([
|
|
68
|
+
(0, inversify_1.injectable)()
|
|
69
|
+
], AiGettingStartedContribution);
|
|
70
|
+
//# sourceMappingURL=ai-getting-started-contribution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-getting-started-contribution.js","sourceRoot":"","sources":["../../src/browser/ai-getting-started-contribution.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,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;;;;AAGhF,oEAAwF;AACxF,4EAAwE;AACxE,oDAAiD;AACjD,sDAA6D;AAC7D,uFAAwF;AACxF,iGAA6F;AAC7F,4DAAkE;AAClE,qFAAqF;AACrF,+EAA+G;AAE/G;;;GAGG;AAEI,IAAM,4BAA4B,GAAlC,MAAM,4BAA4B;IAWrC,gBAAgB,CAAC,QAAyB;QACtC,2FAA2F;QAC3F,QAAQ,CAAC,eAAe,CAAC,iEAAmC,EAAE;YAC1D,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,0CAAmB,CAAC,gBAAgB,CAAC,EAAE,EAAE,kEAAiC,CAAC;SACrH,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,uDAAyB,EAAE;YAChD,OAAO,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;YAC/D,SAAS,EAAE,CAAC,OAAgB,EAAE,EAAE,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO;SAC5E,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACO,KAAK,CAAC,mBAAmB,CAAC,OAAe;QAC/C,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,6CAAuB,EAAE,OAAO,EAAE,6BAAe,CAAC,IAAI,CAAC,CAAC;QACzF,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,IAAI,OAAO,CAAC;QACvE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAG,CAAC,QAAQ,CAAC,kCAAkC,EAAE,oCAAoC,EAAE,KAAK,CAAC,CAAC,CAAC;IAC5H,CAAC;CACJ,CAAA;AA/BY,oEAA4B;AAGlB;IADlB,IAAA,kBAAM,EAAC,+BAAiB,CAAC;;uEAC8B;AAGrC;IADlB,IAAA,kBAAM,EAAC,gCAAc,CAAC;sCACY,gCAAc;oEAAC;AAG/B;IADlB,IAAA,kBAAM,EAAC,yBAAgB,CAAC;;sEAC6B;uCAT7C,4BAA4B;IADxC,IAAA,sBAAU,GAAE;GACA,4BAA4B,CA+BxC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { ChatAgentRecommendationService } from '@theia/ai-chat/lib/common';
|
|
2
|
+
import { WalkthroughProvider } from '@theia/getting-started/lib/common/walkthrough-provider';
|
|
3
|
+
import { WalkthroughDefinition, WalkthroughStepDefinition } from '@theia/getting-started/lib/common/walkthrough-types';
|
|
4
|
+
/**
|
|
5
|
+
* Id of the walkthrough that guides a new user through setting up and using the AI features.
|
|
6
|
+
* Also the argument of the `walkthrough.open` command.
|
|
7
|
+
*/
|
|
8
|
+
export declare const AI_GETTING_STARTED_WALKTHROUGH_ID = "ai-features.getting-started";
|
|
9
|
+
/**
|
|
10
|
+
* Contributes the "Get started with AI" walkthrough to the welcome page: the single, progress-tracked path
|
|
11
|
+
* from disabled AI features to a first answer in the chat.
|
|
12
|
+
*/
|
|
13
|
+
export declare class AiGettingStartedWalkthroughProvider implements WalkthroughProvider {
|
|
14
|
+
protected readonly recommendationService: ChatAgentRecommendationService;
|
|
15
|
+
protected walkthrough: WalkthroughDefinition | undefined;
|
|
16
|
+
getWalkthroughs(): WalkthroughDefinition[];
|
|
17
|
+
protected get applicationName(): string;
|
|
18
|
+
/** Deep-links into the AI Configuration view, which takes a category id or an `ai-features.*` preference id. */
|
|
19
|
+
protected aiConfiguration(target?: string): string;
|
|
20
|
+
protected createWalkthrough(): WalkthroughDefinition;
|
|
21
|
+
/**
|
|
22
|
+
* The opening slide, carrying what the welcome page used to announce in its AI banner: what the features
|
|
23
|
+
* are, that they are opt-in and may incur costs, and the invitation to the community behind them.
|
|
24
|
+
*/
|
|
25
|
+
protected createAiSupportStep(): WalkthroughStepDefinition;
|
|
26
|
+
protected createEnableStep(): WalkthroughStepDefinition;
|
|
27
|
+
protected createModelStep(): WalkthroughStepDefinition;
|
|
28
|
+
protected createAgentStep(): WalkthroughStepDefinition;
|
|
29
|
+
/**
|
|
30
|
+
* One action per recommended agent, each setting it as the default right away.
|
|
31
|
+
*
|
|
32
|
+
* Every link stands alone in its paragraph, which is what the welcome page renders as a button, so this
|
|
33
|
+
* reads like the buttons the chat welcome used to offer. Products customize the list through
|
|
34
|
+
* {@link ChatAgentRecommendationService}.
|
|
35
|
+
*/
|
|
36
|
+
protected renderAgentChoices(): string;
|
|
37
|
+
protected createFirstQuestionStep(): WalkthroughStepDefinition;
|
|
38
|
+
protected createToolConfirmationStep(): WalkthroughStepDefinition;
|
|
39
|
+
protected createGoFurtherStep(): WalkthroughStepDefinition;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=ai-getting-started-walkthrough.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-getting-started-walkthrough.d.ts","sourceRoot":"","sources":["../../src/browser/ai-getting-started-walkthrough.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAO3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,wDAAwD,CAAC;AAC7F,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,qDAAqD,CAAC;AAYvH;;;GAGG;AACH,eAAO,MAAM,iCAAiC,gCAAgC,CAAC;AAM/E;;;GAGG;AACH,qBACa,mCAAoC,YAAW,mBAAmB;IAG3E,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,8BAA8B,CAAC;IAEzE,SAAS,CAAC,WAAW,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAEzD,eAAe,IAAI,qBAAqB,EAAE;IAM1C,SAAS,KAAK,eAAe,IAAI,MAAM,CAEtC;IAED,gHAAgH;IAChH,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IAIlD,SAAS,CAAC,iBAAiB,IAAI,qBAAqB;IAkBpD;;;OAGG;IACH,SAAS,CAAC,mBAAmB,IAAI,yBAAyB;IAsB1D,SAAS,CAAC,gBAAgB,IAAI,yBAAyB;IAavD,SAAS,CAAC,eAAe,IAAI,yBAAyB;IAsBtD,SAAS,CAAC,eAAe,IAAI,yBAAyB;IAkBtD;;;;;;OAMG;IACH,SAAS,CAAC,kBAAkB,IAAI,MAAM;IAWtC,SAAS,CAAC,uBAAuB,IAAI,yBAAyB;IAkB9D,SAAS,CAAC,0BAA0B,IAAI,yBAAyB;IAkBjE,SAAS,CAAC,mBAAmB,IAAI,yBAAyB;CAuB7D"}
|