diff --git a/src/components/WwwFrame/DisclaimersContentful.vue b/src/components/WwwFrame/DisclaimersContentful.vue
new file mode 100644
index 0000000000..c6b6d33a7b
--- /dev/null
+++ b/src/components/WwwFrame/DisclaimersContentful.vue
@@ -0,0 +1,169 @@
+
+
+
+
+
diff --git a/src/components/WwwFrame/PromotionalBanner/Banners/AppealBanner/AppealBannerCircular.vue b/src/components/WwwFrame/PromotionalBanner/Banners/AppealBanner/AppealBannerCircular.vue
index 8658e64ad4..d384a57c33 100644
--- a/src/components/WwwFrame/PromotionalBanner/Banners/AppealBanner/AppealBannerCircular.vue
+++ b/src/components/WwwFrame/PromotionalBanner/Banners/AppealBanner/AppealBannerCircular.vue
@@ -38,6 +38,16 @@
+
+
+ 1
+
+
-
// import numeral from 'numeral';
import smoothReflow from 'vue-smooth-reflow';
+import smoothScrollMixin from '@/plugins/smooth-scroll-mixin';
import KvButton from '@/components/Kv/KvButton';
import KvIcon from '@/components/Kv/KvIcon';
@@ -131,7 +152,7 @@ export default {
KvProgressCircle,
KvContentfulImg
},
- mixins: [smoothReflow],
+ mixins: [smoothReflow, smoothScrollMixin],
props: {
targetAmount: {
type: Number,
@@ -161,6 +182,10 @@ export default {
type: Boolean,
default: true
},
+ disclaimer: {
+ type: Boolean,
+ default: false
+ }
},
computed: {
isLoading() {
@@ -193,6 +218,11 @@ export default {
onClickToggleBanner() {
this.$emit('toggle-banner', !this.isOpen);
},
+ scrollToSection(sectionId) {
+ const elementToScrollTo = document.querySelector(sectionId);
+ const topOfSectionToScrollTo = elementToScrollTo?.offsetTop ?? 0;
+ this.smoothScrollTo({ yPosition: topOfSectionToScrollTo, millisecondsToAnimate: 750 });
+ }
},
mounted() {
this.$smoothReflow();
@@ -224,7 +254,11 @@ export default {
}
&__title {
- margin-bottom: rem-calc(4);
+ display: inline;
+ }
+
+ &__disclaimer-indicator {
+ color: $kiva-text-dark;
}
&__amount-list {
@@ -303,6 +337,7 @@ export default {
}
&__body {
+ margin-top: rem-calc(4);
margin-bottom: 1rem;
white-space: pre-wrap;
diff --git a/src/components/WwwFrame/PromotionalBanner/Banners/AppealBanner/AppealBannerCircularContainer.vue b/src/components/WwwFrame/PromotionalBanner/Banners/AppealBanner/AppealBannerCircularContainer.vue
index 5822a237d9..2b5a7eec57 100644
--- a/src/components/WwwFrame/PromotionalBanner/Banners/AppealBanner/AppealBannerCircularContainer.vue
+++ b/src/components/WwwFrame/PromotionalBanner/Banners/AppealBanner/AppealBannerCircularContainer.vue
@@ -7,6 +7,7 @@
:body="body"
:image-url="imageUrl"
:is-open="isOpen"
+ :disclaimer="hasDisclaimer"
@toggle-banner="onToggleBanner"
@amount-selected="onAmountSelected"
/>
@@ -70,6 +71,9 @@ export default {
return this.appealBannerContent?.additionalContent
?.find(content => content?.fields?.name === 'Progress Meter Image')
.fields?.images?.[0]?.fields?.file?.url || '';
+ },
+ hasDisclaimer() {
+ return this.appealBannerContent?.disclaimer !== '';
}
},
created() {
diff --git a/src/components/WwwFrame/PromotionalBanner/Banners/GenericPromoBanner.vue b/src/components/WwwFrame/PromotionalBanner/Banners/GenericPromoBanner.vue
index fa5d061cb6..f8e3d1e1c5 100644
--- a/src/components/WwwFrame/PromotionalBanner/Banners/GenericPromoBanner.vue
+++ b/src/components/WwwFrame/PromotionalBanner/Banners/GenericPromoBanner.vue
@@ -12,16 +12,28 @@
+
+
+ 1
+
+