diff --git a/app/assets/javascripts/sitewide/repository_row_card.js b/app/assets/javascripts/sitewide/repository_row_card.js
index d575a8814..18fa9cc9d 100644
--- a/app/assets/javascripts/sitewide/repository_row_card.js
+++ b/app/assets/javascripts/sitewide/repository_row_card.js
@@ -104,4 +104,8 @@
}
}
});
+
+ $(document).on('turbolinks:load', () => {
+ $('#itemLandingPagelink').trigger('click');
+ });
}());
diff --git a/app/controllers/repositories_controller.rb b/app/controllers/repositories_controller.rb
index 2f28cb65e..113f5e80d 100644
--- a/app/controllers/repositories_controller.rb
+++ b/app/controllers/repositories_controller.rb
@@ -25,6 +25,7 @@ class RepositoriesController < ApplicationController
before_action :check_create_permissions, only: %i(create_modal create)
before_action :check_copy_permissions, only: %i(copy_modal copy)
before_action :set_inline_name_editing, only: %i(show)
+ before_action :load_repository_row, only: %i(show)
before_action :set_breadcrumbs_items, only: %i(index show)
layout 'fluid'
@@ -470,6 +471,14 @@ class RepositoriesController < ApplicationController
@repositories = current_team.repositories.archived.where(id: params[:repository_ids])
end
+ def load_repository_row
+ @repository_row = nil
+ @repository_row_landing_page = true if params[:landing_page].present?
+ return if params[:row_id].blank?
+
+ @repository_row = @repository.repository_rows.find_by(id: params[:row_id])
+ end
+
def set_inline_name_editing
return unless can_manage_repository?(@repository)
diff --git a/app/javascript/packs/vue/repository_item_error_sidebar.js b/app/javascript/packs/vue/repository_item_error_sidebar.js
new file mode 100644
index 000000000..ebe9a4c41
--- /dev/null
+++ b/app/javascript/packs/vue/repository_item_error_sidebar.js
@@ -0,0 +1,12 @@
+/* global */
+
+import PerfectScrollbar from 'vue3-perfect-scrollbar';
+import { createApp } from 'vue/dist/vue.esm-bundler.js';
+import { mountWithTurbolinks } from './helpers/turbolinks.js';
+import RepositoryItemErrorSidebar from '../../vue/repository_item_sidebar/RepositoryItemErrorSidebar.vue';
+
+const app = createApp({});
+app.component('RepositoryItemErrorSidebar', RepositoryItemErrorSidebar);
+app.use(PerfectScrollbar);
+app.config.globalProperties.i18n = window.I18n;
+mountWithTurbolinks(app, '#repositoryItemErrorSidebar');
diff --git a/app/javascript/vue/repository_item_sidebar/RepositoryItemErrorSidebar.vue b/app/javascript/vue/repository_item_sidebar/RepositoryItemErrorSidebar.vue
new file mode 100644
index 000000000..989b08331
--- /dev/null
+++ b/app/javascript/vue/repository_item_sidebar/RepositoryItemErrorSidebar.vue
@@ -0,0 +1,51 @@
+
+