@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.
@@ -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
- CORE DIMENSION TOKENS
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
- CORE TRANSITION TOKENS
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
- CORE SHADOW TOKENS
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
- COMPONENT TOKENS - TYPOGRAPHY
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
- --typography-label-extra-small-fontSize: var(--typography-fontSize-xxs);
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
- COMPONENT TOKENS - FORM
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
- COMPONENT TOKENS - BUTTON
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
- COMPONENT TOKENS - ANNOTATION
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
- COMPONENT TOKENS - ICON
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
- CORE SPACING TOKENS
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("/assets/fonts/IBMPlexMono-Bold.woff2") format("woff2");
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("/assets/fonts/IBMPlexMono-BoldItalic.woff2") format("woff2");
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("/assets/fonts/IBMPlexMono-Italic.woff2") format("woff2");
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("/assets/fonts/IBMPlexMono-Light.woff2") format("woff2");
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("/assets/fonts/IBMPlexMono-LightItalic.woff2") format("woff2");
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("/assets/fonts/IBMPlexMono-Medium.woff2") format("woff2");
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("/assets/fonts/IBMPlexMono-MediumItalic.woff2") format("woff2");
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("/assets/fonts/IBMPlexMono-Regular.woff2") format("woff2");
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("/assets/fonts/IBMPlexMono-SemiBold.woff2") format("woff2");
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("/assets/fonts/IBMPlexMono-SemiBoldItalic.woff2") format("woff2");
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("/assets/fonts/IBMPlexSans-Bold.woff2") format("woff2");
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("/assets/fonts/IBMPlexSans-BoldItalic.woff2") format("woff2");
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("/assets/fonts/IBMPlexSans-Italic.woff2") format("woff2");
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("/assets/fonts/IBMPlexSans-Light.woff2") format("woff2");
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("/assets/fonts/IBMPlexSans-LightItalic.woff2") format("woff2");
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("/assets/fonts/IBMPlexSans-Medium.woff2") format("woff2");
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("/assets/fonts/IBMPlexSans-MediumItalic.woff2") format("woff2");
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("/assets/fonts/IBMPlexSans-Regular.woff2") format("woff2");
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("/assets/fonts/IBMPlexSans-SemiBold.woff2") format("woff2");
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("/assets/fonts/IBMPlexSans-SemiBoldItalic.woff2") format("woff2");
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
- /* IBMPlexSans */
1053
- --typography-fontFamily-sans: "IBM Plex Sans", sans-serif;
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;
@@ -1,5 +0,0 @@
1
- .arrow-icon {
2
- width: 24px;
3
- height: 24px;
4
- fill: #000;
5
- }
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
- };