@stihl-design-system/components 1.0.0-RC.11 → 1.0.0-RC.13

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 (225) hide show
  1. package/README.md +1 -1
  2. package/{accordion.CEKQh-7i.js → accordion.Rvtiu8Y4.js} +3 -3
  3. package/arialiveregions.Cyycgs8g.js +27 -0
  4. package/assets/Accordion.i4k5SMQM.css +1 -0
  5. package/assets/CheckboxGroup.BH1Br1dg.css +1 -0
  6. package/assets/Chip.DSdLuzoi.css +1 -0
  7. package/assets/CustomReactSelect.vHt8qNKC.css +1 -0
  8. package/assets/Dialog.BgzebVk4.css +1 -0
  9. package/assets/Drawer.Bauwxrk7.css +1 -0
  10. package/assets/Fieldset.DOdTbb7C.css +1 -0
  11. package/assets/Icon.DxRSBRSL.css +1 -0
  12. package/assets/InputPassword.CG7Ugu73.css +1 -0
  13. package/assets/InputSearch.CseChMc-.css +1 -0
  14. package/assets/InputStepper.C0eAYr7P.css +1 -0
  15. package/assets/Notification.DbRapUJo.css +1 -0
  16. package/assets/RadioGroup.BfMo157q.css +1 -0
  17. package/assets/Select.D4EXgIbz.css +1 -0
  18. package/assets/Textarea.KJGPTYMz.css +1 -0
  19. package/assets/Toast.CuafTAf7.css +1 -0
  20. package/assets/arialiveregions.DhsijBaL.css +1 -0
  21. package/assets/asterisk.BfVAUBO7.css +1 -0
  22. package/assets/button.DF4RBeC2.css +1 -0
  23. package/assets/buttonround.19uK_-oO.css +1 -0
  24. package/assets/checkbox.ByOoFouu.css +1 -0
  25. package/assets/chipgroup.BzfZLbkv.css +1 -0
  26. package/assets/flag.B-RLcMcf.css +1 -0
  27. package/assets/floatingactionbutton.E9HekT6S.css +1 -0
  28. package/assets/heading.u4f8Mz94.css +1 -0
  29. package/assets/input.BAkFKPW3.css +1 -0
  30. package/assets/link.DDJj0D1U.css +1 -0
  31. package/assets/linkstandalone.DIazcjIv.css +1 -0
  32. package/assets/logo.CnW8alZU.css +1 -0
  33. package/assets/optioncheckbox.BZaWtRD7.css +1 -0
  34. package/assets/radio.X-RTl_jo.css +1 -0
  35. package/assets/skiptocontent.PTL3256m.css +1 -0
  36. package/assets/spinner.2iWJWKyA.css +1 -0
  37. package/assets/switch.gw6aa3kx.css +1 -0
  38. package/assets/systemfeedback.BPz5YlPC.css +1 -0
  39. package/assets/text.DjTG_qNb.css +1 -0
  40. package/assets/title.rosWPEG3.css +1 -0
  41. package/asterisk.DpzETKdT.js +8 -0
  42. package/button.M4nXjcUn.js +135 -0
  43. package/buttonround.E56F_805.js +118 -0
  44. package/checkbox.Cb2_ey6U.js +111 -0
  45. package/{checkboxgroup.BqD5IV51.js → checkboxgroup.DBDmB-zR.js} +2 -2
  46. package/{chip.B92ew-hk.js → chip.C_1tGqvZ.js} +2 -2
  47. package/chipgroup.BvTj1ziW.js +174 -0
  48. package/chunks/Accordion.CB6jB3s_.js +125 -0
  49. package/chunks/{CheckboxGroup.M3jOjhNf.js → CheckboxGroup.S6i5EOc4.js} +40 -40
  50. package/chunks/{Chip.fMG8wi5K.js → Chip.CMlPUyOJ.js} +15 -15
  51. package/chunks/{CustomReactSelect.D3jv5-fa.js → CustomReactSelect.CQ1uexBH.js} +1321 -1321
  52. package/chunks/Dialog.CudsqNag.js +148 -0
  53. package/chunks/Drawer.ueG2Bzr9.js +154 -0
  54. package/chunks/{Fieldset.C9K8BYmH.js → Fieldset.Cjmkgxxk.js} +32 -32
  55. package/chunks/{Icon.C2o2seDb.js → Icon.BCmt_XBG.js} +45 -45
  56. package/chunks/InputPassword.CNLbBFjx.js +143 -0
  57. package/chunks/InputSearch.CHA6mkX_.js +192 -0
  58. package/chunks/InputStepper.xmWGU9pU.js +294 -0
  59. package/chunks/Notification.nx5vTamN.js +92 -0
  60. package/chunks/RadioGroup.Crj7NoOs.js +137 -0
  61. package/chunks/Select.E6gLFYLk.js +194 -0
  62. package/chunks/Textarea.DUBSOpNL.js +198 -0
  63. package/chunks/Toast.DyEi2GEP.js +89 -0
  64. package/{combobox.BeTnbG1m.js → combobox.CzBpi97e.js} +1 -1
  65. package/components/Combobox/Combobox.d.ts +1 -1
  66. package/components/{CustomReactSelect → Combobox/CustomReactSelect}/CustomReactSelect.d.ts +2 -2
  67. package/components/{CustomReactSelect → Combobox/CustomReactSelect}/CustomReactSelect.utils.d.ts +1 -1
  68. package/components/Notification/Notification.d.ts +2 -6
  69. package/components/Radio/Radio.d.ts +1 -1
  70. package/customreactselect.d.ts +1 -1
  71. package/customreactselect.qf7CIeFs.js +13 -0
  72. package/{dialog.lGwNQU91.js → dialog.DYlBUsOD.js} +2 -2
  73. package/{drawer.DNi5m8wP.js → drawer.CvhbP1ra.js} +2 -2
  74. package/fieldset.CtUGEdLv.js +11 -0
  75. package/flag.BKpsdB_-.js +43 -0
  76. package/floatingactionbutton.D5L0B7zI.js +87 -0
  77. package/heading.IPIYc5vW.js +50 -0
  78. package/{icon.BoMgOmC1.js → icon.Ck0BpI34.js} +1 -1
  79. package/index.es.js +34 -34
  80. package/input.BEnCFNM-.js +239 -0
  81. package/{inputpassword.CSjh1GU7.js → inputpassword.B-D_jB9w.js} +4 -4
  82. package/{inputsearch.DyznOWLK.js → inputsearch.CaSpklR1.js} +4 -4
  83. package/{inputstepper.3BLb7s0P.js → inputstepper.C7KD1-0S.js} +4 -4
  84. package/link.DREJAoPG.js +116 -0
  85. package/linkstandalone.BBoEniZ_.js +79 -0
  86. package/logo.Hul8qCFo.js +65 -0
  87. package/{notification.0kX1GMaB.js → notification.6M0OdGXK.js} +3 -3
  88. package/optioncheckbox.BRUTnQnJ.js +43 -0
  89. package/optioncheckbox.d.ts +1 -1
  90. package/package.json +8 -6
  91. package/partials/index.js +1 -1
  92. package/radio.DEILy_lV.js +114 -0
  93. package/{radiogroup.SYkZm2DG.js → radiogroup.DeU-HdlP.js} +3 -3
  94. package/{select.CYbwR3RW.js → select.BYraFJzz.js} +4 -4
  95. package/skiptocontent.BxvpIB7H.js +45 -0
  96. package/spinner.Bq97Og-6.js +58 -0
  97. package/styles/scss/ds/index.scss +19 -0
  98. package/styles/scss/ds/lib/animation.scss +21 -0
  99. package/styles/scss/ds/lib/breakpoints.scss +15 -0
  100. package/styles/scss/ds/lib/container-query.scss +54 -0
  101. package/styles/scss/ds/lib/ds-internal/_a11y.scss +15 -0
  102. package/styles/scss/{lib → ds/lib/ds-internal}/_focus.scss +13 -15
  103. package/styles/scss/ds/lib/ds-internal/_heading.scss +37 -0
  104. package/styles/scss/ds/lib/ds-internal/_helpers.scss +32 -0
  105. package/styles/scss/ds/lib/ds-internal/_high-contrast.scss +6 -0
  106. package/styles/scss/ds/lib/ds-internal/_hover.scss +6 -0
  107. package/styles/scss/ds/lib/ds-internal/_index.scss +9 -0
  108. package/styles/scss/ds/lib/ds-internal/_link.scss +62 -0
  109. package/styles/scss/ds/lib/ds-internal/_spacing-dynamic.scss +53 -0
  110. package/styles/scss/ds/lib/ds-internal/_text.scss +30 -0
  111. package/styles/scss/ds/lib/grid-extended.scss +11 -0
  112. package/styles/scss/ds/lib/grid-full.scss +6 -0
  113. package/styles/scss/ds/lib/grid-main.scss +119 -0
  114. package/styles/scss/ds/lib/grid-narrow.scss +14 -0
  115. package/styles/scss/ds/lib/grid-sidebar-sidebar.scss +52 -0
  116. package/styles/scss/{lib/_grid-sidebar.scss → ds/lib/grid-sidebar.scss} +23 -32
  117. package/styles/scss/{lib/_grid.scss → ds/lib/grid.scss} +15 -17
  118. package/styles/scss/ds/lib/heading.scss +75 -0
  119. package/styles/scss/ds/lib/link.scss +74 -0
  120. package/styles/scss/ds/lib/media-query.scss +32 -0
  121. package/styles/scss/{lib/_shadow.scss → ds/lib/shadow.scss} +2 -2
  122. package/styles/scss/ds/lib/spacing-dynamic.scss +7 -0
  123. package/styles/scss/ds/lib/spacing.scss +20 -0
  124. package/styles/scss/ds/lib/text.scss +83 -0
  125. package/styles/scss/ds/lib/theme.scss +162 -0
  126. package/styles/scss/ds/lib/transition.scss +36 -0
  127. package/switch.DI8YYa5G.js +65 -0
  128. package/{systemfeedback.ZzRUAVYX.js → systemfeedback.C3Pfxxpp.js} +6 -6
  129. package/text.DThvTwm8.js +57 -0
  130. package/{textarea.DJc527nX.js → textarea.CBvH0ljM.js} +3 -3
  131. package/title.DqzdB2Gq.js +36 -0
  132. package/{toast.D48GFmp0.js → toast.n1QUINSA.js} +3 -3
  133. package/{toastmanager.Dl8-Q3ED.js → toastmanager.B7EZ4JSI.js} +1 -1
  134. package/arialiveregions.BKpxxK7O.js +0 -27
  135. package/assets/Accordion.DMEFgtQm.css +0 -1
  136. package/assets/CheckboxGroup.Bz3_xkZU.css +0 -1
  137. package/assets/Chip.D10_7Q82.css +0 -1
  138. package/assets/CustomReactSelect.D5XKd9vg.css +0 -1
  139. package/assets/Dialog.B0pucIEI.css +0 -1
  140. package/assets/Drawer.CATBzfY7.css +0 -1
  141. package/assets/Fieldset.CwDhKRUL.css +0 -1
  142. package/assets/Icon.Duy_0R8w.css +0 -1
  143. package/assets/InputPassword.DOAAzj-O.css +0 -1
  144. package/assets/InputSearch.CxPYaQGZ.css +0 -1
  145. package/assets/InputStepper.CYYJUu0b.css +0 -1
  146. package/assets/Notification.mhVFeSGm.css +0 -1
  147. package/assets/Select.DZKpHV4G.css +0 -1
  148. package/assets/Textarea.Cp0b7oZp.css +0 -1
  149. package/assets/Toast.Cz6wYaBv.css +0 -1
  150. package/assets/arialiveregions.GsGx2USO.css +0 -1
  151. package/assets/asterisk.DlJ4YtSZ.css +0 -1
  152. package/assets/button.C9_ejpGG.css +0 -1
  153. package/assets/buttonround.DTCqRP-0.css +0 -1
  154. package/assets/checkbox.K4CVYK9g.css +0 -1
  155. package/assets/chipgroup.BMovtKTy.css +0 -1
  156. package/assets/flag.DX_lH1v7.css +0 -1
  157. package/assets/floatingactionbutton.Do-yEH6c.css +0 -1
  158. package/assets/heading.6bER-Eac.css +0 -1
  159. package/assets/input.Q5oKkmW2.css +0 -1
  160. package/assets/link.DhZqkLMP.css +0 -1
  161. package/assets/linkstandalone.Dwz-_O8q.css +0 -1
  162. package/assets/logo.pETQEsvZ.css +0 -1
  163. package/assets/optioncheckbox.C62HtIj5.css +0 -1
  164. package/assets/radio.-Xxx5wL4.css +0 -1
  165. package/assets/skiptocontent.CHcqLS7S.css +0 -1
  166. package/assets/spinner.D_Nnf1ZG.css +0 -1
  167. package/assets/switch.C1Ei0-z8.css +0 -1
  168. package/assets/systemfeedback.Sq0bAIyf.css +0 -1
  169. package/assets/text.DxKFcfY6.css +0 -1
  170. package/assets/title.f74Bosn-.css +0 -1
  171. package/asterisk.DDn-yX4P.js +0 -8
  172. package/button.C5opEJ6x.js +0 -135
  173. package/buttonround.CUoqRyy0.js +0 -118
  174. package/checkbox.DETR3e3X.js +0 -112
  175. package/chipgroup.BJrqEfvr.js +0 -175
  176. package/chunks/Accordion.DFwFN8mX.js +0 -125
  177. package/chunks/Dialog.Fwr6vLiK.js +0 -148
  178. package/chunks/Drawer.CKoYzQHd.js +0 -154
  179. package/chunks/InputPassword.C7pNeWGx.js +0 -143
  180. package/chunks/InputSearch.B24rcIJ_.js +0 -192
  181. package/chunks/InputStepper.CEW-bieQ.js +0 -294
  182. package/chunks/Notification.BXVN7_Fs.js +0 -93
  183. package/chunks/RadioGroup.D4UOflwr.js +0 -137
  184. package/chunks/Select.Ds86q4UC.js +0 -194
  185. package/chunks/Textarea.DcB8hKnO.js +0 -198
  186. package/chunks/Toast.DrzxdzVW.js +0 -89
  187. package/customreactselect.lYJhIeyx.js +0 -13
  188. package/fieldset.BqiAjeax.js +0 -11
  189. package/flag.XJHHSP38.js +0 -43
  190. package/floatingactionbutton.CMpkTdhX.js +0 -87
  191. package/heading.CAkraI2D.js +0 -50
  192. package/input.v7qB7wPJ.js +0 -239
  193. package/link.Clk5_BYp.js +0 -116
  194. package/linkstandalone.BXERmqdN.js +0 -80
  195. package/logo.CEO6OV7u.js +0 -65
  196. package/optioncheckbox.BPN3f6l_.js +0 -43
  197. package/radio.DTZNJzMU.js +0 -115
  198. package/skiptocontent.DUQWopO4.js +0 -46
  199. package/spinner.D-xrotcu.js +0 -58
  200. package/styles/scss/_index.scss +0 -24
  201. package/styles/scss/lib/_a11y.scss +0 -15
  202. package/styles/scss/lib/_animation.scss +0 -21
  203. package/styles/scss/lib/_breakpoints.scss +0 -15
  204. package/styles/scss/lib/_container-query.scss +0 -58
  205. package/styles/scss/lib/_grid-extended.scss +0 -11
  206. package/styles/scss/lib/_grid-full.scss +0 -6
  207. package/styles/scss/lib/_grid-main.scss +0 -117
  208. package/styles/scss/lib/_grid-narrow.scss +0 -16
  209. package/styles/scss/lib/_grid-sidebar-sidebar.scss +0 -50
  210. package/styles/scss/lib/_heading.scss +0 -107
  211. package/styles/scss/lib/_helpers.scss +0 -15
  212. package/styles/scss/lib/_high-contrast.scss +0 -24
  213. package/styles/scss/lib/_hover.scss +0 -10
  214. package/styles/scss/lib/_link.scss +0 -129
  215. package/styles/scss/lib/_media-query.scss +0 -32
  216. package/styles/scss/lib/_spacing-dynamic.scss +0 -61
  217. package/styles/scss/lib/_spacing.scss +0 -32
  218. package/styles/scss/lib/_text.scss +0 -110
  219. package/styles/scss/lib/_theme.scss +0 -162
  220. package/styles/scss/lib/_transition.scss +0 -45
  221. package/switch.CoNnIhM4.js +0 -65
  222. package/text.fMcHzVbH.js +0 -57
  223. package/title.LY1ylQsb.js +0 -36
  224. /package/components/{CustomReactSelect → Combobox/CustomReactSelect}/CustomReactSelect.utils.test.d.ts +0 -0
  225. /package/components/{CustomReactSelect → Combobox/CustomReactSelect}/OptionCheckbox.d.ts +0 -0
@@ -1,24 +0,0 @@
1
- /**
2
- * This mixin provides a utility to wrap styles within a media query specifically
3
- * targeting devices that have forced-colors active and thus are in high-contrast mode.
4
- *
5
- * You can use the following keywords to set specific colors for elements in high contrast mode:
6
- * @example
7
- * ```markdown
8
- * | Content | Keyword |
9
- * |--------------------------|---------------|
10
- * | Text | CanvasText |
11
- * | Hyperlinks | LinkText |
12
- * | Disabled Text | GrayText |
13
- * | Selected Text, foreground| HighlightText |
14
- * | Selected Text, background| Highlight |
15
- * | Buttons, foreground | ButtonText |
16
- * | Buttons, background | ButtonFace |
17
- * | Backgrounds | Canvas |
18
- * ```
19
- */
20
- @mixin high-contrast-media-query {
21
- @media screen and (forced-colors: active) {
22
- @content;
23
- }
24
- }
@@ -1,10 +0,0 @@
1
- /**
2
- * This mixin provides a utility to wrap styles within a media query specifically
3
- * targeting devices that support hover. It ensures that hover styles are
4
- * applied only to non-touch (hover capable) devices.
5
- */
6
- @mixin hover-media-query {
7
- @media (hover: hover) {
8
- @content;
9
- }
10
- }
@@ -1,129 +0,0 @@
1
- @import '_helpers';
2
- @import '_hover';
3
- @import '_spacing';
4
- @import '_transition';
5
-
6
- // IMPORTANT: DSLinkStandalone and ds-link mixin have same visual appearance
7
- // so if any changes are made to this component, they should be reflected in LinkStandalone as well.
8
-
9
- // Set the link variant colors
10
- @mixin link-variant(
11
- $content-color,
12
- $background-color-hover,
13
- $content-color-hover,
14
- $theme: 'light'
15
- ) {
16
- & {
17
- color: $content-color;
18
- }
19
-
20
- &:link,
21
- &:visited {
22
- color: $content-color;
23
- }
24
-
25
- &:active {
26
- background-color: $background-color-hover;
27
- color: $content-color-hover;
28
- }
29
-
30
- @include hover-media-query {
31
- &:hover {
32
- background-color: $background-color-hover;
33
- color: $content-color-hover;
34
- @include high-contrast-media-query {
35
- background-color: Canvas;
36
- }
37
- }
38
- }
39
-
40
- &[href^="http://"]::after,
41
- &[href^="https://"]::after
42
- {
43
- content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{urlEncodeHexColor($content-color)}' viewBox='0 0 16 16' focusable='false' width='100%25' height='100%25'%3E%3Cpath fill-rule='evenodd' d='M9 2V0h7v7h-2V3.4L8.1 9.3 6.7 7.9 12.6 2H9Zm5 8h-2v4H2V4h4V2H0v14h14v-6Z' clip-rule='evenodd'/%3E%3C/svg%3E");
44
- }
45
-
46
- &[href^='#']::after {
47
- content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{urlEncodeHexColor($content-color)}' viewBox='0 0 16 16' focusable='false' width='100%25' height='100%25'%3E%3Cpath d='M14.4 9.6 8 16 1.6 9.6 3 8.2l4 4V0h2v12.2l4-4 1.4 1.4Z'/%3E%3C/svg%3E");
48
- }
49
-
50
- // The offset is set to 0 since Inline Links do not have a 2px
51
- // outline offset like the Button component. See designs for reference.
52
- @include ds-focus($theme, $offset: 0);
53
- }
54
-
55
- // Mixin for underlined links (inline link or active standalone link)
56
- @mixin link-underline {
57
- text-decoration-skip-ink: auto;
58
- text-decoration-line: underline;
59
- text-underline-offset: 2px;
60
- text-decoration-thickness: 1px;
61
- text-decoration-color: currentColor;
62
- }
63
-
64
- // Public Link mixin that can be used to style links.
65
- // since there a few design differences between the two.
66
- @mixin ds-link($variant: 'neutral', $theme: 'light') {
67
- display: inline;
68
- padding-inline-end: $ds-spacing-2;
69
- padding-inline-start: $ds-spacing-2;
70
- padding-block-start: 0;
71
- padding-block-end: 0;
72
- line-height: inherit;
73
- font-size: inherit;
74
-
75
- // Inline links are always underlined
76
- @include link-underline;
77
-
78
- // Inline links do have two predefined icons for external links and anchors.
79
- // The icons are added via the ::after pseudo element as svg data urls to
80
- // enable the change of the icon color via the fill property.
81
- // Setting the icon & icon color is done in the link-variant mixin since
82
- // it depends on the actual link color.
83
- :where(&)[href^="http://"]::after,
84
- :where(&)[href^="https://"]::after,
85
- :where(&)[href^='#']::after {
86
- display: inline-block;
87
- margin-inline-start: 0.375em;
88
- width: 0.75em;
89
- height: 0.75em;
90
- }
91
-
92
- // Variants & themes
93
- @if ($variant == 'neutral' and $theme == 'light') {
94
- @include link-variant(
95
- $ds-theme-light-content-color-interaction-neutral,
96
- $ds-theme-light-background-color-transparent-hover,
97
- $ds-theme-light-content-color-interaction-neutral
98
- );
99
- }
100
-
101
- @if ($variant == 'highlight' and $theme == 'light') {
102
- @include link-variant(
103
- $ds-theme-light-content-color-interaction-accent,
104
- $ds-theme-light-background-color-transparent-hover,
105
- $ds-theme-light-content-color-interaction-accent-hover
106
- );
107
- }
108
-
109
- @if ($variant == 'neutral' and $theme == 'dark') {
110
- @include link-variant(
111
- $ds-theme-dark-content-color-interaction-neutral,
112
- $ds-theme-dark-background-color-transparent-hover,
113
- $ds-theme-dark-content-color-interaction-neutral,
114
- $theme: 'dark'
115
- );
116
- }
117
-
118
- @if ($variant == 'highlight' and $theme == 'dark') {
119
- @include link-variant(
120
- $ds-theme-dark-content-color-interaction-accent,
121
- $ds-theme-dark-background-color-transparent-hover,
122
- $ds-theme-dark-content-color-interaction-accent,
123
- $theme: 'dark'
124
- );
125
- }
126
-
127
- // Transition
128
- @include ds-transition((background-color, border-color, color));
129
- }
@@ -1,32 +0,0 @@
1
- @import '_breakpoints.scss';
2
-
3
- @mixin ds-media-query-min($min: null) {
4
- @if map-has-key($ds-breakpoints, $min) {
5
- @media (min-width: #{map-get($ds-breakpoints, $min)}px) {
6
- @content;
7
- }
8
- } @else {
9
- @error "[STIHL Design System] - [ds-media-query-min()]: Passed '#{$min}' breakpoint is not available in ds-media-query-min() mixin.";
10
- }
11
- }
12
-
13
- @mixin ds-media-query-max($max: null) {
14
- @if map-has-key($ds-breakpoints, $max) {
15
- @media (max-width: #{map-get($ds-breakpoints, $max) - 1}px) {
16
- @content;
17
- }
18
- } @else {
19
- @error "[STIHL Design System] - [ds-media-query-max()]: Passed '#{$max}' breakpoint is not available in ds-media-query-max() mixin.";
20
- }
21
- }
22
-
23
- @mixin ds-media-query-min-max($min: null, $max: null) {
24
- @if map-has-key($ds-breakpoints, $min) and map-has-key($ds-breakpoints, $max)
25
- {
26
- @media (min-width: #{map-get($ds-breakpoints, $min)}px) and (max-width: #{map-get($ds-breakpoints, $max) - 1}px) {
27
- @content;
28
- }
29
- } @else {
30
- @error "[STIHL Design System] - [ds-media-query-min-max()]: Passed '#{$min}' and/or '#{$max}' breakpoint is not available in ds-media-query-min-max() mixin.";
31
- }
32
- }
@@ -1,61 +0,0 @@
1
- @import '_media-query';
2
-
3
- // Spacing values updated for breakpoints
4
- $spacing-dynamic-values: (
5
- 'xs': (
6
- 'base': $ds-spacing-16,
7
- 's': $ds-spacing-16,
8
- 'm': $ds-spacing-24,
9
- 'l': $ds-spacing-24,
10
- 'xl': $ds-spacing-32,
11
- 'xxl': $ds-spacing-32,
12
- ),
13
- 's': (
14
- 'base': $ds-spacing-24,
15
- 's': $ds-spacing-24,
16
- 'm': $ds-spacing-32,
17
- 'l': $ds-spacing-32,
18
- 'xl': $ds-spacing-40,
19
- 'xxl': $ds-spacing-40,
20
- ),
21
- 'm': (
22
- 'base': $ds-spacing-32,
23
- 's': $ds-spacing-32,
24
- 'm': $ds-spacing-40,
25
- 'l': $ds-spacing-40,
26
- 'xl': $ds-spacing-48,
27
- 'xxl': $ds-spacing-48,
28
- ),
29
- 'l': (
30
- 'base': $ds-spacing-40,
31
- 's': $ds-spacing-40,
32
- 'm': $ds-spacing-48,
33
- 'l': $ds-spacing-48,
34
- 'xl': $ds-spacing-56,
35
- 'xxl': $ds-spacing-56,
36
- ),
37
- 'xl': (
38
- 'base': $ds-spacing-56,
39
- 's': $ds-spacing-56,
40
- 'm': $ds-spacing-64,
41
- 'l': $ds-spacing-64,
42
- 'xl': $ds-spacing-80,
43
- 'xxl': $ds-spacing-80,
44
- ),
45
- 'xxl': (
46
- 'base': $ds-spacing-80,
47
- 's': $ds-spacing-80,
48
- 'm': $ds-spacing-96,
49
- 'l': $ds-spacing-96,
50
- 'xl': $ds-spacing-128,
51
- 'xxl': $ds-spacing-128,
52
- ),
53
- );
54
-
55
- // Assign dynamic spacing variables
56
- $ds-spacing-dynamic-xs: var(--ds-spacing-dynamic-xs);
57
- $ds-spacing-dynamic-s: var(--ds-spacing-dynamic-s);
58
- $ds-spacing-dynamic-m: var(--ds-spacing-dynamic-m);
59
- $ds-spacing-dynamic-l: var(--ds-spacing-dynamic-l);
60
- $ds-spacing-dynamic-xl: var(--ds-spacing-dynamic-xl);
61
- $ds-spacing-dynamic-xxl: var(--ds-spacing-dynamic-xxl);
@@ -1,32 +0,0 @@
1
- $ds-spacing-0: 0px;
2
- $ds-spacing-1: 1px;
3
- $ds-spacing-2: 2px;
4
- $ds-spacing-4: 4px;
5
- $ds-spacing-6: 6px;
6
- $ds-spacing-8: 8px;
7
- $ds-spacing-12: 12px;
8
- $ds-spacing-14: 14px;
9
- $ds-spacing-16: 16px;
10
- $ds-spacing-20: 20px;
11
- $ds-spacing-24: 24px;
12
- $ds-spacing-32: 32px;
13
- $ds-spacing-40: 40px;
14
- $ds-spacing-48: 48px;
15
- $ds-spacing-56: 56px;
16
- $ds-spacing-64: 64px;
17
- $ds-spacing-80: 80px;
18
- $ds-spacing-96: 96px;
19
- $ds-spacing-128: 128px;
20
- $ds-spacing-160: 160px;
21
-
22
- // Functions to adjust spacing to account for the inner border of an element as designed in Figma.
23
- // This is necessary to ensure that the spacing matches the design specifications
24
- // where the border is included inside the element, causing an effective reduction
25
- // in the available space by the width of the border.
26
- @function adjust-spacing-for-border-1($spacing) {
27
- @return #{calc($spacing - $ds-spacing-1)};
28
- }
29
-
30
- @function adjust-spacing-for-border-2($spacing) {
31
- @return #{calc($spacing - $ds-spacing-2)};
32
- }
@@ -1,110 +0,0 @@
1
- // Base mixin for text styles
2
- @mixin base-text($fontFamily, $fontSize, $lineHeight) {
3
- font-family: #{unquote(
4
- $fontFamily +
5
- ', -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif'
6
- )};
7
- font-style: normal;
8
- font-variant: normal;
9
- hyphens: manual;
10
- overflow-wrap: break-word;
11
- font-weight: normal;
12
- font-size: $fontSize;
13
- line-height: $lineHeight;
14
- }
15
-
16
- // Mixin for regular text
17
- @mixin base-text-regular($fontFamily, $fontSize, $lineHeight) {
18
- @include base-text($fontFamily, $fontSize, $lineHeight);
19
- /* x-height 414 https://vertical-metrics.netlify.app/ */
20
- font-size-adjust: 0.414;
21
- }
22
-
23
- // Mixin for bold text
24
- @mixin base-text-bold($fontFamily, $fontSize, $lineHeight) {
25
- @include base-text($fontFamily, $fontSize, $lineHeight);
26
- /* x-height 426 https://vertical-metrics.netlify.app/ */
27
- font-size-adjust: 0.426;
28
- }
29
-
30
- // Mixins for specific text sizes
31
- @mixin ds-text-large {
32
- @include base-text-regular(
33
- 'STIHL Contraface Digital Text Regular',
34
- 1.25rem,
35
- 1.6
36
- );
37
- }
38
-
39
- @mixin ds-text-large-bold {
40
- @include base-text-bold('STIHL Contraface Digital Text Bold', 1.25rem, 1.6);
41
- }
42
-
43
- @mixin ds-text-medium {
44
- @include base-text-regular(
45
- 'STIHL Contraface Digital Text Regular',
46
- 1rem,
47
- 1.5
48
- );
49
- }
50
-
51
- @mixin ds-text-medium-bold {
52
- @include base-text-bold('STIHL Contraface Digital Text Bold', 1rem, 1.5);
53
- }
54
-
55
- @mixin ds-text-small {
56
- @include base-text-regular(
57
- 'STIHL Contraface Digital Text Regular',
58
- 0.875rem,
59
- 1.14
60
- );
61
- }
62
-
63
- @mixin ds-text-small-bold {
64
- @include base-text-bold('STIHL Contraface Digital Text Bold', 0.875rem, 1.14);
65
- }
66
-
67
- @mixin ds-text-x-small {
68
- @include base-text-regular(
69
- 'STIHL Contraface Digital Text Regular',
70
- 0.75rem,
71
- 1.33
72
- );
73
- }
74
-
75
- @mixin ds-text-x-small-bold {
76
- @include base-text-bold('STIHL Contraface Digital Text Bold', 0.75rem, 1.33);
77
- }
78
-
79
- @mixin ds-text-xx-small {
80
- @include base-text-regular(
81
- 'STIHL Contraface Digital Text Regular',
82
- 0.625rem,
83
- 1.6
84
- );
85
- }
86
-
87
- // Utility text styles
88
- @mixin ds-utility-medium {
89
- @include base-text-regular(
90
- 'STIHL Contraface Digital Text Regular',
91
- 1rem,
92
- 1.25
93
- );
94
- }
95
-
96
- @mixin ds-utility-medium-bold {
97
- @include base-text-bold('STIHL Contraface Digital Text Bold', 1rem, 1.25);
98
- }
99
-
100
- @mixin ds-utility-small {
101
- @include base-text-regular(
102
- 'STIHL Contraface Digital Text Regular',
103
- 0.875rem,
104
- 1.14
105
- );
106
- }
107
-
108
- @mixin ds-utility-small-bold {
109
- @include base-text-bold('STIHL Contraface Digital Text Bold', 0.875rem, 1.14);
110
- }
@@ -1,162 +0,0 @@
1
- // AUTO GENERATED BELOW
2
-
3
- // Color: Core Tokens
4
- $ds-color-core-black-base: #050505;
5
- $ds-color-core-black-opacity-10: #0000001A;
6
- $ds-color-core-black-opacity-50: #00000080;
7
- $ds-color-core-blue-base: #249ABE;
8
- $ds-color-core-blue-dark: #1E71A1;
9
- $ds-color-core-blue-deep: #19618B;
10
- $ds-color-core-blue-light: #D4ECF7;
11
- $ds-color-core-blue-mid: #8DCFE8;
12
- $ds-color-core-forest-base: #4A9E5F;
13
- $ds-color-core-forest-dark: #3C8653;
14
- $ds-color-core-forest-deep: #2D7644;
15
- $ds-color-core-forest-light: #DBF0E1;
16
- $ds-color-core-forest-mid: #77C089;
17
- $ds-color-core-green-base: #749F4A;
18
- $ds-color-core-green-dark: #5B863C;
19
- $ds-color-core-green-deep: #46762D;
20
- $ds-color-core-green-light: #E5F0DB;
21
- $ds-color-core-green-mid: #9BC077;
22
- $ds-color-core-grey-base: #B1B1B1;
23
- $ds-color-core-grey-dark: #666666;
24
- $ds-color-core-grey-deep: #444444;
25
- $ds-color-core-grey-light: #EDEDED;
26
- $ds-color-core-grey-mid: #DADADA;
27
- $ds-color-core-grey-ultra-deep: #252525;
28
- $ds-color-core-grey-ultra-light: #F8F8F8;
29
- $ds-color-core-orange-base: #F37A1F;
30
- $ds-color-core-orange-dark: #E9640C;
31
- $ds-color-core-orange-deep: #D9480F;
32
- $ds-color-core-orange-light: #FEE2CD;
33
- $ds-color-core-orange-mid: #F7A669;
34
- $ds-color-core-red-base: #D43B3B;
35
- $ds-color-core-red-dark: #B72427;
36
- $ds-color-core-red-deep: #A5181D;
37
- $ds-color-core-red-light: #EEBCBD;
38
- $ds-color-core-red-mid: #DA6B6D;
39
- $ds-color-core-white-base: #FFFFFF;
40
- $ds-color-core-white-opacity-15: #FFFFFF26;
41
- $ds-color-core-white-opacity-50: #FFFFFF80;
42
- $ds-color-core-yellow-base: #FDC543;
43
- $ds-color-core-yellow-dark: #F9A521;
44
- $ds-color-core-yellow-deep: #EE8F00;
45
- $ds-color-core-yellow-light: #FDECC3;
46
- $ds-color-core-yellow-mid: #FED277;
47
-
48
- // Color: Semantic Tokens - Light
49
- $ds-theme-light-background-color-brand-disabled: $ds-color-core-grey-mid;
50
- $ds-theme-light-background-color-brand-hover: $ds-color-core-orange-dark;
51
- $ds-theme-light-background-color-brand-pressed: $ds-color-core-orange-dark;
52
- $ds-theme-light-background-color-brand: $ds-color-core-orange-base;
53
- $ds-theme-light-background-color-feedback-error: $ds-color-core-red-light;
54
- $ds-theme-light-background-color-feedback-info: $ds-color-core-grey-light;
55
- $ds-theme-light-background-color-feedback-success: $ds-color-core-green-light;
56
- $ds-theme-light-background-color-feedback-warning: $ds-color-core-yellow-light;
57
- $ds-theme-light-background-color-primary-disabled: $ds-color-core-white-base;
58
- $ds-theme-light-background-color-primary-hover: $ds-color-core-grey-light;
59
- $ds-theme-light-background-color-primary-inverse-disabled: $ds-color-core-grey-mid;
60
- $ds-theme-light-background-color-primary-inverse-hover: $ds-color-core-grey-deep;
61
- $ds-theme-light-background-color-primary-inverse-pressed: $ds-color-core-grey-deep;
62
- $ds-theme-light-background-color-primary-inverse: $ds-color-core-grey-ultra-deep;
63
- $ds-theme-light-background-color-primary-pressed: $ds-color-core-grey-light;
64
- $ds-theme-light-background-color-primary: $ds-color-core-white-base;
65
- $ds-theme-light-background-color-secondary-disabled: $ds-color-core-grey-ultra-light;
66
- $ds-theme-light-background-color-secondary-inverse: $ds-color-core-grey-deep;
67
- $ds-theme-light-background-color-secondary: $ds-color-core-grey-ultra-light;
68
- $ds-theme-light-background-color-sustainability: $ds-color-core-forest-light;
69
- $ds-theme-light-background-color-tertiary: $ds-color-core-grey-light;
70
- $ds-theme-light-background-color-transparent-hover: $ds-color-core-black-opacity-10;
71
- $ds-theme-light-background-color-transparent-pressed: $ds-color-core-black-opacity-10;
72
- $ds-theme-light-border-color-feedback-error: $ds-color-core-red-base;
73
- $ds-theme-light-border-color-feedback-info: $ds-color-core-grey-dark;
74
- $ds-theme-light-border-color-feedback-success: $ds-color-core-green-base;
75
- $ds-theme-light-border-color-feedback-warning: $ds-color-core-yellow-base;
76
- $ds-theme-light-border-color-focus: $ds-color-core-grey-ultra-deep;
77
- $ds-theme-light-border-color-primary-disabled: $ds-color-core-black-opacity-50;
78
- $ds-theme-light-border-color-primary-inverse: $ds-color-core-white-base;
79
- $ds-theme-light-border-color-primary: $ds-color-core-grey-ultra-deep;
80
- $ds-theme-light-border-color-secondary-disabled: $ds-color-core-black-opacity-10;
81
- $ds-theme-light-border-color-secondary: $ds-color-core-grey-base;
82
- $ds-theme-light-border-color-tertiary: $ds-color-core-grey-mid;
83
- $ds-theme-light-content-color-brand-disabled: $ds-color-core-black-opacity-50;
84
- $ds-theme-light-content-color-brand-hover: $ds-color-core-orange-deep;
85
- $ds-theme-light-content-color-brand-pressed: $ds-color-core-orange-deep;
86
- $ds-theme-light-content-color-brand: $ds-color-core-orange-dark;
87
- $ds-theme-light-content-color-feedback-error: $ds-color-core-red-base;
88
- $ds-theme-light-content-color-feedback-info: $ds-color-core-grey-base;
89
- $ds-theme-light-content-color-feedback-success: $ds-color-core-green-base;
90
- $ds-theme-light-content-color-feedback-warning: $ds-color-core-yellow-base;
91
- $ds-theme-light-content-color-interaction-accent-hover: $ds-color-core-blue-deep;
92
- $ds-theme-light-content-color-interaction-accent-pressed: $ds-color-core-blue-deep;
93
- $ds-theme-light-content-color-interaction-accent: $ds-color-core-blue-dark;
94
- $ds-theme-light-content-color-interaction-neutral: $ds-color-core-grey-ultra-deep;
95
- $ds-theme-light-content-color-primary-disabled: $ds-color-core-black-opacity-50;
96
- $ds-theme-light-content-color-primary-inverse-disabled: $ds-color-core-black-opacity-50;
97
- $ds-theme-light-content-color-primary-inverse: $ds-color-core-white-base;
98
- $ds-theme-light-content-color-primary-on-brand-disabled: $ds-color-core-black-opacity-50;
99
- $ds-theme-light-content-color-primary-on-brand: $ds-color-core-grey-ultra-deep;
100
- $ds-theme-light-content-color-primary: $ds-color-core-grey-ultra-deep;
101
- $ds-theme-light-content-color-secondary-disabled: $ds-color-core-black-opacity-50;
102
- $ds-theme-light-content-color-secondary: $ds-color-core-grey-dark;
103
- $ds-theme-light-content-color-sustainability: $ds-color-core-forest-base;
104
- $ds-theme-light-content-color-tertiary: $ds-color-core-grey-base;
105
-
106
- // Color: Semantic Tokens - Dark
107
- $ds-theme-dark-background-color-brand-disabled: $ds-color-core-grey-mid;
108
- $ds-theme-dark-background-color-brand-hover: $ds-color-core-orange-dark;
109
- $ds-theme-dark-background-color-brand-pressed: $ds-color-core-orange-dark;
110
- $ds-theme-dark-background-color-brand: $ds-color-core-orange-base;
111
- $ds-theme-dark-background-color-feedback-error: $ds-color-core-grey-deep;
112
- $ds-theme-dark-background-color-feedback-info: $ds-color-core-grey-deep;
113
- $ds-theme-dark-background-color-feedback-success: $ds-color-core-grey-deep;
114
- $ds-theme-dark-background-color-feedback-warning: $ds-color-core-grey-deep;
115
- $ds-theme-dark-background-color-primary-disabled: $ds-color-core-black-base;
116
- $ds-theme-dark-background-color-primary-hover: $ds-color-core-grey-deep;
117
- $ds-theme-dark-background-color-primary-inverse-disabled: $ds-color-core-grey-mid;
118
- $ds-theme-dark-background-color-primary-inverse-hover: $ds-color-core-grey-mid;
119
- $ds-theme-dark-background-color-primary-inverse-pressed: $ds-color-core-grey-mid;
120
- $ds-theme-dark-background-color-primary-inverse: $ds-color-core-grey-ultra-light;
121
- $ds-theme-dark-background-color-primary-pressed: $ds-color-core-grey-deep;
122
- $ds-theme-dark-background-color-primary: $ds-color-core-black-base;
123
- $ds-theme-dark-background-color-secondary-disabled: $ds-color-core-grey-ultra-deep;
124
- $ds-theme-dark-background-color-secondary-inverse: $ds-color-core-grey-light;
125
- $ds-theme-dark-background-color-secondary: $ds-color-core-grey-ultra-deep;
126
- $ds-theme-dark-background-color-sustainability: $ds-color-core-grey-deep;
127
- $ds-theme-dark-background-color-tertiary: $ds-color-core-grey-ultra-deep;
128
- $ds-theme-dark-background-color-transparent-hover: $ds-color-core-white-opacity-15;
129
- $ds-theme-dark-background-color-transparent-pressed: $ds-color-core-white-opacity-15;
130
- $ds-theme-dark-border-color-feedback-error: $ds-color-core-red-base;
131
- $ds-theme-dark-border-color-feedback-info: $ds-color-core-grey-dark;
132
- $ds-theme-dark-border-color-feedback-success: $ds-color-core-green-base;
133
- $ds-theme-dark-border-color-feedback-warning: $ds-color-core-yellow-base;
134
- $ds-theme-dark-border-color-focus: $ds-color-core-white-base;
135
- $ds-theme-dark-border-color-primary-disabled: $ds-color-core-white-opacity-50;
136
- $ds-theme-dark-border-color-primary-inverse: $ds-color-core-grey-ultra-deep;
137
- $ds-theme-dark-border-color-primary: $ds-color-core-grey-ultra-light;
138
- $ds-theme-dark-border-color-secondary-disabled: $ds-color-core-white-opacity-15;
139
- $ds-theme-dark-border-color-secondary: $ds-color-core-grey-dark;
140
- $ds-theme-dark-border-color-tertiary: $ds-color-core-grey-deep;
141
- $ds-theme-dark-content-color-brand-disabled: $ds-color-core-white-opacity-50;
142
- $ds-theme-dark-content-color-brand-hover: $ds-color-core-orange-mid;
143
- $ds-theme-dark-content-color-brand-pressed: $ds-color-core-orange-mid;
144
- $ds-theme-dark-content-color-brand: $ds-color-core-orange-base;
145
- $ds-theme-dark-content-color-feedback-error: $ds-color-core-red-mid;
146
- $ds-theme-dark-content-color-feedback-info: $ds-color-core-grey-base;
147
- $ds-theme-dark-content-color-feedback-success: $ds-color-core-green-mid;
148
- $ds-theme-dark-content-color-feedback-warning: $ds-color-core-yellow-mid;
149
- $ds-theme-dark-content-color-interaction-accent-hover: $ds-color-core-blue-mid;
150
- $ds-theme-dark-content-color-interaction-accent-pressed: $ds-color-core-blue-mid;
151
- $ds-theme-dark-content-color-interaction-accent: $ds-color-core-blue-mid;
152
- $ds-theme-dark-content-color-interaction-neutral: $ds-color-core-white-base;
153
- $ds-theme-dark-content-color-primary-disabled: $ds-color-core-white-opacity-50;
154
- $ds-theme-dark-content-color-primary-inverse-disabled: $ds-color-core-black-opacity-50;
155
- $ds-theme-dark-content-color-primary-inverse: $ds-color-core-grey-ultra-deep;
156
- $ds-theme-dark-content-color-primary-on-brand-disabled: $ds-color-core-black-opacity-50;
157
- $ds-theme-dark-content-color-primary-on-brand: $ds-color-core-grey-ultra-deep;
158
- $ds-theme-dark-content-color-primary: $ds-color-core-white-base;
159
- $ds-theme-dark-content-color-secondary-disabled: $ds-color-core-white-opacity-50;
160
- $ds-theme-dark-content-color-secondary: $ds-color-core-grey-base;
161
- $ds-theme-dark-content-color-sustainability: $ds-color-core-forest-mid;
162
- $ds-theme-dark-content-color-tertiary: $ds-color-core-grey-dark;
@@ -1,45 +0,0 @@
1
- @import '_animation.scss';
2
- /**
3
- *
4
- * This mixin provides a concise way to set transitions with a default
5
- * duration of 0.3s and easing of `ease` for one or multiple properties.
6
- *
7
- * In addition, the mixin respects the user's system preference for reduced
8
- * motion and adjusts the transition duration accordingly.
9
- *
10
- * Example Usage:
11
- * @include ds-transition((opacity, transform), '250', 'ease-out');
12
- * @include ds-transition(width, $easing-key: 'ease-out');
13
- */
14
- @mixin ds-transition($properties, $duration-key: '100', $easing-key: 'linear') {
15
- @if length($properties) == 0 or $properties == null {
16
- @error "[STIHL Design System] - [ds-transition()]: No properties provided for ds-transition() mixin.";
17
- }
18
-
19
- $duration: map-get($ds-animation-durations, $duration-key);
20
- $easing: map-get($ds-animation-easing-functions, $easing-key);
21
-
22
- @if not map-has-key($ds-animation-durations, $duration-key) {
23
- @error "[STIHL Design System] - [ds-transition()]: Duration key '#{$duration-key}' is not available in the ds-transition() mixin.";
24
- }
25
-
26
- @if not map-has-key($ds-animation-easing-functions, $easing-key) {
27
- @error "[STIHL Design System] - [ds-transition()]: Easing key '#{$easing-key}' is not available in the ds-transition() mixin.";
28
- }
29
-
30
- $transition-values: ();
31
- @each $prop in $properties {
32
- $transition-values: append(
33
- $transition-values,
34
- #{$prop} #{$duration} #{$easing},
35
- comma
36
- );
37
- }
38
- & {
39
- transition: $transition-values;
40
-
41
- @media (prefers-reduced-motion: reduce) {
42
- transition-duration: 0ms;
43
- }
44
- }
45
- }
@@ -1,65 +0,0 @@
1
- "use client";
2
- import { j as t } from "./chunks/jsx-runtime.C115EyI4.js";
3
- import { c as b } from "./chunks/index.CvOaL64Y.js";
4
- import "react";
5
- import { D as y } from "./chunks/Icon.C2o2seDb.js";
6
- import { DSSpinner as f } from "./spinner.D-xrotcu.js";
7
- import './assets/switch.C1Ei0-z8.css';const x = "_root_10ymp_76", j = "_root--label-right_10ymp_116", k = "_root--stretched_10ymp_119", S = "_loader_10ymp_129", g = "_thumb_10ymp_187", w = "_root--checked_10ymp_202", o = {
8
- root: x,
9
- "root--label-right": "_root--label-right_10ymp_116",
10
- rootLabelRight: j,
11
- "root--stretched": "_root--stretched_10ymp_119",
12
- rootStretched: k,
13
- switch: "_switch_10ymp_124",
14
- loader: S,
15
- thumb: g,
16
- "root--checked": "_root--checked_10ymp_202",
17
- rootChecked: w
18
- }, E = ({
19
- children: h,
20
- aria: i,
21
- alignLabel: l = "left",
22
- checked: e = !1,
23
- className: m,
24
- dataTrackingid: _,
25
- disabled: s = !1,
26
- loading: r = !1,
27
- stretched: n = !1,
28
- onClick: a,
29
- ...p
30
- }) => {
31
- const d = b(o.root, m, {
32
- [o.rootChecked]: e === !0,
33
- [o.rootStretched]: n === !0,
34
- [o.rootLabelRight]: l === "right"
35
- }), u = (c) => {
36
- if (s || r) {
37
- c.preventDefault();
38
- return;
39
- }
40
- a && a(c);
41
- };
42
- return /* @__PURE__ */ t.jsxs(
43
- "button",
44
- {
45
- className: d,
46
- "data-trackingid": _,
47
- onClick: u,
48
- ...i,
49
- ...p,
50
- type: "button",
51
- role: "switch",
52
- "aria-checked": e,
53
- "aria-disabled": s || r,
54
- "aria-busy": r,
55
- children: [
56
- /* @__PURE__ */ t.jsx("span", { children: h }),
57
- !r && /* @__PURE__ */ t.jsx("span", { className: o.switch, children: /* @__PURE__ */ t.jsx("span", { className: o.thumb, children: /* @__PURE__ */ t.jsx(y, { name: "check", "aria-hidden": "true" }) }) }),
58
- r && /* @__PURE__ */ t.jsx("span", { className: o.loader, children: /* @__PURE__ */ t.jsx(f, { aria: { "aria-label": "Loading state" } }) })
59
- ]
60
- }
61
- );
62
- };
63
- export {
64
- E as DSSwitch
65
- };