From 9eae4ca1a3dde55a818adc827a286877428cd5d9 Mon Sep 17 00:00:00 2001 From: Thomas <4159106+dtslvr@users.noreply.github.com> Date: Fri, 20 Oct 2023 19:20:10 +0200 Subject: [PATCH] Add animated border --- .../user-account-membership.html | 68 ++++++++++--------- .../membership-card.component.html | 44 ++++++------ .../membership-card.component.scss | 63 ++++++++++++++--- 3 files changed, 111 insertions(+), 64 deletions(-) diff --git a/apps/client/src/app/components/user-account-membership/user-account-membership.html b/apps/client/src/app/components/user-account-membership/user-account-membership.html index 191c63184..4031ce9a0 100644 --- a/apps/client/src/app/components/user-account-membership/user-account-membership.html +++ b/apps/client/src/app/components/user-account-membership/user-account-membership.html @@ -2,40 +2,42 @@

Membership

- -
-
-
- - -
- {{ baseCurrency }} {{ price }} {{ baseCurrency }} {{ price - coupon - }} - {{ baseCurrency }} {{ price }} per year -
-
+
+ +
+ + +
+ {{ baseCurrency }} {{ price }} {{ baseCurrency }} {{ price - coupon + }} + {{ baseCurrency }} {{ price }} per year +
+
+
Try Premium @@ -46,7 +48,7 @@ > -
- -
-
-
-
Membership
-
{{ name }}
+
+
+
-
diff --git a/libs/ui/src/lib/membership-card/membership-card.component.scss b/libs/ui/src/lib/membership-card/membership-card.component.scss index 7e8ea79e2..a7cbce91a 100644 --- a/libs/ui/src/lib/membership-card/membership-card.component.scss +++ b/libs/ui/src/lib/membership-card/membership-card.component.scss @@ -1,25 +1,66 @@ :host { + --borderRadius: 1rem; + --borderWidth: 2px; + display: block; max-width: 25rem; + padding-top: calc(1 * var(--borderWidth)); + width: 100%; - .card-item { - aspect-ratio: 1.586; - background-color: #ffffff; - border-radius: 1rem; + .card-container { + border-radius: var(--borderRadius); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15); - color: rgba(var(--dark-primary-text)); - &.premium { + &:after { + animation: animatedborder 7s ease alternate infinite; + background: linear-gradient(60deg, #5073b8, #1098ad, #07b39b, #6fba82); + background-size: 300% 300%; + border-radius: var(--borderRadius); + content: ''; + height: calc(100% + var(--borderWidth) * 2); + left: calc(-1 * var(--borderWidth)); + top: calc(-1 * var(--borderWidth)); + position: absolute; + width: calc(100% + var(--borderWidth) * 2); + z-index: -1; + + @keyframes animatedborder { + 0% { + background-position: 0% 50%; + } + 50% { + background-position: 100% 50%; + } + 100% { + background-position: 0% 50%; + } + } + } + + .card-item { + aspect-ratio: 1.586; background-color: #1d2124; + border-radius: calc(var(--borderRadius) - var(--borderWidth)); color: rgba(var(--light-primary-text)); - } - .card-item-heading { - font-size: 13px; + .heading { + font-size: 13px; + } + + .value { + font-size: 18px; + } } - .card-item-name { - font-size: 18px; + &:not(.premium) { + &:after { + opacity: 0; + } + + .card-item { + background-color: #ffffff; + color: rgba(var(--dark-primary-text)); + } } } }