@skf-design-system/ui-components 1.0.0-alpha.33 → 1.0.0-alpha.35
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 +20 -27
- 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 +9 -13
- package/dist/components/accordion/accordion.component.js +7 -7
- package/dist/components/accordion/accordion.d.ts +0 -1
- package/dist/components/alert/alert.component.d.ts +12 -12
- package/dist/components/alert/alert.component.js +57 -54
- package/dist/components/alert/alert.styles.js +50 -51
- package/dist/components/breadcrumb/breadcrumb-item.component.d.ts +25 -0
- package/dist/components/breadcrumb/breadcrumb-item.component.js +60 -0
- package/dist/components/breadcrumb/breadcrumb-item.d.ts +8 -0
- 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 +32 -0
- package/dist/components/breadcrumb/breadcrumb.component.js +65 -0
- package/dist/components/breadcrumb/breadcrumb.d.ts +8 -0
- 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 +17 -14
- package/dist/components/button/button.component.js +74 -60
- package/dist/components/button/button.styles.d.ts +1 -2
- package/dist/components/button/button.styles.js +13 -3
- package/dist/components/card/card.component.d.ts +4 -1
- package/dist/components/card/card.component.js +46 -36
- package/dist/components/card/card.styles.js +36 -23
- package/dist/components/checkbox/checkbox.component.d.ts +17 -13
- package/dist/components/checkbox/checkbox.component.js +75 -61
- package/dist/components/checkbox/checkbox.styles.d.ts +1 -2
- package/dist/components/checkbox/checkbox.styles.js +1 -5
- package/dist/components/datepicker/datepicker-calendar.component.d.ts +80 -0
- package/dist/components/datepicker/datepicker-calendar.component.js +415 -0
- package/dist/components/datepicker/datepicker-calendar.d.ts +8 -0
- package/dist/components/datepicker/datepicker-calendar.js +6 -0
- package/dist/components/datepicker/datepicker-calendar.styles.js +202 -0
- package/dist/components/datepicker/datepicker-popup.component.d.ts +64 -0
- package/dist/components/datepicker/datepicker-popup.component.js +261 -0
- package/dist/components/datepicker/datepicker-popup.d.ts +8 -0
- package/dist/components/datepicker/datepicker-popup.helpers.d.ts +41 -0
- package/dist/components/datepicker/datepicker-popup.helpers.js +83 -0
- package/dist/components/datepicker/datepicker-popup.js +6 -0
- package/dist/components/datepicker/datepicker-popup.styles.js +87 -0
- package/dist/components/datepicker/datepicker.component.d.ts +121 -0
- package/dist/components/datepicker/datepicker.component.js +455 -0
- package/dist/components/datepicker/datepicker.d.ts +8 -0
- package/dist/components/datepicker/datepicker.helpers.d.ts +38 -0
- package/dist/components/datepicker/datepicker.helpers.js +31 -0
- package/dist/components/datepicker/datepicker.js +6 -0
- package/dist/components/datepicker/datepicker.styles.d.ts +1 -0
- package/dist/components/datepicker/datepicker.styles.js +18 -0
- package/dist/components/dialog/dialog.component.d.ts +20 -30
- package/dist/components/dialog/dialog.component.js +89 -78
- 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 +4 -8
- package/dist/components/divider/divider.component.js +24 -46
- package/dist/components/divider/divider.styles.js +34 -30
- package/dist/components/drawer/drawer.component.d.ts +61 -0
- package/dist/components/drawer/drawer.component.js +125 -0
- package/dist/components/drawer/drawer.d.ts +8 -0
- package/dist/components/drawer/drawer.js +6 -0
- package/dist/components/drawer/drawer.styles.js +71 -0
- package/dist/components/header/header.component.d.ts +46 -0
- package/dist/components/header/header.component.js +116 -0
- package/dist/components/header/header.d.ts +8 -0
- package/dist/components/header/header.js +6 -0
- package/dist/components/header/header.styles.js +68 -0
- package/dist/components/heading/heading.component.d.ts +8 -12
- package/dist/components/heading/heading.component.js +52 -24
- package/dist/components/heading/heading.styles.d.ts +1 -2
- package/dist/components/heading/heading.styles.js +35 -37
- package/dist/components/icon/icon.component.d.ts +19 -18
- package/dist/components/icon/icon.component.js +60 -40
- package/dist/components/icon/icon.styles.d.ts +1 -2
- package/dist/components/icon/icon.styles.js +61 -60
- package/dist/components/input/input.component.d.ts +31 -31
- package/dist/components/input/input.component.js +167 -146
- package/dist/components/input/input.controllers.d.ts +20 -6
- package/dist/components/input/input.controllers.js +14 -10
- package/dist/components/link/link.component.d.ts +12 -14
- package/dist/components/link/link.component.js +36 -34
- package/dist/components/link/link.styles.d.ts +1 -2
- package/dist/components/link/link.styles.js +24 -20
- package/dist/components/loader/loader.component.d.ts +1 -1
- package/dist/components/loader/loader.component.js +36 -40
- package/dist/components/loader/loader.styles.d.ts +1 -2
- package/dist/components/loader/loader.styles.js +40 -32
- 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-item → menu}/menu-item.component.js +3 -3
- package/dist/components/{menu-item → menu}/menu-item.d.ts +2 -2
- package/dist/components/menu/menu.component.d.ts +10 -8
- package/dist/components/menu/menu.component.js +8 -10
- package/dist/components/menu/menu.d.ts +2 -2
- package/dist/components/nav/nav-item.component.d.ts +18 -0
- package/dist/components/nav/nav-item.component.js +38 -0
- package/dist/components/nav/nav-item.d.ts +8 -0
- package/dist/components/nav/nav-item.js +6 -0
- package/dist/components/nav/nav-item.styles.d.ts +1 -0
- package/dist/components/nav/nav-item.styles.js +39 -0
- package/dist/components/nav/nav.component.d.ts +17 -0
- package/dist/components/nav/nav.component.js +34 -0
- package/dist/components/nav/nav.d.ts +8 -0
- package/dist/components/nav/nav.js +6 -0
- package/dist/components/nav/nav.styles.d.ts +1 -0
- package/dist/components/nav/nav.styles.js +17 -0
- package/dist/components/popover/popover.component.d.ts +11 -8
- package/dist/components/popover/popover.component.js +24 -26
- package/dist/components/popover/popover.d.ts +2 -2
- package/dist/components/progress/progress.component.d.ts +2 -2
- package/dist/components/progress/progress.component.js +31 -37
- 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 +19 -13
- package/dist/components/radio/radio.component.js +13 -12
- package/dist/components/radio/radio.styles.d.ts +1 -2
- package/dist/components/radio/radio.styles.js +1 -1
- package/dist/components/segmented-button/segmented-button-item.component.d.ts +36 -0
- package/dist/components/segmented-button/segmented-button-item.component.js +56 -0
- package/dist/components/segmented-button/segmented-button-item.d.ts +8 -0
- package/dist/components/segmented-button/segmented-button-item.js +6 -0
- package/dist/components/segmented-button/segmented-button-item.styles.d.ts +1 -0
- package/dist/components/segmented-button/segmented-button-item.styles.js +62 -0
- package/dist/components/segmented-button/segmented-button.component.d.ts +30 -0
- package/dist/components/segmented-button/segmented-button.component.js +73 -0
- package/dist/components/segmented-button/segmented-button.d.ts +8 -0
- package/dist/components/segmented-button/segmented-button.js +6 -0
- package/dist/components/segmented-button/segmented-button.styles.d.ts +1 -0
- package/dist/components/segmented-button/segmented-button.styles.js +16 -0
- package/dist/components/{select-option-group → select}/select-option-group.component.js +1 -1
- package/dist/components/{select-option-group → select}/select-option-group.d.ts +2 -2
- package/dist/components/select/select-option-group.style.d.ts +1 -0
- package/dist/components/{select-option → select}/select-option.component.d.ts +9 -10
- package/dist/components/{select-option → select}/select-option.component.js +23 -22
- package/dist/components/select/select-option.controllers.d.ts +15 -0
- package/dist/components/select/select-option.styles.d.ts +1 -0
- package/dist/components/select/select.component.d.ts +18 -17
- package/dist/components/select/select.component.js +22 -22
- package/dist/components/select/select.controllers.d.ts +21 -10
- package/dist/components/select/select.controllers.js +27 -22
- package/dist/components/select/stories/select.stories.icons.d.ts +7 -0
- package/dist/components/{stepper-item → stepper}/stepper-item.component.js +50 -49
- package/dist/components/{stepper-item → stepper}/stepper-item.d.ts +2 -2
- package/dist/components/stepper/stepper-item.styles.d.ts +1 -0
- package/dist/components/stepper/stepper.component.d.ts +4 -3
- package/dist/components/stepper/stepper.component.js +15 -15
- package/dist/components/stepper/stepper.d.ts +2 -2
- package/dist/components/stepper/stepper.helpers.d.ts +1 -1
- package/dist/components/switch/switch.component.d.ts +7 -6
- package/dist/components/switch/switch.component.js +21 -21
- package/dist/components/switch/switch.d.ts +2 -2
- package/dist/components/{tab-panel → tabs}/tab-panel.component.js +1 -1
- package/dist/components/{tab-panel → tabs}/tab-panel.d.ts +2 -2
- package/dist/components/tabs/tab-panel.styles.d.ts +1 -0
- package/dist/components/{tab → tabs}/tab.component.d.ts +2 -2
- package/dist/components/{tab → tabs}/tab.component.js +1 -1
- package/dist/components/{tab → tabs}/tab.d.ts +2 -2
- package/dist/components/tabs/tab.styles.d.ts +1 -0
- 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} +31 -31
- package/dist/components/tabs/tabs.d.ts +8 -0
- package/dist/components/tabs/tabs.js +6 -0
- package/dist/components/tabs/tabs.styles.d.ts +1 -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 -17
- package/dist/components/tag/tag.component.js +69 -67
- 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 +10 -11
- package/dist/components/textarea/textarea.component.js +66 -67
- package/dist/components/{toast-item → toast}/toast-item.component.js +15 -15
- 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 +18 -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 +9 -5
- package/dist/components/toast/toast.component.js +32 -28
- package/dist/components/toast/toast.singleton.d.ts +6 -11
- package/dist/components/toast/toast.singleton.js +23 -23
- package/dist/components/tooltip/tooltip.component.d.ts +7 -7
- package/dist/components/tooltip/tooltip.component.js +16 -11
- package/dist/components/tooltip/tooltip.d.ts +2 -2
- package/dist/custom-elements.json +4450 -2753
- package/dist/index.d.ts +22 -9
- package/dist/index.js +111 -74
- package/dist/internal/base-classes/popover/popover.base.d.ts +24 -9
- package/dist/internal/base-classes/popover/popover.base.js +138 -77
- package/dist/internal/base-classes/popover/popover.styles.js +14 -1
- package/dist/internal/components/hint/hint.component.d.ts +2 -2
- package/dist/internal/components/hint/hint.component.js +3 -2
- package/dist/internal/components/hint/hint.styles.d.ts +1 -2
- package/dist/internal/components/hint/hint.styles.js +1 -1
- 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/elementOverflowController.d.ts +13 -0
- package/dist/internal/controllers/popover.controller.d.ts +12 -6
- package/dist/internal/controllers/popover.controller.js +7 -11
- package/dist/internal/helpers/dateFormatter.d.ts +2 -0
- 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/utilityTypes.d.ts +22 -0
- package/dist/internal/helpers/uuid.d.ts +15 -0
- package/dist/internal/helpers/uuid.js +14 -0
- package/dist/internal/helpers/watch.d.ts +1 -1
- package/dist/internal/helpers/watch.js +12 -12
- package/dist/internal/storybook/styles.d.ts +1 -0
- package/dist/internal/types/formField.d.ts +1 -1
- package/dist/internal/types.d.ts +18 -0
- package/dist/styles/component.styles.d.ts +1 -2
- package/dist/styles/component.styles.js +38 -37
- package/dist/styles/form-field.styles.js +11 -6
- package/dist/styles/global-alt.css +1 -0
- package/dist/styles/global.css +1 -1
- package/dist/types/jsx/custom-element-jsx.d.ts +767 -1282
- package/dist/types/vue/index.d.ts +572 -310
- package/dist/vscode.html-custom-data.json +547 -1068
- package/dist/web-types.json +1314 -769
- package/package.json +48 -64
- 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 -85
- 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/input/input.test.d.ts +0 -1
- package/dist/components/menu-item/menu-item.component.d.ts +0 -25
- package/dist/components/radio/radio.test.d.ts +0 -1
- package/dist/components/select-option/select-option.controllers.d.ts +0 -9
- 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/toast-item/toast-item.styles.js +0 -16
- package/dist/internal/constants/heading.d.ts +0 -2
- package/dist/internal/playwright/index.d.ts +0 -1
- package/dist/react/index.d.ts +0 -33
- package/dist/react/index.js +0 -33
- package/dist/react/skf-accordion/index.d.ts +0 -3
- package/dist/react/skf-accordion/index.js +0 -13
- package/dist/react/skf-alert/index.d.ts +0 -9
- package/dist/react/skf-alert/index.js +0 -17
- package/dist/react/skf-button/index.d.ts +0 -9
- package/dist/react/skf-button/index.js +0 -17
- package/dist/react/skf-card/index.d.ts +0 -3
- package/dist/react/skf-card/index.js +0 -13
- package/dist/react/skf-checkbox/index.d.ts +0 -9
- package/dist/react/skf-checkbox/index.js +0 -17
- package/dist/react/skf-collapse/index.d.ts +0 -9
- package/dist/react/skf-collapse/index.js +0 -17
- package/dist/react/skf-dialog/index.d.ts +0 -15
- package/dist/react/skf-dialog/index.js +0 -19
- package/dist/react/skf-divider/index.d.ts +0 -3
- package/dist/react/skf-divider/index.js +0 -13
- package/dist/react/skf-heading/index.d.ts +0 -3
- package/dist/react/skf-heading/index.js +0 -13
- package/dist/react/skf-icon/index.d.ts +0 -3
- package/dist/react/skf-icon/index.js +0 -13
- package/dist/react/skf-input/index.d.ts +0 -12
- package/dist/react/skf-input/index.js +0 -18
- package/dist/react/skf-link/index.d.ts +0 -3
- package/dist/react/skf-link/index.js +0 -13
- package/dist/react/skf-loader/index.d.ts +0 -3
- package/dist/react/skf-loader/index.js +0 -13
- package/dist/react/skf-logo/index.d.ts +0 -3
- package/dist/react/skf-logo/index.js +0 -13
- package/dist/react/skf-menu/index.d.ts +0 -12
- package/dist/react/skf-menu/index.js +0 -18
- package/dist/react/skf-menu-item/index.d.ts +0 -27
- package/dist/react/skf-menu-item/index.js +0 -23
- package/dist/react/skf-popover/index.d.ts +0 -12
- package/dist/react/skf-popover/index.js +0 -18
- package/dist/react/skf-progress/index.d.ts +0 -3
- package/dist/react/skf-progress/index.js +0 -13
- package/dist/react/skf-radio/index.d.ts +0 -9
- package/dist/react/skf-radio/index.js +0 -17
- package/dist/react/skf-select/index.d.ts +0 -21
- package/dist/react/skf-select/index.js +0 -21
- package/dist/react/skf-select-option/index.d.ts +0 -9
- package/dist/react/skf-select-option/index.js +0 -17
- package/dist/react/skf-select-option-group/index.d.ts +0 -3
- package/dist/react/skf-select-option-group/index.js +0 -13
- package/dist/react/skf-stepper/index.d.ts +0 -9
- package/dist/react/skf-stepper/index.js +0 -17
- package/dist/react/skf-stepper-item/index.d.ts +0 -9
- package/dist/react/skf-stepper-item/index.js +0 -17
- package/dist/react/skf-switch/index.d.ts +0 -3
- package/dist/react/skf-switch/index.js +0 -13
- package/dist/react/skf-tab/index.d.ts +0 -12
- package/dist/react/skf-tab/index.js +0 -18
- package/dist/react/skf-tab-group/index.d.ts +0 -3
- package/dist/react/skf-tab-group/index.js +0 -13
- package/dist/react/skf-tab-panel/index.d.ts +0 -3
- package/dist/react/skf-tab-panel/index.js +0 -13
- package/dist/react/skf-tag/index.d.ts +0 -3
- package/dist/react/skf-tag/index.js +0 -13
- package/dist/react/skf-textarea/index.d.ts +0 -12
- package/dist/react/skf-textarea/index.js +0 -18
- package/dist/react/skf-toast/index.d.ts +0 -3
- package/dist/react/skf-toast/index.js +0 -13
- package/dist/react/skf-toast-wrapper/index.d.ts +0 -3
- package/dist/react/skf-toast-wrapper/index.js +0 -13
- package/dist/react/skf-tooltip/index.d.ts +0 -12
- package/dist/react/skf-tooltip/index.js +0 -18
- /package/dist/components/{menu-item/menu-item.styles.d.ts → accordion/accordion-item.styles.d.ts} +0 -0
- /package/dist/components/{select-option-group/select-option-group.style.d.ts → breadcrumb/breadcrumb-item.styles.d.ts} +0 -0
- /package/dist/components/{select-option/select-option.styles.d.ts → breadcrumb/breadcrumb.styles.d.ts} +0 -0
- /package/dist/components/{stepper-item/stepper-item.styles.d.ts → datepicker/datepicker-calendar.styles.d.ts} +0 -0
- /package/dist/components/{tab-group/tab-group.styles.d.ts → datepicker/datepicker-popup.styles.d.ts} +0 -0
- /package/dist/components/{tab-panel/tab-panel.styles.d.ts → drawer/drawer.styles.d.ts} +0 -0
- /package/dist/components/{tab/tab.styles.d.ts → header/header.styles.d.ts} +0 -0
- /package/dist/components/{menu-item → menu}/menu-item.js +0 -0
- /package/dist/components/{toast-wrapper/toast-wrapper.styles.d.ts → menu/menu-item.styles.d.ts} +0 -0
- /package/dist/components/{menu-item → menu}/menu-item.styles.js +0 -0
- /package/dist/components/{select-option-group → select}/select-option-group.component.d.ts +0 -0
- /package/dist/components/{select-option-group → select}/select-option-group.js +0 -0
- /package/dist/components/{select-option-group → select}/select-option-group.style.js +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/{select-option → select}/select-option.styles.js +0 -0
- /package/dist/components/{stepper-item → stepper}/stepper-item.component.d.ts +0 -0
- /package/dist/components/{stepper-item → stepper}/stepper-item.js +0 -0
- /package/dist/components/{stepper-item → stepper}/stepper-item.styles.js +0 -0
- /package/dist/components/{tab-panel → tabs}/tab-panel.component.d.ts +0 -0
- /package/dist/components/{tab-panel → tabs}/tab-panel.js +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.js +0 -0
- /package/dist/components/{toast-item → toast}/toast-item.component.d.ts +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
package/README.md
CHANGED
@@ -42,13 +42,11 @@ The SKF UI Library is a collection of components that is meant to visually align
|
|
42
42
|
|
43
43
|
The SKF UI Library is created using Lit/native web components in order to support as many frameworks as possible. It works out of the box for all frameworks, including React >= 19.
|
44
44
|
|
45
|
-
|
45
|
+
## Philosophy
|
46
46
|
|
47
|
-
|
48
|
-
|
49
|
-
Reporting issues requires an skf email and github access. [See this section](#skf-email)
|
47
|
+
We like to stay as close to how native compoments works as possible albeit adding extra features on top. The rationale behind is that it either makes easier to absorb the api or learn something that is usable in the world outside as well. Adding looped, repeated content is done declaratively by component specific child components.
|
50
48
|
|
51
|
-
|
49
|
+
<!-- For those who use React 18, we provide React wrappers that can be used in your application.-->
|
52
50
|
|
53
51
|
## 🏃 Getting started
|
54
52
|
|
@@ -89,10 +87,16 @@ How you get started using our components is of course a bit different depending
|
|
89
87
|
|
90
88
|
In order for our components to work as intended you need to import our global styles where appropiate e.g. App.tsx.
|
91
89
|
|
92
|
-
```
|
90
|
+
```ts
|
93
91
|
import '@skf-design-system/ui-components/styles/global.css';
|
94
92
|
```
|
95
93
|
|
94
|
+
If you want to handle the loading of the SKF fonts yourself, you can use the alternative global css file:
|
95
|
+
|
96
|
+
```ts
|
97
|
+
import '@skf-design-system/ui-components/styles/global-alt.css';
|
98
|
+
```
|
99
|
+
|
96
100
|
### Angular
|
97
101
|
|
98
102
|
In order for our components to get the correct styling you need add our global styling to your project. In angular you can do that in the angular.json like this:
|
@@ -152,11 +156,11 @@ export class AppComponent {
|
|
152
156
|
|
153
157
|
```
|
154
158
|
|
155
|
-
### React 19
|
159
|
+
### React 19 / Nextjs 15
|
156
160
|
|
157
|
-
Web Components
|
161
|
+
Web Components is first class citizens in React 19. Should you want to use them in a version prior to 19 you have to wrap them in React wrappers, which essentially converts the native event to React Syntactic events. Long story short, use React 19 and your off the hook.
|
158
162
|
|
159
|
-
If you want to proceed to use the React 19
|
163
|
+
If you want to proceed to use the React 19 together with typescript, see [React 19 upgrade guide](https://react.dev/blog/2024/04/25/react-19-upgrade-guide).
|
160
164
|
|
161
165
|
You will also have to declare a global type for the web components to get it to play nice with JSX.
|
162
166
|
|
@@ -221,24 +225,7 @@ import { SkfInput } from "@skf-design-system/ui-components";
|
|
221
225
|
<skf-input name="input" onchange={(e) => console.log((e.target as unknown as SkfInput).value)}></skf-input>
|
222
226
|
```
|
223
227
|
|
224
|
-
|
225
|
-
|
226
|
-
> Note, for React 18 it is not necessary to install an extra plugin to get code completion since you are writing in react
|
227
|
-
|
228
|
-
React 18 does not support native web components out of the box. If you want to use SKF UI components with React 18 you will have to use our generated wrappers in order to do so.
|
229
|
-
|
230
|
-
```tsx
|
231
|
-
import { SkfInput } from "@skf-design-system/ui-components/react/index.js";
|
232
|
-
|
233
|
-
...
|
234
|
-
|
235
|
-
<SkfInput
|
236
|
-
name="input"
|
237
|
-
onChange={(e) => {
|
238
|
-
console.log( e.target.value );
|
239
|
-
}}
|
240
|
-
/>
|
241
|
-
```
|
228
|
+
⚠️ **React 18** does not support native web components. If you want to use this library you must upgrade React to version 19.
|
242
229
|
|
243
230
|
### Setting up code completion
|
244
231
|
|
@@ -321,6 +308,12 @@ steps:
|
|
321
308
|
|
322
309
|
In this example a token has been added with the name `ACCESS_TOKEN_SECRET`, but you can give it any name you like ✨. If you want to know more about secret generation and usage you can read more about it in [GitHub's docs](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions).
|
323
310
|
|
311
|
+
## Reporting issues
|
312
|
+
|
313
|
+
Reporting issues requires an skf email and github access. [See this section](#skf-email)
|
314
|
+
|
315
|
+
We are working on a solution to report issues without an explicit skf email, which will be publicly available.
|
316
|
+
|
324
317
|
## 📖 Further reading
|
325
318
|
|
326
319
|
### 🎁 Contributing
|
@@ -0,0 +1,36 @@
|
|
1
|
+
import '../icon/icon.js';
|
2
|
+
import { SkfElement } from '../../internal/components/skf-element.js';
|
3
|
+
import type { HeadingType } from '../../internal/types.js';
|
4
|
+
import type { CSSResultGroup } from 'lit';
|
5
|
+
export type SkfAccordionItemHeadingType = Exclude<HeadingType, 'h1'>;
|
6
|
+
/**
|
7
|
+
* The `<skf-accordion-item>` is used in conjunction with the `<skf-accordion>` component
|
8
|
+
*
|
9
|
+
* @event {CustomEvent} skf-accordion-item-toggle - Event emitted when toggled
|
10
|
+
*
|
11
|
+
* @slot - Main content
|
12
|
+
*
|
13
|
+
* @tagname skf-accordion-item
|
14
|
+
*/
|
15
|
+
export declare class SkfAccordionItem extends SkfElement {
|
16
|
+
static styles: CSSResultGroup;
|
17
|
+
/** If true, will animate the expand/accordion-item state */
|
18
|
+
animated: boolean;
|
19
|
+
/** If true, will set the accordion-item to be expanded by default */
|
20
|
+
expanded: boolean;
|
21
|
+
/** Heading for the accordion-item */
|
22
|
+
heading?: string;
|
23
|
+
/** Defines which heading element will be rendered */
|
24
|
+
headingAs: SkfAccordionItemHeadingType;
|
25
|
+
/** If true, renders the small version */
|
26
|
+
small: boolean;
|
27
|
+
/** If true, will truncate the heading in accordion-item state */
|
28
|
+
truncate: boolean;
|
29
|
+
/** Class method as alternative to manipulate attribute */
|
30
|
+
setClose(): void;
|
31
|
+
/** Class method as alternative to manipulate attribute */
|
32
|
+
setOpen(): void;
|
33
|
+
/** @internal */
|
34
|
+
private _toggle;
|
35
|
+
render(): import("lit").TemplateResult;
|
36
|
+
}
|
@@ -0,0 +1,98 @@
|
|
1
|
+
import "../icon/icon.js";
|
2
|
+
import { SkfElement as p } from "../../internal/components/skf-element.js";
|
3
|
+
import { componentStyles as m } from "../../styles/component.styles.js";
|
4
|
+
import { property as i } from "lit/decorators.js";
|
5
|
+
import { classMap as h } from "lit/directives/class-map.js";
|
6
|
+
import { ifDefined as u } from "lit/directives/if-defined.js";
|
7
|
+
import { literal as r, html as f } from "lit/static-html.js";
|
8
|
+
import { styles as _ } from "./accordion-item.styles.js";
|
9
|
+
var g = Object.defineProperty, s = (d, e, c, y) => {
|
10
|
+
for (var a = void 0, o = d.length - 1, l; o >= 0; o--)
|
11
|
+
(l = d[o]) && (a = l(e, c, a) || a);
|
12
|
+
return a && g(e, c, a), a;
|
13
|
+
};
|
14
|
+
const n = class n extends p {
|
15
|
+
constructor() {
|
16
|
+
super(...arguments), this.animated = !1, this.expanded = !1, this.headingAs = "h2", this.small = !1, this.truncate = !1, this._toggle = () => {
|
17
|
+
this.dispatchEvent(
|
18
|
+
new CustomEvent("skf-accordion-item-toggle", {
|
19
|
+
bubbles: !0,
|
20
|
+
composed: !0,
|
21
|
+
cancelable: !0
|
22
|
+
})
|
23
|
+
), this.expanded = !this.expanded;
|
24
|
+
};
|
25
|
+
}
|
26
|
+
/** Class method as alternative to manipulate attribute */
|
27
|
+
setClose() {
|
28
|
+
this.expanded = !1;
|
29
|
+
}
|
30
|
+
/** Class method as alternative to manipulate attribute */
|
31
|
+
setOpen() {
|
32
|
+
this.expanded = !0;
|
33
|
+
}
|
34
|
+
render() {
|
35
|
+
let e;
|
36
|
+
switch (!0) {
|
37
|
+
case this.headingAs === "h3":
|
38
|
+
e = r`h3`;
|
39
|
+
break;
|
40
|
+
case this.headingAs === "h4":
|
41
|
+
e = r`h4`;
|
42
|
+
break;
|
43
|
+
default:
|
44
|
+
e = r`h2`;
|
45
|
+
break;
|
46
|
+
}
|
47
|
+
return f`
|
48
|
+
<div class=${h({
|
49
|
+
"accordion-item": !0,
|
50
|
+
"accordion-item--animated": this.animated,
|
51
|
+
"accordion-item--expanded": this.expanded,
|
52
|
+
"accordion-item--small": this.small,
|
53
|
+
"accordion-item--truncate": this.truncate
|
54
|
+
})}>
|
55
|
+
<${e} class="accordion-item__heading">
|
56
|
+
<button
|
57
|
+
@click=${this._toggle}
|
58
|
+
aria-controls="main"
|
59
|
+
aria-expanded=${u(this.expanded ? "true" : "false")}
|
60
|
+
class="accordion-item__btn"
|
61
|
+
type="button"
|
62
|
+
>
|
63
|
+
<span class="accordion-item__label">${this.heading}</span>
|
64
|
+
<skf-icon class="accordion-item__icon" name=${this.expanded ? "caretUp" : "caretDown"}></skf-icon>
|
65
|
+
</button>
|
66
|
+
</${e}>
|
67
|
+
<div class="accordion-item__body">
|
68
|
+
<div class="accordion-item__main" data-testid="main" id="main">
|
69
|
+
<slot></slot>
|
70
|
+
</div>
|
71
|
+
</div>
|
72
|
+
</div>
|
73
|
+
`;
|
74
|
+
}
|
75
|
+
};
|
76
|
+
n.styles = [m, _];
|
77
|
+
let t = n;
|
78
|
+
s([
|
79
|
+
i({ type: Boolean, reflect: !0 })
|
80
|
+
], t.prototype, "animated");
|
81
|
+
s([
|
82
|
+
i({ type: Boolean, reflect: !0 })
|
83
|
+
], t.prototype, "expanded");
|
84
|
+
s([
|
85
|
+
i()
|
86
|
+
], t.prototype, "heading");
|
87
|
+
s([
|
88
|
+
i({ attribute: "heading-as" })
|
89
|
+
], t.prototype, "headingAs");
|
90
|
+
s([
|
91
|
+
i({ type: Boolean, reflect: !0 })
|
92
|
+
], t.prototype, "small");
|
93
|
+
s([
|
94
|
+
i({ type: Boolean, reflect: !0 })
|
95
|
+
], t.prototype, "truncate");
|
96
|
+
export {
|
97
|
+
t as SkfAccordionItem
|
98
|
+
};
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import {
|
2
|
-
export
|
3
|
-
|
1
|
+
import { SkfAccordionItem } from './accordion-item.component.js';
|
2
|
+
export * from './accordion-item.component.js';
|
3
|
+
export default SkfAccordionItem;
|
4
4
|
declare global {
|
5
5
|
interface HTMLElementTagNameMap {
|
6
6
|
'skf-accordion-item': SkfAccordionItem;
|
@@ -1,7 +1,6 @@
|
|
1
|
-
import {
|
2
|
-
|
3
|
-
}
|
4
|
-
e.define("skf-accordion-item");
|
1
|
+
import { SkfAccordionItem as o } from "./accordion-item.component.js";
|
2
|
+
o.define("skf-accordion-item");
|
5
3
|
export {
|
6
|
-
|
4
|
+
o as SkfAccordionItem,
|
5
|
+
o as default
|
7
6
|
};
|
@@ -0,0 +1,77 @@
|
|
1
|
+
import { css as i } from "lit";
|
2
|
+
const e = i`
|
3
|
+
/* stylelint-disable selector-class-pattern */
|
4
|
+
@layer components {
|
5
|
+
.accordion-item {
|
6
|
+
background: var(--skf-bg-color-neutral-1);
|
7
|
+
border-bottom: var(--skf-border-width-sm) solid var(--skf-border-color-tertiary);
|
8
|
+
}
|
9
|
+
|
10
|
+
.accordion-item__heading {
|
11
|
+
font-size: var(--_skf-accordion-item-heading-size, var(--skf-font-size-100));
|
12
|
+
font-weight: var(--_skf-accordion-item-heading-weight, normal);
|
13
|
+
|
14
|
+
.accordion-item--small & {
|
15
|
+
--_skf-accordion-item-heading-size: var(--skf-font-size-75);
|
16
|
+
--_skf-accordion-item-heading-weight: var(--skf-font-weight-medium);
|
17
|
+
}
|
18
|
+
}
|
19
|
+
|
20
|
+
.accordion-item__btn {
|
21
|
+
align-items: center;
|
22
|
+
display: flex;
|
23
|
+
padding-block: var(--_skf-accordion-item-button-padding-block, var(--skf-spacing-50));
|
24
|
+
padding-inline: var(--skf-spacing-75);
|
25
|
+
width: 100%;
|
26
|
+
|
27
|
+
&:focus-visible {
|
28
|
+
outline: var(--skf-border-width-md) solid var(--skf-interactive-border-color-focus);
|
29
|
+
outline-offset: -2px;
|
30
|
+
}
|
31
|
+
|
32
|
+
.accordion-item--small & {
|
33
|
+
--_skf-accordion-item-button-padding-block: var(--skf-spacing-25);
|
34
|
+
}
|
35
|
+
}
|
36
|
+
|
37
|
+
.accordion-item__label {
|
38
|
+
.accordion-item--truncate:not(.accordion-item--expanded) & {
|
39
|
+
overflow: hidden;
|
40
|
+
text-overflow: ellipsis;
|
41
|
+
white-space: nowrap;
|
42
|
+
}
|
43
|
+
}
|
44
|
+
|
45
|
+
.accordion-item__icon {
|
46
|
+
margin-inline-start: auto;
|
47
|
+
}
|
48
|
+
|
49
|
+
.accordion-item__body {
|
50
|
+
display: grid;
|
51
|
+
grid-template-rows: var(--_skf-accordion-item-body-height, 0fr);
|
52
|
+
padding-inline: var(--skf-spacing-75);
|
53
|
+
|
54
|
+
.accordion-item--animated & {
|
55
|
+
transition: grid-template-rows calc(var(--skf-motion-duration-normal) * 1ms)
|
56
|
+
var(--skf-motion-easing-ease-in);
|
57
|
+
}
|
58
|
+
|
59
|
+
.accordion-item--expanded & {
|
60
|
+
--_skf-accordion-item-body-height: 1fr;
|
61
|
+
}
|
62
|
+
}
|
63
|
+
|
64
|
+
.accordion-item__main {
|
65
|
+
overflow: hidden;
|
66
|
+
|
67
|
+
&::after {
|
68
|
+
content: '';
|
69
|
+
display: block;
|
70
|
+
padding-block-end: var(--skf-spacing-100);
|
71
|
+
}
|
72
|
+
}
|
73
|
+
}
|
74
|
+
`;
|
75
|
+
export {
|
76
|
+
e as styles
|
77
|
+
};
|
@@ -1,11 +1,10 @@
|
|
1
|
-
import '../collapse/collapse.js';
|
2
1
|
import { SkfElement } from '../../internal/components/skf-element.js';
|
3
|
-
import type { HeadingType } from '../../internal/constants/heading.js';
|
4
2
|
import { type CSSResultGroup, type PropertyValues } from 'lit';
|
3
|
+
import type { SkfAccordionItemHeadingType } from './accordion-item.component.js';
|
5
4
|
/**
|
6
|
-
* The `<skf-accordion>` component consists of
|
5
|
+
* The `<skf-accordion>` component consists of one or more `<skf-accordion-item>` item(s) working together
|
7
6
|
*
|
8
|
-
* See [zeroheight](https://zeroheight.com/853e936c9/p/6590bf-accordion) for design principles
|
7
|
+
* See [zeroheight](https://zeroheight.com/853e936c9/p/6590bf-accordion) for design principles
|
9
8
|
*
|
10
9
|
* @slot - Expects one or more <skf-accordion-item> element(s)
|
11
10
|
*
|
@@ -14,20 +13,17 @@ import { type CSSResultGroup, type PropertyValues } from 'lit';
|
|
14
13
|
export declare class SkfAccordion extends SkfElement {
|
15
14
|
static styles: CSSResultGroup;
|
16
15
|
/** If true, will animate the expand/collapse state */
|
17
|
-
animated
|
18
|
-
/**
|
19
|
-
|
20
|
-
* @type { "h1" | "h2" | "h3" | "h4" }
|
21
|
-
*/
|
22
|
-
headingAs: Exclude<HeadingType, 'h1'>;
|
16
|
+
animated: boolean;
|
17
|
+
/** Defines which heading element will be rendered */
|
18
|
+
headingAs: SkfAccordionItemHeadingType;
|
23
19
|
/** If true, adds a gap between each item */
|
24
20
|
gap: boolean;
|
25
21
|
/** If true, allowes multiple accordion items to open */
|
26
|
-
multiple
|
22
|
+
multiple: boolean;
|
27
23
|
/** If true, renders the small version */
|
28
|
-
small
|
24
|
+
small: boolean;
|
29
25
|
/** If true, will truncate all headings in collapsed state */
|
30
|
-
truncate
|
26
|
+
truncate: boolean;
|
31
27
|
/** @internal */
|
32
28
|
private $accordionItems;
|
33
29
|
protected updated(_changedProperties: PropertyValues): void;
|
@@ -1,17 +1,17 @@
|
|
1
|
-
import { SkfElement as
|
2
|
-
import m from "../../styles/component.styles.js";
|
1
|
+
import { SkfElement as p } from "../../internal/components/skf-element.js";
|
2
|
+
import { componentStyles as m } from "../../styles/component.styles.js";
|
3
3
|
import { html as f } from "lit";
|
4
4
|
import { property as a, queryAssignedNodes as d } from "lit/decorators.js";
|
5
5
|
import { classMap as c } from "lit/directives/class-map.js";
|
6
6
|
import { styles as g } from "./accordion.styles.js";
|
7
7
|
var y = Object.defineProperty, s = (u, t, i, o) => {
|
8
|
-
for (var r = void 0, l = u.length - 1,
|
9
|
-
(
|
8
|
+
for (var r = void 0, l = u.length - 1, h; l >= 0; l--)
|
9
|
+
(h = u[l]) && (r = h(t, i, r) || r);
|
10
10
|
return r && y(t, i, r), r;
|
11
11
|
};
|
12
|
-
const n = class n extends
|
12
|
+
const n = class n extends p {
|
13
13
|
constructor() {
|
14
|
-
super(...arguments), this.headingAs = "h2", this.gap = !1, this._setItemAttributes = () => {
|
14
|
+
super(...arguments), this.animated = !1, this.headingAs = "h2", this.gap = !1, this.multiple = !1, this.small = !1, this.truncate = !1, this._setItemAttributes = () => {
|
15
15
|
this.items.forEach((t) => {
|
16
16
|
t.setAttribute("heading-as", this.headingAs), this.animated ? t.setAttribute("animated", "") : t.hasAttribute("animated") && t.removeAttribute("animated"), this.small ? t.setAttribute("small", "") : t.hasAttribute("small") && t.removeAttribute("small"), this.truncate ? t.setAttribute("truncate", "") : t.hasAttribute("truncate") && t.removeAttribute("truncate");
|
17
17
|
});
|
@@ -35,7 +35,7 @@ const n = class n extends h {
|
|
35
35
|
return f`
|
36
36
|
<div class=${c({ "accordion--gap": this.gap })}>
|
37
37
|
<slot
|
38
|
-
@skf-
|
38
|
+
@skf-accordion-item-toggle=${(t) => {
|
39
39
|
this._onChildToggle(t);
|
40
40
|
}}
|
41
41
|
@slotchange=${this._setItemAttributes}
|
@@ -1,14 +1,13 @@
|
|
1
|
-
import type { SkfIcon } from '../icon/icon.component.js';
|
2
1
|
import '../icon/icon.js';
|
3
2
|
import { SkfElement } from '../../internal/components/skf-element.js';
|
4
|
-
import type {
|
3
|
+
import type { Icon, Severity } from '../../internal/types.js';
|
5
4
|
import { type CSSResultGroup } from 'lit';
|
6
5
|
/**
|
7
6
|
* The `<skf-alert>` is a type of notification that appears in-line
|
8
7
|
*
|
9
|
-
*
|
8
|
+
* See [zeroheight](https://zeroheight.com/853e936c9/p/990ec5-alert) for design principles
|
10
9
|
*
|
11
|
-
* @event skf-alert-close - Fires when the close button is clicked
|
10
|
+
* @event {CustomEvent} skf-alert-close - Fires when the close button is clicked
|
12
11
|
*
|
13
12
|
* @slot - Alert message. **Notice!** See design principles for approved content
|
14
13
|
* @slot link - Slot for the link
|
@@ -16,18 +15,19 @@ import { type CSSResultGroup } from 'lit';
|
|
16
15
|
* @tagname skf-alert
|
17
16
|
*/
|
18
17
|
export declare class SkfAlert extends SkfElement {
|
18
|
+
#private;
|
19
19
|
static styles: CSSResultGroup;
|
20
|
-
/** If true, alert is being used as a toast (alertdialog) with an close button */
|
21
|
-
closeable?: boolean;
|
22
20
|
/** Close button aria-label */
|
23
21
|
buttonLabel: string;
|
24
22
|
/** If defined, displays leading icon */
|
25
|
-
icon?:
|
26
|
-
/**
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
23
|
+
icon?: Icon;
|
24
|
+
/** If true, renders with an close button and sets aria-role to `status` */
|
25
|
+
persistent: boolean;
|
26
|
+
/** If defined, gives the supplied appearance */
|
27
|
+
severity?: Severity;
|
28
|
+
connectedCallback(): void;
|
29
|
+
/** @internal */
|
30
|
+
_handleStateChange(): void;
|
31
31
|
/** @internal */
|
32
32
|
private _handleClose;
|
33
33
|
render(): import("lit").TemplateResult<1>;
|
@@ -1,73 +1,76 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
import { html as p, nothing as f } from "lit";
|
4
|
-
import { property as r } from "lit/decorators.js";
|
5
|
-
import { classMap as h } from "lit/directives/class-map.js";
|
6
|
-
import { ifDefined as o } from "lit/directives/if-defined.js";
|
7
|
-
import { styles as v } from "./alert.styles.js";
|
8
|
-
var u = Object.defineProperty, s = (a, n, c, d) => {
|
9
|
-
for (var e = void 0, i = a.length - 1, m; i >= 0; i--)
|
10
|
-
(m = a[i]) && (e = m(n, c, e) || e);
|
11
|
-
return e && u(n, c, e), e;
|
1
|
+
var u = (t) => {
|
2
|
+
throw TypeError(t);
|
12
3
|
};
|
13
|
-
|
4
|
+
var d = (t, e, s) => e.has(t) || u("Cannot " + s);
|
5
|
+
var m = (t, e, s) => (d(t, e, "read from private field"), s ? s.call(t) : e.get(t)), f = (t, e, s) => e.has(t) ? u("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(t) : e.set(t, s), y = (t, e, s, o) => (d(t, e, "write to private field"), o ? o.call(t, s) : e.set(t, s), s);
|
6
|
+
import "../icon/icon.js";
|
7
|
+
import { SkfElement as g } from "../../internal/components/skf-element.js";
|
8
|
+
import { stateMap as C } from "../../internal/helpers/stateMap.js";
|
9
|
+
import { watch as S } from "../../internal/helpers/watch.js";
|
10
|
+
import { componentStyles as $ } from "../../styles/component.styles.js";
|
11
|
+
import { nothing as w, html as v } from "lit";
|
12
|
+
import { property as p } from "lit/decorators.js";
|
13
|
+
import { ifDefined as _ } from "lit/directives/if-defined.js";
|
14
|
+
import { styles as O } from "./alert.styles.js";
|
15
|
+
var P = Object.defineProperty, k = Object.getOwnPropertyDescriptor, l = (t, e, s, o) => {
|
16
|
+
for (var i = o > 1 ? void 0 : o ? k(e, s) : e, c = t.length - 1, h; c >= 0; c--)
|
17
|
+
(h = t[c]) && (i = (o ? h(e, s, i) : h(i)) || i);
|
18
|
+
return o && i && P(e, s, i), i;
|
19
|
+
}, n, a;
|
20
|
+
const b = class b extends g {
|
14
21
|
constructor() {
|
15
|
-
super(...arguments)
|
22
|
+
super(...arguments);
|
23
|
+
f(this, n);
|
24
|
+
f(this, a);
|
25
|
+
y(this, n, this.attachInternals()), y(this, a, m(this, n).states), this.buttonLabel = "Close", this.persistent = !1, this._handleClose = () => {
|
16
26
|
this.emit("skf-alert-close");
|
17
27
|
};
|
18
28
|
}
|
29
|
+
connectedCallback() {
|
30
|
+
super.connectedCallback(), this.role = this.persistent ? "status" : "alert";
|
31
|
+
}
|
32
|
+
_handleStateChange() {
|
33
|
+
const s = ["error", "info", "success", "warning"];
|
34
|
+
C(m(this, a), s).set(this.severity);
|
35
|
+
}
|
19
36
|
render() {
|
20
|
-
return
|
21
|
-
<div
|
22
|
-
aria-describedby="main"
|
23
|
-
aria-modal=${o(this.closeable && "true")}
|
24
|
-
class=${h({
|
25
|
-
alert: !0,
|
26
|
-
"alert--severity-alert": this.severity === "alert",
|
27
|
-
"alert--severity-error": this.severity === "error",
|
28
|
-
"alert--severity-info": this.severity === "info",
|
29
|
-
"alert--severity-success": this.severity === "success",
|
30
|
-
"alert--severity-warning": this.severity === "warning"
|
31
|
-
})}
|
32
|
-
role=${this.closeable ? "alertdialog" : "alert"}
|
33
|
-
>
|
37
|
+
return v`
|
38
|
+
<div id="root">
|
34
39
|
<skf-icon
|
35
|
-
color=${
|
36
|
-
name=${
|
40
|
+
color=${_(this.severity ?? "secondary")}
|
41
|
+
name=${_(this.icon ?? "info")}
|
37
42
|
size="sm"
|
38
43
|
></skf-icon>
|
39
|
-
<div
|
40
|
-
<slot
|
44
|
+
<div id="body">
|
45
|
+
<slot id="main"></slot>
|
41
46
|
<slot name="link"></slot>
|
42
47
|
</div>
|
43
|
-
${this.
|
44
|
-
<button
|
45
|
-
@click="${this._handleClose}"
|
46
|
-
aria-label=${this.buttonLabel}
|
47
|
-
class="alert__btn"
|
48
|
-
type="button"
|
49
|
-
>
|
48
|
+
${this.persistent ? v`
|
49
|
+
<button @click="${this._handleClose}" aria-label=${this.buttonLabel} type="button">
|
50
50
|
<skf-icon name="close" size="sm"></skf-icon>
|
51
51
|
</button>
|
52
|
-
` :
|
52
|
+
` : w}
|
53
53
|
</div>
|
54
54
|
`;
|
55
55
|
}
|
56
56
|
};
|
57
|
-
|
58
|
-
let
|
59
|
-
|
60
|
-
|
61
|
-
],
|
62
|
-
|
63
|
-
|
64
|
-
],
|
65
|
-
|
66
|
-
|
67
|
-
],
|
68
|
-
|
69
|
-
|
70
|
-
],
|
57
|
+
n = new WeakMap(), a = new WeakMap(), b.styles = [$, O];
|
58
|
+
let r = b;
|
59
|
+
l([
|
60
|
+
p({ type: String, attribute: "button-label" })
|
61
|
+
], r.prototype, "buttonLabel", 2);
|
62
|
+
l([
|
63
|
+
p({ type: String })
|
64
|
+
], r.prototype, "icon", 2);
|
65
|
+
l([
|
66
|
+
p({ type: Boolean })
|
67
|
+
], r.prototype, "persistent", 2);
|
68
|
+
l([
|
69
|
+
p({ type: String })
|
70
|
+
], r.prototype, "severity", 2);
|
71
|
+
l([
|
72
|
+
S("severity")
|
73
|
+
], r.prototype, "_handleStateChange", 1);
|
71
74
|
export {
|
72
|
-
|
75
|
+
r as SkfAlert
|
73
76
|
};
|