@skf-design-system/ui-components 1.0.2-beta.0 → 1.0.2-beta.10
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/README.md +37 -9
- package/dist/components/accordion/accordion-item.component.d.ts +36 -0
- package/dist/components/accordion/accordion-item.component.js +98 -0
- package/dist/components/accordion/accordion-item.d.ts +3 -3
- package/dist/components/accordion/accordion-item.js +4 -5
- package/dist/components/accordion/accordion-item.styles.js +77 -0
- package/dist/components/accordion/accordion.component.d.ts +6 -10
- package/dist/components/accordion/accordion.component.js +9 -10
- package/dist/components/accordion/accordion.d.ts +0 -1
- package/dist/components/accordion/accordion.js +0 -2
- package/dist/components/alert/alert.component.d.ts +12 -10
- package/dist/components/alert/alert.component.js +59 -51
- package/dist/components/alert/alert.styles.js +50 -51
- package/dist/components/breadcrumb/breadcrumb-item.component.js +59 -0
- package/dist/components/{breadcrumb-item → breadcrumb}/breadcrumb-item.d.ts +2 -2
- package/dist/components/breadcrumb/breadcrumb-item.js +6 -0
- package/dist/components/breadcrumb/breadcrumb-item.styles.js +63 -0
- package/dist/components/breadcrumb/breadcrumb.component.d.ts +6 -3
- package/dist/components/breadcrumb/breadcrumb.component.js +65 -0
- package/dist/components/breadcrumb/breadcrumb.d.ts +2 -2
- package/dist/components/breadcrumb/breadcrumb.js +6 -0
- package/dist/components/breadcrumb/breadcrumb.styles.js +25 -0
- package/dist/components/button/button.component.d.ts +13 -10
- package/dist/components/button/button.component.js +69 -66
- package/dist/components/button/button.styles.d.ts +1 -2
- package/dist/components/button/button.styles.js +6 -5
- package/dist/components/card/card.component.d.ts +6 -1
- package/dist/components/card/card.component.js +46 -24
- package/dist/components/card/card.styles.js +31 -14
- package/dist/components/checkbox/checkbox.component.d.ts +14 -11
- package/dist/components/checkbox/checkbox.component.js +67 -69
- package/dist/components/checkbox/checkbox.styles.d.ts +1 -2
- package/dist/components/checkbox/checkbox.styles.js +2 -6
- package/dist/components/{date-picker/datepicker.calendar.component.d.ts → datepicker/datepicker-calendar.component.d.ts} +8 -1
- package/dist/components/{date-picker/datepicker.calendar.component.js → datepicker/datepicker-calendar.component.js} +109 -115
- package/dist/components/datepicker/datepicker-calendar.d.ts +8 -0
- package/dist/components/datepicker/datepicker-calendar.js +6 -0
- package/dist/components/{date-picker/datepicker.component.d.ts → datepicker/datepicker-popup.component.d.ts} +9 -20
- package/dist/components/datepicker/datepicker-popup.component.js +272 -0
- package/dist/components/datepicker/datepicker-popup.d.ts +8 -0
- package/dist/components/{date-picker/datepicker.helpers.d.ts → datepicker/datepicker-popup.helpers.d.ts} +3 -3
- package/dist/components/datepicker/datepicker-popup.helpers.js +83 -0
- package/dist/components/datepicker/datepicker-popup.js +6 -0
- package/dist/components/{date-picker/datepicker.styles.js → datepicker/datepicker-popup.styles.js} +3 -3
- package/dist/components/{date-picker-input/datepicker-input.component.d.ts → datepicker/datepicker.component.d.ts} +22 -14
- package/dist/components/datepicker/datepicker.component.js +455 -0
- package/dist/components/datepicker/datepicker.d.ts +8 -0
- package/dist/components/datepicker/datepicker.js +6 -0
- package/dist/components/dialog/dialog.component.d.ts +8 -6
- package/dist/components/dialog/dialog.component.js +67 -67
- package/dist/components/dialog/dialog.d.ts +2 -2
- package/dist/components/dialog/dialog.styles.js +4 -4
- package/dist/components/divider/divider.component.d.ts +3 -0
- package/dist/components/divider/divider.component.js +43 -22
- package/dist/components/divider/divider.styles.js +9 -9
- package/dist/components/drawer/drawer.component.d.ts +24 -12
- package/dist/components/drawer/drawer.component.js +87 -63
- package/dist/components/drawer/drawer.d.ts +2 -2
- package/dist/components/drawer/drawer.styles.js +47 -40
- package/dist/components/header/header.component.d.ts +7 -4
- package/dist/components/header/header.component.js +68 -55
- package/dist/components/header/header.d.ts +2 -2
- package/dist/components/header/header.styles.js +2 -2
- package/dist/components/heading/heading.component.d.ts +8 -6
- package/dist/components/heading/heading.component.js +52 -24
- package/dist/components/heading/heading.styles.js +34 -36
- package/dist/components/icon/icon.component.d.ts +15 -17
- package/dist/components/icon/icon.component.js +62 -43
- package/dist/components/icon/icon.styles.d.ts +1 -2
- package/dist/components/icon/icon.styles.js +60 -60
- package/dist/components/input/input.component.d.ts +34 -39
- package/dist/components/input/input.component.js +159 -153
- package/dist/components/input/input.controllers.d.ts +0 -1
- package/dist/components/input/input.controllers.js +14 -19
- package/dist/components/link/link.component.d.ts +20 -25
- package/dist/components/link/link.component.js +104 -107
- package/dist/components/link/link.styles.d.ts +1 -2
- package/dist/components/link/link.styles.js +54 -46
- package/dist/components/loader/loader.component.d.ts +6 -4
- package/dist/components/loader/loader.component.js +49 -42
- package/dist/components/loader/loader.styles.d.ts +1 -2
- package/dist/components/loader/loader.styles.js +34 -30
- package/dist/components/logo/logo.component.d.ts +8 -6
- package/dist/components/logo/logo.component.js +55 -51
- package/dist/components/logo/logo.styles.js +26 -16
- package/dist/components/menu/menu-item.component.d.ts +13 -0
- package/dist/components/menu/menu-item.component.js +13 -0
- package/dist/components/{menu-item → menu}/menu-item.d.ts +2 -2
- package/dist/components/menu/menu-item.styles.js +23 -0
- package/dist/components/menu/menu.component.d.ts +14 -8
- package/dist/components/menu/menu.component.js +10 -12
- package/dist/components/menu/menu.d.ts +2 -2
- package/dist/components/{nav-item → nav}/nav-item.component.d.ts +6 -4
- package/dist/components/nav/nav-item.component.js +57 -0
- package/dist/components/nav/nav-item.styles.js +43 -0
- package/dist/components/nav/nav.component.d.ts +9 -0
- package/dist/components/nav/nav.component.js +47 -21
- package/dist/components/nav/nav.d.ts +2 -2
- package/dist/components/nav/nav.styles.js +15 -9
- package/dist/components/popover/popover.component.d.ts +17 -6
- package/dist/components/popover/popover.component.js +22 -16
- package/dist/components/popover/popover.d.ts +2 -2
- package/dist/components/progress/progress.component.d.ts +4 -2
- package/dist/components/progress/progress.component.js +38 -35
- package/dist/components/progress/progress.d.ts +2 -2
- package/dist/components/progress/progress.styles.js +42 -35
- package/dist/components/radio/radio.component.d.ts +13 -9
- package/dist/components/radio/radio.component.js +96 -91
- package/dist/components/radio/radio.styles.js +1 -1
- package/dist/components/{segmented-button-item → segmented-button}/segmented-button-item.component.d.ts +4 -4
- package/dist/components/segmented-button/segmented-button-item.component.js +56 -0
- package/dist/components/{segmented-button-item → segmented-button}/segmented-button-item.d.ts +2 -2
- package/dist/components/segmented-button/segmented-button-item.js +6 -0
- package/dist/components/segmented-button/segmented-button-item.styles.js +62 -0
- package/dist/components/segmented-button/segmented-button.component.d.ts +0 -2
- package/dist/components/segmented-button/segmented-button.component.js +71 -0
- package/dist/components/segmented-button/segmented-button.d.ts +2 -2
- package/dist/components/segmented-button/segmented-button.js +6 -0
- package/dist/components/segmented-button/segmented-button.styles.js +16 -0
- package/dist/components/{select-option-group → select}/select-option-group.component.d.ts +4 -0
- package/dist/components/select/select-option-group.component.js +50 -0
- package/dist/components/{select-option-group → select}/select-option-group.d.ts +2 -2
- package/dist/components/select/select-option-group.style.js +24 -0
- package/dist/components/{select-option → select}/select-option.component.d.ts +16 -12
- package/dist/components/select/select-option.component.js +135 -0
- package/dist/components/select/select-option.styles.js +65 -0
- package/dist/components/select/select.component.d.ts +35 -25
- package/dist/components/select/select.component.js +126 -88
- package/dist/components/select/select.controllers.d.ts +1 -1
- package/dist/components/select/select.controllers.js +16 -18
- package/dist/components/select/select.styles.js +8 -2
- package/dist/components/select/stories/select.stories.icons.d.ts +7 -0
- package/dist/components/{stepper-item → stepper}/stepper-item.component.d.ts +1 -1
- package/dist/components/stepper/stepper-item.component.js +116 -0
- package/dist/components/{stepper-item → stepper}/stepper-item.d.ts +2 -2
- package/dist/components/{stepper-item → stepper}/stepper-item.styles.js +4 -4
- package/dist/components/stepper/stepper.component.d.ts +2 -2
- package/dist/components/stepper/stepper.component.js +17 -18
- package/dist/components/stepper/stepper.d.ts +2 -2
- package/dist/components/stepper/stepper.helpers.d.ts +1 -1
- package/dist/components/stepper/stepper.helpers.js +6 -7
- package/dist/components/switch/switch.component.d.ts +4 -2
- package/dist/components/switch/switch.component.js +64 -58
- package/dist/components/switch/switch.d.ts +2 -2
- package/dist/components/switch/switch.styles.js +1 -1
- package/dist/components/{tab-panel → tabs}/tab-panel.component.d.ts +1 -1
- package/dist/components/tabs/tab-panel.component.js +39 -0
- package/dist/components/{tab-panel → tabs}/tab-panel.d.ts +2 -2
- package/dist/components/{tab → tabs}/tab.component.d.ts +3 -3
- package/dist/components/{tab → tabs}/tab.component.js +18 -15
- package/dist/components/{tab → tabs}/tab.d.ts +2 -2
- package/dist/components/{tab → tabs}/tab.styles.js +2 -2
- package/dist/components/{tab-group/tab-group.component.d.ts → tabs/tabs.component.d.ts} +3 -4
- package/dist/components/{tab-group/tab-group.component.js → tabs/tabs.component.js} +36 -37
- package/dist/components/tabs/tabs.d.ts +8 -0
- package/dist/components/tabs/tabs.js +6 -0
- package/dist/components/{tab-group/tab-group.styles.js → tabs/tabs.styles.js} +16 -16
- package/dist/components/tag/tag.component.d.ts +20 -16
- package/dist/components/tag/tag.component.js +74 -65
- package/dist/components/tag/tag.d.ts +2 -2
- package/dist/components/tag/tag.styles.js +63 -50
- package/dist/components/textarea/textarea.component.d.ts +14 -13
- package/dist/components/textarea/textarea.component.js +77 -72
- package/dist/components/{toast-item → toast}/toast-item.d.ts +2 -0
- package/dist/components/{toast-item → toast}/toast-item.js +4 -0
- package/dist/components/toast/toast-item.styles.js +21 -0
- package/dist/components/{toast-wrapper → toast}/toast-wrapper.component.js +1 -1
- package/dist/components/toast/toast-wrapper.styles.d.ts +1 -0
- package/dist/components/toast/toast.component.d.ts +5 -4
- package/dist/components/toast/toast.component.js +16 -16
- package/dist/components/toast/toast.singleton.d.ts +5 -5
- package/dist/components/toast/toast.singleton.js +28 -29
- package/dist/components/tooltip/tooltip.component.d.ts +11 -3
- package/dist/components/tooltip/tooltip.component.js +18 -9
- package/dist/components/tooltip/tooltip.d.ts +2 -2
- package/dist/custom-elements.json +2202 -1720
- package/dist/index.d.ts +19 -12
- package/dist/index.js +108 -89
- package/dist/internal/base-classes/popover/popover.base.d.ts +30 -6
- package/dist/internal/base-classes/popover/popover.base.js +83 -69
- package/dist/internal/base-classes/popover/popover.styles.js +4 -5
- package/dist/internal/components/formBase.d.ts +1 -0
- package/dist/internal/components/formBase.js +11 -19
- package/dist/internal/components/hint/hint.component.d.ts +6 -2
- package/dist/internal/components/hint/hint.component.js +47 -20
- package/dist/internal/components/hint/hint.styles.d.ts +1 -2
- package/dist/internal/components/hint/hint.styles.js +30 -26
- package/dist/internal/components/skf-element.d.ts +1 -3
- package/dist/internal/components/skf-element.js +4 -9
- package/dist/internal/constants/iconSeverity.d.ts +3 -2
- package/dist/internal/constants/iconSeverity.js +2 -3
- package/dist/internal/controllers/popover.controller.d.ts +2 -0
- package/dist/internal/controllers/popover.controller.js +11 -14
- package/dist/internal/helpers/hintSeverity.d.ts +2 -2
- package/dist/internal/helpers/hintSeverity.js +1 -1
- package/dist/internal/helpers/stateMap.d.ts +14 -0
- package/dist/internal/helpers/stateMap.js +68 -0
- package/dist/internal/helpers/uuid.d.ts +8 -10
- package/dist/internal/helpers/uuid.js +4 -11
- package/dist/internal/helpers/watch.d.ts +1 -1
- package/dist/internal/helpers/watch.js +12 -12
- package/dist/internal/templates/asterisk.d.ts +1 -1
- package/dist/internal/templates/asterisk.js +4 -4
- package/dist/internal/types/formField.d.ts +1 -1
- package/dist/internal/types.d.ts +22 -0
- package/dist/styles/component.styles.d.ts +1 -2
- package/dist/styles/component.styles.js +38 -37
- package/dist/styles/global-alt.css +1 -0
- package/dist/styles/global.css +1 -1
- package/dist/translations/en.d.ts +3 -0
- package/dist/translations/en.js +27 -0
- package/dist/translations/es.d.ts +3 -0
- package/dist/translations/es.js +27 -0
- package/dist/translations/index.d.ts +4 -0
- package/dist/translations/pt.d.ts +3 -0
- package/dist/translations/pt.js +27 -0
- package/dist/translations/sv.d.ts +3 -0
- package/dist/translations/sv.js +27 -0
- package/dist/types/jsx/custom-element-jsx.d.ts +2031 -927
- package/dist/types/vue/index.d.ts +357 -324
- package/dist/utilities/localize.d.ts +28 -0
- package/dist/utilities/localize.js +13 -0
- package/dist/vscode.html-custom-data.json +360 -1241
- package/dist/web-types.json +932 -805
- package/package.json +38 -52
- package/dist/components/accordion/accordion.test.d.ts +0 -1
- package/dist/components/checkbox/checkbox.test.d.ts +0 -1
- package/dist/components/collapse/collapse.component.d.ts +0 -40
- package/dist/components/collapse/collapse.component.js +0 -86
- package/dist/components/collapse/collapse.d.ts +0 -8
- package/dist/components/collapse/collapse.js +0 -6
- package/dist/components/collapse/collapse.styles.d.ts +0 -2
- package/dist/components/collapse/collapse.styles.js +0 -77
- package/dist/components/collapse/collapse.test.d.ts +0 -1
- package/dist/components/date-picker/datepicker.component.js +0 -261
- package/dist/components/date-picker/datepicker.d.ts +0 -10
- package/dist/components/date-picker/datepicker.helpers.js +0 -76
- package/dist/components/date-picker/datepicker.js +0 -8
- package/dist/components/date-picker-input/datepicker-input.component.js +0 -441
- package/dist/components/date-picker-input/datepicker-input.d.ts +0 -8
- package/dist/components/date-picker-input/datepicker-input.js +0 -6
- package/dist/components/input/input.test.d.ts +0 -1
- package/dist/components/menu-item/menu-item.component.d.ts +0 -25
- package/dist/components/menu-item/menu-item.component.js +0 -13
- package/dist/components/menu-item/menu-item.styles.js +0 -19
- package/dist/components/nav-item/nav-item.component.js +0 -38
- package/dist/components/nav-item/nav-item.styles.js +0 -39
- package/dist/components/radio/radio.test.d.ts +0 -1
- package/dist/components/select-option/select-option.component.js +0 -123
- package/dist/components/select-option/select-option.styles.js +0 -53
- package/dist/components/select-option-group/select-option-group.component.js +0 -31
- package/dist/components/select-option-group/select-option-group.style.js +0 -18
- package/dist/components/stepper-item/stepper-item.component.js +0 -113
- package/dist/components/switch/switch.test.d.ts +0 -1
- package/dist/components/tab-group/tab-group.d.ts +0 -8
- package/dist/components/tab-group/tab-group.js +0 -6
- package/dist/components/tab-panel/tab-panel.component.js +0 -36
- package/dist/components/toast-item/toast-item.styles.js +0 -18
- package/dist/internal/constants/heading.d.ts +0 -2
- package/dist/internal/playwright/index.d.ts +0 -1
- /package/dist/components/{breadcrumb-item/breadcrumb-item.styles.d.ts → accordion/accordion-item.styles.d.ts} +0 -0
- /package/dist/components/{breadcrumb-item → breadcrumb}/breadcrumb-item.component.d.ts +0 -0
- /package/dist/components/{date-picker/datepicker.calendar.styles.d.ts → breadcrumb/breadcrumb-item.styles.d.ts} +0 -0
- /package/dist/components/{date-picker/datepicker.styles.d.ts → datepicker/datepicker-calendar.styles.d.ts} +0 -0
- /package/dist/components/{date-picker/datepicker.calendar.styles.js → datepicker/datepicker-calendar.styles.js} +0 -0
- /package/dist/components/{menu-item/menu-item.styles.d.ts → datepicker/datepicker-popup.styles.d.ts} +0 -0
- /package/dist/components/{date-picker-input/datepicker-input.helpers.d.ts → datepicker/datepicker.helpers.d.ts} +0 -0
- /package/dist/components/{date-picker-input/datepicker-input.helpers.js → datepicker/datepicker.helpers.js} +0 -0
- /package/dist/components/{date-picker-input/datepicker-input.styles.d.ts → datepicker/datepicker.styles.d.ts} +0 -0
- /package/dist/components/{date-picker-input/datepicker-input.styles.js → datepicker/datepicker.styles.js} +0 -0
- /package/dist/components/{menu-item → menu}/menu-item.js +0 -0
- /package/dist/components/{nav-item/nav-item.styles.d.ts → menu/menu-item.styles.d.ts} +0 -0
- /package/dist/components/{nav-item → nav}/nav-item.d.ts +0 -0
- /package/dist/components/{nav-item → nav}/nav-item.js +0 -0
- /package/dist/components/{segmented-button-item/segmented-button-item.styles.d.ts → nav/nav-item.styles.d.ts} +0 -0
- /package/dist/components/{select-option-group/select-option-group.style.d.ts → segmented-button/segmented-button-item.styles.d.ts} +0 -0
- /package/dist/components/{select-option-group → select}/select-option-group.js +0 -0
- /package/dist/components/{select-option/select-option.styles.d.ts → select/select-option-group.style.d.ts} +0 -0
- /package/dist/components/{select-option → select}/select-option.controllers.d.ts +0 -0
- /package/dist/components/{select-option → select}/select-option.d.ts +0 -0
- /package/dist/components/{select-option → select}/select-option.js +0 -0
- /package/dist/components/{stepper-item/stepper-item.styles.d.ts → select/select-option.styles.d.ts} +0 -0
- /package/dist/components/{stepper-item → stepper}/stepper-item.js +0 -0
- /package/dist/components/{tab-group/tab-group.styles.d.ts → stepper/stepper-item.styles.d.ts} +0 -0
- /package/dist/components/{tab-panel → tabs}/tab-panel.js +0 -0
- /package/dist/components/{tab-panel → tabs}/tab-panel.styles.d.ts +0 -0
- /package/dist/components/{tab-panel → tabs}/tab-panel.styles.js +0 -0
- /package/dist/components/{tab → tabs}/tab.js +0 -0
- /package/dist/components/{tab → tabs}/tab.styles.d.ts +0 -0
- /package/dist/components/{toast-wrapper/toast-wrapper.styles.d.ts → tabs/tabs.styles.d.ts} +0 -0
- /package/dist/components/{toast-item → toast}/toast-item.component.d.ts +0 -0
- /package/dist/components/{toast-item → toast}/toast-item.component.js +0 -0
- /package/dist/components/{toast-item → toast}/toast-item.styles.d.ts +0 -0
- /package/dist/components/{toast-wrapper → toast}/toast-wrapper.component.d.ts +0 -0
- /package/dist/components/{toast-wrapper → toast}/toast-wrapper.d.ts +0 -0
- /package/dist/components/{toast-wrapper → toast}/toast-wrapper.js +0 -0
- /package/dist/components/{toast-wrapper → toast}/toast-wrapper.styles.js +0 -0
@@ -0,0 +1,56 @@
|
|
1
|
+
import "../icon/icon.js";
|
2
|
+
import { SkfElement as n } from "../../internal/components/skf-element.js";
|
3
|
+
import { componentStyles as f } from "../../styles/component.styles.js";
|
4
|
+
import { LitElement as u, nothing as m, html as c } from "lit";
|
5
|
+
import { property as r, state as v } from "lit/decorators.js";
|
6
|
+
import { ifDefined as l } from "lit/directives/if-defined.js";
|
7
|
+
import { styles as y } from "./segmented-button-item.styles.js";
|
8
|
+
var b = Object.defineProperty, i = (a, p, d, k) => {
|
9
|
+
for (var e = void 0, o = a.length - 1, h; o >= 0; o--)
|
10
|
+
(h = a[o]) && (e = h(p, d, e) || e);
|
11
|
+
return e && b(p, d, e), e;
|
12
|
+
};
|
13
|
+
const s = class s extends n {
|
14
|
+
constructor() {
|
15
|
+
super(), this.disabled = !1, this.selected = !1, this.value = "", this.isMultiple = !1, this._handleClick = () => {
|
16
|
+
this.emit("skf-segmented-button-item-select", {
|
17
|
+
detail: {
|
18
|
+
item: this
|
19
|
+
}
|
20
|
+
});
|
21
|
+
}, this.addEventListener("click", this._handleClick);
|
22
|
+
}
|
23
|
+
render() {
|
24
|
+
return c`
|
25
|
+
<button
|
26
|
+
?disabled=${this.disabled}
|
27
|
+
aria-checked=${l(this.isMultiple ? void 0 : this.selected ? "true" : "false")}
|
28
|
+
aria-pressed=${l(this.isMultiple ? this.selected ? "true" : "false" : void 0)}
|
29
|
+
id="root"
|
30
|
+
role=${l(this.isMultiple ? void 0 : "radio")}
|
31
|
+
type="button"
|
32
|
+
value=${this.value}
|
33
|
+
>
|
34
|
+
${this.selected ? c`<skf-icon color="emphasized" name="check" size="sm"></skf-icon>` : m}
|
35
|
+
<slot></slot>
|
36
|
+
</button>
|
37
|
+
`;
|
38
|
+
}
|
39
|
+
};
|
40
|
+
s.styles = [f, y], s.shadowRootOptions = { ...u.shadowRootOptions, delegatesFocus: !0 };
|
41
|
+
let t = s;
|
42
|
+
i([
|
43
|
+
r({ type: Boolean, reflect: !0 })
|
44
|
+
], t.prototype, "disabled");
|
45
|
+
i([
|
46
|
+
r({ type: Boolean, reflect: !0 })
|
47
|
+
], t.prototype, "selected");
|
48
|
+
i([
|
49
|
+
r({ reflect: !0 })
|
50
|
+
], t.prototype, "value");
|
51
|
+
i([
|
52
|
+
v()
|
53
|
+
], t.prototype, "isMultiple");
|
54
|
+
export {
|
55
|
+
t as SkfSegmentedButtonItem
|
56
|
+
};
|
package/dist/components/{segmented-button-item → segmented-button}/segmented-button-item.d.ts
RENAMED
@@ -1,5 +1,5 @@
|
|
1
|
-
import { SkfSegmentedButtonItem } from './segmented-button-item.component';
|
2
|
-
export * from './segmented-button-item.component';
|
1
|
+
import { SkfSegmentedButtonItem } from './segmented-button-item.component.js';
|
2
|
+
export * from './segmented-button-item.component.js';
|
3
3
|
export default SkfSegmentedButtonItem;
|
4
4
|
declare global {
|
5
5
|
interface HTMLElementTagNameMap {
|
@@ -0,0 +1,62 @@
|
|
1
|
+
import { css as e } from "lit";
|
2
|
+
const o = e`
|
3
|
+
@layer components {
|
4
|
+
:host {
|
5
|
+
display: contents;
|
6
|
+
}
|
7
|
+
|
8
|
+
#root {
|
9
|
+
align-items: center;
|
10
|
+
background-color: var(--_skf-segmented-button-item-bg, transparent);
|
11
|
+
border: var(--skf-border-width-md) solid var(--_skf-segmented-button-item-border, transparent);
|
12
|
+
border-radius: 4px; /* TODO: Missing token */
|
13
|
+
display: flex;
|
14
|
+
flex: 1;
|
15
|
+
font-size: var(--skf-font-size-75);
|
16
|
+
font-weight: var(--skf-font-weight-bold);
|
17
|
+
gap: var(--skf-spacing-25);
|
18
|
+
justify-content: center;
|
19
|
+
min-inline-size: 0;
|
20
|
+
padding-inline: var(--skf-spacing-50);
|
21
|
+
position: relative;
|
22
|
+
|
23
|
+
:host(:not(:last-of-type)) &::after {
|
24
|
+
background-color: var(--skf-border-color-primary);
|
25
|
+
block-size: calc(100% - 5px);
|
26
|
+
content: '';
|
27
|
+
inline-size: 1px;
|
28
|
+
|
29
|
+
/* inset-inline-end: calc((var(--skf-spacing-75) + 2px + var(--skf-border-width-md) * 2) / -2); */
|
30
|
+
inset-inline-end: -9px;
|
31
|
+
position: absolute;
|
32
|
+
}
|
33
|
+
|
34
|
+
&:disabled {
|
35
|
+
color: var(--skf-interactive-text-color-disabled);
|
36
|
+
font-weight: 500;
|
37
|
+
}
|
38
|
+
|
39
|
+
&:is([aria-checked='true'], [aria-pressed='true']) {
|
40
|
+
--_skf-segmented-button-item-border: var(--skf-border-color-emphasized);
|
41
|
+
}
|
42
|
+
|
43
|
+
&:hover:not(:disabled) {
|
44
|
+
--_skf-segmented-button-item-bg: var(--skf-interactive-bg-color-secondary-hover);
|
45
|
+
}
|
46
|
+
|
47
|
+
&:is(:focus, :active):not(:disabled) {
|
48
|
+
--_skf-segmented-button-item-bg: var(--skf-interactive-bg-color-secondary-active);
|
49
|
+
}
|
50
|
+
}
|
51
|
+
|
52
|
+
slot {
|
53
|
+
display: block;
|
54
|
+
overflow: hidden;
|
55
|
+
text-overflow: ellipsis;
|
56
|
+
white-space: nowrap;
|
57
|
+
}
|
58
|
+
}
|
59
|
+
`;
|
60
|
+
export {
|
61
|
+
o as styles
|
62
|
+
};
|
@@ -11,8 +11,6 @@ import { type CSSResultGroup } from 'lit';
|
|
11
11
|
*/
|
12
12
|
export declare class SkfSegmentedButton extends SkfElement {
|
13
13
|
static styles: CSSResultGroup;
|
14
|
-
/** Sets the default selected control */
|
15
|
-
defaultSelected: number;
|
16
14
|
/** If true, allowes multiple items to be selected */
|
17
15
|
multiple: boolean;
|
18
16
|
/** @internal */
|
@@ -0,0 +1,71 @@
|
|
1
|
+
import { SkfElement as d } from "../../internal/components/skf-element.js";
|
2
|
+
import { componentStyles as a } from "../../styles/component.styles.js";
|
3
|
+
import { html as c } from "lit";
|
4
|
+
import { property as u, state as f, queryAssignedElements as p } from "lit/decorators.js";
|
5
|
+
import { ifDefined as g } from "lit/directives/if-defined.js";
|
6
|
+
import { styles as v } from "./segmented-button.styles.js";
|
7
|
+
var y = Object.defineProperty, n = (m, s, t, i) => {
|
8
|
+
for (var e = void 0, o = m.length - 1, r; o >= 0; o--)
|
9
|
+
(r = m[o]) && (e = r(s, t, e) || e);
|
10
|
+
return e && y(s, t, e), e;
|
11
|
+
};
|
12
|
+
const h = class h extends d {
|
13
|
+
constructor() {
|
14
|
+
super(...arguments), this.multiple = !1, this.value = "", this._handleSegmentedButtonItemSelected = (s) => {
|
15
|
+
const t = s.detail.item;
|
16
|
+
this.multiple && (t.selected = !t.selected), this.value = "";
|
17
|
+
let i = [];
|
18
|
+
this.items.forEach((e) => {
|
19
|
+
this.multiple ? e.selected && (i = [...i, e.value], this.value = i.join()) : e !== t ? e.selected = !1 : (e.selected = !0, this.value = e.value);
|
20
|
+
});
|
21
|
+
}, this._handleSlotChange = () => {
|
22
|
+
this.items.forEach((s) => {
|
23
|
+
if (s.isMultiple = this.multiple, !this.multiple) {
|
24
|
+
const t = this.items.filter((i) => i.selected);
|
25
|
+
t.length > 1 && t.slice(0, -1).forEach((i) => i.selected = !1);
|
26
|
+
}
|
27
|
+
});
|
28
|
+
}, this._handleKeyDown = (s) => {
|
29
|
+
["ArrowLeft", "ArrowRight"].includes(s.key) && this._getKeyDownNextItem(s.key)?.focus({ preventScroll: !0 });
|
30
|
+
};
|
31
|
+
}
|
32
|
+
firstUpdated() {
|
33
|
+
this.addEventListener(
|
34
|
+
"skf-segmented-button-item-select",
|
35
|
+
this._handleSegmentedButtonItemSelected
|
36
|
+
);
|
37
|
+
}
|
38
|
+
/** @internal */
|
39
|
+
_getKeyDownNextItem(s) {
|
40
|
+
const t = this.items.findIndex((r) => r === document.activeElement);
|
41
|
+
if (t === -1) return;
|
42
|
+
const e = (t + (s === "ArrowRight" ? 1 : -1)) % this.items.length;
|
43
|
+
return this.items[e < 0 ? this.items.length - 1 : e];
|
44
|
+
}
|
45
|
+
render() {
|
46
|
+
return c`
|
47
|
+
<div
|
48
|
+
@keydown=${this._handleKeyDown}
|
49
|
+
aria-label=${g(this.ariaLabel ?? "Segmented button label")}
|
50
|
+
id="root"
|
51
|
+
role=${this.multiple ? "group" : "radiogroup"}
|
52
|
+
>
|
53
|
+
<slot @slotchange=${this._handleSlotChange}></slot>
|
54
|
+
</div>
|
55
|
+
`;
|
56
|
+
}
|
57
|
+
};
|
58
|
+
h.styles = [a, v];
|
59
|
+
let l = h;
|
60
|
+
n([
|
61
|
+
u({ type: Boolean })
|
62
|
+
], l.prototype, "multiple");
|
63
|
+
n([
|
64
|
+
f()
|
65
|
+
], l.prototype, "value");
|
66
|
+
n([
|
67
|
+
p()
|
68
|
+
], l.prototype, "items");
|
69
|
+
export {
|
70
|
+
l as SkfSegmentedButton
|
71
|
+
};
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { SkfSegmentedButton } from './segmented-button.component';
|
2
|
-
export * from './segmented-button.component';
|
1
|
+
import { SkfSegmentedButton } from './segmented-button.component.js';
|
2
|
+
export * from './segmented-button.component.js';
|
3
3
|
export default SkfSegmentedButton;
|
4
4
|
declare global {
|
5
5
|
interface HTMLElementTagNameMap {
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { css as r } from "lit";
|
2
|
+
const o = r`
|
3
|
+
@layer components {
|
4
|
+
#root {
|
5
|
+
block-size: var(--skf-size-44);
|
6
|
+
border: var(--skf-border-width-sm) solid var(--skf-border-color-primary);
|
7
|
+
border-radius: 6px; /* TODO: Missing token */
|
8
|
+
display: flex;
|
9
|
+
gap: var(--skf-spacing-75);
|
10
|
+
padding: var(--skf-spacing-25);
|
11
|
+
}
|
12
|
+
}
|
13
|
+
`;
|
14
|
+
export {
|
15
|
+
o as styles
|
16
|
+
};
|
@@ -10,7 +10,11 @@ import { type CSSResultGroup } from 'lit';
|
|
10
10
|
* @tagname skf-select-option-group
|
11
11
|
*/
|
12
12
|
export declare class SkfSelectOptionGroup extends SkfElement {
|
13
|
+
#private;
|
13
14
|
static styles: CSSResultGroup;
|
14
15
|
label: string;
|
16
|
+
small: boolean;
|
17
|
+
/** @internal */
|
18
|
+
_handleStateChange(): void;
|
15
19
|
render(): import("lit").TemplateResult<1>;
|
16
20
|
}
|
@@ -0,0 +1,50 @@
|
|
1
|
+
var b = (t) => {
|
2
|
+
throw TypeError(t);
|
3
|
+
};
|
4
|
+
var d = (t, e, s) => e.has(t) || b("Cannot " + s);
|
5
|
+
var h = (t, e, s) => (d(t, e, "read from private field"), s ? s.call(t) : e.get(t)), n = (t, e, s) => e.has(t) ? b("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(t) : e.set(t, s), f = (t, e, s, r) => (d(t, e, "write to private field"), r ? r.call(t, s) : e.set(t, s), s);
|
6
|
+
import { SkfElement as u } from "../../internal/components/skf-element.js";
|
7
|
+
import { stateMap as y } from "../../internal/helpers/stateMap.js";
|
8
|
+
import { watch as _ } from "../../internal/helpers/watch.js";
|
9
|
+
import { componentStyles as g } from "../../styles/component.styles.js";
|
10
|
+
import { html as P } from "lit";
|
11
|
+
import { property as w, state as C } from "lit/decorators.js";
|
12
|
+
import { styles as D } from "./select-option-group.style.js";
|
13
|
+
var j = Object.defineProperty, x = Object.getOwnPropertyDescriptor, v = (t, e, s, r) => {
|
14
|
+
for (var l = r > 1 ? void 0 : r ? x(e, s) : e, i = t.length - 1, p; i >= 0; i--)
|
15
|
+
(p = t[i]) && (l = (r ? p(e, s, l) : p(l)) || l);
|
16
|
+
return r && l && j(e, s, l), l;
|
17
|
+
}, o, m;
|
18
|
+
const c = class c extends u {
|
19
|
+
constructor() {
|
20
|
+
super(...arguments);
|
21
|
+
n(this, o);
|
22
|
+
n(this, m);
|
23
|
+
f(this, o, this.attachInternals()), f(this, m, h(this, o).states), this.label = "Default label", this.small = !1;
|
24
|
+
}
|
25
|
+
_handleStateChange() {
|
26
|
+
y(h(this, m), "small").set(this.small);
|
27
|
+
}
|
28
|
+
render() {
|
29
|
+
return P`
|
30
|
+
<div role="group">
|
31
|
+
<div id="label">${this.label}</div>
|
32
|
+
<slot></slot>
|
33
|
+
</div>
|
34
|
+
`;
|
35
|
+
}
|
36
|
+
};
|
37
|
+
o = new WeakMap(), m = new WeakMap(), c.styles = [g, D];
|
38
|
+
let a = c;
|
39
|
+
v([
|
40
|
+
w({ reflect: !0 })
|
41
|
+
], a.prototype, "label", 2);
|
42
|
+
v([
|
43
|
+
C()
|
44
|
+
], a.prototype, "small", 2);
|
45
|
+
v([
|
46
|
+
_("small")
|
47
|
+
], a.prototype, "_handleStateChange", 1);
|
48
|
+
export {
|
49
|
+
a as SkfSelectOptionGroup
|
50
|
+
};
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { SkfSelectOptionGroup } from './select-option-group.component';
|
2
|
-
export * from './select-option-group.component';
|
1
|
+
import { SkfSelectOptionGroup } from './select-option-group.component.js';
|
2
|
+
export * from './select-option-group.component.js';
|
3
3
|
export default SkfSelectOptionGroup;
|
4
4
|
declare global {
|
5
5
|
interface HTMLElementTagNameMap {
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { css as e } from "lit";
|
2
|
+
const t = e`
|
3
|
+
@layer components {
|
4
|
+
@layer base {
|
5
|
+
#label {
|
6
|
+
--_skf-select-option-group-height: var(--skf-size-44);
|
7
|
+
|
8
|
+
align-items: center;
|
9
|
+
block-size: var(--_skf-select-option-group-height);
|
10
|
+
display: flex;
|
11
|
+
font-weight: var(--skf-font-weight-bold);
|
12
|
+
}
|
13
|
+
}
|
14
|
+
|
15
|
+
@layer mods {
|
16
|
+
:host(:state(small)) #label {
|
17
|
+
--_skf-select-option-group-height: var(--skf-size-32);
|
18
|
+
}
|
19
|
+
}
|
20
|
+
}
|
21
|
+
`;
|
22
|
+
export {
|
23
|
+
t as styles
|
24
|
+
};
|
@@ -1,26 +1,27 @@
|
|
1
|
+
import '../icon/icon.js';
|
1
2
|
import { SkfElement } from '../../internal/components/skf-element.js';
|
2
|
-
import type {
|
3
|
+
import type { Icon, IconColor } from '../../internal/types.js';
|
3
4
|
import { type CSSResultGroup } from 'lit';
|
4
|
-
import '
|
5
|
-
import { SkfIcon } from '../icon/icon';
|
6
|
-
import type { SkfSelect } from '../select/select.component.js';
|
5
|
+
import type { SkfSelect } from './select.component.js';
|
7
6
|
export interface SelectOptionEvent {
|
8
7
|
value: string | null;
|
9
8
|
option: SkfSelectOption;
|
10
9
|
}
|
11
10
|
/**
|
12
11
|
* The `<skf-select-option>` is a component is used nested in a skf-select or skf-select-option-group.
|
12
|
+
* It represents an individual option in a select dropdown.
|
13
13
|
*
|
14
14
|
* @documentation See [InVision DSM](https://skf.invisionapp.com/dsm/ab-skf/4-web-applications/nav/5fa7caf78c01200018354495/asset/6229d63d9fe16020a60657e5) for design principles
|
15
15
|
*
|
16
16
|
* @slot - The option's text content
|
17
17
|
* @slot icon - The option's slot for icon or custom meta information (svg).
|
18
18
|
*
|
19
|
-
* @event skf-select-option
|
19
|
+
* @event skf-select-option-select - {detail: { value: string | null, option: SkfSelectOption }} Fires when the option is selected/deselected.
|
20
20
|
*
|
21
21
|
* @tagname skf-select-option
|
22
22
|
*/
|
23
23
|
export declare class SkfSelectOption extends SkfElement {
|
24
|
+
#private;
|
24
25
|
static styles: CSSResultGroup;
|
25
26
|
static shadowRootOptions: {
|
26
27
|
delegatesFocus: boolean;
|
@@ -37,33 +38,36 @@ export declare class SkfSelectOption extends SkfElement {
|
|
37
38
|
* Do not use directly, instead use `setSelectedDiscrete`.
|
38
39
|
* If true, instantly sets/unsets the selected property, without engaging ui feedback. Primarily for unselecting previous option in single select.
|
39
40
|
*/
|
40
|
-
_shortcutUpdate
|
41
|
+
_shortcutUpdate: boolean;
|
41
42
|
/** If true, prevents interaction with the option */
|
42
|
-
disabled
|
43
|
+
disabled: boolean;
|
43
44
|
/** If defined, set an icon */
|
44
|
-
icon?:
|
45
|
+
icon?: Icon;
|
45
46
|
/** If defined, sets provided color on the icon */
|
46
|
-
iconColor?:
|
47
|
+
iconColor?: IconColor;
|
47
48
|
/** If true, sets the option as selected */
|
48
|
-
selected
|
49
|
+
selected: boolean;
|
49
50
|
/** If defined, sets a short label */
|
50
51
|
shortLabel?: string;
|
51
52
|
/** The option's label text (equivalent to the tags textContent) */
|
52
53
|
set text(slottedTextContent: string);
|
53
54
|
get text(): string;
|
54
|
-
/** Returns or sets the
|
55
|
+
/** Returns or sets the option value. If value is omitted, defaults to the tags slotted text. */
|
55
56
|
set value(optionValue: string);
|
56
57
|
get value(): string;
|
58
|
+
small: boolean;
|
57
59
|
/** @internal */
|
58
60
|
private _assignedNodes?;
|
59
61
|
constructor();
|
60
62
|
updated(changedProperties: Map<string | number | symbol, unknown>): void;
|
63
|
+
/** @internal */
|
64
|
+
_handleStateChange(): void;
|
61
65
|
/**
|
62
66
|
* @internal
|
63
67
|
* This internal setter is to change selected state without emitting events triggering other side effects,
|
64
68
|
* e.g deselecting previous selected in a single select. Is used by skf-select in single select mode.
|
65
69
|
*/
|
66
|
-
set setSelectedDiscrete(
|
70
|
+
set setSelectedDiscrete(isSelected: boolean);
|
67
71
|
/**
|
68
72
|
* @internal
|
69
73
|
* Returns the slotted content as a string. If no slotted content, returns an empty string.
|
@@ -0,0 +1,135 @@
|
|
1
|
+
var y = (e) => {
|
2
|
+
throw TypeError(e);
|
3
|
+
};
|
4
|
+
var b = (e, s, t) => s.has(e) || y("Cannot " + t);
|
5
|
+
var u = (e, s, t) => (b(e, s, "read from private field"), t ? t.call(e) : s.get(e)), f = (e, s, t) => s.has(e) ? y("Cannot add the same private member more than once") : s instanceof WeakSet ? s.add(e) : s.set(e, t), m = (e, s, t, i) => (b(e, s, "write to private field"), i ? i.call(e, t) : s.set(e, t), t);
|
6
|
+
import "../icon/icon.js";
|
7
|
+
import { SkfElement as C } from "../../internal/components/skf-element.js";
|
8
|
+
import { stateMap as g } from "../../internal/helpers/stateMap.js";
|
9
|
+
import { watch as x } from "../../internal/helpers/watch.js";
|
10
|
+
import { componentStyles as N } from "../../styles/component.styles.js";
|
11
|
+
import { LitElement as T, html as _ } from "lit";
|
12
|
+
import { property as a, state as $, queryAssignedNodes as O } from "lit/decorators.js";
|
13
|
+
import { ifDefined as v } from "lit/directives/if-defined.js";
|
14
|
+
import { styles as E } from "./select-option.styles.js";
|
15
|
+
var k = Object.defineProperty, w = Object.getOwnPropertyDescriptor, r = (e, s, t, i) => {
|
16
|
+
for (var l = i > 1 ? void 0 : i ? w(s, t) : s, d = e.length - 1, p; d >= 0; d--)
|
17
|
+
(p = e[d]) && (l = (i ? p(s, t, l) : p(l)) || l);
|
18
|
+
return i && l && k(s, t, l), l;
|
19
|
+
}, n, h;
|
20
|
+
const c = class c extends C {
|
21
|
+
constructor() {
|
22
|
+
super();
|
23
|
+
f(this, n);
|
24
|
+
f(this, h);
|
25
|
+
m(this, n, this.attachInternals()), m(this, h, u(this, n).states), this._parent = null, this._shortcutUpdate = !1, this.disabled = !1, this.selected = !1, this.small = !1, this._handleClick = (t) => {
|
26
|
+
t.stopPropagation(), this.selected = !this.selected;
|
27
|
+
}, this._shortcutUpdate = !1;
|
28
|
+
}
|
29
|
+
set text(t) {
|
30
|
+
this.textContent = t.trim();
|
31
|
+
}
|
32
|
+
get text() {
|
33
|
+
return this.textContent?.trim() ?? "";
|
34
|
+
}
|
35
|
+
set value(t) {
|
36
|
+
this._value = t.trim();
|
37
|
+
}
|
38
|
+
get value() {
|
39
|
+
return !this._value && this._slotContainsOnlyText ? this._getSlottedContent().trim() : this._value?.trim() ?? this.text;
|
40
|
+
}
|
41
|
+
updated(t) {
|
42
|
+
super.updated(t), this._parent ??= this.closest("skf-select"), this._parent || console.warn("skf-select-option must be used inside a skf-select or skf-select-option-group"), t.has("selected") && !this._shortcutUpdate && this.emit("skf-select-option-select", {
|
43
|
+
detail: {
|
44
|
+
value: this.selected ? this.value : null,
|
45
|
+
option: this
|
46
|
+
}
|
47
|
+
});
|
48
|
+
}
|
49
|
+
_handleStateChange() {
|
50
|
+
g(u(this, h), "small").set(this.small);
|
51
|
+
}
|
52
|
+
/**
|
53
|
+
* @internal
|
54
|
+
* This internal setter is to change selected state without emitting events triggering other side effects,
|
55
|
+
* e.g deselecting previous selected in a single select. Is used by skf-select in single select mode.
|
56
|
+
*/
|
57
|
+
set setSelectedDiscrete(t) {
|
58
|
+
(async () => {
|
59
|
+
this._shortcutUpdate = !0, this.selected = t, await this.updateComplete, this._shortcutUpdate = !1;
|
60
|
+
})();
|
61
|
+
}
|
62
|
+
/**
|
63
|
+
* @internal
|
64
|
+
* Returns the slotted content as a string. If no slotted content, returns an empty string.
|
65
|
+
*/
|
66
|
+
_getSlottedContent() {
|
67
|
+
return this._assignedNodes ? [...this._assignedNodes].map((t) => t.nodeType === Node.ELEMENT_NODE ? t.outerHTML : t.textContent).join() : "";
|
68
|
+
}
|
69
|
+
/** @internal */
|
70
|
+
get _slotContainsOnlyText() {
|
71
|
+
return this._assignedNodes ? [...this._assignedNodes].every(
|
72
|
+
(i) => i.nodeType === Node.TEXT_NODE && i.textContent?.trim() !== ""
|
73
|
+
) : "";
|
74
|
+
}
|
75
|
+
render() {
|
76
|
+
return _`
|
77
|
+
<button
|
78
|
+
?disabled=${this.disabled}
|
79
|
+
@click=${this._handleClick}
|
80
|
+
aria-selected=${this.selected ? "true" : "false"}
|
81
|
+
role="option"
|
82
|
+
>
|
83
|
+
<skf-icon id="icon-check" name="check" size="sm"></skf-icon>
|
84
|
+
<slot>${this.text}</slot>
|
85
|
+
<div id="adornments">
|
86
|
+
<slot name="icon">
|
87
|
+
${this.icon && _`
|
88
|
+
<skf-icon
|
89
|
+
color=${v(this.iconColor)}
|
90
|
+
data-color=${v((this.disabled || !this.iconColor) && "custom")}
|
91
|
+
name=${this.icon}
|
92
|
+
></skf-icon>
|
93
|
+
`}
|
94
|
+
</slot>
|
95
|
+
${this.shortLabel && _`<div id="short-label">${this.shortLabel}</div>`}
|
96
|
+
</div>
|
97
|
+
</button>
|
98
|
+
`;
|
99
|
+
}
|
100
|
+
};
|
101
|
+
n = new WeakMap(), h = new WeakMap(), c.styles = [N, E], c.shadowRootOptions = { ...T.shadowRootOptions, delegatesFocus: !0 };
|
102
|
+
let o = c;
|
103
|
+
r([
|
104
|
+
a({ type: Boolean, reflect: !0 })
|
105
|
+
], o.prototype, "disabled", 2);
|
106
|
+
r([
|
107
|
+
a({ reflect: !0 })
|
108
|
+
], o.prototype, "icon", 2);
|
109
|
+
r([
|
110
|
+
a({ reflect: !0, attribute: "icon-color" })
|
111
|
+
], o.prototype, "iconColor", 2);
|
112
|
+
r([
|
113
|
+
a({ type: Boolean, reflect: !0 })
|
114
|
+
], o.prototype, "selected", 2);
|
115
|
+
r([
|
116
|
+
a({ reflect: !0, attribute: "short-label" })
|
117
|
+
], o.prototype, "shortLabel", 2);
|
118
|
+
r([
|
119
|
+
a({ attribute: !1 })
|
120
|
+
], o.prototype, "text", 1);
|
121
|
+
r([
|
122
|
+
a({ reflect: !0 })
|
123
|
+
], o.prototype, "value", 1);
|
124
|
+
r([
|
125
|
+
$()
|
126
|
+
], o.prototype, "small", 2);
|
127
|
+
r([
|
128
|
+
O({ flatten: !0 })
|
129
|
+
], o.prototype, "_assignedNodes", 2);
|
130
|
+
r([
|
131
|
+
x("small")
|
132
|
+
], o.prototype, "_handleStateChange", 1);
|
133
|
+
export {
|
134
|
+
o as SkfSelectOption
|
135
|
+
};
|
@@ -0,0 +1,65 @@
|
|
1
|
+
import { css as e } from "lit";
|
2
|
+
const o = e`
|
3
|
+
@layer components {
|
4
|
+
@layer base {
|
5
|
+
button {
|
6
|
+
--_skf-select-option-bg: var(--skf-interactive-bg-color-secondary);
|
7
|
+
--_skf-select-option-color: inherit;
|
8
|
+
--_skf-select-option-height: var(--skf-size-44);
|
9
|
+
|
10
|
+
align-items: center;
|
11
|
+
background-color: var(--_skf-select-option-bg);
|
12
|
+
block-size: var(--_skf-select-option-height);
|
13
|
+
color: var(--_skf-select-option-color);
|
14
|
+
display: flex;
|
15
|
+
gap: var(--skf-spacing-50);
|
16
|
+
padding-inline: var(--skf-spacing-50);
|
17
|
+
width: 100%;
|
18
|
+
}
|
19
|
+
|
20
|
+
#icon-check {
|
21
|
+
opacity: 0;
|
22
|
+
|
23
|
+
:host([selected]) & {
|
24
|
+
opacity: 1;
|
25
|
+
}
|
26
|
+
}
|
27
|
+
|
28
|
+
#adornments {
|
29
|
+
align-items: inherit;
|
30
|
+
display: inherit;
|
31
|
+
gap: inherit;
|
32
|
+
margin-inline-start: auto;
|
33
|
+
}
|
34
|
+
|
35
|
+
#short-label {
|
36
|
+
color: var(--skf-text-color-tertiary);
|
37
|
+
}
|
38
|
+
}
|
39
|
+
|
40
|
+
@layer states {
|
41
|
+
button {
|
42
|
+
&:disabled {
|
43
|
+
--_skf-select-option-color: var(--skf-interactive-text-color-disabled);
|
44
|
+
}
|
45
|
+
|
46
|
+
&:is(:hover, :focus):not(:disabled) {
|
47
|
+
--_skf-select-option-bg: var(--skf-interactive-bg-color-secondary-hover);
|
48
|
+
}
|
49
|
+
|
50
|
+
&:active:not(:disabled) {
|
51
|
+
--_skf-select-option-bg: var(--skf-interactive-bg-color-secondary-active);
|
52
|
+
}
|
53
|
+
}
|
54
|
+
}
|
55
|
+
|
56
|
+
@layer mods {
|
57
|
+
:host(:state(small)) button {
|
58
|
+
--_skf-select-option-height: var(--skf-size-32);
|
59
|
+
}
|
60
|
+
}
|
61
|
+
}
|
62
|
+
`;
|
63
|
+
export {
|
64
|
+
o as styles
|
65
|
+
};
|