feat(titles): complete title selection workflow
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Failing after 2030h35m46s
Deploy / Production Browser E2E (push) Failing after 2030h26m37s
Deploy / Deploy Production (push) Failing after 2030h26m39s

This commit is contained in:
Xiaoxia AI
2026-06-24 00:55:00 +08:00
parent bad34ad001
commit 6f1a71e8bd
14 changed files with 201 additions and 19 deletions
+3 -2
View File
@@ -6,6 +6,7 @@ export interface ProjectTitleItem {
project_id: string;
text: string;
category: 'default' | 'marketing' | 'tutorial' | 'story' | 'promo';
favorite: boolean;
usage_count: number;
is_active: boolean;
created_at: string;
@@ -17,12 +18,12 @@ export const getProjectTitles = async (projectId: string, activeOnly = false): P
return response.data.items;
};
export const createProjectTitle = async (projectId: string, data: { workspace_id: string; text: string; category?: ProjectTitleItem['category'] }): Promise<ProjectTitleItem> => {
export const createProjectTitle = async (projectId: string, data: { workspace_id: string; text: string; category?: ProjectTitleItem['category']; favorite?: boolean }): Promise<ProjectTitleItem> => {
const response = await apiClient.post(`/projects/${projectId}/titles`, data);
return response.data;
};
export const updateProjectTitle = async (titleId: string, data: { text?: string; category?: ProjectTitleItem['category']; is_active?: boolean }): Promise<ProjectTitleItem> => {
export const updateProjectTitle = async (titleId: string, data: { text?: string; category?: ProjectTitleItem['category']; favorite?: boolean; is_active?: boolean }): Promise<ProjectTitleItem> => {
const response = await apiClient.patch(`/project-titles/${titleId}`, data);
return response.data;
};