@sellmate/design-system 1.0.21 → 1.0.23
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/dist/cjs/app-globals-V2Kpy_OQ.js +5 -0
- package/dist/cjs/{select-keyboard-navigation-CtstKOb3.js → base-dropdown-event-BTPlZ1KF.js} +0 -38
- package/dist/cjs/component.button-C6xBMwHf.js +115 -0
- package/dist/cjs/design-system.cjs.js +4 -3
- package/dist/cjs/{index-D-PnW6jc.js → index-Qvv0fGgj.js} +9 -117
- package/dist/cjs/loader.cjs.js +4 -3
- package/dist/cjs/sd-badge.cjs.entry.js +2 -2
- package/dist/cjs/sd-button-v2.cjs.entry.js +86 -0
- package/dist/cjs/sd-button-v2.config-BK45EPK_.js +203 -0
- package/dist/cjs/sd-button_21.cjs.entry.js +121 -67
- package/dist/cjs/sd-card.cjs.entry.js +2 -2
- package/dist/cjs/sd-date-picker.cjs.entry.js +2 -2
- package/dist/cjs/sd-dropdown-button.cjs.entry.js +274 -0
- package/dist/cjs/sd-file-picker.cjs.entry.js +4 -4
- package/dist/cjs/sd-form.cjs.entry.js +1 -1
- package/dist/cjs/sd-guide.cjs.entry.js +3 -3
- package/dist/cjs/sd-popover.cjs.entry.js +4 -4
- package/dist/cjs/sd-progress.cjs.entry.js +3 -3
- package/dist/cjs/sd-radio-button-group.cjs.entry.js +1 -1
- package/dist/cjs/sd-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/sd-select-multiple-group.cjs.entry.js +4 -3
- package/dist/cjs/sd-select-multiple.cjs.entry.js +5 -4
- package/dist/cjs/sd-select-option-group.cjs.entry.js +4 -4
- package/dist/cjs/sd-tabs.cjs.entry.js +7 -9
- package/dist/cjs/sd-tag.cjs.entry.js +96 -38
- package/dist/cjs/sd-toast.cjs.entry.js +3 -3
- package/dist/cjs/sd-toggle-button.cjs.entry.js +2 -2
- package/dist/cjs/sd-toggle.cjs.entry.js +2 -2
- package/dist/cjs/select-keyboard-navigation-s2wP37xZ.js +40 -0
- package/dist/cjs/{tooltipArrow-CMyNLSC-.js → tooltipArrow-Mb2Dhc7T.js} +1 -1
- package/dist/collection/collection-manifest.json +4 -2
- package/dist/collection/components/sd-badge/sd-badge.js +1 -1
- package/dist/collection/components/sd-button-v2/sd-button-v2.config.js +190 -0
- package/dist/collection/components/sd-button-v2/sd-button-v2.css +120 -0
- package/dist/collection/components/sd-button-v2/sd-button-v2.js +249 -0
- package/dist/collection/components/sd-card/sd-card.js +1 -1
- package/dist/collection/components/sd-date-picker/sd-date-picker.js +1 -1
- package/dist/collection/components/sd-date-range-picker/sd-date-range-picker.js +2 -2
- package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.config.js +62 -0
- package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.css +171 -0
- package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.js +384 -0
- package/dist/collection/components/sd-field/sd-field.js +3 -3
- package/dist/collection/components/sd-file-picker/sd-file-picker.js +3 -3
- package/dist/collection/components/sd-floating-portal/sd-floating-portal.js +1 -1
- package/dist/collection/components/sd-guide/sd-guide.js +2 -2
- package/dist/collection/components/sd-icon/sd-icon.js +1 -1
- package/dist/collection/components/sd-input/sd-input.js +1 -1
- package/dist/collection/components/sd-loading-spinner/sd-loading-spinner.js +1 -1
- package/dist/collection/components/sd-number-input/sd-number-input.js +4 -4
- package/dist/collection/components/sd-pagination/sd-pagination.js +2 -2
- package/dist/collection/components/sd-popover/sd-popover.js +2 -2
- package/dist/collection/components/sd-portal/sd-portal.js +89 -19
- package/dist/collection/components/sd-progress/sd-progress.js +2 -2
- package/dist/collection/components/sd-select/sd-select-dropdown/sd-select-dropdown.js +2 -2
- package/dist/collection/components/sd-select/sd-select-option/sd-select-option.js +1 -1
- package/dist/collection/components/sd-select/sd-select-search-input/sd-select-search-input.js +3 -3
- package/dist/collection/components/sd-select-multiple/sd-select-multiple.js +1 -1
- package/dist/collection/components/sd-select-multiple-group/sd-select-option-group/sd-select-option-group.js +3 -3
- package/dist/collection/components/sd-tabs/sd-tabs.js +6 -8
- package/dist/collection/components/sd-tag/sd-tag.config.js +70 -0
- package/dist/collection/components/sd-tag/sd-tag.css +26 -56
- package/dist/collection/components/sd-tag/sd-tag.js +51 -104
- package/dist/collection/components/sd-textarea/sd-textarea.js +2 -2
- package/dist/collection/components/sd-toast/sd-toast.js +2 -2
- package/dist/collection/components/sd-toggle/sd-toggle.js +1 -1
- package/dist/collection/components/sd-toggle-button/sd-toggle-button.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/{p-DdOM8yc2.js → p-2FdkYfts.js} +1 -1
- package/dist/components/{p-CWg2auF3.js → p-B1o7vc2v.js} +1 -1
- package/dist/components/p-B1vJXa29.js +1 -0
- package/dist/components/p-BFO8hHjW.js +1 -0
- package/dist/components/{p-CbQobmaB.js → p-BKTfQGcR.js} +1 -1
- package/dist/components/{p-D0U1cMbs.js → p-BNuWMSR_.js} +1 -1
- package/dist/components/{p-B-UC5tW2.js → p-BxXKe48B.js} +1 -1
- package/dist/components/p-CAZeEBeS.js +1 -0
- package/dist/components/{p-D35gOcGh.js → p-CDzGasXW.js} +1 -1
- package/dist/components/{p-MmKik3mL.js → p-CVvYLd5J.js} +1 -1
- package/dist/components/{p-CU5TiEeI.js → p-CdCMe4bN.js} +1 -1
- package/dist/components/{p-rn5S2icF.js → p-CwM24aVj.js} +1 -1
- package/dist/components/p-Cy6HMEsK.js +1 -0
- package/dist/components/{p-BVFlD1Lp.js → p-CzHa12Ax.js} +1 -1
- package/dist/components/{p-Cef06v8S.js → p-Czq-8oT7.js} +1 -1
- package/dist/components/{p-DdNQILvd.js → p-D-ian_bu.js} +1 -1
- package/dist/components/{p-qSu-ayDy.js → p-D9mJxIjm.js} +1 -1
- package/dist/components/{p-J-Yn0oS3.js → p-DYoNy5I7.js} +1 -1
- package/dist/components/p-Dc4UTGgQ.js +1 -0
- package/dist/components/p-Dun2lZmi.js +1 -0
- package/dist/components/{p-C1XPuuO-.js → p-G4t0nGLP.js} +1 -1
- package/dist/components/p-NAapFxTw.js +1 -0
- package/dist/components/p-VKF2AWs1.js +1 -0
- package/dist/components/{p-C0yQ73oI.js → p-hfbNb5UF.js} +1 -1
- package/dist/components/sd-badge.js +1 -1
- package/dist/components/sd-button-v2.d.ts +11 -0
- package/dist/components/sd-button-v2.js +1 -0
- package/dist/components/sd-button.js +1 -1
- package/dist/components/sd-card.js +1 -1
- package/dist/components/sd-checkbox.js +1 -1
- package/dist/components/sd-date-box.js +1 -1
- package/dist/components/sd-date-picker.js +1 -1
- package/dist/components/sd-date-range-picker.js +1 -1
- package/dist/components/sd-dropdown-button.d.ts +11 -0
- package/dist/components/sd-dropdown-button.js +1 -0
- package/dist/components/sd-field.js +1 -1
- package/dist/components/sd-file-picker.js +1 -1
- package/dist/components/sd-floating-portal.js +1 -1
- package/dist/components/sd-form.js +1 -1
- package/dist/components/sd-guide.js +1 -1
- package/dist/components/sd-icon.js +1 -1
- package/dist/components/sd-input.js +1 -1
- package/dist/components/sd-loading-spinner.js +1 -1
- package/dist/components/sd-modal-card.js +1 -1
- package/dist/components/sd-number-input.js +1 -1
- package/dist/components/sd-pagination.js +1 -1
- package/dist/components/sd-popover.js +1 -1
- package/dist/components/sd-portal.js +1 -1
- package/dist/components/sd-progress.js +1 -1
- package/dist/components/sd-radio-button-group.js +1 -1
- package/dist/components/sd-radio-group.js +1 -1
- package/dist/components/sd-radio.js +1 -1
- package/dist/components/sd-select-dropdown.js +1 -1
- package/dist/components/sd-select-multiple-group.js +1 -1
- package/dist/components/sd-select-multiple.js +1 -1
- package/dist/components/sd-select-option-group.js +1 -1
- package/dist/components/sd-select-option.js +1 -1
- package/dist/components/sd-select-search-input.js +1 -1
- package/dist/components/sd-select.js +1 -1
- package/dist/components/sd-table.js +1 -1
- package/dist/components/sd-tabs.js +1 -1
- package/dist/components/sd-tag.js +1 -1
- package/dist/components/sd-textarea.js +1 -1
- package/dist/components/sd-toast.js +1 -1
- package/dist/components/sd-toggle-button.js +1 -1
- package/dist/components/sd-toggle.js +1 -1
- package/dist/components/sd-tooltip.js +1 -1
- package/dist/design-system/design-system.esm.js +1 -1
- package/dist/design-system/{p-3d03b19e.entry.js → p-02c5ab69.entry.js} +1 -1
- package/dist/design-system/{p-3301c280.entry.js → p-1b80635f.entry.js} +1 -1
- package/dist/design-system/p-285cc646.entry.js +1 -0
- package/dist/design-system/{p-8fde8570.entry.js → p-3565f871.entry.js} +1 -1
- package/dist/design-system/{p-0406b7f9.entry.js → p-5032c700.entry.js} +1 -1
- package/dist/design-system/{p-d6b38732.entry.js → p-5094848f.entry.js} +1 -1
- package/dist/design-system/p-59a52297.entry.js +1 -0
- package/dist/design-system/p-712c1ef1.entry.js +1 -0
- package/dist/design-system/{p-3e07e92a.entry.js → p-83f320e6.entry.js} +1 -1
- package/dist/design-system/{p-32c27eca.entry.js → p-8b013328.entry.js} +1 -1
- package/dist/design-system/{p-d021a375.entry.js → p-9563ffe1.entry.js} +1 -1
- package/dist/design-system/p-B8tGP77V.js +2 -0
- package/dist/design-system/p-BeCHKP_I.js +1 -0
- package/dist/design-system/p-CRdYeSBK.js +1 -0
- package/dist/design-system/p-DQuL1Twl.js +1 -0
- package/dist/design-system/p-Dc4UTGgQ.js +1 -0
- package/dist/design-system/p-VKF2AWs1.js +1 -0
- package/dist/design-system/p-a3025f1f.entry.js +1 -0
- package/dist/design-system/p-b1e45f3f.entry.js +1 -0
- package/dist/design-system/{p-d344fa9d.entry.js → p-c0655cd1.entry.js} +1 -1
- package/dist/design-system/p-d8a141e7.entry.js +1 -0
- package/dist/design-system/p-df3d3a2a.entry.js +1 -0
- package/dist/design-system/{p-8f99cd66.entry.js → p-e6d84ecf.entry.js} +1 -1
- package/dist/design-system/p-e7d7ceb4.entry.js +1 -0
- package/dist/design-system/{p-646ed990.entry.js → p-ea26b8e9.entry.js} +1 -1
- package/dist/design-system/p-f1b31194.entry.js +1 -0
- package/dist/design-system/p-f81d3798.entry.js +1 -0
- package/dist/design-system/p-xxEHPVkL.js +1 -0
- package/dist/esm/app-globals-DQuL1Twl.js +3 -0
- package/dist/esm/{select-keyboard-navigation-D8-D-mJX.js → base-dropdown-event-CRdYeSBK.js} +1 -37
- package/dist/esm/component.button-Dc4UTGgQ.js +113 -0
- package/dist/esm/design-system.js +4 -3
- package/dist/esm/{index-C_an1PQ3.js → index-B8tGP77V.js} +10 -117
- package/dist/esm/loader.js +4 -3
- package/dist/esm/sd-badge.entry.js +2 -2
- package/dist/esm/sd-button-v2.config-BWmcscrt.js +193 -0
- package/dist/esm/sd-button-v2.entry.js +84 -0
- package/dist/esm/sd-button_21.entry.js +116 -62
- package/dist/esm/sd-card.entry.js +2 -2
- package/dist/esm/sd-date-picker.entry.js +2 -2
- package/dist/esm/sd-dropdown-button.entry.js +272 -0
- package/dist/esm/sd-file-picker.entry.js +4 -4
- package/dist/esm/sd-form.entry.js +1 -1
- package/dist/esm/sd-guide.entry.js +3 -3
- package/dist/esm/sd-popover.entry.js +4 -4
- package/dist/esm/sd-progress.entry.js +3 -3
- package/dist/esm/sd-radio-button-group.entry.js +1 -1
- package/dist/esm/sd-radio-group.entry.js +1 -1
- package/dist/esm/sd-select-multiple-group.entry.js +3 -2
- package/dist/esm/sd-select-multiple.entry.js +4 -3
- package/dist/esm/sd-select-option-group.entry.js +4 -4
- package/dist/esm/sd-tabs.entry.js +7 -9
- package/dist/esm/sd-tag.entry.js +96 -38
- package/dist/esm/sd-toast.entry.js +3 -3
- package/dist/esm/sd-toggle-button.entry.js +2 -2
- package/dist/esm/sd-toggle.entry.js +2 -2
- package/dist/esm/select-keyboard-navigation-xxEHPVkL.js +37 -0
- package/dist/esm/{tooltipArrow-BTp0AVR2.js → tooltipArrow-Pdc3NIc9.js} +1 -1
- package/dist/types/components/sd-button-v2/sd-button-v2.config.d.ts +178 -0
- package/dist/types/components/sd-button-v2/sd-button-v2.d.ts +18 -0
- package/dist/types/components/sd-dropdown-button/sd-dropdown-button.config.d.ts +55 -0
- package/dist/types/components/sd-dropdown-button/sd-dropdown-button.d.ts +34 -0
- package/dist/types/components/sd-portal/sd-portal.d.ts +9 -0
- package/dist/types/components/sd-tabs/sd-tabs.d.ts +1 -1
- package/dist/types/components/sd-tag/sd-tag.config.d.ts +23 -0
- package/dist/types/components/sd-tag/sd-tag.d.ts +6 -10
- package/dist/types/components.d.ts +168 -27
- package/dist/types/index.d.ts +2 -0
- package/hydrate/index.js +1069 -755
- package/hydrate/index.mjs +1069 -755
- package/package.json +2 -2
- package/dist/components/p-B82gJZ4z.js +0 -1
- package/dist/components/p-C6J-ZZxF.js +0 -1
- package/dist/components/p-CDehvEQ5.js +0 -1
- package/dist/components/p-CHAh-_qx.js +0 -1
- package/dist/components/p-CaEyReID.js +0 -1
- package/dist/design-system/p-103de692.entry.js +0 -1
- package/dist/design-system/p-3edd59b5.entry.js +0 -1
- package/dist/design-system/p-55c13597.entry.js +0 -1
- package/dist/design-system/p-679e4367.entry.js +0 -1
- package/dist/design-system/p-822233ee.entry.js +0 -1
- package/dist/design-system/p-Bak0zfmv.js +0 -1
- package/dist/design-system/p-C_an1PQ3.js +0 -2
- package/dist/design-system/p-D8-D-mJX.js +0 -1
- package/dist/design-system/p-ab3b6f63.entry.js +0 -1
- package/dist/design-system/p-de339565.entry.js +0 -1
- package/dist/design-system/p-fc0e636b.entry.js +0 -1
|
@@ -1,54 +1,112 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Qvv0fGgj.js');
|
|
4
4
|
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
const TAG_COLORS =
|
|
8
|
-
grey
|
|
9
|
-
red
|
|
10
|
-
orange
|
|
11
|
-
yellow
|
|
12
|
-
green
|
|
13
|
-
blue
|
|
14
|
-
darkblue
|
|
15
|
-
indigo
|
|
5
|
+
const TAG_SHAPES = ['square', 'pill'];
|
|
6
|
+
const TAG_SIZES = ['sm', 'md', 'lg'];
|
|
7
|
+
const TAG_COLORS = [
|
|
8
|
+
'grey',
|
|
9
|
+
'red',
|
|
10
|
+
'orange',
|
|
11
|
+
'yellow',
|
|
12
|
+
'green',
|
|
13
|
+
'blue',
|
|
14
|
+
'darkblue',
|
|
15
|
+
'indigo',
|
|
16
|
+
];
|
|
17
|
+
const TAG_COLOR_CONFIG = {
|
|
18
|
+
grey: { background: '#EEEEEE', content: '#737373', icon: '#737373' },
|
|
19
|
+
red: { background: '#FCEFEF', content: '#FB4444', icon: '#FB4444' },
|
|
20
|
+
orange: { background: '#FEF1EA', content: '#FF6B00', icon: '#FF6B00' },
|
|
21
|
+
yellow: { background: '#FFF7DD', content: '#916C0D', icon: '#CA9611' },
|
|
22
|
+
green: { background: '#E8F9EF', content: '#00973C', icon: '#12B553' },
|
|
23
|
+
blue: { background: '#E6F1FF', content: '#0075FF', icon: '#0075FF' },
|
|
24
|
+
darkblue: { background: '#EAF5FE', content: '#006AC1', icon: '#006AC1' },
|
|
25
|
+
indigo: { background: '#EFF6FF', content: '#004290', icon: '#004290' },
|
|
26
|
+
};
|
|
27
|
+
const SQUARE_SIZE_CONFIG = {
|
|
28
|
+
sm: {
|
|
29
|
+
height: '20px',
|
|
30
|
+
paddingX: '6px',
|
|
31
|
+
gap: '4px',
|
|
32
|
+
fontSize: '11px',
|
|
33
|
+
fontWeight: '500',
|
|
34
|
+
iconSize: 12,
|
|
35
|
+
radius: '4px',
|
|
36
|
+
},
|
|
37
|
+
md: {
|
|
38
|
+
height: '24px',
|
|
39
|
+
paddingX: '8px',
|
|
40
|
+
gap: '4px',
|
|
41
|
+
fontSize: '12px',
|
|
42
|
+
fontWeight: '700',
|
|
43
|
+
iconSize: 16,
|
|
44
|
+
radius: '4px',
|
|
45
|
+
},
|
|
46
|
+
lg: {
|
|
47
|
+
height: '28px',
|
|
48
|
+
paddingX: '10px',
|
|
49
|
+
gap: '4px',
|
|
50
|
+
fontSize: '14px',
|
|
51
|
+
fontWeight: '700',
|
|
52
|
+
iconSize: 16,
|
|
53
|
+
radius: '5px',
|
|
54
|
+
},
|
|
16
55
|
};
|
|
56
|
+
const PILL_SIZE_CONFIG = {
|
|
57
|
+
sm: { ...SQUARE_SIZE_CONFIG.sm, radius: '999px' },
|
|
58
|
+
md: { ...SQUARE_SIZE_CONFIG.md, radius: '999px' },
|
|
59
|
+
lg: { ...SQUARE_SIZE_CONFIG.lg, radius: '999px' },
|
|
60
|
+
};
|
|
61
|
+
const TAG_CONFIG = Object.fromEntries(TAG_SHAPES.flatMap(shape => TAG_SIZES.flatMap(size => TAG_COLORS.map(color => {
|
|
62
|
+
const sizeConfig = shape === 'square' ? SQUARE_SIZE_CONFIG[size] : PILL_SIZE_CONFIG[size];
|
|
63
|
+
return [
|
|
64
|
+
`${shape}_${size}_${color}`,
|
|
65
|
+
{
|
|
66
|
+
shape,
|
|
67
|
+
size,
|
|
68
|
+
color,
|
|
69
|
+
...sizeConfig,
|
|
70
|
+
...TAG_COLOR_CONFIG[color],
|
|
71
|
+
},
|
|
72
|
+
];
|
|
73
|
+
}))));
|
|
74
|
+
const isTagName = (value) => Object.prototype.hasOwnProperty.call(TAG_CONFIG, value);
|
|
75
|
+
|
|
76
|
+
const sdTagCss = () => `sd-tag{display:inline-flex;width:fit-content;height:fit-content}.sd-tag{display:inline-flex;align-items:center;justify-content:center;gap:var(--sd-tag-gap, 5px);min-height:var(--sd-tag-height, 24px);padding:0 var(--sd-tag-padding-x, 8px);border-radius:var(--sd-tag-radius, 4px);background:var(--sd-tag-background, #f3f3f3);color:var(--sd-tag-content, #7a7a7a);box-sizing:border-box;white-space:nowrap;-webkit-user-select:none;user-select:none}.sd-tag__icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center}.sd-tag__label{display:inline-flex;align-items:center;justify-content:center;min-width:0;font-size:var(--sd-tag-font-size, 12px);font-weight:var(--sd-tag-font-weight, 700);line-height:1}`;
|
|
77
|
+
|
|
17
78
|
const SdTag = class {
|
|
18
79
|
constructor(hostRef) {
|
|
19
80
|
index.registerInstance(this, hostRef);
|
|
20
81
|
}
|
|
21
|
-
|
|
22
|
-
size = 'md';
|
|
23
|
-
color = 'grey';
|
|
24
|
-
rounded = false;
|
|
82
|
+
name = 'square_md_grey';
|
|
25
83
|
label = '';
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
classes.push('sd-tag--rounded');
|
|
32
|
-
}
|
|
33
|
-
if (this.color && !this.bgColor && !this.textColor) {
|
|
34
|
-
classes.push(TAG_COLORS[this.color]);
|
|
35
|
-
}
|
|
36
|
-
if (this.bgColor || this.textColor) {
|
|
37
|
-
classes.push('sd-tag--custom-color');
|
|
84
|
+
icon;
|
|
85
|
+
isLeft = true;
|
|
86
|
+
get resolvedConfig() {
|
|
87
|
+
if (!isTagName(this.name)) {
|
|
88
|
+
throw new Error(`Invalid sd-tag name: ${this.name}`);
|
|
38
89
|
}
|
|
39
|
-
return
|
|
90
|
+
return TAG_CONFIG[this.name];
|
|
40
91
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
92
|
+
renderIcon(color, size) {
|
|
93
|
+
if (!this.icon)
|
|
94
|
+
return null;
|
|
95
|
+
return index.h("sd-icon", { class: "sd-tag__icon", name: this.icon, size: size, color: color });
|
|
45
96
|
}
|
|
46
97
|
render() {
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
'--tag-
|
|
51
|
-
|
|
98
|
+
const config = this.resolvedConfig;
|
|
99
|
+
const iconNode = this.renderIcon(config.icon, config.iconSize);
|
|
100
|
+
return (index.h("span", { key: '5f9ee005b146997dd13bb3e6a06680ff8574bd14', class: "sd-tag", style: {
|
|
101
|
+
'--sd-tag-background': config.background,
|
|
102
|
+
'--sd-tag-content': config.content,
|
|
103
|
+
'--sd-tag-height': config.height,
|
|
104
|
+
'--sd-tag-padding-x': config.paddingX,
|
|
105
|
+
'--sd-tag-gap': config.gap,
|
|
106
|
+
'--sd-tag-font-size': config.fontSize,
|
|
107
|
+
'--sd-tag-font-weight': config.fontWeight,
|
|
108
|
+
'--sd-tag-radius': config.radius,
|
|
109
|
+
}, "aria-label": this.label || 'tag' }, this.icon && this.isLeft && iconNode, index.h("span", { key: 'b123ab6ac015db640e4dc3edc5e2cf90ec5e0ecf', class: "sd-tag__label" }, this.label), this.icon && !this.isLeft && iconNode));
|
|
52
110
|
}
|
|
53
111
|
};
|
|
54
112
|
SdTag.style = sdTagCss();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Qvv0fGgj.js');
|
|
4
4
|
var resolveColor = require('./resolveColor-4RlaGD62.js');
|
|
5
5
|
|
|
6
6
|
const sdToastCss = () => `sd-toast{display:block;width:fit-content;height:fit-content}sd-toast .sd-toast{display:flex;width:fit-content;align-items:center;gap:16px;padding:12px 24px;border-radius:4px;background-color:var(--sd-toast-bg);color:var(--sd-toast-text);transition:opacity 0.2s ease, visibility 0.2s ease;box-shadow:2px 2px 8px 2px rgba(0, 0, 0, 0.2)}sd-toast .sd-toast--hidden{opacity:0;visibility:hidden;pointer-events:none}sd-toast .sd-toast__icon{display:flex;align-items:center;flex-shrink:0}sd-toast .sd-toast__content{display:flex;flex:1}sd-toast .sd-toast__message{font-size:14px;line-height:20px;font-weight:400}sd-toast .sd-toast__link{font-size:14px;line-height:20px;color:var(--sd-toast-text);text-decoration:underline;cursor:pointer;transition:opacity 0.2s ease;margin-left:4px}sd-toast .sd-toast__link:hover{opacity:0.8}sd-toast .sd-toast__button{flex-shrink:0}sd-toast .sd-toast__button button{color:var(--button-text-color, inherit) !important}sd-toast .sd-toast__close{display:flex;align-items:center;justify-content:center;padding:4px;background-color:transparent;border:none;cursor:pointer;transition:opacity 0.2s ease;flex-shrink:0}sd-toast .sd-toast__close:hover{opacity:0.7}sd-toast .sd-toast__close:active{opacity:0.5}`;
|
|
@@ -49,10 +49,10 @@ const SdToast = class {
|
|
|
49
49
|
background: resolveColor.resolveColor(colorTokens.background),
|
|
50
50
|
text: resolveColor.resolveColor(colorTokens.text),
|
|
51
51
|
};
|
|
52
|
-
return (index.h("div", { key: '
|
|
52
|
+
return (index.h("div", { key: '16579a21c0eec78e609b0cf82fcf2d040b8b3388', style: {
|
|
53
53
|
'--sd-toast-bg': colors.background,
|
|
54
54
|
'--sd-toast-text': colors.text,
|
|
55
|
-
} }, index.h("div", { key: '
|
|
55
|
+
} }, index.h("div", { key: '108e47983e1ad99ed462a4fa00c29aa9e3393b8b', class: this.getContainerClasses(), role: "status", "aria-live": "polite", "aria-atomic": "true" }, this.icon && (index.h("div", { key: 'd034c9aaafc272d51de96de6ccefe49208aba7e3', class: "sd-toast__icon" }, index.h("sd-icon", { key: '14b97c4cbe7134f67d919abcf4e10cf673dd909d', name: this.icon, size: 16, color: colors.text }))), index.h("div", { key: '1cecb89bdb19742a7df04625e8f070cd2c207b5e', class: "sd-toast__content" }, index.h("span", { key: '1daf2a2bea963b7b68c580b30c4c8fa2f3a26c8f', class: "sd-toast__message" }, this.message)), this.link && (index.h("a", { key: '8f7961c2c14806aa1323e378f57d74e47614772c', href: this.link, class: "sd-toast__link", target: "_blank", rel: "noopener noreferrer" }, this.linkLabel || this.link)), this.buttonLabel && (index.h("sd-button", { key: '89cba5e58ff368aea05130b799d903d4cf85b120', class: `sd-toast__button ${this.type === 'basicLight' ? 'text-white' : ''}`, label: this.buttonLabel, variant: "primary", color: this.type === 'basicLight' ? 'oceanblue_75' : 'white', size: "sm", onSdClick: this.handleButtonClick, style: this.type !== 'basicLight' ? { '--button-text-color': resolveColor.resolveColor('grey_95') } : {} })), this.useClose && (index.h("button", { key: '0e7fc0737824b61166cbff82a410948ca1745842', type: "button", class: "sd-toast__close", onClick: this.handleClose, "aria-label": "Close", title: "Close" }, index.h("sd-icon", { key: '82d203f6eb584cb04566e8f3b1bd7a86ca50bba4', name: "close", size: 12, color: colors.text }))))));
|
|
56
56
|
}
|
|
57
57
|
};
|
|
58
58
|
SdToast.style = sdToastCss();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Qvv0fGgj.js');
|
|
4
4
|
|
|
5
5
|
const sdToggleButtonCss = () => `sd-toggle-button{display:inline-block;line-height:0}.sd-toggle-button{display:inline-flex;align-items:center;justify-content:center;height:28px;padding:4px 12px;gap:6px;border-radius:14px;border:1px solid #888888;background-color:#FFFFFF;color:#737373;font-size:12px;line-height:20px;font-weight:400;cursor:pointer;transition:border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;white-space:nowrap;user-select:none;box-sizing:border-box}.sd-toggle-button--active{border-color:#0075FF;color:#0075FF}.sd-toggle-button--disabled{background-color:#EEEEEE;border-color:#CCCCCC;color:#888888;cursor:not-allowed}.sd-toggle-button--disabled.sd-toggle-button--active{background-color:#EEEEEE;border-color:#CCCCCC;color:#888888}.sd-toggle-button:hover:not(.sd-toggle-button--disabled):not(.sd-toggle-button--active){border-color:#737373}.sd-toggle-button:hover:not(.sd-toggle-button--disabled).sd-toggle-button--active{border-color:#005CC9;color:#005CC9}`;
|
|
6
6
|
|
|
@@ -41,7 +41,7 @@ const SdToggleButton = class {
|
|
|
41
41
|
this.change.emit(newValue);
|
|
42
42
|
};
|
|
43
43
|
render() {
|
|
44
|
-
return (index.h("label", { key: '
|
|
44
|
+
return (index.h("label", { key: '174a62904591e559232574d207ff4ad9c0113ad8', class: this.buttonClasses, "aria-label": this.label || 'toggle button' }, this.label, index.h("input", { key: '7bbd96a0563a8cadcfb7ab9d8e1fb3767508d6bf', style: { display: 'none' }, type: "checkbox", onInput: this.handleChange })));
|
|
45
45
|
}
|
|
46
46
|
};
|
|
47
47
|
SdToggleButton.style = sdToggleButtonCss();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Qvv0fGgj.js');
|
|
4
4
|
|
|
5
5
|
const sdToggleCss = () => `sd-toggle{display:inline-block;height:20px;line-height:0}sd-toggle .sd-toggle{cursor:pointer;display:inline-flex;align-items:center;gap:8px;height:20px}sd-toggle .sd-toggle>input{display:none}sd-toggle .sd-toggle__label{font-size:12px;color:#333333;line-height:20px}sd-toggle .sd-toggle__track{width:36px;height:20px;border-radius:12px;background:#CCCCCC;position:relative;transition:background-color 0.2s ease}sd-toggle .sd-toggle__thumb{width:16px;height:16px;border-radius:50%;background:white;position:absolute;top:2px;left:2px;transition:transform 0.2s ease}sd-toggle .sd-toggle--checked .sd-toggle__track{background:#0075FF}sd-toggle .sd-toggle--checked .sd-toggle__thumb{transform:translateX(16px)}sd-toggle .sd-toggle--disabled{cursor:not-allowed}sd-toggle .sd-toggle--disabled.sd-toggle--checked .sd-toggle__track{background:#BBDAFF}sd-toggle .sd-toggle--disabled.sd-toggle--unchecked .sd-toggle__track{background:#EEEEEE}sd-toggle .sd-toggle:hover:not(.sd-toggle--disabled).sd-toggle--checked .sd-toggle__track{background:#005CC9}sd-toggle .sd-toggle:hover:not(.sd-toggle--disabled).sd-toggle--unchecked .sd-toggle__track{background:#BBBBBB}`;
|
|
6
6
|
|
|
@@ -37,7 +37,7 @@ const SdToggle = class {
|
|
|
37
37
|
this.change.emit(newValue);
|
|
38
38
|
};
|
|
39
39
|
render() {
|
|
40
|
-
return (index.h("label", { key: '
|
|
40
|
+
return (index.h("label", { key: '9a8a0221e093040e446bc193f682070aa1f95c6c', "aria-label": this.label || 'toggle', class: this.toggleClasses }, index.h("input", { key: '4a2e3c626bfa4e439676cc40df619bd284d0178a', type: "checkbox", checked: this.value, disabled: this.disabled, onInput: this.handleChange }), this.label && index.h("span", { key: '1eecfd810c17610604d6cf93c6f664690f17ff6a', class: "sd-toggle__label" }, this.label), index.h("div", { key: '9f082e2f6036e338f2afb6fb719b4ff8d3a01d99', class: "sd-toggle__track" }, index.h("div", { key: '1d8b1bd11b05091a368c681ead7e79a0e453d510', class: "sd-toggle__thumb" }))));
|
|
41
41
|
}
|
|
42
42
|
};
|
|
43
43
|
SdToggle.style = sdToggleCss();
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/* @ts-self-types="./index.d.ts" */
|
|
4
|
+
let urlAlphabet =
|
|
5
|
+
'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict';
|
|
6
|
+
let nanoid = (size = 21) => {
|
|
7
|
+
let id = '';
|
|
8
|
+
let i = size | 0;
|
|
9
|
+
while (i--) {
|
|
10
|
+
id += urlAlphabet[(Math.random() * 64) | 0];
|
|
11
|
+
}
|
|
12
|
+
return id
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
class SelectKeyboardNavigation {
|
|
16
|
+
isSearchable;
|
|
17
|
+
filteredOptions;
|
|
18
|
+
constructor(isSearchable, filteredOptions) {
|
|
19
|
+
this.isSearchable = isSearchable;
|
|
20
|
+
this.filteredOptions = filteredOptions;
|
|
21
|
+
}
|
|
22
|
+
getNavigationBounds() {
|
|
23
|
+
return {
|
|
24
|
+
minIndex: this.isSearchable ? -1 : 0,
|
|
25
|
+
maxIndex: this.filteredOptions.length - 1,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
getNextIndex(currentIndex, direction) {
|
|
29
|
+
const { minIndex, maxIndex } = this.getNavigationBounds();
|
|
30
|
+
if (direction === 'ArrowUp') {
|
|
31
|
+
return currentIndex > minIndex ? currentIndex - 1 : maxIndex;
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
return currentIndex < maxIndex ? currentIndex + 1 : minIndex;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
exports.SelectKeyboardNavigation = SelectKeyboardNavigation;
|
|
40
|
+
exports.nanoid = nanoid;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Qvv0fGgj.js');
|
|
4
4
|
|
|
5
5
|
const TooltipArrow = (props) => (index.h("svg", { width: "16", height: "12", viewBox: "0 0 16 12", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props }, index.h("path", { d: "M8.83205 10.7519C8.43623 11.3457 7.56377 11.3457 7.16795 10.7519L1.04907e-06 -1.39876e-06L16 0L8.83205 10.7519Z", fill: "currentColor" })));
|
|
6
6
|
|
|
@@ -13,12 +13,14 @@
|
|
|
13
13
|
"components/sd-select-multiple-group/sd-select-multiple-group.js",
|
|
14
14
|
"components/sd-table/sd-table.js",
|
|
15
15
|
"components/sd-tabs/sd-tabs.js",
|
|
16
|
-
"components/sd-tag/sd-tag.js",
|
|
17
16
|
"components/sd-toast/sd-toast.js",
|
|
18
17
|
"components/sd-badge/sd-badge.js",
|
|
18
|
+
"components/sd-button-v2/sd-button-v2.js",
|
|
19
19
|
"components/sd-card/sd-card.js",
|
|
20
20
|
"components/sd-date-picker/sd-date-picker.js",
|
|
21
21
|
"components/sd-date-range-picker/sd-date-range-picker.js",
|
|
22
|
+
"components/sd-portal/sd-portal.js",
|
|
23
|
+
"components/sd-dropdown-button/sd-dropdown-button.js",
|
|
22
24
|
"components/sd-field/sd-field.js",
|
|
23
25
|
"components/sd-file-picker/sd-file-picker.js",
|
|
24
26
|
"components/sd-floating-portal/sd-floating-portal.js",
|
|
@@ -29,13 +31,13 @@
|
|
|
29
31
|
"components/sd-number-input/sd-number-input.js",
|
|
30
32
|
"components/sd-pagination/sd-pagination.js",
|
|
31
33
|
"components/sd-popover/sd-popover.js",
|
|
32
|
-
"components/sd-portal/sd-portal.js",
|
|
33
34
|
"components/sd-progress/sd-progress.js",
|
|
34
35
|
"components/sd-select/sd-select-dropdown/sd-select-dropdown.js",
|
|
35
36
|
"components/sd-select/sd-select-option/sd-select-option.js",
|
|
36
37
|
"components/sd-select/sd-select-search-input/sd-select-search-input.js",
|
|
37
38
|
"components/sd-select-multiple/sd-select-multiple.js",
|
|
38
39
|
"components/sd-select-multiple-group/sd-select-option-group/sd-select-option-group.js",
|
|
40
|
+
"components/sd-tag/sd-tag.js",
|
|
39
41
|
"components/sd-textarea/sd-textarea.js",
|
|
40
42
|
"components/sd-toggle/sd-toggle.js",
|
|
41
43
|
"components/sd-toggle-button/sd-toggle-button.js"
|
|
@@ -6,7 +6,7 @@ export class SdBadge {
|
|
|
6
6
|
label = '';
|
|
7
7
|
render() {
|
|
8
8
|
const resolvedColor = resolveColor(this.color);
|
|
9
|
-
return (h("div", { key: '
|
|
9
|
+
return (h("div", { key: 'a83ffeb7171c32bafc3312d95c9fed576d676a0d', class: `sd-badge sd-badge--${this.size}`, style: { '--sd-badge-color': resolvedColor } }, h("div", { key: 'b6d84b2391d0e03edcab957b4edf73c765c04c35', class: "sd-badge__dot" }), h("div", { key: 'f06b5639135d87d7346b46c90a28ddeb40b05c9f', class: "sd-badge__label" }, this.label)));
|
|
10
10
|
}
|
|
11
11
|
static get is() { return "sd-badge"; }
|
|
12
12
|
static get originalStyleUrls() {
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import buttonTokens from "../../tokens/generated/component.button.json";
|
|
2
|
+
export const BUTTON_FOCUS_RING_COLOR = '#0075FF';
|
|
3
|
+
const PRESET_DEFAULT_COLORS = {
|
|
4
|
+
primary: buttonTokens.brand.strong.bg.default,
|
|
5
|
+
secondary: buttonTokens.brand.subtle.bg.default,
|
|
6
|
+
primary_outline: buttonTokens.brand.outline.bg.default,
|
|
7
|
+
neutral: buttonTokens.neutral.subtle.bg.default,
|
|
8
|
+
neutral_outline: buttonTokens.neutral.outline.bg.default,
|
|
9
|
+
danger: buttonTokens.danger.strong.bg.default,
|
|
10
|
+
danger_outline: buttonTokens.danger.outline.bg.default,
|
|
11
|
+
};
|
|
12
|
+
export const BUTTON_CONFIG = {
|
|
13
|
+
primary_xs: {
|
|
14
|
+
variant: 'primary',
|
|
15
|
+
size: 'xs',
|
|
16
|
+
color: PRESET_DEFAULT_COLORS.primary,
|
|
17
|
+
},
|
|
18
|
+
secondary_xs: {
|
|
19
|
+
variant: 'primary',
|
|
20
|
+
size: 'xs',
|
|
21
|
+
color: PRESET_DEFAULT_COLORS.secondary,
|
|
22
|
+
},
|
|
23
|
+
primary_outline_xs: {
|
|
24
|
+
variant: 'outline',
|
|
25
|
+
size: 'xs',
|
|
26
|
+
color: PRESET_DEFAULT_COLORS.primary_outline,
|
|
27
|
+
},
|
|
28
|
+
neutral_xs: {
|
|
29
|
+
variant: 'primary',
|
|
30
|
+
size: 'xs',
|
|
31
|
+
color: PRESET_DEFAULT_COLORS.neutral,
|
|
32
|
+
},
|
|
33
|
+
neutral_outline_xs: {
|
|
34
|
+
variant: 'outline',
|
|
35
|
+
size: 'xs',
|
|
36
|
+
color: PRESET_DEFAULT_COLORS.neutral_outline,
|
|
37
|
+
},
|
|
38
|
+
danger_xs: {
|
|
39
|
+
variant: 'primary',
|
|
40
|
+
size: 'xs',
|
|
41
|
+
color: PRESET_DEFAULT_COLORS.danger,
|
|
42
|
+
},
|
|
43
|
+
danger_outline_xs: {
|
|
44
|
+
variant: 'outline',
|
|
45
|
+
size: 'xs',
|
|
46
|
+
color: PRESET_DEFAULT_COLORS.danger_outline,
|
|
47
|
+
},
|
|
48
|
+
primary_sm: {
|
|
49
|
+
variant: 'primary',
|
|
50
|
+
size: 'sm',
|
|
51
|
+
color: PRESET_DEFAULT_COLORS.primary,
|
|
52
|
+
},
|
|
53
|
+
secondary_sm: {
|
|
54
|
+
variant: 'primary',
|
|
55
|
+
size: 'sm',
|
|
56
|
+
color: PRESET_DEFAULT_COLORS.secondary,
|
|
57
|
+
},
|
|
58
|
+
primary_outline_sm: {
|
|
59
|
+
variant: 'outline',
|
|
60
|
+
size: 'sm',
|
|
61
|
+
color: PRESET_DEFAULT_COLORS.primary_outline,
|
|
62
|
+
},
|
|
63
|
+
neutral_sm: {
|
|
64
|
+
variant: 'primary',
|
|
65
|
+
size: 'sm',
|
|
66
|
+
color: PRESET_DEFAULT_COLORS.neutral,
|
|
67
|
+
},
|
|
68
|
+
neutral_outline_sm: {
|
|
69
|
+
variant: 'outline',
|
|
70
|
+
size: 'sm',
|
|
71
|
+
color: PRESET_DEFAULT_COLORS.neutral_outline,
|
|
72
|
+
},
|
|
73
|
+
danger_sm: {
|
|
74
|
+
variant: 'primary',
|
|
75
|
+
size: 'sm',
|
|
76
|
+
color: PRESET_DEFAULT_COLORS.danger,
|
|
77
|
+
},
|
|
78
|
+
danger_outline_sm: {
|
|
79
|
+
variant: 'outline',
|
|
80
|
+
size: 'sm',
|
|
81
|
+
color: PRESET_DEFAULT_COLORS.danger_outline,
|
|
82
|
+
},
|
|
83
|
+
primary_md: {
|
|
84
|
+
variant: 'primary',
|
|
85
|
+
size: 'md',
|
|
86
|
+
color: PRESET_DEFAULT_COLORS.primary,
|
|
87
|
+
},
|
|
88
|
+
secondary_md: {
|
|
89
|
+
variant: 'primary',
|
|
90
|
+
size: 'md',
|
|
91
|
+
color: PRESET_DEFAULT_COLORS.secondary,
|
|
92
|
+
},
|
|
93
|
+
primary_outline_md: {
|
|
94
|
+
variant: 'outline',
|
|
95
|
+
size: 'md',
|
|
96
|
+
color: PRESET_DEFAULT_COLORS.primary_outline,
|
|
97
|
+
},
|
|
98
|
+
neutral_md: {
|
|
99
|
+
variant: 'primary',
|
|
100
|
+
size: 'md',
|
|
101
|
+
color: PRESET_DEFAULT_COLORS.neutral,
|
|
102
|
+
},
|
|
103
|
+
neutral_outline_md: {
|
|
104
|
+
variant: 'outline',
|
|
105
|
+
size: 'md',
|
|
106
|
+
color: PRESET_DEFAULT_COLORS.neutral_outline,
|
|
107
|
+
},
|
|
108
|
+
danger_md: {
|
|
109
|
+
variant: 'primary',
|
|
110
|
+
size: 'md',
|
|
111
|
+
color: PRESET_DEFAULT_COLORS.danger,
|
|
112
|
+
},
|
|
113
|
+
danger_outline_md: {
|
|
114
|
+
variant: 'outline',
|
|
115
|
+
size: 'md',
|
|
116
|
+
color: PRESET_DEFAULT_COLORS.danger_outline,
|
|
117
|
+
},
|
|
118
|
+
primary_lg: {
|
|
119
|
+
variant: 'primary',
|
|
120
|
+
size: 'lg',
|
|
121
|
+
color: PRESET_DEFAULT_COLORS.primary,
|
|
122
|
+
},
|
|
123
|
+
secondary_lg: {
|
|
124
|
+
variant: 'primary',
|
|
125
|
+
size: 'lg',
|
|
126
|
+
color: PRESET_DEFAULT_COLORS.secondary,
|
|
127
|
+
},
|
|
128
|
+
primary_outline_lg: {
|
|
129
|
+
variant: 'outline',
|
|
130
|
+
size: 'lg',
|
|
131
|
+
color: PRESET_DEFAULT_COLORS.primary_outline,
|
|
132
|
+
},
|
|
133
|
+
neutral_lg: {
|
|
134
|
+
variant: 'primary',
|
|
135
|
+
size: 'lg',
|
|
136
|
+
color: PRESET_DEFAULT_COLORS.neutral,
|
|
137
|
+
},
|
|
138
|
+
neutral_outline_lg: {
|
|
139
|
+
variant: 'outline',
|
|
140
|
+
size: 'lg',
|
|
141
|
+
color: PRESET_DEFAULT_COLORS.neutral_outline,
|
|
142
|
+
},
|
|
143
|
+
danger_lg: {
|
|
144
|
+
variant: 'primary',
|
|
145
|
+
size: 'lg',
|
|
146
|
+
color: PRESET_DEFAULT_COLORS.danger,
|
|
147
|
+
},
|
|
148
|
+
danger_outline_lg: {
|
|
149
|
+
variant: 'outline',
|
|
150
|
+
size: 'lg',
|
|
151
|
+
color: PRESET_DEFAULT_COLORS.danger_outline,
|
|
152
|
+
},
|
|
153
|
+
};
|
|
154
|
+
export const BUTTON_ICON_SIZES = {
|
|
155
|
+
xs: Number(buttonTokens.size.xs.icon),
|
|
156
|
+
sm: Number(buttonTokens.size.sm.icon),
|
|
157
|
+
md: Number(buttonTokens.size.md.icon),
|
|
158
|
+
lg: Number(buttonTokens.size.lg.icon),
|
|
159
|
+
};
|
|
160
|
+
export const PRESET_HOVER_BACKGROUNDS = {
|
|
161
|
+
primary: buttonTokens.brand.strong.bg.hover,
|
|
162
|
+
secondary: buttonTokens.brand.subtle.bg.hover,
|
|
163
|
+
primary_outline: buttonTokens.brand.outline.bg.hover,
|
|
164
|
+
neutral: buttonTokens.neutral.subtle.bg.hover,
|
|
165
|
+
neutral_outline: buttonTokens.neutral.outline.bg.hover,
|
|
166
|
+
danger: buttonTokens.danger.strong.bg.hover,
|
|
167
|
+
danger_outline: buttonTokens.danger.outline.bg.hover,
|
|
168
|
+
};
|
|
169
|
+
export const PRESET_CONTENT_COLORS = {
|
|
170
|
+
primary: buttonTokens.brand.strong.content,
|
|
171
|
+
secondary: buttonTokens.brand.subtle.content,
|
|
172
|
+
primary_outline: buttonTokens.brand.outline.content,
|
|
173
|
+
neutral: buttonTokens.neutral.subtle.content,
|
|
174
|
+
neutral_outline: buttonTokens.neutral.outline.content,
|
|
175
|
+
danger: buttonTokens.danger.strong.content,
|
|
176
|
+
danger_outline: buttonTokens.danger.outline.content,
|
|
177
|
+
};
|
|
178
|
+
export const PRESET_BORDER_COLORS = {
|
|
179
|
+
primary: 'transparent',
|
|
180
|
+
secondary: 'transparent',
|
|
181
|
+
primary_outline: buttonTokens.brand.outline.border,
|
|
182
|
+
neutral: 'transparent',
|
|
183
|
+
neutral_outline: buttonTokens.neutral.outline.border,
|
|
184
|
+
danger: 'transparent',
|
|
185
|
+
danger_outline: buttonTokens.danger.outline.border,
|
|
186
|
+
};
|
|
187
|
+
export const DISABLED_CONTENT = buttonTokens.content.disabled;
|
|
188
|
+
const SIZE_SUFFIX_PATTERN = /_(xs|sm|md|lg)$/;
|
|
189
|
+
export const isButtonV2Name = (value) => value in BUTTON_CONFIG;
|
|
190
|
+
export const getPresetName = (value) => value.replace(SIZE_SUFFIX_PATTERN, '');
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
sd-button-v2 {
|
|
2
|
+
display: inline-flex;
|
|
3
|
+
width: fit-content;
|
|
4
|
+
height: fit-content;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.sd-button-v2 {
|
|
8
|
+
--sd-button-v2-height: 34px;
|
|
9
|
+
--sd-button-v2-padding-x: 20px;
|
|
10
|
+
--sd-button-v2-gap: 8px;
|
|
11
|
+
--sd-button-v2-font-family: inherit;
|
|
12
|
+
--sd-button-v2-font-size: 16px;
|
|
13
|
+
--sd-button-v2-font-weight: 500;
|
|
14
|
+
--sd-button-v2-text-decoration: none;
|
|
15
|
+
--sd-button-v2-label-min-width: auto;
|
|
16
|
+
--sd-button-v2-icon-only-size: var(--sd-button-v2-height);
|
|
17
|
+
--sd-button-v2-bg: #025497;
|
|
18
|
+
--sd-button-v2-bg-hover: #004177;
|
|
19
|
+
--sd-button-v2-border: transparent;
|
|
20
|
+
--sd-button-v2-content: #ffffff;
|
|
21
|
+
display: inline-flex;
|
|
22
|
+
align-items: center;
|
|
23
|
+
justify-content: center;
|
|
24
|
+
min-height: var(--sd-button-v2-height);
|
|
25
|
+
min-width: var(--sd-button-v2-min-width, auto);
|
|
26
|
+
padding: 0 var(--sd-button-v2-padding-x);
|
|
27
|
+
border: var(--sd-button-border-width-default, 1px) solid var(--sd-button-v2-border);
|
|
28
|
+
border-radius: var(--sd-button-radius-default, 4px);
|
|
29
|
+
background: var(--sd-button-v2-bg);
|
|
30
|
+
color: var(--sd-button-v2-content);
|
|
31
|
+
cursor: pointer;
|
|
32
|
+
box-sizing: border-box;
|
|
33
|
+
font-family: var(--sd-button-v2-font-family);
|
|
34
|
+
font-size: var(--sd-button-v2-font-size);
|
|
35
|
+
font-weight: var(--sd-button-v2-font-weight);
|
|
36
|
+
line-height: 1;
|
|
37
|
+
text-decoration: var(--sd-button-v2-text-decoration);
|
|
38
|
+
transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
|
|
39
|
+
white-space: nowrap;
|
|
40
|
+
-webkit-user-select: none;
|
|
41
|
+
user-select: none;
|
|
42
|
+
}
|
|
43
|
+
.sd-button-v2:hover:not(.sd-button-v2--disabled) {
|
|
44
|
+
background: var(--sd-button-v2-bg-hover);
|
|
45
|
+
}
|
|
46
|
+
.sd-button-v2:focus-visible {
|
|
47
|
+
outline: 0;
|
|
48
|
+
box-shadow: 0 0 0 2px var(--sd-button-v2-accent);
|
|
49
|
+
}
|
|
50
|
+
.sd-button-v2--xs {
|
|
51
|
+
--sd-button-v2-height: var(--sd-button-xs-height, 24px);
|
|
52
|
+
--sd-button-v2-padding-x: var(--sd-button-xs-padding-x, 8px);
|
|
53
|
+
--sd-button-v2-gap: var(--sd-button-xs-gap, 4px);
|
|
54
|
+
--sd-button-v2-font-family: var(--sd-button-xs-typography-font-family, inherit);
|
|
55
|
+
--sd-button-v2-font-size: var(--sd-button-xs-typography-font-size, 12px);
|
|
56
|
+
--sd-button-v2-font-weight: var(--sd-button-xs-typography-font-weight, 500);
|
|
57
|
+
--sd-button-v2-text-decoration: var(--sd-button-xs-typography-text-decoration, none);
|
|
58
|
+
--sd-button-v2-label-min-width: var(--sd-button-label-xs-min-width, auto);
|
|
59
|
+
--sd-button-v2-icon-only-size: var(--sd-button-icon-only-xs-width, var(--sd-button-v2-height));
|
|
60
|
+
}
|
|
61
|
+
.sd-button-v2--sm {
|
|
62
|
+
--sd-button-v2-height: var(--sd-button-sm-height, 28px);
|
|
63
|
+
--sd-button-v2-padding-x: var(--sd-button-sm-padding-x, 12px);
|
|
64
|
+
--sd-button-v2-gap: var(--sd-button-sm-gap, 6px);
|
|
65
|
+
--sd-button-v2-font-family: var(--sd-button-sm-typography-font-family, inherit);
|
|
66
|
+
--sd-button-v2-font-size: var(--sd-button-sm-typography-font-size, 12px);
|
|
67
|
+
--sd-button-v2-font-weight: var(--sd-button-sm-typography-font-weight, 500);
|
|
68
|
+
--sd-button-v2-text-decoration: var(--sd-button-sm-typography-text-decoration, none);
|
|
69
|
+
--sd-button-v2-label-min-width: var(--sd-button-label-sm-min-width, auto);
|
|
70
|
+
--sd-button-v2-icon-only-size: var(--sd-button-icon-only-sm-width, var(--sd-button-v2-height));
|
|
71
|
+
}
|
|
72
|
+
.sd-button-v2--md {
|
|
73
|
+
--sd-button-v2-height: var(--sd-button-md-height, 34px);
|
|
74
|
+
--sd-button-v2-padding-x: var(--sd-button-md-padding-x, 20px);
|
|
75
|
+
--sd-button-v2-gap: var(--sd-button-md-gap, 8px);
|
|
76
|
+
--sd-button-v2-font-family: var(--sd-button-md-typography-font-family, inherit);
|
|
77
|
+
--sd-button-v2-font-size: var(--sd-button-md-typography-font-size, 16px);
|
|
78
|
+
--sd-button-v2-font-weight: var(--sd-button-md-typography-font-weight, 500);
|
|
79
|
+
--sd-button-v2-text-decoration: var(--sd-button-md-typography-text-decoration, none);
|
|
80
|
+
--sd-button-v2-label-min-width: var(--sd-button-label-md-min-width, auto);
|
|
81
|
+
--sd-button-v2-icon-only-size: var(--sd-button-icon-only-md-width, var(--sd-button-v2-height));
|
|
82
|
+
}
|
|
83
|
+
.sd-button-v2--lg {
|
|
84
|
+
--sd-button-v2-height: var(--sd-button-lg-height, 62px);
|
|
85
|
+
--sd-button-v2-padding-x: var(--sd-button-lg-padding-x, 28px);
|
|
86
|
+
--sd-button-v2-gap: var(--sd-button-lg-gap, 12px);
|
|
87
|
+
--sd-button-v2-font-family: var(--sd-button-lg-typography-font-family, inherit);
|
|
88
|
+
--sd-button-v2-font-size: var(--sd-button-lg-typography-font-size, 18px);
|
|
89
|
+
--sd-button-v2-font-weight: var(--sd-button-lg-typography-font-weight, 500);
|
|
90
|
+
--sd-button-v2-text-decoration: var(--sd-button-lg-typography-text-decoration, none);
|
|
91
|
+
--sd-button-v2-label-min-width: var(--sd-button-label-lg-min-width, auto);
|
|
92
|
+
--sd-button-v2-icon-only-size: var(--sd-button-icon-only-lg-width, var(--sd-button-v2-height));
|
|
93
|
+
}
|
|
94
|
+
.sd-button-v2--has-label {
|
|
95
|
+
--sd-button-v2-min-width: var(--sd-button-v2-label-min-width, auto);
|
|
96
|
+
}
|
|
97
|
+
.sd-button-v2--icon-only {
|
|
98
|
+
width: var(--sd-button-v2-icon-only-size, var(--sd-button-v2-height));
|
|
99
|
+
min-width: var(--sd-button-v2-icon-only-size, var(--sd-button-v2-height));
|
|
100
|
+
height: var(--sd-button-v2-icon-only-size, var(--sd-button-v2-height));
|
|
101
|
+
padding: 0;
|
|
102
|
+
}
|
|
103
|
+
.sd-button-v2--icon-only .sd-button-v2__content {
|
|
104
|
+
gap: 0;
|
|
105
|
+
}
|
|
106
|
+
.sd-button-v2--disabled {
|
|
107
|
+
border-color: var(--sd-button-border-disabled, #CCCCCC);
|
|
108
|
+
background: var(--sd-button-bg-disabled, #E1E1E1);
|
|
109
|
+
color: var(--sd-button-content-disabled, #888888);
|
|
110
|
+
cursor: not-allowed;
|
|
111
|
+
}
|
|
112
|
+
.sd-button-v2 .sd-button-v2__content {
|
|
113
|
+
display: inline-flex;
|
|
114
|
+
align-items: center;
|
|
115
|
+
justify-content: center;
|
|
116
|
+
gap: var(--sd-button-v2-gap);
|
|
117
|
+
}
|
|
118
|
+
.sd-button-v2 .sd-button-v2__label {
|
|
119
|
+
font: inherit;
|
|
120
|
+
}
|