0
0
mirror of https://github.com/go-gitea/gitea.git synced 2026-07-02 17:40:29 +02:00

adjustment

This commit is contained in:
Lunny Xiao 2026-02-22 23:15:07 -08:00
parent ac3dc5953f
commit ca6f77ee56
No known key found for this signature in database
GPG Key ID: C3B7C91B632F738A
3 changed files with 17 additions and 32 deletions

View File

@ -233,7 +233,7 @@ func WorkflowsEvents(ctx *context.Context, project *project_model.Project) {
ctx.JSON(http.StatusOK, outputWorkflows)
}
func WorkflowsColumns(ctx *context.Context, project *project_model.Project) {
func WorkflowsOptions(ctx *context.Context, project *project_model.Project) {
columns, err := project.GetColumns(ctx)
if err != nil {
ctx.ServerError("GetProjectColumns", err)
@ -254,10 +254,6 @@ func WorkflowsColumns(ctx *context.Context, project *project_model.Project) {
})
}
ctx.JSON(http.StatusOK, outputColumns)
}
func WorkflowsLabels(ctx *context.Context, project *project_model.Project) {
labels, err := project_service.GetProjectLabels(ctx, project)
if err != nil {
ctx.ServerError("GetProjectLabels", err)
@ -284,7 +280,10 @@ func WorkflowsLabels(ctx *context.Context, project *project_model.Project) {
})
}
ctx.JSON(http.StatusOK, outputLabels)
ctx.JSON(http.StatusOK, map[string]any{
"columns": outputColumns,
"labels": outputLabels,
})
}
func prepareProject(ctx *context.Context) *project_model.Project {
@ -320,12 +319,8 @@ func Workflows(ctx *context.Context) {
WorkflowsEvents(ctx, p)
return
}
if workflowIDStr == "columns" {
WorkflowsColumns(ctx, p)
return
}
if workflowIDStr == "labels" {
WorkflowsLabels(ctx, p)
if workflowIDStr == "options" {
WorkflowsOptions(ctx, p)
return
}

View File

@ -521,8 +521,7 @@ watch(() => store.workflowActions, () => {
onMounted(async () => {
// Load all necessary data
store.workflowEvents = await store.loadEvents();
await store.loadProjectColumns();
await store.loadProjectLabels();
await store.loadProjectOptions();
// Add native event listener to prevent conflicts with Gitea
await nextTick();

View File

@ -71,9 +71,8 @@ type WorkflowStoreState = {
updateDraft(event_id: string, filters: WorkflowFilters, actions: WorkflowActions): void;
clearDraft(event_id: string): void;
loadEvents(): Promise<WorkflowEvent[]>;
loadProjectColumns(): Promise<void>;
loadProjectOptions(): Promise<void>;
loadWorkflowData(event_id: string): Promise<void>;
loadProjectLabels(): Promise<void>;
resetWorkflowData(): void;
saveWorkflow(): Promise<void>;
saveWorkflowStatus(): Promise<void>;
@ -176,13 +175,16 @@ export function createWorkflowStore(props: any): WorkflowStoreState {
return store.workflowEvents;
},
async loadProjectColumns(): Promise<void> {
async loadProjectOptions(): Promise<void> {
try {
const response = await GET(`${props.projectLink}/workflows/columns`);
store.projectColumns = await response.json() as ProjectColumn[];
const response = await GET(`${props.projectLink}/workflows/options`);
const data = await response.json();
store.projectColumns = data.columns as ProjectColumn[];
store.projectLabels = data.labels as ProjectLabel[];
} catch (error) {
console.error('Failed to load project columns:', error);
console.error('Failed to load project columns and labels:', error);
store.projectColumns = [];
store.projectLabels = [];
}
},
@ -190,8 +192,7 @@ export function createWorkflowStore(props: any): WorkflowStoreState {
store.loading = true;
try {
// Load project columns and labels for the dropdowns
await store.loadProjectColumns();
await store.loadProjectLabels();
await store.loadProjectOptions();
const draft = store.getDraft(event_id);
if (draft) {
@ -211,16 +212,6 @@ export function createWorkflowStore(props: any): WorkflowStoreState {
}
},
async loadProjectLabels(): Promise<void> {
try {
const response = await GET(`${props.projectLink}/workflows/labels`);
store.projectLabels = await response.json() as ProjectLabel[];
} catch (error) {
console.error('Failed to load project labels:', error);
store.projectLabels = [];
}
},
resetWorkflowData(): void {
store.workflowFilters = createDefaultFilters();
store.workflowActions = createDefaultActions();