🎯 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
51 lines
1.8 KiB
JavaScript
51 lines
1.8 KiB
JavaScript
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
import { APIResource } from "../../../resource.mjs";
|
|
import { isRequestOptions } from "../../../core.mjs";
|
|
import * as Core from "../../../core.mjs";
|
|
import * as ContentAPI from "./content.mjs";
|
|
import { Content } from "./content.mjs";
|
|
import { CursorPage } from "../../../pagination.mjs";
|
|
export class Files extends APIResource {
|
|
constructor() {
|
|
super(...arguments);
|
|
this.content = new ContentAPI.Content(this._client);
|
|
}
|
|
/**
|
|
* Create a Container File
|
|
*
|
|
* You can send either a multipart/form-data request with the raw file content, or
|
|
* a JSON request with a file ID.
|
|
*/
|
|
create(containerId, body, options) {
|
|
return this._client.post(`/containers/${containerId}/files`, Core.multipartFormRequestOptions({ body, ...options }));
|
|
}
|
|
/**
|
|
* Retrieve Container File
|
|
*/
|
|
retrieve(containerId, fileId, options) {
|
|
return this._client.get(`/containers/${containerId}/files/${fileId}`, options);
|
|
}
|
|
list(containerId, query = {}, options) {
|
|
if (isRequestOptions(query)) {
|
|
return this.list(containerId, {}, query);
|
|
}
|
|
return this._client.getAPIList(`/containers/${containerId}/files`, FileListResponsesPage, {
|
|
query,
|
|
...options,
|
|
});
|
|
}
|
|
/**
|
|
* Delete Container File
|
|
*/
|
|
del(containerId, fileId, options) {
|
|
return this._client.delete(`/containers/${containerId}/files/${fileId}`, {
|
|
...options,
|
|
headers: { Accept: '*/*', ...options?.headers },
|
|
});
|
|
}
|
|
}
|
|
export class FileListResponsesPage extends CursorPage {
|
|
}
|
|
Files.FileListResponsesPage = FileListResponsesPage;
|
|
Files.Content = Content;
|
|
//# sourceMappingURL=files.mjs.map
|