diff --git a/web/src/assets/locales/en.json b/web/src/assets/locales/en.json
index eabd2efa8..5d87b0311 100644
--- a/web/src/assets/locales/en.json
+++ b/web/src/assets/locales/en.json
@@ -15,6 +15,7 @@
"unknown_error": "An unknown error occurred",
"documentation_for": "Documentation for \"{topic}\"",
"pipeline_feed": "Pipeline feed",
+ "empty_list": "No {entity} found!",
"not_found": {
"not_found": "Whoa 404, either we broke something or you had a typing mishap :-/",
"back_home": "Back to home"
diff --git a/web/src/components/atomic/Icon.vue b/web/src/components/atomic/Icon.vue
index 70c22c84d..45a2bce4a 100644
--- a/web/src/components/atomic/Icon.vue
+++ b/web/src/components/atomic/Icon.vue
@@ -51,6 +51,7 @@
+
@@ -105,6 +106,7 @@ export type IconNames =
| 'pause'
| 'warning'
| 'attention'
+ | 'spinner'
| 'error';
defineProps<{
diff --git a/web/src/views/repo/RepoBranches.vue b/web/src/views/repo/RepoBranches.vue
index f8a6678fc..20978694d 100644
--- a/web/src/views/repo/RepoBranches.vue
+++ b/web/src/views/repo/RepoBranches.vue
@@ -1,14 +1,19 @@
-
-
- {{ branch }}
-
-
+
+
+
+ {{ branch }}
+
+
+
+
+
+
@@ -36,7 +41,7 @@ async function loadBranches(page: number): Promise
{
return apiClient.getRepoBranches(repo.value.id, page);
}
-const { resetPage, data: branches } = usePagination(loadBranches);
+const { resetPage, data: branches, loading } = usePagination(loadBranches);
const branchesWithDefaultBranchFirst = computed(() =>
branches.value.toSorted((a, b) => {
diff --git a/web/src/views/repo/RepoPullRequests.vue b/web/src/views/repo/RepoPullRequests.vue
index 14c9a5793..d6c7407bc 100644
--- a/web/src/views/repo/RepoPullRequests.vue
+++ b/web/src/views/repo/RepoPullRequests.vue
@@ -1,24 +1,34 @@
-
-
- #{{ pullRequest.index }}
- -
- {{
- pullRequest.title
- }}
-
+
+
+
+ #{{ pullRequest.index }}
+ -
+ {{
+ pullRequest.title
+ }}
+
+
+
+
+
+
+ {{ $t('empty_list', { entity: $t('repo.pull_requests') }) }}
+