@statistikzh/leu 0.28.1 → 0.28.3
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/{Accordion-CwkI7sfx.js → Accordion-EwJ1WHFd.js} +1 -1
- package/dist/Accordion.js +2 -2
- package/dist/{Button-DcuvEVkC.d.ts → Button-BywuwtT2.d.ts} +0 -1
- package/dist/{Button-D1aYnunQ.js → Button-q4GeKj_3.js} +3 -4
- package/dist/Button.d.ts +1 -1
- package/dist/Button.js +4 -4
- package/dist/{ButtonGroup-CqThYjzX.js → ButtonGroup-BeU3Prei.js} +2 -2
- package/dist/ButtonGroup.js +5 -5
- package/dist/{ChartWrapper-BjVT4x-H.js → ChartWrapper-Bdb0_n2z.js} +2 -2
- package/dist/ChartWrapper.js +3 -3
- package/dist/{Checkbox-HxYqp2w4.js → Checkbox-BC0gAuaH.js} +2 -2
- package/dist/Checkbox.js +3 -3
- package/dist/{CheckboxGroup-DYws2rwt.js → CheckboxGroup-CiOgcwmo.js} +2 -2
- package/dist/CheckboxGroup.js +4 -4
- package/dist/{Chip-gKxD6IaZ.js → Chip-CYlPzmTG.js} +1 -1
- package/dist/Chip.js +2 -2
- package/dist/{ChipGroup-ZvBzX_wd.js → ChipGroup-3IMW_Mp7.js} +1 -1
- package/dist/ChipGroup.js +3 -3
- package/dist/ChipLink.js +2 -2
- package/dist/ChipRemovable.js +3 -3
- package/dist/ChipSelectable.js +2 -2
- package/dist/{Dialog-BYpzTprV.js → Dialog-DCl5qSXY.js} +3 -4
- package/dist/Dialog.js +3 -3
- package/dist/{Dropdown-C4CgE4E-.js → Dropdown-COmpmOev.js} +5 -5
- package/dist/Dropdown.d.ts +1 -1
- package/dist/Dropdown.js +8 -8
- package/dist/{FileInput-nsnSQCaU.js → FileInput-DXjoqKB4.js} +4 -4
- package/dist/FileInput.d.ts +1 -1
- package/dist/FileInput.js +6 -6
- package/dist/{Icon-D8HTPEFH.js → Icon-Bmk7lLWY.js} +1 -1
- package/dist/Icon.js +2 -2
- package/dist/{Input-OrILqlax.js → Input-B9FwAPKO.js} +2 -2
- package/dist/Input.js +3 -3
- package/dist/{LeuElement-C_lcHzQI.js → LeuElement-CQJQi8TB.js} +1 -1
- package/dist/{Menu-CFLCnI34.js → Menu-bWCAn0rT.js} +2 -2
- package/dist/Menu.js +4 -4
- package/dist/{MenuItem-ICjLCGim.js → MenuItem-CzCFZi8o.js} +2 -2
- package/dist/MenuItem.js +3 -3
- package/dist/{Message-Dw5D_0i1.js → Message-DMaM9ukF.js} +2 -2
- package/dist/Message.js +3 -3
- package/dist/{Pagination-D1tP5FrM.js → Pagination-870u3UgQ.js} +4 -4
- package/dist/{Pagination-9eZ8WMvR.d.ts → Pagination-B-mTHZiw.d.ts} +1 -1
- package/dist/Pagination.d.ts +1 -1
- package/dist/Pagination.js +6 -6
- package/dist/{Placeholder-CnGzCZ5-.js → Placeholder-DvvzGB1p.js} +1 -1
- package/dist/Placeholder.js +2 -2
- package/dist/{Popup-BiN_tZDN.js → Popup-BpG_7twr.js} +1 -1
- package/dist/Popup.js +2 -2
- package/dist/{ProgressBar-BfJo_KyU.js → ProgressBar-BkskTLWK.js} +1 -1
- package/dist/ProgressBar.js +2 -2
- package/dist/{Radio-CV7vuQUj.js → Radio-BS7UUhR3.js} +1 -1
- package/dist/Radio.js +2 -2
- package/dist/{RadioGroup-C3XWSScc.js → RadioGroup-Cpo9kAjB.js} +2 -2
- package/dist/RadioGroup.js +3 -3
- package/dist/{Range-C8RVrIM9.js → Range-Dh0p5UWA.js} +1 -1
- package/dist/Range.js +2 -2
- package/dist/{ScrollTop-B_TJ_k4m.js → ScrollTop-CtPidICZ.js} +3 -3
- package/dist/ScrollTop.d.ts +1 -1
- package/dist/ScrollTop.js +5 -5
- package/dist/{Select-CbPTrL3G.js → Select-W1KqDOgx.js} +7 -7
- package/dist/Select.d.ts +1 -1
- package/dist/Select.js +9 -9
- package/dist/{Spinner-ChKJQJTN.js → Spinner-CmAYIFws.js} +1 -1
- package/dist/Spinner.js +2 -2
- package/dist/{Tab-BJbzY1xd.js → Tab-7Cww5fSx.js} +1 -1
- package/dist/Tab.js +2 -2
- package/dist/{TabGroup-BIaCHrKR.js → TabGroup-tURfCrlw.js} +3 -3
- package/dist/TabGroup.js +4 -4
- package/dist/{TabPanel-CTyw410b.js → TabPanel-DIZcmcMV.js} +1 -1
- package/dist/TabPanel.js +2 -2
- package/dist/{Table-D3QmePJd.js → Table-BVYjYXP9.js} +3 -3
- package/dist/Table.d.ts +1 -1
- package/dist/Table.js +7 -7
- package/dist/{Tag-nUnWtHYy.js → Tag-x0KmEDEa.js} +1 -1
- package/dist/Tag.js +2 -2
- package/dist/{VisuallyHidden-DF2q9pTa.js → VisuallyHidden-CXRfGsaZ.js} +1 -1
- package/dist/VisuallyHidden.js +2 -2
- package/dist/custom-elements.json +6445 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +30 -30
- package/dist/leu-accordion.js +2 -2
- package/dist/leu-button-group.js +5 -5
- package/dist/leu-button.d.ts +1 -1
- package/dist/leu-button.js +4 -4
- package/dist/leu-chart-wrapper.js +3 -3
- package/dist/leu-checkbox-group.js +4 -4
- package/dist/leu-checkbox.js +3 -3
- package/dist/leu-chip-group.js +3 -3
- package/dist/leu-chip-link.js +2 -2
- package/dist/leu-chip-removable.js +3 -3
- package/dist/leu-chip-selectable.js +2 -2
- package/dist/leu-dialog.js +3 -3
- package/dist/leu-dropdown.js +8 -8
- package/dist/leu-file-input.js +6 -6
- package/dist/leu-icon.js +2 -2
- package/dist/leu-input.js +3 -3
- package/dist/leu-menu-item.js +3 -3
- package/dist/leu-menu.js +4 -4
- package/dist/leu-message.js +3 -3
- package/dist/leu-pagination.d.ts +1 -1
- package/dist/leu-pagination.js +6 -6
- package/dist/leu-placeholder.js +2 -2
- package/dist/leu-popup.js +2 -2
- package/dist/leu-progress-bar.js +2 -2
- package/dist/leu-radio-group.js +3 -3
- package/dist/leu-radio.js +2 -2
- package/dist/leu-range.js +2 -2
- package/dist/leu-scroll-top.js +5 -5
- package/dist/leu-select.js +9 -9
- package/dist/leu-spinner.js +2 -2
- package/dist/leu-tab-group.js +4 -4
- package/dist/leu-tab-panel.js +2 -2
- package/dist/leu-tab.js +2 -2
- package/dist/leu-table.js +7 -7
- package/dist/leu-tag.js +2 -2
- package/dist/leu-visually-hidden.js +2 -2
- package/dist/vscode.html-custom-data.json +11 -11
- package/dist/vue/index.d.ts +20 -20
- package/dist/web-types.json +28 -28
- package/package.json +4 -1
- package/.editorconfig +0 -29
- package/.github/workflows/ci.yml +0 -81
- package/.github/workflows/deploy-github-pages.yaml +0 -34
- package/.github/workflows/publish.yml +0 -28
- package/.github/workflows/release-please.yml +0 -19
- package/.husky/commit-msg +0 -1
- package/.husky/pre-commit +0 -1
- package/.nvmrc +0 -1
- package/.prettierignore +0 -2
- package/.release-please-manifest.json +0 -3
- package/.storybook/main.ts +0 -34
- package/.storybook/manager-head.html +0 -1
- package/.storybook/manager.ts +0 -6
- package/.storybook/preview.ts +0 -96
- package/.storybook/static/fonts/Inter-Black.woff2 +0 -0
- package/.storybook/static/fonts/Inter-Regular.woff2 +0 -0
- package/.storybook/static/fonts.css +0 -11
- package/.storybook/static/global.css +0 -5
- package/.storybook/static/logo.svg +0 -19
- package/.storybook/theme.ts +0 -8
- package/AGENTS.md +0 -162
- package/CHANGELOG.md +0 -601
- package/CODE_OF_CONDUCT.md +0 -128
- package/CONTRIBUTING.md +0 -42
- package/commitlint.config.cjs +0 -1
- package/custom-elements-manifest.config.js +0 -46
- package/eslint.config.mjs +0 -79
- package/postcss.config.cjs +0 -16
- package/release-please-config.json +0 -9
- package/scripts/generate-component/generate.js +0 -167
- package/scripts/generate-component/templates/[Name].ts +0 -31
- package/scripts/generate-component/templates/[name].css +0 -6
- package/scripts/generate-component/templates/[namespace]-[name].ts +0 -11
- package/scripts/generate-component/templates/stories/[name].stories.ts +0 -26
- package/scripts/generate-component/templates/test/[name].test.ts +0 -23
- package/scripts/postcss-leu-font-styles.cjs +0 -154
- package/src/components/accordion/Accordion.ts +0 -108
- package/src/components/accordion/accordion.css +0 -150
- package/src/components/accordion/leu-accordion.ts +0 -11
- package/src/components/accordion/stories/accordion.stories.ts +0 -62
- package/src/components/accordion/test/accordion.test.ts +0 -118
- package/src/components/button/Button.ts +0 -286
- package/src/components/button/button.css +0 -317
- package/src/components/button/leu-button.ts +0 -11
- package/src/components/button/stories/button.stories.ts +0 -366
- package/src/components/button/test/button.test.ts +0 -417
- package/src/components/button-group/ButtonGroup.ts +0 -97
- package/src/components/button-group/button-group.css +0 -5
- package/src/components/button-group/leu-button-group.ts +0 -11
- package/src/components/button-group/stories/button-group.stories.ts +0 -54
- package/src/components/button-group/test/button-group.test.ts +0 -105
- package/src/components/chart-wrapper/ChartWrapper.ts +0 -78
- package/src/components/chart-wrapper/chart-wrapper.css +0 -87
- package/src/components/chart-wrapper/leu-chart-wrapper.ts +0 -11
- package/src/components/chart-wrapper/stories/chart-wrapper.stories.ts +0 -58
- package/src/components/chart-wrapper/test/chart-wrapper.test.ts +0 -77
- package/src/components/checkbox/Checkbox.ts +0 -129
- package/src/components/checkbox/CheckboxGroup.ts +0 -57
- package/src/components/checkbox/checkbox-group.css +0 -29
- package/src/components/checkbox/checkbox.css +0 -81
- package/src/components/checkbox/leu-checkbox-group.ts +0 -11
- package/src/components/checkbox/leu-checkbox.ts +0 -11
- package/src/components/checkbox/stories/checkbox-group.stories.ts +0 -59
- package/src/components/checkbox/stories/checkbox.stories.ts +0 -72
- package/src/components/checkbox/test/checkbox-group.test.ts +0 -109
- package/src/components/checkbox/test/checkbox.test.ts +0 -247
- package/src/components/chip/Chip.ts +0 -19
- package/src/components/chip/ChipGroup.ts +0 -122
- package/src/components/chip/ChipLink.ts +0 -24
- package/src/components/chip/ChipRemovable.ts +0 -45
- package/src/components/chip/ChipSelectable.ts +0 -80
- package/src/components/chip/chip-group.css +0 -15
- package/src/components/chip/chip.css +0 -139
- package/src/components/chip/exports.ts +0 -4
- package/src/components/chip/leu-chip-group.ts +0 -11
- package/src/components/chip/leu-chip-link.ts +0 -11
- package/src/components/chip/leu-chip-removable.ts +0 -11
- package/src/components/chip/leu-chip-selectable.ts +0 -11
- package/src/components/chip/stories/chip-group.stories.ts +0 -159
- package/src/components/chip/stories/chip-link.stories.ts +0 -45
- package/src/components/chip/stories/chip-removable.stories.ts +0 -42
- package/src/components/chip/stories/chip-selectable.stories.ts +0 -54
- package/src/components/chip/test/chip-group.test.ts +0 -171
- package/src/components/chip/test/chip-link.test.ts +0 -54
- package/src/components/chip/test/chip-removable.test.ts +0 -105
- package/src/components/chip/test/chip-selectable.test.ts +0 -101
- package/src/components/chip/test/chip.test.ts +0 -22
- package/src/components/dialog/Dialog.ts +0 -86
- package/src/components/dialog/dialog.css +0 -157
- package/src/components/dialog/leu-dialog.ts +0 -11
- package/src/components/dialog/stories/dialog.stories.ts +0 -142
- package/src/components/dialog/test/dialog.test.ts +0 -85
- package/src/components/dropdown/Dropdown.ts +0 -152
- package/src/components/dropdown/dropdown.css +0 -16
- package/src/components/dropdown/leu-dropdown.ts +0 -11
- package/src/components/dropdown/stories/dropdown.stories.ts +0 -58
- package/src/components/dropdown/test/dropdown.test.ts +0 -59
- package/src/components/file-input/FileInput.ts +0 -324
- package/src/components/file-input/file-input.css +0 -118
- package/src/components/file-input/leu-file-input.ts +0 -11
- package/src/components/file-input/stories/file-input.stories.ts +0 -45
- package/src/components/file-input/test/file-input.test.ts +0 -62
- package/src/components/icon/Icon.ts +0 -47
- package/src/components/icon/icon.css +0 -10
- package/src/components/icon/leu-icon.ts +0 -11
- package/src/components/icon/paths.ts +0 -219
- package/src/components/icon/stories/icon.stories.ts +0 -79
- package/src/components/icon/test/icon.test.ts +0 -50
- package/src/components/input/Input.ts +0 -469
- package/src/components/input/input.css +0 -238
- package/src/components/input/leu-input.ts +0 -11
- package/src/components/input/stories/input.stories.ts +0 -204
- package/src/components/input/test/input.test.ts +0 -603
- package/src/components/menu/Menu.ts +0 -149
- package/src/components/menu/MenuItem.ts +0 -168
- package/src/components/menu/leu-menu-item.ts +0 -11
- package/src/components/menu/leu-menu.ts +0 -11
- package/src/components/menu/menu-item.css +0 -77
- package/src/components/menu/menu.css +0 -19
- package/src/components/menu/stories/menu-item.stories.ts +0 -81
- package/src/components/menu/stories/menu.stories.ts +0 -54
- package/src/components/menu/test/menu-item.test.ts +0 -210
- package/src/components/menu/test/menu.test.ts +0 -125
- package/src/components/message/Message.ts +0 -118
- package/src/components/message/leu-message.ts +0 -11
- package/src/components/message/message.css +0 -163
- package/src/components/message/stories/message.mdx +0 -76
- package/src/components/message/stories/message.stories.ts +0 -149
- package/src/components/message/test/message.test.ts +0 -96
- package/src/components/pagination/Pagination.ts +0 -192
- package/src/components/pagination/leu-pagination.ts +0 -11
- package/src/components/pagination/pagination.css +0 -54
- package/src/components/pagination/stories/pagination.stories.ts +0 -115
- package/src/components/pagination/test/pagination.test.ts +0 -210
- package/src/components/placeholder/Placeholder.ts +0 -33
- package/src/components/placeholder/leu-placeholder.ts +0 -11
- package/src/components/placeholder/placeholder.css +0 -59
- package/src/components/placeholder/stories/placeholder.stories.ts +0 -34
- package/src/components/placeholder/test/placeholder.test.ts +0 -31
- package/src/components/popup/Popup.ts +0 -264
- package/src/components/popup/leu-popup.ts +0 -11
- package/src/components/popup/popup.css +0 -24
- package/src/components/popup/stories/popup.stories.ts +0 -117
- package/src/components/popup/test/popup.test.ts +0 -90
- package/src/components/progress-bar/ProgressBar.ts +0 -52
- package/src/components/progress-bar/leu-progress-bar.ts +0 -11
- package/src/components/progress-bar/progress-bar.css +0 -97
- package/src/components/progress-bar/stories/progress-bar.stories.ts +0 -39
- package/src/components/progress-bar/test/progress-bar.test.ts +0 -61
- package/src/components/radio/Radio.ts +0 -59
- package/src/components/radio/RadioGroup.ts +0 -181
- package/src/components/radio/leu-radio-group.ts +0 -11
- package/src/components/radio/leu-radio.ts +0 -11
- package/src/components/radio/radio-group.css +0 -29
- package/src/components/radio/radio.css +0 -76
- package/src/components/radio/stories/radio-group.stories.ts +0 -54
- package/src/components/radio/stories/radio.stories.ts +0 -55
- package/src/components/radio/test/radio-group.test.ts +0 -83
- package/src/components/radio/test/radio.test.ts +0 -119
- package/src/components/range/Range.ts +0 -400
- package/src/components/range/leu-range.ts +0 -11
- package/src/components/range/range.css +0 -227
- package/src/components/range/stories/range.stories.ts +0 -185
- package/src/components/range/test/range.test.ts +0 -228
- package/src/components/scroll-top/ScrollTop.ts +0 -91
- package/src/components/scroll-top/leu-scroll-top.ts +0 -11
- package/src/components/scroll-top/scroll-top.css +0 -50
- package/src/components/scroll-top/stories/scroll-top.stories.ts +0 -217
- package/src/components/scroll-top/test/scroll-top.test.ts +0 -22
- package/src/components/select/Select.ts +0 -570
- package/src/components/select/leu-select.ts +0 -11
- package/src/components/select/select.css +0 -222
- package/src/components/select/stories/select.stories.ts +0 -173
- package/src/components/select/test/fixtures.ts +0 -162
- package/src/components/select/test/select.test.ts +0 -937
- package/src/components/spinner/Spinner.ts +0 -31
- package/src/components/spinner/leu-spinner.ts +0 -11
- package/src/components/spinner/spinner.css +0 -20
- package/src/components/spinner/stories/spinner.stories.ts +0 -29
- package/src/components/spinner/test/spinner.test.ts +0 -30
- package/src/components/tab/Tab.ts +0 -72
- package/src/components/tab/TabGroup.ts +0 -267
- package/src/components/tab/TabPanel.ts +0 -59
- package/src/components/tab/leu-tab-group.ts +0 -11
- package/src/components/tab/leu-tab-panel.ts +0 -11
- package/src/components/tab/leu-tab.ts +0 -11
- package/src/components/tab/stories/tab.stories.ts +0 -97
- package/src/components/tab/tab-group.css +0 -63
- package/src/components/tab/tab-panel.css +0 -10
- package/src/components/tab/tab.css +0 -54
- package/src/components/tab/test/tab-group.test.ts +0 -426
- package/src/components/tab/test/tab-panel.test.ts +0 -102
- package/src/components/tab/test/tab.test.ts +0 -139
- package/src/components/table/Table.ts +0 -253
- package/src/components/table/leu-table.ts +0 -11
- package/src/components/table/stories/table.stories.ts +0 -131
- package/src/components/table/table.css +0 -112
- package/src/components/table/test/table.test.ts +0 -37
- package/src/components/tag/Tag.ts +0 -28
- package/src/components/tag/leu-tag.ts +0 -11
- package/src/components/tag/stories/tag.stories.ts +0 -107
- package/src/components/tag/tag.css +0 -42
- package/src/components/tag/test/tag.test.ts +0 -28
- package/src/components/visually-hidden/VisuallyHidden.ts +0 -16
- package/src/components/visually-hidden/leu-visually-hidden.ts +0 -11
- package/src/components/visually-hidden/stories/visually-hidden.stories.ts +0 -22
- package/src/components/visually-hidden/test/visually-hidden.test.ts +0 -34
- package/src/components/visually-hidden/visually-hidden.css +0 -10
- package/src/docs/contributing.mdx +0 -154
- package/src/docs/installation.mdx +0 -35
- package/src/docs/theme.mdx +0 -400
- package/src/docs/usage.mdx +0 -73
- package/src/global.d.ts +0 -11
- package/src/index.ts +0 -29
- package/src/lib/LeuElement.ts +0 -43
- package/src/lib/a11y.ts +0 -26
- package/src/lib/hasSlotController.ts +0 -74
- package/src/lib/mixins/FormAssociatedMixin.ts +0 -115
- package/src/lib/styleMap.ts +0 -139
- package/src/lib/utils.ts +0 -45
- package/src/styles/common-styles.css +0 -14
- package/src/styles/custom-media.css +0 -6
- package/src/styles/font-definitions.json +0 -210
- package/src/styles/style.stories.ts +0 -64
- package/src/styles/theme.css +0 -90
- package/stat_zh.png +0 -0
- package/stylelint.config.mjs +0 -23
- package/tsconfig.build.json +0 -24
- package/tsconfig.json +0 -14
- package/tsdown.config.ts +0 -35
- package/web-test-runner.config.mjs +0 -102
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
import { html } from "lit"
|
|
2
|
-
import { fixture, expect, oneEvent } from "@open-wc/testing"
|
|
3
|
-
|
|
4
|
-
import "../leu-chip-selectable.js"
|
|
5
|
-
import "../leu-chip-removable.js"
|
|
6
|
-
import "../leu-chip-group.js"
|
|
7
|
-
import type { LeuChipGroup } from "../leu-chip-group.js"
|
|
8
|
-
|
|
9
|
-
async function removableFixture() {
|
|
10
|
-
return fixture(html`
|
|
11
|
-
<leu-chip-group>
|
|
12
|
-
<leu-chip-removable>Publikationen</leu-chip-removable>
|
|
13
|
-
<leu-chip-removable value="2">Daten</leu-chip-removable>
|
|
14
|
-
<leu-chip-removable value="3">Schnittstellen</leu-chip-removable>
|
|
15
|
-
</leu-chip-group>
|
|
16
|
-
`)
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
async function singleSelectionFixture() {
|
|
20
|
-
return fixture<LeuChipGroup>(html`
|
|
21
|
-
<leu-chip-group selection-mode="single">
|
|
22
|
-
<leu-chip-selectable value="1" variant="radio"
|
|
23
|
-
>Publikationen</leu-chip-selectable
|
|
24
|
-
>
|
|
25
|
-
<leu-chip-selectable value="2" variant="radio">Daten</leu-chip-selectable>
|
|
26
|
-
<leu-chip-selectable value="3" variant="radio"
|
|
27
|
-
>Schnittstellen</leu-chip-selectable
|
|
28
|
-
>
|
|
29
|
-
</leu-chip-group>
|
|
30
|
-
`)
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
async function multipleSelectionFixture() {
|
|
34
|
-
return fixture<LeuChipGroup>(html`
|
|
35
|
-
<leu-chip-group selection-mode="multiple">
|
|
36
|
-
<leu-chip-selectable value="1">Publikationen</leu-chip-selectable>
|
|
37
|
-
<leu-chip-selectable value="2">Daten</leu-chip-selectable>
|
|
38
|
-
<leu-chip-selectable value="3">Schnittstellen</leu-chip-selectable>
|
|
39
|
-
</leu-chip-group>
|
|
40
|
-
`)
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
describe("LeuChipGroup", () => {
|
|
44
|
-
it("is a defined element", async () => {
|
|
45
|
-
const el = customElements.get("leu-chip-selectable")
|
|
46
|
-
|
|
47
|
-
await expect(el).not.to.be.undefined
|
|
48
|
-
})
|
|
49
|
-
|
|
50
|
-
it("passes the a11y audit with removable chips", async () => {
|
|
51
|
-
const el = await removableFixture()
|
|
52
|
-
|
|
53
|
-
await expect(el).shadowDom.to.be.accessible()
|
|
54
|
-
})
|
|
55
|
-
|
|
56
|
-
it("passes the a11y audit with selectable chips", async () => {
|
|
57
|
-
const el = await multipleSelectionFixture()
|
|
58
|
-
|
|
59
|
-
await expect(el).shadowDom.to.be.accessible()
|
|
60
|
-
})
|
|
61
|
-
|
|
62
|
-
it("passes the a11y audit with selectable radio chips", async () => {
|
|
63
|
-
const el = await singleSelectionFixture()
|
|
64
|
-
|
|
65
|
-
await expect(el).shadowDom.to.be.accessible()
|
|
66
|
-
})
|
|
67
|
-
|
|
68
|
-
it("updates the value when a chip is selected", async () => {
|
|
69
|
-
const el = await singleSelectionFixture()
|
|
70
|
-
const chip = el.querySelector("leu-chip-selectable")
|
|
71
|
-
const chipButton = chip.shadowRoot.querySelector("button")
|
|
72
|
-
chipButton.click()
|
|
73
|
-
|
|
74
|
-
await expect(el.value).to.deep.equal(["1"])
|
|
75
|
-
})
|
|
76
|
-
|
|
77
|
-
it("updates the value when multiple chips are selected", async () => {
|
|
78
|
-
const el = await multipleSelectionFixture()
|
|
79
|
-
const chips = el.querySelectorAll("leu-chip-selectable")
|
|
80
|
-
const chipButton2 = chips[1].shadowRoot.querySelector("button")
|
|
81
|
-
const chipButton3 = chips[2].shadowRoot.querySelector("button")
|
|
82
|
-
|
|
83
|
-
chipButton2.click()
|
|
84
|
-
chipButton3.click()
|
|
85
|
-
|
|
86
|
-
await expect(el.value).to.deep.equal(["2", "3"])
|
|
87
|
-
})
|
|
88
|
-
|
|
89
|
-
it("fires an input event when a chip is selected", async () => {
|
|
90
|
-
const el = await singleSelectionFixture()
|
|
91
|
-
const chip = el.querySelector("leu-chip-selectable")
|
|
92
|
-
const chipButton = chip.shadowRoot.querySelector("button")
|
|
93
|
-
|
|
94
|
-
setTimeout(() => {
|
|
95
|
-
chipButton.click()
|
|
96
|
-
}, 0)
|
|
97
|
-
|
|
98
|
-
const event = await oneEvent(el, "input")
|
|
99
|
-
|
|
100
|
-
await expect(event).to.exist
|
|
101
|
-
})
|
|
102
|
-
|
|
103
|
-
it("checks only chip when the value of the group is set (selection-mode=single)", async () => {
|
|
104
|
-
const el = await singleSelectionFixture()
|
|
105
|
-
const items = el.querySelectorAll("leu-chip-selectable")
|
|
106
|
-
|
|
107
|
-
expect(items[0].checked).to.be.false
|
|
108
|
-
expect(items[1].checked).to.be.false
|
|
109
|
-
expect(items[2].checked).to.be.false
|
|
110
|
-
|
|
111
|
-
el.value = ["2"]
|
|
112
|
-
|
|
113
|
-
expect(items[0].checked).to.be.false
|
|
114
|
-
expect(items[1].checked).to.be.true
|
|
115
|
-
expect(items[2].checked).to.be.false
|
|
116
|
-
|
|
117
|
-
// Should check the first item with the given value and not first item of the value list
|
|
118
|
-
el.value = ["2", "1"]
|
|
119
|
-
|
|
120
|
-
expect(items[0].checked).to.be.true
|
|
121
|
-
expect(items[1].checked).to.be.false
|
|
122
|
-
|
|
123
|
-
el.value = []
|
|
124
|
-
|
|
125
|
-
expect(items[0].checked).to.be.false
|
|
126
|
-
expect(items[1].checked).to.be.false
|
|
127
|
-
expect(items[2].checked).to.be.false
|
|
128
|
-
|
|
129
|
-
el.value = ["asdf"]
|
|
130
|
-
|
|
131
|
-
expect(items[0].checked).to.be.false
|
|
132
|
-
expect(items[1].checked).to.be.false
|
|
133
|
-
expect(items[2].checked).to.be.false
|
|
134
|
-
expect(el.value).to.deep.equal([])
|
|
135
|
-
})
|
|
136
|
-
|
|
137
|
-
it("checks chips when the value of the group is set (selection-mode=multiple)", async () => {
|
|
138
|
-
const el = await multipleSelectionFixture()
|
|
139
|
-
const items = el.querySelectorAll("leu-chip-selectable")
|
|
140
|
-
|
|
141
|
-
expect(items[0].checked).to.be.false
|
|
142
|
-
expect(items[1].checked).to.be.false
|
|
143
|
-
expect(items[2].checked).to.be.false
|
|
144
|
-
|
|
145
|
-
el.value = ["2"]
|
|
146
|
-
|
|
147
|
-
expect(items[0].checked).to.be.false
|
|
148
|
-
expect(items[1].checked).to.be.true
|
|
149
|
-
expect(items[2].checked).to.be.false
|
|
150
|
-
|
|
151
|
-
// Should check the first item with the given value and not first item of the value list
|
|
152
|
-
el.value = ["2", "1"]
|
|
153
|
-
|
|
154
|
-
expect(items[0].checked).to.be.true
|
|
155
|
-
expect(items[1].checked).to.be.true
|
|
156
|
-
expect(items[2].checked).to.be.false
|
|
157
|
-
|
|
158
|
-
el.value = []
|
|
159
|
-
|
|
160
|
-
expect(items[0].checked).to.be.false
|
|
161
|
-
expect(items[1].checked).to.be.false
|
|
162
|
-
expect(items[2].checked).to.be.false
|
|
163
|
-
|
|
164
|
-
el.value = ["asdf"]
|
|
165
|
-
|
|
166
|
-
expect(items[0].checked).to.be.false
|
|
167
|
-
expect(items[1].checked).to.be.false
|
|
168
|
-
expect(items[2].checked).to.be.false
|
|
169
|
-
expect(el.value).to.deep.equal([])
|
|
170
|
-
})
|
|
171
|
-
})
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { html } from "lit"
|
|
2
|
-
import { fixture, expect } from "@open-wc/testing"
|
|
3
|
-
|
|
4
|
-
import "../leu-chip-link.js"
|
|
5
|
-
|
|
6
|
-
async function defaultFixture() {
|
|
7
|
-
return fixture(html`
|
|
8
|
-
<leu-chip-link href="https://zh.ch/daten">Daten</leu-chip-link>
|
|
9
|
-
`)
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
describe("LeuChipLink", () => {
|
|
13
|
-
it("is a defined element", async () => {
|
|
14
|
-
const el = customElements.get("leu-chip-link")
|
|
15
|
-
|
|
16
|
-
await expect(el).not.to.be.undefined
|
|
17
|
-
})
|
|
18
|
-
|
|
19
|
-
it("passes the a11y audit", async () => {
|
|
20
|
-
const el = await defaultFixture()
|
|
21
|
-
|
|
22
|
-
await expect(el).shadowDom.to.be.accessible()
|
|
23
|
-
})
|
|
24
|
-
|
|
25
|
-
it("renders the label", async () => {
|
|
26
|
-
const el = await defaultFixture()
|
|
27
|
-
|
|
28
|
-
expect(el).to.have.trimmed.text("Daten")
|
|
29
|
-
})
|
|
30
|
-
|
|
31
|
-
it("renders a link element", async () => {
|
|
32
|
-
const el = await defaultFixture()
|
|
33
|
-
|
|
34
|
-
expect(el.shadowRoot.querySelector("a")).to.exist
|
|
35
|
-
})
|
|
36
|
-
|
|
37
|
-
it("passes the href attribute to the link", async () => {
|
|
38
|
-
const el = await defaultFixture()
|
|
39
|
-
|
|
40
|
-
expect(el.shadowRoot.querySelector("a").getAttribute("href")).to.equal(
|
|
41
|
-
"https://zh.ch/daten",
|
|
42
|
-
)
|
|
43
|
-
})
|
|
44
|
-
|
|
45
|
-
it("delegates the focus to the a element", async () => {
|
|
46
|
-
const el = await defaultFixture()
|
|
47
|
-
|
|
48
|
-
el.focus()
|
|
49
|
-
|
|
50
|
-
expect(el.shadowRoot.querySelector("a")).to.equal(
|
|
51
|
-
el.shadowRoot.activeElement,
|
|
52
|
-
)
|
|
53
|
-
})
|
|
54
|
-
})
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
import { html } from "lit"
|
|
2
|
-
import { fixture, expect, oneEvent } from "@open-wc/testing"
|
|
3
|
-
import { sendKeys } from "@web/test-runner-commands"
|
|
4
|
-
import { ifDefined } from "lit/directives/if-defined.js"
|
|
5
|
-
|
|
6
|
-
import "../leu-chip-removable.js"
|
|
7
|
-
|
|
8
|
-
async function defaultFixture(args = {}) {
|
|
9
|
-
return fixture(html`
|
|
10
|
-
<leu-chip-removable value=${ifDefined(args.value)}
|
|
11
|
-
>${args.label ?? "Daten"}</leu-chip-removable
|
|
12
|
-
>
|
|
13
|
-
`)
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
describe("LeuChipRemovable", () => {
|
|
17
|
-
it("is a defined element", async () => {
|
|
18
|
-
const el = customElements.get("leu-chip-removable")
|
|
19
|
-
|
|
20
|
-
await expect(el).not.to.be.undefined
|
|
21
|
-
})
|
|
22
|
-
|
|
23
|
-
it("passes the a11y audit", async () => {
|
|
24
|
-
const el = await defaultFixture()
|
|
25
|
-
|
|
26
|
-
await expect(el).shadowDom.to.be.accessible()
|
|
27
|
-
})
|
|
28
|
-
|
|
29
|
-
it("renders the label", async () => {
|
|
30
|
-
const el = await defaultFixture()
|
|
31
|
-
|
|
32
|
-
expect(el).to.have.trimmed.text("Daten")
|
|
33
|
-
})
|
|
34
|
-
|
|
35
|
-
it("renders a button element", async () => {
|
|
36
|
-
const el = await defaultFixture()
|
|
37
|
-
|
|
38
|
-
expect(el.shadowRoot.querySelector("button")).to.exist
|
|
39
|
-
})
|
|
40
|
-
|
|
41
|
-
it("renders a remove icon", async () => {
|
|
42
|
-
const el = await defaultFixture()
|
|
43
|
-
|
|
44
|
-
const iconPath = el.shadowRoot.querySelector("leu-icon")
|
|
45
|
-
|
|
46
|
-
expect(iconPath.name).to.equal("close")
|
|
47
|
-
})
|
|
48
|
-
|
|
49
|
-
it("delegates the focus to the button element", async () => {
|
|
50
|
-
const el = await defaultFixture()
|
|
51
|
-
|
|
52
|
-
el.focus()
|
|
53
|
-
|
|
54
|
-
expect(el.shadowRoot.querySelector("button")).to.equal(
|
|
55
|
-
el.shadowRoot.activeElement,
|
|
56
|
-
)
|
|
57
|
-
})
|
|
58
|
-
|
|
59
|
-
it("fires a remove event when the button is clicked", async () => {
|
|
60
|
-
const el = await defaultFixture()
|
|
61
|
-
const button = el.shadowRoot.querySelector("button")
|
|
62
|
-
|
|
63
|
-
setTimeout(() => button.click())
|
|
64
|
-
const event = await oneEvent(el, "leu:remove")
|
|
65
|
-
|
|
66
|
-
expect(event).to.exist
|
|
67
|
-
})
|
|
68
|
-
|
|
69
|
-
it("fires a remove event when the enter key is pressed", async () => {
|
|
70
|
-
const el = await defaultFixture()
|
|
71
|
-
|
|
72
|
-
el.focus()
|
|
73
|
-
setTimeout(() => sendKeys({ press: "Enter" }))
|
|
74
|
-
const event = await oneEvent(el, "leu:remove")
|
|
75
|
-
|
|
76
|
-
expect(event).to.exist
|
|
77
|
-
})
|
|
78
|
-
|
|
79
|
-
it("sends the value in the remove event", async () => {
|
|
80
|
-
const el = await defaultFixture({ label: `Daten ` })
|
|
81
|
-
const button = el.shadowRoot.querySelector("button")
|
|
82
|
-
|
|
83
|
-
setTimeout(() => button.click())
|
|
84
|
-
const event = await oneEvent(el, "leu:remove")
|
|
85
|
-
|
|
86
|
-
expect(event.detail.value).to.equal("Daten")
|
|
87
|
-
|
|
88
|
-
el.value = "test"
|
|
89
|
-
|
|
90
|
-
setTimeout(() => button.click())
|
|
91
|
-
const event2 = await oneEvent(el, "leu:remove")
|
|
92
|
-
|
|
93
|
-
expect(event2.detail.value).to.equal("test")
|
|
94
|
-
})
|
|
95
|
-
|
|
96
|
-
it("returns the value or label when getValue is called", async () => {
|
|
97
|
-
const el = await defaultFixture({ label: `Daten ` })
|
|
98
|
-
|
|
99
|
-
expect(el.getValue()).to.equal("Daten")
|
|
100
|
-
|
|
101
|
-
el.value = "daten-01"
|
|
102
|
-
|
|
103
|
-
expect(el.getValue()).to.equal("daten-01")
|
|
104
|
-
})
|
|
105
|
-
})
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { html } from "lit"
|
|
2
|
-
import { ifDefined } from "lit/directives/if-defined.js"
|
|
3
|
-
import { fixture, expect, oneEvent } from "@open-wc/testing"
|
|
4
|
-
import { sendKeys } from "@web/test-runner-commands"
|
|
5
|
-
|
|
6
|
-
import "../leu-chip-selectable.js"
|
|
7
|
-
|
|
8
|
-
async function defaultFixture(args = {}) {
|
|
9
|
-
return fixture(html`
|
|
10
|
-
<leu-chip-selectable
|
|
11
|
-
value=${ifDefined(args.value)}
|
|
12
|
-
variant=${ifDefined(args.variant)}
|
|
13
|
-
?checked=${args.checked}
|
|
14
|
-
>Publikationen</leu-chip-selectable
|
|
15
|
-
>
|
|
16
|
-
`)
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
describe("LeuChipSelectable", () => {
|
|
20
|
-
it("is a defined element", async () => {
|
|
21
|
-
const el = customElements.get("leu-chip-selectable")
|
|
22
|
-
|
|
23
|
-
await expect(el).not.to.be.undefined
|
|
24
|
-
})
|
|
25
|
-
|
|
26
|
-
it("passes the a11y audit", async () => {
|
|
27
|
-
const el = await defaultFixture()
|
|
28
|
-
|
|
29
|
-
await expect(el).shadowDom.to.be.accessible()
|
|
30
|
-
})
|
|
31
|
-
|
|
32
|
-
it("renders the label", async () => {
|
|
33
|
-
const el = await defaultFixture()
|
|
34
|
-
|
|
35
|
-
expect(el).to.have.trimmed.text("Publikationen")
|
|
36
|
-
})
|
|
37
|
-
|
|
38
|
-
it("renders a button element", async () => {
|
|
39
|
-
const el = await defaultFixture()
|
|
40
|
-
|
|
41
|
-
expect(el.shadowRoot.querySelector("button")).to.exist
|
|
42
|
-
})
|
|
43
|
-
|
|
44
|
-
it("delegates the focus to the button element", async () => {
|
|
45
|
-
const el = await defaultFixture()
|
|
46
|
-
|
|
47
|
-
el.focus()
|
|
48
|
-
|
|
49
|
-
expect(el.shadowRoot.querySelector("button")).to.equal(
|
|
50
|
-
el.shadowRoot.activeElement,
|
|
51
|
-
)
|
|
52
|
-
})
|
|
53
|
-
|
|
54
|
-
it("fires a input event when the button is clicked", async () => {
|
|
55
|
-
const el = await defaultFixture()
|
|
56
|
-
const button = el.shadowRoot.querySelector("button")
|
|
57
|
-
|
|
58
|
-
setTimeout(() => button.click())
|
|
59
|
-
const event = await oneEvent(el, "input")
|
|
60
|
-
|
|
61
|
-
expect(event).to.exist
|
|
62
|
-
})
|
|
63
|
-
|
|
64
|
-
it("fires a input event when the enter key is pressed", async () => {
|
|
65
|
-
const el = await defaultFixture()
|
|
66
|
-
|
|
67
|
-
el.focus()
|
|
68
|
-
setTimeout(() => sendKeys({ press: "Enter" }))
|
|
69
|
-
const event = await oneEvent(el, "input")
|
|
70
|
-
|
|
71
|
-
expect(event).to.exist
|
|
72
|
-
})
|
|
73
|
-
|
|
74
|
-
it("removes the checked state when the button is clicked", async () => {
|
|
75
|
-
const el = await defaultFixture({ checked: true })
|
|
76
|
-
const button = el.shadowRoot.querySelector("button")
|
|
77
|
-
|
|
78
|
-
button.click()
|
|
79
|
-
|
|
80
|
-
expect(el.checked).to.be.false
|
|
81
|
-
})
|
|
82
|
-
|
|
83
|
-
it("doesn't remove the checked state of a checked radio chip", async () => {
|
|
84
|
-
const el = await defaultFixture({ variant: "radio", checked: true })
|
|
85
|
-
|
|
86
|
-
const button = el.shadowRoot.querySelector("button")
|
|
87
|
-
button.click()
|
|
88
|
-
|
|
89
|
-
expect(el.checked).to.be.true
|
|
90
|
-
})
|
|
91
|
-
|
|
92
|
-
it("returns the value or label when getValue is called", async () => {
|
|
93
|
-
const el = await defaultFixture()
|
|
94
|
-
|
|
95
|
-
expect(el.getValue()).to.equal("Publikationen")
|
|
96
|
-
|
|
97
|
-
el.value = "publikationen-01"
|
|
98
|
-
|
|
99
|
-
expect(el.getValue()).to.equal("publikationen-01")
|
|
100
|
-
})
|
|
101
|
-
})
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { html } from "lit"
|
|
2
|
-
import { fixture, expect } from "@open-wc/testing"
|
|
3
|
-
|
|
4
|
-
import "../leu-chip-link.js"
|
|
5
|
-
|
|
6
|
-
async function defaultFixture() {
|
|
7
|
-
return fixture(html` <leu-chip /> `)
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
describe("LeuChipLink", () => {
|
|
11
|
-
it("is a defined element", async () => {
|
|
12
|
-
const el = customElements.get("leu-chip-link")
|
|
13
|
-
|
|
14
|
-
await expect(el).not.to.be.undefined
|
|
15
|
-
})
|
|
16
|
-
|
|
17
|
-
it("passes the a11y audit", async () => {
|
|
18
|
-
const el = await defaultFixture()
|
|
19
|
-
|
|
20
|
-
await expect(el).shadowDom.to.be.accessible()
|
|
21
|
-
})
|
|
22
|
-
})
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { html, nothing } from "lit"
|
|
2
|
-
import { createRef, ref } from "lit/directives/ref.js"
|
|
3
|
-
import { classMap } from "lit/directives/class-map.js"
|
|
4
|
-
import { property } from "lit/decorators.js"
|
|
5
|
-
|
|
6
|
-
import { LeuElement } from "../../lib/LeuElement.js"
|
|
7
|
-
import { HasSlotController } from "../../lib/hasSlotController.js"
|
|
8
|
-
import { LeuIcon } from "../icon/Icon.js"
|
|
9
|
-
|
|
10
|
-
import styles from "./dialog.css?inline"
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* @tagname leu-dialog
|
|
14
|
-
*/
|
|
15
|
-
export class LeuDialog extends LeuElement {
|
|
16
|
-
static dependencies = {
|
|
17
|
-
"leu-icon": LeuIcon,
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
static styles = [LeuElement.styles, styles]
|
|
21
|
-
|
|
22
|
-
static shadowRootOptions = {
|
|
23
|
-
...LeuElement.shadowRootOptions,
|
|
24
|
-
delegatesFocus: true,
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
@property({ type: String })
|
|
28
|
-
label: string = ""
|
|
29
|
-
|
|
30
|
-
@property({ type: String })
|
|
31
|
-
sublabel: string = ""
|
|
32
|
-
|
|
33
|
-
@property({ type: Boolean, reflect: true })
|
|
34
|
-
open: boolean = false
|
|
35
|
-
|
|
36
|
-
protected _dialogRef = createRef<HTMLDialogElement>()
|
|
37
|
-
|
|
38
|
-
protected hasSlotController = new HasSlotController(this, ["toolbar"])
|
|
39
|
-
|
|
40
|
-
show() {
|
|
41
|
-
this._dialogRef.value.showModal()
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
close() {
|
|
45
|
-
this._dialogRef.value.close()
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
render() {
|
|
49
|
-
const hasActionbar = this.hasSlotController.test("actionbar")
|
|
50
|
-
|
|
51
|
-
const closeButtonLabelClasses = {
|
|
52
|
-
"close-button__label": true,
|
|
53
|
-
"close-button__label--hidden": hasActionbar,
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
return html`
|
|
57
|
-
<dialog class="dialog" ref=${ref(this._dialogRef)} ?open=${this.open}>
|
|
58
|
-
<div class="content">
|
|
59
|
-
<div class="header">
|
|
60
|
-
<div class="title-wrapper">
|
|
61
|
-
<h1 class="title">${this.label}</h1>
|
|
62
|
-
${this.sublabel
|
|
63
|
-
? html`<p class="subtitle">${this.sublabel}</p>`
|
|
64
|
-
: nothing}
|
|
65
|
-
</div>
|
|
66
|
-
<button
|
|
67
|
-
class="close-button"
|
|
68
|
-
@click=${this.close}
|
|
69
|
-
aria-label="Schliessen"
|
|
70
|
-
>
|
|
71
|
-
<span
|
|
72
|
-
class=${classMap(closeButtonLabelClasses)}
|
|
73
|
-
aria-hidden="true"
|
|
74
|
-
>Schliessen</span
|
|
75
|
-
><leu-icon name="close"> </leu-icon>
|
|
76
|
-
</button>
|
|
77
|
-
</div>
|
|
78
|
-
<slot></slot>
|
|
79
|
-
</div>
|
|
80
|
-
<div class="actionbar">
|
|
81
|
-
<slot name="actionbar"></slot>
|
|
82
|
-
</div>
|
|
83
|
-
</dialog>
|
|
84
|
-
`
|
|
85
|
-
}
|
|
86
|
-
}
|
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
@import url("../../styles/custom-media.css");
|
|
2
|
-
|
|
3
|
-
/* figma https://www.figma.com/design/d6Pv21UVUbnBs3AdcZijHmbN/KTZH-Design-System?node-id=21161-186812&t=8VgDy9avMRG5aL7s-0 */
|
|
4
|
-
|
|
5
|
-
:host {
|
|
6
|
-
--dialog-font-regular: var(--leu-font-family-regular);
|
|
7
|
-
--dialog-font-black: var(--leu-font-family-black);
|
|
8
|
-
|
|
9
|
-
font-family: var(--dialog-font-regular);
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
.dialog {
|
|
13
|
-
background: #fff;
|
|
14
|
-
border: 0;
|
|
15
|
-
padding: 0;
|
|
16
|
-
|
|
17
|
-
overflow: hidden;
|
|
18
|
-
background-color: var(--leu-color-black-0);
|
|
19
|
-
|
|
20
|
-
flex-direction: column;
|
|
21
|
-
|
|
22
|
-
margin: 0 auto;
|
|
23
|
-
height: 100vh;
|
|
24
|
-
width: 100vw;
|
|
25
|
-
max-height: 100vh;
|
|
26
|
-
max-width: 100vw;
|
|
27
|
-
|
|
28
|
-
@media (--viewport-regular) {
|
|
29
|
-
margin: 80px auto;
|
|
30
|
-
height: fit-content;
|
|
31
|
-
width: fit-content;
|
|
32
|
-
max-width: min(100% - 4.5rem, 60.5rem);
|
|
33
|
-
max-height: calc(100vh - 5rem);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
.dialog[open] {
|
|
38
|
-
display: flex;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
.dialog::backdrop {
|
|
42
|
-
background-color: var(--leu-color-black-transp-40);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
.content {
|
|
46
|
-
--padding: 2rem;
|
|
47
|
-
padding: var(--padding);
|
|
48
|
-
padding-bottom: 0;
|
|
49
|
-
margin-bottom: 1.5rem;
|
|
50
|
-
overflow-y: auto;
|
|
51
|
-
|
|
52
|
-
@media (--viewport-regular) {
|
|
53
|
-
--padding: 2.5rem;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
@media (--viewport-medium) {
|
|
57
|
-
margin-bottom: 2rem;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
@media (--viewport-large) {
|
|
61
|
-
--padding: 3.5rem;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
@media (--viewport-xlarge) {
|
|
65
|
-
margin-bottom: 2.5rem;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
.title-wrapper {
|
|
70
|
-
display: flex;
|
|
71
|
-
flex-flow: column wrap;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
.header {
|
|
75
|
-
display: flex;
|
|
76
|
-
align-items: flex-start;
|
|
77
|
-
justify-content: space-between;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
.title {
|
|
81
|
-
font: var(--leu-t-curve-big-black-font);
|
|
82
|
-
margin: 0 0 0.75rem;
|
|
83
|
-
order: 2;
|
|
84
|
-
|
|
85
|
-
@media (--viewport-regular) {
|
|
86
|
-
margin-bottom: 1rem;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
@media (--viewport-medium) {
|
|
90
|
-
margin-bottom: 1.25rem;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
@media (--viewport-xlarge) {
|
|
94
|
-
margin-bottom: 1.5rem;
|
|
95
|
-
font: var(--leu-t-bigger-big-black-font);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
.subtitle {
|
|
100
|
-
color: var(--leu-color-black-transp-60);
|
|
101
|
-
font-size: var(--leu-t-tiny-regular-font-size);
|
|
102
|
-
line-height: var(--leu-t-tiny-regular-line-height);
|
|
103
|
-
|
|
104
|
-
order: 1;
|
|
105
|
-
|
|
106
|
-
margin: 0 0 4px;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
.close-button {
|
|
110
|
-
cursor: pointer;
|
|
111
|
-
display: flex;
|
|
112
|
-
gap: 0.5rem;
|
|
113
|
-
|
|
114
|
-
padding: 0.25rem 0;
|
|
115
|
-
margin-left: 0.75rem;
|
|
116
|
-
border: 0;
|
|
117
|
-
border-radius: 0.125rem;
|
|
118
|
-
|
|
119
|
-
color: var(--leu-color-black-transp-60);
|
|
120
|
-
background: transparent;
|
|
121
|
-
|
|
122
|
-
@media (--viewport-regular) {
|
|
123
|
-
margin-left: 1rem;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
@media (--viewport-medium) {
|
|
127
|
-
margin-left: 1.25rem;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
@media (--viewport-xlarge) {
|
|
131
|
-
margin-left: 1.5rem;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
.close-button:focus-visible {
|
|
136
|
-
outline: 2px solid var(--leu-color-func-cyan);
|
|
137
|
-
outline-offset: 2px;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
.close-button__label {
|
|
141
|
-
display: none;
|
|
142
|
-
font: var(--leu-t-regular-regular-font);
|
|
143
|
-
|
|
144
|
-
@media (--viewport-medium) {
|
|
145
|
-
display: inline;
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
.close-button__label--hidden {
|
|
150
|
-
display: none;
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
.actionbar {
|
|
154
|
-
display: flex;
|
|
155
|
-
justify-content: flex-end;
|
|
156
|
-
min-height: 3rem;
|
|
157
|
-
}
|