@sbb-esta/lyne-elements 0.52.2 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/checkbox/checkbox/checkbox.d.ts +3 -46
- package/checkbox/checkbox/checkbox.d.ts.map +1 -1
- package/checkbox/checkbox-group/checkbox-group.d.ts +4 -2
- package/checkbox/checkbox-group/checkbox-group.d.ts.map +1 -1
- package/checkbox/checkbox-group.js +11 -8
- package/checkbox/checkbox-panel/checkbox-panel.d.ts +41 -0
- package/checkbox/checkbox-panel/checkbox-panel.d.ts.map +1 -0
- package/checkbox/checkbox-panel.d.ts +2 -0
- package/checkbox/checkbox-panel.d.ts.map +1 -0
- package/checkbox/checkbox-panel.js +67 -0
- package/checkbox/checkbox.js +26 -103
- package/checkbox/common/checkbox-common.d.ts +13 -0
- package/checkbox/common/checkbox-common.d.ts.map +1 -0
- package/checkbox/common.d.ts +2 -0
- package/checkbox/common.d.ts.map +1 -0
- package/checkbox/common.js +52 -0
- package/checkbox.d.ts +2 -0
- package/checkbox.d.ts.map +1 -1
- package/checkbox.js +2 -0
- package/core/mixins/panel-mixin.d.ts +13 -0
- package/core/mixins/panel-mixin.d.ts.map +1 -0
- package/core/mixins.d.ts +1 -0
- package/core/mixins.d.ts.map +1 -1
- package/core/mixins.js +120 -89
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +1 -1
- package/core.css +1 -1
- package/custom-elements.json +8862 -6904
- package/development/checkbox/checkbox/checkbox.d.ts +3 -46
- package/development/checkbox/checkbox/checkbox.d.ts.map +1 -1
- package/development/checkbox/checkbox-group/checkbox-group.d.ts +4 -2
- package/development/checkbox/checkbox-group/checkbox-group.d.ts.map +1 -1
- package/development/checkbox/checkbox-group.js +43 -13
- package/development/checkbox/checkbox-panel/checkbox-panel.d.ts +41 -0
- package/development/checkbox/checkbox-panel/checkbox-panel.d.ts.map +1 -0
- package/development/checkbox/checkbox-panel.d.ts +2 -0
- package/development/checkbox/checkbox-panel.d.ts.map +1 -0
- package/development/checkbox/checkbox-panel.js +86 -0
- package/development/checkbox/checkbox.js +19 -239
- package/development/checkbox/common/checkbox-common.d.ts +13 -0
- package/development/checkbox/common/checkbox-common.d.ts.map +1 -0
- package/development/checkbox/common.d.ts +2 -0
- package/development/checkbox/common.d.ts.map +1 -0
- package/development/checkbox/common.js +156 -0
- package/development/checkbox.d.ts +2 -0
- package/development/checkbox.d.ts.map +1 -1
- package/development/checkbox.js +3 -1
- package/development/core/mixins/panel-mixin.d.ts +13 -0
- package/development/core/mixins/panel-mixin.d.ts.map +1 -0
- package/development/core/mixins.d.ts +1 -0
- package/development/core/mixins.d.ts.map +1 -1
- package/development/core/mixins.js +187 -31
- package/development/image.js +1 -1
- package/development/radio-button/common/radio-button-common.d.ts +22 -0
- package/development/radio-button/common/radio-button-common.d.ts.map +1 -0
- package/development/radio-button/common.d.ts +2 -0
- package/development/radio-button/common.d.ts.map +1 -0
- package/development/radio-button/common.js +294 -0
- package/development/radio-button/radio-button/radio-button.d.ts +2 -81
- package/development/radio-button/radio-button/radio-button.d.ts.map +1 -1
- package/development/radio-button/radio-button-group/radio-button-group.d.ts +6 -4
- package/development/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
- package/development/radio-button/radio-button-group.js +55 -23
- package/development/radio-button/radio-button-panel/index.d.ts +2 -0
- package/development/radio-button/radio-button-panel/index.d.ts.map +1 -0
- package/development/radio-button/radio-button-panel/radio-button-panel.d.ts +29 -0
- package/development/radio-button/radio-button-panel/radio-button-panel.d.ts.map +1 -0
- package/development/radio-button/radio-button-panel.d.ts +2 -0
- package/development/radio-button/radio-button-panel.d.ts.map +1 -0
- package/development/radio-button/radio-button-panel.js +69 -0
- package/development/radio-button/radio-button.js +10 -324
- package/development/radio-button.d.ts +2 -0
- package/development/radio-button.d.ts.map +1 -1
- package/development/radio-button.js +3 -1
- package/{selection-panel/selection-panel.d.ts → development/selection-expansion-panel/selection-expansion-panel.d.ts} +9 -7
- package/development/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -0
- package/development/selection-expansion-panel.d.ts +2 -0
- package/development/selection-expansion-panel.d.ts.map +1 -0
- package/development/selection-expansion-panel.js +340 -0
- package/development/tabs/tab/index.d.ts +2 -0
- package/development/tabs/tab/index.d.ts.map +1 -0
- package/development/tabs/tab/tab.d.ts +24 -0
- package/development/tabs/tab/tab.d.ts.map +1 -0
- package/development/tabs/tab-group/tab-group.d.ts +20 -15
- package/development/tabs/tab-group/tab-group.d.ts.map +1 -1
- package/development/tabs/tab-group.js +24 -14
- package/development/tabs/{tab-title/tab-title.d.ts → tab-label/tab-label.d.ts} +4 -4
- package/development/tabs/{tab-title/tab-title.d.ts.map → tab-label/tab-label.d.ts.map} +1 -1
- package/development/tabs/tab-label.d.ts +2 -0
- package/development/tabs/tab-label.d.ts.map +1 -0
- package/development/tabs/{tab-title.js → tab-label.js} +86 -86
- package/development/tabs/tab.d.ts +2 -0
- package/development/tabs/tab.d.ts.map +1 -0
- package/development/tabs/tab.js +71 -0
- package/development/tabs.d.ts +2 -1
- package/development/tabs.d.ts.map +1 -1
- package/development/tabs.js +3 -2
- package/development/train/train-formation/train-formation.d.ts.map +1 -1
- package/development/train/train-formation.js +12 -12
- package/index.d.ts +10 -8
- package/index.js +10 -8
- package/package.json +34 -19
- package/radio-button/common/radio-button-common.d.ts +22 -0
- package/radio-button/common/radio-button-common.d.ts.map +1 -0
- package/radio-button/common.d.ts +2 -0
- package/radio-button/common.d.ts.map +1 -0
- package/radio-button/common.js +105 -0
- package/radio-button/radio-button/radio-button.d.ts +2 -81
- package/radio-button/radio-button/radio-button.d.ts.map +1 -1
- package/radio-button/radio-button-group/radio-button-group.d.ts +6 -4
- package/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
- package/radio-button/radio-button-group.js +64 -58
- package/radio-button/radio-button-panel/index.d.ts +2 -0
- package/radio-button/radio-button-panel/index.d.ts.map +1 -0
- package/radio-button/radio-button-panel/radio-button-panel.d.ts +29 -0
- package/radio-button/radio-button-panel/radio-button-panel.d.ts.map +1 -0
- package/radio-button/radio-button-panel.d.ts +2 -0
- package/radio-button/radio-button-panel.d.ts.map +1 -0
- package/radio-button/radio-button-panel.js +59 -0
- package/radio-button/radio-button.js +20 -143
- package/radio-button.d.ts +2 -0
- package/radio-button.d.ts.map +1 -1
- package/radio-button.js +2 -0
- package/{development/selection-panel/selection-panel.d.ts → selection-expansion-panel/selection-expansion-panel.d.ts} +9 -7
- package/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -0
- package/selection-expansion-panel.d.ts +2 -0
- package/selection-expansion-panel.d.ts.map +1 -0
- package/selection-expansion-panel.js +146 -0
- package/standard-theme.css +1 -1
- package/tabs/tab/index.d.ts +2 -0
- package/tabs/tab/index.d.ts.map +1 -0
- package/tabs/tab/tab.d.ts +24 -0
- package/tabs/tab/tab.d.ts.map +1 -0
- package/tabs/tab-group/tab-group.d.ts +20 -15
- package/tabs/tab-group/tab-group.d.ts.map +1 -1
- package/tabs/tab-group.js +39 -29
- package/tabs/{tab-title/tab-title.d.ts → tab-label/tab-label.d.ts} +4 -4
- package/tabs/{tab-title/tab-title.d.ts.map → tab-label/tab-label.d.ts.map} +1 -1
- package/tabs/tab-label.d.ts +2 -0
- package/tabs/tab-label.d.ts.map +1 -0
- package/tabs/tab-label.js +51 -0
- package/tabs/tab.d.ts +2 -0
- package/tabs/tab.d.ts.map +1 -0
- package/tabs/tab.js +41 -0
- package/tabs.d.ts +2 -1
- package/tabs.d.ts.map +1 -1
- package/tabs.js +2 -1
- package/train/train-formation/train-formation.d.ts.map +1 -1
- package/train/train-formation.js +32 -32
- package/development/selection-panel/selection-panel.d.ts.map +0 -1
- package/development/selection-panel.d.ts +0 -2
- package/development/selection-panel.d.ts.map +0 -1
- package/development/selection-panel.js +0 -376
- package/development/tabs/tab-title.d.ts +0 -2
- package/development/tabs/tab-title.d.ts.map +0 -1
- package/development/teaser-hero/teaser-hero.d.ts +0 -26
- package/development/teaser-hero/teaser-hero.d.ts.map +0 -1
- package/development/teaser-hero.d.ts +0 -2
- package/development/teaser-hero.d.ts.map +0 -1
- package/development/teaser-hero.js +0 -181
- package/development/teaser-paid/teaser-paid.d.ts +0 -20
- package/development/teaser-paid/teaser-paid.d.ts.map +0 -1
- package/development/teaser-paid.d.ts +0 -2
- package/development/teaser-paid.d.ts.map +0 -1
- package/development/teaser-paid.js +0 -91
- package/selection-panel/selection-panel.d.ts.map +0 -1
- package/selection-panel.d.ts +0 -2
- package/selection-panel.d.ts.map +0 -1
- package/selection-panel.js +0 -138
- package/tabs/tab-title.d.ts +0 -2
- package/tabs/tab-title.d.ts.map +0 -1
- package/tabs/tab-title.js +0 -51
- package/teaser-hero/teaser-hero.d.ts +0 -26
- package/teaser-hero/teaser-hero.d.ts.map +0 -1
- package/teaser-hero.d.ts +0 -2
- package/teaser-hero.d.ts.map +0 -1
- package/teaser-hero.js +0 -51
- package/teaser-paid/teaser-paid.d.ts +0 -20
- package/teaser-paid/teaser-paid.d.ts.map +0 -1
- package/teaser-paid.d.ts +0 -2
- package/teaser-paid.d.ts.map +0 -1
- package/teaser-paid.js +0 -28
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
import { css, LitElement, html, nothing } from "lit";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
import { EventEmitter, HandlerRepository, formElementHandlerAspect } from "../core/eventing.js";
|
|
7
|
-
import { i18nExpanded, i18nCollapsed } from "../core/i18n.js";
|
|
8
|
-
import { SbbUpdateSchedulerMixin } from "../core/mixins.js";
|
|
9
|
-
const style = css`/**
|
|
2
|
+
import { customElement } from "lit/decorators.js";
|
|
3
|
+
import { SbbSlotStateController } from "../core/controllers.js";
|
|
4
|
+
import { SbbRadioButtonCommonElementMixin, radioButtonCommonStyle } from "./common.js";
|
|
5
|
+
const radioButtonStyle = css`/**
|
|
10
6
|
* Better font rendering (on OS X)
|
|
11
7
|
* http://maximilianhoffmann.com/posts/better-font-rendering-on-osx
|
|
12
8
|
*
|
|
@@ -27,157 +23,17 @@ const style = css`/**
|
|
|
27
23
|
}
|
|
28
24
|
|
|
29
25
|
:host {
|
|
30
|
-
--sbb-radio-button-label-color: var(--sbb-color-charcoal);
|
|
31
|
-
--sbb-radio-button-background-color: var(--sbb-color-white);
|
|
32
|
-
--sbb-radio-button-inner-circle-color: var(--sbb-color-white);
|
|
33
|
-
--sbb-radio-button-border-width: var(--sbb-border-width-1x);
|
|
34
|
-
--sbb-radio-button-border-style: solid;
|
|
35
|
-
--sbb-radio-button-border-color: var(--sbb-color-smoke);
|
|
36
|
-
--sbb-radio-button-dimension: var(--sbb-size-icon-ui-small);
|
|
37
|
-
--sbb-radio-button-inner-circle-dimension: 0.625rem;
|
|
38
|
-
--sbb-radio-button-suffix-color: var(--sbb-color-charcoal);
|
|
39
|
-
--sbb-radio-button-subtext-color: var(--sbb-color-granite);
|
|
40
|
-
--sbb-radio-button-cursor: pointer;
|
|
41
|
-
--sbb-radio-button-background-fake-border-width: calc(var(--sbb-radio-button-dimension) / 2);
|
|
42
|
-
--sbb-radio-button-icon-align: calc(
|
|
43
|
-
(1em * var(--sbb-typo-line-height-body-text) - var(--sbb-radio-button-dimension)) / 2
|
|
44
|
-
);
|
|
45
26
|
display: block;
|
|
46
27
|
outline: none !important;
|
|
47
28
|
}
|
|
48
|
-
@media (forced-colors: active) {
|
|
49
|
-
:host {
|
|
50
|
-
--sbb-radio-button-background-color: Canvas !important;
|
|
51
|
-
--sbb-radio-button-border-width: var(--sbb-border-width-2x);
|
|
52
|
-
--sbb-radio-button-border-color: ButtonBorder;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
:host(:focus-visible[data-is-selection-panel-input]) {
|
|
57
|
-
outline: none !important;
|
|
58
|
-
}
|
|
59
|
-
:host(:focus-visible[data-is-selection-panel-input]) .sbb-radio-button::after {
|
|
60
|
-
content: "";
|
|
61
|
-
position: absolute;
|
|
62
|
-
display: block;
|
|
63
|
-
inset-block: calc(var(--sbb-spacing-responsive-xs) * -1 + var(--sbb-focus-outline-width) - var(--sbb-focus-outline-offset) * 2);
|
|
64
|
-
inset-inline: calc(var(--sbb-spacing-responsive-xxs) * -1 + var(--sbb-focus-outline-width) - var(--sbb-focus-outline-offset) * 2);
|
|
65
|
-
border: var(--sbb-focus-outline-color) solid var(--sbb-focus-outline-width);
|
|
66
|
-
border-radius: calc(var(--sbb-border-radius-4x) + var(--sbb-focus-outline-offset));
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
:host([checked]) {
|
|
70
|
-
--sbb-radio-button-inner-circle-color: var(--sbb-color-red);
|
|
71
|
-
--sbb-radio-button-background-fake-border-width: calc(
|
|
72
|
-
(var(--sbb-radio-button-dimension) - var(--sbb-radio-button-inner-circle-dimension)) / 2
|
|
73
|
-
);
|
|
74
|
-
}
|
|
75
|
-
@media (forced-colors: active) {
|
|
76
|
-
:host([checked]) {
|
|
77
|
-
--sbb-radio-button-inner-circle-color: Highlight;
|
|
78
|
-
--sbb-radio-button-border-color: Highlight;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
:host([disabled]) {
|
|
83
|
-
--sbb-radio-button-label-color: var(--sbb-color-granite);
|
|
84
|
-
--sbb-radio-button-background-color: var(--sbb-color-milk);
|
|
85
|
-
--sbb-radio-button-border-style: dashed;
|
|
86
|
-
--sbb-radio-button-inner-circle-color: var(--sbb-color-charcoal);
|
|
87
|
-
--sbb-radio-button-cursor: default;
|
|
88
|
-
}
|
|
89
|
-
@media (forced-colors: active) {
|
|
90
|
-
:host([disabled]) {
|
|
91
|
-
--sbb-radio-button-inner-circle-color: GrayText;
|
|
92
|
-
--sbb-radio-button-border-color: GrayText;
|
|
93
|
-
--sbb-radio-button-border-style: solid;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
29
|
|
|
97
30
|
.sbb-radio-button {
|
|
98
|
-
--sbb-text-font-size: var(--sbb-font-size-text-m);
|
|
99
|
-
font-family: var(--sbb-typo-font-family);
|
|
100
|
-
font-weight: normal;
|
|
101
|
-
line-height: var(--sbb-typo-line-height-body-text);
|
|
102
|
-
letter-spacing: var(--sbb-typo-letter-spacing-body-text);
|
|
103
|
-
font-size: var(--sbb-text-font-size);
|
|
104
31
|
display: block;
|
|
105
|
-
cursor: var(--sbb-radio-button-cursor);
|
|
106
|
-
user-select: none;
|
|
107
|
-
position: relative;
|
|
108
|
-
color: var(--sbb-radio-button-label-color);
|
|
109
|
-
-webkit-tap-highlight-color: transparent;
|
|
110
32
|
}
|
|
111
|
-
:host([
|
|
112
|
-
--sbb-text-font-size: var(--sbb-font-size-text-s);
|
|
113
|
-
font-family: var(--sbb-typo-font-family);
|
|
114
|
-
font-weight: normal;
|
|
115
|
-
line-height: var(--sbb-typo-line-height-body-text);
|
|
116
|
-
letter-spacing: var(--sbb-typo-letter-spacing-body-text);
|
|
117
|
-
font-size: var(--sbb-text-font-size);
|
|
118
|
-
}
|
|
119
|
-
:host(:focus-visible:not([data-focus-origin=mouse],
|
|
120
|
-
[data-focus-origin=touch],
|
|
121
|
-
[data-is-selection-panel-input])) .sbb-radio-button {
|
|
33
|
+
:host(:focus-visible:not([data-focus-origin=mouse], [data-focus-origin=touch])) .sbb-radio-button {
|
|
122
34
|
outline-offset: var(--sbb-focus-outline-offset);
|
|
123
35
|
outline: var(--sbb-focus-outline-color) solid var(--sbb-focus-outline-width);
|
|
124
36
|
border-radius: calc(var(--sbb-border-radius-4x) - var(--sbb-focus-outline-offset));
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
slot[name=suffix] {
|
|
128
|
-
color: var(--sbb-radio-button-suffix-color);
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
slot[name=subtext] {
|
|
132
|
-
display: block;
|
|
133
|
-
color: var(--sbb-radio-button-subtext-color);
|
|
134
|
-
padding-inline-start: var(--sbb-spacing-fixed-8x);
|
|
135
|
-
}
|
|
136
|
-
:host(:not([data-slot-names~=subtext])) slot[name=subtext] {
|
|
137
|
-
display: none;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
.sbb-radio-button__label-slot {
|
|
141
|
-
display: flex;
|
|
142
|
-
align-items: flex-start;
|
|
143
|
-
overflow: hidden;
|
|
144
|
-
}
|
|
145
|
-
.sbb-radio-button__label-slot::before, .sbb-radio-button__label-slot::after {
|
|
146
|
-
content: "";
|
|
147
|
-
flex-shrink: 0;
|
|
148
|
-
width: var(--sbb-radio-button-dimension);
|
|
149
|
-
height: var(--sbb-radio-button-dimension);
|
|
150
|
-
border-radius: 50%;
|
|
151
|
-
margin-block-start: var(--sbb-radio-button-icon-align);
|
|
152
|
-
transition-duration: var(--sbb-disable-animation-zero-time, var(--sbb-animation-duration-4x));
|
|
153
|
-
transition-timing-function: ease;
|
|
154
|
-
transition-property: background-color, border;
|
|
155
|
-
}
|
|
156
|
-
@media (forced-colors: active) {
|
|
157
|
-
.sbb-radio-button__label-slot::before, .sbb-radio-button__label-slot::after {
|
|
158
|
-
transition: none;
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
.sbb-radio-button__label-slot::before {
|
|
162
|
-
background: var(--sbb-radio-button-inner-circle-color);
|
|
163
|
-
border: var(--sbb-radio-button-background-fake-border-width) solid var(--sbb-radio-button-background-color);
|
|
164
|
-
margin-inline-end: var(--sbb-spacing-fixed-2x);
|
|
165
|
-
}
|
|
166
|
-
.sbb-radio-button__label-slot::after {
|
|
167
|
-
position: absolute;
|
|
168
|
-
border: var(--sbb-radio-button-border-width) var(--sbb-radio-button-border-style) var(--sbb-radio-button-border-color);
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
.sbb-screen-reader-only {
|
|
172
|
-
border: 0;
|
|
173
|
-
clip: rect(0 0 0 0);
|
|
174
|
-
height: 1px;
|
|
175
|
-
margin: -1px;
|
|
176
|
-
overflow: hidden;
|
|
177
|
-
padding: 0;
|
|
178
|
-
position: absolute;
|
|
179
|
-
white-space: nowrap;
|
|
180
|
-
width: 1px;
|
|
181
37
|
}`;
|
|
182
38
|
var __defProp = Object.defineProperty;
|
|
183
39
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -189,150 +45,11 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
189
45
|
if (kind && result) __defProp(target, key, result);
|
|
190
46
|
return result;
|
|
191
47
|
};
|
|
192
|
-
let SbbRadioButtonElement = class extends
|
|
48
|
+
let SbbRadioButtonElement = class extends SbbRadioButtonCommonElementMixin(LitElement) {
|
|
193
49
|
constructor() {
|
|
194
50
|
super();
|
|
195
|
-
this._allowEmptySelection = false;
|
|
196
|
-
this._disabled = false;
|
|
197
|
-
this._required = false;
|
|
198
|
-
this._group = null;
|
|
199
|
-
this._checked = false;
|
|
200
|
-
this._size = "m";
|
|
201
|
-
this._isSelectionPanelInput = false;
|
|
202
|
-
this._selectionPanelElement = null;
|
|
203
|
-
this._abort = new SbbConnectedAbortController(this);
|
|
204
|
-
this._language = new SbbLanguageController(this);
|
|
205
|
-
this._stateChange = new EventEmitter(
|
|
206
|
-
this,
|
|
207
|
-
SbbRadioButtonElement.events.stateChange,
|
|
208
|
-
{ bubbles: true }
|
|
209
|
-
);
|
|
210
|
-
this._radioButtonLoaded = new EventEmitter(
|
|
211
|
-
this,
|
|
212
|
-
SbbRadioButtonElement.events.radioButtonLoaded,
|
|
213
|
-
{ bubbles: true }
|
|
214
|
-
);
|
|
215
|
-
this._handlerRepository = new HandlerRepository(this, formElementHandlerAspect);
|
|
216
51
|
new SbbSlotStateController(this);
|
|
217
52
|
}
|
|
218
|
-
set allowEmptySelection(value) {
|
|
219
|
-
this._allowEmptySelection = Boolean(value);
|
|
220
|
-
}
|
|
221
|
-
get allowEmptySelection() {
|
|
222
|
-
var _a;
|
|
223
|
-
return this._allowEmptySelection || (((_a = this.group) == null ? void 0 : _a.allowEmptySelection) ?? false);
|
|
224
|
-
}
|
|
225
|
-
set disabled(value) {
|
|
226
|
-
this._disabled = Boolean(value);
|
|
227
|
-
}
|
|
228
|
-
get disabled() {
|
|
229
|
-
var _a;
|
|
230
|
-
return this._disabled || (((_a = this.group) == null ? void 0 : _a.disabled) ?? false);
|
|
231
|
-
}
|
|
232
|
-
set required(value) {
|
|
233
|
-
this._required = Boolean(value);
|
|
234
|
-
}
|
|
235
|
-
get required() {
|
|
236
|
-
var _a;
|
|
237
|
-
return this._required || (((_a = this.group) == null ? void 0 : _a.required) ?? false);
|
|
238
|
-
}
|
|
239
|
-
/**
|
|
240
|
-
* Reference to the connected radio button group.
|
|
241
|
-
*/
|
|
242
|
-
get group() {
|
|
243
|
-
return this._group;
|
|
244
|
-
}
|
|
245
|
-
set checked(value) {
|
|
246
|
-
this._checked = Boolean(value);
|
|
247
|
-
}
|
|
248
|
-
get checked() {
|
|
249
|
-
return this._checked;
|
|
250
|
-
}
|
|
251
|
-
set size(value) {
|
|
252
|
-
this._size = value;
|
|
253
|
-
}
|
|
254
|
-
get size() {
|
|
255
|
-
var _a;
|
|
256
|
-
return ((_a = this.group) == null ? void 0 : _a.size) ?? this._size;
|
|
257
|
-
}
|
|
258
|
-
/**
|
|
259
|
-
* Whether the input is the main input of a selection panel.
|
|
260
|
-
* @internal
|
|
261
|
-
*/
|
|
262
|
-
get isSelectionPanelInput() {
|
|
263
|
-
return this._isSelectionPanelInput;
|
|
264
|
-
}
|
|
265
|
-
_handleClick(event) {
|
|
266
|
-
event.preventDefault();
|
|
267
|
-
this.select();
|
|
268
|
-
}
|
|
269
|
-
select() {
|
|
270
|
-
if (this.disabled) {
|
|
271
|
-
return;
|
|
272
|
-
}
|
|
273
|
-
if (this.allowEmptySelection) {
|
|
274
|
-
this.checked = !this.checked;
|
|
275
|
-
} else if (!this.checked) {
|
|
276
|
-
this.checked = true;
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
connectedCallback() {
|
|
280
|
-
super.connectedCallback();
|
|
281
|
-
this._group = this.closest("sbb-radio-button-group");
|
|
282
|
-
this._selectionPanelElement = this.closest("sbb-selection-panel");
|
|
283
|
-
this._isSelectionPanelInput = !!this._selectionPanelElement && !this.closest('sbb-selection-panel [slot="content"]');
|
|
284
|
-
this.toggleAttribute("data-is-selection-panel-input", this._isSelectionPanelInput);
|
|
285
|
-
const signal = this._abort.signal;
|
|
286
|
-
this.addEventListener("click", (e) => this._handleClick(e), { signal });
|
|
287
|
-
this.addEventListener("keydown", (e) => this._handleKeyDown(e), { signal });
|
|
288
|
-
this._handlerRepository.connect();
|
|
289
|
-
this._radioButtonLoaded.emit();
|
|
290
|
-
["disabled", "required", "size"].forEach((p) => this.requestUpdate(p));
|
|
291
|
-
}
|
|
292
|
-
willUpdate(changedProperties) {
|
|
293
|
-
super.willUpdate(changedProperties);
|
|
294
|
-
if (changedProperties.has("checked")) {
|
|
295
|
-
this.setAttribute("aria-checked", `${this.checked}`);
|
|
296
|
-
if (this.checked !== changedProperties.get("checked")) {
|
|
297
|
-
this._stateChange.emit({ type: "checked", checked: this.checked });
|
|
298
|
-
this.isSelectionPanelInput && this._updateExpandedLabel();
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
|
-
if (changedProperties.has("disabled")) {
|
|
302
|
-
setOrRemoveAttribute(this, "aria-disabled", this.disabled ? "true" : null);
|
|
303
|
-
if (this.disabled !== changedProperties.get("disabled")) {
|
|
304
|
-
this._stateChange.emit({ type: "disabled", disabled: this.disabled });
|
|
305
|
-
}
|
|
306
|
-
}
|
|
307
|
-
if (changedProperties.has("required")) {
|
|
308
|
-
this.setAttribute("aria-required", `${this.required}`);
|
|
309
|
-
}
|
|
310
|
-
}
|
|
311
|
-
firstUpdated(changedProperties) {
|
|
312
|
-
super.firstUpdated(changedProperties);
|
|
313
|
-
this.startUpdate();
|
|
314
|
-
setTimeout(() => {
|
|
315
|
-
this.isSelectionPanelInput && this._updateExpandedLabel();
|
|
316
|
-
this.completeUpdate();
|
|
317
|
-
});
|
|
318
|
-
}
|
|
319
|
-
disconnectedCallback() {
|
|
320
|
-
super.disconnectedCallback();
|
|
321
|
-
this._handlerRepository.disconnect();
|
|
322
|
-
}
|
|
323
|
-
_handleKeyDown(evt) {
|
|
324
|
-
if (evt.code === "Space") {
|
|
325
|
-
this.select();
|
|
326
|
-
}
|
|
327
|
-
}
|
|
328
|
-
_updateExpandedLabel() {
|
|
329
|
-
var _a;
|
|
330
|
-
if (!((_a = this._selectionPanelElement) == null ? void 0 : _a.hasContent)) {
|
|
331
|
-
this._selectionPanelExpandedLabel = "";
|
|
332
|
-
return;
|
|
333
|
-
}
|
|
334
|
-
this._selectionPanelExpandedLabel = this.checked ? ", " + i18nExpanded[this._language.current] : ", " + i18nCollapsed[this._language.current];
|
|
335
|
-
}
|
|
336
53
|
render() {
|
|
337
54
|
return html`
|
|
338
55
|
<label class="sbb-radio-button">
|
|
@@ -348,50 +65,19 @@ let SbbRadioButtonElement = class extends SbbUpdateSchedulerMixin(LitElement) {
|
|
|
348
65
|
/>
|
|
349
66
|
<span class="sbb-radio-button__label-slot">
|
|
350
67
|
<slot></slot>
|
|
351
|
-
${this._selectionPanelElement ? html`<slot name="suffix"></slot>` : nothing}
|
|
352
68
|
</span>
|
|
353
|
-
${this._selectionPanelElement ? html`<slot name="subtext"></slot>` : nothing}
|
|
354
|
-
${this.isSelectionPanelInput && this._selectionPanelExpandedLabel ? html`<span class="sbb-screen-reader-only"> ${this._selectionPanelExpandedLabel} </span>` : nothing}
|
|
355
69
|
</label>
|
|
356
70
|
`;
|
|
357
71
|
}
|
|
358
72
|
};
|
|
359
|
-
SbbRadioButtonElement.styles =
|
|
73
|
+
SbbRadioButtonElement.styles = [radioButtonCommonStyle, radioButtonStyle];
|
|
360
74
|
SbbRadioButtonElement.events = {
|
|
361
|
-
stateChange: "stateChange"
|
|
362
|
-
radioButtonLoaded: "radioButtonLoaded"
|
|
75
|
+
stateChange: "stateChange"
|
|
363
76
|
};
|
|
364
|
-
__decorateClass([
|
|
365
|
-
property({ attribute: "allow-empty-selection", type: Boolean })
|
|
366
|
-
], SbbRadioButtonElement.prototype, "allowEmptySelection", 1);
|
|
367
|
-
__decorateClass([
|
|
368
|
-
property()
|
|
369
|
-
], SbbRadioButtonElement.prototype, "value", 2);
|
|
370
|
-
__decorateClass([
|
|
371
|
-
property({ reflect: true, type: Boolean })
|
|
372
|
-
], SbbRadioButtonElement.prototype, "disabled", 1);
|
|
373
|
-
__decorateClass([
|
|
374
|
-
property({ reflect: true, type: Boolean })
|
|
375
|
-
], SbbRadioButtonElement.prototype, "required", 1);
|
|
376
|
-
__decorateClass([
|
|
377
|
-
property({ reflect: true, type: Boolean })
|
|
378
|
-
], SbbRadioButtonElement.prototype, "checked", 1);
|
|
379
|
-
__decorateClass([
|
|
380
|
-
property({ reflect: true })
|
|
381
|
-
], SbbRadioButtonElement.prototype, "size", 1);
|
|
382
|
-
__decorateClass([
|
|
383
|
-
state()
|
|
384
|
-
], SbbRadioButtonElement.prototype, "_isSelectionPanelInput", 2);
|
|
385
|
-
__decorateClass([
|
|
386
|
-
state()
|
|
387
|
-
], SbbRadioButtonElement.prototype, "_selectionPanelExpandedLabel", 2);
|
|
388
77
|
SbbRadioButtonElement = __decorateClass([
|
|
389
|
-
customElement("sbb-radio-button")
|
|
390
|
-
hostAttributes({
|
|
391
|
-
role: "radio"
|
|
392
|
-
})
|
|
78
|
+
customElement("sbb-radio-button")
|
|
393
79
|
], SbbRadioButtonElement);
|
|
394
80
|
export {
|
|
395
81
|
SbbRadioButtonElement
|
|
396
82
|
};
|
|
397
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tYnV0dG9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvcmFkaW8tYnV0dG9uL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQsIG5vdGhpbmcgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHksIHN0YXRlIH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQge1xuICBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIsXG4gIFNiYkxhbmd1YWdlQ29udHJvbGxlcixcbiAgU2JiU2xvdFN0YXRlQ29udHJvbGxlcixcbn0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciwgZm9ybUVsZW1lbnRIYW5kbGVyQXNwZWN0LCBIYW5kbGVyUmVwb3NpdG9yeSB9IGZyb20gJy4uLy4uL2NvcmUvZXZlbnRpbmcuanMnO1xuaW1wb3J0IHsgaTE4bkNvbGxhcHNlZCwgaTE4bkV4cGFuZGVkIH0gZnJvbSAnLi4vLi4vY29yZS9pMThuLmpzJztcbmltcG9ydCB0eXBlIHtcbiAgU2JiQ2hlY2tlZFN0YXRlQ2hhbmdlLFxuICBTYmJEaXNhYmxlZFN0YXRlQ2hhbmdlLFxuICBTYmJTdGF0ZUNoYW5nZSxcbn0gZnJvbSAnLi4vLi4vY29yZS9pbnRlcmZhY2VzLmpzJztcbmltcG9ydCB7IFNiYlVwZGF0ZVNjaGVkdWxlck1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJTZWxlY3Rpb25QYW5lbEVsZW1lbnQgfSBmcm9tICcuLi8uLi9zZWxlY3Rpb24tcGFuZWwuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJSYWRpb0J1dHRvbkdyb3VwRWxlbWVudCB9IGZyb20gJy4uL3JhZGlvLWJ1dHRvbi1ncm91cC5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3JhZGlvLWJ1dHRvbi5zY3NzP2xpdCZpbmxpbmUnO1xuXG5leHBvcnQgdHlwZSBTYmJSYWRpb0J1dHRvblN0YXRlQ2hhbmdlID0gRXh0cmFjdDxcbiAgU2JiU3RhdGVDaGFuZ2UsXG4gIFNiYkRpc2FibGVkU3RhdGVDaGFuZ2UgfCBTYmJDaGVja2VkU3RhdGVDaGFuZ2Vcbj47XG5cbmV4cG9ydCB0eXBlIFNiYlJhZGlvQnV0dG9uU2l6ZSA9ICdzJyB8ICdtJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIHJhZGlvIGJ1dHRvbiBlbmhhbmNlZCB3aXRoIHRoZSBTQkIgRGVzaWduLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIHJhZGlvIGxhYmVsLlxuICogQHNsb3Qgc3VidGV4dCAtIFNsb3QgdXNlZCB0byByZW5kZXIgYSBzdWJ0ZXh0IHVuZGVyIHRoZSBsYWJlbCAob25seSB2aXNpYmxlIHdpdGhpbiBhIGBzYmItc2VsZWN0aW9uLXBhbmVsYCkuXG4gKiBAc2xvdCBzdWZmaXggLSBTbG90IHVzZWQgdG8gcmVuZGVyIGFkZGl0aW9uYWwgY29udGVudCBhZnRlciB0aGUgbGFiZWwgKG9ubHkgdmlzaWJsZSB3aXRoaW4gYSBgc2JiLXNlbGVjdGlvbi1wYW5lbGApLlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLXJhZGlvLWJ1dHRvbicpXG5AaG9zdEF0dHJpYnV0ZXMoe1xuICByb2xlOiAncmFkaW8nLFxufSlcbmV4cG9ydCBjbGFzcyBTYmJSYWRpb0J1dHRvbkVsZW1lbnQgZXh0ZW5kcyBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbihMaXRFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBzdGF0ZUNoYW5nZTogJ3N0YXRlQ2hhbmdlJyxcbiAgICByYWRpb0J1dHRvbkxvYWRlZDogJ3JhZGlvQnV0dG9uTG9hZGVkJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gY2FuIGJlIGRlc2VsZWN0ZWQuXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhbGxvdy1lbXB0eS1zZWxlY3Rpb24nLCB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBzZXQgYWxsb3dFbXB0eVNlbGVjdGlvbih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2FsbG93RW1wdHlTZWxlY3Rpb24gPSBCb29sZWFuKHZhbHVlKTtcbiAgfVxuICBwdWJsaWMgZ2V0IGFsbG93RW1wdHlTZWxlY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2FsbG93RW1wdHlTZWxlY3Rpb24gfHwgKHRoaXMuZ3JvdXA/LmFsbG93RW1wdHlTZWxlY3Rpb24gPz8gZmFsc2UpO1xuICB9XG4gIHByaXZhdGUgX2FsbG93RW1wdHlTZWxlY3Rpb24gPSBmYWxzZTtcblxuICAvKipcbiAgICogVmFsdWUgb2YgcmFkaW8gYnV0dG9uLlxuICAgKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIHZhbHVlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSByYWRpbyBidXR0b24gaXMgZGlzYWJsZWQuXG4gICAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IEJvb2xlYW4odmFsdWUpO1xuICB9XG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkIHx8ICh0aGlzLmdyb3VwPy5kaXNhYmxlZCA/PyBmYWxzZSk7XG4gIH1cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGlzIHJlcXVpcmVkLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgc2V0IHJlcXVpcmVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmVxdWlyZWQgPSBCb29sZWFuKHZhbHVlKTtcbiAgfVxuICBwdWJsaWMgZ2V0IHJlcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZCB8fCAodGhpcy5ncm91cD8ucmVxdWlyZWQgPz8gZmFsc2UpO1xuICB9XG4gIHByaXZhdGUgX3JlcXVpcmVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFJlZmVyZW5jZSB0byB0aGUgY29ubmVjdGVkIHJhZGlvIGJ1dHRvbiBncm91cC5cbiAgICovXG4gIHB1YmxpYyBnZXQgZ3JvdXAoKTogU2JiUmFkaW9CdXR0b25Hcm91cEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fZ3JvdXA7XG4gIH1cbiAgcHJpdmF0ZSBfZ3JvdXA6IFNiYlJhZGlvQnV0dG9uR3JvdXBFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHJhZGlvIGJ1dHRvbiBpcyBjaGVja2VkLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgc2V0IGNoZWNrZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9jaGVja2VkID0gQm9vbGVhbih2YWx1ZSk7XG4gIH1cbiAgcHVibGljIGdldCBjaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9jaGVja2VkO1xuICB9XG4gIHByaXZhdGUgX2NoZWNrZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogTGFiZWwgc2l6ZSB2YXJpYW50LCBlaXRoZXIgbSBvciBzLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgc2V0IHNpemUodmFsdWU6IFNiYlJhZGlvQnV0dG9uU2l6ZSkge1xuICAgIHRoaXMuX3NpemUgPSB2YWx1ZTtcbiAgfVxuICBwdWJsaWMgZ2V0IHNpemUoKTogU2JiUmFkaW9CdXR0b25TaXplIHtcbiAgICByZXR1cm4gdGhpcy5ncm91cD8uc2l6ZSA/PyB0aGlzLl9zaXplO1xuICB9XG4gIHByaXZhdGUgX3NpemU6IFNiYlJhZGlvQnV0dG9uU2l6ZSA9ICdtJztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgaW5wdXQgaXMgdGhlIG1haW4gaW5wdXQgb2YgYSBzZWxlY3Rpb24gcGFuZWwuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGdldCBpc1NlbGVjdGlvblBhbmVsSW5wdXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lzU2VsZWN0aW9uUGFuZWxJbnB1dDtcbiAgfVxuICBAc3RhdGUoKSBwcml2YXRlIF9pc1NlbGVjdGlvblBhbmVsSW5wdXQgPSBmYWxzZTtcblxuICAvKipcbiAgICogVGhlIGxhYmVsIGRlc2NyaWJpbmcgd2hldGhlciB0aGUgc2VsZWN0aW9uIHBhbmVsIGlzIGV4cGFuZGVkIChmb3Igc2NyZWVuIHJlYWRlcnMgb25seSkuXG4gICAqL1xuICBAc3RhdGUoKSBwcml2YXRlIF9zZWxlY3Rpb25QYW5lbEV4cGFuZGVkTGFiZWw/OiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBfc2VsZWN0aW9uUGFuZWxFbGVtZW50OiBTYmJTZWxlY3Rpb25QYW5lbEVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfYWJvcnQgPSBuZXcgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBJbnRlcm5hbCBldmVudCB0aGF0IGVtaXRzIHdoZW5ldmVyIHRoZSBzdGF0ZSBvZiB0aGUgcmFkaW8gb3B0aW9uXG4gICAqIGluIHJlbGF0aW9uIHRvIHRoZSBwYXJlbnQgc2VsZWN0aW9uIHBhbmVsIGNoYW5nZXMuXG4gICAqL1xuICBwcml2YXRlIF9zdGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPFNiYlJhZGlvQnV0dG9uU3RhdGVDaGFuZ2U+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYlJhZGlvQnV0dG9uRWxlbWVudC5ldmVudHMuc3RhdGVDaGFuZ2UsXG4gICAgeyBidWJibGVzOiB0cnVlIH0sXG4gICk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBJbnRlcm5hbCBldmVudCB0aGF0IGVtaXRzIHdoZW4gdGhlIHJhZGlvIGJ1dHRvbiBpcyBsb2FkZWQuXG4gICAqL1xuICBwcml2YXRlIF9yYWRpb0J1dHRvbkxvYWRlZDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYlJhZGlvQnV0dG9uRWxlbWVudC5ldmVudHMucmFkaW9CdXR0b25Mb2FkZWQsXG4gICAgeyBidWJibGVzOiB0cnVlIH0sXG4gICk7XG4gIHByaXZhdGUgX2hhbmRsZUNsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5zZWxlY3QoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3QoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5hbGxvd0VtcHR5U2VsZWN0aW9uKSB7XG4gICAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkO1xuICAgIH0gZWxzZSBpZiAoIXRoaXMuY2hlY2tlZCkge1xuICAgICAgdGhpcy5jaGVja2VkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVyUmVwb3NpdG9yeSA9IG5ldyBIYW5kbGVyUmVwb3NpdG9yeSh0aGlzLCBmb3JtRWxlbWVudEhhbmRsZXJBc3BlY3QpO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIG5ldyBTYmJTbG90U3RhdGVDb250cm9sbGVyKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fZ3JvdXAgPSB0aGlzLmNsb3Nlc3QoJ3NiYi1yYWRpby1idXR0b24tZ3JvdXAnKSBhcyBTYmJSYWRpb0J1dHRvbkdyb3VwRWxlbWVudDtcbiAgICAvLyBXZSBjYW4gdXNlIGNsb3Nlc3QgaGVyZSwgYXMgd2UgZXhwZWN0IHRoZSBwYXJlbnQgc2JiLXNlbGVjdGlvbi1wYW5lbCB0byBiZSBpbiBsaWdodCBET00uXG4gICAgdGhpcy5fc2VsZWN0aW9uUGFuZWxFbGVtZW50ID0gdGhpcy5jbG9zZXN0KCdzYmItc2VsZWN0aW9uLXBhbmVsJyk7XG4gICAgdGhpcy5faXNTZWxlY3Rpb25QYW5lbElucHV0ID1cbiAgICAgICEhdGhpcy5fc2VsZWN0aW9uUGFuZWxFbGVtZW50ICYmICF0aGlzLmNsb3Nlc3QoJ3NiYi1zZWxlY3Rpb24tcGFuZWwgW3Nsb3Q9XCJjb250ZW50XCJdJyk7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtaXMtc2VsZWN0aW9uLXBhbmVsLWlucHV0JywgdGhpcy5faXNTZWxlY3Rpb25QYW5lbElucHV0KTtcblxuICAgIGNvbnN0IHNpZ25hbCA9IHRoaXMuX2Fib3J0LnNpZ25hbDtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGUpID0+IHRoaXMuX2hhbmRsZUNsaWNrKGUpLCB7IHNpZ25hbCB9KTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4gdGhpcy5faGFuZGxlS2V5RG93bihlKSwgeyBzaWduYWwgfSk7XG4gICAgdGhpcy5faGFuZGxlclJlcG9zaXRvcnkuY29ubmVjdCgpO1xuICAgIHRoaXMuX3JhZGlvQnV0dG9uTG9hZGVkLmVtaXQoKTtcblxuICAgIC8vIFdlIG5lZWQgdG8gY2FsbCByZXF1ZXN0VXBkYXRlIHRvIHVwZGF0ZSB0aGUgcmVmbGVjdGVkIGF0dHJpYnV0ZXNcbiAgICBbJ2Rpc2FibGVkJywgJ3JlcXVpcmVkJywgJ3NpemUnXS5mb3JFYWNoKChwKSA9PiB0aGlzLnJlcXVlc3RVcGRhdGUocCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdjaGVja2VkJykpIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCdhcmlhLWNoZWNrZWQnLCBgJHt0aGlzLmNoZWNrZWR9YCk7XG4gICAgICBpZiAodGhpcy5jaGVja2VkICE9PSBjaGFuZ2VkUHJvcGVydGllcy5nZXQoJ2NoZWNrZWQnKSEpIHtcbiAgICAgICAgdGhpcy5fc3RhdGVDaGFuZ2UuZW1pdCh7IHR5cGU6ICdjaGVja2VkJywgY2hlY2tlZDogdGhpcy5jaGVja2VkIH0pO1xuICAgICAgICB0aGlzLmlzU2VsZWN0aW9uUGFuZWxJbnB1dCAmJiB0aGlzLl91cGRhdGVFeHBhbmRlZExhYmVsKCk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2Rpc2FibGVkJykpIHtcbiAgICAgIHNldE9yUmVtb3ZlQXR0cmlidXRlKHRoaXMsICdhcmlhLWRpc2FibGVkJywgdGhpcy5kaXNhYmxlZCA/ICd0cnVlJyA6IG51bGwpO1xuICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgIT09IGNoYW5nZWRQcm9wZXJ0aWVzLmdldCgnZGlzYWJsZWQnKSEpIHtcbiAgICAgICAgdGhpcy5fc3RhdGVDaGFuZ2UuZW1pdCh7IHR5cGU6ICdkaXNhYmxlZCcsIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdyZXF1aXJlZCcpKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnYXJpYS1yZXF1aXJlZCcsIGAke3RoaXMucmVxdWlyZWR9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgLy8gV2UgbmVlZCB0byB3YWl0IGZvciB0aGUgc2VsZWN0aW9uLXBhbmVsIHRvIGJlIGZ1bGx5IGluaXRpYWxpemVkXG4gICAgdGhpcy5zdGFydFVwZGF0ZSgpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5pc1NlbGVjdGlvblBhbmVsSW5wdXQgJiYgdGhpcy5fdXBkYXRlRXhwYW5kZWRMYWJlbCgpO1xuICAgICAgdGhpcy5jb21wbGV0ZVVwZGF0ZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5faGFuZGxlclJlcG9zaXRvcnkuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZ0LmNvZGUgPT09ICdTcGFjZScpIHtcbiAgICAgIHRoaXMuc2VsZWN0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlRXhwYW5kZWRMYWJlbCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3NlbGVjdGlvblBhbmVsRWxlbWVudD8uaGFzQ29udGVudCkge1xuICAgICAgdGhpcy5fc2VsZWN0aW9uUGFuZWxFeHBhbmRlZExhYmVsID0gJyc7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fc2VsZWN0aW9uUGFuZWxFeHBhbmRlZExhYmVsID0gdGhpcy5jaGVja2VkXG4gICAgICA/ICcsICcgKyBpMThuRXhwYW5kZWRbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF1cbiAgICAgIDogJywgJyArIGkxOG5Db2xsYXBzZWRbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF07XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxsYWJlbCBjbGFzcz1cInNiYi1yYWRpby1idXR0b25cIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWR9XG4gICAgICAgICAgP3JlcXVpcmVkPSR7dGhpcy5yZXF1aXJlZH1cbiAgICAgICAgICA/Y2hlY2tlZD0ke3RoaXMuY2hlY2tlZH1cbiAgICAgICAgICB2YWx1ZT0ke3RoaXMudmFsdWUgfHwgbm90aGluZ31cbiAgICAgICAgICBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIlxuICAgICAgICAvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1yYWRpby1idXR0b25fX2xhYmVsLXNsb3RcIj5cbiAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgJHt0aGlzLl9zZWxlY3Rpb25QYW5lbEVsZW1lbnQgPyBodG1sYDxzbG90IG5hbWU9XCJzdWZmaXhcIj48L3Nsb3Q+YCA6IG5vdGhpbmd9XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgJHt0aGlzLl9zZWxlY3Rpb25QYW5lbEVsZW1lbnQgPyBodG1sYDxzbG90IG5hbWU9XCJzdWJ0ZXh0XCI+PC9zbG90PmAgOiBub3RoaW5nfVxuICAgICAgICAke3RoaXMuaXNTZWxlY3Rpb25QYW5lbElucHV0ICYmIHRoaXMuX3NlbGVjdGlvblBhbmVsRXhwYW5kZWRMYWJlbFxuICAgICAgICAgID8gaHRtbGA8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIj4gJHt0aGlzLl9zZWxlY3Rpb25QYW5lbEV4cGFuZGVkTGFiZWx9IDwvc3Bhbj5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgPC9sYWJlbD5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItcmFkaW8tYnV0dG9uJzogU2JiUmFkaW9CdXR0b25FbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUEwQ08sSUFBTSx3QkFBTixjQUFvQyx3QkFBd0IsVUFBVSxFQUFFO0FBQUEsRUF5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
|
|
83
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tYnV0dG9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvcmFkaW8tYnV0dG9uL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgTGl0RWxlbWVudCwgaHRtbCwgbm90aGluZyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJTbG90U3RhdGVDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBTYmJSYWRpb0J1dHRvbkNvbW1vbkVsZW1lbnRNaXhpbiwgcmFkaW9CdXR0b25Db21tb25TdHlsZSB9IGZyb20gJy4uL2NvbW1vbi5qcyc7XG5cbmltcG9ydCByYWRpb0J1dHRvblN0eWxlIGZyb20gJy4vcmFkaW8tYnV0dG9uLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSByYWRpbyBidXR0b24gZW5oYW5jZWQgd2l0aCB0aGUgU0JCIERlc2lnbi5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSByYWRpbyBsYWJlbC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1yYWRpby1idXR0b24nKVxuZXhwb3J0IGNsYXNzIFNiYlJhZGlvQnV0dG9uRWxlbWVudCBleHRlbmRzIFNiYlJhZGlvQnV0dG9uQ29tbW9uRWxlbWVudE1peGluKExpdEVsZW1lbnQpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW3JhZGlvQnV0dG9uQ29tbW9uU3R5bGUsIHJhZGlvQnV0dG9uU3R5bGVdO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBzdGF0ZUNoYW5nZTogJ3N0YXRlQ2hhbmdlJyxcbiAgfSBhcyBjb25zdDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICBuZXcgU2JiU2xvdFN0YXRlQ29udHJvbGxlcih0aGlzKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGxhYmVsIGNsYXNzPVwic2JiLXJhZGlvLWJ1dHRvblwiPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5kaXNhYmxlZH1cbiAgICAgICAgICA/cmVxdWlyZWQ9JHt0aGlzLnJlcXVpcmVkfVxuICAgICAgICAgID9jaGVja2VkPSR7dGhpcy5jaGVja2VkfVxuICAgICAgICAgIHZhbHVlPSR7dGhpcy52YWx1ZSB8fCBub3RoaW5nfVxuICAgICAgICAgIGNsYXNzPVwic2JiLXNjcmVlbi1yZWFkZXItb25seVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXJhZGlvLWJ1dHRvbl9fbGFiZWwtc2xvdFwiPlxuICAgICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9sYWJlbD5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItcmFkaW8tYnV0dG9uJzogU2JiUmFkaW9CdXR0b25FbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFlTyxJQUFNLHdCQUFOLGNBQW9DLGlDQUFpQyxVQUFVLEVBQUU7QUFBQSxFQU0vRSxjQUFjO0FBQ2I7QUFDTixRQUFJLHVCQUF1QixJQUFJO0FBQUEsRUFDakM7QUFBQSxFQUVtQixTQUF5QjtBQUNuQyxXQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLHNCQU1XLEtBQUssUUFBUTtBQUFBLHNCQUNiLEtBQUssUUFBUTtBQUFBLHFCQUNkLEtBQUssT0FBTztBQUFBLGtCQUNmLEtBQUssU0FBUyxPQUFPO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFyQztBQUNGO0FBOUJhLHNCQUNZLFNBQXlCLENBQUMsd0JBQXdCLGdCQUFnQjtBQUQ5RSxzQkFFWSxTQUFTO0FBQUEsRUFDOUIsYUFBYTtBQUNmO0FBSlcsd0JBQU4sZ0JBQUE7QUFBQSxFQUROLGNBQWMsa0JBQWtCO0FBQUEsR0FDcEIscUJBQUE7In0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radio-button.d.ts","sourceRoot":"","sources":["../../../src/elements/radio-button.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sCAAsC,CAAC"}
|
|
1
|
+
{"version":3,"file":"radio-button.d.ts","sourceRoot":"","sources":["../../../src/elements/radio-button.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,0BAA0B,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export * from "./radio-button/radio-button.js";
|
|
2
2
|
export * from "./radio-button/radio-button-group.js";
|
|
3
|
-
|
|
3
|
+
export * from "./radio-button/radio-button-panel.js";
|
|
4
|
+
export * from "./radio-button/common.js";
|
|
5
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tYnV0dG9uLmpzIiwic291cmNlcyI6W10sInNvdXJjZXNDb250ZW50IjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OzsifQ==
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { CSSResultGroup, PropertyValues, TemplateResult, LitElement } from 'lit';
|
|
2
2
|
|
|
3
|
+
declare const SbbSelectionExpansionPanelElement_base: import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbHydrationMixinType> & typeof LitElement;
|
|
3
4
|
/**
|
|
4
5
|
* It displays an expandable panel connected to a `sbb-checkbox` or to a `sbb-radio-button`.
|
|
5
6
|
*
|
|
6
|
-
* @slot - Use the unnamed slot to add `sbb-checkbox` or `sbb-radio-button` elements to the `sbb-selection-panel`.
|
|
7
|
-
* @slot badge - Use this slot to provide a `sbb-card-badge` (optional).
|
|
7
|
+
* @slot - Use the unnamed slot to add `sbb-checkbox` or `sbb-radio-button` elements to the `sbb-selection-expansion-panel`.
|
|
8
8
|
* @slot content - Use this slot to provide custom content for the panel (optional).
|
|
9
9
|
* @event {CustomEvent<void>} willOpen - Emits whenever the content section starts the opening transition.
|
|
10
10
|
* @event {CustomEvent<void>} didOpen - Emits whenever the content section is opened.
|
|
11
11
|
* @event {CustomEvent<void>} willClose - Emits whenever the content section begins the closing transition.
|
|
12
12
|
* @event {CustomEvent<void>} didClose - Emits whenever the content section is closed.
|
|
13
13
|
*/
|
|
14
|
-
export declare class
|
|
14
|
+
export declare class SbbSelectionExpansionPanelElement extends SbbSelectionExpansionPanelElement_base {
|
|
15
15
|
static styles: CSSResultGroup;
|
|
16
16
|
static readonly events: Record<string, string>;
|
|
17
17
|
/** The background color of the panel. */
|
|
@@ -36,13 +36,13 @@ export declare class SbbSelectionPanelElement extends LitElement {
|
|
|
36
36
|
private _willClose;
|
|
37
37
|
/** Emits whenever the content section is closed. */
|
|
38
38
|
private _didClose;
|
|
39
|
+
private _language;
|
|
39
40
|
private _abort;
|
|
40
41
|
private _initialized;
|
|
41
42
|
/**
|
|
42
43
|
* Whether it has an expandable content
|
|
43
|
-
* @internal
|
|
44
44
|
*/
|
|
45
|
-
get
|
|
45
|
+
private get _hasContent();
|
|
46
46
|
constructor();
|
|
47
47
|
connectedCallback(): void;
|
|
48
48
|
protected willUpdate(changedProperties: PropertyValues<this>): void;
|
|
@@ -53,11 +53,13 @@ export declare class SbbSelectionPanelElement extends LitElement {
|
|
|
53
53
|
private _initFromInput;
|
|
54
54
|
private _onInputStateChange;
|
|
55
55
|
private _onAnimationEnd;
|
|
56
|
+
private _updateExpandedLabel;
|
|
56
57
|
protected render(): TemplateResult;
|
|
57
58
|
}
|
|
58
59
|
declare global {
|
|
59
60
|
interface HTMLElementTagNameMap {
|
|
60
|
-
'sbb-selection-panel':
|
|
61
|
+
'sbb-selection-expansion-panel': SbbSelectionExpansionPanelElement;
|
|
61
62
|
}
|
|
62
63
|
}
|
|
63
|
-
|
|
64
|
+
export {};
|
|
65
|
+
//# sourceMappingURL=selection-expansion-panel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selection-expansion-panel.d.ts","sourceRoot":"","sources":["../../../../src/elements/selection-expansion-panel/selection-expansion-panel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAQ,UAAU,EAAE,MAAM,KAAK,CAAC;AAiBvC,OAAO,eAAe,CAAC;;AAEvB;;;;;;;;;GASG;AACH,qBACa,iCAAkC,SAAQ,sCAA6B;IAElF,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAK1C;IAEX,yCAAyC;IACtB,KAAK,EAAE,OAAO,GAAG,MAAM,CAAW;IAErD,qDAAqD;IACQ,SAAS,UAAS;IAE/E,iDAAiD;IACE,UAAU,UAAS;IAEtE,wCAAwC;IAExC,OAAO,KAAK,MAAM,QAEjB;IACD,OAAO,KAAK,MAAM,GAEjB;IAED,8CAA8C;IAC9C,OAAO,KAAK,QAAQ,QAEnB;IACD,OAAO,KAAK,QAAQ,GAEnB;IAED,+CAA+C;IAC/C,OAAO,KAAK,SAAS,QAEpB;IAED,wEAAwE;IACxE,OAAO,CAAC,SAAS,CAGf;IAEF,oDAAoD;IACpD,OAAO,CAAC,QAAQ,CAGd;IAEF,wEAAwE;IACxE,OAAO,CAAC,UAAU,CAGhB;IAEF,oDAAoD;IACpD,OAAO,CAAC,SAAS,CAGf;IAEF,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,YAAY,CAAkB;IAEtC;;OAEG;IACH,OAAO,KAAK,WAAW,GAGtB;;IAOe,iBAAiB,IAAI,IAAI;cAUtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cAQzD,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAM9E,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,KAAK;IAcb,OAAO,CAAC,MAAM;IASd,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,eAAe;YAUT,oBAAoB;cAoBf,MAAM,IAAI,cAAc;CAmB5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,+BAA+B,EAAE,iCAAiC,CAAC;KACpE;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selection-expansion-panel.d.ts","sourceRoot":"","sources":["../../../src/elements/selection-expansion-panel.ts"],"names":[],"mappings":"AAAA,cAAc,0DAA0D,CAAC"}
|