Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/ci/catalog/components/list/catalog_list_skeleton_loader.vue')
-rw-r--r--app/assets/javascripts/ci/catalog/components/list/catalog_list_skeleton_loader.vue57
1 files changed, 57 insertions, 0 deletions
diff --git a/app/assets/javascripts/ci/catalog/components/list/catalog_list_skeleton_loader.vue b/app/assets/javascripts/ci/catalog/components/list/catalog_list_skeleton_loader.vue
new file mode 100644
index 00000000000..3722b8e6c59
--- /dev/null
+++ b/app/assets/javascripts/ci/catalog/components/list/catalog_list_skeleton_loader.vue
@@ -0,0 +1,57 @@
+<script>
+import { GlSkeletonLoader } from '@gitlab/ui';
+
+export default {
+ components: {
+ GlSkeletonLoader,
+ },
+ data() {
+ return {
+ coordinates: {
+ statsX: 0,
+ releaseDateX: 0,
+ },
+ width: 0,
+ };
+ },
+ mounted() {
+ this.setSvgSize();
+ },
+ methods: {
+ setSvgSize() {
+ this.width = this.$el.offsetWidth;
+ this.coordinates.releaseDateX = this.width - 200;
+ this.coordinates.statsX = this.width - 90;
+ },
+ },
+ skeletonLoadItems: new Array(5),
+};
+</script>
+<template>
+ <div class="gl-w-full">
+ <gl-skeleton-loader
+ v-for="(_, index) in $options.skeletonLoadItems"
+ :key="index"
+ :height="60"
+ :width="width"
+ >
+ <!-- Catalog project avatar -->
+ <rect x="0" y="0" width="48" height="48" rx="4" ry="4" />
+ <!-- namespace path -->
+ <rect x="60" y="4" width="400" height="16" rx="2" ry="2" />
+ <!-- Project description -->
+ <rect x="60" y="30" width="500" height="12" rx="2" ry="2" />
+
+ <!-- Release date line -->
+ <rect :x="coordinates.releaseDateX" y="30" width="200" height="12" rx="2" ry="2" />
+
+ <!-- Favorites -->
+ <rect :x="coordinates.statsX" y="4" width="16" height="16" rx="2" ry="2" />
+ <rect :x="coordinates.statsX + 18" y="7" width="18" height="10" rx="2" ry="2" />
+
+ <!-- Forks -->
+ <rect :x="coordinates.statsX + 50" y="4" width="16" height="16" rx="2" ry="2" />
+ <rect :x="coordinates.statsX + 68" y="7" width="18" height="10" rx="2" ry="2" />
+ </gl-skeleton-loader>
+ </div>
+</template>