@ds-autonomie/web-components 1.4.0 → 1.6.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 (186) hide show
  1. package/CHANGELOG.md +32 -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.AO3M5GSN.js → chunk.2SUJL5O6.js} +1 -1
  5. package/dist/chunks/{chunk.C7CCBBLF.js → chunk.3QQPH6YB.js} +3 -1
  6. package/dist/chunks/{chunk.TSK67ZZE.js → chunk.5YABZV2L.js} +2 -2
  7. package/dist/chunks/{chunk.XV2S7PIY.js → chunk.6DSM44NV.js} +1 -1
  8. package/dist/chunks/{chunk.5ND4OP7Q.js → chunk.6SWOU4CL.js} +1 -1
  9. package/dist/chunks/{chunk.IV2XMACC.js → chunk.6Y5VNWAK.js} +7 -7
  10. package/dist/chunks/{chunk.E7NM6WTF.js → chunk.7F5X7SQN.js} +1 -1
  11. package/dist/chunks/{chunk.A3UKO7AU.js → chunk.7WQVFO44.js} +24 -3
  12. package/dist/chunks/{chunk.MTZZV3NB.js → chunk.AQC66RY2.js} +1 -1
  13. package/dist/chunks/chunk.ATDDIVPX.js +87 -0
  14. package/dist/chunks/{chunk.3RBCYA4F.js → chunk.AXG2LFB3.js} +55 -4
  15. package/dist/chunks/{chunk.5DKPV25M.js → chunk.B5NS5VQR.js} +1 -1
  16. package/dist/chunks/{chunk.O4XPNLT4.js → chunk.B6CXFMFM.js} +1 -1
  17. package/dist/chunks/{chunk.HCQNPYQZ.js → chunk.CBFLGIED.js} +1 -1
  18. package/dist/chunks/chunk.CHM74JXS.js +74 -0
  19. package/dist/chunks/{chunk.RVUFDCSS.js → chunk.CICCL52W.js} +1 -1
  20. package/dist/chunks/{chunk.7BYKP4SA.js → chunk.CKDL37GT.js} +2 -0
  21. package/dist/chunks/{chunk.3Y56GJS7.js → chunk.CSQ2UP6E.js} +31 -6
  22. package/dist/chunks/{chunk.WF42CVOM.js → chunk.DDLGH65N.js} +4 -4
  23. package/dist/chunks/{chunk.YRBTSDUN.js → chunk.DQNPP74X.js} +53 -36
  24. package/dist/chunks/{chunk.DXP3BNWO.js → chunk.DUJFQEVS.js} +1 -1
  25. package/dist/chunks/{chunk.3GJ3KGGY.js → chunk.DXQY7NLW.js} +17 -0
  26. package/dist/chunks/chunk.EVHNFCQF.js +121 -0
  27. package/dist/chunks/{chunk.FSXPFNBX.js → chunk.FFFHQKNB.js} +1 -1
  28. package/dist/chunks/{chunk.LC54322H.js → chunk.FYTGBKGY.js} +8 -4
  29. package/dist/chunks/{chunk.GY5KJYSY.js → chunk.HCI6BR7B.js} +34 -74
  30. package/dist/chunks/{chunk.P7QMP76I.js → chunk.HDSA2CY2.js} +1 -1
  31. package/dist/chunks/{chunk.YY6AEXJK.js → chunk.HXH4JLAN.js} +1 -1
  32. package/dist/chunks/{chunk.EXIGM5NV.js → chunk.K2ICEURU.js} +10 -1
  33. package/dist/chunks/{chunk.BNJQHJKO.js → chunk.KFZV2L7L.js} +1 -1
  34. package/dist/chunks/{chunk.4TRQBTMY.js → chunk.KGPFHLUW.js} +2 -2
  35. package/dist/chunks/chunk.KTY3ESVG.js +88 -0
  36. package/dist/chunks/chunk.KUXAIXES.js +69 -0
  37. package/dist/chunks/{chunk.JT7UJED5.js → chunk.LSECPSSR.js} +1 -1
  38. package/dist/chunks/{chunk.VRU3XH45.js → chunk.M3FN3PFT.js} +1 -1
  39. package/dist/chunks/{chunk.SCNCYZ35.js → chunk.M7UZ33WG.js} +1 -1
  40. package/dist/chunks/{chunk.IH3JU5S6.js → chunk.NMOENRSD.js} +1 -1
  41. package/dist/chunks/{chunk.5NO4YOTV.js → chunk.NQSQUH4H.js} +25 -17
  42. package/dist/chunks/{chunk.7J7CS3BK.js → chunk.O2PIWM25.js} +1 -1
  43. package/dist/chunks/{chunk.5324JGM4.js → chunk.OUVQZNJQ.js} +28 -3
  44. package/dist/chunks/{chunk.N3ADQCT7.js → chunk.PZTXAAW2.js} +27 -3
  45. package/dist/chunks/chunk.Q62BRBYD.js +68 -0
  46. package/dist/chunks/{chunk.2WSMYCPC.js → chunk.QATKXCGU.js} +4 -0
  47. package/dist/chunks/{chunk.WE6IG5XG.js → chunk.R4PCVUXB.js} +1 -1
  48. package/dist/chunks/{chunk.I33L3NO6.js → chunk.RB6TMBWW.js} +5 -0
  49. package/dist/chunks/{chunk.D2QVNPSR.js → chunk.RJBMUBMI.js} +4 -4
  50. package/dist/chunks/{chunk.BL4IZFBA.js → chunk.RNLKSRKQ.js} +2 -1
  51. package/dist/chunks/{chunk.T4H7RAXS.js → chunk.RV652CSU.js} +4 -4
  52. package/dist/chunks/chunk.RXBDBWWT.js +60 -0
  53. package/dist/chunks/{chunk.UQYPPFBJ.js → chunk.TMG7TJJO.js} +2 -1
  54. package/dist/chunks/chunk.U24CXNHC.js +38 -0
  55. package/dist/chunks/{chunk.PCT24AYO.js → chunk.VLRL3RJT.js} +1 -1
  56. package/dist/chunks/chunk.WI3DWLXW.js +99 -0
  57. package/dist/chunks/{chunk.BGNHUCCD.js → chunk.WK3IHF2A.js} +1 -1
  58. package/dist/chunks/{chunk.XCG5TV7T.js → chunk.WLJH2IWB.js} +2 -2
  59. package/dist/chunks/chunk.X3FXKNLH.js +92 -0
  60. package/dist/chunks/{chunk.4XH7INOL.js → chunk.XQZX6LVO.js} +1 -1
  61. package/dist/chunks/{chunk.2HV2U4RQ.js → chunk.XRHDURFE.js} +1 -1
  62. package/dist/chunks/chunk.YDCBGMSA.js +161 -0
  63. package/dist/chunks/{chunk.BHLKMLHB.js → chunk.YS2LUMKB.js} +33 -23
  64. package/dist/chunks/{chunk.VRY3E2XG.js → chunk.YZ66DKLU.js} +1 -1
  65. package/dist/chunks/{chunk.D6DEGG4H.js → chunk.Z2QW2HUR.js} +1 -1
  66. package/dist/chunks/{chunk.N5ZXUW7H.js → chunk.Z7QPOCQO.js} +1 -1
  67. package/dist/chunks/chunk.ZC74GTBL.js +39 -0
  68. package/dist/chunks/{chunk.NHYFVEGM.js → chunk.ZR7AGQFC.js} +1 -1
  69. package/dist/components/accordion/accordion.d.ts +3 -1
  70. package/dist/components/accordion/accordion.js +7 -7
  71. package/dist/components/accordion/accordion.styles.js +1 -1
  72. package/dist/components/alert/alert.js +8 -8
  73. package/dist/components/animation/animation.d.ts +1 -1
  74. package/dist/components/avatar/avatar.js +5 -5
  75. package/dist/components/breadcrumb/breadcrumb.js +6 -6
  76. package/dist/components/breadcrumb-item/breadcrumb-item.js +2 -2
  77. package/dist/components/button/button.d.ts +1 -1
  78. package/dist/components/button/button.js +8 -8
  79. package/dist/components/button/button.styles.js +1 -1
  80. package/dist/components/checkbox/checkbox.js +7 -7
  81. package/dist/components/checkbox/checkbox.styles.js +2 -2
  82. package/dist/components/checkbox-button/checkbox-button.d.ts +1 -1
  83. package/dist/components/checkbox-button/checkbox-button.js +7 -7
  84. package/dist/components/checkbox-button/checkbox-button.styles.js +2 -2
  85. package/dist/components/checkbox-group/checkbox-group.js +3 -3
  86. package/dist/components/checkbox-group/checkbox-group.styles.js +2 -2
  87. package/dist/components/combobox/combobox.d.ts +8 -15
  88. package/dist/components/combobox/combobox.js +12 -13
  89. package/dist/components/combobox/combobox.styles.js +2 -2
  90. package/dist/components/dialog/dialog.js +9 -9
  91. package/dist/components/download-card/download-card.d.ts +35 -0
  92. package/dist/components/download-card/download-card.js +19 -0
  93. package/dist/components/download-card/download-card.styles.d.ts +2 -0
  94. package/dist/components/download-card/download-card.styles.js +7 -0
  95. package/dist/components/download-link/download-link.d.ts +36 -0
  96. package/dist/components/download-link/download-link.js +19 -0
  97. package/dist/components/download-link/download-link.styles.d.ts +2 -0
  98. package/dist/components/download-link/download-link.styles.js +7 -0
  99. package/dist/components/drawer/drawer.js +9 -9
  100. package/dist/components/dropdown/dropdown.js +2 -2
  101. package/dist/components/error-message-panel/error-message-panel.d.ts +23 -0
  102. package/dist/components/error-message-panel/error-message-panel.js +11 -0
  103. package/dist/components/error-message-panel/error-message-panel.styles.d.ts +2 -0
  104. package/dist/components/error-message-panel/error-message-panel.styles.js +7 -0
  105. package/dist/components/format-bytes/format-bytes.js +2 -2
  106. package/dist/components/format-date/format-date.js +2 -2
  107. package/dist/components/format-number/format-number.js +2 -2
  108. package/dist/components/icon/icon.js +4 -4
  109. package/dist/components/icon/library.js +2 -2
  110. package/dist/components/icon/library.system.js +1 -1
  111. package/dist/components/icon-button/icon-button.d.ts +3 -1
  112. package/dist/components/icon-button/icon-button.js +6 -6
  113. package/dist/components/icon-button/icon-button.styles.js +1 -1
  114. package/dist/components/input/input.d.ts +3 -0
  115. package/dist/components/input/input.js +8 -8
  116. package/dist/components/input/input.styles.js +2 -2
  117. package/dist/components/input-mask/input-mask.js +4 -4
  118. package/dist/components/input-mask/input-mask.styles.js +2 -2
  119. package/dist/components/input-phone/input-phone.js +18 -18
  120. package/dist/components/input-phone/input-phone.styles.js +2 -2
  121. package/dist/components/menu-item/menu-item.js +4 -4
  122. package/dist/components/option/option.js +6 -6
  123. package/dist/components/progress-bar/progress-bar.js +2 -2
  124. package/dist/components/radio/radio.js +4 -4
  125. package/dist/components/radio-button/radio-button.d.ts +1 -1
  126. package/dist/components/radio-button/radio-button.js +3 -3
  127. package/dist/components/radio-button/radio-button.styles.js +2 -2
  128. package/dist/components/radio-group/radio-group.js +3 -3
  129. package/dist/components/radio-group/radio-group.styles.js +2 -2
  130. package/dist/components/relative-time/relative-time.js +2 -2
  131. package/dist/components/select/select.js +11 -11
  132. package/dist/components/select/select.styles.js +2 -2
  133. package/dist/components/skip-link-item/skip-link-item.d.ts +26 -0
  134. package/dist/components/skip-link-item/skip-link-item.js +10 -0
  135. package/dist/components/skip-link-item/skip-link-item.styles.d.ts +2 -0
  136. package/dist/components/skip-link-item/skip-link-item.styles.js +8 -0
  137. package/dist/components/skip-links/skip-links.d.ts +23 -0
  138. package/dist/components/skip-links/skip-links.js +10 -0
  139. package/dist/components/skip-links/skip-links.styles.d.ts +2 -0
  140. package/dist/components/skip-links/skip-links.styles.js +8 -0
  141. package/dist/components/spinner/spinner.js +2 -2
  142. package/dist/components/step/step.d.ts +3 -1
  143. package/dist/components/step/step.js +7 -7
  144. package/dist/components/step/step.styles.js +1 -1
  145. package/dist/components/stepper/stepper.d.ts +5 -1
  146. package/dist/components/stepper/stepper.js +3 -2
  147. package/dist/components/stepper/stepper.styles.js +1 -1
  148. package/dist/components/tab/tab.js +2 -2
  149. package/dist/components/tab-group/tab-group.js +2 -2
  150. package/dist/components/tag/tag.js +8 -8
  151. package/dist/components/textarea/textarea.d.ts +3 -0
  152. package/dist/components/textarea/textarea.js +3 -3
  153. package/dist/components/textarea/textarea.styles.js +2 -2
  154. package/dist/components/tooltip/tooltip.js +2 -2
  155. package/dist/components/tree/tree.js +12 -12
  156. package/dist/components/tree-item/tree-item.js +10 -10
  157. package/dist/custom-elements.json +747 -83
  158. package/dist/design-system.d.ts +5 -0
  159. package/dist/design-system.js +107 -83
  160. package/dist/events/dsa-focus-in.d.ts +7 -0
  161. package/dist/events/dsa-focus-in.js +1 -0
  162. package/dist/events/dsa-focus-out.d.ts +7 -0
  163. package/dist/events/dsa-focus-out.js +1 -0
  164. package/dist/internal/components/button-group/button-group.d.ts +1 -0
  165. package/dist/internal/components/button-group/button-group.js +9 -1
  166. package/dist/internal/components/button-group/button-group.styles.js +10 -0
  167. package/dist/styles/form-control.styles.js +55 -4
  168. package/dist/themes/dsa-wc-theme.css +215 -26
  169. package/dist/themes/dsa-wc-theme.min.css +1 -1
  170. package/dist/themes/dsa-wc-theme.styles.js +222 -26
  171. package/dist/translations/en-gb.js +1 -1
  172. package/dist/translations/en.js +1 -1
  173. package/dist/translations/fr.js +1 -1
  174. package/dist/utilities/icon-library.js +2 -2
  175. package/dist/utilities/localize.d.ts +1 -0
  176. package/dist/utilities/localize.js +1 -1
  177. package/dist/utilities/storybook.d.ts +3 -1
  178. package/dist/utilities/storybook.js +35 -0
  179. package/dist/vscode.html-custom-data.json +160 -4
  180. package/dist/web-types.json +417 -34
  181. package/package.json +3 -3
  182. package/dist/chunks/chunk.HRBNFVC5.js +0 -16
  183. package/dist/chunks/chunk.QFJA3MTV.js +0 -66
  184. package/dist/chunks/chunk.QSNJ4FV6.js +0 -54
  185. package/dist/utilities/debounce.d.ts +0 -1
  186. package/dist/utilities/debounce.js +0 -7
package/CHANGELOG.md CHANGED
@@ -1,5 +1,37 @@
1
1
  # @ds-autonomie/web-components
2
2
 
3
+ ## 1.6.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 9c16827: `error-message-panel`: implémentation du panneau de message d'erreur utilisable lorsqu'une page n'existe pas
8
+ - e86df51: `download-link`, `download-card` : implémentation des composants download-link et download-card
9
+ - 8f5529f: `combobox` : utilisation de l'évenement dsa-input pour la recherche asynchrone
10
+
11
+ ### Patch Changes
12
+
13
+ - cc3eb57: `skip-links`: correction d'un bug d'affichage des skip-link-item
14
+ - 88054cd: `accordion` : ajout de la possibilité d'avoir un aria-level sur l'en-tête
15
+ - Updated dependencies [e86df51]
16
+ - @ds-autonomie/assets@1.2.0
17
+
18
+ ## 1.5.0
19
+
20
+ ### Minor Changes
21
+
22
+ - 2b16f19: `icon-button`: ajout de l'attribut variant sur le composant icon-button
23
+ - 3509713: `skip-link`, `skip-link-item`: implémentation des composants skip-link et skip-link-item
24
+ - bf441fa: `stepper`: ajout du mode vertical sur le composant stepper
25
+ - 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.
26
+ 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`.
27
+ - 6cfe8f7: montée de version majeure de la dépendance Typescript (version 5.x)
28
+ - bcef624: `input`, `textarea`: ajout de l'attribut `counter` pour afficher le compteur de caractères
29
+
30
+ ### Patch Changes
31
+
32
+ - 487b6f4: `combobox`: correction sur l'utilisation du slot par défaut sur le composant combobox
33
+ - @ds-autonomie/assets@1.1.1
34
+
3
35
  ## 1.4.0
4
36
 
5
37
  ### 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,
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk.NHRDZGLI.js";
4
4
  import {
5
5
  DSAIcon
6
- } from "./chunk.VRU3XH45.js";
6
+ } from "./chunk.M3FN3PFT.js";
7
7
  import {
8
8
  watch
9
9
  } from "./chunk.6IH66JBY.js";
@@ -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.
@@ -7,10 +7,10 @@ import {
7
7
  } from "./chunk.YIY5RM53.js";
8
8
  import {
9
9
  button_styles_default
10
- } from "./chunk.3GJ3KGGY.js";
10
+ } from "./chunk.DXQY7NLW.js";
11
11
  import {
12
12
  LocalizeController
13
- } from "./chunk.7BYKP4SA.js";
13
+ } from "./chunk.CKDL37GT.js";
14
14
  import {
15
15
  watch
16
16
  } from "./chunk.6IH66JBY.js";
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk.V7RJROLH.js";
13
13
  import {
14
14
  LocalizeController
15
- } from "./chunk.7BYKP4SA.js";
15
+ } from "./chunk.CKDL37GT.js";
16
16
  import {
17
17
  watch
18
18
  } from "./chunk.6IH66JBY.js";
@@ -11,7 +11,7 @@ import {
11
11
  } from "./chunk.V7RJROLH.js";
12
12
  import {
13
13
  LocalizeController
14
- } from "./chunk.7BYKP4SA.js";
14
+ } from "./chunk.CKDL37GT.js";
15
15
  import {
16
16
  watch
17
17
  } from "./chunk.6IH66JBY.js";
@@ -1,12 +1,6 @@
1
1
  import {
2
2
  DSASelect
3
- } from "./chunk.XCG5TV7T.js";
4
- import {
5
- PhoneConfig
6
- } from "./chunk.UCJGKOXX.js";
7
- import {
8
- input_phone_styles_default
9
- } from "./chunk.NHYFVEGM.js";
3
+ } from "./chunk.WLJH2IWB.js";
10
4
  import {
11
5
  frenchFlag,
12
6
  frenchNumberPrefix,
@@ -18,6 +12,12 @@ import {
18
12
  rawValueToMaskedValue,
19
13
  stripSpecialChars
20
14
  } from "./chunk.7OLEA3GQ.js";
15
+ import {
16
+ PhoneConfig
17
+ } from "./chunk.UCJGKOXX.js";
18
+ import {
19
+ input_phone_styles_default
20
+ } from "./chunk.ZR7AGQFC.js";
21
21
  import {
22
22
  defaultValue
23
23
  } from "./chunk.CMJ2SRTL.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  LocalizeController
3
- } from "./chunk.7BYKP4SA.js";
3
+ } from "./chunk.CKDL37GT.js";
4
4
  import {
5
5
  ShoelaceElement
6
6
  } from "./chunk.YCXTCVAZ.js";
@@ -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";
@@ -0,0 +1,87 @@
1
+ import {
2
+ error_message_panel_styles_default
3
+ } from "./chunk.KUXAIXES.js";
4
+ import {
5
+ HasSlotController
6
+ } from "./chunk.YIY5RM53.js";
7
+ import {
8
+ LocalizeController
9
+ } from "./chunk.CKDL37GT.js";
10
+ import {
11
+ ShoelaceElement
12
+ } from "./chunk.YCXTCVAZ.js";
13
+ import {
14
+ __decorateClass
15
+ } from "./chunk.6M63UXML.js";
16
+
17
+ // src/components/error-message-panel/error-message-panel.ts
18
+ import { html } from "lit";
19
+ import { customElement, property } from "lit/decorators.js";
20
+ import { classMap } from "lit/directives/class-map.js";
21
+ var DSAErrorMessagePanel = class extends ShoelaceElement {
22
+ constructor() {
23
+ super(...arguments);
24
+ this.localize = new LocalizeController(this);
25
+ this.hasSlotController = new HasSlotController(
26
+ this,
27
+ "description",
28
+ "action",
29
+ "error-code"
30
+ );
31
+ this.errorCode = "";
32
+ }
33
+ render() {
34
+ const hasDescription = this.hasSlotController.test("description");
35
+ const hasAction = this.hasSlotController.test("action");
36
+ const hasErrorCode = this.errorCode ? true : this.hasSlotController.test("error-code");
37
+ return html`
38
+ <div part="base">
39
+ <div class="top-left-quarter-circle">
40
+ <svg viewBox="0 0 150 60" width="150" height="60">
41
+ <path
42
+ fill="#D4D90D"
43
+ d="M150-39.398V-90c-20.118 0-69.498 9.036-106.075 45.18C7.347-8.674-.578 40.12.032 60h49.38c0-73.735 67.059-96.988 100.588-99.398Z"
44
+ />
45
+ </svg>
46
+ </div>
47
+ <div
48
+ class=${classMap({
49
+ "error-message-panel": true,
50
+ "error-message-panel--has-description": hasDescription,
51
+ "error-message-panel--has-action": hasAction,
52
+ "error-message-panel--has-error-code": hasErrorCode
53
+ })}
54
+ >
55
+ <slot part="title" class="error-message-panel__title"></slot>
56
+ <p part="error-code">
57
+ ${this.localize.term("errorMessagePanelCodePrefix")}<slot
58
+ name="error-code"
59
+ >${this.errorCode}</slot
60
+ >
61
+ </p>
62
+ <slot name="description" part="description"></slot>
63
+ <slot name="action" part="action"></slot>
64
+ </div>
65
+ <div class="bottom-right-quarter-circle">
66
+ <svg viewBox="0 0 241 101" width="241" height="101">
67
+ <path
68
+ fill="#530ABC"
69
+ d="M0 158.889V241c35.19-2.133 104.504-17.062 161.249-73.58C219.783 109.12 236.735 47.987 241 0h-78.912C143.96 111.969 53.394 154.984 0 158.889Z"
70
+ />
71
+ </svg>
72
+ </div>
73
+ </div>
74
+ `;
75
+ }
76
+ };
77
+ DSAErrorMessagePanel.styles = error_message_panel_styles_default;
78
+ __decorateClass([
79
+ property({ attribute: "error-code" })
80
+ ], DSAErrorMessagePanel.prototype, "errorCode", 2);
81
+ DSAErrorMessagePanel = __decorateClass([
82
+ customElement("dsa-error-message-panel")
83
+ ], DSAErrorMessagePanel);
84
+
85
+ export {
86
+ DSAErrorMessagePanel
87
+ };
@@ -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 {
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk.FIGO7UV2.js";
4
4
  import {
5
5
  LocalizeController
6
- } from "./chunk.7BYKP4SA.js";
6
+ } from "./chunk.CKDL37GT.js";
7
7
  import {
8
8
  watch
9
9
  } from "./chunk.6IH66JBY.js";
@@ -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";
@@ -14,7 +14,7 @@ import {
14
14
  } from "./chunk.V7RJROLH.js";
15
15
  import {
16
16
  LocalizeController
17
- } from "./chunk.7BYKP4SA.js";
17
+ } from "./chunk.CKDL37GT.js";
18
18
  import {
19
19
  watch
20
20
  } from "./chunk.6IH66JBY.js";
@@ -0,0 +1,74 @@
1
+ import {
2
+ skip_links_styles_default
3
+ } from "./chunk.ZC74GTBL.js";
4
+ import {
5
+ ShoelaceElement
6
+ } from "./chunk.YCXTCVAZ.js";
7
+ import {
8
+ __decorateClass
9
+ } from "./chunk.6M63UXML.js";
10
+
11
+ // src/components/skip-links/skip-links.ts
12
+ import { html } from "lit";
13
+ import { customElement, state } from "lit/decorators.js";
14
+ var LINK_ITEM_TAG = "dsa-skip-link-item";
15
+ var DSASkipLinks = class extends ShoelaceElement {
16
+ constructor() {
17
+ super(...arguments);
18
+ this.allLinks = [];
19
+ }
20
+ connectedCallback() {
21
+ super.connectedCallback();
22
+ this.allLinks = this.getAllLinks();
23
+ }
24
+ disconnectedCallback() {
25
+ super.disconnectedCallback();
26
+ }
27
+ // Gets an array of all <dsa-skip-link-item> elements
28
+ getAllLinks() {
29
+ const linksNode = this.querySelectorAll(LINK_ITEM_TAG);
30
+ const allLinks = [];
31
+ linksNode.forEach((option) => {
32
+ const clonedOption = option.cloneNode(true);
33
+ allLinks.push(clonedOption);
34
+ });
35
+ return allLinks;
36
+ }
37
+ handleDefaultSlotChange() {
38
+ if (customElements.get(LINK_ITEM_TAG)) {
39
+ this.allLinks = this.getAllLinks();
40
+ } else {
41
+ customElements.whenDefined(LINK_ITEM_TAG).then(() => this.handleDefaultSlotChange());
42
+ }
43
+ }
44
+ render() {
45
+ return html`
46
+ <div part="base" class="skip-links">
47
+ <nav>
48
+ <ul class="skip-links__list">
49
+ ${this.allLinks.map((link, index) => {
50
+ return html` <li key="link-${index}">${link}</li> `;
51
+ })}
52
+ </ul>
53
+ </nav>
54
+ <slot
55
+ tabindex="-1"
56
+ class="slot_links"
57
+ @slotchange=${this.handleDefaultSlotChange}
58
+ >
59
+ </slot>
60
+ </div>
61
+ `;
62
+ }
63
+ };
64
+ DSASkipLinks.styles = skip_links_styles_default;
65
+ __decorateClass([
66
+ state()
67
+ ], DSASkipLinks.prototype, "allLinks", 2);
68
+ DSASkipLinks = __decorateClass([
69
+ customElement("dsa-skip-links")
70
+ ], DSASkipLinks);
71
+
72
+ export {
73
+ DSASkipLinks
74
+ };
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk.EMIT7S33.js";
7
7
  import {
8
8
  LocalizeController
9
- } from "./chunk.7BYKP4SA.js";
9
+ } from "./chunk.CKDL37GT.js";
10
10
  import {
11
11
  watch
12
12
  } from "./chunk.6IH66JBY.js";
@@ -43,6 +43,7 @@ var translation = {
43
43
  stepCompleted: "\xC9tape valid\xE9e",
44
44
  stepInProgress: "\xC9tape en cours",
45
45
  stepError: "\xC9tape en erreur",
46
+ errorMessagePanelCodePrefix: "Code d'erreur: ",
46
47
  // countries
47
48
  fr_FR: "France",
48
49
  fr_GP: "Guadeloupe",
@@ -100,6 +101,7 @@ var translation2 = {
100
101
  stepCompleted: "Step completed",
101
102
  stepInProgress: "Step in progress",
102
103
  stepError: "Step in error",
104
+ errorMessagePanelCodePrefix: "Error code: ",
103
105
  // countries
104
106
  fr_FR: "France",
105
107
  fr_GP: "Guadeloupe",
@@ -1,10 +1,10 @@
1
- import {
2
- input_styles_default
3
- } from "./chunk.MTZZV3NB.js";
4
1
  import {
5
2
  getOverridenIconDetails,
6
3
  isPrefixIconOverriden
7
4
  } from "./chunk.KBT2EKLF.js";
5
+ import {
6
+ input_styles_default
7
+ } from "./chunk.AQC66RY2.js";
8
8
  import {
9
9
  defaultValue
10
10
  } from "./chunk.CMJ2SRTL.js";
@@ -16,7 +16,7 @@ import {
16
16
  } from "./chunk.YIY5RM53.js";
17
17
  import {
18
18
  LocalizeController
19
- } from "./chunk.7BYKP4SA.js";
19
+ } from "./chunk.CKDL37GT.js";
20
20
  import {
21
21
  watch
22
22
  } from "./chunk.6IH66JBY.js";
@@ -67,6 +67,7 @@ var DSAInput = class extends ShoelaceElement {
67
67
  this.errorMessage = "";
68
68
  this.form = "";
69
69
  this.required = false;
70
+ this.counter = false;
70
71
  this.spellcheck = true;
71
72
  }
72
73
  /** Gets or sets the current value as a `Date` object. Returns `null` if the value can't be converted. */
@@ -144,6 +145,16 @@ var DSAInput = class extends ShoelaceElement {
144
145
  handlePasswordToggle() {
145
146
  this.passwordVisible = !this.passwordVisible;
146
147
  }
148
+ getDescriptionIds() {
149
+ let ids = ["help-text"];
150
+ if (this.maxlength && this.counter) {
151
+ ids = [...ids, "counter"];
152
+ }
153
+ if (this.error) {
154
+ ids = ["error-text", ...ids];
155
+ }
156
+ return ids.join(" ");
157
+ }
147
158
  handleErrorChange() {
148
159
  if (this.error) {
149
160
  this.setAttribute("aria-invalid", "true");
@@ -235,6 +246,7 @@ var DSAInput = class extends ShoelaceElement {
235
246
  const hasHelpText = this.helpText ? true : !!hasHelpTextSlot;
236
247
  const hasClearIcon = this.clearable && !this.disabled && !this.readonly && (typeof this.value === "number" || this.value.length > 0);
237
248
  const hasHideIcon = this.type === "password" && !this.disabled;
249
+ const counterText = this.maxlength && this.counter ? `${this.value.length}/${this.maxlength}` : void 0;
238
250
  return html`
239
251
  <div
240
252
  part="form-control"
@@ -248,7 +260,8 @@ var DSAInput = class extends ShoelaceElement {
248
260
  "form-control--has-help-text": hasHelpText,
249
261
  "form-control--has-prefix-icon": hasPrefixIcon,
250
262
  "form-control--has-hide-icon": hasHideIcon,
251
- "form-control--has-clear-icon": hasClearIcon
263
+ "form-control--has-clear-icon": hasClearIcon,
264
+ "form-control--has-counter": counterText !== void 0
252
265
  })}
253
266
  >
254
267
  <label
@@ -318,7 +331,7 @@ var DSAInput = class extends ShoelaceElement {
318
331
  aria-label=${ifDefinedAndNotEmpty(
319
332
  hasLabel ? void 0 : this.title
320
333
  )}
321
- aria-describedby=${this.error ? "error-text help-text" : "help-text"}
334
+ aria-describedby=${this.getDescriptionIds()}
322
335
  @change=${this.handleChange}
323
336
  @input=${this.handleInput}
324
337
  @invalid=${this.handleInvalid}
@@ -368,6 +381,15 @@ var DSAInput = class extends ShoelaceElement {
368
381
  ${this.helpText}
369
382
  </slot>
370
383
 
384
+ ${counterText !== void 0 ? html`<span
385
+ id="counter"
386
+ class=${classMap({
387
+ "form-control__counter": true,
388
+ "form-control__counter--animated": this.value.length === this.maxlength
389
+ })}
390
+ >${counterText}</span
391
+ >` : ""}
392
+
371
393
  ${this.error && !this.disabled ? html`<dsa-error-text
372
394
  id="error-text"
373
395
  class="form-control__error-text"
@@ -448,6 +470,9 @@ __decorateClass([
448
470
  __decorateClass([
449
471
  property({ type: Number })
450
472
  ], DSAInput.prototype, "maxlength", 2);
473
+ __decorateClass([
474
+ property({ type: Boolean })
475
+ ], DSAInput.prototype, "counter", 2);
451
476
  __decorateClass([
452
477
  property()
453
478
  ], DSAInput.prototype, "min", 2);