aboutsummaryrefslogtreecommitdiff
path: root/src/lib/Loading/Ellipsis.svelte
diff options
context:
space:
mode:
authorFuwn <[email protected]>2024-01-30 20:53:24 -0800
committerFuwn <[email protected]>2024-01-30 20:53:24 -0800
commit0d3553c22391afcad2770fdab088b42a3aae97dc (patch)
tree3987da52c8e7f352312190996c9c54ca1c207492 /src/lib/Loading/Ellipsis.svelte
parentfix(birthdays): anisearch if browser (diff)
downloaddue.moe-0d3553c22391afcad2770fdab088b42a3aae97dc.tar.xz
due.moe-0d3553c22391afcad2770fdab088b42a3aae97dc.zip
feat(badges): cool loading message
Diffstat (limited to 'src/lib/Loading/Ellipsis.svelte')
-rw-r--r--src/lib/Loading/Ellipsis.svelte72
1 files changed, 72 insertions, 0 deletions
diff --git a/src/lib/Loading/Ellipsis.svelte b/src/lib/Loading/Ellipsis.svelte
new file mode 100644
index 00000000..1dbe3b9f
--- /dev/null
+++ b/src/lib/Loading/Ellipsis.svelte
@@ -0,0 +1,72 @@
+<div class="ellipsis">
+ <div />
+ <div />
+ <div />
+ <div />
+</div>
+
+<style>
+ .ellipsis {
+ display: inline-block;
+ position: relative;
+ width: 80px;
+ height: 80px;
+ }
+
+ .ellipsis div {
+ position: absolute;
+ top: 33px;
+ width: 13px;
+ height: 13px;
+ border-radius: 50%;
+ background: #fff;
+ animation-timing-function: cubic-bezier(0, 1, 1, 0);
+ }
+
+ .ellipsis div:nth-child(1) {
+ left: 8px;
+ animation: ellipsis-1 0.6s infinite;
+ }
+
+ .ellipsis div:nth-child(2) {
+ left: 8px;
+ animation: ellipsis-2 0.6s infinite;
+ }
+
+ .ellipsis div:nth-child(3) {
+ left: 32px;
+ animation: ellipsis-2 0.6s infinite;
+ }
+
+ .ellipsis div:nth-child(4) {
+ left: 56px;
+ animation: ellipsis-3 0.6s infinite;
+ }
+
+ @keyframes ellipsis-1 {
+ 0% {
+ transform: scale(0);
+ }
+ 100% {
+ transform: scale(1);
+ }
+ }
+
+ @keyframes ellipsis-2 {
+ 0% {
+ transform: translate(0, 0);
+ }
+ 100% {
+ transform: translate(24px, 0);
+ }
+ }
+
+ @keyframes ellipsis-3 {
+ 0% {
+ transform: scale(1);
+ }
+ 100% {
+ transform: scale(0);
+ }
+ }
+</style>