@repobit/dex-system-design 0.18.0 → 0.19.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.
- package/CHANGELOG.md +20 -0
- package/package.json +15 -4
- package/src/components/anchor/anchor.stories.js +9 -9
- package/src/components/badge/badge.css.js +52 -5
- package/src/components/badge/badge.js +58 -5
- package/src/components/badge/badge.stories.js +183 -15
- package/src/components/carousel/carousel.css.js +13 -13
- package/src/components/footer/footer-links-group.css.js +1 -5
- package/src/components/footer/footer-lp.css.js +49 -533
- package/src/components/footer/footer-lp.js +86 -203
- package/src/components/footer/footer-nav-menu.css.js +33 -19
- package/src/components/footer/footer-nav-menu.js +3 -3
- package/src/components/footer/footer.css.js +263 -193
- package/src/components/footer/footer.js +163 -166
- package/src/tokens/tokens.js +877 -116
- package/src/components/Button/icons.css +0 -5
- package/src/components/Button/index.js +0 -0
- package/src/components/FAQ/faq.css.js +0 -117
- package/src/components/FAQ/faq.js +0 -0
- package/src/components/FAQ/faq.stories.js +0 -66
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,26 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [0.19.0](https://github.com/bitdefender/dex-core/compare/@repobit/dex-system-design@0.18.1...@repobit/dex-system-design@0.19.0) (2025-10-01)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* **DEX-1002:** footer structure modifications + new badges ([e07a521](https://github.com/bitdefender/dex-core/commit/e07a5210f8a43469f20e9afcf4218494154ff6b7))
|
|
12
|
+
* **DEX-1002:** update components with SVG and delete FAQ folder, add new images ([c65c9ed](https://github.com/bitdefender/dex-core/commit/c65c9edfb9d9e3283a97d96113d1fb1be0e1e428))
|
|
13
|
+
* **DEX-1002:** update footer structure and styles ([86470c6](https://github.com/bitdefender/dex-core/commit/86470c6d9a8db6a67326a1a1466957c34f17a05b))
|
|
14
|
+
* **DEX-1002:** update tokens.js to be up to date with new tokens ([d7be8d1](https://github.com/bitdefender/dex-core/commit/d7be8d18cff4835f2eecb227cb8030c73ba36503))
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
## [0.18.1](https://github.com/bitdefender/dex-core/compare/@repobit/dex-system-design@0.18.0...@repobit/dex-system-design@0.18.1) (2025-09-30)
|
|
19
|
+
|
|
20
|
+
**Note:** Version bump only for package @repobit/dex-system-design
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
6
26
|
## [0.18.0](https://github.com/bitdefender/dex-core/compare/@repobit/dex-system-design@0.17.0...@repobit/dex-system-design@0.18.0) (2025-09-11)
|
|
7
27
|
|
|
8
28
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@repobit/dex-system-design",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.19.0",
|
|
4
4
|
"description": "Design system based on Web Components.",
|
|
5
5
|
"author": "Iordache Matei Cezar <miordache@bitdefender.com>",
|
|
6
6
|
"homepage": "https://github.com/bitdefender/dex-core#readme",
|
|
@@ -16,17 +16,28 @@
|
|
|
16
16
|
"LICENSE"
|
|
17
17
|
],
|
|
18
18
|
"exports": {
|
|
19
|
+
"./accordion-bg": "./src/components/accordion/accordion-bg.js",
|
|
20
|
+
"./accordion-no-bg": "./src/components/accordion/accordion-no-bg.js",
|
|
21
|
+
"./accordion": "./src/components/accordion/accordion.js",
|
|
19
22
|
"./anchor": "./src/components/anchor/anchor-nav.js",
|
|
20
23
|
"./badge": "./src/components/badge/badge.js",
|
|
21
24
|
"./button": "./src/components/Button/Button.js",
|
|
22
25
|
"./carousel": "./src/components/carousel/carousel.js",
|
|
23
26
|
"./checkbox": "./src/components/checkbox/checkbox.js",
|
|
24
|
-
"./divider": "./src/components/divider/divider-horizontal.js",
|
|
25
|
-
"./
|
|
27
|
+
"./divider-horizontal": "./src/components/divider/divider-horizontal.js",
|
|
28
|
+
"./divider-vertical": "./src/components/divider/divider-vertical.js",
|
|
29
|
+
"./dropdown": "./src/components/dropdown/dropdown.js",
|
|
30
|
+
"./footer": "./src/components/footer/footer.js",
|
|
31
|
+
"./footer-links-group": "./src/components/footer/footer-links-group.js",
|
|
32
|
+
"./footer-lp": "./src/components/footer/footer-lp.js",
|
|
33
|
+
"./footer-nav-menu": "./src/components/footer/footer-nav-menu.js",
|
|
34
|
+
"./grid": "./src/components/grid/grid.js",
|
|
26
35
|
"./header": "./src/components/header/header.js",
|
|
27
36
|
"./highlight": "./src/components/highlight/highlight.js",
|
|
28
37
|
"./input": "./src/components/input/input.js",
|
|
38
|
+
"./link": "./src/components/link/link.js",
|
|
29
39
|
"./light-carousel": "./src/components/light-carousel/light-carousel.js",
|
|
40
|
+
"./modal": "./src/components/modal/modal.js",
|
|
30
41
|
"./paragraph": "./src/components/paragraph/paragraph.js",
|
|
31
42
|
"./pricing-cards": "./src/components/pricing-cards/pricing-card.js",
|
|
32
43
|
"./radio": "./src/components/radio/radio.js",
|
|
@@ -68,5 +79,5 @@
|
|
|
68
79
|
"volta": {
|
|
69
80
|
"node": "22.14.0"
|
|
70
81
|
},
|
|
71
|
-
"gitHead": "
|
|
82
|
+
"gitHead": "8769f0cc5d87f5c07c143a76afe9a61c057b9621"
|
|
72
83
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { html } from 'lit';
|
|
2
|
-
import '../
|
|
2
|
+
import '../accordion/accordion-bg.js';
|
|
3
3
|
import '../anchor/anchor-nav.js';
|
|
4
4
|
import '../carousel/carousel.js';
|
|
5
5
|
import '../pricing-cards/pricing-card.js';
|
|
@@ -43,7 +43,7 @@ Folosește elemente \`<bd-anchor-nav-item>\` pentru fiecare link, ce trebuie să
|
|
|
43
43
|
|
|
44
44
|
### Alte componente utilizate
|
|
45
45
|
|
|
46
|
-
- \`bd-
|
|
46
|
+
- \`bd-accordion-bg\`, \`bd-accordion-bg-item\`
|
|
47
47
|
- \`bd-tabs-component\`
|
|
48
48
|
- \`bd-carousel-section\`, \`bd-carousel-item\`
|
|
49
49
|
- \`bd-pricing-container\`
|
|
@@ -65,25 +65,25 @@ const Template = () => html`
|
|
|
65
65
|
<bd-container>
|
|
66
66
|
<section id="anchor-1-section" style="height: 800px;">
|
|
67
67
|
<hr />
|
|
68
|
-
<bd-
|
|
69
|
-
<bd-
|
|
68
|
+
<bd-accordion-bg title="Questions? Answers." id="anchor-1-section">
|
|
69
|
+
<bd-accordion-bg-item title="How does Bitdefender Internet Security protect me?">
|
|
70
70
|
<p>Bitdefender Internet Security provides the best protection...</p>
|
|
71
71
|
<p>Bitdefender Internet Security provides the best protection...</p>
|
|
72
72
|
<p>Bitdefender Internet Security provides the best protection...</p>
|
|
73
|
-
</bd-
|
|
73
|
+
</bd-accordion-bg-item>
|
|
74
74
|
|
|
75
|
-
<bd-
|
|
75
|
+
<bd-accordion-bg-item title="Does Bitdefender protect me against ransomware?">
|
|
76
76
|
<p>
|
|
77
77
|
Yes! Bitdefender Internet Security offers unbeatable ransomware
|
|
78
78
|
protection...
|
|
79
79
|
</p>
|
|
80
|
-
</bd-
|
|
80
|
+
</bd-accordion-bg-item>
|
|
81
81
|
|
|
82
|
-
<bd-
|
|
82
|
+
<bd-accordion-bg-item title="Do I get a VPN with Bitdefender Internet Security?">
|
|
83
83
|
<p>
|
|
84
84
|
Bitdefender Internet Security includes a basic VPN with 200MB per day.
|
|
85
85
|
</p>
|
|
86
|
-
</bd-
|
|
86
|
+
</bd-accordion-bg-item>
|
|
87
87
|
</bd-faq-section>
|
|
88
88
|
</section>
|
|
89
89
|
|
|
@@ -5,23 +5,70 @@ export default css`
|
|
|
5
5
|
--badge-background-default: #026DFF;
|
|
6
6
|
--badge-font-weight: 700;
|
|
7
7
|
--badge-font-family: var(--typography-fontFamily-sans, sans-serif);
|
|
8
|
+
--badge-padding: 0 var(--spacing-12);
|
|
9
|
+
--badge-border-radius: var(--spacing-20);
|
|
10
|
+
--badge-font-size: var(--typography-label-extra-small-fontSize);
|
|
8
11
|
}
|
|
9
12
|
|
|
10
13
|
.badge {
|
|
11
14
|
display: inline-block;
|
|
12
15
|
background-color: var(--color-blue-500);
|
|
13
16
|
color: var(--color-neutral-0);
|
|
14
|
-
border-radius: var(--
|
|
15
|
-
font-size: var(--
|
|
17
|
+
border-radius: var(--badge-border-radius);
|
|
18
|
+
font-size: var(--badge-font-size);
|
|
16
19
|
font-weight: var(--badge-font-weight);
|
|
17
20
|
font-family: var(--badge-font-family);
|
|
18
21
|
line-height: var(--spacing-20);
|
|
19
|
-
padding:
|
|
22
|
+
padding: var(--badge-padding);
|
|
20
23
|
white-space: nowrap;
|
|
21
24
|
user-select: none;
|
|
22
25
|
vertical-align: middle;
|
|
23
26
|
box-sizing: border-box;
|
|
24
27
|
bottom: var(--spacing-4);
|
|
25
|
-
position: relative
|
|
28
|
+
position: relative;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/* Stil pentru badge-ul light-blue */
|
|
32
|
+
.badge.bd-light-blue {
|
|
33
|
+
background-color: var(--color-blue-500);
|
|
34
|
+
color: white;
|
|
35
|
+
padding: var(--spacing-4) var(--spacing-14);
|
|
36
|
+
border-radius: var(--spacing-14);
|
|
37
|
+
font-size: var(--spacing-16);
|
|
38
|
+
font-family: var(--typography-fontFamily-sans);
|
|
39
|
+
font-weight: var(--typography-fontWeight-semibold);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
/* Stil pentru badge-ul light-green */
|
|
43
|
+
.badge.bd-light-green {
|
|
44
|
+
background-color: #c3f4d4;
|
|
45
|
+
color: #0b6a26;
|
|
46
|
+
padding: var(--spacing-4) var(--spacing-14);
|
|
47
|
+
border-radius: var(--spacing-14);
|
|
48
|
+
font-size: var(--spacing-16);
|
|
49
|
+
font-family: var(--typography-fontFamily-sans);
|
|
50
|
+
font-weight: var(--typography-fontWeight-semibold);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/* Stiluri pentru variantele light cu size */
|
|
54
|
+
.badge.bd-light-blue.sm,
|
|
55
|
+
.badge.bd-light-green.sm {
|
|
56
|
+
padding: var(--spacing-2) var(--spacing-10);
|
|
57
|
+
border-radius: var(--spacing-12);
|
|
58
|
+
font-size: var(--typography-label-extra-small-fontSize);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.badge.bd-light-blue.md,
|
|
62
|
+
.badge.bd-light-green.md {
|
|
63
|
+
padding: var(--spacing-4) var(--spacing-14);
|
|
64
|
+
border-radius: var(--spacing-14);
|
|
65
|
+
font-size: var(--typography-label-small-fontSize);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.badge.bd-light-blue.lg,
|
|
69
|
+
.badge.bd-light-green.lg {
|
|
70
|
+
padding: var(--spacing-6) var(--spacing-16);
|
|
71
|
+
border-radius: var(--spacing-16);
|
|
72
|
+
font-size: var(--typography-label-medium-fontSize);
|
|
26
73
|
}
|
|
27
|
-
`;
|
|
74
|
+
`;
|
|
@@ -4,27 +4,80 @@ import badgeCSS from './badge.css.js';
|
|
|
4
4
|
|
|
5
5
|
export class BdBadge extends LitElement {
|
|
6
6
|
static properties = {
|
|
7
|
-
color: { type: String }
|
|
7
|
+
color : { type: String },
|
|
8
|
+
variant : { type: String },
|
|
9
|
+
size : { type: String }, // sm, md, lg
|
|
10
|
+
fontsize: { type: String } // 12, 14, 16
|
|
8
11
|
};
|
|
9
12
|
|
|
10
|
-
|
|
11
|
-
|
|
12
13
|
constructor() {
|
|
13
14
|
super();
|
|
14
15
|
this.text = 'Badge';
|
|
15
16
|
this.color = '#026DFF';
|
|
17
|
+
this.variant = '';
|
|
18
|
+
this.size = 'md'; // Dimensiune implicită medium
|
|
19
|
+
this.fontsize = '14'; // Font size implicit 14px
|
|
16
20
|
}
|
|
17
21
|
|
|
18
22
|
updated(changed) {
|
|
19
23
|
if (changed.has('color')) {
|
|
20
24
|
this.style.setProperty('--badge-bg', this.color);
|
|
21
25
|
}
|
|
26
|
+
|
|
27
|
+
if (changed.has('size') || changed.has('fontsize')) {
|
|
28
|
+
this._updateSizeStyles();
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
_updateSizeStyles() {
|
|
33
|
+
// Mapăm size la valori specifice
|
|
34
|
+
const sizeMap = {
|
|
35
|
+
'sm': {
|
|
36
|
+
padding : 'var(--spacing-4) var(--spacing-8)',
|
|
37
|
+
borderRadius: 'var(--spacing-12)',
|
|
38
|
+
fontSize : 'var(--typography-label-extra-small-fontSize)'
|
|
39
|
+
},
|
|
40
|
+
'md': {
|
|
41
|
+
padding : 'var(--spacing-4) var(--spacing-12)',
|
|
42
|
+
borderRadius: 'var(--spacing-16)',
|
|
43
|
+
fontSize : 'var(--typography-label-small-fontSize)'
|
|
44
|
+
},
|
|
45
|
+
'lg': {
|
|
46
|
+
padding : 'var(--spacing-6) var(--spacing-16)',
|
|
47
|
+
borderRadius: 'var(--spacing-20)',
|
|
48
|
+
fontSize : 'var(--typography-label-medium-fontSize)'
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
// Mapăm fontsize la valori specifice
|
|
53
|
+
const fontSizeMap = {
|
|
54
|
+
'12': 'var(--typography-label-extra-small-fontSize)',
|
|
55
|
+
'14': 'var(--typography-label-small-fontSize)',
|
|
56
|
+
'16': 'var(--typography-label-medium-fontSize)'
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
// Aplicăm stilurile în funcție de size
|
|
60
|
+
if (this.size && sizeMap[this.size]) {
|
|
61
|
+
const sizeStyle = sizeMap[this.size];
|
|
62
|
+
this.style.setProperty('--badge-padding', sizeStyle.padding);
|
|
63
|
+
this.style.setProperty('--badge-border-radius', sizeStyle.borderRadius);
|
|
64
|
+
|
|
65
|
+
// Doar dacă fontsize nu este setat explicit, folosim valoarea din size
|
|
66
|
+
if (!this.fontsize) {
|
|
67
|
+
this.style.setProperty('--badge-font-size', sizeStyle.fontSize);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
// Aplicăm fontsize dacă este setat explicit
|
|
72
|
+
if (this.fontsize && fontSizeMap[this.fontsize]) {
|
|
73
|
+
this.style.setProperty('--badge-font-size', fontSizeMap[this.fontsize]);
|
|
74
|
+
}
|
|
22
75
|
}
|
|
23
76
|
|
|
24
77
|
render() {
|
|
25
|
-
return html`<span class="badge"><slot></slot></span>`;
|
|
78
|
+
return html`<span class="badge ${this.variant}"><slot></slot></span>`;
|
|
26
79
|
}
|
|
27
80
|
}
|
|
28
81
|
BdBadge.styles = [tokens, badgeCSS];
|
|
29
82
|
|
|
30
|
-
customElements.define('bd-badge', BdBadge);
|
|
83
|
+
customElements.define('bd-badge', BdBadge);
|
|
@@ -2,35 +2,203 @@ import { html } from 'lit';
|
|
|
2
2
|
import './badge.js';
|
|
3
3
|
|
|
4
4
|
export default {
|
|
5
|
-
title: 'Atoms/Badge',
|
|
5
|
+
title : 'Atoms/Badge',
|
|
6
6
|
component: 'bd-badge',
|
|
7
|
-
argTypes: {
|
|
7
|
+
argTypes : {
|
|
8
8
|
children: {
|
|
9
|
-
control: 'text',
|
|
10
|
-
description: 'Conținutul afișat în interiorul badge-ului (prin slot).',
|
|
11
|
-
defaultValue: 'Badge'
|
|
9
|
+
control : 'text',
|
|
10
|
+
description : 'Conținutul afișat în interiorul badge-ului (prin slot).',
|
|
11
|
+
defaultValue: 'Badge'
|
|
12
12
|
},
|
|
13
13
|
color: {
|
|
14
|
-
control: 'color',
|
|
15
|
-
description: 'Culoarea de fundal a badge-ului',
|
|
16
|
-
defaultValue: '#026DFF'
|
|
14
|
+
control : 'color',
|
|
15
|
+
description : 'Culoarea de fundal a badge-ului',
|
|
16
|
+
defaultValue: '#026DFF'
|
|
17
17
|
},
|
|
18
|
+
variant: {
|
|
19
|
+
control: {
|
|
20
|
+
type : 'select',
|
|
21
|
+
options: ['', 'bd-light-blue', 'bd-light-green']
|
|
22
|
+
},
|
|
23
|
+
description : 'Variantă de stil pentru badge',
|
|
24
|
+
defaultValue: ''
|
|
25
|
+
},
|
|
26
|
+
size: {
|
|
27
|
+
control: {
|
|
28
|
+
type : 'select',
|
|
29
|
+
options: ['sm', 'md', 'lg']
|
|
30
|
+
},
|
|
31
|
+
description : 'Dimensiunea badge-ului',
|
|
32
|
+
defaultValue: 'md'
|
|
33
|
+
},
|
|
34
|
+
fontsize: {
|
|
35
|
+
control: {
|
|
36
|
+
type : 'select',
|
|
37
|
+
options: ['12', '14', '16']
|
|
38
|
+
},
|
|
39
|
+
description : 'Mărimea fontului',
|
|
40
|
+
defaultValue: '14'
|
|
41
|
+
}
|
|
18
42
|
},
|
|
19
43
|
parameters: {
|
|
20
44
|
docs: {
|
|
21
45
|
description: {
|
|
22
|
-
component: 'Un badge simplu care afișează un text prin slot și are
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
46
|
+
component: 'Un badge simplu care afișează un text prin slot și are multiple opțiuni de personalizare.'
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
26
50
|
};
|
|
27
51
|
|
|
28
|
-
|
|
29
|
-
|
|
52
|
+
// Template principal
|
|
53
|
+
const Template = ({ children, color, variant, size, fontsize }) => html`
|
|
54
|
+
<bd-badge
|
|
55
|
+
color="${color}"
|
|
56
|
+
variant="${variant}"
|
|
57
|
+
size="${size}"
|
|
58
|
+
fontsize="${fontsize}"
|
|
59
|
+
>
|
|
60
|
+
${children}
|
|
61
|
+
</bd-badge>
|
|
62
|
+
`;
|
|
63
|
+
|
|
64
|
+
// Template pentru grid cu multiple badge-uri
|
|
65
|
+
const GridTemplate = (items) => html`
|
|
66
|
+
<div style="display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 16px;">
|
|
67
|
+
${items}
|
|
68
|
+
</div>
|
|
69
|
+
`;
|
|
70
|
+
|
|
71
|
+
// Template pentru secțiune cu titlu
|
|
72
|
+
const SectionTemplate = (title, items) => html`
|
|
73
|
+
<div style="margin-bottom: 32px;">
|
|
74
|
+
<h3 style="margin-bottom: 16px; color: #333;">${title}</h3>
|
|
75
|
+
${GridTemplate(items)}
|
|
76
|
+
</div>
|
|
30
77
|
`;
|
|
31
78
|
|
|
32
79
|
export const Default = Template.bind({});
|
|
33
80
|
Default.args = {
|
|
34
81
|
children: 'Badge',
|
|
35
|
-
color: '#026DFF',
|
|
82
|
+
color : '#026DFF',
|
|
83
|
+
variant : '',
|
|
84
|
+
size : 'md',
|
|
85
|
+
fontsize: '14'
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
export const AllVariants = () => {
|
|
89
|
+
const variants = [
|
|
90
|
+
{ variant: '', label: 'Default' },
|
|
91
|
+
{ variant: 'bd-light-blue', label: 'Light Blue' },
|
|
92
|
+
{ variant: 'bd-light-green', label: 'Light Green' }
|
|
93
|
+
];
|
|
94
|
+
|
|
95
|
+
return SectionTemplate(
|
|
96
|
+
'Toate Variantele',
|
|
97
|
+
variants.map(item => html`
|
|
98
|
+
<bd-badge variant="${item.variant}">${item.label}</bd-badge>
|
|
99
|
+
`)
|
|
100
|
+
);
|
|
36
101
|
};
|
|
102
|
+
|
|
103
|
+
export const AllSizes = () => {
|
|
104
|
+
const sizes = [
|
|
105
|
+
{ size: 'sm', label: 'Small' },
|
|
106
|
+
{ size: 'md', label: 'Medium' },
|
|
107
|
+
{ size: 'lg', label: 'Large' }
|
|
108
|
+
];
|
|
109
|
+
|
|
110
|
+
return SectionTemplate(
|
|
111
|
+
'Toate Dimensiunile',
|
|
112
|
+
sizes.map(item => html`
|
|
113
|
+
<bd-badge size="${item.size}">${item.label}</bd-badge>
|
|
114
|
+
`)
|
|
115
|
+
);
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
export const AllFontSizes = () => {
|
|
119
|
+
const fontSizes = [
|
|
120
|
+
{ fontsize: '12', label: 'Font 12' },
|
|
121
|
+
{ fontsize: '14', label: 'Font 14' },
|
|
122
|
+
{ fontsize: '16', label: 'Font 16' }
|
|
123
|
+
];
|
|
124
|
+
|
|
125
|
+
return SectionTemplate(
|
|
126
|
+
'Toate Mărimile de Font',
|
|
127
|
+
fontSizes.map(item => html`
|
|
128
|
+
<bd-badge fontsize="${item.fontsize}">${item.label}</bd-badge>
|
|
129
|
+
`)
|
|
130
|
+
);
|
|
131
|
+
};
|
|
132
|
+
|
|
133
|
+
export const Combinations = () => {
|
|
134
|
+
const combinations = [
|
|
135
|
+
{ variant: 'bd-light-blue', size: 'sm', label: 'Light Blue Small' },
|
|
136
|
+
{ variant: 'bd-light-blue', size: 'md', label: 'Light Blue Medium' },
|
|
137
|
+
{ variant: 'bd-light-blue', size: 'lg', label: 'Light Blue Large' },
|
|
138
|
+
{ variant: 'bd-light-green', size: 'sm', label: 'Light Green Small' },
|
|
139
|
+
{ variant: 'bd-light-green', size: 'md', label: 'Light Green Medium' },
|
|
140
|
+
{ variant: 'bd-light-green', size: 'lg', label: 'Light Green Large' }
|
|
141
|
+
];
|
|
142
|
+
|
|
143
|
+
return SectionTemplate(
|
|
144
|
+
'Combinații Variante și Dimensiuni',
|
|
145
|
+
combinations.map(item => html`
|
|
146
|
+
<bd-badge variant="${item.variant}" size="${item.size}">${item.label}</bd-badge>
|
|
147
|
+
`)
|
|
148
|
+
);
|
|
149
|
+
};
|
|
150
|
+
|
|
151
|
+
export const CustomColors = () => {
|
|
152
|
+
const colors = [
|
|
153
|
+
{ color: '#FF5733', label: 'Rosu' },
|
|
154
|
+
{ color: '#33FF57', label: 'Verde' },
|
|
155
|
+
{ color: '#3357FF', label: 'Albastru' },
|
|
156
|
+
{ color: '#F3FF33', label: 'Galben', textColor: '#000' },
|
|
157
|
+
{ color: '#FF33F3', label: 'Roz' },
|
|
158
|
+
{ color: '#33FFF3', label: 'Turcoaz' }
|
|
159
|
+
];
|
|
160
|
+
|
|
161
|
+
return SectionTemplate(
|
|
162
|
+
'Culori Personalizate',
|
|
163
|
+
colors.map(item => html`
|
|
164
|
+
<bd-badge color="${item.color}">${item.label}</bd-badge>
|
|
165
|
+
`)
|
|
166
|
+
);
|
|
167
|
+
};
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
// Setări pentru fiecare story
|
|
172
|
+
AllVariants.parameters = {
|
|
173
|
+
docs: {
|
|
174
|
+
description: {
|
|
175
|
+
story: 'Toate variantele de badge disponibile.'
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
};
|
|
179
|
+
|
|
180
|
+
AllSizes.parameters = {
|
|
181
|
+
docs: {
|
|
182
|
+
description: {
|
|
183
|
+
story: 'Toate dimensiunile de badge disponibile.'
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
};
|
|
187
|
+
|
|
188
|
+
AllFontSizes.parameters = {
|
|
189
|
+
docs: {
|
|
190
|
+
description: {
|
|
191
|
+
story: 'Toate mărimile de font disponibile pentru badge-uri.'
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
};
|
|
195
|
+
|
|
196
|
+
Combinations.parameters = {
|
|
197
|
+
docs: {
|
|
198
|
+
description: {
|
|
199
|
+
story: 'Diverse combinații între variante și dimensiuni.'
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
|
|
@@ -72,42 +72,42 @@ export default css`
|
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
.bd-left-arrow {
|
|
75
|
-
content: url("/assets/left_normal.
|
|
75
|
+
content: url("/assets/left_normal.svg");
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
.bd-left-arrow:hover {
|
|
79
|
-
content: url("/assets/left_hover.
|
|
79
|
+
content: url("/assets/left_hover.svg");
|
|
80
80
|
}
|
|
81
81
|
|
|
82
82
|
.bd-left-arrow:active {
|
|
83
|
-
content: url("/assets/left_clicked.
|
|
83
|
+
content: url("/assets/left_clicked.svg");
|
|
84
84
|
}
|
|
85
85
|
|
|
86
86
|
.bd-left-arrow:disabled {
|
|
87
|
-
content: url("/assets/left_disabled.
|
|
87
|
+
content: url("/assets/left_disabled.svg");
|
|
88
88
|
}
|
|
89
89
|
|
|
90
90
|
.bd-right-arrow {
|
|
91
|
-
content: url("/assets/right_normal.
|
|
91
|
+
content: url("/assets/right_normal.svg");
|
|
92
92
|
}
|
|
93
93
|
|
|
94
94
|
.bd-right-arrow:hover {
|
|
95
|
-
content: url("/assets/right_hover.
|
|
95
|
+
content: url("/assets/right_hover.svg");
|
|
96
96
|
}
|
|
97
97
|
|
|
98
98
|
.bd-right-arrow:active {
|
|
99
|
-
content: url("/assets/right_clicked.
|
|
99
|
+
content: url("/assets/right_clicked.svg");
|
|
100
100
|
}
|
|
101
101
|
|
|
102
102
|
.bd-right-arrow:disabled {
|
|
103
|
-
content: url("/assets/right_disabled.
|
|
103
|
+
content: url("/assets/right_disabled.svg");
|
|
104
104
|
}
|
|
105
105
|
.bd-right-arrow.bd-disabled {
|
|
106
|
-
content: url("/assets/right_disabled.
|
|
106
|
+
content: url("/assets/right_disabled.svg");
|
|
107
107
|
cursor: not-allowed;
|
|
108
108
|
}
|
|
109
109
|
.bd-left-arrow.bd-disabled {
|
|
110
|
-
content: url("/assets/left_disabled.
|
|
110
|
+
content: url("/assets/left_disabled.svg");
|
|
111
111
|
cursor: not-allowed;
|
|
112
112
|
}
|
|
113
113
|
.bd-disabled {
|
|
@@ -234,7 +234,7 @@ export default css`
|
|
|
234
234
|
}
|
|
235
235
|
|
|
236
236
|
.bd-plus-button {
|
|
237
|
-
content: url("/assets/more_normal.
|
|
237
|
+
content: url("/assets/more_normal.svg");
|
|
238
238
|
position: absolute;
|
|
239
239
|
bottom: var(--spacing-10);
|
|
240
240
|
right: var(--spacing-10);
|
|
@@ -250,7 +250,7 @@ export default css`
|
|
|
250
250
|
cursor: pointer;
|
|
251
251
|
}
|
|
252
252
|
.bd-plus-button:hover {
|
|
253
|
-
content: url("/assets/more_hover.
|
|
253
|
+
content: url("/assets/more_hover.svg");
|
|
254
254
|
}
|
|
255
255
|
|
|
256
256
|
bd-carousel-item::part(content) {
|
|
@@ -258,7 +258,7 @@ export default css`
|
|
|
258
258
|
}
|
|
259
259
|
|
|
260
260
|
.bd-plus-button:active {
|
|
261
|
-
content: url("/assets/more_pressed.
|
|
261
|
+
content: url("/assets/more_pressed.svg");
|
|
262
262
|
}
|
|
263
263
|
|
|
264
264
|
.bd-left-arrow {
|
|
@@ -5,9 +5,7 @@ export default css`
|
|
|
5
5
|
display: flex;
|
|
6
6
|
flex-direction: column;
|
|
7
7
|
gap: var(--spacing-12);
|
|
8
|
-
padding-
|
|
9
|
-
padding-bottom: var(--spacing-24);
|
|
10
|
-
|
|
8
|
+
padding-right: var(--size-64);
|
|
11
9
|
}
|
|
12
10
|
|
|
13
11
|
h4 {
|
|
@@ -28,8 +26,6 @@ export default css`
|
|
|
28
26
|
font-size: var(--typography-body-regular-fontSize);
|
|
29
27
|
font-family: var(--typography-fontFamily-sans, 'IBM Plex Sans');
|
|
30
28
|
font-weight: var(--typography-heading-h1-fontWeight);
|
|
31
|
-
margin-bottom: 1rem;
|
|
32
|
-
margin-top: 1rem;
|
|
33
29
|
color: #ffffff;
|
|
34
30
|
}
|
|
35
31
|
|