@repobit/dex-system-design 0.11.0 → 0.14.0

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.
Files changed (97) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/package.json +2 -2
  3. package/src/assets/icons/Identity_protection.png +0 -0
  4. package/src/assets/icons/device_protection.png +0 -0
  5. package/src/assets/icons/financial_insurance.png +0 -0
  6. package/src/assets/icons/privacy_protection.png +0 -0
  7. package/src/assets/icons/user_guide.png +0 -0
  8. package/src/components/Button/Button.js +19 -16
  9. package/src/components/Button/button.css.js +18 -16
  10. package/src/components/Button/icons.js +8 -8
  11. package/src/components/FAQ/faq.css.js +48 -49
  12. package/src/components/FAQ/faq.js +0 -86
  13. package/src/components/Input/Input.js +68 -6
  14. package/src/components/Input/custom-form.stories.js +88 -0
  15. package/src/components/Input/input-clipboard.css.js +168 -0
  16. package/src/components/Input/input-clipboard.js +137 -0
  17. package/src/components/Input/input.css.js +122 -42
  18. package/src/components/accordion/accordion-bg.css.js +117 -0
  19. package/src/components/accordion/accordion-bg.js +80 -0
  20. package/src/components/accordion/accordion-no-bg.css.js +114 -0
  21. package/src/components/accordion/accordion-no-bg.js +80 -0
  22. package/src/components/accordion/accordion.css.js +88 -0
  23. package/src/components/accordion/accordion.js +81 -0
  24. package/src/components/anchor/anchor-nav.css.js +15 -15
  25. package/src/components/anchor/anchor-nav.js +0 -1
  26. package/src/components/anchor/anchor.stories.js +10 -13
  27. package/src/components/badge/badge.css.js +6 -6
  28. package/src/components/badge/badge.js +1 -2
  29. package/src/components/badge/badge.stories.js +6 -6
  30. package/src/components/carousel/carousel.css.js +60 -60
  31. package/src/components/carousel/carousel.js +26 -30
  32. package/src/components/carousel/carousel.stories.js +55 -55
  33. package/src/components/checkbox/checkbox.css.js +14 -14
  34. package/src/components/divider/divider-horizontal.js +19 -14
  35. package/src/components/divider/divider-vertical.js +23 -14
  36. package/src/components/divider/divider.css.js +19 -0
  37. package/src/components/dropdown/dropdown.css.js +138 -0
  38. package/src/components/dropdown/dropdown.js +111 -0
  39. package/src/components/footer/footer-links-group.css.js +42 -0
  40. package/src/components/footer/footer-links-group.js +25 -0
  41. package/src/components/footer/footer-lp.css.js +625 -0
  42. package/src/components/footer/footer-lp.js +368 -0
  43. package/src/components/footer/footer-lp.stories.js +69 -0
  44. package/src/components/footer/footer-nav-menu.css.js +24 -0
  45. package/src/components/footer/footer-nav-menu.js +36 -0
  46. package/src/components/footer/footer.css.js +625 -0
  47. package/src/components/footer/footer.js +465 -0
  48. package/src/components/footer/footer.stories.js +60 -0
  49. package/src/components/footer/localeMap.js +1 -0
  50. package/src/components/grid/grid.css.js +38 -0
  51. package/src/components/grid/grid.js +55 -0
  52. package/src/components/header/header.css.js +81 -52
  53. package/src/components/header/header.js +19 -19
  54. package/src/components/highlight/highlight.css.js +32 -22
  55. package/src/components/highlight/highlight.js +15 -4
  56. package/src/components/highlight/highlight.stories.js +4 -4
  57. package/src/components/light-carousel/light-carousel-simple.css.js +183 -0
  58. package/src/components/light-carousel/light-carousel-simple.js +73 -0
  59. package/src/components/light-carousel/light-carousel.css.js +50 -31
  60. package/src/components/light-carousel/light-carousel.js +14 -57
  61. package/src/components/light-carousel/light-carousel.stories.js +51 -10
  62. package/src/components/link/link.css.js +41 -0
  63. package/src/components/link/link.js +54 -0
  64. package/src/components/modal/modal.css.js +75 -0
  65. package/src/components/modal/modal.js +41 -0
  66. package/src/components/modal/modal.stories.js +40 -0
  67. package/src/components/paragraph/paragraph.css.js +1 -3
  68. package/src/components/pricing-cards/new-pricing-card.js +30 -0
  69. package/src/components/pricing-cards/new-pricing.css.js +58 -0
  70. package/src/components/pricing-cards/pricing-card-actions.css.js +16 -0
  71. package/src/components/pricing-cards/pricing-card-actions.js +20 -0
  72. package/src/components/pricing-cards/pricing-card-container.css.js +41 -0
  73. package/src/components/pricing-cards/pricing-card-container.js +31 -0
  74. package/src/components/pricing-cards/pricing-card-header.css.js +70 -0
  75. package/src/components/pricing-cards/pricing-card-header.js +46 -0
  76. package/src/components/pricing-cards/pricing-card-pricing.css.js +63 -0
  77. package/src/components/pricing-cards/pricing-card-pricing.js +101 -0
  78. package/src/components/pricing-cards/pricing-card-show-more.css.js +22 -0
  79. package/src/components/pricing-cards/pricing-card-show-more.js +33 -0
  80. package/src/components/pricing-cards/pricing-card.css.js +91 -89
  81. package/src/components/pricing-cards/pricing-card.js +13 -16
  82. package/src/components/pricing-cards/pricing-feature-item.css.js +18 -0
  83. package/src/components/pricing-cards/pricing-feature-item.js +14 -0
  84. package/src/components/radio/radio.css.js +18 -18
  85. package/src/components/radio/radio.js +1 -0
  86. package/src/components/tabs/tabs.css.js +21 -11
  87. package/src/components/tabs/tabs.js +24 -18
  88. package/src/components/termsOfUse/terms.css.js +6 -6
  89. package/src/components/termsOfUse/terms.js +0 -1
  90. package/src/stories/demo.stories.js +270 -0
  91. package/src/tokens/layout.css +1 -0
  92. package/src/tokens/tokens.css +412 -0
  93. package/src/components/highlight/highlight-s.css.js +0 -88
  94. package/src/components/highlight/highlight-s.js +0 -35
  95. package/src/components/highlight/highlight-s.stories.js +0 -22
  96. package/src/tokens/fonts.css +0 -166
  97. package/src/tokens/tokens.js +0 -281
@@ -1,166 +0,0 @@
1
- /* =====================
2
- GLOBAL FONT-FACE DEFINITIONS
3
- For Storybook and global usage
4
- ====================== */
5
-
6
- /* IBM Plex Mono */
7
- @font-face {
8
- font-family: 'IBM Plex Mono';
9
- font-style: normal;
10
- font-weight: 300;
11
- src: url('./assets/fonts/IBMPlexMono-Light.woff2') format('woff2');
12
- font-display: swap;
13
- }
14
-
15
- @font-face {
16
- font-family: 'IBM Plex Mono';
17
- font-style: italic;
18
- font-weight: 300;
19
- src: url('./assets/fonts/IBMPlexMono-LightItalic.woff2') format('woff2');
20
- font-display: swap;
21
- }
22
-
23
- @font-face {
24
- font-family: 'IBM Plex Mono';
25
- font-style: normal;
26
- font-weight: 400;
27
- src: url('./assets/fonts/IBMPlexMono-Regular.woff2') format('woff2');
28
- font-display: swap;
29
- }
30
-
31
- @font-face {
32
- font-family: 'IBM Plex Mono';
33
- font-style: italic;
34
- font-weight: 400;
35
- src: url('./assets/fonts/IBMPlexMono-Italic.woff2') format('woff2');
36
- font-display: swap;
37
- }
38
-
39
- @font-face {
40
- font-family: 'IBM Plex Mono';
41
- font-style: normal;
42
- font-weight: 500;
43
- src: url('./assets/fonts/IBMPlexMono-Medium.woff2') format('woff2');
44
- font-display: swap;
45
- }
46
-
47
- @font-face {
48
- font-family: 'IBM Plex Mono';
49
- font-style: italic;
50
- font-weight: 500;
51
- src: url('./assets/fonts/IBMPlexMono-MediumItalic.woff2') format('woff2');
52
- font-display: swap;
53
- }
54
-
55
- @font-face {
56
- font-family: 'IBM Plex Mono';
57
- font-style: normal;
58
- font-weight: 600;
59
- src: url('./assets/fonts/IBMPlexMono-SemiBold.woff2') format('woff2');
60
- font-display: swap;
61
- }
62
-
63
- @font-face {
64
- font-family: 'IBM Plex Mono';
65
- font-style: italic;
66
- font-weight: 600;
67
- src: url('./assets/fonts/IBMPlexMono-SemiBoldItalic.woff2') format('woff2');
68
- font-display: swap;
69
- }
70
-
71
- @font-face {
72
- font-family: 'IBM Plex Mono';
73
- font-style: normal;
74
- font-weight: 700;
75
- src: url('./assets/fonts/IBMPlexMono-Bold.woff2') format('woff2');
76
- font-display: swap;
77
- }
78
-
79
- @font-face {
80
- font-family: 'IBM Plex Mono';
81
- font-style: italic;
82
- font-weight: 700;
83
- src: url('./assets/fonts/IBMPlexMono-BoldItalic.woff2') format('woff2');
84
- font-display: swap;
85
- }
86
-
87
- /* IBM Plex Sans */
88
- @font-face {
89
- font-family: 'IBM Plex Sans';
90
- font-style: normal;
91
- font-weight: 300;
92
- src: url('./assets/fonts/IBMPlexSans-Light.woff2') format('woff2');
93
- font-display: swap;
94
- }
95
-
96
- @font-face {
97
- font-family: 'IBM Plex Sans';
98
- font-style: italic;
99
- font-weight: 300;
100
- src: url('./assets/fonts/IBMPlexSans-LightItalic.woff2') format('woff2');
101
- font-display: swap;
102
- }
103
-
104
- @font-face {
105
- font-family: 'IBM Plex Sans';
106
- font-style: normal;
107
- font-weight: 400;
108
- src: url('./assets/fonts/IBMPlexSans-Regular.woff2') format('woff2');
109
- font-display: swap;
110
- }
111
-
112
- @font-face {
113
- font-family: 'IBM Plex Sans';
114
- font-style: italic;
115
- font-weight: 400;
116
- src: url('./assets/fonts/IBMPlexSans-Italic.woff2') format('woff2');
117
- font-display: swap;
118
- }
119
-
120
- @font-face {
121
- font-family: 'IBM Plex Sans';
122
- font-style: normal;
123
- font-weight: 500;
124
- src: url('./assets/fonts/IBMPlexSans-Medium.woff2') format('woff2');
125
- font-display: swap;
126
- }
127
-
128
- @font-face {
129
- font-family: 'IBM Plex Sans';
130
- font-style: italic;
131
- font-weight: 500;
132
- src: url('./assets/fonts/IBMPlexSans-MediumItalic.woff2') format('woff2');
133
- font-display: swap;
134
- }
135
-
136
- @font-face {
137
- font-family: 'IBM Plex Sans';
138
- font-style: normal;
139
- font-weight: 600;
140
- src: url('./assets/fonts/IBMPlexSans-SemiBold.woff2') format('woff2');
141
- font-display: swap;
142
- }
143
-
144
- @font-face {
145
- font-family: 'IBM Plex Sans';
146
- font-style: italic;
147
- font-weight: 600;
148
- src: url('./assets/fonts/IBMPlexSans-SemiBoldItalic.woff2') format('woff2');
149
- font-display: swap;
150
- }
151
-
152
- @font-face {
153
- font-family: 'IBM Plex Sans';
154
- font-style: normal;
155
- font-weight: 700;
156
- src: url('./assets/fonts/IBMPlexSans-Bold.woff2') format('woff2');
157
- font-display: swap;
158
- }
159
-
160
- @font-face {
161
- font-family: 'IBM Plex Sans';
162
- font-style: italic;
163
- font-weight: 700;
164
- src: url('./assets/fonts/IBMPlexSans-BoldItalic.woff2') format('woff2');
165
- font-display: swap;
166
- }
@@ -1,281 +0,0 @@
1
- import { css } from 'lit';
2
-
3
- export const tokens = css`
4
- :host {
5
-
6
- /* =====================
7
- COLORS
8
- ====================== */
9
- --color-blue-50: #F0F7FF;
10
- --color-blue-100: #D6E8FF;
11
- --color-blue-200: #9EC8FF;
12
- --color-blue-300: #6BABFF;
13
- --color-blue-400: #338BFF;
14
- --color-blue-500: #006dff;
15
- --color-blue-600: #0059D6;
16
- --color-blue-700: #0045AD;
17
- --color-blue-800: #003385;
18
- --color-blue-900: #00225C;
19
- --color-blue-950: #001947;
20
-
21
- --color-red-50: #FFF0F0;
22
- --color-red-100: #FFD6D6;
23
- --color-red-200: #FF9E9E;
24
- --color-red-300: #FF6B6B;
25
- --color-red-400: #FF3333;
26
- --color-red-500: #FF0000;
27
- --color-red-600: #D60000;
28
- --color-red-700: #AD0000;
29
- --color-red-800: #850000;
30
- --color-red-900: #5C0000;
31
- --color-red-950: #470000;
32
-
33
- --color-green-50: #EDFDF1;
34
- --color-green-100: #D1FADC;
35
- --color-green-200: #9AF4B4;
36
- --color-green-300: #63EE8D;
37
- --color-green-400: #2CE767;
38
- --color-green-500: #15C14F;
39
- --color-green-600: #12A641;
40
- --color-green-700: #0E8532;
41
- --color-green-800: #0B6A26;
42
- --color-green-900: #084A1A;
43
- --color-green-950: #063C14;
44
-
45
- --color-yellow-50: #FFFBF0;
46
- --color-yellow-100: #FFF5D6;
47
- --color-yellow-200: #FFE89E;
48
- --color-yellow-300: #FFDC6B;
49
- --color-yellow-400: #FFCF33;
50
- --color-yellow-500: #FFC400;
51
- --color-yellow-600: #D6A000;
52
- --color-yellow-700: #AD7F00;
53
- --color-yellow-800: #855F00;
54
- --color-yellow-900: #5C4000;
55
- --color-yellow-950: #473100;
56
-
57
- --color-neutral-0: #FFFFFF;
58
- --color-neutral-25: #FAFAFA;
59
- --color-neutral-50: #f1f2f3;
60
- --color-neutral-100: #e1e3e5;
61
- --color-neutral-200: #c5c9ce;
62
- --color-neutral-300: #a6adb4;
63
- --color-neutral-400: #88909b;
64
- --color-neutral-500: #6c7580;
65
- --color-neutral-600: #565e66;
66
- --color-neutral-700: #41474d;
67
- --color-neutral-800: #2c3035;
68
- --color-neutral-900: #151719;
69
- --color-neutral-950: #0c0d0e;
70
- --color-neutral-1000: #000000;
71
-
72
-
73
- /* =====================
74
- DISPLAY FONT SIZES
75
- ====================== */
76
-
77
- /* Display default */
78
- --display-xxsmall: 44px; /* 58.652px = 3.666rem */
79
- --display-xsmall: 48px; /* 63.984px = 3.999rem */
80
- --display-small: 52px; /* 69.316px = 4.332rem */
81
- --display-medium: 56px; /* 74.648px = 4.666rem */
82
- --display-large: 60px; /* 79.98px = 5rem */
83
- --display-xlarge: 64px; /* 85.312px = 5.333rem */
84
-
85
- /* Display mobile */
86
- --display-xxsmall-mobile: 34px; /* 45.322px = 2.833rem */
87
- --display-xsmall-mobile: 36px; /* 47.988px = 2.999rem */
88
- --display-small-mobile: 38px; /* 50.654px = 3.167rem */
89
- --display-medium-mobile: 40px; /* 53.32px = 3.333rem */
90
- --display-large-mobile: 44px; /* 58.652px = 3.666rem */
91
- --display-xlarge-mobile: 48px; /* 63.984px = 3.999rem */
92
-
93
- /* Heading default */
94
- --heading-xxsmall: 18px; /* 23.994px = 1.5rem */
95
- --heading-xsmall: 20px; /* 26.66px = 1.667rem */
96
- --heading-small: 24px; /* 31.992px = 2rem */
97
- --heading-medium: 28px; /* 37.324px = 2.333rem */
98
- --heading-large: 32px; /* 42.656px = 2.667rem */
99
- --heading-xlarge: 36px; /* 47.988px = 2.999rem */
100
- --heading-xxlarge: 40px; /* 53.32px = 3.333rem */
101
-
102
- /* Body default */
103
- --body-small: 13px; /* 17.329px = 1.083rem */
104
- --body-medium: 14px; /* 18.662px = 1.167rem */
105
- --body-large: 16px; /* 21.328px = 1.333rem */
106
- --body-xlarge: 18px; /* 23.994px = 1.5rem */
107
-
108
- /* Caption default */
109
- --caption-small: 11px; /* 14.663px = 0.917rem */
110
- --caption-large: 12px; /* 15.996px = 1rem */
111
-
112
-
113
-
114
-
115
- /* Display Default */
116
- --display-xlarge-line-height: 1.1; /* For 60px */
117
- --display-medium-line-height: 1.15; /* For 52px */
118
-
119
- /* Display Mobile */
120
- --display-xlarge-mobile-line-height: 1.15; /* For 44px */
121
- --display-medium-mobile-line-height: 1.2; /* For 38px */
122
-
123
- /* Heading */
124
- --heading-xlarge-line-height: 1.2; /* For 36px */
125
- --heading-small-line-height: 1.3; /* For 24px */
126
-
127
- /* Body */
128
- --body-large-line-height: 1.5; /* For 16px */
129
-
130
- /* Caption */
131
- --caption-large-line-height: 1.35; /* For 12px */
132
- /* =====================
133
- PADDING SIZES
134
- ====================== */
135
-
136
- /* PADDING VALUES */
137
- --size-0: 0;
138
- --size-1: 1px;
139
- --size-2: 2px;
140
- --size-4: 4px;
141
- --size-6: 6px;
142
- --size-8: 8px;
143
- --size-10: 10px;
144
- --size-12: 12px;
145
- --size-14: 14px;
146
- --size-16: 16px;
147
- --size-18: 18px;
148
- --size-20: 20px;
149
- --size-22: 22px;
150
- --size-24: 24px;
151
- --size-32: 32px;
152
- --size-36: 36px;
153
- --size-40: 40px;
154
- --size-44: 44px;
155
- --size-52: 52px;
156
- --size-64: 64px;
157
- --size-full: 99999999999999999999;
158
-
159
-
160
- /* Spacing Tokens
161
- -----------------------------------------------*/
162
- /* Base spacing tokens - Based on 4px grid */
163
- --space-none: 0;
164
- --space-4xs: 0.125rem; /* 2px */
165
- --space-3xs: 0.25rem; /* 4px */
166
- --space-2xs: 0.5rem; /* 8px */
167
- --space-xs: 0.75rem; /* 12px */
168
- --space-sm: 1rem; /* 16px */
169
- --space-md: 1.5rem; /* 24px */
170
- --space-lg: 2rem; /* 32px */
171
- --space-xl: 2.5rem; /* 40px */
172
- --space-2xl: 3rem; /* 48px */
173
- --space-3xl: 4rem; /* 64px */
174
- --space-4xl: 6rem; /* 96px */
175
- --space-5xl: 8rem; /* 128px */
176
-
177
- /* Semantic Padding Tokens */
178
- --padding-button: var(--space-xs) var(--space-md);
179
- --padding-input: var(--space-xs);
180
- --padding-card: var(--space-md);
181
- --padding-card-sm: var(--space-sm);
182
- --padding-card-lg: var(--space-lg);
183
-
184
- --padding-section: var(--space-3xl) 0;
185
- --padding-section-sm: var(--space-2xl) 0;
186
- --padding-section-lg: var(--space-4xl) 0;
187
-
188
- /* Container and Layout Tokens */
189
- --container-padding: var(--space-md);
190
- --container-padding-sm: var(--space-sm);
191
- --container-padding-lg: var(--space-lg);
192
-
193
- /* Inset (Padding All Sides) Tokens */
194
- --inset-xs: var(--space-xs);
195
- --inset-sm: var(--space-sm);
196
- --inset-md: var(--space-md);
197
- --inset-lg: var(--space-lg);
198
-
199
- /* Stack (Vertical Spacing) Tokens */
200
- --stack-xs: var(--space-xs);
201
- --stack-sm: var(--space-sm);
202
- --stack-md: var(--space-md);
203
- --stack-lg: var(--space-lg);
204
- --stack-xl: var(--space-xl);
205
-
206
- /* Inline (Horizontal Spacing) Tokens */
207
- --inline-xs: var(--space-xs);
208
- --inline-sm: var(--space-sm);
209
- --inline-md: var(--space-md);
210
- --inline-lg: var(--space-lg);
211
-
212
- /* Accessibility Spacing Tokens
213
- -----------------------------------------------*/
214
- /* Touch Target Sizes - WCAG 2.1 Success Criterion 2.5.5 (AAA) and 2.5.8 (AA) */
215
- --touch-target-size: 44px; /* Minimum touch target size (44px × 44px) */
216
- --touch-target-spacing: 8px; /* Minimum space between touch targets */
217
-
218
- /* Readable Line Lengths - For optimal readability */
219
- --content-width-readable: 70ch; /* Approximately 70 characters per line */
220
- --content-width-max: 1200px; /* Maximum overall content width */
221
-
222
-
223
- /** GRID TOKENS
224
- */
225
- /* Grid container max widths */
226
- --grid-container-max-xs: 100%; /* mobile full width */
227
- --grid-container-max-sm: 540px;
228
- --grid-container-max-md: 720px;
229
- --grid-container-max-lg: 960px;
230
- --grid-container-max-xl: 1140px;
231
- --grid-container-max-xxl: 1320px;
232
-
233
- /* Column count (usually 12) */
234
- --grid-columns: 12;
235
-
236
- /* Gutter spacing between columns */
237
- --grid-gutter-xs: 16px;
238
- --grid-gutter-sm: 24px;
239
- --grid-gutter-md: 32px;
240
- --grid-gutter-lg: 40px;
241
-
242
- /* Container padding (horizontal spacing) */
243
- --grid-padding-xs: 16px;
244
- --grid-padding-sm: 24px;
245
- --grid-padding-md: 32px;
246
- --grid-padding-lg: 40px;
247
-
248
- /* Breakpoints */
249
- --breakpoint-xs: 0px;
250
- --breakpoint-sm: 576px;
251
- --breakpoint-md: 768px;
252
- --breakpoint-lg: 992px;
253
- --breakpoint-xl: 1200px;
254
- --breakpoint-xxl: 1400px;
255
-
256
- /* =====================
257
- FONT TOKENS
258
- ====================== */
259
- /* IBM Plex Mono */
260
- --font-family-mono: 'IBM Plex Mono', monospace;
261
- --font-weight-mono-light: 300;
262
- --font-weight-mono-regular: 400;
263
- --font-weight-mono-medium: 500;
264
- --font-weight-mono-semibold: 600;
265
- --font-weight-mono-bold: 700;
266
-
267
- --font-style-mono-normal: normal;
268
- --font-style-mono-italic: italic;
269
-
270
- /* IBMPlexSans */
271
- --font-family-sans: 'IBM Plex Sans', sans-serif;
272
- --font-weight-sans-light: 300;
273
- --font-weight-sans-regular: 400;
274
- --font-weight-sans-medium: 500;
275
- --font-weight-sans-semibold: 600;
276
- --font-weight-sans-bold: 700;
277
-
278
- --font-style-sans-normal: normal;
279
- --font-style-sans-italic: italic;
280
- }
281
- `;