feat(integrations): add multi-provider board and issue integrations
Add backend integration modules to discover, read, and modify provider-hosted boards, issues, and comments across multiple providers. Expose Tauri commands for board discovery, listing, and card moves, and implement safe issue actions and comment APIs. Wire new Svelte UI components to render boards, issue centers, comments, labels, and assignees, and add sanitized markdown rendering. - Add board discovery, board reading, and card-move APIs - Add Svelte components and styles for integrated board UI - Use marked + DOMPurify for safe markdown rendering
This commit is contained in:
@@ -448,3 +448,46 @@ export interface StoredCredential {
|
||||
password: string;
|
||||
mode?: "credentials" | "token";
|
||||
}
|
||||
|
||||
export interface IntegrationIssue {
|
||||
id: string;
|
||||
number: number;
|
||||
title: string;
|
||||
description: string;
|
||||
descriptionHtml: boolean;
|
||||
repositoryName: string;
|
||||
author: string;
|
||||
state: string;
|
||||
labels: string[];
|
||||
assignees: string[];
|
||||
webUrl: string;
|
||||
updatedAt: string;
|
||||
}
|
||||
|
||||
export interface IntegrationIssuePage {
|
||||
issues: IntegrationIssue[];
|
||||
nextCursor: string | null;
|
||||
}
|
||||
|
||||
export interface IntegrationBoardCard {
|
||||
id: string;
|
||||
title: string;
|
||||
number: number;
|
||||
webUrl: string;
|
||||
repository: string;
|
||||
description: string;
|
||||
labels: string[];
|
||||
assignees: string[];
|
||||
lane: string;
|
||||
}
|
||||
|
||||
export interface IntegrationBoard {
|
||||
title: string;
|
||||
webUrl: string;
|
||||
notice: string;
|
||||
columns: Array<{ id: string; title: string; limit: number; moveTarget?: Record<string, unknown> | null; cards: IntegrationBoardCard[] }>;
|
||||
}
|
||||
|
||||
export interface IntegrationBoardReference { title: string; webUrl: string; scope: string }
|
||||
|
||||
export interface IssueComment { id: string; author: string; body: string; createdAt: string; bodyHtml: boolean }
|
||||
|
||||
Reference in New Issue
Block a user