diff options
-rw-r--r-- | src-tauri/bindings/PullsApiResponseElement.ts | 2 | ||||
-rw-r--r-- | src-tauri/src/github/pull_requests.rs | 10 | ||||
-rw-r--r-- | src-vue/src/components/PullRequestsSelector.vue | 2 |
3 files changed, 13 insertions, 1 deletions
diff --git a/src-tauri/bindings/PullsApiResponseElement.ts b/src-tauri/bindings/PullsApiResponseElement.ts index 489039e3..2db93fe2 100644 --- a/src-tauri/bindings/PullsApiResponseElement.ts +++ b/src-tauri/bindings/PullsApiResponseElement.ts @@ -1,4 +1,4 @@ // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. import type { CommitHead } from "./CommitHead"; -export type PullsApiResponseElement = { number: bigint, title: string, url: string, head: CommitHead, html_url: string, };
\ No newline at end of file +export type PullsApiResponseElement = { number: bigint, title: string, url: string, head: CommitHead, html_url: string, labels: Array<string>, };
\ No newline at end of file diff --git a/src-tauri/src/github/pull_requests.rs b/src-tauri/src/github/pull_requests.rs index 7e400c1a..de733feb 100644 --- a/src-tauri/src/github/pull_requests.rs +++ b/src-tauri/src/github/pull_requests.rs @@ -32,6 +32,7 @@ pub struct PullsApiResponseElement { url: String, head: CommitHead, html_url: String, + labels: Vec<String>, } // GitHub API response JSON elements as structs @@ -102,6 +103,14 @@ pub async fn get_pull_requests( repo, }; + // Get labels and their names and put the into vector + let label_names: Vec<String> = item + .labels + .unwrap_or_else(Vec::new) + .into_iter() + .map(|label| label.name) + .collect(); + // TODO there's probably a way to automatically serialize into the struct but I don't know yet how to let elem = PullsApiResponseElement { number: item.number, @@ -112,6 +121,7 @@ pub async fn get_pull_requests( .html_url .ok_or(anyhow!("html_url not found"))? .to_string(), + labels: label_names, }; all_pull_requests.push(elem); diff --git a/src-vue/src/components/PullRequestsSelector.vue b/src-vue/src/components/PullRequestsSelector.vue index fe103edc..bd17ed14 100644 --- a/src-vue/src/components/PullRequestsSelector.vue +++ b/src-vue/src/components/PullRequestsSelector.vue @@ -28,6 +28,7 @@ <a target="_blank" :href="pull_request.html_url"> {{ pull_request.number }}: {{ pull_request.title }} </a> + <el-tag v-for="label in pull_request.labels">{{ label }}</el-tag> </el-card> <div v-else class="no_matching_pr"> No matching PR found. @@ -67,6 +68,7 @@ <a target="_blank" :href="pull_request.html_url"> {{ pull_request.number }}: {{ pull_request.title }} </a> + <el-tag v-for="label in pull_request.labels">{{ label }}</el-tag> </el-card> <div v-else class="no_matching_pr"> No matching PR found. |