Skip to content

Commit 4d3deb2

Browse files
authored
Merge pull request #831 from Adez017/Workflow
Added a loading animation to the leaderboard
2 parents 133f7de + 60e7fe0 commit 4d3deb2

File tree

1 file changed

+154
-0
lines changed

1 file changed

+154
-0
lines changed

src/components/dashboard/LeaderBoard/leaderboard.css

Lines changed: 154 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -860,6 +860,160 @@
860860

861861
}
862862

863+
/* Skeleton Loader Styles */
864+
.skeleton-loader {
865+
padding: 24px;
866+
border-radius: 12px;
867+
margin-top: 24px;
868+
}
869+
870+
.skeleton-loader.light {
871+
background: #fff;
872+
border: 1px solid #e2e8f0;
873+
}
874+
875+
.skeleton-loader.dark {
876+
background: #2b303b;
877+
border: 1px solid #444;
878+
}
879+
880+
.skeleton-header {
881+
display: grid;
882+
grid-template-columns: 0.5fr 0.5fr 2fr 1fr 1fr;
883+
gap: 16px;
884+
padding: 16px 24px;
885+
font-weight: 600;
886+
font-size: 14px;
887+
border-bottom: 2px solid;
888+
margin-bottom: 16px;
889+
}
890+
891+
.skeleton-loader.light .skeleton-header {
892+
color: #666;
893+
border-color: #e2e8f0;
894+
}
895+
896+
.skeleton-loader.dark .skeleton-header {
897+
color: #b3b3b3;
898+
border-color: #444;
899+
}
900+
901+
.skeleton-row {
902+
display: grid;
903+
grid-template-columns: 0.5fr 0.5fr 2fr 1fr 1fr;
904+
align-items: center;
905+
gap: 16px;
906+
padding: 16px 24px;
907+
margin-bottom: 12px;
908+
border-radius: 8px;
909+
}
910+
911+
.skeleton-loader.light .skeleton-row {
912+
background: #f8fafc;
913+
}
914+
915+
.skeleton-loader.dark .skeleton-row {
916+
background: #323742;
917+
}
918+
919+
.skeleton-avatar {
920+
width: 32px;
921+
height: 32px;
922+
border-radius: 50%;
923+
background: linear-gradient(
924+
90deg,
925+
rgba(0, 0, 0, 0.06) 25%,
926+
rgba(0, 0, 0, 0.12) 50%,
927+
rgba(0, 0, 0, 0.06) 75%
928+
);
929+
background-size: 200% 100%;
930+
animation: skeleton-shimmer 2s infinite;
931+
}
932+
933+
.skeleton-loader.dark .skeleton-avatar {
934+
background: linear-gradient(
935+
90deg,
936+
rgba(255, 255, 255, 0.05) 25%,
937+
rgba(255, 255, 255, 0.1) 50%,
938+
rgba(255, 255, 255, 0.05) 75%
939+
);
940+
background-size: 200% 100%;
941+
}
942+
943+
.skeleton-avatar.large {
944+
width: 40px;
945+
height: 40px;
946+
}
947+
948+
.skeleton-info {
949+
display: flex;
950+
flex-direction: column;
951+
gap: 8px;
952+
width: 100%;
953+
}
954+
955+
.skeleton-bar {
956+
height: 16px;
957+
width: 60%;
958+
border-radius: 4px;
959+
background: linear-gradient(
960+
90deg,
961+
rgba(0, 0, 0, 0.06) 25%,
962+
rgba(0, 0, 0, 0.12) 50%,
963+
rgba(0, 0, 0, 0.06) 75%
964+
);
965+
background-size: 200% 100%;
966+
animation: skeleton-shimmer 2s infinite;
967+
}
968+
969+
.skeleton-loader.dark .skeleton-bar {
970+
background: linear-gradient(
971+
90deg,
972+
rgba(255, 255, 255, 0.05) 25%,
973+
rgba(255, 255, 255, 0.1) 50%,
974+
rgba(255, 255, 255, 0.05) 75%
975+
);
976+
background-size: 200% 100%;
977+
}
978+
979+
.skeleton-badges {
980+
display: flex;
981+
gap: 8px;
982+
}
983+
984+
.skeleton-badge {
985+
height: 20px;
986+
width: 60px;
987+
border-radius: 12px;
988+
background: linear-gradient(
989+
90deg,
990+
rgba(0, 0, 0, 0.06) 25%,
991+
rgba(0, 0, 0, 0.12) 50%,
992+
rgba(0, 0, 0, 0.06) 75%
993+
);
994+
background-size: 200% 100%;
995+
animation: skeleton-shimmer 2s infinite;
996+
}
997+
998+
.skeleton-loader.dark .skeleton-badge {
999+
background: linear-gradient(
1000+
90deg,
1001+
rgba(255, 255, 255, 0.05) 25%,
1002+
rgba(255, 255, 255, 0.1) 50%,
1003+
rgba(255, 255, 255, 0.05) 75%
1004+
);
1005+
background-size: 200% 100%;
1006+
}
1007+
1008+
@keyframes skeleton-shimmer {
1009+
0% {
1010+
background-position: -200% 0;
1011+
}
1012+
100% {
1013+
background-position: 200% 0;
1014+
}
1015+
}
1016+
8631017
/* PR List Modal Styles */
8641018
.pr-modal-backdrop {
8651019
position: fixed;

0 commit comments

Comments
 (0)