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,7 @@
// 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";
/**
* @deprecated The Assistants API is deprecated in favor of the Responses API
*/
@@ -12,11 +11,11 @@ export class Messages extends APIResource {
*
* @deprecated The Assistants API is deprecated in favor of the Responses API
*/
create(threadID, body, options) {
return this._client.post(path `/threads/${threadID}/messages`, {
create(threadId, body, options) {
return this._client.post(`/threads/${threadId}/messages`, {
body,
...options,
headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
headers: { 'OpenAI-Beta': 'assistants=v2', ...options?.headers },
});
}
/**
@@ -24,11 +23,10 @@ export class Messages extends APIResource {
*
* @deprecated The Assistants API is deprecated in favor of the Responses API
*/
retrieve(messageID, params, options) {
const { thread_id } = params;
return this._client.get(path `/threads/${thread_id}/messages/${messageID}`, {
retrieve(threadId, messageId, options) {
return this._client.get(`/threads/${threadId}/messages/${messageId}`, {
...options,
headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
headers: { 'OpenAI-Beta': 'assistants=v2', ...options?.headers },
});
}
/**
@@ -36,24 +34,21 @@ export class Messages extends APIResource {
*
* @deprecated The Assistants API is deprecated in favor of the Responses API
*/
update(messageID, params, options) {
const { thread_id, ...body } = params;
return this._client.post(path `/threads/${thread_id}/messages/${messageID}`, {
update(threadId, messageId, body, options) {
return this._client.post(`/threads/${threadId}/messages/${messageId}`, {
body,
...options,
headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
headers: { 'OpenAI-Beta': 'assistants=v2', ...options?.headers },
});
}
/**
* Returns a list of messages for a given thread.
*
* @deprecated The Assistants API is deprecated in favor of the Responses API
*/
list(threadID, query = {}, options) {
return this._client.getAPIList(path `/threads/${threadID}/messages`, (CursorPage), {
list(threadId, query = {}, options) {
if (isRequestOptions(query)) {
return this.list(threadId, {}, query);
}
return this._client.getAPIList(`/threads/${threadId}/messages`, MessagesPage, {
query,
...options,
headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
headers: { 'OpenAI-Beta': 'assistants=v2', ...options?.headers },
});
}
/**
@@ -61,12 +56,14 @@ export class Messages extends APIResource {
*
* @deprecated The Assistants API is deprecated in favor of the Responses API
*/
delete(messageID, params, options) {
const { thread_id } = params;
return this._client.delete(path `/threads/${thread_id}/messages/${messageID}`, {
del(threadId, messageId, options) {
return this._client.delete(`/threads/${threadId}/messages/${messageId}`, {
...options,
headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
headers: { 'OpenAI-Beta': 'assistants=v2', ...options?.headers },
});
}
}
export class MessagesPage extends CursorPage {
}
Messages.MessagesPage = MessagesPage;
//# sourceMappingURL=messages.mjs.map