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

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 (648) hide show
  1. package/Klarna.svg +1 -0
  2. package/Mastercard.svg +2 -0
  3. package/Notification-additional-information.jpeg +0 -0
  4. package/Notification-confirm-error.jpg +0 -0
  5. package/Notification-confirm-warn.jpeg +0 -0
  6. package/Notification-overview.jpeg +0 -0
  7. package/Notification-success.jpeg +0 -0
  8. package/PayPal.svg +2 -0
  9. package/Placeholder.svg +1 -0
  10. package/README.md +1 -10
  11. package/Visa.svg +2 -0
  12. package/accordion.CEKQh-7i.js +10 -0
  13. package/accordion.d.ts +2 -0
  14. package/arialiveregions.BKpxxK7O.js +27 -0
  15. package/arialiveregions.d.ts +2 -0
  16. package/assets/Accordion.DMEFgtQm.css +1 -0
  17. package/assets/CheckboxGroup.Bz3_xkZU.css +1 -0
  18. package/assets/Chip.D10_7Q82.css +1 -0
  19. package/assets/CustomReactSelect.D5XKd9vg.css +1 -0
  20. package/assets/Dialog.B0pucIEI.css +1 -0
  21. package/assets/Drawer.CATBzfY7.css +1 -0
  22. package/assets/Fieldset.CwDhKRUL.css +1 -0
  23. package/assets/Icon.Duy_0R8w.css +1 -0
  24. package/assets/InputPassword.DOAAzj-O.css +1 -0
  25. package/assets/InputSearch.CxPYaQGZ.css +1 -0
  26. package/assets/InputStepper.CYYJUu0b.css +1 -0
  27. package/assets/Notification.mhVFeSGm.css +1 -0
  28. package/assets/Select.DZKpHV4G.css +1 -0
  29. package/assets/Textarea.Cp0b7oZp.css +1 -0
  30. package/assets/Toast.Cz6wYaBv.css +1 -0
  31. package/assets/arialiveregions.GsGx2USO.css +1 -0
  32. package/assets/asterisk.DlJ4YtSZ.css +1 -0
  33. package/assets/button.C9_ejpGG.css +1 -0
  34. package/assets/buttonround.DTCqRP-0.css +1 -0
  35. package/assets/checkbox.K4CVYK9g.css +1 -0
  36. package/assets/chipgroup.BMovtKTy.css +1 -0
  37. package/assets/flag.DX_lH1v7.css +1 -0
  38. package/assets/floatingactionbutton.Do-yEH6c.css +1 -0
  39. package/assets/heading.6bER-Eac.css +1 -0
  40. package/assets/input.Q5oKkmW2.css +1 -0
  41. package/assets/link.DhZqkLMP.css +1 -0
  42. package/assets/linkstandalone.Dwz-_O8q.css +1 -0
  43. package/assets/logo.pETQEsvZ.css +1 -0
  44. package/assets/optioncheckbox.C62HtIj5.css +1 -0
  45. package/assets/radio.-Xxx5wL4.css +1 -0
  46. package/assets/skiptocontent.CHcqLS7S.css +1 -0
  47. package/assets/spinner.D_Nnf1ZG.css +1 -0
  48. package/assets/switch.C1Ei0-z8.css +1 -0
  49. package/assets/systemfeedback.Sq0bAIyf.css +1 -0
  50. package/assets/text.DxKFcfY6.css +1 -0
  51. package/assets/title.f74Bosn-.css +1 -0
  52. package/asterisk.DDn-yX4P.js +8 -0
  53. package/asterisk.d.ts +1 -0
  54. package/button.C5opEJ6x.js +135 -0
  55. package/button.d.ts +1 -0
  56. package/buttonround.CUoqRyy0.js +118 -0
  57. package/buttonround.d.ts +1 -0
  58. package/checkbox.DETR3e3X.js +112 -0
  59. package/checkbox.d.ts +1 -0
  60. package/checkboxgroup.BqD5IV51.js +8 -0
  61. package/checkboxgroup.d.ts +1 -0
  62. package/chip.B92ew-hk.js +10 -0
  63. package/chip.d.ts +2 -0
  64. package/chipgroup.BJrqEfvr.js +175 -0
  65. package/chipgroup.d.ts +2 -0
  66. package/chunks/360.CfjUtgxq.js +10 -0
  67. package/chunks/Accordion.DFwFN8mX.js +125 -0
  68. package/chunks/AriaLiveRegions.utils.BGSZafnS.js +34 -0
  69. package/chunks/CheckboxGroup.M3jOjhNf.js +92 -0
  70. package/chunks/Chip.fMG8wi5K.js +142 -0
  71. package/chunks/CustomReactSelect.D3jv5-fa.js +3598 -0
  72. package/chunks/Dialog.Fwr6vLiK.js +148 -0
  73. package/chunks/Drawer.CKoYzQHd.js +154 -0
  74. package/chunks/Fieldset.C9K8BYmH.js +99 -0
  75. package/chunks/Icon.C2o2seDb.js +223 -0
  76. package/chunks/{Input.utils.f8f3286f.js → Input.utils.ChV6RJsh.js} +24 -17
  77. package/chunks/InputPassword.C7pNeWGx.js +143 -0
  78. package/{inputsearch.6e913fc6.js → chunks/InputSearch.B24rcIJ_.js} +70 -66
  79. package/chunks/InputStepper.CEW-bieQ.js +294 -0
  80. package/chunks/Notification.BXVN7_Fs.js +93 -0
  81. package/chunks/RadioGroup.D4UOflwr.js +137 -0
  82. package/chunks/Select.Ds86q4UC.js +194 -0
  83. package/chunks/Textarea.DcB8hKnO.js +198 -0
  84. package/chunks/Toast.DrzxdzVW.js +89 -0
  85. package/chunks/academic-cap.OBigTQQS.js +10 -0
  86. package/chunks/alarm-clock.CpK-AEZG.js +10 -0
  87. package/chunks/arrow-clockwise.BefOjGPg.js +10 -0
  88. package/chunks/arrow-counterclockwise.C7Ov32BZ.js +10 -0
  89. package/chunks/arrow-down-line.RDD2pRZY.js +10 -0
  90. package/chunks/arrow-down.XpokLh98.js +10 -0
  91. package/chunks/arrow-edge.CPA93M81.js +10 -0
  92. package/chunks/arrow-left.C8NG5I2X.js +10 -0
  93. package/chunks/arrow-out.CsHHHYN9.js +10 -0
  94. package/chunks/arrow-outline-left.Bhw_LzfV.js +10 -0
  95. package/chunks/arrow-right.HNwAz18h.js +10 -0
  96. package/chunks/arrow-up-arrow-down.BVyuVJP5.js +10 -0
  97. package/chunks/arrow-up.Ca1GnLaY.js +10 -0
  98. package/chunks/at.BNfdp4M0.js +10 -0
  99. package/chunks/barcode-scanner.D0olxB_m.js +10 -0
  100. package/chunks/battery.YCg9lYqC.js +10 -0
  101. package/chunks/bell.DbPxCAUM.js +10 -0
  102. package/chunks/bin-open.DsjIBW00.js +10 -0
  103. package/chunks/bin.ktpYUJmK.js +10 -0
  104. package/chunks/bluetooth.dW5tTwby.js +10 -0
  105. package/chunks/bookmark.B7Mbr-d6.js +10 -0
  106. package/chunks/burger.DLP81BXa.js +10 -0
  107. package/chunks/calendar.Cig7yG7m.js +10 -0
  108. package/chunks/camera.BoCB0Emp.js +10 -0
  109. package/chunks/cart-check.CYH0vTB8.js +10 -0
  110. package/chunks/cart-plus.DzXXFMZj.js +10 -0
  111. package/chunks/cart.CoEwMABr.js +10 -0
  112. package/chunks/catalog.CwV-J6Kb.js +10 -0
  113. package/chunks/certificate.Crs4RohK.js +10 -0
  114. package/chunks/chain-link.BMV2WV6k.js +10 -0
  115. package/chunks/chainsaw.CI1EYF7a.js +10 -0
  116. package/chunks/check.CuZKWgYj.js +10 -0
  117. package/chunks/chevron-down.5UkGOwK_.js +10 -0
  118. package/chunks/chevron-left.DRFQ-efY.js +10 -0
  119. package/chunks/chevron-line-left.SQvDJQ1t.js +10 -0
  120. package/chunks/chevron-line-right.CYQ3b2cQ.js +10 -0
  121. package/chunks/chevron-right.B_Ew9QUt.js +10 -0
  122. package/chunks/chevron-up.DqETUWqG.js +10 -0
  123. package/chunks/circle-check-colored.Bye_GwLy.js +10 -0
  124. package/chunks/circle-check-inverted.Cc2cUmWT.js +10 -0
  125. package/chunks/circle-info-colored.D2pp54gf.js +10 -0
  126. package/chunks/circle-info-inverted.D8Z0vTmu.js +10 -0
  127. package/chunks/circle-pause.DaRfXOff.js +10 -0
  128. package/chunks/circle-stroke.CWu_o3Gx.js +10 -0
  129. package/chunks/circle.471EUzv6.js +10 -0
  130. package/chunks/clock.Bw5ICIVH.js +10 -0
  131. package/chunks/coffee-cup.DIijzKx_.js +10 -0
  132. package/chunks/compare.BgktBbYD.js +10 -0
  133. package/chunks/connected-box-mobile.DboMCVxp.js +10 -0
  134. package/chunks/connected-box-stationary.CAPCPQ1d.js +10 -0
  135. package/chunks/connected-box.DVqJw-ws.js +10 -0
  136. package/chunks/cross.rEw3TuHs.js +10 -0
  137. package/chunks/diamond-exclamationmark-colored.WNKYwZ8q.js +10 -0
  138. package/chunks/diamond-exclamationmark-inverted.DzAIb8Nt.js +10 -0
  139. package/chunks/diamond.CXZHFpPC.js +10 -0
  140. package/chunks/diskette._0C2VZ9v.js +10 -0
  141. package/chunks/distance.FA6pTjcW.js +10 -0
  142. package/chunks/dots-connected.ZMYjHeNS.js +10 -0
  143. package/chunks/{download-complete.0b84a7cc.js → download-complete.CZVpzrvY.js} +3 -4
  144. package/chunks/envelope-open.CA4cE5lk.js +10 -0
  145. package/chunks/envelope.re-RxZVw.js +10 -0
  146. package/chunks/exclamationmark.DEbIGqGC.js +10 -0
  147. package/chunks/exit.Cgb8AB-k.js +10 -0
  148. package/chunks/eye-closed.CvqozUwK.js +10 -0
  149. package/chunks/eye.CRQMKZs4.js +10 -0
  150. package/chunks/{triangle.bff84ddf.js → facebook.CVcxa0rV.js} +2 -3
  151. package/chunks/filter.DrPSKpaG.js +10 -0
  152. package/chunks/finger-double-arrow.DDUZoPh8.js +10 -0
  153. package/chunks/flash.CgJJ1bUx.js +10 -0
  154. package/chunks/fullscreen.Be2rBj1i.js +10 -0
  155. package/chunks/gear.DEltGVSA.js +10 -0
  156. package/chunks/globe.DG6uw6fi.js +10 -0
  157. package/chunks/grid.DH1impeF.js +10 -0
  158. package/chunks/guidance.BBYB3JpW.js +10 -0
  159. package/chunks/haircross.D-whkit9.js +10 -0
  160. package/chunks/hanger.Bo8qtNo5.js +10 -0
  161. package/chunks/has-document.r9i9TxKV.js +5 -0
  162. package/chunks/headphones.DjWXOuJJ.js +10 -0
  163. package/chunks/heart.D-BnHMb-.js +10 -0
  164. package/chunks/hexagon-arrow-clockwise.D0eeDQQx.js +10 -0
  165. package/chunks/horizontal-ellipsis.ChdN6RnG.js +10 -0
  166. package/chunks/house.BohpDQ3q.js +10 -0
  167. package/chunks/imow.Dh1oMqcW.js +10 -0
  168. package/chunks/info.BZVg9FLA.js +10 -0
  169. package/chunks/instagram.CIlKb7xj.js +10 -0
  170. package/chunks/{jsx-runtime.5c071667.js → jsx-runtime.C115EyI4.js} +259 -256
  171. package/chunks/leave-fullscreen.BC5iwDur.js +10 -0
  172. package/chunks/lightbulb.DQ7TiRsr.js +10 -0
  173. package/chunks/linkedin.br5zvxco.js +10 -0
  174. package/chunks/list-three-rows.Cso4ybs8.js +10 -0
  175. package/chunks/list-two-rows.DOsZEv0-.js +10 -0
  176. package/chunks/loading-spinner.BukfMaU6.js +10 -0
  177. package/chunks/lock.Dw_GOpTn.js +10 -0
  178. package/chunks/magnifying-glass-minus.BYztw2P1.js +10 -0
  179. package/chunks/magnifying-glass-plus.BTgviDVh.js +10 -0
  180. package/chunks/magnifying-glass.C8DfRaIO.js +10 -0
  181. package/chunks/map.CXgG1iGz.js +10 -0
  182. package/chunks/minus.BkhCuIH4.js +10 -0
  183. package/chunks/mobile.C1Kj9VnC.js +10 -0
  184. package/chunks/nine-squares.DVsNAOzz.js +10 -0
  185. package/chunks/note-check.CM_kmt0M.js +10 -0
  186. package/chunks/note-plus.Bkn78EyA.js +10 -0
  187. package/chunks/note.CE0ACLn8.js +10 -0
  188. package/chunks/number-input.BLhoh5mh.js +10 -0
  189. package/chunks/paperclip.BMerX4rj.js +10 -0
  190. package/chunks/parcel.Ve9GL_EG.js +10 -0
  191. package/chunks/pause.B91Ejn-O.js +10 -0
  192. package/chunks/pdf.9kZbElrZ.js +10 -0
  193. package/chunks/pen.CvKw2PvE.js +10 -0
  194. package/chunks/percent.BlB6rG-B.js +10 -0
  195. package/chunks/petrol.Du6qAgp0.js +10 -0
  196. package/chunks/phone.DzdXfmNC.js +10 -0
  197. package/chunks/pin-s.DXgYuN9C.js +10 -0
  198. package/chunks/pin.DZfZr4El.js +10 -0
  199. package/chunks/pinterest.sUPAub_q.js +10 -0
  200. package/chunks/placeholder.Dbb0hT5R.js +10 -0
  201. package/chunks/play.BDiY2JrT.js +10 -0
  202. package/chunks/plug.DZozve4C.js +10 -0
  203. package/chunks/plus.zdu17kAe.js +10 -0
  204. package/chunks/printer.CaFaWfeS.js +10 -0
  205. package/chunks/prohibition-sign.DUFn0QiV.js +10 -0
  206. package/chunks/questionmark.QyDxanQy.js +10 -0
  207. package/chunks/security.DkLw5ym4.js +10 -0
  208. package/chunks/share.C3wwEl8n.js +10 -0
  209. package/chunks/shirt.BC8W-yCI.js +10 -0
  210. package/chunks/shop.DdPV35mK.js +10 -0
  211. package/chunks/sound-off.D4kGcehG.js +10 -0
  212. package/chunks/sound-on.Cynkb0_t.js +10 -0
  213. package/chunks/speechbubble.87vuoKUp.js +10 -0
  214. package/chunks/speechbubbles.CSFhpNJn.js +10 -0
  215. package/chunks/square.D6PgEi_r.js +10 -0
  216. package/chunks/star-half.DZTtM5Bw.js +10 -0
  217. package/chunks/star.BkjednvI.js +10 -0
  218. package/chunks/tag.yO7uMsHj.js +10 -0
  219. package/chunks/thumbs-down.DeBD6wnK.js +10 -0
  220. package/chunks/thumbs-up.D-44gexH.js +10 -0
  221. package/chunks/translate.isa3FHb8.js +11 -0
  222. package/chunks/triangle-exclamationmark-colored.CbVC3Gzi.js +10 -0
  223. package/chunks/triangle-exclamationmark-inverted.BiGoK7TV.js +10 -0
  224. package/chunks/triangle.ibv6NDnt.js +10 -0
  225. package/chunks/truck.xIk5wW6T.js +10 -0
  226. package/chunks/two-people-screen.BBLouaW4.js +10 -0
  227. package/chunks/two-sheets.DWFmuL7N.js +10 -0
  228. package/chunks/upload.ZImTAIgx.js +10 -0
  229. package/chunks/user.BMARueuy.js +10 -0
  230. package/chunks/vertical-ellipsis.Bc9eBsDF.js +10 -0
  231. package/chunks/wc.gmKE1r5l.js +10 -0
  232. package/chunks/whatsapp.CPpu-7Nn.js +10 -0
  233. package/chunks/wifi-1bar.BcEP-r8w.js +10 -0
  234. package/chunks/wifi-2bars.jDOd4Q3q.js +10 -0
  235. package/chunks/wifi-off.D9xPqVWn.js +10 -0
  236. package/chunks/wifi.CuQykF6X.js +10 -0
  237. package/chunks/wind-rose.C-XcKdy-.js +10 -0
  238. package/chunks/wrench.DMFV2S9u.js +10 -0
  239. package/chunks/x.BqbpXd7O.js +10 -0
  240. package/chunks/xing.CiKYLbPq.js +10 -0
  241. package/chunks/youtube.DrImaRSP.js +10 -0
  242. package/combobox.BeTnbG1m.js +47 -0
  243. package/combobox.d.ts +1 -0
  244. package/components/Accordion/Accordion.d.ts +39 -0
  245. package/components/Accordion/Accordion.test.d.ts +1 -0
  246. package/components/Accordion/Accordion.utils.d.ts +14 -0
  247. package/components/Accordion/Acordion.utils.test.d.ts +1 -0
  248. package/components/AriaLiveRegions/AriaLiveRegions.d.ts +4 -0
  249. package/components/AriaLiveRegions/AriaLiveRegions.utils.d.ts +5 -0
  250. package/components/AriaLiveRegions/AriaLiveRegions.utils.test.d.ts +1 -0
  251. package/components/Asterisk/Asterisk.d.ts +0 -1
  252. package/components/Button/Button.d.ts +32 -17
  253. package/components/ButtonRound/ButtonRound.d.ts +11 -4
  254. package/components/Checkbox/Checkbox.d.ts +20 -11
  255. package/components/CheckboxGroup/CheckboxGroup.d.ts +21 -15
  256. package/components/CheckboxGroup/CheckboxGroup.utils.d.ts +2 -2
  257. package/components/ChipGroup/Chip.d.ts +12 -0
  258. package/components/ChipGroup/ChipGroup.d.ts +42 -0
  259. package/components/ChipGroup/ChipGroup.test.d.ts +1 -0
  260. package/components/ChipGroup/ChipGroup.utils.d.ts +60 -0
  261. package/components/ChipGroup/ChipGroup.utils.test.d.ts +1 -0
  262. package/components/Combobox/Combobox.d.ts +11 -6
  263. package/components/Combobox/Combobox.utils.d.ts +9 -3
  264. package/components/CustomReactSelect/CustomReactSelect.d.ts +38 -26
  265. package/components/CustomReactSelect/CustomReactSelect.utils.d.ts +2 -14
  266. package/components/CustomReactSelect/OptionCheckbox.d.ts +1 -1
  267. package/components/Dialog/Dialog.d.ts +34 -0
  268. package/components/Dialog/Dialog.test.d.ts +1 -0
  269. package/components/Dialog/Dialog.utils.d.ts +11 -0
  270. package/components/Dialog/Dialog.utils.test.d.ts +1 -0
  271. package/components/Drawer/Drawer.d.ts +39 -0
  272. package/components/Drawer/Drawer.test.d.ts +1 -0
  273. package/components/Drawer/Drawer.utils.d.ts +13 -0
  274. package/components/Drawer/Drawer.utils.test.d.ts +1 -0
  275. package/components/Fieldset/Fieldset.d.ts +15 -10
  276. package/components/Fieldset/Fieldset.utils.d.ts +10 -3
  277. package/components/Flag/Flag.d.ts +23 -0
  278. package/components/Flag/Flag.test.d.ts +1 -0
  279. package/components/Flag/Flag.utils.d.ts +2 -0
  280. package/components/FloatingActionButton/FloatingActionButton.d.ts +6 -2
  281. package/components/Heading/Heading.d.ts +13 -7
  282. package/components/Heading/Heading.utils.d.ts +1 -1
  283. package/components/Icon/Icon.d.ts +14 -8
  284. package/components/Icon/Icon.utils.d.ts +3 -6
  285. package/components/Input/Input.d.ts +36 -23
  286. package/components/Input/Input.utils.d.ts +1 -1
  287. package/components/InputPassword/InputPassword.d.ts +34 -17
  288. package/components/InputPassword/InputPassword.utils.d.ts +1 -1
  289. package/components/InputSearch/InputSearch.d.ts +33 -18
  290. package/components/InputSearch/InputSearch.utils.d.ts +1 -1
  291. package/components/InputStepper/InputStepper.d.ts +46 -23
  292. package/components/InputStepper/InputStepper.utils.d.ts +1 -1
  293. package/components/Link/Link.d.ts +32 -20
  294. package/components/LinkStandalone/LinkStandalone.d.ts +7 -6
  295. package/components/Logo/Logo.d.ts +17 -9
  296. package/components/Logo/Logo.utils.d.ts +2 -1
  297. package/components/Notification/Notification.d.ts +35 -0
  298. package/components/Notification/Notification.test.d.ts +1 -0
  299. package/components/Notification/Notification.utils.d.ts +4 -0
  300. package/components/Radio/Radio.d.ts +30 -13
  301. package/components/RadioGroup/RadioGroup.d.ts +33 -24
  302. package/components/RadioGroup/RadioGroup.utils.d.ts +7 -5
  303. package/components/RadioGroup/RadioGroup.utils.test.d.ts +1 -0
  304. package/components/Select/Select.d.ts +25 -14
  305. package/components/Select/Select.utils.d.ts +3 -3
  306. package/components/SkipToContent/SkipToContent.d.ts +17 -0
  307. package/components/SkipToContent/SkipToContent.test.d.ts +1 -0
  308. package/components/Spinner/Spinner.d.ts +10 -6
  309. package/components/Switch/Switch.d.ts +22 -12
  310. package/components/SystemFeedback/SystemFeedback.d.ts +4 -4
  311. package/components/Text/Text.d.ts +16 -8
  312. package/components/Textarea/Textarea.d.ts +34 -17
  313. package/components/Textarea/Textarea.utils.d.ts +1 -1
  314. package/components/Title/Title.d.ts +13 -7
  315. package/components/Toast/Toast.d.ts +27 -0
  316. package/components/Toast/Toast.utils.d.ts +14 -0
  317. package/components/Toast/ToastManager.d.ts +9 -0
  318. package/components/Toast/ToastManager.test.d.ts +1 -0
  319. package/components/Toast/ToastManager.utils.d.ts +2 -0
  320. package/components/Toast/ToastManager.utils.test.d.ts +1 -0
  321. package/customreactselect.d.ts +1 -0
  322. package/customreactselect.lYJhIeyx.js +13 -0
  323. package/dialog.d.ts +2 -0
  324. package/dialog.lGwNQU91.js +9 -0
  325. package/drawer.DNi5m8wP.js +9 -0
  326. package/drawer.d.ts +2 -0
  327. package/fieldset.BqiAjeax.js +11 -0
  328. package/fieldset.d.ts +1 -0
  329. package/flag.XJHHSP38.js +43 -0
  330. package/flag.d.ts +2 -0
  331. package/floatingactionbutton.CMpkTdhX.js +87 -0
  332. package/floatingactionbutton.d.ts +1 -0
  333. package/heading.CAkraI2D.js +50 -0
  334. package/heading.d.ts +1 -0
  335. package/icon.BoMgOmC1.js +8 -0
  336. package/icon.d.ts +1 -0
  337. package/index.d.ts +36 -0
  338. package/index.es.js +178 -46
  339. package/input.d.ts +1 -0
  340. package/input.v7qB7wPJ.js +239 -0
  341. package/inputpassword.CSjh1GU7.js +12 -0
  342. package/inputpassword.d.ts +1 -0
  343. package/inputsearch.DyznOWLK.js +13 -0
  344. package/inputsearch.d.ts +1 -0
  345. package/inputstepper.3BLb7s0P.js +13 -0
  346. package/inputstepper.d.ts +1 -0
  347. package/link.Clk5_BYp.js +116 -0
  348. package/link.d.ts +1 -0
  349. package/linkstandalone.BXERmqdN.js +80 -0
  350. package/linkstandalone.d.ts +1 -0
  351. package/{logo.e6576fe3.js → logo.CEO6OV7u.js} +31 -34
  352. package/logo.d.ts +1 -0
  353. package/notification.0kX1GMaB.js +9 -0
  354. package/notification.d.ts +2 -0
  355. package/optioncheckbox.BPN3f6l_.js +43 -0
  356. package/optioncheckbox.d.ts +1 -0
  357. package/package.json +64 -53
  358. package/partials/connected-apple-icon.png +0 -0
  359. package/partials/connected-favicon.ico +0 -0
  360. package/partials/connected-icon-192.png +0 -0
  361. package/partials/connected-icon-512.png +0 -0
  362. package/partials/connected-icon.svg +1 -0
  363. package/partials/copyAssets.js +25 -13
  364. package/partials/imow-apple-icon.png +0 -0
  365. package/partials/imow-favicon.ico +0 -0
  366. package/partials/imow-icon-192.png +0 -0
  367. package/partials/imow-icon-512.png +0 -0
  368. package/partials/imow-icon.svg +1 -0
  369. package/partials/index.js +896 -916
  370. package/partials/lib/partials.d.ts +1 -2
  371. package/partials/mystihl-apple-icon.png +0 -0
  372. package/partials/mystihl-favicon.ico +0 -0
  373. package/partials/mystihl-icon-192.png +0 -0
  374. package/partials/mystihl-icon-512.png +0 -0
  375. package/partials/mystihl-icon.svg +1 -0
  376. package/radio.DTZNJzMU.js +115 -0
  377. package/radio.d.ts +1 -0
  378. package/radiogroup.SYkZm2DG.js +10 -0
  379. package/radiogroup.d.ts +1 -0
  380. package/select.CYbwR3RW.js +12 -0
  381. package/select.d.ts +1 -0
  382. package/skiptocontent.DUQWopO4.js +46 -0
  383. package/skiptocontent.d.ts +2 -0
  384. package/spinner.D-xrotcu.js +58 -0
  385. package/spinner.d.ts +1 -0
  386. package/styles/fonts/STIHLContrafaceDigitalTextDemi.woff +0 -0
  387. package/styles/fonts/STIHLContrafaceDigitalTextDemi.woff2 +0 -0
  388. package/styles/fonts/font-face.min.css +1 -1
  389. package/styles/scss/_index.scss +3 -0
  390. package/styles/scss/lib/_animation.scss +20 -5
  391. package/styles/scss/lib/_breakpoints.scss +0 -1
  392. package/styles/scss/lib/_container-query.scss +3 -3
  393. package/styles/scss/lib/_focus.scss +2 -1
  394. package/styles/scss/lib/_grid-extended.scss +2 -2
  395. package/styles/scss/lib/_grid-narrow.scss +2 -0
  396. package/styles/scss/lib/_grid-sidebar-sidebar.scss +4 -2
  397. package/styles/scss/lib/_grid-sidebar.scss +35 -45
  398. package/styles/scss/lib/_grid.scss +15 -13
  399. package/styles/scss/lib/_heading.scss +61 -7
  400. package/styles/scss/lib/_helpers.scss +12 -0
  401. package/styles/scss/lib/_high-contrast.scss +24 -0
  402. package/styles/scss/lib/_link.scss +65 -91
  403. package/styles/scss/lib/_media-query.scss +3 -3
  404. package/styles/scss/lib/_shadow.scss +10 -0
  405. package/styles/scss/lib/_spacing-dynamic.scss +61 -0
  406. package/styles/scss/lib/_spacing.scss +14 -0
  407. package/styles/scss/lib/_text.scss +60 -13
  408. package/styles/scss/lib/_theme.scss +9 -7
  409. package/styles/scss/lib/_transition.scss +26 -7
  410. package/switch.CoNnIhM4.js +65 -0
  411. package/switch.d.ts +1 -0
  412. package/systemfeedback.ZzRUAVYX.js +25 -0
  413. package/systemfeedback.d.ts +1 -0
  414. package/text.d.ts +1 -0
  415. package/text.fMcHzVbH.js +57 -0
  416. package/textarea.DJc527nX.js +12 -0
  417. package/textarea.d.ts +1 -0
  418. package/title.LY1ylQsb.js +36 -0
  419. package/title.d.ts +1 -0
  420. package/toast.D48GFmp0.js +10 -0
  421. package/toast.d.ts +2 -0
  422. package/toastmanager.Dl8-Q3ED.js +119 -0
  423. package/toastmanager.d.ts +2 -0
  424. package/types/icon-types.d.ts +1 -1
  425. package/utils/index.d.ts +3 -0
  426. package/utils/remove-spaces.d.ts +6 -0
  427. package/utils/remove-spaces.test.d.ts +1 -0
  428. package/utils/render-documentation.d.ts +0 -1
  429. package/utils/translate.d.ts +11 -0
  430. package/utils/translate.test.d.ts +1 -0
  431. package/utils/useBreakpoint.d.ts +1 -1
  432. package/utils/useIsomorphicLayoutEffect.d.ts +25 -0
  433. package/utils/vitest.setup.d.ts +4 -0
  434. package/assets/Asterisk.288a3f48.css +0 -1
  435. package/assets/Button.c09c516e.css +0 -1
  436. package/assets/ButtonRound.fd628e54.css +0 -1
  437. package/assets/Checkbox.cde01607.css +0 -1
  438. package/assets/CustomReactSelect.cdb5f164.css +0 -1
  439. package/assets/Fieldset.729910fe.css +0 -1
  440. package/assets/FloatingActionButton.de295f5d.css +0 -1
  441. package/assets/Heading.50f5e903.css +0 -1
  442. package/assets/Icon.8890ee9a.css +0 -1
  443. package/assets/Input.92913cfe.css +0 -1
  444. package/assets/InputPassword.d7b9c937.css +0 -1
  445. package/assets/InputSearch.888f630a.css +0 -1
  446. package/assets/InputStepper.969db0d2.css +0 -1
  447. package/assets/Link.75834750.css +0 -1
  448. package/assets/LinkStandalone.19bdab0d.css +0 -1
  449. package/assets/Logo.09e48e82.css +0 -1
  450. package/assets/OptionCheckbox.c56568a3.css +0 -1
  451. package/assets/Radio.79d98dde.css +0 -1
  452. package/assets/RadioGroup.8b55ee38.css +0 -1
  453. package/assets/Select.b9c135c2.css +0 -1
  454. package/assets/Spinner.af45d460.css +0 -1
  455. package/assets/Switch.781e3de6.css +0 -1
  456. package/assets/SystemFeedback.c30264c0.css +0 -1
  457. package/assets/Text.ac70cc84.css +0 -1
  458. package/assets/Textarea.12046393.css +0 -1
  459. package/assets/Title.e9e5a7e6.css +0 -1
  460. package/asterisk.cb74ea72.js +0 -8
  461. package/button.87ad387c.js +0 -135
  462. package/buttonround.ecb24c29.js +0 -118
  463. package/checkbox.42617f46.js +0 -112
  464. package/checkboxgroup.fa110fdf.js +0 -78
  465. package/chunks/360.3f3132d9.js +0 -11
  466. package/chunks/CustomReactSelect.2e4e7ba0.js +0 -5015
  467. package/chunks/Link.module.15dedc23.js +0 -37
  468. package/chunks/RadioGroup.module.59ca486a.js +0 -11
  469. package/chunks/academic-cap.a6849ffc.js +0 -11
  470. package/chunks/alarm-clock.542230f3.js +0 -11
  471. package/chunks/arrow-clockwise.0496f663.js +0 -11
  472. package/chunks/arrow-counterclockwise.635a0130.js +0 -11
  473. package/chunks/arrow-down-line.0976611e.js +0 -11
  474. package/chunks/arrow-down.9780d975.js +0 -11
  475. package/chunks/arrow-edge.3288acdd.js +0 -11
  476. package/chunks/arrow-left.ace9c808.js +0 -11
  477. package/chunks/arrow-out.0499f39e.js +0 -11
  478. package/chunks/arrow-outline-left.efc33275.js +0 -11
  479. package/chunks/arrow-right.133feef2.js +0 -11
  480. package/chunks/arrow-up-arrow-down.b612e9b1.js +0 -11
  481. package/chunks/arrow-up.3be6430a.js +0 -11
  482. package/chunks/at.6279d12b.js +0 -11
  483. package/chunks/barcode-scanner.0a4a314d.js +0 -11
  484. package/chunks/battery.e1249ee1.js +0 -11
  485. package/chunks/bell.87fe4f0b.js +0 -11
  486. package/chunks/bin-open.be4290d8.js +0 -11
  487. package/chunks/bin.b36466f3.js +0 -11
  488. package/chunks/bluetooth.54b89b90.js +0 -11
  489. package/chunks/bookmark.4d5ce4c3.js +0 -11
  490. package/chunks/burger.1301d91e.js +0 -11
  491. package/chunks/calendar.ba39a664.js +0 -11
  492. package/chunks/camera.3bed4f3b.js +0 -11
  493. package/chunks/cart-check.9fb6abdb.js +0 -11
  494. package/chunks/cart-plus.fd5c4674.js +0 -11
  495. package/chunks/cart.7516d35c.js +0 -11
  496. package/chunks/catalog.bd0c7830.js +0 -11
  497. package/chunks/certificate.1639c28e.js +0 -11
  498. package/chunks/chain-link.45025ed0.js +0 -11
  499. package/chunks/chainsaw.56d43a9f.js +0 -11
  500. package/chunks/check.a08beeae.js +0 -11
  501. package/chunks/chevron-down.80b0dc85.js +0 -11
  502. package/chunks/chevron-left.f5feade0.js +0 -11
  503. package/chunks/chevron-line-left.17b172d1.js +0 -11
  504. package/chunks/chevron-line-right.7cd234b7.js +0 -11
  505. package/chunks/chevron-right.259bc1a3.js +0 -11
  506. package/chunks/chevron-up.d1335850.js +0 -11
  507. package/chunks/circle-check-colored.98e13ab9.js +0 -11
  508. package/chunks/circle-check-inverted.db29ab06.js +0 -11
  509. package/chunks/circle-info-colored.8da47e36.js +0 -11
  510. package/chunks/circle-info-inverted.0ed118fb.js +0 -11
  511. package/chunks/circle-pause.55300d1b.js +0 -11
  512. package/chunks/circle-stroke.203dd7aa.js +0 -11
  513. package/chunks/circle.33ec82eb.js +0 -11
  514. package/chunks/clock.3014a102.js +0 -11
  515. package/chunks/coffee-cup.98d6531f.js +0 -11
  516. package/chunks/compare.c76b221b.js +0 -11
  517. package/chunks/connected-box-mobile.9cd742dd.js +0 -11
  518. package/chunks/connected-box-stationary.191a3ed0.js +0 -11
  519. package/chunks/connected-box.fe21c39b.js +0 -11
  520. package/chunks/cross.fe709ee7.js +0 -11
  521. package/chunks/diamond-exclamationmark-colored.bf3ffccf.js +0 -11
  522. package/chunks/diamond-exclamationmark-inverted.b5648587.js +0 -11
  523. package/chunks/diamond.e962c289.js +0 -11
  524. package/chunks/diskette.04733444.js +0 -11
  525. package/chunks/distance.9e6b56ff.js +0 -11
  526. package/chunks/dots-connected.9869fae1.js +0 -11
  527. package/chunks/envelope-open.3c3fd714.js +0 -11
  528. package/chunks/envelope.5c9ff834.js +0 -11
  529. package/chunks/exclamationmark.92afe58f.js +0 -11
  530. package/chunks/exit.bde46887.js +0 -11
  531. package/chunks/eye-closed.0b517bb7.js +0 -11
  532. package/chunks/eye.8f4b311b.js +0 -11
  533. package/chunks/facebook.4a040606.js +0 -11
  534. package/chunks/filter.dee66683.js +0 -11
  535. package/chunks/finger-double-arrow.9cd4c623.js +0 -11
  536. package/chunks/flash.15646b5e.js +0 -11
  537. package/chunks/fullscreen.fdd976fe.js +0 -11
  538. package/chunks/gear.1f5f6fe9.js +0 -11
  539. package/chunks/globe.7f419498.js +0 -11
  540. package/chunks/grid.2c1cdc21.js +0 -11
  541. package/chunks/guidance.63bebf3e.js +0 -11
  542. package/chunks/haircross.0ac15319.js +0 -11
  543. package/chunks/hanger.edc848f4.js +0 -11
  544. package/chunks/headphones.a023699e.js +0 -11
  545. package/chunks/heart.d4440641.js +0 -11
  546. package/chunks/hexagon-arrow-clockwise.98e9b555.js +0 -11
  547. package/chunks/horizontal-ellipsis.84419429.js +0 -11
  548. package/chunks/house.70059642.js +0 -11
  549. package/chunks/imow.3374e620.js +0 -11
  550. package/chunks/info.1787448e.js +0 -11
  551. package/chunks/instagram.e12dd682.js +0 -11
  552. package/chunks/leave-fullscreen.def46043.js +0 -11
  553. package/chunks/lightbulb.b73d3ebf.js +0 -11
  554. package/chunks/linkedin.ce0c68cb.js +0 -11
  555. package/chunks/list-three-rows.ef44c7ef.js +0 -11
  556. package/chunks/list-two-rows.5ed8f1af.js +0 -11
  557. package/chunks/loading-spinner.8293421e.js +0 -11
  558. package/chunks/lock.3cbc8ced.js +0 -11
  559. package/chunks/magnifying-glass-minus.b0f906e5.js +0 -11
  560. package/chunks/magnifying-glass-plus.6ffc69c5.js +0 -11
  561. package/chunks/magnifying-glass.c297e41f.js +0 -11
  562. package/chunks/map.c96b1dcd.js +0 -11
  563. package/chunks/minus.7f6676e8.js +0 -11
  564. package/chunks/mobile.416ee5b0.js +0 -11
  565. package/chunks/nine-squares.34eeb0d4.js +0 -11
  566. package/chunks/note-check.aaf92ef9.js +0 -11
  567. package/chunks/note-plus.e7ab1b93.js +0 -11
  568. package/chunks/note.cc96375c.js +0 -11
  569. package/chunks/number-input.076fcf63.js +0 -11
  570. package/chunks/paperclip.e8831256.js +0 -11
  571. package/chunks/parcel.75534dbd.js +0 -11
  572. package/chunks/pause.901567cf.js +0 -11
  573. package/chunks/pdf.92c1781a.js +0 -11
  574. package/chunks/pen.ecbcb50d.js +0 -11
  575. package/chunks/percent.4b7fa587.js +0 -11
  576. package/chunks/petrol.41999bec.js +0 -11
  577. package/chunks/phone.3c23c041.js +0 -11
  578. package/chunks/pin-s.a5519070.js +0 -11
  579. package/chunks/pin.1137362d.js +0 -11
  580. package/chunks/pinterest.88763b51.js +0 -11
  581. package/chunks/placeholder.d6fdaf8f.js +0 -11
  582. package/chunks/play.dd0f1d8c.js +0 -11
  583. package/chunks/plug.00f114c4.js +0 -11
  584. package/chunks/plus.42721ebf.js +0 -11
  585. package/chunks/printer.5bb7ee0d.js +0 -11
  586. package/chunks/prohibition-sign.af5616b3.js +0 -11
  587. package/chunks/questionmark.db94a06d.js +0 -11
  588. package/chunks/security.2be491e3.js +0 -11
  589. package/chunks/share.ddae7aef.js +0 -11
  590. package/chunks/shirt.135d58c1.js +0 -11
  591. package/chunks/shop.f120426b.js +0 -11
  592. package/chunks/sound-off.c6f5ed43.js +0 -11
  593. package/chunks/sound-on.212c36bc.js +0 -11
  594. package/chunks/speechbubble.9428546e.js +0 -11
  595. package/chunks/speechbubbles.65cb946e.js +0 -11
  596. package/chunks/square.452f505f.js +0 -11
  597. package/chunks/star-half.1458bc5b.js +0 -11
  598. package/chunks/star.fab17456.js +0 -11
  599. package/chunks/tag.4d730d72.js +0 -11
  600. package/chunks/thumbs-down.cbf6e4ec.js +0 -11
  601. package/chunks/thumbs-up.435754e1.js +0 -11
  602. package/chunks/triangle-exclamationmark-colored.94025893.js +0 -11
  603. package/chunks/triangle-exclamationmark-inverted.bc4eed15.js +0 -11
  604. package/chunks/truck.a904d6d3.js +0 -11
  605. package/chunks/two-people-screen.3e509922.js +0 -11
  606. package/chunks/two-sheets.d1cfef0f.js +0 -11
  607. package/chunks/upload.7f1850a3.js +0 -11
  608. package/chunks/user.bf5b30a5.js +0 -11
  609. package/chunks/vertical-ellipsis.1cac00e5.js +0 -11
  610. package/chunks/wc.9d108bd0.js +0 -11
  611. package/chunks/wifi-1bar.b6fc33aa.js +0 -11
  612. package/chunks/wifi-2bars.27e9da59.js +0 -11
  613. package/chunks/wifi-off.e5daf3a9.js +0 -11
  614. package/chunks/wifi.40bb915d.js +0 -11
  615. package/chunks/wind-rose.27fa658a.js +0 -11
  616. package/chunks/wrench.69493ef3.js +0 -11
  617. package/chunks/x.d9da4202.js +0 -11
  618. package/chunks/xing.e17c1a24.js +0 -11
  619. package/chunks/youtube.dbf50787.js +0 -11
  620. package/combobox.d93091e0.js +0 -45
  621. package/customreactselect.7c77375a.js +0 -13
  622. package/fieldset.fdd84bda.js +0 -98
  623. package/floatingactionbutton.281b5465.js +0 -87
  624. package/heading.c02dcb70.js +0 -44
  625. package/icon.b4211784.js +0 -215
  626. package/input.064e0bbf.js +0 -230
  627. package/inputpassword.f76c2f62.js +0 -139
  628. package/inputstepper.2047ec77.js +0 -286
  629. package/link.5eb13d6e.js +0 -84
  630. package/linkstandalone.edfd6288.js +0 -80
  631. package/optioncheckbox.2369560b.js +0 -43
  632. package/radio.fd841ab0.js +0 -79
  633. package/radiogroup.e1c8ea3d.js +0 -100
  634. package/select.88d40c51.js +0 -188
  635. package/spinner.ee015469.js +0 -58
  636. package/switch.96fd1689.js +0 -65
  637. package/systemfeedback.8515a4e0.js +0 -25
  638. package/text.de8facb9.js +0 -57
  639. package/textarea.b8c40c8b.js +0 -189
  640. package/title.7be43d50.js +0 -36
  641. /package/chunks/{helpers.ea3ca41a.js → helpers.B1JT5ShS.js} +0 -0
  642. /package/chunks/{index.8021d3e0.js → index.CvOaL64Y.js} +0 -0
  643. /package/chunks/{useBreakpoint.6c1b06c2.js → useBreakpoint.5xBNDiCf.js} +0 -0
  644. /package/partials/{apple-icon.png → default-apple-icon.png} +0 -0
  645. /package/partials/{favicon.ico → default-favicon.ico} +0 -0
  646. /package/partials/{icon-192.png → default-icon-192.png} +0 -0
  647. /package/partials/{icon-512.png → default-icon-512.png} +0 -0
  648. /package/partials/{icon.svg → default-icon.svg} +0 -0
@@ -3,7 +3,6 @@
3
3
  --ds-grid-gap: 16px;
4
4
  gap: var(--ds-grid-gap);
5
5
  min-width: 320px;
6
- box-sizing: content-box;
7
6
  grid-template-columns:
8
7
  [full-start extended-start] var(--ds-internal-grid-safe-zone)
9
8
  [main-start narrow-left-start narrow-center-start] repeat(4, minmax(0, 1fr))
@@ -11,14 +10,14 @@
11
10
  --ds-internal-grid-safe-zone
12
11
  )
13
12
  [extended-end full-end];
14
- // The safe zone + gap equal to what is called "margin" in the designs 0+16 = 16
13
+ // The safe zone + gap equal to what is called "margin" in the figma designs 0+16 = 16
15
14
  --ds-internal-grid-safe-zone: 0;
16
15
  --ds-grid-span-one-half: span 4;
17
16
  --ds-grid-span-one-third: span 4;
18
17
  --ds-grid-span-two-thirds: span 4;
19
18
  --ds-grid-span-one-quarter: span 2;
20
19
 
21
- @media (min-width: 768px) {
20
+ @include ds-media-query-min('m') {
22
21
  --ds-grid-gap: 24px;
23
22
  gap: var(--ds-grid-gap);
24
23
  grid-template-columns:
@@ -31,7 +30,7 @@
31
30
  --ds-internal-grid-safe-zone
32
31
  )
33
32
  [extended-end full-end];
34
- // The safe zone + gap equal to what is called "margin" in the designs 9+24 = 33
33
+ // The safe zone + gap equal to what is called "margin" in the figma designs 9+24 = 33
35
34
  --ds-internal-grid-safe-zone: 9px;
36
35
  --ds-grid-span-one-half: span 3;
37
36
  --ds-grid-span-one-third: span 2;
@@ -39,7 +38,7 @@
39
38
  --ds-grid-span-one-quarter: span 3;
40
39
  }
41
40
 
42
- @media (min-width: 1024px) {
41
+ @include ds-media-query-min('l') {
43
42
  grid-template-columns:
44
43
  [full-start extended-start] var(--ds-internal-grid-safe-zone)
45
44
  [main-start narrow-left-start] repeat(2, minmax(0, 1fr))
@@ -48,14 +47,14 @@
48
47
  [narrow-center-end] repeat(2, minmax(0, 1fr))
49
48
  [main-end] var(--ds-internal-grid-safe-zone)
50
49
  [extended-end full-end];
51
- // The safe zone + gap equal to what is called "margin" in the designs 26+24 = 50
50
+ // The safe zone + gap equal to what is called "margin" in the figma designs 26+24 = 50
52
51
  --ds-internal-grid-safe-zone: 26px;
53
52
  --ds-grid-span-one-half: span 6;
54
53
  --ds-grid-span-one-third: span 4;
55
54
  --ds-grid-span-two-thirds: span 8;
56
55
  }
57
56
 
58
- @media (min-width: 1536px) {
57
+ @include ds-media-query-min('xl') {
59
58
  --ds-grid-gap: 32px;
60
59
  gap: var(--ds-grid-gap);
61
60
  grid-template-columns:
@@ -66,18 +65,21 @@
66
65
  [narrow-center-end] repeat(3, minmax(0, 1fr))
67
66
  [main-end] var(--ds-internal-grid-safe-zone)
68
67
  [extended-end full-end];
69
- // The safe zone + gap equal to what is called "margin" in the designs 32+32 = 64
68
+ // The safe zone + gap equal to what is called "margin" in the figma designs 32+32 = 64
70
69
  --ds-internal-grid-safe-zone: 32px;
71
70
  }
72
71
 
73
- @media (min-width: 1668px) {
72
+ @include ds-media-query-min('xxl') {
73
+ // the calculation here is based on the fact
74
+ // that we want the main area (main-start till main-end) maximum width to be exactly 1540px
75
+ // so we have to pick 1584px and divide that by 16
74
76
  grid-template-columns:
75
77
  [full-start] auto
76
78
  [extended-start] var(--ds-internal-grid-safe-zone)
77
- [main-start narrow-left-start] repeat(3, minmax(0, calc(1668px / 16)))
78
- [narrow-center-start] repeat(3, minmax(0, calc(1668px / 16)))
79
- [narrow-left-end] repeat(3, minmax(0, calc(1668px / 16)))
80
- [narrow-center-end] repeat(3, minmax(0, calc(1668px / 16)))
79
+ [main-start narrow-left-start] repeat(3, minmax(0, calc(1584px / 16)))
80
+ [narrow-center-start] repeat(3, minmax(0, calc(1584px / 16)))
81
+ [narrow-left-end] repeat(3, minmax(0, calc(1584px / 16)))
82
+ [narrow-center-end] repeat(3, minmax(0, calc(1584px / 16)))
81
83
  [main-end] var(--ds-internal-grid-safe-zone)
82
84
  [extended-end]
83
85
  auto [full-end];
@@ -1,7 +1,8 @@
1
1
  // Base mixin to define common styles
2
2
  @mixin base-heading($fontFamily, $fontSize, $lineHeight) {
3
3
  font-family: #{unquote(
4
- $fontFamily + ', Arial Narrow, Arial, Heiti SC, sans-serif'
4
+ $fontFamily +
5
+ ', -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif'
5
6
  )};
6
7
  font-style: normal;
7
8
  font-variant: normal;
@@ -10,6 +11,21 @@
10
11
  line-height: $lineHeight;
11
12
  }
12
13
 
14
+ // Mixin for bold title
15
+ @mixin base-heading-bold($fontFamily, $fontSize, $lineHeight) {
16
+ @include base-heading($fontFamily, $fontSize, $lineHeight);
17
+
18
+ /* x-height 426 https://vertical-metrics.netlify.app/ */
19
+ font-size-adjust: 0.426;
20
+ }
21
+
22
+ // Mixin for display title text
23
+ @mixin base-heading-display-title($fontFamily, $fontSize, $lineHeight) {
24
+ @include base-heading($fontFamily, $fontSize, $lineHeight);
25
+ /* cap-height 680 https://vertical-metrics.netlify.app/*/
26
+ font-size-adjust: cap-height 0.68;
27
+ }
28
+
13
29
  @mixin responsive-heading($min, $fontSize, $lineHeight) {
14
30
  @include ds-media-query-min($min: $min) {
15
31
  font-size: $fontSize;
@@ -18,36 +34,74 @@
18
34
  }
19
35
 
20
36
  // Mixins for specific heading sizes
37
+ // XL
21
38
  @mixin ds-heading-x-large {
22
- @include base-heading(
39
+ @include base-heading-bold(
40
+ 'STIHL Contraface Digital Text Bold',
41
+ 1.625rem,
42
+ 1.2
43
+ );
44
+ @include responsive-heading('l', 1.875rem, 1.25);
45
+ }
46
+
47
+ @mixin ds-heading-x-large-uppercase {
48
+ @include base-heading-display-title(
23
49
  'STIHL Contraface Digital Display Title',
24
50
  1.625rem,
25
51
  1.2
26
52
  );
53
+ text-transform: uppercase;
27
54
  @include responsive-heading('l', 1.875rem, 1.25);
28
55
  }
29
56
 
57
+ // Large
30
58
  @mixin ds-heading-large {
31
- @include base-heading(
59
+ @include base-heading-bold(
60
+ 'STIHL Contraface Digital Text Bold',
61
+ 1.375rem,
62
+ 1.25
63
+ );
64
+ @include responsive-heading('l', 1.625rem, 1.2);
65
+ }
66
+
67
+ @mixin ds-heading-large-uppercase {
68
+ @include base-heading-display-title(
32
69
  'STIHL Contraface Digital Display Title',
33
70
  1.375rem,
34
71
  1.25
35
72
  );
73
+ text-transform: uppercase;
36
74
  @include responsive-heading('l', 1.625rem, 1.2);
37
75
  }
38
76
 
77
+ // Medium
39
78
  @mixin ds-heading-medium {
40
- @include base-heading('STIHL Contraface Digital Text Bold', 1.25rem, 1.2);
79
+ @include base-heading-bold(
80
+ 'STIHL Contraface Digital Text Bold',
81
+ 1.25rem,
82
+ 1.2
83
+ );
41
84
  }
42
85
 
43
86
  @mixin ds-heading-medium-uppercase {
44
- @include base-heading('STIHL Contraface Digital Display Title', 1.25rem, 1.2);
87
+ @include base-heading-display-title(
88
+ 'STIHL Contraface Digital Display Title',
89
+ 1.25rem,
90
+ 1.2
91
+ );
92
+ text-transform: uppercase;
45
93
  }
46
94
 
95
+ // Small
47
96
  @mixin ds-heading-small {
48
- @include base-heading('STIHL Contraface Digital Text Bold', 1rem, 1.5);
97
+ @include base-heading-bold('STIHL Contraface Digital Text Bold', 1rem, 1.5);
49
98
  }
50
99
 
51
100
  @mixin ds-heading-small-uppercase {
52
- @include base-heading('STIHL Contraface Digital Display Title', 1rem, 1.5);
101
+ @include base-heading-display-title(
102
+ 'STIHL Contraface Digital Display Title',
103
+ 1rem,
104
+ 1.5
105
+ );
106
+ text-transform: uppercase;
53
107
  }
@@ -1,3 +1,15 @@
1
1
  @function px-to-rem($pixels, $base-font-size: 16px) {
2
2
  @return #{calc($pixels / $base-font-size)}rem;
3
3
  }
4
+
5
+ // Encode a color to be used in a data url.
6
+ @function urlEncodeHexColor($string) {
7
+ @if type-of($string) == 'color' and str-index(#{$string}, '#') == 1 {
8
+ $hex: str-slice(ie-hex-str($string), 4);
9
+ $string: unquote('#{$hex}');
10
+
11
+ @return '%23' + $string;
12
+ }
13
+
14
+ @return $string;
15
+ }
@@ -0,0 +1,24 @@
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,46 +1,60 @@
1
+ @import '_helpers';
1
2
  @import '_hover';
2
3
  @import '_spacing';
4
+ @import '_transition';
3
5
 
4
- // Encode a color to be used in a data url.
5
- @function urlEncodeHexColor($string) {
6
- @if type-of($string) == 'color' and str-index(#{$string}, '#') == 1 {
7
- $hex: str-slice(ie-hex-str($string), 4);
8
- $string: unquote('#{$hex}');
9
-
10
- @return '%23' + $string;
11
- }
12
-
13
- @return $string;
14
- }
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.
15
8
 
16
9
  // Set the link variant colors
17
10
  @mixin link-variant(
18
11
  $content-color,
19
12
  $background-color-hover,
20
- $content-color-hover
13
+ $content-color-hover,
14
+ $theme: 'light'
21
15
  ) {
22
- color: $content-color;
16
+ & {
17
+ color: $content-color;
18
+ }
23
19
 
24
20
  &:link,
25
21
  &:visited {
26
22
  color: $content-color;
27
23
  }
28
24
 
25
+ &:active {
26
+ background-color: $background-color-hover;
27
+ color: $content-color-hover;
28
+ }
29
+
29
30
  @include hover-media-query {
30
31
  &:hover {
31
32
  background-color: $background-color-hover;
32
33
  color: $content-color-hover;
34
+ @include high-contrast-media-query {
35
+ background-color: Canvas;
36
+ }
33
37
  }
34
38
  }
35
39
 
36
- &:active {
37
- background-color: $background-color-hover;
38
- color: $content-color-hover;
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");
39
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);
40
53
  }
41
54
 
42
55
  // Mixin for underlined links (inline link or active standalone link)
43
56
  @mixin link-underline {
57
+ text-decoration-skip-ink: auto;
44
58
  text-decoration-line: underline;
45
59
  text-underline-offset: 2px;
46
60
  text-decoration-thickness: 1px;
@@ -48,108 +62,68 @@
48
62
  }
49
63
 
50
64
  // Public Link mixin that can be used to style links.
51
- // Is also used to style the LinkStandalone component.
52
- // The $type variable is used to determine if the link is inline or standalone,
53
65
  // since there a few design differences between the two.
54
- @mixin ds-link($variant: 'neutral', $theme: 'light', $type: 'inline') {
55
- // Default link color (neutral/light)
56
- $link-color: $ds-theme-light-content-color-interaction-neutral;
57
-
58
- // The offset is set to 0 since LinkStandalone does not have a 2px
59
- // outline offset like the Button component. See designs for reference.
60
- @include ds-focus($theme, $offset: 0);
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
+ }
61
91
 
62
92
  // Variants & themes
63
93
  @if ($variant == 'neutral' and $theme == 'light') {
64
94
  @include link-variant(
65
- $link-color,
95
+ $ds-theme-light-content-color-interaction-neutral,
66
96
  $ds-theme-light-background-color-transparent-hover,
67
- $link-color
97
+ $ds-theme-light-content-color-interaction-neutral
68
98
  );
69
99
  }
70
100
 
71
101
  @if ($variant == 'highlight' and $theme == 'light') {
72
- $link-color: $ds-theme-light-content-color-interaction-accent;
73
102
  @include link-variant(
74
- $link-color,
103
+ $ds-theme-light-content-color-interaction-accent,
75
104
  $ds-theme-light-background-color-transparent-hover,
76
105
  $ds-theme-light-content-color-interaction-accent-hover
77
106
  );
78
107
  }
79
108
 
80
109
  @if ($variant == 'neutral' and $theme == 'dark') {
81
- $link-color: $ds-theme-dark-content-color-interaction-neutral;
82
110
  @include link-variant(
83
- $link-color,
111
+ $ds-theme-dark-content-color-interaction-neutral,
84
112
  $ds-theme-dark-background-color-transparent-hover,
85
- $link-color
113
+ $ds-theme-dark-content-color-interaction-neutral,
114
+ $theme: 'dark'
86
115
  );
87
116
  }
88
117
 
89
118
  @if ($variant == 'highlight' and $theme == 'dark') {
90
- $link-color: $ds-theme-dark-content-color-interaction-accent;
91
119
  @include link-variant(
92
- $link-color,
120
+ $ds-theme-dark-content-color-interaction-accent,
93
121
  $ds-theme-dark-background-color-transparent-hover,
94
- $link-color
122
+ $ds-theme-dark-content-color-interaction-accent,
123
+ $theme: 'dark'
95
124
  );
96
125
  }
97
126
 
98
- // Type
99
- @if ($type == 'inline') {
100
- // Inline link
101
- @include link-underline;
102
-
103
- display: inline;
104
- padding-right: $ds-spacing-2;
105
- padding-left: $ds-spacing-2;
106
- padding-top: 0;
107
- padding-bottom: 0;
108
- line-height: inherit;
109
- font-size: inherit;
110
-
111
- // Inline links do have two predefined icons for external links and anchors.
112
- // The icons are added via the ::after pseudo element as svg data urls to
113
- // enable the change of the icon color via the fill property.
114
- :where(&)[href^="http://"]::after,
115
- :where(&)[href^="https://"]::after,
116
- :where(&)[href^='#']::after {
117
- display: inline-block;
118
- margin-left: 0.375em;
119
- width: 0.75em;
120
- height: 0.75em;
121
- }
122
-
123
- &[href^="http://"]::after,
124
- &[href^="https://"]::after
125
- {
126
- content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{urlEncodeHexColor($link-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");
127
- }
128
-
129
- &[href^='#']::after {
130
- content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{urlEncodeHexColor($link-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");
131
- }
132
- } @else {
133
- // Standalone link
134
- @include ds-utility-medium;
135
-
136
- display: inline-flex;
137
- align-items: center;
138
- gap: $ds-spacing-6;
139
- padding-right: $ds-spacing-4;
140
- padding-left: $ds-spacing-4;
141
- padding-top: $ds-spacing-2;
142
- padding-bottom: $ds-spacing-2;
143
- // Set color to transparent instead of text-decoration: none to support forced colors link decoration
144
- text-decoration-color: transparent;
145
-
146
- // The DSLinkStandalone component uses the DSIcon component to render a
147
- // selectable icon. The icon is colored with the current text color.
148
- svg {
149
- fill: currentColor;
150
- }
151
- }
152
-
153
127
  // Transition
154
- @include transition(background-color, border-color, color);
128
+ @include ds-transition((background-color, border-color, color));
155
129
  }
@@ -6,7 +6,7 @@
6
6
  @content;
7
7
  }
8
8
  } @else {
9
- @error "Passed #{$min} breakpoint is not available for used ds-media-query-min() mixin.";
9
+ @error "[STIHL Design System] - [ds-media-query-min()]: Passed '#{$min}' breakpoint is not available in ds-media-query-min() mixin.";
10
10
  }
11
11
  }
12
12
 
@@ -16,7 +16,7 @@
16
16
  @content;
17
17
  }
18
18
  } @else {
19
- @error "Passed #{$max} breakpoint is not available for used ds-media-query-max() mixin.";
19
+ @error "[STIHL Design System] - [ds-media-query-max()]: Passed '#{$max}' breakpoint is not available in ds-media-query-max() mixin.";
20
20
  }
21
21
  }
22
22
 
@@ -27,6 +27,6 @@
27
27
  @content;
28
28
  }
29
29
  } @else {
30
- @error "Passed #{$min} and/or #{$max} breakpoint is not available for used ds-media-query-min-max() mixin.";
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
31
  }
32
32
  }
@@ -0,0 +1,10 @@
1
+ @mixin ds-shadow-m {
2
+ box-shadow:
3
+ 0px 2px 12px 0px rgba(0, 0, 0, 0.08),
4
+ 0px 1px 2px 0px rgba(0, 0, 0, 0.16);
5
+ }
6
+ @mixin ds-shadow-l {
7
+ box-shadow:
8
+ 0px 8px 48px 0px rgba(0, 0, 0, 0.1),
9
+ 0px 2px 4px 0px rgba(0, 0, 0, 0.04);
10
+ }
@@ -0,0 +1,61 @@
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,9 +1,11 @@
1
+ $ds-spacing-0: 0px;
1
2
  $ds-spacing-1: 1px;
2
3
  $ds-spacing-2: 2px;
3
4
  $ds-spacing-4: 4px;
4
5
  $ds-spacing-6: 6px;
5
6
  $ds-spacing-8: 8px;
6
7
  $ds-spacing-12: 12px;
8
+ $ds-spacing-14: 14px;
7
9
  $ds-spacing-16: 16px;
8
10
  $ds-spacing-20: 20px;
9
11
  $ds-spacing-24: 24px;
@@ -16,3 +18,15 @@ $ds-spacing-80: 80px;
16
18
  $ds-spacing-96: 96px;
17
19
  $ds-spacing-128: 128px;
18
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
+ }