@ds-autonomie/web-components 1.4.0 → 1.5.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.
Files changed (110) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/chunks/{chunk.N7ZCXHGU.js → chunk.2FVPNPAG.js} +2 -1
  3. package/dist/chunks/{chunk.F6FCZQ67.js → chunk.2PVIV5ZH.js} +2 -2
  4. package/dist/chunks/{chunk.C7CCBBLF.js → chunk.3QQPH6YB.js} +3 -1
  5. package/dist/chunks/chunk.5QKVQDMN.js +49 -0
  6. package/dist/chunks/{chunk.A3UKO7AU.js → chunk.7WQVFO44.js} +24 -3
  7. package/dist/chunks/{chunk.MTZZV3NB.js → chunk.AQC66RY2.js} +1 -1
  8. package/dist/chunks/{chunk.3RBCYA4F.js → chunk.AXG2LFB3.js} +55 -4
  9. package/dist/chunks/{chunk.O4XPNLT4.js → chunk.B6CXFMFM.js} +1 -1
  10. package/dist/chunks/{chunk.4TRQBTMY.js → chunk.CWD6PMVD.js} +1 -1
  11. package/dist/chunks/{chunk.YRBTSDUN.js → chunk.DQNPP74X.js} +53 -36
  12. package/dist/chunks/chunk.DX25IW4S.js +35 -0
  13. package/dist/chunks/{chunk.3GJ3KGGY.js → chunk.DXQY7NLW.js} +17 -0
  14. package/dist/chunks/{chunk.YY6AEXJK.js → chunk.HXH4JLAN.js} +1 -1
  15. package/dist/chunks/{chunk.XCG5TV7T.js → chunk.INCMVGXU.js} +1 -1
  16. package/dist/chunks/{chunk.EXIGM5NV.js → chunk.K2ICEURU.js} +10 -1
  17. package/dist/chunks/chunk.KTY3ESVG.js +88 -0
  18. package/dist/chunks/{chunk.JT7UJED5.js → chunk.LSECPSSR.js} +1 -1
  19. package/dist/chunks/chunk.OIS5HMFT.js +55 -0
  20. package/dist/chunks/{chunk.5324JGM4.js → chunk.OUVQZNJQ.js} +28 -3
  21. package/dist/chunks/{chunk.IV2XMACC.js → chunk.OVCI74KS.js} +2 -2
  22. package/dist/chunks/{chunk.N3ADQCT7.js → chunk.PZTXAAW2.js} +27 -3
  23. package/dist/chunks/{chunk.2WSMYCPC.js → chunk.QATKXCGU.js} +4 -0
  24. package/dist/chunks/{chunk.WE6IG5XG.js → chunk.R4PCVUXB.js} +1 -1
  25. package/dist/chunks/{chunk.BL4IZFBA.js → chunk.RNLKSRKQ.js} +2 -1
  26. package/dist/chunks/{chunk.UQYPPFBJ.js → chunk.TMG7TJJO.js} +2 -1
  27. package/dist/chunks/{chunk.3Y56GJS7.js → chunk.TUZ72ZDQ.js} +28 -3
  28. package/dist/chunks/chunk.U24CXNHC.js +38 -0
  29. package/dist/chunks/{chunk.2HV2U4RQ.js → chunk.XRHDURFE.js} +1 -1
  30. package/dist/chunks/chunk.YDCBGMSA.js +161 -0
  31. package/dist/chunks/{chunk.VRY3E2XG.js → chunk.YZ66DKLU.js} +1 -1
  32. package/dist/chunks/{chunk.GY5KJYSY.js → chunk.YZHYOXYA.js} +10 -5
  33. package/dist/chunks/{chunk.D6DEGG4H.js → chunk.Z2QW2HUR.js} +1 -1
  34. package/dist/chunks/{chunk.5NO4YOTV.js → chunk.ZI2RZQPZ.js} +26 -18
  35. package/dist/chunks/{chunk.NHYFVEGM.js → chunk.ZR7AGQFC.js} +1 -1
  36. package/dist/chunks/{chunk.TSK67ZZE.js → chunk.ZU3MRZA4.js} +1 -1
  37. package/dist/components/alert/alert.js +2 -2
  38. package/dist/components/animation/animation.d.ts +1 -1
  39. package/dist/components/button/button.d.ts +1 -1
  40. package/dist/components/button/button.js +2 -2
  41. package/dist/components/button/button.styles.js +1 -1
  42. package/dist/components/checkbox/checkbox.js +3 -3
  43. package/dist/components/checkbox/checkbox.styles.js +2 -2
  44. package/dist/components/checkbox-button/checkbox-button.d.ts +1 -1
  45. package/dist/components/checkbox-button/checkbox-button.js +3 -3
  46. package/dist/components/checkbox-button/checkbox-button.styles.js +2 -2
  47. package/dist/components/checkbox-group/checkbox-group.js +3 -3
  48. package/dist/components/checkbox-group/checkbox-group.styles.js +2 -2
  49. package/dist/components/combobox/combobox.js +5 -5
  50. package/dist/components/combobox/combobox.styles.js +2 -2
  51. package/dist/components/dialog/dialog.js +2 -2
  52. package/dist/components/drawer/drawer.js +2 -2
  53. package/dist/components/icon-button/icon-button.d.ts +3 -1
  54. package/dist/components/icon-button/icon-button.js +2 -2
  55. package/dist/components/icon-button/icon-button.styles.js +1 -1
  56. package/dist/components/input/input.d.ts +3 -0
  57. package/dist/components/input/input.js +3 -3
  58. package/dist/components/input/input.styles.js +2 -2
  59. package/dist/components/input-mask/input-mask.js +3 -3
  60. package/dist/components/input-mask/input-mask.styles.js +2 -2
  61. package/dist/components/input-phone/input-phone.js +9 -9
  62. package/dist/components/input-phone/input-phone.styles.js +2 -2
  63. package/dist/components/radio-button/radio-button.d.ts +1 -1
  64. package/dist/components/radio-button/radio-button.js +3 -3
  65. package/dist/components/radio-button/radio-button.styles.js +2 -2
  66. package/dist/components/radio-group/radio-group.js +3 -3
  67. package/dist/components/radio-group/radio-group.styles.js +2 -2
  68. package/dist/components/select/select.js +5 -5
  69. package/dist/components/select/select.styles.js +2 -2
  70. package/dist/components/skip-link-item/skip-link-item.d.ts +21 -0
  71. package/dist/components/skip-link-item/skip-link-item.js +10 -0
  72. package/dist/components/skip-link-item/skip-link-item.styles.d.ts +2 -0
  73. package/dist/components/skip-link-item/skip-link-item.styles.js +8 -0
  74. package/dist/components/skip-links/skip-links.d.ts +22 -0
  75. package/dist/components/skip-links/skip-links.js +10 -0
  76. package/dist/components/skip-links/skip-links.styles.d.ts +2 -0
  77. package/dist/components/skip-links/skip-links.styles.js +8 -0
  78. package/dist/components/step/step.d.ts +3 -1
  79. package/dist/components/step/step.js +2 -2
  80. package/dist/components/step/step.styles.js +1 -1
  81. package/dist/components/stepper/stepper.d.ts +5 -1
  82. package/dist/components/stepper/stepper.js +3 -2
  83. package/dist/components/stepper/stepper.styles.js +1 -1
  84. package/dist/components/tag/tag.js +2 -2
  85. package/dist/components/textarea/textarea.d.ts +3 -0
  86. package/dist/components/textarea/textarea.js +3 -3
  87. package/dist/components/textarea/textarea.styles.js +2 -2
  88. package/dist/components/tree/tree.js +3 -3
  89. package/dist/components/tree-item/tree-item.js +3 -3
  90. package/dist/custom-elements.json +257 -8
  91. package/dist/design-system.d.ts +2 -0
  92. package/dist/design-system.js +58 -48
  93. package/dist/events/dsa-focus-in.d.ts +7 -0
  94. package/dist/events/dsa-focus-in.js +1 -0
  95. package/dist/events/dsa-focus-out.d.ts +7 -0
  96. package/dist/events/dsa-focus-out.js +1 -0
  97. package/dist/internal/components/button-group/button-group.d.ts +1 -0
  98. package/dist/internal/components/button-group/button-group.js +9 -1
  99. package/dist/internal/components/button-group/button-group.styles.js +10 -0
  100. package/dist/styles/form-control.styles.js +55 -4
  101. package/dist/themes/dsa-wc-theme.css +88 -8
  102. package/dist/themes/dsa-wc-theme.min.css +1 -1
  103. package/dist/themes/dsa-wc-theme.styles.js +88 -8
  104. package/dist/utilities/storybook.d.ts +2 -1
  105. package/dist/utilities/storybook.js +12 -0
  106. package/dist/vscode.html-custom-data.json +52 -2
  107. package/dist/web-types.json +146 -7
  108. package/package.json +2 -2
  109. package/dist/chunks/chunk.QFJA3MTV.js +0 -66
  110. package/dist/chunks/chunk.QSNJ4FV6.js +0 -54
package/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # @ds-autonomie/web-components
2
2
 
3
+ ## 1.5.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 2b16f19: `icon-button`: ajout de l'attribut variant sur le composant icon-button
8
+ - 3509713: `skip-link`, `skip-link-item`: implémentation des composants skip-link et skip-link-item
9
+ - bf441fa: `stepper`: ajout du mode vertical sur le composant stepper
10
+ - 7cc2433: `checkbox-group`, `checkbox-button`, `radio-group`, `radio-button`: ajout de l'option verticale pour les `checkbox-button` et `radio-button`, et uniformisation de la disposition par défaut à verticale.
11
+ Afin de garder la disposition de vos `checkbox-button` et `radio-button` à l'horizontale, il faut ajouter l'attribut `horizontal="true"` à leur parent `checkbox-group` ou `radio-group`.
12
+ - 6cfe8f7: montée de version majeure de la dépendance Typescript (version 5.x)
13
+ - bcef624: `input`, `textarea`: ajout de l'attribut `counter` pour afficher le compteur de caractères
14
+
15
+ ### Patch Changes
16
+
17
+ - 487b6f4: `combobox`: correction sur l'utilisation du slot par défaut sur le composant combobox
18
+ - @ds-autonomie/assets@1.1.1
19
+
3
20
  ## 1.4.0
4
21
 
5
22
  ### Minor Changes
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  checkbox_button_styles_default
3
- } from "./chunk.A3UKO7AU.js";
3
+ } from "./chunk.7WQVFO44.js";
4
4
  import {
5
5
  HasSlotController
6
6
  } from "./chunk.YIY5RM53.js";
@@ -90,6 +90,7 @@ var DSACheckboxButton = class extends ShoelaceElement {
90
90
  @blur=${this.handleBlur}
91
91
  @focus=${this.handleFocus}
92
92
  @click=${this.handleClick}
93
+ title="${this.innerText}"
93
94
  >
94
95
  ${this.readonly ? html`<dsa-icon
95
96
  name="lock"
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk.CMJ2SRTL.js";
4
4
  import {
5
5
  checkbox_styles_default
6
- } from "./chunk.WE6IG5XG.js";
6
+ } from "./chunk.R4PCVUXB.js";
7
7
  import {
8
8
  FormControlController
9
9
  } from "./chunk.KIFBWPW5.js";
@@ -194,7 +194,7 @@ var DSACheckbox = class extends ShoelaceElement {
194
194
  ${this.required ? html`<span class="checkbox__label-required">*</span>` : ""}
195
195
  </div>
196
196
  </label>
197
- ${this.error && !this.disabled ? html`<dsa-error-text
197
+ ${this.error && !this.disabled && this.errorMessage ? html`<dsa-error-text
198
198
  id="error-text"
199
199
  class=${classMap({
200
200
  "form-control__error-text": true,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  button_styles_default
3
- } from "./chunk.3GJ3KGGY.js";
3
+ } from "./chunk.DXQY7NLW.js";
4
4
 
5
5
  // src/components/radio-button/radio-button.styles.ts
6
6
  import { css } from "lit";
@@ -18,6 +18,7 @@ var radio_button_styles_default = css`
18
18
  .button--toggle {
19
19
  display: inline-flex;
20
20
  align-items: center;
21
+ justify-content: start;
21
22
  background-color: var(--dsa-wc-toggle-button-background-color);
22
23
  border-color: var(--dsa-wc-toggle-button-border-color);
23
24
  color: var(--dsa-wc-toggle-button-color);
@@ -80,6 +81,7 @@ var radio_button_styles_default = css`
80
81
 
81
82
  .button--toggle .button__icon-readonly {
82
83
  margin-inline-end: var(--dsa-wc-toggle-button-icon-spacing);
84
+ flex-shrink: 0;
83
85
  }
84
86
 
85
87
  /* We use a hidden input so constraint validation errors work, since they don't appear to show when used with buttons.
@@ -0,0 +1,49 @@
1
+ import {
2
+ skip_link_item_styles_default
3
+ } from "./chunk.U24CXNHC.js";
4
+ import {
5
+ ShoelaceElement
6
+ } from "./chunk.YCXTCVAZ.js";
7
+ import {
8
+ __decorateClass
9
+ } from "./chunk.6M63UXML.js";
10
+
11
+ // src/components/skip-link-item/skip-link-item.ts
12
+ import { html } from "lit";
13
+ import { customElement, property } from "lit/decorators.js";
14
+ var DSASkipLinkItem = class extends ShoelaceElement {
15
+ constructor() {
16
+ super(...arguments);
17
+ this.href = "";
18
+ }
19
+ handleFocus() {
20
+ this.emit("dsa-focus");
21
+ }
22
+ handleBlur() {
23
+ this.emit("dsa-blur");
24
+ }
25
+ render() {
26
+ return html`
27
+ <a
28
+ part="base"
29
+ class="skip-link-item"
30
+ href=${this.href}
31
+ @focus=${this.handleFocus}
32
+ @blur=${this.handleBlur}
33
+ >
34
+ <slot part="label"></slot>
35
+ </a>
36
+ `;
37
+ }
38
+ };
39
+ DSASkipLinkItem.styles = skip_link_item_styles_default;
40
+ __decorateClass([
41
+ property()
42
+ ], DSASkipLinkItem.prototype, "href", 2);
43
+ DSASkipLinkItem = __decorateClass([
44
+ customElement("dsa-skip-link-item")
45
+ ], DSASkipLinkItem);
46
+
47
+ export {
48
+ DSASkipLinkItem
49
+ };
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  button_styles_default
3
- } from "./chunk.3GJ3KGGY.js";
3
+ } from "./chunk.DXQY7NLW.js";
4
4
 
5
5
  // src/components/checkbox-button/checkbox-button.styles.ts
6
6
  import { css } from "lit";
@@ -18,6 +18,7 @@ var checkbox_button_styles_default = css`
18
18
  .button--toggle {
19
19
  display: inline-flex;
20
20
  align-items: center;
21
+ justify-content: start;
21
22
  background-color: var(--dsa-wc-toggle-button-background-color);
22
23
  border-color: var(--dsa-wc-toggle-button-border-color);
23
24
  color: var(--dsa-wc-toggle-button-color);
@@ -84,11 +85,14 @@ var checkbox_button_styles_default = css`
84
85
  }
85
86
 
86
87
  .button--toggle .button__icon-check {
87
- margin-inline-start: var(--dsa-wc-toggle-button-icon-spacing);
88
+ padding-inline-start: var(--dsa-wc-toggle-button-icon-spacing);
89
+ flex-shrink: 0;
90
+ margin-inline-start: auto;
88
91
  }
89
92
 
90
93
  .button--toggle .button__icon-readonly {
91
- margin-inline-end: var(--dsa-wc-toggle-button-icon-spacing);
94
+ padding-inline-end: var(--dsa-wc-toggle-button-icon-spacing);
95
+ flex-shrink: 0;
92
96
  }
93
97
 
94
98
  /* We use a hidden input so constraint validation errors work, since they don't appear to show when used with buttons.
@@ -104,6 +108,23 @@ var checkbox_button_styles_default = css`
104
108
  opacity: 0;
105
109
  z-index: -1;
106
110
  }
111
+
112
+ /* Add padding to keep check icon space if in vertical checkbox-group */
113
+ :host(.dsa-button-group__button--vertical)
114
+ .button--small:not(.button--checked)
115
+ .button__label {
116
+ padding-right: 16px;
117
+ }
118
+ :host(.dsa-button-group__button--vertical)
119
+ .button--medium:not(.button--checked)
120
+ .button__label {
121
+ padding-right: 18px;
122
+ }
123
+ :host(.dsa-button-group__button--vertical)
124
+ .button--large:not(.button--checked)
125
+ .button__label {
126
+ padding-right: 20px;
127
+ }
107
128
  `;
108
129
 
109
130
  export {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  form_control_styles_default
3
- } from "./chunk.3RBCYA4F.js";
3
+ } from "./chunk.AXG2LFB3.js";
4
4
  import {
5
5
  component_styles_default
6
6
  } from "./chunk.TUVJKY7S.js";
@@ -7,7 +7,7 @@ var form_control_styles_default = css`
7
7
  grid-template:
8
8
  'label tooltip .'
9
9
  'field field field' 1fr
10
- 'helpText helpText helpText'
10
+ 'helpText helpText counter'
11
11
  'errorText errorText errorText'
12
12
  / auto auto minmax(0, 1fr);
13
13
  border: none;
@@ -45,6 +45,12 @@ var form_control_styles_default = css`
45
45
  display: none;
46
46
  }
47
47
 
48
+ .form-control .form-control__counter {
49
+ grid-area: counter;
50
+ display: none;
51
+ margin-inline-start: auto;
52
+ }
53
+
48
54
  .form-control .form-control__error-text {
49
55
  grid-area: errorText;
50
56
  }
@@ -62,6 +68,12 @@ var form_control_styles_default = css`
62
68
  color: var(--dsa-color-input-label-on-base-helper);
63
69
  }
64
70
 
71
+ .form-control--has-counter .form-control__counter {
72
+ display: block;
73
+ color: var(--dsa-color-input-label-on-base-helper);
74
+ animation-delay: 0s;
75
+ }
76
+
65
77
  .form-control--error .form-control__label {
66
78
  color: var(--dsa-wc-error-text-color);
67
79
  }
@@ -79,11 +91,13 @@ var form_control_styles_default = css`
79
91
  }
80
92
 
81
93
  .form-control--small .form-control__help-text,
94
+ .form-control--small .form-control__counter,
82
95
  .form-control--small .form-control__error-text {
83
96
  font: var(--dsa-wc-error-text-font-small);
84
97
  }
85
98
 
86
- .form-control.form-control--small .form-control__help-text {
99
+ .form-control.form-control--small .form-control__help-text,
100
+ .form-control.form-control--small .form-control__counter {
87
101
  padding-top: var(--dsa-spacing-4);
88
102
  }
89
103
 
@@ -104,11 +118,13 @@ var form_control_styles_default = css`
104
118
  }
105
119
 
106
120
  .form-control--medium .form-control__help-text,
121
+ .form-control--medium .form-control__counter,
107
122
  .form-control--medium .form-control__error-text {
108
123
  font: var(--dsa-wc-error-text-font);
109
124
  }
110
125
 
111
- .form-control.form-control--medium .form-control__help-text {
126
+ .form-control.form-control--medium .form-control__help-text,
127
+ .form-control.form-control--medium .form-control__counter {
112
128
  padding-top: var(--dsa-spacing-8);
113
129
  }
114
130
 
@@ -129,17 +145,52 @@ var form_control_styles_default = css`
129
145
  }
130
146
 
131
147
  .form-control--large .form-control__help-text,
148
+ .form-control--large .form-control__counter,
132
149
  .form-control--large .form-control__error-text {
133
150
  font: var(--dsa-wc-error-text-font-large);
134
151
  }
135
152
 
136
- .form-control.form-control--large .form-control__help-text {
153
+ .form-control.form-control--large .form-control__help-text,
154
+ .form-control.form-control--large .form-control__counter {
137
155
  padding-top: var(--dsa-spacing-8);
138
156
  }
139
157
 
140
158
  .form-control.form-control--large .form-control__error-text {
141
159
  padding-top: var(--dsa-spacing-12);
142
160
  }
161
+
162
+ .form-control__counter--animated {
163
+ animation-name: tada;
164
+ animation-duration: 1s;
165
+ }
166
+
167
+ @keyframes tada {
168
+ from {
169
+ transform: scale3d(1, 1, 1);
170
+ }
171
+
172
+ 10%,
173
+ 20% {
174
+ transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
175
+ }
176
+
177
+ 30%,
178
+ 50%,
179
+ 70%,
180
+ 90% {
181
+ transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
182
+ }
183
+
184
+ 40%,
185
+ 60%,
186
+ 80% {
187
+ transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
188
+ }
189
+
190
+ to {
191
+ transform: scale3d(1, 1, 1);
192
+ }
193
+ }
143
194
  `;
144
195
 
145
196
  export {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  form_control_styles_default
3
- } from "./chunk.3RBCYA4F.js";
3
+ } from "./chunk.AXG2LFB3.js";
4
4
  import {
5
5
  component_styles_default
6
6
  } from "./chunk.TUVJKY7S.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  input_mask_styles_default
3
- } from "./chunk.2HV2U4RQ.js";
3
+ } from "./chunk.XRHDURFE.js";
4
4
  import {
5
5
  maskedValueToRawValue,
6
6
  rawValueToMaskedValue,
@@ -7,7 +7,7 @@ import { css } from "lit";
7
7
  var step_styles_default = css`
8
8
  ${component_styles_default}
9
9
 
10
- :host(:first-of-type) .step:before {
10
+ :host(:last-of-type) .step:after {
11
11
  content: unset;
12
12
  }
13
13
 
@@ -15,22 +15,63 @@ var step_styles_default = css`
15
15
  display: grid;
16
16
  position: relative;
17
17
  align-content: start;
18
- grid-template:
19
- 'icon .'
20
- 'index .'
21
- 'title title'
22
- 'content content' 1fr
23
- / auto minmax(0, 1fr);
24
18
  padding-right: var(--dsa-spacing-24);
25
19
  }
26
20
 
27
- .step-container .step-title-container {
28
- grid-area: title;
21
+ .step-container__vertical {
22
+ grid-template: auto auto / auto 1fr;
23
+ }
24
+
25
+ .step {
26
+ height: var(--dsa-wc-stepper-icon-size);
27
+ width: var(--dsa-wc-stepper-icon-size);
28
+ display: flex;
29
+ justify-content: center;
30
+ align-items: center;
31
+ border-radius: var(--dsa-radius-32);
32
+ margin-bottom: var(--dsa-spacing-16);
33
+ border-width: var(--dsa-wc-stepper-icon-border-width);
34
+ border-style: var(--dsa-wc-stepper-icon-border-style);
35
+ }
36
+
37
+ .step-container .step {
38
+ grid-column: 1;
39
+ grid-row: 1;
40
+ }
41
+
42
+ .step:after {
43
+ content: '';
44
+ position: absolute;
45
+ background-color: var(--dsa-wc-stepper-color-progress-default);
46
+ z-index: -1;
47
+ }
48
+
49
+ .step-container__horizontal .step:after {
50
+ height: 1.4px;
51
+ right: var(--dsa-spacing-4);
52
+ width: calc(100% - calc(var(--dsa-spacing-4) + var(--dsa-spacing-32)));
53
+ }
54
+
55
+ .step-container__vertical .step:after {
56
+ width: 1.4px;
57
+ top: calc(var(--dsa-wc-stepper-icon-size) + var(--dsa-spacing-4));
58
+ height: calc(100% - calc(var(--dsa-spacing-4) + var(--dsa-spacing-32)));
59
+ }
60
+
61
+ .step-container__horizontal .step-title-container {
29
62
  display: none;
30
63
  }
31
64
 
65
+ .step-container__vertical .step-content-container {
66
+ grid-column: 2;
67
+ grid-row: 1;
68
+ padding-bottom: 16px;
69
+ padding-left: 16px;
70
+ max-width: 300px;
71
+ }
72
+
32
73
  .step-container--has-title .step-title-container {
33
- display: inline-flex;
74
+ display: flex;
34
75
  }
35
76
 
36
77
  .step-title {
@@ -39,40 +80,18 @@ var step_styles_default = css`
39
80
  }
40
81
 
41
82
  .step-tooltip {
83
+ --dsa-wc-internal-icon-button-padding: var(--dsa-spacing-2);
84
+
42
85
  display: inline-block;
43
86
  margin-left: auto;
44
87
  position: relative;
45
88
  top: 2px;
46
89
  }
47
90
 
48
- .step:before {
49
- content: '';
50
- position: absolute;
51
- width: 100%;
52
- height: 1.4px;
53
- background-color: var(--dsa-wc-stepper-color-progress-default);
54
- right: calc(100% + var(--dsa-spacing-4));
55
- width: calc(100% - calc(var(--dsa-spacing-4) + var(--dsa-spacing-32)));
56
- z-index: -1;
57
- }
58
-
59
91
  .step--complete:before {
60
92
  background-color: var(--dsa-wc-stepper-color-progress-complete);
61
93
  }
62
94
 
63
- .step {
64
- grid-area: icon;
65
- height: var(--dsa-wc-stepper-icon-size);
66
- width: var(--dsa-wc-stepper-icon-size);
67
- display: flex;
68
- justify-content: center;
69
- align-items: center;
70
- border-radius: var(--dsa-radius-32);
71
- border-width: var(--dsa-wc-stepper-icon-border-width);
72
- border-style: var(--dsa-wc-stepper-icon-border-style);
73
- margin-bottom: var(--dsa-spacing-16);
74
- }
75
-
76
95
  .step--default {
77
96
  border-color: var(--dsa-wc-stepper-color-tag-blocked-base);
78
97
  }
@@ -107,7 +126,6 @@ var step_styles_default = css`
107
126
  }
108
127
 
109
128
  .step-container .step-content {
110
- grid-area: content;
111
129
  display: none;
112
130
  }
113
131
 
@@ -120,7 +138,6 @@ var step_styles_default = css`
120
138
  }
121
139
 
122
140
  .step-index {
123
- grid-area: index;
124
141
  margin: 0;
125
142
  margin-bottom: var(--dsa-spacing-4);
126
143
  text-transform: uppercase;
@@ -0,0 +1,35 @@
1
+ import {
2
+ component_styles_default
3
+ } from "./chunk.TUVJKY7S.js";
4
+
5
+ // src/components/skip-links/skip-links.styles.ts
6
+ import { css } from "lit";
7
+ var skip_links_styles_default = css`
8
+ ${component_styles_default}
9
+
10
+ .skip-links {
11
+ position: absolute;
12
+ left: -9999px;
13
+ overflow: hidden;
14
+ }
15
+
16
+ .skip-links:focus-within {
17
+ position: static;
18
+ background: var(--dsa-wc-skip-link-on-layer-background);
19
+ padding: var(--dsa-wc-skip-link-padding-y) var(--dsa-wc-skip-link-padding-x);
20
+ }
21
+
22
+ .skip-links__list {
23
+ list-style-type: none;
24
+ display: flex;
25
+ flex-direction: row;
26
+ flex-wrap: wrap;
27
+ padding: var(--dsa-wc-skip-link-list-padding);
28
+ align-items: center;
29
+ gap: var(--dsa-wc-skip-link-list-gap);
30
+ }
31
+ `;
32
+
33
+ export {
34
+ skip_links_styles_default
35
+ };
@@ -242,6 +242,9 @@ var button_styles_default = css`
242
242
  }
243
243
 
244
244
  /* Tertiary */
245
+ .button--tertiary {
246
+ padding: 0;
247
+ }
245
248
  /* Tertiary/On Base */
246
249
  .button--on-base.button--tertiary {
247
250
  background-color: var(--dsa-wc-button-tertiary-on-base-color);
@@ -312,6 +315,9 @@ var button_styles_default = css`
312
315
  }
313
316
 
314
317
  /* Navigation */
318
+ .button--navigation {
319
+ padding: 0;
320
+ }
315
321
  /* Navigation/On Base */
316
322
  .button--on-base.button--navigation {
317
323
  background-color: var(--dsa-wc-button-navigation-on-base-color);
@@ -669,6 +675,7 @@ var button_styles_default = css`
669
675
  .dsa-button-group__button:not(
670
676
  .dsa-button-group__button--first,
671
677
  .dsa-button-group__button--radio,
678
+ .dsa-button-group__button--checkbox,
672
679
  [variant='default']
673
680
  ):not(:hover)
674
681
  )
@@ -692,6 +699,16 @@ var button_styles_default = css`
692
699
  :host(.dsa-button-group__button[checked]) {
693
700
  z-index: 2;
694
701
  }
702
+
703
+ /* Limit width if inside a vertical button-group */
704
+ :host(.dsa-button-group__button--vertical) {
705
+ max-width: 400px;
706
+ }
707
+ :host(.dsa-button-group__button--vertical) .button__label {
708
+ display: block;
709
+ overflow: hidden;
710
+ text-overflow: ellipsis;
711
+ }
695
712
  `;
696
713
 
697
714
  export {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  form_control_styles_default
3
- } from "./chunk.3RBCYA4F.js";
3
+ } from "./chunk.AXG2LFB3.js";
4
4
  import {
5
5
  component_styles_default
6
6
  } from "./chunk.TUVJKY7S.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  select_styles_default
3
- } from "./chunk.D6DEGG4H.js";
3
+ } from "./chunk.Z2QW2HUR.js";
4
4
  import {
5
5
  scrollIntoView
6
6
  } from "./chunk.EMIT7S33.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  icon_button_styles_default
3
- } from "./chunk.QFJA3MTV.js";
3
+ } from "./chunk.YDCBGMSA.js";
4
4
  import {
5
5
  ifDefinedAndNotEmpty
6
6
  } from "./chunk.ZQJVCRB2.js";
@@ -23,6 +23,7 @@ var DSAIconButton = class extends ShoelaceElement {
23
23
  this.disableTabIndex = false;
24
24
  this.label = "";
25
25
  this.disabled = false;
26
+ this.variant = "default";
26
27
  }
27
28
  handleBlur() {
28
29
  this.hasFocus = false;
@@ -58,6 +59,11 @@ var DSAIconButton = class extends ShoelaceElement {
58
59
  part="base"
59
60
  class=${classMap({
60
61
  "icon-button": true,
62
+ "icon-button--default": this.variant === "default",
63
+ "icon-button--primary": this.variant === "primary",
64
+ "icon-button--secondary": this.variant === "secondary",
65
+ "icon-button--tertiary": this.variant === "tertiary",
66
+ "icon-button--danger": this.variant === "danger",
61
67
  "icon-button--disabled": !isLink && this.disabled,
62
68
  "icon-button--focused": this.hasFocus
63
69
  })}
@@ -121,6 +127,9 @@ __decorateClass([
121
127
  __decorateClass([
122
128
  property({ type: Boolean, reflect: true })
123
129
  ], DSAIconButton.prototype, "disabled", 2);
130
+ __decorateClass([
131
+ property()
132
+ ], DSAIconButton.prototype, "variant", 2);
124
133
  DSAIconButton = __decorateClass([
125
134
  customElement("dsa-icon-button")
126
135
  ], DSAIconButton);
@@ -0,0 +1,88 @@
1
+ import {
2
+ stepper_styles_default
3
+ } from "./chunk.QATKXCGU.js";
4
+ import {
5
+ watch
6
+ } from "./chunk.6IH66JBY.js";
7
+ import {
8
+ ShoelaceElement
9
+ } from "./chunk.YCXTCVAZ.js";
10
+ import {
11
+ __decorateClass
12
+ } from "./chunk.6M63UXML.js";
13
+
14
+ // src/components/stepper/stepper.ts
15
+ import { html } from "lit";
16
+ import { customElement, property } from "lit/decorators.js";
17
+ import { classMap } from "lit/directives/class-map.js";
18
+ var STEP_TAG = "dsa-step";
19
+ var DSAStepper = class extends ShoelaceElement {
20
+ constructor() {
21
+ super(...arguments);
22
+ this.hideLabel = false;
23
+ this.vertical = false;
24
+ }
25
+ connectedCallback() {
26
+ super.connectedCallback();
27
+ }
28
+ // Gets an array of all <dsa-step> elements
29
+ getAllSteps() {
30
+ return [...this.querySelectorAll(STEP_TAG)];
31
+ }
32
+ handleDefaultSlotChange() {
33
+ const allSteps = this.getAllSteps();
34
+ if (customElements.get(STEP_TAG)) {
35
+ allSteps.forEach((step, index) => {
36
+ step.index = this.hideLabel ? void 0 : index;
37
+ step.vertical = this.vertical;
38
+ });
39
+ } else {
40
+ customElements.whenDefined(STEP_TAG).then(() => this.handleDefaultSlotChange());
41
+ }
42
+ }
43
+ handleHideLabelChange() {
44
+ const allSteps = this.getAllSteps();
45
+ allSteps.forEach((step, index) => {
46
+ step.index = this.hideLabel ? void 0 : index;
47
+ });
48
+ }
49
+ handleVerticalChange() {
50
+ const allSteps = this.getAllSteps();
51
+ allSteps.forEach((step) => {
52
+ step.vertical = this.vertical;
53
+ });
54
+ }
55
+ render() {
56
+ return html`
57
+ <div
58
+ role="list"
59
+ class=${classMap({
60
+ stepper: true,
61
+ stepper__vertical: this.vertical
62
+ })}
63
+ >
64
+ <slot @slotchange=${this.handleDefaultSlotChange}> </slot>
65
+ </div>
66
+ `;
67
+ }
68
+ };
69
+ DSAStepper.styles = stepper_styles_default;
70
+ __decorateClass([
71
+ property({ type: Boolean, attribute: "hide-label" })
72
+ ], DSAStepper.prototype, "hideLabel", 2);
73
+ __decorateClass([
74
+ property({ type: Boolean })
75
+ ], DSAStepper.prototype, "vertical", 2);
76
+ __decorateClass([
77
+ watch("hideLabel", { waitUntilFirstUpdate: true })
78
+ ], DSAStepper.prototype, "handleHideLabelChange", 1);
79
+ __decorateClass([
80
+ watch("vertical", { waitUntilFirstUpdate: true })
81
+ ], DSAStepper.prototype, "handleVerticalChange", 1);
82
+ DSAStepper = __decorateClass([
83
+ customElement("dsa-stepper")
84
+ ], DSAStepper);
85
+
86
+ export {
87
+ DSAStepper
88
+ };