@repobit/dex-system-design 0.9.0 → 0.10.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.
@@ -1,4 +1,5 @@
1
- import { LitElement, html, css } from "lit";
1
+ import { LitElement, html } from "lit";
2
+ import { tokens } from "../../tokens/tokens.js";
2
3
  import pricingCardsCSS from "../pricing-cards/pricing-card.css.js";
3
4
 
4
5
  import "/src/components/Button/Button.js";
@@ -6,8 +7,8 @@ import "/src/components/Button/Button.js";
6
7
  class PricingContainer extends LitElement {
7
8
  static properties = {
8
9
  planType: { type: String },
9
- locale: { type: String },
10
- currency: { type: String },
10
+ locale : { type: String },
11
+ currency: { type: String }
11
12
  };
12
13
 
13
14
  constructor() {
@@ -31,10 +32,10 @@ class PricingContainer extends LitElement {
31
32
  if (isNaN(numericValue)) return "";
32
33
 
33
34
  const formattedValue = new Intl.NumberFormat(this.locale, {
34
- style: "currency",
35
- currency: this.currency,
35
+ style : "currency",
36
+ currency : this.currency,
36
37
  minimumFractionDigits: 2,
37
- maximumFractionDigits: 2,
38
+ maximumFractionDigits: 2
38
39
  }).format(numericValue);
39
40
 
40
41
  return formattedValue;
@@ -113,19 +114,19 @@ class PricingContainer extends LitElement {
113
114
 
114
115
  class PricingCard extends LitElement {
115
116
  static properties = {
116
- title: { type: String },
117
- price: { type: String },
118
- discount: { type: String },
119
- originalPrice: { type: String },
120
- features: { type: Boolean },
121
- privacy: { type: Boolean },
122
- highlight: { type: Boolean },
123
- identity: { type: Boolean },
117
+ title : { type: String },
118
+ price : { type: String },
119
+ discount : { type: String },
120
+ originalPrice : { type: String },
121
+ features : { type: Boolean },
122
+ privacy : { type: Boolean },
123
+ highlight : { type: Boolean },
124
+ identity : { type: Boolean },
124
125
  identityExtended: { type: Boolean },
125
- parentalControl: { type: Boolean },
126
- planType: { type: String },
127
- locale: { type: String },
128
- currency: { type: String },
126
+ parentalControl : { type: Boolean },
127
+ planType : { type: String },
128
+ locale : { type: String },
129
+ currency : { type: String }
129
130
  };
130
131
 
131
132
  constructor() {
@@ -151,8 +152,8 @@ class PricingCard extends LitElement {
151
152
  if (isNaN(numberValue)) return value;
152
153
 
153
154
  return new Intl.NumberFormat(this.locale, {
154
- style: "currency",
155
- currency: this.currency,
155
+ style : "currency",
156
+ currency: this.currency
156
157
  }).format(numberValue);
157
158
  }
158
159
  render() {
@@ -205,23 +206,23 @@ class PricingCard extends LitElement {
205
206
  </div>
206
207
  `;
207
208
  }
208
-
209
+
209
210
  }
210
211
  class PricingCardFamily extends LitElement {
211
212
  static properties = {
212
- title: { type: String },
213
- price: { type: String },
214
- discount: { type: String },
215
- originalPrice: { type: String },
216
- features: { type: Boolean },
217
- privacy: { type: Boolean },
218
- highlight: { type: Boolean },
219
- identity: { type: Boolean },
213
+ title : { type: String },
214
+ price : { type: String },
215
+ discount : { type: String },
216
+ originalPrice : { type: String },
217
+ features : { type: Boolean },
218
+ privacy : { type: Boolean },
219
+ highlight : { type: Boolean },
220
+ identity : { type: Boolean },
220
221
  identityExtended: { type: Boolean },
221
- parentalControl: { type: Boolean },
222
- planType: { type: String },
223
- locale: { type: String },
224
- currency: { type: String },
222
+ parentalControl : { type: Boolean },
223
+ planType : { type: String },
224
+ locale : { type: String },
225
+ currency : { type: String }
225
226
  };
226
227
 
227
228
  constructor() {
@@ -247,8 +248,8 @@ class PricingCardFamily extends LitElement {
247
248
  if (isNaN(numberValue)) return value;
248
249
 
249
250
  return new Intl.NumberFormat(this.locale, {
250
- style: "currency",
251
- currency: this.currency,
251
+ style : "currency",
252
+ currency: this.currency
252
253
  }).format(numberValue);
253
254
  }
254
255
  render() {
@@ -327,7 +328,7 @@ class PricingCardFamily extends LitElement {
327
328
 
328
329
  class PricingSwitch extends LitElement {
329
330
  static properties = {
330
- planType: { type: String },
331
+ planType: { type: String }
331
332
  };
332
333
 
333
334
  constructor() {
@@ -342,9 +343,9 @@ class PricingSwitch extends LitElement {
342
343
 
343
344
  this.dispatchEvent(
344
345
  new CustomEvent("plan-switch", {
345
- detail: { planType: this.planType },
346
- bubbles: true,
347
- composed: true,
346
+ detail : { planType: this.planType },
347
+ bubbles : true,
348
+ composed: true
348
349
  })
349
350
  );
350
351
  }
@@ -392,39 +393,39 @@ class PricingSwitch extends LitElement {
392
393
 
393
394
  class PricingCardFeatures extends LitElement {
394
395
  static properties = {
395
- features: { type: Array },
396
+ features: { type: Array }
396
397
  };
397
398
 
398
399
  constructor() {
399
400
  super();
400
401
  this.features = [
401
402
  {
402
- name: "Multiplatform Windows®, macOS®, Android™, iOS®",
403
+ name: "Multiplatform Windows®, macOS®, Android™, iOS®"
403
404
  },
404
405
  {
405
- name: "Multi-Awarded Antivirus, Malware, Ransomware Protection",
406
- description: "Consistent results in independent tests for 10+ years",
406
+ name : "Multi-Awarded Antivirus, Malware, Ransomware Protection",
407
+ description: "Consistent results in independent tests for 10+ years"
407
408
  },
408
409
  {
409
410
  name: "Scam Prevention & Detection",
410
411
  description:
411
- "Outsmart scammers and keep your money, your credentials, identity, and digital assets",
412
+ "Outsmart scammers and keep your money, your credentials, identity, and digital assets"
412
413
  },
413
414
  {
414
415
  name: "Cryptomining Protection",
415
416
  description:
416
- "Bad actors can make money using your hardware and power connection without your consent. Protect yourself against “leech” software!",
417
+ "Bad actors can make money using your hardware and power connection without your consent. Protect yourself against “leech” software!"
417
418
  },
418
419
  {
419
420
  name: "Innovative Email Protection",
420
421
  description:
421
- "Scans all incoming email and marks them as “safe” or “unsafe”",
422
+ "Scans all incoming email and marks them as “safe” or “unsafe”"
422
423
  },
423
424
  {
424
425
  name: "Scam Copilot",
425
426
  description:
426
- "Scam Copilot: Get protection against online scams with AI-powered anti-scam features.",
427
- },
427
+ "Scam Copilot: Get protection against online scams with AI-powered anti-scam features."
428
+ }
428
429
  ];
429
430
  }
430
431
 
@@ -455,7 +456,7 @@ class PricingCardFeatures extends LitElement {
455
456
 
456
457
  class PricingCardPrivacy extends LitElement {
457
458
  static properties = {
458
- privacy: { type: Array },
459
+ privacy: { type: Array }
459
460
  };
460
461
 
461
462
  constructor() {
@@ -465,24 +466,24 @@ class PricingCardPrivacy extends LitElement {
465
466
  name: "Password Manager 1x",
466
467
  description:
467
468
  "Ultra-secure, feature-rich password manager. The last password you will ever need for hundreds of online accounts",
468
- badge: "1x",
469
+ badge: "1x"
469
470
  },
470
471
  {
471
472
  name: "Unlimited VPN traffic 1x",
472
473
  description:
473
474
  "Keep your internet connections private & secure with VPN. Enjoy total anonymity on public & shared WI-FIs",
474
- badge: "1x",
475
+ badge: "1x"
475
476
  },
476
477
  {
477
478
  name: "Choose from 4000+ VPN servers in 50+ countries",
478
479
  description:
479
- "Our entire fleet of servers uses the latest available hardware, high-speed 10Gbps connections, and dedicated DNS servers.",
480
+ "Our entire fleet of servers uses the latest available hardware, high-speed 10Gbps connections, and dedicated DNS servers."
480
481
  },
481
482
  {
482
483
  name: "System-wide Ad blocker & Anti-tracker",
483
484
  description:
484
- "Blocks ads, hinders ad targeting, and prevents online behavior profiling.",
485
- },
485
+ "Blocks ads, hinders ad targeting, and prevents online behavior profiling."
486
+ }
486
487
  ];
487
488
  }
488
489
 
@@ -522,7 +523,7 @@ class PricingCardPrivacy extends LitElement {
522
523
 
523
524
  class PricingCardIdentify extends LitElement {
524
525
  static properties = {
525
- identity: { type: Array },
526
+ identity: { type: Array }
526
527
  };
527
528
 
528
529
  constructor() {
@@ -532,8 +533,8 @@ class PricingCardIdentify extends LitElement {
532
533
  name: "Data Breach Detection",
533
534
  description:
534
535
  "Ultra-secure, feature-rich password manager. The last password you will ever need for hundreds of online accounts",
535
- badge: "1x",
536
- },
536
+ badge: "1x"
537
+ }
537
538
  ];
538
539
  }
539
540
 
@@ -573,7 +574,7 @@ class PricingCardIdentify extends LitElement {
573
574
 
574
575
  class PricingCardIdentityExtend extends LitElement {
575
576
  static properties = {
576
- identity: { type: Array },
577
+ identity: { type: Array }
577
578
  };
578
579
 
579
580
  constructor() {
@@ -583,28 +584,28 @@ class PricingCardIdentityExtend extends LitElement {
583
584
  name: "Digital Identity Protection",
584
585
  description:
585
586
  "Don't get caught off guard by future data leaks. Every time your personal information ends up in a breach, Bitdefender Digital Identity Protection notifies you so you can act quickly and minimize the impact.",
586
- badge: "1x",
587
+ badge: "1x"
587
588
  },
588
589
  {
589
590
  name: "Data Breach Detection",
590
591
  description:
591
- "Access a comprehensive list detailing organizations that exposed your personal information and get actionable tips to address each breach and fortify your online security.",
592
+ "Access a comprehensive list detailing organizations that exposed your personal information and get actionable tips to address each breach and fortify your online security."
592
593
  },
593
594
  {
594
595
  name: "Dark Web Monitoring",
595
596
  description:
596
- "We constantly scan the web (including dark web) for unauthorized leaks of personal data and give real-time alerts so you can act quickly by changing passwords, deleting accounts, or freezing credit cards before a serious incident occurs.",
597
+ "We constantly scan the web (including dark web) for unauthorized leaks of personal data and give real-time alerts so you can act quickly by changing passwords, deleting accounts, or freezing credit cards before a serious incident occurs."
597
598
  },
598
599
  {
599
600
  name: "Digital Footprint Visualization",
600
601
  description:
601
- "Identify precisely which websites or services have compromised your sensitive information, and see how you can undo the damage.",
602
+ "Identify precisely which websites or services have compromised your sensitive information, and see how you can undo the damage."
602
603
  },
603
604
  {
604
605
  name: "Real Time Breach Notifications",
605
606
  description:
606
- "Stay one step ahead with our real-time breach notification feature. Instant alerts empower you to take immediate action, protecting your sensitive information and maintaining peace of mind effortlessly.",
607
- },
607
+ "Stay one step ahead with our real-time breach notification feature. Instant alerts empower you to take immediate action, protecting your sensitive information and maintaining peace of mind effortlessly."
608
+ }
608
609
  ];
609
610
  }
610
611
 
@@ -644,7 +645,7 @@ class PricingCardIdentityExtend extends LitElement {
644
645
 
645
646
  class PricingCardParentalControl extends LitElement {
646
647
  static properties = {
647
- parentalControl: { type: Array },
648
+ parentalControl: { type: Array }
648
649
  };
649
650
 
650
651
  constructor() {
@@ -653,32 +654,32 @@ class PricingCardParentalControl extends LitElement {
653
654
  {
654
655
  name: "Internet time limit",
655
656
  description:
656
- "Set healthy limits on the time your child can spend online on a certain device.",
657
+ "Set healthy limits on the time your child can spend online on a certain device."
657
658
  },
658
659
  {
659
660
  name: "Content filtering",
660
661
  description:
661
- "Select the content categories you want to keep away from your child.",
662
+ "Select the content categories you want to keep away from your child."
662
663
  },
663
664
  {
664
665
  name: "Routines/Schedules",
665
666
  description:
666
- "Manage your child's internet time with customizable daily limits, structured routines like Focus time, Family time and Bedtime",
667
+ "Manage your child's internet time with customizable daily limits, structured routines like Focus time, Family time and Bedtime"
667
668
  },
668
669
  {
669
- name: "Location",
670
- description: "Track child location.",
670
+ name : "Location",
671
+ description: "Track child location."
671
672
  },
672
673
  {
673
674
  name: "Rewards",
674
675
  description:
675
- "Interact with children by responding to their requests for extending daily internet time.",
676
+ "Interact with children by responding to their requests for extending daily internet time."
676
677
  },
677
678
  {
678
679
  name: "Activity reports",
679
680
  description:
680
- "Unified reporting and easier management across all devices, providing you with a better overview of your child’s online activities.",
681
- },
681
+ "Unified reporting and easier management across all devices, providing you with a better overview of your child’s online activities."
682
+ }
682
683
  ];
683
684
  }
684
685
 
@@ -716,16 +717,16 @@ class PricingCardParentalControl extends LitElement {
716
717
  }
717
718
  }
718
719
 
719
- PricingCardIdentify.styles = [pricingCardsCSS];
720
- PricingCardIdentityExtend.styles = [pricingCardsCSS];
721
- PricingCardParentalControl.styles = [pricingCardsCSS];
720
+ PricingCardIdentify.styles = [tokens, pricingCardsCSS];
721
+ PricingCardIdentityExtend.styles = [tokens, pricingCardsCSS];
722
+ PricingCardParentalControl.styles = [tokens, pricingCardsCSS];
722
723
 
723
- PricingCardPrivacy.styles = [pricingCardsCSS];
724
- PricingCardFeatures.styles = [pricingCardsCSS];
725
- PricingCard.styles = [pricingCardsCSS];
726
- PricingCardFamily.styles = [pricingCardsCSS];
727
- PricingContainer.styles = [pricingCardsCSS];
728
- PricingSwitch.styles = [pricingCardsCSS];
724
+ PricingCardPrivacy.styles = [tokens, pricingCardsCSS];
725
+ PricingCardFeatures.styles = [tokens, pricingCardsCSS];
726
+ PricingCard.styles = [tokens, pricingCardsCSS];
727
+ PricingCardFamily.styles = [tokens, pricingCardsCSS];
728
+ PricingContainer.styles = [tokens, pricingCardsCSS];
729
+ PricingSwitch.styles = [tokens, pricingCardsCSS];
729
730
 
730
731
  customElements.define("pricing-card-identity", PricingCardIdentify);
731
732
  customElements.define(
@@ -1,16 +1,17 @@
1
- import { LitElement, html, css } from "lit";
1
+ import { LitElement, html } from "lit";
2
+ import { tokens } from "../../tokens/tokens.js";
2
3
  import radioCSS from "./radio.css.js";
3
4
 
4
5
  class BdRadio extends LitElement {
5
6
  static properties = {
6
- name: { type: String },
7
- value: { type: String },
8
- checked: { type: Boolean, reflect: true },
7
+ name : { type: String },
8
+ value : { type: String },
9
+ checked : { type: Boolean, reflect: true },
9
10
  disabled: { type: Boolean, reflect: true },
10
- label: { type: String },
11
+ label : { type: String }
11
12
  };
12
13
 
13
- static styles = [radioCSS];
14
+ static styles = [tokens, radioCSS];
14
15
 
15
16
  constructor() {
16
17
  super();
@@ -78,9 +79,9 @@ class BdRadio extends LitElement {
78
79
 
79
80
  this.dispatchEvent(
80
81
  new CustomEvent("change", {
81
- detail: { value: this.value },
82
- bubbles: true,
83
- composed: true,
82
+ detail : { value: this.value },
83
+ bubbles : true,
84
+ composed: true
84
85
  })
85
86
  );
86
87
  }
@@ -108,14 +109,14 @@ class BdRadio extends LitElement {
108
109
  }
109
110
 
110
111
  class BdToggleRadio extends LitElement {
111
- static styles = [radioCSS];
112
+ static styles = [tokens, radioCSS];
112
113
 
113
114
  static properties = {
114
- name: { type: String },
115
- value: { type: String },
116
- checked: { type: Boolean, reflect: true },
115
+ name : { type: String },
116
+ value : { type: String },
117
+ checked : { type: Boolean, reflect: true },
117
118
  disabled: { type: Boolean, reflect: true },
118
- label: { type: String },
119
+ label : { type: String }
119
120
  };
120
121
 
121
122
  constructor() {
@@ -157,9 +158,9 @@ class BdToggleRadio extends LitElement {
157
158
 
158
159
  this.dispatchEvent(
159
160
  new CustomEvent("change", {
160
- detail: { value: this.checked ? this.value : null },
161
- bubbles: true,
162
- composed: true,
161
+ detail : { value: this.checked ? this.value : null },
162
+ bubbles : true,
163
+ composed: true
163
164
  })
164
165
  );
165
166
  }
@@ -182,18 +183,6 @@ class BdToggleRadio extends LitElement {
182
183
  }
183
184
  }
184
185
 
185
- handleClick() {
186
- if (this.disabled) return;
187
- this.checked = !this.checked;
188
-
189
- this.dispatchEvent(
190
- new CustomEvent("change", {
191
- detail: { value: this.checked ? this.value : null },
192
- bubbles: true,
193
- composed: true,
194
- })
195
- );
196
- }
197
186
  render() {
198
187
  return html`
199
188
  <label class="bd-radio ${this.disabled ? "disabled" : ""}">
@@ -215,8 +204,8 @@ class BdToggleRadio extends LitElement {
215
204
  `;
216
205
  }
217
206
  }
218
- BdRadio.styles = [radioCSS];
219
- BdToggleRadio.styles = [radioCSS];
207
+ BdRadio.styles = [tokens, radioCSS];
208
+ BdToggleRadio.styles = [tokens, radioCSS];
220
209
 
221
210
  customElements.define("bd-toggle-radio", BdToggleRadio);
222
211
  customElements.define("bd-radio", BdRadio);
@@ -1,11 +1,11 @@
1
- import { LitElement, html, css } from "lit";
2
- import { unsafeHTML } from "lit/directives/unsafe-html.js";
1
+ import { LitElement, html } from "lit";
2
+ import { tokens } from "../../tokens/tokens.js";
3
3
 
4
4
  import tabsCSS from "../tabs/tabs.css.js";
5
5
 
6
6
  class TabsComponent extends LitElement {
7
7
  static properties = {
8
- selectedTab: { type: Number },
8
+ selectedTab: { type: Number }
9
9
  };
10
10
 
11
11
  constructor() {
@@ -22,30 +22,30 @@ class TabsComponent extends LitElement {
22
22
  render() {
23
23
  const tabs = [
24
24
  {
25
- title: "Privacy Protection",
25
+ title : "Privacy Protection",
26
26
  imageBase: "images/tabs-img1.png",
27
- icon: "icons/pic1.png",
27
+ icon : "icons/pic1.png"
28
28
  },
29
29
  {
30
- title: "Identity Protection",
30
+ title : "Identity Protection",
31
31
  imageBase: "images/tabs-img2.png",
32
- icon: "icons/pic2.png",
32
+ icon : "icons/pic2.png"
33
33
  },
34
34
  {
35
- title: "Device Protection",
35
+ title : "Device Protection",
36
36
  imageBase: "images/tabs-img3.png",
37
- icon: "icons/pic3.png",
37
+ icon : "icons/pic3.png"
38
38
  },
39
39
  {
40
- title: "Financial Insurance",
40
+ title : "Financial Insurance",
41
41
  imageBase: "images/tabs-img3.png",
42
- icon: "icons/pic3.png",
43
- },
42
+ icon : "icons/pic3.png"
43
+ }
44
44
  ];
45
45
 
46
46
  const content = [
47
47
  {
48
- heading: "Take back your family’s digital privacy",
48
+ heading : "Take back your family’s digital privacy",
49
49
  description: () => html`<ul class="ul-privacy">
50
50
  <li>
51
51
  Enjoy complete data privacy with
@@ -61,10 +61,10 @@ class TabsComponent extends LitElement {
61
61
  <strong>Webcam and Microphone Protection</strong>.
62
62
  </li>
63
63
  </ul>`,
64
- href: "#1",
64
+ href: "#1"
65
65
  },
66
66
  {
67
- heading: "Safe data. Safe you.",
67
+ heading : "Safe data. Safe you.",
68
68
  description: () => html`<p>
69
69
  Get instant alerts for potential threats to your personal data and
70
70
  finances.
@@ -74,10 +74,10 @@ class TabsComponent extends LitElement {
74
74
  Reduce the risk of online ID theft by scanning your digital
75
75
  footprint.
76
76
  </p>`,
77
- href: "#2",
77
+ href: "#2"
78
78
  },
79
79
  {
80
- heading: "We secure what you hold dear",
80
+ heading : "We secure what you hold dear",
81
81
  description: () => html`<p>
82
82
  Enjoy seamless security across all devices.
83
83
  </p>
@@ -86,10 +86,10 @@ class TabsComponent extends LitElement {
86
86
  attempts.
87
87
  </p>
88
88
  <p>Lightweight performance ensures smooth device operation.</p>`,
89
- href: "#3",
89
+ href: "#3"
90
90
  },
91
91
  {
92
- heading: "Financial Insurance",
92
+ heading : "Financial Insurance",
93
93
  description: () => html`<p>
94
94
  Enjoy seamless security across all devices.
95
95
  </p>
@@ -98,8 +98,8 @@ class TabsComponent extends LitElement {
98
98
  attempts.
99
99
  </p>
100
100
  <p>Lightweight performance ensures smooth device operation.</p>`,
101
- href: "#4",
102
- },
101
+ href: "#4"
102
+ }
103
103
  ];
104
104
 
105
105
  const selectedTabData = tabs[this.selectedTab];
@@ -185,6 +185,6 @@ class TabsComponent extends LitElement {
185
185
  }
186
186
  }
187
187
 
188
- TabsComponent.styles = [tabsCSS];
188
+ TabsComponent.styles = [tokens, tabsCSS];
189
189
 
190
190
  customElements.define("bd-tabs-component", TabsComponent);
@@ -1,11 +1,11 @@
1
- import { LitElement, html, css } from "lit";
2
- import { unsafeHTML } from "lit-html/directives/unsafe-html.js";
1
+ import { LitElement, html } from "lit";
2
+ import { tokens } from "../../tokens/tokens.js";
3
3
 
4
4
  import termsCSS from "../termsOfUse/terms.css.js";
5
5
 
6
6
  class TermsSection extends LitElement {
7
7
  static properties = {
8
- faqs: { type: Array },
8
+ faqs: { type: Array }
9
9
  };
10
10
 
11
11
  constructor() {
@@ -13,7 +13,7 @@ class TermsSection extends LitElement {
13
13
  this.faqs = [
14
14
  {
15
15
  question: "Auto renewal terms",
16
- answer: `
16
+ answer : `
17
17
  <p>
18
18
  <ul>
19
19
  <li>Your subscription automatically begins at the purchase date;</li>
@@ -21,7 +21,7 @@ class TermsSection extends LitElement {
21
21
  <li>The Bitdefender Auto Renewal Plan is designed to save you time, effort, and minimize your vulnerability risk by extending your subscription automatically before you run out of protection.</li>
22
22
  </ul>
23
23
  </p> `,
24
- open: false,
24
+ open: false
25
25
  },
26
26
  {
27
27
  question:
@@ -39,30 +39,30 @@ class TermsSection extends LitElement {
39
39
  <li>If a discount is presented, it describes the difference between the first term and renewal term subscription prices (e.g., first year price vs. each year thereafter). The prices are subject to change, but Bitdefender will send a prior notification by email, before the automatic renewal takes place. You will receive an email notification before you will be billed, along with information regarding pricing and the extension of your subscription duration.</li>
40
40
  </ul>
41
41
  </p> `,
42
- open: false,
42
+ open: false
43
43
  },
44
44
  {
45
45
  question: "Affirmative consent",
46
- answer: `
46
+ answer : `
47
47
  <p>
48
48
  <ul>
49
49
  <li>Your subscription automatically begins at the purchase date;</li>
50
50
  <li>By subscribing, you are purchasing a recurring subscription which will automatically renew.</li>
51
51
  </ul>
52
52
  </p> `,
53
- open: false,
53
+ open: false
54
54
  },
55
55
  {
56
56
  question: "How to cancel + email address cancelation support",
57
- answer: `
57
+ answer : `
58
58
  <p>
59
59
  <ul>
60
60
  <li>You can cancel your automatically subscription from Bitdefender Central or by contacting Customer Support at: <a href="mailto:cancel@bitdefender.com" title="cancel@bitdefender.com">cancel@bitdefender.com</a></li>
61
61
  <li>You can refund by contacting <a href="mailto:refunds@bitdefender.com" title="refunds@bitdefender.com">refunds@bitdefender.com</a> within 30 days of your initial purchase or of the automatic renewal date.</li>
62
62
  </ul>
63
63
  </p> `,
64
- open: false,
65
- },
64
+ open: false
65
+ }
66
66
  ];
67
67
  }
68
68
 
@@ -219,8 +219,8 @@ class TermsSection extends LitElement {
219
219
  </div>
220
220
  `;
221
221
  }
222
-
222
+
223
223
  }
224
224
 
225
- TermsSection.styles = [termsCSS];
225
+ TermsSection.styles = [tokens, termsCSS];
226
226
  customElements.define("bd-terms-section", TermsSection);
@@ -1,4 +1,3 @@
1
- @import './tokens.css';
2
1
  .bd-button-container {
3
2
  display: flex;
4
3
  flex-direction: column;
@@ -1,7 +1,7 @@
1
1
  import { css } from 'lit';
2
2
 
3
3
  export const tokens = css`
4
- :root {
4
+ :host {
5
5
 
6
6
  /* =====================
7
7
  COLORS