Fix chat interface - restore continuous conversation flow

🎯 Major improvements to MissionControl component:
- Always keep input field visible and functional after AI responses
- Auto-clear input after submitting questions for better UX
- Add dynamic visual indicators (first question vs follow-up)
- Improve response layout with clear separation and hints
- Enable proper chat-like experience for continuous learning

🌟 Additional enhancements:
- Better language-specific messaging throughout interface
- Clearer visual hierarchy between input and response areas
- Intuitive flow that guides users to ask follow-up questions
- Maintains responsive design and accessibility

🔧 Technical changes:
- Enhanced MissionControl state management
- Improved component layout and styling
- Better TypeScript integration across components
- Updated tsconfig for stricter type checking
This commit is contained in:
rwiegand
2025-07-14 12:39:05 +02:00
parent b31492a354
commit f893530471
1798 changed files with 25329 additions and 92638 deletions

View File

@@ -1,8 +1,8 @@
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
import { APIResource } from "../../core/resource.mjs";
import { CursorPage } from "../../core/pagination.mjs";
import { buildHeaders } from "../../internal/headers.mjs";
import { path } from "../../internal/utils/path.mjs";
import { APIResource } from "../../resource.mjs";
import { isRequestOptions } from "../../core.mjs";
import { CursorPage } from "../../pagination.mjs";
import { AssistantStream } from "../../lib/AssistantStream.mjs";
export class Assistants extends APIResource {
/**
* Create an assistant with a model and instructions.
@@ -18,7 +18,7 @@ export class Assistants extends APIResource {
return this._client.post('/assistants', {
body,
...options,
headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
headers: { 'OpenAI-Beta': 'assistants=v2', ...options?.headers },
});
}
/**
@@ -31,10 +31,10 @@ export class Assistants extends APIResource {
* );
* ```
*/
retrieve(assistantID, options) {
return this._client.get(path `/assistants/${assistantID}`, {
retrieve(assistantId, options) {
return this._client.get(`/assistants/${assistantId}`, {
...options,
headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
headers: { 'OpenAI-Beta': 'assistants=v2', ...options?.headers },
});
}
/**
@@ -47,29 +47,21 @@ export class Assistants extends APIResource {
* );
* ```
*/
update(assistantID, body, options) {
return this._client.post(path `/assistants/${assistantID}`, {
update(assistantId, body, options) {
return this._client.post(`/assistants/${assistantId}`, {
body,
...options,
headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
headers: { 'OpenAI-Beta': 'assistants=v2', ...options?.headers },
});
}
/**
* Returns a list of assistants.
*
* @example
* ```ts
* // Automatically fetches more pages as needed.
* for await (const assistant of client.beta.assistants.list()) {
* // ...
* }
* ```
*/
list(query = {}, options) {
return this._client.getAPIList('/assistants', (CursorPage), {
if (isRequestOptions(query)) {
return this.list({}, query);
}
return this._client.getAPIList('/assistants', AssistantsPage, {
query,
...options,
headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
headers: { 'OpenAI-Beta': 'assistants=v2', ...options?.headers },
});
}
/**
@@ -77,15 +69,19 @@ export class Assistants extends APIResource {
*
* @example
* ```ts
* const assistantDeleted =
* await client.beta.assistants.delete('assistant_id');
* const assistantDeleted = await client.beta.assistants.del(
* 'assistant_id',
* );
* ```
*/
delete(assistantID, options) {
return this._client.delete(path `/assistants/${assistantID}`, {
del(assistantId, options) {
return this._client.delete(`/assistants/${assistantId}`, {
...options,
headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
headers: { 'OpenAI-Beta': 'assistants=v2', ...options?.headers },
});
}
}
export class AssistantsPage extends CursorPage {
}
Assistants.AssistantsPage = AssistantsPage;
//# sourceMappingURL=assistants.mjs.map