@repobit/dex-system-design 0.23.32 → 0.23.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/package.json +4 -4
- package/src/components/accordion/accordion-bg.css.js +18 -6
- package/src/components/accordion/accordion-bg.js +162 -29
- package/src/components/accordion/accordion-bg.stories.js +123 -3
- package/src/components/accordion/accordion.css.js +25 -15
- package/src/components/accordion/accordion.js +38 -29
- package/src/components/awards/awards-icon.js +4 -4
- package/src/components/awards/awards.css.js +4 -3
- package/src/components/awards/awards.js +88 -148
- package/src/components/awards/awards.stories.js +11 -51
- package/src/components/badge/badge.css.js +0 -17
- package/src/components/badge/badge.js +5 -2
- package/src/components/footer/footer.css.js +0 -17
- package/src/components/footer/footer.js +23 -17
- package/src/components/icons/analysis-icon.js +25 -0
- package/src/components/icons/arrow-down-icon.js +28 -0
- package/src/components/icons/arrow-up-icon.js +28 -0
- package/src/components/icons/av-comparatives-icon.js +34 -0
- package/src/components/icons/best-brands-icon.js +36 -0
- package/src/components/icons/close-icon.js +28 -0
- package/src/components/icons/family-icon.js +31 -0
- package/src/components/icons/globe-icon.js +28 -0
- package/src/components/icons/guide-icon.js +28 -0
- package/src/components/icons/icons.stories.js +226 -0
- package/src/components/icons/individual-icon.js +29 -0
- package/src/components/icons/laurel-icon.js +39 -0
- package/src/components/icons/machine-learning-icon.js +26 -0
- package/src/components/icons/minus-icon.js +6 -4
- package/src/components/icons/pc-mag-2024-icon.js +35 -0
- package/src/components/icons/pc-mag-business-icon.js +35 -0
- package/src/components/icons/pc-mag-icon.js +35 -0
- package/src/components/icons/pc-mag-readers-icon.js +34 -0
- package/src/components/icons/plus-icon.js +6 -4
- package/src/components/icons/top-product-icon.js +35 -0
- package/src/components/light-carousel/light-carousel.stories.js +523 -76
- package/src/components/paragraph/paragraph.css.js +1 -0
- package/src/components/paragraph/paragraph.js +34 -2
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { LitElement, html } from "lit";
|
|
2
2
|
import { tokens } from "../../tokens/tokens.js";
|
|
3
|
+
import "../heading/heading.js";
|
|
3
4
|
import "../icons/minus-icon.js";
|
|
4
5
|
import "../icons/plus-icon.js";
|
|
6
|
+
import "../paragraph/paragraph.js";
|
|
5
7
|
import { accordionItem, accordionSection } from "./accordion.css.js";
|
|
6
8
|
|
|
7
9
|
export class BdAccordionItem extends LitElement {
|
|
@@ -52,12 +54,11 @@ export class BdAccordionItem extends LitElement {
|
|
|
52
54
|
@focusin=${this._onTriggerFocusIn}
|
|
53
55
|
@focusout=${this._onTriggerFocusOut}
|
|
54
56
|
>
|
|
55
|
-
<span class="toggle" aria-hidden="true">
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
</span>
|
|
57
|
+
<span class="toggle" aria-hidden="true">
|
|
58
|
+
${this.open
|
|
59
|
+
? html`<bd-minus-icon size="16" color="#006DFF"></bd-minus-icon>`
|
|
60
|
+
: html`<bd-plus-icon size="16" color="#006DFF"></bd-plus-icon>`}
|
|
61
|
+
</span>
|
|
61
62
|
<span class="title">${this.title}</span>
|
|
62
63
|
</button>
|
|
63
64
|
<div id="${this._panelId}" class="content" ?hidden=${!this.open}>
|
|
@@ -71,16 +72,12 @@ export class BdAccordionSection extends LitElement {
|
|
|
71
72
|
static styles = [tokens, accordionSection];
|
|
72
73
|
|
|
73
74
|
static properties = {
|
|
74
|
-
title
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
variant : { type: String, reflect: true },
|
|
81
|
-
guideIcon : { type: String, reflect: true, attribute: "guide-icon" },
|
|
82
|
-
guideLabel: { type: String, reflect: true, attribute: "guide-label" },
|
|
83
|
-
guideHref : { type: String, reflect: true, attribute: "guide-href" }
|
|
75
|
+
title : { type: String },
|
|
76
|
+
variant : { type: String, reflect: true },
|
|
77
|
+
guideIcon : { type: String, reflect: true, attribute: "guide-icon" },
|
|
78
|
+
guideLabel : { type: String, reflect: true, attribute: "guide-label" },
|
|
79
|
+
guideHref : { type: String, reflect: true, attribute: "guide-href" },
|
|
80
|
+
noContainer: { type: Boolean, attribute: "no-container" } // ← ADĂUGĂ
|
|
84
81
|
};
|
|
85
82
|
|
|
86
83
|
constructor() {
|
|
@@ -90,29 +87,41 @@ export class BdAccordionSection extends LitElement {
|
|
|
90
87
|
this.guideIcon = "";
|
|
91
88
|
this.guideLabel = "";
|
|
92
89
|
this.guideHref = "#";
|
|
90
|
+
this.noContainer = false; // ← ADĂUGĂ
|
|
93
91
|
}
|
|
94
92
|
|
|
95
93
|
render() {
|
|
96
|
-
|
|
94
|
+
const content = html`
|
|
97
95
|
${this.title
|
|
98
|
-
? html`<
|
|
96
|
+
? html`<bd-h as="h6" fontWeight="700" paddingBottom="var(--spacing-32)" class="section-title">${this.title}</bd-h>`
|
|
99
97
|
: ""}
|
|
100
98
|
<slot></slot>
|
|
101
99
|
${this.guideLabel
|
|
102
|
-
? html
|
|
103
|
-
<
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
</
|
|
111
|
-
</p>`
|
|
100
|
+
? html`
|
|
101
|
+
<bd-p kind="small" class="user-guide-link">
|
|
102
|
+
<a href=${this.guideHref}>
|
|
103
|
+
${this.guideIcon
|
|
104
|
+
? html`<bd-plus-icon size="16" color="#006DFF"></bd-plus-icon>`
|
|
105
|
+
: ""}
|
|
106
|
+
${this.guideLabel}
|
|
107
|
+
</a>
|
|
108
|
+
</bd-p>`
|
|
112
109
|
: ""}
|
|
113
110
|
`;
|
|
111
|
+
|
|
112
|
+
// Dacă nu vrei container, returnează direct contentul
|
|
113
|
+
if (this.noContainer) {
|
|
114
|
+
return content;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
// Altfel, înfășoară într-un div cu clasă pentru background
|
|
118
|
+
return html`
|
|
119
|
+
<div class="bd-accordion-section-container">
|
|
120
|
+
${content}
|
|
121
|
+
</div>
|
|
122
|
+
`;
|
|
114
123
|
}
|
|
115
124
|
}
|
|
116
125
|
|
|
117
126
|
customElements.define("bd-accordion-item", BdAccordionItem);
|
|
118
|
-
customElements.define("bd-accordion-section", BdAccordionSection);
|
|
127
|
+
customElements.define("bd-accordion-section", BdAccordionSection);
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { LitElement,
|
|
1
|
+
import { LitElement, css, html } from "lit";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Optional `src` (image URL) with `label` for alt text, or default slot for inline SVG.
|
|
5
5
|
*/
|
|
6
6
|
class BdIcon extends LitElement {
|
|
7
7
|
static properties = {
|
|
8
|
-
src: { type: String },
|
|
9
|
-
label: { type: String },
|
|
10
|
-
width: { type: String },
|
|
8
|
+
src : { type: String },
|
|
9
|
+
label : { type: String },
|
|
10
|
+
width : { type: String },
|
|
11
11
|
height: { type: String }
|
|
12
12
|
};
|
|
13
13
|
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { css } from "lit";
|
|
2
2
|
|
|
3
|
-
/** Orbit Awards — desktop: Figma 1882:9342 (Frame 14); mobile: 1882:9346 (Frame 15, 360) */
|
|
4
3
|
export const awardsCSS = css`
|
|
5
|
-
|
|
4
|
+
|
|
5
|
+
bd-awards-section {
|
|
6
6
|
display: block;
|
|
7
7
|
font-family: var(--typography-fontFamily-sans);
|
|
8
8
|
background: var(--layout-awards-section-background);
|
|
9
9
|
box-sizing: border-box;
|
|
10
|
-
|
|
10
|
+
padding: var(--spacing-32);
|
|
11
|
+
|
|
11
12
|
}
|
|
12
13
|
|
|
13
14
|
.bd-awards-root {
|
|
@@ -1,8 +1,30 @@
|
|
|
1
|
+
// awards.js - varianta cu Shadow DOM (ca la celelalte componente)
|
|
1
2
|
import { LitElement, html } from "lit";
|
|
2
3
|
import { tokens } from "../../tokens/tokens.js";
|
|
3
|
-
import "
|
|
4
|
+
import "../icons/analysis-icon.js";
|
|
5
|
+
import "../icons/av-comparatives-icon.js";
|
|
6
|
+
import "../icons/best-brands-icon.js";
|
|
7
|
+
import "../icons/laurel-icon.js";
|
|
8
|
+
import "../icons/machine-learning-icon.js";
|
|
9
|
+
import "../icons/pc-mag-2024-icon.js";
|
|
10
|
+
import "../icons/pc-mag-business-icon.js";
|
|
11
|
+
import "../icons/pc-mag-icon.js";
|
|
12
|
+
import "../icons/pc-mag-readers-icon.js";
|
|
13
|
+
import "../icons/top-product-icon.js";
|
|
4
14
|
import { awardsCSS } from "./awards.css.js";
|
|
5
15
|
|
|
16
|
+
const ICON_RENDERERS = {
|
|
17
|
+
"bd-pc-mag-icon" : () => html`<bd-pc-mag-icon></bd-pc-mag-icon>`,
|
|
18
|
+
"bd-av-comparatives-icon" : () => html`<bd-av-comparatives-icon></bd-av-comparatives-icon>`,
|
|
19
|
+
"bd-best-brands-icon" : () => html`<bd-best-brands-icon></bd-best-brands-icon>`,
|
|
20
|
+
"bd-pc-mag-2024-icon" : () => html`<bd-pc-mag-2024-icon></bd-pc-mag-2024-icon>`,
|
|
21
|
+
"bd-pc-mag-readers-icon" : () => html`<bd-pc-mag-readers-icon height="64" width="37"></bd-pc-mag-readers-icon>`,
|
|
22
|
+
"bd-pc-mag-business-icon" : () => html`<bd-pc-mag-business-icon></bd-pc-mag-business-icon>`,
|
|
23
|
+
"bd-top-product-icon" : () => html`<bd-top-product-icon></bd-top-product-icon>`,
|
|
24
|
+
"bd-machine-learning-icon": () => html`<bd-machine-learning-icon></bd-machine-learning-icon>`,
|
|
25
|
+
"bd-analysis-icon" : () => html`<bd-analysis-icon></bd-analysis-icon>`
|
|
26
|
+
};
|
|
27
|
+
|
|
6
28
|
export class AwardsSection extends LitElement {
|
|
7
29
|
static properties = {
|
|
8
30
|
tagline : { type: String },
|
|
@@ -18,105 +40,52 @@ export class AwardsSection extends LitElement {
|
|
|
18
40
|
|
|
19
41
|
static styles = [tokens, awardsCSS];
|
|
20
42
|
|
|
21
|
-
/** @type {MediaQueryList | null} */
|
|
22
43
|
_mql599 = null;
|
|
23
|
-
/** @type {MediaQueryList | null} */
|
|
24
44
|
_mql767 = null;
|
|
25
|
-
_on599 = () => {
|
|
26
|
-
|
|
27
|
-
};
|
|
28
|
-
_on767 = () => {
|
|
29
|
-
this._featureNarrow = this._mql767?.matches ?? false;
|
|
30
|
-
};
|
|
45
|
+
_on599 = () => { this._narrow = this._mql599?.matches ?? false; };
|
|
46
|
+
_on767 = () => { this._featureNarrow = this._mql767?.matches ?? false; };
|
|
31
47
|
|
|
32
48
|
constructor() {
|
|
33
49
|
super();
|
|
34
|
-
this.tagline
|
|
35
|
-
this.headline
|
|
36
|
-
|
|
37
|
-
this.
|
|
38
|
-
|
|
39
|
-
this.secretTitle = "What's our secret";
|
|
40
|
-
this.secretSubtext =
|
|
41
|
-
"At the heart of Bitdefender lies a powerhouse of proprietary technology, setting it miles apart from the competition.";
|
|
50
|
+
this.tagline = "You're Making A Great Choice";
|
|
51
|
+
this.headline = "World-class security software you can trust. Always.";
|
|
52
|
+
this.subtext = "We've added 25 new accolades in the past two years to the hundreds we have won since we started in 2001 - so you know you are in good hands.";
|
|
53
|
+
this.secretTitle = "What's our secret";
|
|
54
|
+
this.secretSubtext = "At the heart of Bitdefender lies a powerhouse of proprietary technology, setting it miles apart from the competition.";
|
|
42
55
|
|
|
43
56
|
this.desktopAwards = [
|
|
44
|
-
{
|
|
45
|
-
|
|
46
|
-
type
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}
|
|
51
|
-
{
|
|
52
|
-
label : "AV\ncomparatives",
|
|
53
|
-
type : "dark",
|
|
54
|
-
format: "svg",
|
|
55
|
-
src : "/assets/av-comparatives.svg",
|
|
56
|
-
id : "av-comparatives"
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
label : "Best\nBrands\n2024",
|
|
60
|
-
type : "dark",
|
|
61
|
-
format: "svg",
|
|
62
|
-
src : "/assets/best-brands.svg",
|
|
63
|
-
id : "best-brands"
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
label : "PC\nChoice\n2024",
|
|
67
|
-
type : "red",
|
|
68
|
-
format: "svg",
|
|
69
|
-
src : "/assets/pc-mag-2024.svg",
|
|
70
|
-
id : "pc-mag-2024"
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
label : "PC MAG\nREADERS'\nCHOICE",
|
|
74
|
-
type : "red",
|
|
75
|
-
format: "svg",
|
|
76
|
-
src : "/assets/pc-mag-readers.svg",
|
|
77
|
-
id : "pc-mag-readers"
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
label : "PC\nBusiness\nChoice",
|
|
81
|
-
type : "red",
|
|
82
|
-
format: "svg",
|
|
83
|
-
src : "/assets/pc-mag-business.svg",
|
|
84
|
-
id : "pc-mag-business"
|
|
85
|
-
},
|
|
86
|
-
{
|
|
87
|
-
label : "AV\nTEST\nTOP\nPRODUCT",
|
|
88
|
-
type : "red",
|
|
89
|
-
format: "svg",
|
|
90
|
-
src : "/assets/top-product.svg",
|
|
91
|
-
id : "top-product"
|
|
92
|
-
}
|
|
57
|
+
{ label: "PC MAG\nEDITORS' CHOICE", type: "red", tag: "bd-pc-mag-icon", id: "pc-mag" },
|
|
58
|
+
{ label: "AV\ncomparatives", type: "dark", tag: "bd-av-comparatives-icon", id: "av-comparatives" },
|
|
59
|
+
{ label: "Best\nBrands\n2024", type: "dark", tag: "bd-best-brands-icon", id: "best-brands" },
|
|
60
|
+
{ label: "PC\nChoice\n2024", type: "red", tag: "bd-pc-mag-2024-icon", id: "pc-mag-2024" },
|
|
61
|
+
{ label: "PC MAG\nREADERS'\nCHOICE", type: "red", tag: "bd-pc-mag-readers-icon", id: "pc-mag-readers" },
|
|
62
|
+
{ label: "PC\nBusiness\nChoice", type: "red", tag: "bd-pc-mag-business-icon", id: "pc-mag-business" },
|
|
63
|
+
{ label: "AV\nTEST\nTOP\nPRODUCT", type: "red", tag: "bd-top-product-icon", id: "top-product" }
|
|
93
64
|
];
|
|
94
65
|
|
|
95
66
|
this.features = [
|
|
96
67
|
{
|
|
97
|
-
|
|
98
|
-
title: "Machine Learning",
|
|
99
|
-
description:
|
|
100
|
-
"Imagine Bitdefender as a super-smart detective, constantly learning and getting better at spotting bad guys. Just like how you learn from your experiences, Bitdefender learns from millions of cyber threats it encounters every day. It studies their patterns, figures out their tricks, and uses that knowledge to protect your devices from future attacks."
|
|
68
|
+
tag : "bd-machine-learning-icon",
|
|
69
|
+
title : "Machine Learning",
|
|
70
|
+
description: "Imagine Bitdefender as a super-smart detective, constantly learning and getting better at spotting bad guys. Just like how you learn from your experiences, Bitdefender learns from millions of cyber threats it encounters every day. It studies their patterns, figures out their tricks, and uses that knowledge to protect your devices from future attacks."
|
|
101
71
|
},
|
|
102
72
|
{
|
|
103
|
-
|
|
104
|
-
title: "Behavioral Analysis",
|
|
105
|
-
description:
|
|
106
|
-
"Bitdefender keeps an eye on how you and your devices normally behave. So, when something unusual happens, like a strange file trying to sneak into your computer or a suspicious website trying to steal your info, Bitdefender sounds the alarm. It's like having a loyal sidekick that never sleeps, always on the lookout for trouble and ready to jump into action to keep you safe."
|
|
73
|
+
tag : "bd-analysis-icon",
|
|
74
|
+
title : "Behavioral Analysis",
|
|
75
|
+
description: "Bitdefender keeps an eye on how you and your devices normally behave. So, when something unusual happens, like a strange file trying to sneak into your computer or a suspicious website trying to steal your info, Bitdefender sounds the alarm. It's like having a loyal sidekick that never sleeps, always on the lookout for trouble and ready to jump into action to keep you safe."
|
|
107
76
|
}
|
|
108
77
|
];
|
|
109
78
|
|
|
110
|
-
this._narrow
|
|
79
|
+
this._narrow = false;
|
|
111
80
|
this._featureNarrow = false;
|
|
112
81
|
}
|
|
113
82
|
|
|
114
83
|
connectedCallback() {
|
|
115
84
|
super.connectedCallback();
|
|
116
85
|
if (typeof window !== "undefined" && window.matchMedia) {
|
|
117
|
-
this._mql599
|
|
118
|
-
this._mql767
|
|
119
|
-
this._narrow
|
|
86
|
+
this._mql599 = window.matchMedia("(max-width: 599px)");
|
|
87
|
+
this._mql767 = window.matchMedia("(max-width: 767px)");
|
|
88
|
+
this._narrow = this._mql599.matches;
|
|
120
89
|
this._featureNarrow = this._mql767.matches;
|
|
121
90
|
this._mql599.addEventListener("change", this._on599);
|
|
122
91
|
this._mql767.addEventListener("change", this._on767);
|
|
@@ -130,26 +99,23 @@ export class AwardsSection extends LitElement {
|
|
|
130
99
|
}
|
|
131
100
|
|
|
132
101
|
_renderBadge(award) {
|
|
102
|
+
const iconFn = ICON_RENDERERS[award.tag];
|
|
133
103
|
const ariaLabel = award.label.replace(/\n/g, " ");
|
|
134
|
-
const classes
|
|
104
|
+
const classes = `bd-awards-badge ${award.type === "dark" ? "bd-awards-badge--dark" : ""}`;
|
|
135
105
|
return html`
|
|
136
|
-
<div class="${classes}" data-award-id="${award.id}" role="listitem">
|
|
137
|
-
|
|
106
|
+
<div class="${classes}" data-award-id="${award.id}" role="listitem" aria-label="${ariaLabel}">
|
|
107
|
+
${iconFn ? iconFn() : ""}
|
|
138
108
|
</div>
|
|
139
109
|
`;
|
|
140
110
|
}
|
|
141
111
|
|
|
142
112
|
_renderFeature(f) {
|
|
143
113
|
const narrow = this._featureNarrow;
|
|
144
|
-
const
|
|
145
|
-
f.icon === "brain"
|
|
146
|
-
? "/assets/machine-learning.svg"
|
|
147
|
-
: "/assets/analysis.svg";
|
|
148
|
-
|
|
114
|
+
const iconFn = ICON_RENDERERS[f.tag];
|
|
149
115
|
return html`
|
|
150
116
|
<article class="bd-awards-feature-card">
|
|
151
117
|
<div class="bd-awards-feature-icon" aria-hidden="true">
|
|
152
|
-
|
|
118
|
+
${iconFn ? iconFn() : ""}
|
|
153
119
|
</div>
|
|
154
120
|
<div class="bd-awards-feature-text">
|
|
155
121
|
${narrow
|
|
@@ -165,58 +131,33 @@ export class AwardsSection extends LitElement {
|
|
|
165
131
|
|
|
166
132
|
render() {
|
|
167
133
|
const narrow = this._narrow;
|
|
168
|
-
|
|
169
134
|
return html`
|
|
170
|
-
<section
|
|
171
|
-
class="bd-awards-root"
|
|
172
|
-
aria-label="Awards and recognition"
|
|
173
|
-
>
|
|
174
135
|
<div class="bd-awards-trust-banner">
|
|
175
136
|
<div class="bd-awards-trust-intro">
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
</
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
? html`<bd-p kind="small" class="bd-awards-tagline">${this.tagline}</bd-p>`
|
|
198
|
-
: html`<bd-p kind="large" class="bd-awards-tagline">${this.tagline}</bd-p>`}
|
|
199
|
-
|
|
200
|
-
${narrow
|
|
201
|
-
? html`
|
|
202
|
-
<bd-h as="h4" class="bd-awards-headline">
|
|
203
|
-
<span class="bd-awards-headline-line">World-class security</span>
|
|
204
|
-
<span class="bd-awards-headline-line">software you can trust.</span>
|
|
205
|
-
<span class="bd-awards-headline-line">Always.</span>
|
|
206
|
-
</bd-h>
|
|
207
|
-
`
|
|
208
|
-
: html`<bd-h as="h3" class="bd-awards-headline">${this.headline}</bd-h>`}
|
|
209
|
-
|
|
210
|
-
${narrow
|
|
211
|
-
? html`<bd-p kind="small" class="bd-awards-subtext">${this.subtext}</bd-p>`
|
|
212
|
-
: html`<bd-p kind="regular" class="bd-awards-subtext">${this.subtext}</bd-p>`}
|
|
137
|
+
<span class="bd-awards-laurel-icon" aria-hidden="true">
|
|
138
|
+
<bd-laurel-icon size="80"></bd-laurel-icon>
|
|
139
|
+
</span>
|
|
140
|
+
|
|
141
|
+
${narrow
|
|
142
|
+
? html`<bd-p kind="small" class="bd-awards-tagline">${this.tagline}</bd-p>`
|
|
143
|
+
: html`<bd-p kind="large" class="bd-awards-tagline">${this.tagline}</bd-p>`}
|
|
144
|
+
|
|
145
|
+
${narrow
|
|
146
|
+
? html`
|
|
147
|
+
<bd-h as="h4" class="bd-awards-headline">
|
|
148
|
+
<span class="bd-awards-headline-line">World-class security</span>
|
|
149
|
+
<span class="bd-awards-headline-line">software you can trust.</span>
|
|
150
|
+
<span class="bd-awards-headline-line">Always.</span>
|
|
151
|
+
</bd-h>
|
|
152
|
+
`
|
|
153
|
+
: html`<bd-h as="h3" class="bd-awards-headline">${this.headline}</bd-h>`}
|
|
154
|
+
|
|
155
|
+
${narrow
|
|
156
|
+
? html`<bd-p kind="small" class="bd-awards-subtext">${this.subtext}</bd-p>`
|
|
157
|
+
: html`<bd-p kind="regular" class="bd-awards-subtext">${this.subtext}</bd-p>`}
|
|
213
158
|
</div>
|
|
214
159
|
|
|
215
|
-
<div
|
|
216
|
-
class="bd-awards-bar"
|
|
217
|
-
role="list"
|
|
218
|
-
aria-label="Industry awards"
|
|
219
|
-
>
|
|
160
|
+
<div class="bd-awards-bar" role="list" aria-label="Industry awards">
|
|
220
161
|
<div class="bd-awards-row" role="presentation">
|
|
221
162
|
${this.desktopAwards.slice(0, 3).map((a) => this._renderBadge(a))}
|
|
222
163
|
</div>
|
|
@@ -227,22 +168,21 @@ export class AwardsSection extends LitElement {
|
|
|
227
168
|
</div>
|
|
228
169
|
|
|
229
170
|
<div class="bd-awards-lower">
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
171
|
+
<section class="bd-awards-secret-section">
|
|
172
|
+
${narrow
|
|
173
|
+
? html`<bd-h as="h4" class="bd-awards-section-title">${this.secretTitle}</bd-h>`
|
|
174
|
+
: html`<bd-h as="h3" class="bd-awards-section-title">${this.secretTitle}</bd-h>`}
|
|
175
|
+
${narrow
|
|
176
|
+
? html`<bd-p kind="small" class="bd-awards-section-subtext">${this.secretSubtext}</bd-p>`
|
|
177
|
+
: html`<bd-p kind="regular" class="bd-awards-section-subtext">${this.secretSubtext}</bd-p>`}
|
|
178
|
+
</section>
|
|
179
|
+
|
|
180
|
+
<div class="bd-awards-features-grid">
|
|
181
|
+
${this.features.map((f) => this._renderFeature(f))}
|
|
182
|
+
</div>
|
|
242
183
|
</div>
|
|
243
|
-
</section>
|
|
244
184
|
`;
|
|
245
185
|
}
|
|
246
186
|
}
|
|
247
187
|
|
|
248
|
-
customElements.define("bd-awards-section", AwardsSection);
|
|
188
|
+
customElements.define("bd-awards-section", AwardsSection);
|
|
@@ -107,65 +107,25 @@ const defaultArgs = {
|
|
|
107
107
|
subtext : "We've added 25 new accolades in the past two years to the hundreds we have won since we started in 2001 - so you know you are in good hands.",
|
|
108
108
|
secretTitle : "What's our secret",
|
|
109
109
|
secretSubtext: "At the heart of Bitdefender lies a powerhouse of proprietary technology, setting it miles apart from the competition.",
|
|
110
|
+
|
|
110
111
|
desktopAwards: [
|
|
111
|
-
{
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
id
|
|
117
|
-
}
|
|
118
|
-
{
|
|
119
|
-
label : "AV\ncomparatives",
|
|
120
|
-
type : "dark",
|
|
121
|
-
format: "svg",
|
|
122
|
-
src : "/assets/av-comparatives.svg",
|
|
123
|
-
id : "av-comparatives"
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
label : "Best\nBrands\n2024",
|
|
127
|
-
type : "dark",
|
|
128
|
-
format: "svg",
|
|
129
|
-
src : "/assets/best-brands.svg",
|
|
130
|
-
id : "best-brands"
|
|
131
|
-
},
|
|
132
|
-
{
|
|
133
|
-
label : "PC\nChoice\n2024",
|
|
134
|
-
type : "red",
|
|
135
|
-
format: "svg",
|
|
136
|
-
src : "/assets/pc-mag-2024.svg",
|
|
137
|
-
id : "pc-mag-2024"
|
|
138
|
-
},
|
|
139
|
-
{
|
|
140
|
-
label : "PC MAG\nREADERS'\nCHOICE",
|
|
141
|
-
type : "red",
|
|
142
|
-
format: "svg",
|
|
143
|
-
src : "/assets/pc-mag-readers.svg",
|
|
144
|
-
id : "pc-mag-readers"
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
label : "PC\nBusiness\nChoice",
|
|
148
|
-
type : "red",
|
|
149
|
-
format: "svg",
|
|
150
|
-
src : "/assets/pc-mag-business.svg",
|
|
151
|
-
id : "pc-mag-business"
|
|
152
|
-
},
|
|
153
|
-
{
|
|
154
|
-
label : "AV\nTEST\nTOP\nPRODUCT",
|
|
155
|
-
type : "red",
|
|
156
|
-
format: "svg",
|
|
157
|
-
src : "/assets/top-product.svg",
|
|
158
|
-
id : "top-product"
|
|
159
|
-
}
|
|
112
|
+
{ label: "PC MAG\nEDITORS' CHOICE", type: "red", tag: "bd-pc-mag-icon", id: "pc-mag" },
|
|
113
|
+
{ label: "AV\ncomparatives", type: "dark", tag: "bd-av-comparatives-icon", id: "av-comparatives" },
|
|
114
|
+
{ label: "Best\nBrands\n2024", type: "dark", tag: "bd-best-brands-icon", id: "best-brands" },
|
|
115
|
+
{ label: "PC\nChoice\n2024", type: "red", tag: "bd-pc-mag-2024-icon", id: "pc-mag-2024" },
|
|
116
|
+
{ label: "PC MAG\nREADERS'\nCHOICE", type: "red", tag: "bd-pc-mag-readers-icon", id: "pc-mag-readers" },
|
|
117
|
+
{ label: "PC\nBusiness\nChoice", type: "red", tag: "bd-pc-mag-business-icon", id: "pc-mag-business" },
|
|
118
|
+
{ label: "AV\nTEST\nTOP\nPRODUCT", type: "red", tag: "bd-top-product-icon", id: "top-product" }
|
|
160
119
|
],
|
|
120
|
+
|
|
161
121
|
features: [
|
|
162
122
|
{
|
|
163
|
-
|
|
123
|
+
tag : "bd-machine-learning-icon",
|
|
164
124
|
title : "Machine Learning",
|
|
165
125
|
description: "Imagine Bitdefender as a super-smart detective, constantly learning and getting better at spotting bad guys. Just like how you learn from your experiences, Bitdefender learns from millions of cyber threats it encounters every day. It studies their patterns, figures out their tricks, and uses that knowledge to protect your devices from future attacks."
|
|
166
126
|
},
|
|
167
127
|
{
|
|
168
|
-
|
|
128
|
+
tag : "bd-analysis-icon",
|
|
169
129
|
title : "Behavioral Analysis",
|
|
170
130
|
description: "Bitdefender keeps an eye on how you and your devices normally behave. So, when something unusual happens, like a strange file trying to sneak into your computer or a suspicious website trying to steal your info, Bitdefender sounds the alarm. It's like having a loyal sidekick that never sleeps, always on the lookout for trouble and ready to jump into action to keep you safe."
|
|
171
131
|
}
|
|
@@ -40,15 +40,7 @@ export default css`
|
|
|
40
40
|
background-size: contain;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
/* Iconița pentru individual - ALBĂ */
|
|
44
|
-
.badge-icon.icon-individual {
|
|
45
|
-
background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'><path fill-rule='evenodd' clip-rule='evenodd' d='M12.1154 5.42846C11.0158 6.39902 10.1576 7.97293 10.1576 10.4303C10.1576 14.2122 11.2398 16.6474 13.1651 18.0413C13.7542 18.4678 14.5777 18.842 15.9997 18.842C17.4157 18.842 18.2942 18.4324 18.8344 18.0413C20.7597 16.6474 21.8419 14.2122 21.8419 10.4303C21.8419 7.97293 20.9837 6.39902 19.8841 5.42846C18.7585 4.43503 17.2951 3.99994 15.9997 3.99994C14.7044 3.99994 13.241 4.43503 12.1154 5.42846ZM10.792 3.929C12.3375 2.56485 14.2951 1.99994 15.9997 1.99994C17.7044 1.99994 19.662 2.56485 21.2075 3.929C22.779 5.31602 23.8419 7.45729 23.8419 10.4303C23.8419 14.3066 22.793 17.3385 20.4997 19.276V20.3089C20.4997 20.7959 20.8184 21.2255 21.2845 21.3667L22.9476 21.8707C25.2447 22.5667 26.8155 24.6841 26.8155 27.0843V30.0526H24.8155V27.0843C24.8155 25.5653 23.8214 24.2252 22.3676 23.7847L20.7045 23.2807C19.4382 22.897 18.5591 21.7556 18.5026 20.4434C17.8123 20.6859 16.9853 20.842 15.9997 20.842C15.005 20.842 14.1865 20.6944 13.4965 20.4513C13.4369 21.7602 12.5587 22.8978 11.295 23.2807L9.63186 23.7847C8.17811 24.2252 7.18396 25.5653 7.18396 27.0843V30.0526H5.18396V27.0843C5.18396 24.6841 6.75481 22.5667 9.05185 21.8707L10.715 21.3667C11.1811 21.2255 11.4997 20.7959 11.4997 20.3089V19.276C9.2065 17.3385 8.15764 14.3066 8.15764 10.4303C8.15764 7.45729 9.22051 5.31602 10.792 3.929Z' fill='white'/></svg>");
|
|
46
|
-
}
|
|
47
43
|
|
|
48
|
-
/* Iconița pentru family - ALBĂ */
|
|
49
|
-
.badge-icon.icon-family {
|
|
50
|
-
background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'><path fill-rule='evenodd' clip-rule='evenodd' d='M16.0394 21.0955C16.5717 21.0955 17.093 21.0063 17.6014 20.8372C17.9 21.7401 18.6188 22.4693 19.5635 22.7615L20.4295 23.0294C21.3633 23.3183 22 24.1817 22 25.1591V27H24V25.1591C24 23.3048 22.792 21.6667 21.0205 21.1187L20.1545 20.8509C19.7356 20.7213 19.45 20.334 19.45 19.8955V19.7449C21.1462 18.295 21.9 16.0583 21.9 13.2778C21.9 10.8447 20.8711 9.23277 19.577 8.25708C18.3332 7.3193 16.8903 7 16 7C15.1097 7 13.6668 7.3193 12.423 8.25708C11.1289 9.23277 10.1 10.8447 10.1 13.2778C10.1 16.0583 10.8538 18.295 12.55 19.7449V19.8955C12.55 20.334 12.2644 20.7213 11.8455 20.8509L10.9795 21.1187C9.20796 21.6667 8 23.3048 8 25.1591V27H10V25.1591C10 24.1817 10.6367 23.3183 11.5705 23.0294L12.4365 22.7615C13.3896 22.4667 14.1128 21.727 14.4065 20.813C14.9375 20.9979 15.4826 21.0955 16.0394 21.0955ZM12.1 13.2778C12.1 11.4886 12.8211 10.4617 13.627 9.85403C14.4832 9.20848 15.4903 9 16 9C16.5097 9 17.5168 9.20848 18.373 9.85403C19.1789 10.4617 19.9 11.4886 19.9 13.2778C19.9 15.9088 19.1434 17.5302 17.8667 18.447L17.4753 18.728C16.9672 18.9837 16.4907 19.0955 16.0394 19.0955C15.4812 19.0955 14.8855 18.9245 14.2393 18.5231L14.1333 18.447C12.8566 17.5302 12.1 15.9088 12.1 13.2778Z' fill='white'/><path fill-rule='evenodd' clip-rule='evenodd' d='M6 19.955C6.24301 19.955 6.50063 19.9153 6.75514 19.8475C7.0813 20.4138 7.61269 20.8554 8.26724 21.0605L8.40095 21.1024C8.52133 21.1401 8.62873 21.2028 8.71818 21.2836C9.21418 20.834 9.80066 20.4758 10.4549 20.2401C10.103 19.7558 9.59939 19.382 8.99905 19.1939L8.86534 19.152C8.71342 19.1044 8.58812 19.0057 8.50596 18.8783C9.41844 17.937 9.8 16.5994 9.8 15.0556C9.8 13.5167 9.1507 12.4609 8.30704 11.8164C7.51308 11.2099 6.59336 11 6 11C5.40664 11 4.48692 11.2099 3.69296 11.8164C2.8493 12.4609 2.2 13.5167 2.2 15.0556C2.2 16.5845 2.57424 17.9112 3.46779 18.851L3.46121 18.8574L3.48918 18.8858C3.40698 19.0095 3.28362 19.1053 3.13466 19.152L3.00095 19.1939C1.81034 19.567 1 20.6702 1 21.9179V23H3V21.9179C3 21.5444 3.2426 21.2141 3.59905 21.1024L3.73276 21.0605C4.3858 20.8558 4.91624 20.4158 5.2426 19.8514C5.49788 19.9168 5.75644 19.955 6 19.955ZM4.2 15.0556C4.2 14.15 4.5507 13.678 4.90704 13.4058C5.31308 13.0956 5.79336 13 6 13C6.20664 13 6.68692 13.0956 7.09296 13.4058C7.4493 13.678 7.8 14.15 7.8 15.0556C7.8 16.2132 7.5391 16.9456 7.13947 17.4082L7.13758 17.4065C6.99679 17.5579 6.78144 17.7035 6.53517 17.8109C6.28066 17.9219 6.07954 17.955 6 17.955C5.90858 17.955 5.70643 17.922 5.46088 17.8209C5.29102 17.751 5.14074 17.665 5.02308 17.5752C4.5331 17.1288 4.2 16.3637 4.2 15.0556Z' fill='white'/><path fill-rule='evenodd' clip-rule='evenodd' d='M26 19.955C26.2431 19.955 26.5007 19.9153 26.7552 19.8475C27.0813 20.4138 27.6127 20.8554 28.2673 21.0605L28.401 21.1024C28.7574 21.2141 29 21.5444 29 21.9179V23H31V21.9179C31 20.6702 30.1897 19.567 28.9991 19.1939L28.8654 19.152C28.7135 19.1044 28.5882 19.0057 28.506 18.8783C29.4185 17.937 29.8 16.5994 29.8 15.0556C29.8 13.5167 29.1507 12.4609 28.3071 11.8164C27.5131 11.2099 26.5934 11 26 11C25.4067 11 24.487 11.2099 23.693 11.8164C22.8493 12.4609 22.2 13.5167 22.2 15.0556C22.2 16.5845 22.5743 17.9112 23.4678 18.851L23.4613 18.8574L23.4892 18.8858C23.407 19.0095 23.2837 19.1053 23.1347 19.152L23.001 19.1939C22.4007 19.382 21.897 19.7558 21.5452 20.2401C22.1994 20.4758 22.7859 20.834 23.2819 21.2836C23.3713 21.2028 23.4787 21.1401 23.5991 21.1024L23.7328 21.0605C24.3858 20.8558 24.9163 20.4158 25.2426 19.8514C25.4979 19.9168 25.7565 19.955 26 19.955ZM24.2 15.0556C24.2 14.15 24.5507 13.678 24.9071 13.4058C25.3131 13.0956 25.7934 13 26 13C26.2067 13 26.687 13.0956 27.093 13.4058C27.4493 13.678 27.8 14.15 27.8 15.0556C27.8 16.2132 27.5391 16.9456 27.1395 17.4082L27.1376 17.4065C26.9968 17.5579 26.7815 17.7035 26.5352 17.8109C26.2807 17.9219 26.0796 17.955 26 17.955C25.9086 17.955 25.7065 17.922 25.4609 17.8209C25.2911 17.751 25.1408 17.665 25.0231 17.5752C24.5331 17.1288 24.2 16.3637 24.2 15.0556Z' fill='white'/></svg>");
|
|
51
|
-
}
|
|
52
44
|
|
|
53
45
|
/* Stil pentru badge-ul bd-light-blue */
|
|
54
46
|
.badge.bd-light-blue {
|
|
@@ -77,13 +69,4 @@ export default css`
|
|
|
77
69
|
--badge-icon-size: 18px;
|
|
78
70
|
--badge-gap: var(--spacing-6);
|
|
79
71
|
}
|
|
80
|
-
|
|
81
|
-
/* Green badge icons use dark green fill for WCAG contrast on --color-green-100 background */
|
|
82
|
-
.badge.bd-light-green .badge-icon.icon-individual {
|
|
83
|
-
background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'><path fill-rule='evenodd' clip-rule='evenodd' d='M12.1154 5.42846C11.0158 6.39902 10.1576 7.97293 10.1576 10.4303C10.1576 14.2122 11.2398 16.6474 13.1651 18.0413C13.7542 18.4678 14.5777 18.842 15.9997 18.842C17.4157 18.842 18.2942 18.4324 18.8344 18.0413C20.7597 16.6474 21.8419 14.2122 21.8419 10.4303C21.8419 7.97293 20.9837 6.39902 19.8841 5.42846C18.7585 4.43503 17.2951 3.99994 15.9997 3.99994C14.7044 3.99994 13.241 4.43503 12.1154 5.42846ZM10.792 3.929C12.3375 2.56485 14.2951 1.99994 15.9997 1.99994C17.7044 1.99994 19.662 2.56485 21.2075 3.929C22.779 5.31602 23.8419 7.45729 23.8419 10.4303C23.8419 14.3066 22.793 17.3385 20.4997 19.276V20.3089C20.4997 20.7959 20.8184 21.2255 21.2845 21.3667L22.9476 21.8707C25.2447 22.5667 26.8155 24.6841 26.8155 27.0843V30.0526H24.8155V27.0843C24.8155 25.5653 23.8214 24.2252 22.3676 23.7847L20.7045 23.2807C19.4382 22.897 18.5591 21.7556 18.5026 20.4434C17.8123 20.6859 16.9853 20.842 15.9997 20.842C15.005 20.842 14.1865 20.6944 13.4965 20.4513C13.4369 21.7602 12.5587 22.8978 11.295 23.2807L9.63186 23.7847C8.17811 24.2252 7.18396 25.5653 7.18396 27.0843V30.0526H5.18396V27.0843C5.18396 24.6841 6.75481 22.5667 9.05185 21.8707L10.715 21.3667C11.1811 21.2255 11.4997 20.7959 11.4997 20.3089V19.276C9.2065 17.3385 8.15764 14.3066 8.15764 10.4303C8.15764 7.45729 9.22051 5.31602 10.792 3.929Z' fill='%230b6a26'/></svg>");
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
.badge.bd-light-green .badge-icon.icon-family {
|
|
87
|
-
background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'><path fill-rule='evenodd' clip-rule='evenodd' d='M16.0394 21.0955C16.5717 21.0955 17.093 21.0063 17.6014 20.8372C17.9 21.7401 18.6188 22.4693 19.5635 22.7615L20.4295 23.0294C21.3633 23.3183 22 24.1817 22 25.1591V27H24V25.1591C24 23.3048 22.792 21.6667 21.0205 21.1187L20.1545 20.8509C19.7356 20.7213 19.45 20.334 19.45 19.8955V19.7449C21.1462 18.295 21.9 16.0583 21.9 13.2778C21.9 10.8447 20.8711 9.23277 19.577 8.25708C18.3332 7.3193 16.8903 7 16 7C15.1097 7 13.6668 7.3193 12.423 8.25708C11.1289 9.23277 10.1 10.8447 10.1 13.2778C10.1 16.0583 10.8538 18.295 12.55 19.7449V19.8955C12.55 20.334 12.2644 20.7213 11.8455 20.8509L10.9795 21.1187C9.20796 21.6667 8 23.3048 8 25.1591V27H10V25.1591C10 24.1817 10.6367 23.3183 11.5705 23.0294L12.4365 22.7615C13.3896 22.4667 14.1128 21.727 14.4065 20.813C14.9375 20.9979 15.4826 21.0955 16.0394 21.0955ZM12.1 13.2778C12.1 11.4886 12.8211 10.4617 13.627 9.85403C14.4832 9.20848 15.4903 9 16 9C16.5097 9 17.5168 9.20848 18.373 9.85403C19.1789 10.4617 19.9 11.4886 19.9 13.2778C19.9 15.9088 19.1434 17.5302 17.8667 18.447L17.4753 18.728C16.9672 18.9837 16.4907 19.0955 16.0394 19.0955C15.4812 19.0955 14.8855 18.9245 14.2393 18.5231L14.1333 18.447C12.8566 17.5302 12.1 15.9088 12.1 13.2778Z' fill='%230b6a26'/><path fill-rule='evenodd' clip-rule='evenodd' d='M6 19.955C6.24301 19.955 6.50063 19.9153 6.75514 19.8475C7.0813 20.4138 7.61269 20.8554 8.26724 21.0605L8.40095 21.1024C8.52133 21.1401 8.62873 21.2028 8.71818 21.2836C9.21418 20.834 9.80066 20.4758 10.4549 20.2401C10.103 19.7558 9.59939 19.382 8.99905 19.1939L8.86534 19.152C8.71342 19.1044 8.58812 19.0057 8.50596 18.8783C9.41844 17.937 9.8 16.5994 9.8 15.0556C9.8 13.5167 9.1507 12.4609 8.30704 11.8164C7.51308 11.2099 6.59336 11 6 11C5.40664 11 4.48692 11.2099 3.69296 11.8164C2.8493 12.4609 2.2 13.5167 2.2 15.0556C2.2 16.5845 2.57424 17.9112 3.46779 18.851L3.46121 18.8574L3.48918 18.8858C3.40698 19.0095 3.28362 19.1053 3.13466 19.152L3.00095 19.1939C1.81034 19.567 1 20.6702 1 21.9179V23H3V21.9179C3 21.5444 3.2426 21.2141 3.59905 21.1024L3.73276 21.0605C4.3858 20.8558 4.91624 20.4158 5.2426 19.8514C5.49788 19.9168 5.75644 19.955 6 19.955ZM4.2 15.0556C4.2 14.15 4.5507 13.678 4.90704 13.4058C5.31308 13.0956 5.79336 13 6 13C6.20664 13 6.68692 13.0956 7.09296 13.4058C7.4493 13.678 7.8 14.15 7.8 15.0556C7.8 16.2132 7.5391 16.9456 7.13947 17.4082L7.13758 17.4065C6.99679 17.5579 6.78144 17.7035 6.53517 17.8109C6.28066 17.9219 6.07954 17.955 6 17.955C5.90858 17.955 5.70643 17.922 5.46088 17.8209C5.29102 17.751 5.14074 17.665 5.02308 17.5752C4.5331 17.1288 4.2 16.3637 4.2 15.0556Z' fill='%230b6a26'/><path fill-rule='evenodd' clip-rule='evenodd' d='M26 19.955C26.2431 19.955 26.5007 19.9153 26.7552 19.8475C27.0813 20.4138 27.6127 20.8554 28.2673 21.0605L28.401 21.1024C28.7574 21.2141 29 21.5444 29 21.9179V23H31V21.9179C31 20.6702 30.1897 19.567 28.9991 19.1939L28.8654 19.152C28.7135 19.1044 28.5882 19.0057 28.506 18.8783C29.4185 17.937 29.8 16.5994 29.8 15.0556C29.8 13.5167 29.1507 12.4609 28.3071 11.8164C27.5131 11.2099 26.5934 11 26 11C25.4067 11 24.487 11.2099 23.693 11.8164C22.8493 12.4609 22.2 13.5167 22.2 15.0556C22.2 16.5845 22.5743 17.9112 23.4678 18.851L23.4613 18.8574L23.4892 18.8858C23.407 19.0095 23.2837 19.1053 23.1347 19.152L23.001 19.1939C22.4007 19.382 21.897 19.7558 21.5452 20.2401C22.1994 20.4758 22.7859 20.834 23.2819 21.2836C23.3713 21.2028 23.4787 21.1401 23.5991 21.1024L23.7328 21.0605C24.3858 20.8558 24.9163 20.4158 25.2426 19.8514C25.4979 19.9168 25.7565 19.955 26 19.955ZM24.2 15.0556C24.2 14.15 24.5507 13.678 24.9071 13.4058C25.3131 13.0956 25.7934 13 26 13C26.2067 13 26.687 13.0956 27.093 13.4058C27.4493 13.678 27.8 14.15 27.8 15.0556C27.8 16.2132 27.5391 16.9456 27.1395 17.4082L27.1376 17.4065C26.9968 17.5579 26.7815 17.7035 26.5352 17.8109C26.2807 17.9219 26.0796 17.955 26 17.955C25.9086 17.955 25.7065 17.922 25.4609 17.8209C25.2911 17.751 25.1408 17.665 25.0231 17.5752C24.5331 17.1288 24.2 16.3637 24.2 15.0556Z' fill='%230b6a26'/></svg>");
|
|
88
|
-
}
|
|
89
72
|
`;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { LitElement, html } from 'lit';
|
|
2
2
|
import { tokens } from "../../tokens/tokens.js";
|
|
3
|
+
import "../icons/family-icon.js";
|
|
4
|
+
import "../icons/individual-icon.js";
|
|
3
5
|
import badgeCSS from './badge.css.js';
|
|
4
6
|
|
|
5
7
|
export class BdBadge extends LitElement {
|
|
@@ -74,12 +76,13 @@ export class BdBadge extends LitElement {
|
|
|
74
76
|
|
|
75
77
|
_renderIcon() {
|
|
76
78
|
if (!this.icon) return '';
|
|
79
|
+
const color = this.variant === 'bd-light-green' ? '#0b6a26' : 'white';
|
|
77
80
|
|
|
78
81
|
switch (this.icon) {
|
|
79
82
|
case 'individual':
|
|
80
|
-
return html`<
|
|
83
|
+
return html`<bd-individual-icon size="16" color="${color}"></bd-individual-icon>`;
|
|
81
84
|
case 'family':
|
|
82
|
-
return html`<
|
|
85
|
+
return html`<bd-family-icon size="16" color="${color}"></bd-family-icon>`;
|
|
83
86
|
default:
|
|
84
87
|
return '';
|
|
85
88
|
}
|