feat(integrations): add labels integration and expose shared IntegrationApi
Add a new labels integration (src-tauri/src/integrations/labels.rs) that implements listing, reading and updating issue labels for multiple providers (GitHub, Gitea, GitLab and Azure DevOps). The new module provides Tauri commands: - list_integration_labels - get_integration_issue_labels - set_integration_issue_labels Refactor assignees integration to make core HTTP helpers reusable: - Rename AssignmentApi -> IntegrationApi and make its fields/methods pub(super). - Make helper functions api_url, repository_parts and target_url pub(super) so labels.rs can construct and call provider endpoints. - Adjust wording of a few error messages (e.g. "Assignment request..." -> "Integration request...") and genericize some page/result error text. Export the new labels module from integrations.rs and relax test helper visibility (pub(crate)) so the labels tests can reuse the existing fixture utilities. This commit introduces provider-specific parsing and payload logic for labels and reuses the shared IntegrationApi to perform authenticated requests.
This commit is contained in:
@@ -38,6 +38,7 @@ use integrations::{
|
||||
create_integration_review_request, list_integration_repository_branches,
|
||||
add_integration_review_comment, get_integration_review_details, list_integration_repositories, list_integration_review_requests, open_in_browser,
|
||||
list_integration_assignees, get_integration_assignees, set_integration_assignees,
|
||||
list_integration_labels, get_integration_issue_labels, set_integration_issue_labels,
|
||||
create_integration_issue, list_azure_issue_projects, list_azure_issue_types,
|
||||
run_integration_review_action, get_integration_review_merge_options, list_integration_issues, get_integration_board, list_integration_boards, move_integration_board_card, list_integration_issue_comments, add_integration_issue_comment, close_integration_issue, list_azure_issue_states, set_azure_issue_state,
|
||||
};
|
||||
@@ -457,6 +458,9 @@ async fn main() {
|
||||
move_integration_board_card,
|
||||
list_integration_issue_comments,
|
||||
add_integration_issue_comment,
|
||||
list_integration_labels,
|
||||
get_integration_issue_labels,
|
||||
set_integration_issue_labels,
|
||||
list_integration_assignees,
|
||||
get_integration_assignees,
|
||||
set_integration_assignees,
|
||||
|
||||
Reference in New Issue
Block a user