@repobit/dex-system-design 0.10.0 → 0.12.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 (107) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/package.json +2 -2
  3. package/src/assets/icons/Identity_protection.png +0 -0
  4. package/src/assets/icons/arrow_down.png +0 -0
  5. package/src/assets/icons/arrow_up.png +0 -0
  6. package/src/assets/icons/device_protection.png +0 -0
  7. package/src/assets/icons/financial_insurance.png +0 -0
  8. package/src/assets/icons/privacy_protection.png +0 -0
  9. package/src/assets/icons/user_guide.png +0 -0
  10. package/src/components/Button/Button.js +19 -16
  11. package/src/components/Button/button.css.js +18 -16
  12. package/src/components/Button/icons.js +8 -8
  13. package/src/components/FAQ/faq.css.js +48 -49
  14. package/src/components/FAQ/faq.js +0 -86
  15. package/src/components/Input/Input.js +68 -6
  16. package/src/components/Input/custom-form.stories.js +88 -0
  17. package/src/components/Input/input-clipboard.css.js +168 -0
  18. package/src/components/Input/input-clipboard.js +137 -0
  19. package/src/components/Input/input.css.js +122 -42
  20. package/src/components/accordion/accordion-bg.css.js +117 -0
  21. package/src/components/accordion/accordion-bg.js +80 -0
  22. package/src/components/accordion/accordion-no-bg.css.js +114 -0
  23. package/src/components/accordion/accordion-no-bg.js +80 -0
  24. package/src/components/accordion/accordion.css.js +88 -0
  25. package/src/components/accordion/accordion.js +81 -0
  26. package/src/components/anchor/anchor-nav.css.js +15 -15
  27. package/src/components/anchor/anchor-nav.js +0 -1
  28. package/src/components/anchor/anchor.stories.js +10 -13
  29. package/src/components/badge/badge.css.js +6 -6
  30. package/src/components/badge/badge.js +1 -2
  31. package/src/components/badge/badge.stories.js +6 -6
  32. package/src/components/carousel/carousel.css.js +60 -60
  33. package/src/components/carousel/carousel.js +26 -30
  34. package/src/components/carousel/carousel.stories.js +55 -55
  35. package/src/components/checkbox/checkbox.css.js +14 -14
  36. package/src/components/divider/divider-horizontal.js +19 -14
  37. package/src/components/divider/divider-vertical.js +23 -14
  38. package/src/components/divider/divider.css.js +19 -0
  39. package/src/components/dropdown/dropdown.css.js +138 -0
  40. package/src/components/dropdown/dropdown.js +111 -0
  41. package/src/components/footer/footer-links-group.css.js +42 -0
  42. package/src/components/footer/footer-links-group.js +25 -0
  43. package/src/components/footer/footer-lp.css.js +625 -0
  44. package/src/components/footer/footer-lp.js +368 -0
  45. package/src/components/footer/footer-lp.stories.js +69 -0
  46. package/src/components/footer/footer-nav-menu.css.js +24 -0
  47. package/src/components/footer/footer-nav-menu.js +36 -0
  48. package/src/components/footer/footer.css.js +625 -0
  49. package/src/components/footer/footer.js +465 -0
  50. package/src/components/footer/footer.stories.js +60 -0
  51. package/src/components/footer/localeMap.js +1 -0
  52. package/src/components/grid/grid.css.js +38 -0
  53. package/src/components/grid/grid.js +55 -0
  54. package/src/components/header/header.css.js +81 -52
  55. package/src/components/header/header.js +19 -19
  56. package/src/components/highlight/highlight.css.js +32 -22
  57. package/src/components/highlight/highlight.js +15 -4
  58. package/src/components/highlight/highlight.stories.js +4 -4
  59. package/src/components/light-carousel/light-carousel-simple.css.js +183 -0
  60. package/src/components/light-carousel/light-carousel-simple.js +73 -0
  61. package/src/components/light-carousel/light-carousel.css.js +50 -31
  62. package/src/components/light-carousel/light-carousel.js +14 -57
  63. package/src/components/light-carousel/light-carousel.stories.js +51 -10
  64. package/src/components/link/link.css.js +41 -0
  65. package/src/components/link/link.js +54 -0
  66. package/src/components/modal/modal.css.js +75 -0
  67. package/src/components/modal/modal.js +41 -0
  68. package/src/components/modal/modal.stories.js +40 -0
  69. package/src/components/paragraph/paragraph.css.js +1 -3
  70. package/src/components/pricing-cards/new-pricing-card.js +30 -0
  71. package/src/components/pricing-cards/new-pricing.css.js +58 -0
  72. package/src/components/pricing-cards/pricing-card-actions.css.js +16 -0
  73. package/src/components/pricing-cards/pricing-card-actions.js +20 -0
  74. package/src/components/pricing-cards/pricing-card-container.css.js +41 -0
  75. package/src/components/pricing-cards/pricing-card-container.js +31 -0
  76. package/src/components/pricing-cards/pricing-card-header.css.js +70 -0
  77. package/src/components/pricing-cards/pricing-card-header.js +46 -0
  78. package/src/components/pricing-cards/pricing-card-pricing.css.js +63 -0
  79. package/src/components/pricing-cards/pricing-card-pricing.js +101 -0
  80. package/src/components/pricing-cards/pricing-card-show-more.css.js +22 -0
  81. package/src/components/pricing-cards/pricing-card-show-more.js +33 -0
  82. package/src/components/pricing-cards/pricing-card.css.js +91 -89
  83. package/src/components/pricing-cards/pricing-card.js +13 -16
  84. package/src/components/pricing-cards/pricing-feature-item.css.js +18 -0
  85. package/src/components/pricing-cards/pricing-feature-item.js +14 -0
  86. package/src/components/radio/radio.css.js +18 -18
  87. package/src/components/radio/radio.js +1 -0
  88. package/src/components/tabs/tabs.css.js +21 -11
  89. package/src/components/tabs/tabs.js +24 -18
  90. package/src/components/termsOfUse/terms.css.js +6 -6
  91. package/src/components/termsOfUse/terms.js +0 -1
  92. package/src/stories/demo.stories.js +271 -0
  93. package/src/tokens/colors.js +10 -10
  94. package/src/tokens/fonts.css +166 -0
  95. package/src/tokens/fonts.stories.js +5 -5
  96. package/src/tokens/layout.css +4 -3
  97. package/src/tokens/new-tokens.css +698 -0
  98. package/src/tokens/spacing.stories.js +1 -1
  99. package/src/tokens/tokens.css +1063 -0
  100. package/src/tokens/tokens.js +0 -133
  101. package/src/tokens/tokens.stories.js +3 -3
  102. package/src/tokens/typography.css.js +0 -4
  103. package/src/tokens/typography.stories.js +2 -2
  104. package/src/components/Input/index.js +0 -0
  105. package/src/components/highlight/highlight-s.css.js +0 -88
  106. package/src/components/highlight/highlight-s.js +0 -35
  107. package/src/components/highlight/highlight-s.stories.js +0 -22
@@ -23,12 +23,12 @@ export default css`
23
23
  }
24
24
 
25
25
  .bd-section-title {
26
- font-family: var(--font-family-sans);
27
- font-weight: var(--font-weight-sans-semibold);
26
+ font-family: var(--typography-fontFamily-sans);
27
+ font-weight: var(--typography-fontWeight-semibold);
28
28
  font-size: 2em;
29
29
  }
30
30
  div.bd-arrow {
31
- padding: var(--size-2);
31
+ padding: var(--spacing-2);
32
32
  visibility: visible;
33
33
  }
34
34
 
@@ -36,8 +36,8 @@ export default css`
36
36
  .bd-arrow:focus-visible,
37
37
  .bd-plus-button:focus-visible,
38
38
  .bd-modal-content button:focus-visible {
39
- outline: var(--size-2) solid var(--bd-accesibility-focus);
40
- outline-offset: var(--size-2);
39
+ outline: var(--spacing-2) solid var(--bd-accesibility-focus);
40
+ outline-offset: var(--spacing-2);
41
41
  }
42
42
 
43
43
  .bd-header-carousel {
@@ -55,59 +55,59 @@ export default css`
55
55
  }
56
56
  .bd-arrow {
57
57
  border-radius: 50%;
58
- width: var(--size-44);
59
- height: var(--size-44);
58
+ width: var(--spacing-44);
59
+ height: var(--spacing-44);
60
60
  display: flex;
61
61
  align-items: center;
62
62
  justify-content: center;
63
63
  cursor: pointer;
64
- box-shadow: var(--size-0) var(--size-2) var(--size-4) rgba(0, 0, 0, 0.1);
64
+ box-shadow: var(--spacing-0) var(--spacing-2) var(--spacing-4) rgba(0, 0, 0, 0.1);
65
65
  position: absolute;
66
66
  bottom: -65px;
67
67
  background: var(--bd-blue-color);
68
68
  color: white;
69
- font-size: var(--size-20);
69
+ font-size: var(--spacing-20);
70
70
  line-height: 1;
71
71
  text-align: center;
72
72
  }
73
73
 
74
74
  .bd-left-arrow {
75
- content: url("icons/left_normal.png");
75
+ content: url("/assets/left_normal.png");
76
76
  }
77
77
 
78
78
  .bd-left-arrow:hover {
79
- content: url("icons/left_hover.png");
79
+ content: url("/assets/left_hover.png");
80
80
  }
81
81
 
82
82
  .bd-left-arrow:active {
83
- content: url("icons/left_clicked.png");
83
+ content: url("/assets/left_clicked.png");
84
84
  }
85
85
 
86
86
  .bd-left-arrow:disabled {
87
- content: url("icons/left_disabled.png");
87
+ content: url("/assets/left_disabled.png");
88
88
  }
89
89
 
90
90
  .bd-right-arrow {
91
- content: url("icons/right_normal.png");
91
+ content: url("/assets/right_normal.png");
92
92
  }
93
93
 
94
94
  .bd-right-arrow:hover {
95
- content: url("icons/right_hover.png");
95
+ content: url("/assets/right_hover.png");
96
96
  }
97
97
 
98
98
  .bd-right-arrow:active {
99
- content: url("icons/right_clicked.png");
99
+ content: url("/assets/right_clicked.png");
100
100
  }
101
101
 
102
102
  .bd-right-arrow:disabled {
103
- content: url("icons/right_disabled.png");
103
+ content: url("/assets/right_disabled.png");
104
104
  }
105
105
  .bd-right-arrow.bd-disabled {
106
- content: url("icons/right_disabled.png");
106
+ content: url("/assets/right_disabled.png");
107
107
  cursor: not-allowed;
108
108
  }
109
109
  .bd-left-arrow.bd-disabled {
110
- content: url("icons/left_disabled.png");
110
+ content: url("/assets/left_disabled.png");
111
111
  cursor: not-allowed;
112
112
  }
113
113
  .bd-disabled {
@@ -121,14 +121,14 @@ export default css`
121
121
  }
122
122
 
123
123
  .bd-arrow:last-of-type {
124
- right: var(--size-10);
124
+ right: var(--spacing-10);
125
125
  }
126
126
 
127
127
  .bd-carousel-track {
128
128
  display: flex;
129
129
  gap: 2em;
130
130
  flex: 1;
131
- padding: var(--size-0) var(--size-20);
131
+ padding: var(--spacing-0) var(--spacing-20);
132
132
  position: relative;
133
133
  overflow-x: hidden;
134
134
  overflow-y: hidden;
@@ -141,15 +141,15 @@ export default css`
141
141
  .bd-carousel-icon {
142
142
  position: relative;
143
143
  max-width: 100%;
144
- height: var(--size-40);
145
- width: var(--size-40);
144
+ height: var(--spacing-40);
145
+ width: var(--spacing-40);
146
146
  }
147
147
  .bd-carousel-modal-icon {
148
148
  position: relative;
149
149
  bottom: 15px;
150
150
  max-width: 100%;
151
- height: var(--size-40);
152
- width: var(--size-40);
151
+ height: var(--spacing-40);
152
+ width: var(--spacing-40);
153
153
  }
154
154
  .bd-box {
155
155
  flex: 0 0 auto;
@@ -158,7 +158,7 @@ export default css`
158
158
  width: 350px;
159
159
  background: var(--background-card-grey);
160
160
  border-radius: 28px;
161
- border: var(--size-2) solid var(--border-card-grey);
161
+ border: var(--spacing-2) solid var(--border-card-grey);
162
162
  padding: 2em;
163
163
  display: flex;
164
164
  flex-direction: column;
@@ -167,28 +167,28 @@ export default css`
167
167
  text-align: start;
168
168
  cursor: pointer;
169
169
  transition: transform 0.2s ease-in-out;
170
- font-family: var(--font-family-sans);
170
+ font-family: var(--typography-fontFamily-sans);
171
171
  position: relative;
172
172
  z-index: 2;
173
173
  }
174
174
 
175
175
  .bd-box h3 {
176
- font-size: var(--size-18);
177
- margin: var(--size-0) var(--size-0) 0.5em var(--size-0);
176
+ font-size: var(--spacing-18);
177
+ margin: var(--spacing-0) var(--spacing-0) 0.5em var(--spacing-0);
178
178
  font-weight: 600;
179
- font-family: var(--font-family-sans);
179
+ font-family: var(--typography-fontFamily-sans);
180
180
  }
181
181
 
182
182
  .bd-box p {
183
- font-size: var(--size-16);
184
- margin: var(--size-0) var(--size-0) 1em var(--size-0);
185
- font-family: var(--font-family-sans);
183
+ font-size: var(--spacing-16);
184
+ margin: var(--spacing-0) var(--spacing-0) 1em var(--spacing-0);
185
+ font-family: var(--typography-fontFamily-sans);
186
186
  }
187
187
 
188
188
  .bd-modal {
189
189
  position: fixed;
190
- top: var(--size-0);
191
- left: var(--size-0);
190
+ top: var(--spacing-0);
191
+ left: var(--spacing-0);
192
192
  width: 100%;
193
193
  height: 100%;
194
194
  background: rgba(0, 0, 0, 0.5);
@@ -196,7 +196,7 @@ export default css`
196
196
  justify-content: center;
197
197
  align-items: center;
198
198
  z-index: 9999;
199
- backdrop-filter: blur(var(--size-12));
199
+ backdrop-filter: blur(var(--spacing-12));
200
200
  opacity: 0;
201
201
  transform: scale(0.9);
202
202
  transition: opacity 0.3s ease, transform 0.3s ease;
@@ -210,16 +210,16 @@ export default css`
210
210
  .bd-modal-content {
211
211
  background: #fff;
212
212
  padding: 2em;
213
- border-radius: var(--size-12);
213
+ border-radius: var(--spacing-12);
214
214
  max-width: 500px;
215
215
  text-align: start;
216
- box-shadow: var(--size-0) var(--size-2) var(--size-8) rgba(0, 0, 0, 0.2);
217
- font-family: var(--font-family-sans);
216
+ box-shadow: var(--spacing-0) var(--spacing-2) var(--spacing-8) rgba(0, 0, 0, 0.2);
217
+ font-family: var(--typography-fontFamily-sans);
218
218
  }
219
219
 
220
220
  .bd-modal-content h2 {
221
- margin: var(--size-0) var(--size-0) 1em var(--size-0);
222
- font-family: var(--font-family-sans);
221
+ margin: var(--spacing-0) var(--spacing-0) 1em var(--spacing-0);
222
+ font-family: var(--typography-fontFamily-sans);
223
223
  }
224
224
 
225
225
  .bd-modal-content button {
@@ -228,19 +228,19 @@ export default css`
228
228
  background: var(--bd-blue-color);
229
229
  color: #fff;
230
230
  border: none;
231
- border-radius: var(--size-8);
231
+ border-radius: var(--spacing-8);
232
232
  cursor: pointer;
233
- font-family: var(--font-family-sans);
233
+ font-family: var(--typography-fontFamily-sans);
234
234
  }
235
235
 
236
236
  .bd-plus-button {
237
- content: url("icons/more_normal.png");
237
+ content: url("/assets/more_normal.png");
238
238
  position: absolute;
239
- bottom: var(--size-10);
240
- right: var(--size-10);
239
+ bottom: var(--spacing-10);
240
+ right: var(--spacing-10);
241
241
  color: var(--bd-blue-color);
242
- width: var(--size-44);
243
- height: var(--size-44);
242
+ width: var(--spacing-44);
243
+ height: var(--spacing-44);
244
244
  display: flex;
245
245
  align-items: center;
246
246
  justify-content: center;
@@ -250,23 +250,23 @@ export default css`
250
250
  cursor: pointer;
251
251
  }
252
252
  .bd-plus-button:hover {
253
- content: url("icons/more_hover.png");
253
+ content: url("/assets/more_hover.png");
254
254
  }
255
255
 
256
256
  bd-carousel-item::part(content) {
257
- font-family: var(--font-family-sans);
257
+ font-family: var(--typography-fontFamily-sans);
258
258
  }
259
259
 
260
260
  .bd-plus-button:active {
261
- content: url("icons/more_pressed.png");
261
+ content: url("/assets/more_pressed.png");
262
262
  }
263
263
 
264
264
  .bd-left-arrow {
265
- margin-right: var(--size-6);
265
+ margin-right: var(--spacing-6);
266
266
  }
267
267
 
268
268
  .bd-right-arrow {
269
- margin-left: var(--size-6);
269
+ margin-left: var(--spacing-6);
270
270
  }
271
271
 
272
272
  @media (max-width: 768px) {
@@ -274,12 +274,12 @@ export default css`
274
274
  flex-wrap: nowrap;
275
275
  overflow-x: hidden;
276
276
  gap: 1em;
277
- padding: var(--size-0) var(--size-0);
277
+ padding: var(--spacing-0) var(--spacing-0);
278
278
  }
279
279
 
280
280
  .bd-box {
281
281
  max-width: 100%;
282
- margin: var(--size-0) auto;
282
+ margin: var(--spacing-0) auto;
283
283
  }
284
284
 
285
285
  .bd-modal-content {
@@ -289,7 +289,7 @@ export default css`
289
289
 
290
290
  .bd-arrow {
291
291
  bottom: -75px;
292
- font-size: var(--size-16);
292
+ font-size: var(--spacing-16);
293
293
  }
294
294
 
295
295
  .bd-arrow:first-of-type {
@@ -297,13 +297,13 @@ export default css`
297
297
  }
298
298
 
299
299
  .bd-arrow:last-of-type {
300
- right: var(--size-6);
300
+ right: var(--spacing-6);
301
301
  }
302
302
  }
303
303
 
304
304
  @media (max-width: 480px) {
305
305
  .bd-box {
306
- padding: var(--size-0) var(--size-20);
306
+ padding: var(--spacing-0) var(--spacing-20);
307
307
  min-height: 300px;
308
308
  }
309
309
 
@@ -312,10 +312,10 @@ export default css`
312
312
  }
313
313
 
314
314
  .bd-plus-icon {
315
- font-size: var(--size-24);
315
+ font-size: var(--spacing-24);
316
316
  }
317
317
  .bd-carousel-icon {
318
- bottom: var(--size-10);
318
+ bottom: var(--spacing-10);
319
319
  }
320
320
  }
321
321
  `;
@@ -1,6 +1,7 @@
1
1
  import { LitElement, html } from "lit";
2
2
  import { tokens } from "../../tokens/tokens.js";
3
3
  import carouselCSS from "../carousel/carousel.css.js";
4
+ import "../modal/modal.js";
4
5
 
5
6
  export class CarouselItem extends LitElement {
6
7
  static properties = {
@@ -89,18 +90,28 @@ class CustomCarousel extends LitElement {
89
90
 
90
91
  const arrows = this.shadowRoot.querySelectorAll(".bd-arrow");
91
92
  arrows.forEach((arrow) => {
92
- arrow.addEventListener("mousedown", () => arrow.classList.add("bd-active"));
93
- arrow.addEventListener("mouseup", () => arrow.classList.remove("bd-active"));
94
- arrow.addEventListener("mouseleave", () => arrow.classList.remove("bd-active"));
93
+ arrow.addEventListener("mousedown", () =>
94
+ arrow.classList.add("bd-active")
95
+ );
96
+ arrow.addEventListener("mouseup", () =>
97
+ arrow.classList.remove("bd-active")
98
+ );
99
+ arrow.addEventListener("mouseleave", () =>
100
+ arrow.classList.remove("bd-active")
101
+ );
95
102
  arrow.addEventListener("keydown", (e) => this._onArrowKeydown(e, arrow));
96
103
  });
97
104
 
98
- this.addEventListener("open-modal", (e) => this.openModal(e.detail));
105
+ this.addEventListener("open-modal", (e) => {
106
+ this.openModal(e.detail);
107
+ });
99
108
  this.enableDragAndTouchScroll(this.track);
100
109
  }
101
110
 
102
111
  waitForImagesToLoad() {
103
- const assignedElements = this.slotElement.assignedElements({ flatten: true });
112
+ const assignedElements = this.slotElement.assignedElements({
113
+ flatten: true
114
+ });
104
115
  const images = assignedElements
105
116
  .map((el) => el.shadowRoot?.querySelector("img"))
106
117
  .filter((img) => img);
@@ -118,7 +129,9 @@ class CustomCarousel extends LitElement {
118
129
  }
119
130
 
120
131
  scrollCarousel(direction) {
121
- const assignedElements = this.slotElement.assignedElements({ flatten: true });
132
+ const assignedElements = this.slotElement.assignedElements({
133
+ flatten: true
134
+ });
122
135
  if (!assignedElements.length) return;
123
136
  const itemWidth = assignedElements[0].offsetWidth || 300;
124
137
  if (!this.track) return;
@@ -241,30 +254,13 @@ class CustomCarousel extends LitElement {
241
254
 
242
255
  ${this.selectedItem
243
256
  ? html`
244
- <div
245
- class="bd-modal"
246
- @click="${this.closeModal}"
247
- aria-hidden="${!this.selectedItem}"
248
- ?open="${true}"
249
- >
250
- <div
251
- class="bd-modal-content"
252
- @click="${(e) => e.stopPropagation()}"
253
- aria-labelledby="modal-title"
254
- aria-describedby="modal-description"
255
- >
256
- <img
257
- src="${this.selectedItem.icon}"
258
- alt="icon"
259
- class="bd-carousel-modal-icon"
260
- />
261
- <h2 id="modal-title">${this.selectedItem.title}</h2>
262
- <p id="modal-description">${this.selectedItem.modalText}</p>
263
- <button @click="${this.closeModal}" aria-label="Close modal">
264
- Close
265
- </button>
266
- </div>
267
- </div>
257
+ <bd-modal
258
+ .open="${!!this.selectedItem}"
259
+ .title="${this.selectedItem.title}"
260
+ .modalText="${this.selectedItem.modalText}"
261
+ .icon="${this.selectedItem.icon}"
262
+ @close-modal="${this.closeModal}"
263
+ ></bd-modal>
268
264
  `
269
265
  : ""}
270
266
  `;
@@ -2,75 +2,75 @@ import { html } from "lit";
2
2
  import "./carousel.js";
3
3
 
4
4
  export default {
5
- title: "Components/Carousel Section",
5
+ title : "Components/Carousel Section",
6
6
  component: "bd-carousel-section",
7
- tags: ["autodocs"],
8
- argTypes: {
7
+ tags : ["autodocs"],
8
+ argTypes : {
9
9
  title: { control: "text" },
10
10
 
11
11
  // Item 1
12
- item1Title: { control: "text", name: "Item 1 Title" },
13
- item1SubTitle: { control: "text", name: "Item 1 SubTitle" },
12
+ item1Title : { control: "text", name: "Item 1 Title" },
13
+ item1SubTitle : { control: "text", name: "Item 1 SubTitle" },
14
14
  item1ModalText: { control: "text", name: "Item 1 Modal Text" },
15
- item1Icon: { control: "text", name: "Item 1 Icon" },
16
- item1Content: { control: "text", name: "Item 1 Content (use \\n\\n for paragraphs)" },
15
+ item1Icon : { control: "text", name: "Item 1 Icon" },
16
+ item1Content : { control: "text", name: "Item 1 Content (use \\n\\n for paragraphs)" },
17
17
 
18
18
  // Item 2
19
- item2Title: { control: "text", name: "Item 2 Title" },
20
- item2SubTitle: { control: "text", name: "Item 2 SubTitle" },
19
+ item2Title : { control: "text", name: "Item 2 Title" },
20
+ item2SubTitle : { control: "text", name: "Item 2 SubTitle" },
21
21
  item2ModalText: { control: "text", name: "Item 2 Modal Text" },
22
- item2Icon: { control: "text", name: "Item 2 Icon" },
23
- item2Content: { control: "text", name: "Item 2 Content (use \\n\\n for paragraphs)" },
22
+ item2Icon : { control: "text", name: "Item 2 Icon" },
23
+ item2Content : { control: "text", name: "Item 2 Content (use \\n\\n for paragraphs)" },
24
24
 
25
25
  // Item 3
26
- item3Title: { control: "text", name: "Item 3 Title" },
27
- item3SubTitle: { control: "text", name: "Item 3 SubTitle" },
26
+ item3Title : { control: "text", name: "Item 3 Title" },
27
+ item3SubTitle : { control: "text", name: "Item 3 SubTitle" },
28
28
  item3ModalText: { control: "text", name: "Item 3 Modal Text" },
29
- item3Icon: { control: "text", name: "Item 3 Icon" },
30
- item3Content: { control: "text", name: "Item 3 Content (use \\n\\n for paragraphs)" },
29
+ item3Icon : { control: "text", name: "Item 3 Icon" },
30
+ item3Content : { control: "text", name: "Item 3 Content (use \\n\\n for paragraphs)" },
31
31
 
32
32
  // Item 4
33
- item4Title: { control: "text", name: "Item 4 Title" },
34
- item4SubTitle: { control: "text", name: "Item 4 SubTitle" },
33
+ item4Title : { control: "text", name: "Item 4 Title" },
34
+ item4SubTitle : { control: "text", name: "Item 4 SubTitle" },
35
35
  item4ModalText: { control: "text", name: "Item 4 Modal Text" },
36
- item4Icon: { control: "text", name: "Item 4 Icon" },
37
- item4Content: { control: "text", name: "Item 4 Content (use \\n\\n for paragraphs)" },
36
+ item4Icon : { control: "text", name: "Item 4 Icon" },
37
+ item4Content : { control: "text", name: "Item 4 Content (use \\n\\n for paragraphs)" },
38
38
 
39
39
  // Item 5
40
- item5Title: { control: "text", name: "Item 5 Title" },
41
- item5SubTitle: { control: "text", name: "Item 5 SubTitle" },
40
+ item5Title : { control: "text", name: "Item 5 Title" },
41
+ item5SubTitle : { control: "text", name: "Item 5 SubTitle" },
42
42
  item5ModalText: { control: "text", name: "Item 5 Modal Text" },
43
- item5Icon: { control: "text", name: "Item 5 Icon" },
44
- item5Content: { control: "text", name: "Item 5 Content (use \\n\\n for paragraphs)" },
43
+ item5Icon : { control: "text", name: "Item 5 Icon" },
44
+ item5Content : { control: "text", name: "Item 5 Content (use \\n\\n for paragraphs)" },
45
45
 
46
46
  // Item 6
47
- item6Title: { control: "text", name: "Item 6 Title" },
48
- item6SubTitle: { control: "text", name: "Item 6 SubTitle" },
47
+ item6Title : { control: "text", name: "Item 6 Title" },
48
+ item6SubTitle : { control: "text", name: "Item 6 SubTitle" },
49
49
  item6ModalText: { control: "text", name: "Item 6 Modal Text" },
50
- item6Icon: { control: "text", name: "Item 6 Icon" },
51
- item6Content: { control: "text", name: "Item 6 Content (use \\n\\n for paragraphs)" },
50
+ item6Icon : { control: "text", name: "Item 6 Icon" },
51
+ item6Content : { control: "text", name: "Item 6 Content (use \\n\\n for paragraphs)" },
52
52
 
53
53
  // Item 7
54
- item7Title: { control: "text", name: "Item 7 Title" },
55
- item7SubTitle: { control: "text", name: "Item 7 SubTitle" },
54
+ item7Title : { control: "text", name: "Item 7 Title" },
55
+ item7SubTitle : { control: "text", name: "Item 7 SubTitle" },
56
56
  item7ModalText: { control: "text", name: "Item 7 Modal Text" },
57
- item7Icon: { control: "text", name: "Item 7 Icon" },
58
- item7Content: { control: "text", name: "Item 7 Content (use \\n\\n for paragraphs)" },
57
+ item7Icon : { control: "text", name: "Item 7 Icon" },
58
+ item7Content : { control: "text", name: "Item 7 Content (use \\n\\n for paragraphs)" },
59
59
 
60
60
  // Item 8
61
- item8Title: { control: "text", name: "Item 8 Title" },
62
- item8SubTitle: { control: "text", name: "Item 8 SubTitle" },
61
+ item8Title : { control: "text", name: "Item 8 Title" },
62
+ item8SubTitle : { control: "text", name: "Item 8 SubTitle" },
63
63
  item8ModalText: { control: "text", name: "Item 8 Modal Text" },
64
- item8Icon: { control: "text", name: "Item 8 Icon" },
65
- item8Content: { control: "text", name: "Item 8 Content (use \\n\\n for paragraphs)" },
66
- },
64
+ item8Icon : { control: "text", name: "Item 8 Icon" },
65
+ item8Content : { control: "text", name: "Item 8 Content (use \\n\\n for paragraphs)" }
66
+ }
67
67
  };
68
68
 
69
69
  const renderParagraphs = (text) =>
70
70
  text
71
71
  ? text.split("\n\n").map(
72
- (paragraph) => html`<p>${paragraph}</p>`
73
- )
72
+ (paragraph) => html`<p>${paragraph}</p>`
73
+ )
74
74
  : null;
75
75
 
76
76
  const Template = (args) => html`
@@ -166,21 +166,21 @@ Default.args = {
166
166
  "Specialized AI chatbot that helps you identify suspicious online interactions so you don’t become a victim",
167
167
  item1ModalText:
168
168
  "Specialized AI chatbot that helps you identify suspicious online interactions so you don’t become a victim",
169
- item1Icon: "icons/light-carousel-img1.png",
169
+ item1Icon : "/assets/light-carousel-img1.png",
170
170
  item1Content: `Specialized AI chatbot that helps you identify suspicious online interactions so you don’t become a victim.\n\nSpecialized AI chatbot that helps you identify suspicious online interactions so you don’t become a victim.\n\nTest Scam Copilot Bot`,
171
171
 
172
- item2Title: "Scam Wave Alerts",
173
- item2SubTitle: "Proactively informs you about scam outbreaks in your region",
172
+ item2Title : "Scam Wave Alerts",
173
+ item2SubTitle : "Proactively informs you about scam outbreaks in your region",
174
174
  item2ModalText: "Proactively informs you about scam outbreaks in your region",
175
- item2Icon: "icons/light-carousel-img1.png",
176
- item2Content: "Proactively informs you about scam outbreaks in your region.",
175
+ item2Icon : "/assets/light-carousel-img1.png",
176
+ item2Content : "Proactively informs you about scam outbreaks in your region.",
177
177
 
178
178
  item3Title: "AI-Powered Scam Check",
179
179
  item3SubTitle:
180
180
  "AI-driven tool that instantly evaluates the legitimacy of any link, message, or online interaction",
181
181
  item3ModalText:
182
182
  "AI-driven tool that instantly evaluates the legitimacy of any link, message, or online interaction",
183
- item3Icon: "icons/light-carousel-img1.png",
183
+ item3Icon: "/assets/light-carousel-img1.png",
184
184
  item3Content:
185
185
  "AI-driven tool that instantly evaluates the legitimacy of any link, message, or online interaction.",
186
186
 
@@ -189,7 +189,7 @@ Default.args = {
189
189
  "Access a wealth of information and best practices to stay informed and vigilant against scams",
190
190
  item4ModalText:
191
191
  "Access a wealth of information and best practices to stay informed and vigilant against scams",
192
- item4Icon: "icons/light-carousel-img1.png",
192
+ item4Icon: "/assets/light-carousel-img1.png",
193
193
  item4Content:
194
194
  "Access a wealth of information and best practices to stay informed and vigilant against scams.",
195
195
 
@@ -198,7 +198,7 @@ Default.args = {
198
198
  "Simulates phishing attacks to help you recognize and respond appropriately to real threats",
199
199
  item5ModalText:
200
200
  "Simulates phishing attacks to help you recognize and respond appropriately to real threats",
201
- item5Icon: "icons/light-carousel-img1.png",
201
+ item5Icon: "/assets/light-carousel-img1.png",
202
202
  item5Content:
203
203
  "Simulates phishing attacks to help you recognize and respond appropriately to real threats.",
204
204
 
@@ -207,7 +207,7 @@ Default.args = {
207
207
  "Stay ahead with up-to-the-minute alerts on the latest scams targeting your region or industry",
208
208
  item6ModalText:
209
209
  "Stay ahead with up-to-the-minute alerts on the latest scams targeting your region or industry",
210
- item6Icon: "icons/light-carousel-img1.png",
210
+ item6Icon: "/assets/light-carousel-img1.png",
211
211
  item6Content:
212
212
  "Stay ahead with up-to-the-minute alerts on the latest scams targeting your region or industry.",
213
213
 
@@ -216,14 +216,14 @@ Default.args = {
216
216
  "A platform where users can report scams and share experiences to help protect others",
217
217
  item7ModalText:
218
218
  "A platform where users can report scams and share experiences to help protect others",
219
- item7Icon: "icons/light-carousel-img1.png",
220
- item7Content:"A platform where users can report scams and share experiences to help protect others.",
221
- item8Title: "Fraud Prevention Workshops",
222
- item8SubTitle:
219
+ item7Icon : "/assets/light-carousel-img1.png",
220
+ item7Content: "A platform where users can report scams and share experiences to help protect others.",
221
+ item8Title : "Fraud Prevention Workshops",
222
+ item8SubTitle:
223
223
  "Interactive workshops that educate users on identifying and avoiding scams",
224
- item8ModalText:
224
+ item8ModalText:
225
225
  "Interactive workshops that educate users on identifying and avoiding scams",
226
- item8Icon: "icons/light-carousel-img1.png",
227
- item8Content:
228
- "Interactive workshops that educate users on identifying and avoiding scams.",
226
+ item8Icon: "/assets/light-carousel-img1.png",
227
+ item8Content:
228
+ "Interactive workshops that educate users on identifying and avoiding scams."
229
229
  };
@@ -10,7 +10,7 @@ export default css`
10
10
  display: inline-flex;
11
11
  align-items: center;
12
12
  cursor: pointer;
13
- gap: var(--size-8);
13
+ gap: var(--spacing-8);
14
14
  font-family: sans-serif;
15
15
  font-size: 14px;
16
16
  vertical-align: middle;
@@ -30,9 +30,9 @@ export default css`
30
30
 
31
31
  /* Checkbox */
32
32
  .bd-checkbox .bd-outer {
33
- width: var(--size-22);
34
- height: var(--size-22);
35
- border: var(--size-2) solid var(--color-blue-500);
33
+ width: var(--spacing-22);
34
+ height: var(--spacing-22);
35
+ border: var(--spacing-2) solid var(--color-blue-500);
36
36
  border-radius: 4px;
37
37
  display: flex;
38
38
  align-items: center;
@@ -43,10 +43,10 @@ export default css`
43
43
  }
44
44
 
45
45
  .bd-checkbox .bd-inner {
46
- width: var(--size-12);
47
- height: var(--size-12);
46
+ width: var(--spacing-12);
47
+ height: var(--spacing-12);
48
48
  background-color: var(--color-blue-500);
49
- border-radius: var(--size-2);
49
+ border-radius: var(--spacing-2);
50
50
  transform: scale(0);
51
51
  transition: transform 0.2s ease, background-color 0.2s ease;
52
52
  }
@@ -56,9 +56,9 @@ export default css`
56
56
  }
57
57
 
58
58
  .bd-radio .bd-outer {
59
- width: var(--size-22);
60
- height: var(--size-22);
61
- border: var(--size-2) solid var(--color-blue-500);
59
+ width: var(--spacing-22);
60
+ height: var(--spacing-22);
61
+ border: var(--spacing-2) solid var(--color-blue-500);
62
62
  border-radius: 50%;
63
63
  display: flex;
64
64
  align-items: center;
@@ -69,8 +69,8 @@ export default css`
69
69
  }
70
70
 
71
71
  .bd-radio .bd-inner {
72
- width: var(--size-12);
73
- height: var(--size-12);
72
+ width: var(--spacing-12);
73
+ height: var(--spacing-12);
74
74
  background-color: var(--color-blue-500);
75
75
  border-radius: 50%;
76
76
  transform: scale(0);
@@ -112,8 +112,8 @@ export default css`
112
112
  }
113
113
 
114
114
  .bd-checkbox .bd-outer:focus-visible {
115
- outline: var(--size-2) solid var(--color-blue-500);
116
- outline-offset: var(--size-2);
115
+ outline: var(--spacing-2) solid var(--color-blue-500);
116
+ outline-offset: var(--spacing-2);
117
117
  }
118
118
  .bd-checkbox .bd-outer.checked:focus-visible {
119
119
  border-color: var(--color-blue-700);