@repobit/dex-system-design 0.18.1 → 0.19.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +20 -0
- package/package.json +15 -4
- package/src/components/anchor/anchor.stories.js +9 -9
- package/src/components/badge/badge.css.js +52 -5
- package/src/components/badge/badge.js +58 -5
- package/src/components/badge/badge.stories.js +183 -15
- package/src/components/carousel/carousel.css.js +13 -13
- package/src/components/footer/footer-links-group.css.js +1 -5
- package/src/components/footer/footer-lp.css.js +49 -533
- package/src/components/footer/footer-lp.js +86 -203
- package/src/components/footer/footer-nav-menu.css.js +33 -19
- package/src/components/footer/footer-nav-menu.js +3 -3
- package/src/components/footer/footer.css.js +263 -193
- package/src/components/footer/footer.js +163 -166
- package/src/tokens/tokens.js +44 -66
- package/src/components/Button/icons.css +0 -5
- package/src/components/Button/index.js +0 -0
- package/src/components/FAQ/faq.css.js +0 -117
- package/src/components/FAQ/faq.js +0 -0
- package/src/components/FAQ/faq.stories.js +0 -66
package/src/tokens/tokens.js
CHANGED
|
@@ -111,7 +111,6 @@ export const tokens = css`
|
|
|
111
111
|
/* ================================
|
|
112
112
|
CORE BORDER TOKENS
|
|
113
113
|
================================ */
|
|
114
|
-
|
|
115
114
|
--border-width-0: 0;
|
|
116
115
|
--border-width-1: 1px;
|
|
117
116
|
--border-width-2: 2px;
|
|
@@ -127,9 +126,11 @@ export const tokens = css`
|
|
|
127
126
|
--radius-2xl: 1rem; /* 16px */
|
|
128
127
|
--radius-3xl: 1.5rem; /* 24px */
|
|
129
128
|
--radius-full: 9999px;
|
|
129
|
+
|
|
130
130
|
/* ================================
|
|
131
|
-
|
|
132
|
-
|
|
131
|
+
CORE DIMENSION TOKENS
|
|
132
|
+
================================ */
|
|
133
|
+
|
|
133
134
|
|
|
134
135
|
--dimension-2px: 2px;
|
|
135
136
|
--dimension-4px: 4px;
|
|
@@ -147,8 +148,8 @@ export const tokens = css`
|
|
|
147
148
|
--dimension-64px: 64px;
|
|
148
149
|
|
|
149
150
|
/* ================================
|
|
150
|
-
|
|
151
|
-
|
|
151
|
+
CORE TRANSITION TOKENS
|
|
152
|
+
================================ */
|
|
152
153
|
|
|
153
154
|
--transition-duration-fast: 150ms;
|
|
154
155
|
--transition-duration-normal: 200ms;
|
|
@@ -162,8 +163,8 @@ export const tokens = css`
|
|
|
162
163
|
--transition-easing-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
|
|
163
164
|
|
|
164
165
|
/* ================================
|
|
165
|
-
|
|
166
|
-
|
|
166
|
+
CORE SHADOW TOKENS
|
|
167
|
+
================================ */
|
|
167
168
|
|
|
168
169
|
--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
|
|
169
170
|
--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
|
|
@@ -194,8 +195,8 @@ export const tokens = css`
|
|
|
194
195
|
--focus-outline-offset: 2px;
|
|
195
196
|
|
|
196
197
|
/* ================================
|
|
197
|
-
|
|
198
|
-
|
|
198
|
+
COMPONENT TOKENS - TYPOGRAPHY
|
|
199
|
+
================================ */
|
|
199
200
|
|
|
200
201
|
/* Heading Tokens */
|
|
201
202
|
--typography-heading-h1-fontSize: var(--typography-fontSize-5xl);
|
|
@@ -276,7 +277,7 @@ export const tokens = css`
|
|
|
276
277
|
--typography-label-small-letterSpacing: var(--typography-letterSpacing-wide);
|
|
277
278
|
--typography-label-small-fontFamily: var(--typography-fontFamily-sans);
|
|
278
279
|
|
|
279
|
-
|
|
280
|
+
--typography-label-extra-small-fontSize: var(--typography-fontSize-xxs);
|
|
280
281
|
|
|
281
282
|
--typography-label-large-fontSize: var(--typography-fontSize-base);
|
|
282
283
|
--typography-label-large-fontWeight: var(--typography-fontWeight-medium);
|
|
@@ -381,8 +382,8 @@ export const tokens = css`
|
|
|
381
382
|
--typography-display-sm-fontFamily: var(--typography-fontFamily-sans);
|
|
382
383
|
|
|
383
384
|
/* ================================
|
|
384
|
-
|
|
385
|
-
|
|
385
|
+
COMPONENT TOKENS - FORM
|
|
386
|
+
================================ */
|
|
386
387
|
|
|
387
388
|
/* Form Label Tokens */
|
|
388
389
|
--form-label-default-fontSize: var(--typography-fontSize-sm);
|
|
@@ -472,8 +473,8 @@ export const tokens = css`
|
|
|
472
473
|
--form-helpTextSpacing: var(--spacing-1);
|
|
473
474
|
|
|
474
475
|
/* ================================
|
|
475
|
-
|
|
476
|
-
|
|
476
|
+
COMPONENT TOKENS - BUTTON
|
|
477
|
+
================================ */
|
|
477
478
|
|
|
478
479
|
/* Button Size Tokens */
|
|
479
480
|
--button-small-height: var(--dimension-34px);
|
|
@@ -625,8 +626,8 @@ export const tokens = css`
|
|
|
625
626
|
--button-focus-boxShadow: var(--shadow-focus-outline-blue);
|
|
626
627
|
|
|
627
628
|
/* ================================
|
|
628
|
-
|
|
629
|
-
|
|
629
|
+
COMPONENT TOKENS - ANNOTATION
|
|
630
|
+
================================ */
|
|
630
631
|
|
|
631
632
|
/* Footnote Tokens */
|
|
632
633
|
--footnote-reference-fontSize: 0.75em;
|
|
@@ -660,8 +661,8 @@ export const tokens = css`
|
|
|
660
661
|
--math-subscript-marginLeft: 0.05em;
|
|
661
662
|
|
|
662
663
|
/* ================================
|
|
663
|
-
|
|
664
|
-
|
|
664
|
+
COMPONENT TOKENS - ICON
|
|
665
|
+
================================ */
|
|
665
666
|
|
|
666
667
|
/* Icon Size Tokens */
|
|
667
668
|
--icon-xs-size: var(--dimension-12px);
|
|
@@ -696,9 +697,9 @@ export const tokens = css`
|
|
|
696
697
|
--icon-error-color: var(--color-red-500);
|
|
697
698
|
|
|
698
699
|
/* ================================
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
700
|
+
CORE SPACING TOKENS
|
|
701
|
+
================================ */
|
|
702
|
+
|
|
702
703
|
--spacing-0: 0;
|
|
703
704
|
--spacing-1: 0.0625rem; /* 1px */
|
|
704
705
|
--spacing-2: 0.125rem; /* 2px */
|
|
@@ -784,29 +785,6 @@ export const tokens = css`
|
|
|
784
785
|
/* Caption */
|
|
785
786
|
--typography-label-small-fontSize-line-height: 1.35; /* For 12px */
|
|
786
787
|
|
|
787
|
-
/* --spacing-0: 0;
|
|
788
|
-
--spacing-1: 1px;
|
|
789
|
-
--spacing-2: 2px;
|
|
790
|
-
--spacing-4: 4px;
|
|
791
|
-
--spacing-6: 6px;
|
|
792
|
-
--spacing-8: 8px;
|
|
793
|
-
--spacing-10: 10px;
|
|
794
|
-
--spacing-12: 12px;
|
|
795
|
-
--spacing-14: 14px;
|
|
796
|
-
--spacing-16: 16px;
|
|
797
|
-
--spacing-18: 18px;
|
|
798
|
-
--spacing-20: 20px;
|
|
799
|
-
--spacing-22: 22px;
|
|
800
|
-
--spacing-24: 24px;
|
|
801
|
-
--spacing-32: 32px;
|
|
802
|
-
--spacing-36: 36px;
|
|
803
|
-
--spacing-40: 40px;
|
|
804
|
-
--spacing-44: 44px;
|
|
805
|
-
--spacing-52: 52px;
|
|
806
|
-
--spacing-64: 64px;
|
|
807
|
-
--spacing-full: 99999999999999999999;
|
|
808
|
-
*/
|
|
809
|
-
|
|
810
788
|
/* Spacing Tokens
|
|
811
789
|
-----------------------------------------------*/
|
|
812
790
|
/* Base spacing tokens - Based on 4px grid */
|
|
@@ -909,63 +887,63 @@ export const tokens = css`
|
|
|
909
887
|
font-family: "IBM Plex Mono";
|
|
910
888
|
font-style: normal;
|
|
911
889
|
font-weight: 700;
|
|
912
|
-
src: url("
|
|
890
|
+
src: url("../assets/fonts/IBMPlexMono-Bold.woff2") format("woff2");
|
|
913
891
|
}
|
|
914
892
|
@font-face {
|
|
915
893
|
font-family: "IBM Plex Mono";
|
|
916
894
|
font-style: normal;
|
|
917
895
|
font-weight: 700;
|
|
918
|
-
src: url("
|
|
896
|
+
src: url("../assets/fonts/IBMPlexMono-BoldItalic.woff2") format("woff2");
|
|
919
897
|
}
|
|
920
898
|
|
|
921
899
|
@font-face {
|
|
922
900
|
font-family: "IBM Plex Mono";
|
|
923
901
|
font-style: italic;
|
|
924
902
|
font-weight: 300;
|
|
925
|
-
src: url("
|
|
903
|
+
src: url("../assets/fonts/IBMPlexMono-Italic.woff2") format("woff2");
|
|
926
904
|
}
|
|
927
905
|
@font-face {
|
|
928
906
|
font-family: "IBM Plex Mono";
|
|
929
907
|
font-style: normal;
|
|
930
908
|
font-weight: 300;
|
|
931
|
-
src: url("
|
|
909
|
+
src: url("../assets/fonts/IBMPlexMono-Light.woff2") format("woff2");
|
|
932
910
|
}
|
|
933
911
|
@font-face {
|
|
934
912
|
font-family: "IBM Plex Mono";
|
|
935
913
|
font-style: italic;
|
|
936
914
|
font-weight: 300;
|
|
937
|
-
src: url("
|
|
915
|
+
src: url("../assets/fonts/IBMPlexMono-LightItalic.woff2") format("woff2");
|
|
938
916
|
}
|
|
939
917
|
|
|
940
918
|
@font-face {
|
|
941
919
|
font-family: "IBM Plex Mono";
|
|
942
920
|
font-style: italic;
|
|
943
921
|
font-weight: 500;
|
|
944
|
-
src: url("
|
|
922
|
+
src: url("../assets/fonts/IBMPlexMono-Medium.woff2") format("woff2");
|
|
945
923
|
}
|
|
946
924
|
@font-face {
|
|
947
925
|
font-family: "IBM Plex Mono";
|
|
948
926
|
font-style: italic;
|
|
949
927
|
font-weight: 500;
|
|
950
|
-
src: url("
|
|
928
|
+
src: url("../assets/fonts/IBMPlexMono-MediumItalic.woff2") format("woff2");
|
|
951
929
|
}
|
|
952
930
|
@font-face {
|
|
953
931
|
font-family: "IBM Plex Mono";
|
|
954
932
|
font-style: italic;
|
|
955
933
|
font-weight: 400;
|
|
956
|
-
src: url("
|
|
934
|
+
src: url("../assets/fonts/IBMPlexMono-Regular.woff2") format("woff2");
|
|
957
935
|
}
|
|
958
936
|
@font-face {
|
|
959
937
|
font-family: "IBM Plex Mono";
|
|
960
938
|
font-style: italic;
|
|
961
939
|
font-weight: 600;
|
|
962
|
-
src: url("
|
|
940
|
+
src: url("../assets/fonts/IBMPlexMono-SemiBold.woff2") format("woff2");
|
|
963
941
|
}
|
|
964
942
|
@font-face {
|
|
965
943
|
font-family: "IBM Plex Mono";
|
|
966
944
|
font-style: italic;
|
|
967
945
|
font-weight: 600;
|
|
968
|
-
src: url("
|
|
946
|
+
src: url("../assets/fonts/IBMPlexMono-SemiBoldItalic.woff2") format("woff2");
|
|
969
947
|
}
|
|
970
948
|
|
|
971
949
|
/*
|
|
@@ -976,63 +954,63 @@ export const tokens = css`
|
|
|
976
954
|
font-family: "IBMPlexSans";
|
|
977
955
|
font-style: normal;
|
|
978
956
|
font-weight: 700;
|
|
979
|
-
src: url("
|
|
957
|
+
src: url("../assets/fonts/IBMPlexSans-Bold.woff2") format("woff2");
|
|
980
958
|
}
|
|
981
959
|
@font-face {
|
|
982
960
|
font-family: "IBMPlexSans";
|
|
983
961
|
font-style: normal;
|
|
984
962
|
font-weight: 700;
|
|
985
|
-
src: url("
|
|
963
|
+
src: url("../assets/fonts/IBMPlexSans-BoldItalic.woff2") format("woff2");
|
|
986
964
|
}
|
|
987
965
|
|
|
988
966
|
@font-face {
|
|
989
967
|
font-family: "IBMPlexSans";
|
|
990
968
|
font-style: italic;
|
|
991
969
|
font-weight: 300;
|
|
992
|
-
src: url("
|
|
970
|
+
src: url("../assets/fonts/IBMPlexSans-Italic.woff2") format("woff2");
|
|
993
971
|
}
|
|
994
972
|
@font-face {
|
|
995
973
|
font-family: "IBMPlexSans";
|
|
996
974
|
font-style: normal;
|
|
997
975
|
font-weight: 300;
|
|
998
|
-
src: url("
|
|
976
|
+
src: url("../assets/fonts/IBMPlexSans-Light.woff2") format("woff2");
|
|
999
977
|
}
|
|
1000
978
|
@font-face {
|
|
1001
979
|
font-family: "IBMPlexSans";
|
|
1002
980
|
font-style: italic;
|
|
1003
981
|
font-weight: 300;
|
|
1004
|
-
src: url("
|
|
982
|
+
src: url("../assets/fonts/IBMPlexSans-LightItalic.woff2") format("woff2");
|
|
1005
983
|
}
|
|
1006
984
|
|
|
1007
985
|
@font-face {
|
|
1008
986
|
font-family: "IBMPlexSans";
|
|
1009
987
|
font-style: italic;
|
|
1010
988
|
font-weight: 500;
|
|
1011
|
-
src: url("
|
|
989
|
+
src: url("../assets/fonts/IBMPlexSans-Medium.woff2") format("woff2");
|
|
1012
990
|
}
|
|
1013
991
|
@font-face {
|
|
1014
992
|
font-family: "IBMPlexSans";
|
|
1015
993
|
font-style: italic;
|
|
1016
994
|
font-weight: 500;
|
|
1017
|
-
src: url("
|
|
995
|
+
src: url("../assets/fonts/IBMPlexSans-MediumItalic.woff2") format("woff2");
|
|
1018
996
|
}
|
|
1019
997
|
@font-face {
|
|
1020
998
|
font-family: "IBMPlexSans";
|
|
1021
999
|
font-style: italic;
|
|
1022
1000
|
font-weight: 400;
|
|
1023
|
-
src: url("
|
|
1001
|
+
src: url("../assets/fonts/IBMPlexSans-Regular.woff2") format("woff2");
|
|
1024
1002
|
}
|
|
1025
1003
|
@font-face {
|
|
1026
1004
|
font-family: "IBMPlexSans";
|
|
1027
1005
|
font-style: italic;
|
|
1028
1006
|
font-weight: 600;
|
|
1029
|
-
src: url("
|
|
1007
|
+
src: url("../assets/fonts/IBMPlexSans-SemiBold.woff2") format("woff2");
|
|
1030
1008
|
}
|
|
1031
1009
|
@font-face {
|
|
1032
1010
|
font-family: "IBMPlexSans";
|
|
1033
1011
|
font-style: italic;
|
|
1034
1012
|
font-weight: 600;
|
|
1035
|
-
src: url("
|
|
1013
|
+
src: url("../assets/fonts/IBMPlexSans-SemiBoldItalic.woff2") format("woff2");
|
|
1036
1014
|
}
|
|
1037
1015
|
|
|
1038
1016
|
/* =====================
|
|
@@ -1049,8 +1027,8 @@ export const tokens = css`
|
|
|
1049
1027
|
--font-style-mono-normal: normal;
|
|
1050
1028
|
--font-style-mono-italic: italic;
|
|
1051
1029
|
|
|
1052
|
-
/*
|
|
1053
|
-
--typography-fontFamily-sans:
|
|
1030
|
+
/* IBM Plex Sans */
|
|
1031
|
+
--typography-fontFamily-sans: 'IBM Plex Sans', sans-serif;
|
|
1054
1032
|
--font-weight-sans-light: 300;
|
|
1055
1033
|
--typography-body-large-fontWeight: 400;
|
|
1056
1034
|
--font-weight-sans-medium: 500;
|
|
File without changes
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
import { css } from "lit";
|
|
2
|
-
|
|
3
|
-
export default css`
|
|
4
|
-
:host {
|
|
5
|
-
--background-card-grey: var(--color-neutral-25);
|
|
6
|
-
--border-card-grey: var(--color-neutral-50);
|
|
7
|
-
--border-card-green: var(--color-green-700);
|
|
8
|
-
--badge-background: var(--color-blue-500);
|
|
9
|
-
--text-color-white: var(--color-neutral-0);
|
|
10
|
-
--bd-accesibility-focus: var(--color-blue-500);
|
|
11
|
-
display: block;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
.bd-accordion-bg-item {
|
|
15
|
-
margin-bottom: var(--spacing-16);
|
|
16
|
-
border-radius: var(--spacing-8);
|
|
17
|
-
background-color: var(--color-blue-50);
|
|
18
|
-
overflow: hidden;
|
|
19
|
-
transition: box-shadow 0.3s ease;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
.bd-accordion-bg-item:hover {
|
|
23
|
-
.bd-accordion-bg-question-text {
|
|
24
|
-
text-decoration-line: underline;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
.bd-accordion-bg-question {
|
|
29
|
-
cursor: pointer;
|
|
30
|
-
display: flex;
|
|
31
|
-
justify-content: flex-start;
|
|
32
|
-
align-items: center;
|
|
33
|
-
gap: var(--spacing-10);
|
|
34
|
-
padding: var(--spacing-16);
|
|
35
|
-
font-weight: bold;
|
|
36
|
-
background-color: var(--color-blue-50);
|
|
37
|
-
color: #333;
|
|
38
|
-
transition: background-color 0.3s ease, color 0.3s ease;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
.bd-accordion-bg-header {
|
|
42
|
-
margin-bottom: var(--spacing-32);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
.bd-accordion-bg-question:hover {
|
|
46
|
-
color: #0073e6;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
.bd-accordion-bg-item:focus-visible {
|
|
50
|
-
outline: var(--spacing-2) solid var(--bd-accesibility-focus);
|
|
51
|
-
outline-offset: var(--spacing-2);
|
|
52
|
-
border-radius: var(--space-2xs);
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
.bd-accordion-bg-item:focus {
|
|
56
|
-
.bd-accordion-bg-question-text {
|
|
57
|
-
font-weight: 600;
|
|
58
|
-
text-decoration-line: underline;
|
|
59
|
-
color: var(--color-blue-600);
|
|
60
|
-
text-decoration-thickness: var(--spacing-2);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
.bd-accordion-bg-question-text {
|
|
65
|
-
font-family: var(--typography-fontFamily-sans);
|
|
66
|
-
font-weight: var(--typography-fontWeight-semibold);
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
.bd-accordion-bg-title {
|
|
70
|
-
font-family: var(--typography-fontFamily-sans);
|
|
71
|
-
font-weight: var(--typography-fontWeight-semibold);
|
|
72
|
-
margin-left: auto;
|
|
73
|
-
margin-right: auto;
|
|
74
|
-
text-align: center;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
.bd-accordion-bg-icon {
|
|
78
|
-
transition: transform 0.3s ease;
|
|
79
|
-
width: var(--spacing-14);
|
|
80
|
-
height: var(--spacing-14);
|
|
81
|
-
color: var(--color-blue-500);
|
|
82
|
-
text-align: center;
|
|
83
|
-
position: relative;
|
|
84
|
-
bottom: 1px;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
.bd-accordion-bg-answer {
|
|
88
|
-
overflow: hidden;
|
|
89
|
-
max-height: 0;
|
|
90
|
-
opacity: 0;
|
|
91
|
-
padding: 0 15px;
|
|
92
|
-
background-color: var(--color-blue-50);
|
|
93
|
-
font-family: var(--typography-fontFamily-sans);
|
|
94
|
-
font-weight: var(--font-weight-sans-medium);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
.bd-accordion-bg-item.open .bd-accordion-bg-answer {
|
|
98
|
-
max-height: 1000px;
|
|
99
|
-
opacity: 1;
|
|
100
|
-
padding: var(--spacing-0) var(--spacing-40);
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
.bd-accordion-bg-answer > div {
|
|
104
|
-
overflow: hidden;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
.bd-accordion-bg-container {
|
|
108
|
-
width: 90%;
|
|
109
|
-
margin: auto;
|
|
110
|
-
padding-top: var(--spacing-64);
|
|
111
|
-
padding-bottom: var(--spacing-64);
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
.bd-accordion-bg-link-noline {
|
|
115
|
-
text-decoration: none;
|
|
116
|
-
}
|
|
117
|
-
`;
|
|
File without changes
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { html } from 'lit';
|
|
2
|
-
import './faq.js';
|
|
3
|
-
|
|
4
|
-
export default {
|
|
5
|
-
title: 'Components/FAQ Section',
|
|
6
|
-
component: 'bd-faq-section',
|
|
7
|
-
tags: ['autodocs'],
|
|
8
|
-
argTypes: {
|
|
9
|
-
title: { control: 'text' },
|
|
10
|
-
|
|
11
|
-
item1Title: { control: 'text', name: 'Item 1 Title' },
|
|
12
|
-
item1Content: {
|
|
13
|
-
control: 'text',
|
|
14
|
-
name: 'Item 1 Content (separate paragraphs with \\n\\n)',
|
|
15
|
-
defaultValue: 'Paragraph 1\n\nParagraph 2\n\nParagraph 3'
|
|
16
|
-
},
|
|
17
|
-
|
|
18
|
-
item2Title: { control: 'text', name: 'Item 2 Title' },
|
|
19
|
-
item2Content: {
|
|
20
|
-
control: 'text',
|
|
21
|
-
name: 'Item 2 Content (separate paragraphs with \\n\\n)',
|
|
22
|
-
defaultValue: 'Paragraph 1\n\nParagraph 2'
|
|
23
|
-
},
|
|
24
|
-
|
|
25
|
-
item3Title: { control: 'text', name: 'Item 3 Title' },
|
|
26
|
-
item3Content: {
|
|
27
|
-
control: 'text',
|
|
28
|
-
name: 'Item 3 Content (separate paragraphs with \\n\\n)',
|
|
29
|
-
defaultValue: 'Paragraph 1\n\nParagraph 2\n\nParagraph 3'
|
|
30
|
-
},
|
|
31
|
-
},
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
const renderParagraphs = (text) => {
|
|
35
|
-
return text.split('\n\n').map(paragraph => html`<p>${paragraph}</p>`);
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
const Template = (args) => html`
|
|
39
|
-
<bd-faq-section title="${args.title}">
|
|
40
|
-
<bd-faq-section-item title="${args.item1Title}">
|
|
41
|
-
${renderParagraphs(args.item1Content)}
|
|
42
|
-
</bd-faq-section-item>
|
|
43
|
-
|
|
44
|
-
<bd-faq-section-item title="${args.item2Title}">
|
|
45
|
-
${renderParagraphs(args.item2Content)}
|
|
46
|
-
</bd-faq-section-item>
|
|
47
|
-
|
|
48
|
-
<bd-faq-section-item title="${args.item3Title}">
|
|
49
|
-
${renderParagraphs(args.item3Content)}
|
|
50
|
-
</bd-faq-section-item>
|
|
51
|
-
</bd-faq-section>
|
|
52
|
-
`;
|
|
53
|
-
|
|
54
|
-
export const Default = Template.bind({});
|
|
55
|
-
Default.args = {
|
|
56
|
-
title: 'Questions? Answers.',
|
|
57
|
-
|
|
58
|
-
item1Title: 'How does Bitdefender Internet Security protect me?',
|
|
59
|
-
item1Content: 'Bitdefender Internet Security provides the best protection...\n\nBitdefender Internet Security provides the best protection...\n\nBitdefender Internet Security provides the best protection...',
|
|
60
|
-
|
|
61
|
-
item2Title: 'Does Bitdefender protect me against ransomware?',
|
|
62
|
-
item2Content: 'Yes! Bitdefender Internet Security offers unbeatable ransomware protection...\n\nIt detects ransomware threats in real-time.',
|
|
63
|
-
|
|
64
|
-
item3Title: 'Do I get a VPN with Bitdefender Internet Security?',
|
|
65
|
-
item3Content: 'Bitdefender Internet Security includes a basic VPN with 200MB per day.\n\nYou can upgrade for unlimited VPN usage.\n\nThe VPN protects your online privacy.',
|
|
66
|
-
};
|