@stihl-design-system/components 1.0.0-RC.4 → 1.0.0-RC.40

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 (669) 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 +2 -11
  11. package/Visa.svg +2 -0
  12. package/accordion.d.ts +2 -0
  13. package/accordion.nt0Foequ.js +12 -0
  14. package/actionbutton.Ctea6drN.js +12 -0
  15. package/actionbutton.d.ts +2 -0
  16. package/actionlink.VX1OMtm-.js +12 -0
  17. package/actionlink.d.ts +2 -0
  18. package/arialiveregions.B0AV2JcV.js +18 -0
  19. package/arialiveregions.d.ts +1 -0
  20. package/assets/Accordion.Cr1dbVTH.css +1 -0
  21. package/assets/ActionButton.BLOWs6IZ.css +1 -0
  22. package/assets/ActionLink.BJDUVdT7.css +1 -0
  23. package/assets/Breadcrumb.BavNNzAA.css +1 -0
  24. package/assets/Button.C-UYIggc.css +1 -0
  25. package/assets/Checkbox.ZAPIO2N8.css +1 -0
  26. package/assets/CheckboxGroup.Dd-Huo7x.css +1 -0
  27. package/assets/Chip.D3vV0wyV.css +1 -0
  28. package/assets/CustomReactSelect.Ctze4SRN.css +1 -0
  29. package/assets/Dialog.DyiHUgTp.css +1 -0
  30. package/assets/Drawer.UugEajR2.css +1 -0
  31. package/assets/Fieldset.DmxbjOm1.css +1 -0
  32. package/assets/Header.BNYL2Y78.css +1 -0
  33. package/assets/Icon.i2P_Jf3Q.css +1 -0
  34. package/assets/InputFile.BUMCNCrj.css +1 -0
  35. package/assets/InputNumber.Bmz8cNKg.css +1 -0
  36. package/assets/InputPassword.CutbykTm.css +1 -0
  37. package/assets/InputSearch.Sr9jVpKt.css +1 -0
  38. package/assets/LinkButton.BEbmxP7h.css +1 -0
  39. package/assets/LinkCard.C6HtgbjH.css +1 -0
  40. package/assets/MegaMenu.Dw-oLSCX.css +1 -0
  41. package/assets/NavigationTabList.CzAiHz7G.css +1 -0
  42. package/assets/Notification.DBGpHzov.css +1 -0
  43. package/assets/Popover.mL5g23EK.css +1 -0
  44. package/assets/RadioGroup.q1lQ-HIZ.css +1 -0
  45. package/assets/Select.BZYb_HAG.css +1 -0
  46. package/assets/Slider.vnSU0ya0.css +1 -0
  47. package/assets/Stepper.tXJl15yL.css +1 -0
  48. package/assets/SystemFeedback.PKzqnXUe.css +1 -0
  49. package/assets/TextUtility.CEBJaKBG.css +1 -0
  50. package/assets/Textarea.BIgA9_fl.css +1 -0
  51. package/assets/Toast.DgRXxA0s.css +1 -0
  52. package/assets/arialiveregions.e0Q16ZWi.css +1 -0
  53. package/assets/asterisk.B41DaZDe.css +1 -0
  54. package/assets/banner.DFvdtgMp.css +1 -0
  55. package/assets/buttonround.BTC-HthI.css +1 -0
  56. package/assets/chipgroup.BGxjdSDX.css +1 -0
  57. package/assets/filelist.H_wKcSPX.css +1 -0
  58. package/assets/flag.CyCIPu_J.css +1 -0
  59. package/assets/floatingactionbutton.CTbMRM9Q.css +1 -0
  60. package/assets/heading.mGwg9pVU.css +1 -0
  61. package/assets/input.BEOus9jX.css +1 -0
  62. package/assets/link.BemYqm4d.css +1 -0
  63. package/assets/logo.SVrBe1T8.css +1 -0
  64. package/assets/logo100years.CQrEg-Vo.css +1 -0
  65. package/assets/numberindicator.BYIPwkAK.css +1 -0
  66. package/assets/optioncheckbox.6zYgifUk.css +1 -0
  67. package/assets/radio.l9OTraQU.css +1 -0
  68. package/assets/scroller.BGlPnnPD.css +1 -0
  69. package/assets/skiptocontent.CTSDC_kG.css +1 -0
  70. package/assets/spinner.C7QSv7jc.css +1 -0
  71. package/assets/step.Ch508u7I.css +1 -0
  72. package/assets/switch.DYamtd9O.css +1 -0
  73. package/assets/tabpane.o34hshTz.css +1 -0
  74. package/assets/text.BA1eUihR.css +1 -0
  75. package/assets/title.N-QcA7Re.css +1 -0
  76. package/assets/tooltip.BPcysHGE.css +1 -0
  77. package/asterisk.Dwtdwpkq.js +13 -0
  78. package/asterisk.d.ts +1 -0
  79. package/banner.S_c1UQJe.js +55 -0
  80. package/banner.d.ts +2 -0
  81. package/breadcrumb.DiuuVblR.js +11 -0
  82. package/breadcrumb.d.ts +2 -0
  83. package/button.Z7Mmvwhv.js +12 -0
  84. package/button.d.ts +1 -0
  85. package/buttonround.Bqi8Ej-y.js +96 -0
  86. package/buttonround.d.ts +1 -0
  87. package/card-example-image-1.webp +0 -0
  88. package/card-example-image-2.webp +0 -0
  89. package/card-example-image-3.webp +0 -0
  90. package/card-example-image-4.webp +0 -0
  91. package/card-example-image-5.webp +0 -0
  92. package/card-example-image-6.webp +0 -0
  93. package/card-example-image-7.webp +0 -0
  94. package/card-example-image-8.webp +0 -0
  95. package/card-example-image-square.webp +0 -0
  96. package/card-example-image.webp +0 -0
  97. package/checkbox.DtSSduSH.js +12 -0
  98. package/checkbox.d.ts +1 -0
  99. package/checkboxgroup.CSP1DOCW.js +9 -0
  100. package/checkboxgroup.d.ts +1 -0
  101. package/chip.CyypeY5M.js +12 -0
  102. package/chip.d.ts +2 -0
  103. package/chipgroup.d.ts +2 -0
  104. package/chipgroup.i5SOv6LA.js +199 -0
  105. package/chunks/Accordion.B-0pf8Fq.js +168 -0
  106. package/chunks/ActionButton.wdWh7E2b.js +182 -0
  107. package/chunks/ActionLink.DwUP-Kgm.js +155 -0
  108. package/chunks/AriaLiveRegions.utils.CLpOaVD9.js +27 -0
  109. package/chunks/Breadcrumb.nflDJoKs.js +103 -0
  110. package/chunks/Button.DpGeheky.js +139 -0
  111. package/chunks/Checkbox.B3NeB54s.js +88 -0
  112. package/chunks/CheckboxGroup.BYZSvqF7.js +74 -0
  113. package/chunks/Chip.SiGIIHR-.js +133 -0
  114. package/chunks/CustomReactSelect.DBsnmMPl.js +3379 -0
  115. package/chunks/Dialog.C-rcs_Up.js +102 -0
  116. package/chunks/Drawer.D0d557c5.js +107 -0
  117. package/chunks/Fieldset.7WM7w62l.js +81 -0
  118. package/chunks/Header.DyqOlV8L.js +402 -0
  119. package/chunks/Icon.m6sMB6vl.js +232 -0
  120. package/chunks/Input.utils.D78E4MGO.js +59 -0
  121. package/chunks/InputFile.DRGNdtY0.js +236 -0
  122. package/chunks/InputNumber.a44HnJ9B.js +240 -0
  123. package/chunks/InputPassword.B1E0Maub.js +121 -0
  124. package/chunks/InputSearch.C7AvD7Eu.js +149 -0
  125. package/chunks/LinkButton.CMjq2FKc.js +140 -0
  126. package/chunks/LinkCard.CJ5P0ews.js +199 -0
  127. package/chunks/MegaMenu.CiSiMlE3.js +188 -0
  128. package/chunks/NavigationTabList.C2f-lWex.js +67 -0
  129. package/chunks/NavigationTabs.D2QrnlL2.js +62 -0
  130. package/chunks/Notification.COwLndR0.js +91 -0
  131. package/chunks/Popover.C5wtha5l.js +214 -0
  132. package/chunks/RadioGroup.B-qTH31u.js +125 -0
  133. package/chunks/Select.DrDVi9lg.js +147 -0
  134. package/chunks/Slider.DGMrDfWv.js +306 -0
  135. package/chunks/Stepper.DptsFh5n.js +152 -0
  136. package/chunks/SystemFeedback.DFN6Y2cw.js +38 -0
  137. package/chunks/TabPane.utils.DG16Y2uD.js +10 -0
  138. package/chunks/Tabs.2JTenRcr.js +83 -0
  139. package/chunks/Text.utils.D_iOyOSH.js +11 -0
  140. package/chunks/TextUtility.Wbd4oQXI.js +82 -0
  141. package/chunks/Textarea.ymNCbcvH.js +181 -0
  142. package/chunks/Toast.RUzRjojQ.js +76 -0
  143. package/chunks/accessibility.B57oX4yV.js +10 -0
  144. package/chunks/{arrow-clockwise.BefOjGPg.js → arrow-clockwise.C4iOgjOc.js} +1 -1
  145. package/chunks/{arrow-counterclockwise.C7Ov32BZ.js → arrow-counterclockwise.CgQAuBUe.js} +1 -1
  146. package/chunks/battery-charge-0.DxlgEAto.js +10 -0
  147. package/chunks/battery-charge-100.D0Cax7dU.js +10 -0
  148. package/chunks/{battery.YCg9lYqC.js → battery.6Idoickg.js} +3 -3
  149. package/chunks/bluetooth-off.BzZCh4Q8.js +10 -0
  150. package/chunks/caret-down.CupuwAF6.js +10 -0
  151. package/chunks/caret-right.DKtu4PQe.js +10 -0
  152. package/chunks/{circle-check-colored.Bye_GwLy.js → circle-check-colored.qP2s3vjI.js} +1 -1
  153. package/chunks/collapse.Dvv3mgkv.js +10 -0
  154. package/chunks/connected-icon.BEijTRDG.js +10 -0
  155. package/chunks/default-icon.D_-oBHyT.js +10 -0
  156. package/chunks/{diamond-exclamationmark-colored.WNKYwZ8q.js → diamond-exclamationmark-colored.CzYiaTZ0.js} +1 -1
  157. package/chunks/document-magnifying-glass.DkvpNz-D.js +10 -0
  158. package/chunks/document-s.CoOp0kBK.js +10 -0
  159. package/chunks/feather.l1E4nFBx.js +10 -0
  160. package/chunks/file-type-doc.B_RSSYbu.js +10 -0
  161. package/chunks/file-type-image.Cg2NRd7y.js +10 -0
  162. package/chunks/file-type-pdf.Dm94xL2i.js +10 -0
  163. package/chunks/{map.CXgG1iGz.js → file-type-video.CFwfiP-D.js} +1 -1
  164. package/chunks/file-type-zip.SNixmKhQ.js +10 -0
  165. package/chunks/file.DLgRXiem.js +10 -0
  166. package/chunks/floating-ui.react.CP5A99-c.js +2980 -0
  167. package/chunks/has-window.ut_-aShB.js +5 -0
  168. package/chunks/helpers.CexwVao7.js +38 -0
  169. package/chunks/imow-icon.CyH72ySI.js +10 -0
  170. package/chunks/index.DQOqod3i.js +43 -0
  171. package/chunks/index.cKLI89Eg.js +281 -0
  172. package/chunks/is-animation-disabled.B-V_68K-.js +20 -0
  173. package/chunks/map.DNl7PF61.js +10 -0
  174. package/chunks/moon.5yILPYXs.js +10 -0
  175. package/chunks/muscle.DbNjWasV.js +10 -0
  176. package/chunks/mystihl-icon.xHpCyYJf.js +10 -0
  177. package/chunks/petrol.BGWwCsTw.js +10 -0
  178. package/chunks/sun.CY6ttzTL.js +10 -0
  179. package/chunks/tiktok.BWJTDGYm.js +10 -0
  180. package/chunks/translate.nuU7uChI.js +8 -0
  181. package/chunks/{triangle-exclamationmark-colored.CbVC3Gzi.js → triangle-exclamationmark-colored.e93zvQ6Q.js} +1 -1
  182. package/chunks/twitch.C893cAK8.js +10 -0
  183. package/chunks/upload.BogDfonx.js +10 -0
  184. package/chunks/useBreakpoint.1txsny17.js +45 -0
  185. package/chunks/useIsomorphicLayoutEffect.CnJ9AMFS.js +7 -0
  186. package/chunks/variants.-R3_RCW8.js +10 -0
  187. package/chunks/weight.DUPu2UT0.js +10 -0
  188. package/combobox.DzSEFo_5.js +69 -0
  189. package/combobox.d.ts +1 -0
  190. package/components/Accordion/Accordion.d.ts +43 -0
  191. package/components/Accordion/Accordion.utils.d.ts +16 -0
  192. package/components/ActionButton/ActionButton.d.ts +63 -0
  193. package/components/ActionButton/ActionButton.utils.d.ts +22 -0
  194. package/components/ActionLink/ActionLink.d.ts +38 -0
  195. package/components/ActionLink/ActionLink.test.d.ts +1 -0
  196. package/components/ActionLink/ActionLink.utils.d.ts +19 -0
  197. package/components/ActionLink/ActionLink.utils.test.d.ts +1 -0
  198. package/components/AriaLiveRegions/AriaLiveRegions.d.ts +1 -0
  199. package/components/AriaLiveRegions/AriaLiveRegions.utils.d.ts +2 -2
  200. package/components/Asterisk/Asterisk.d.ts +1 -0
  201. package/components/Banner/Banner.d.ts +32 -0
  202. package/components/Banner/Banner.test.d.ts +1 -0
  203. package/components/Banner/Banner.utils.d.ts +2 -0
  204. package/components/Breadcrumb/Breadcrumb.d.ts +45 -0
  205. package/components/Breadcrumb/Breadcrumb.test.d.ts +1 -0
  206. package/components/Breadcrumb/Breadcrumb.utils.d.ts +4 -0
  207. package/components/Button/Button.d.ts +41 -16
  208. package/components/Button/Button.utils.d.ts +17 -1
  209. package/components/Button/Button.utils.test.d.ts +1 -0
  210. package/components/ButtonRound/ButtonRound.d.ts +12 -3
  211. package/components/Checkbox/Checkbox.d.ts +25 -9
  212. package/components/Checkbox/Checkbox.utils.d.ts +11 -0
  213. package/components/Checkbox/Checkbox.utils.test.d.ts +1 -0
  214. package/components/CheckboxGroup/CheckboxGroup.d.ts +34 -14
  215. package/components/CheckboxGroup/CheckboxGroup.utils.d.ts +0 -1
  216. package/components/ChipGroup/Chip.d.ts +13 -0
  217. package/components/ChipGroup/ChipGroup.d.ts +48 -0
  218. package/components/ChipGroup/ChipGroup.test.d.ts +1 -0
  219. package/components/ChipGroup/ChipGroup.utils.d.ts +58 -0
  220. package/components/ChipGroup/ChipGroup.utils.test.d.ts +1 -0
  221. package/components/Combobox/Combobox.d.ts +27 -6
  222. package/components/Combobox/Combobox.utils.d.ts +14 -7
  223. package/components/Combobox/CustomReactSelect/CustomReactSelect.d.ts +88 -0
  224. package/components/Combobox/CustomReactSelect/CustomReactSelect.utils.d.ts +3 -0
  225. package/components/Combobox/CustomReactSelect/CustomReactSelect.utils.test.d.ts +1 -0
  226. package/components/{CustomReactSelect → Combobox/CustomReactSelect}/OptionCheckbox.d.ts +1 -2
  227. package/components/Dialog/Dialog.d.ts +40 -6
  228. package/components/Dialog/Dialog.test.d.ts +1 -0
  229. package/components/Dialog/Dialog.utils.d.ts +11 -0
  230. package/components/Dialog/Dialog.utils.test.d.ts +1 -0
  231. package/components/Drawer/Drawer.d.ts +49 -0
  232. package/components/Drawer/Drawer.test.d.ts +1 -0
  233. package/components/Drawer/Drawer.utils.d.ts +13 -0
  234. package/components/Drawer/Drawer.utils.test.d.ts +1 -0
  235. package/components/Fieldset/Fieldset.d.ts +29 -10
  236. package/components/Fieldset/Fieldset.utils.d.ts +7 -1
  237. package/components/FileList/FileList.d.ts +13 -0
  238. package/components/FileList/FileList.test.d.ts +1 -0
  239. package/components/FileList/FileList.utils.d.ts +18 -0
  240. package/components/FileList/FileList.utils.test.d.ts +1 -0
  241. package/components/Flag/Flag.d.ts +26 -0
  242. package/components/Flag/Flag.test.d.ts +1 -0
  243. package/components/Flag/Flag.utils.d.ts +2 -0
  244. package/components/FloatingActionButton/FloatingActionButton.d.ts +8 -2
  245. package/components/Header/Header.d.ts +67 -0
  246. package/components/Header/Header.utils.d.ts +17 -0
  247. package/components/Header/Header.utils.test.d.ts +1 -0
  248. package/components/Heading/Heading.d.ts +13 -6
  249. package/components/Icon/Icon.d.ts +14 -7
  250. package/components/Icon/Icon.utils.d.ts +1 -2
  251. package/components/Input/Input.d.ts +69 -25
  252. package/components/Input/Input.utils.d.ts +5 -6
  253. package/components/InputFile/InputFile.d.ts +104 -0
  254. package/components/InputFile/InputFile.test.d.ts +1 -0
  255. package/components/InputFile/InputFile.utils.d.ts +48 -0
  256. package/components/InputFile/InputFile.utils.test.d.ts +1 -0
  257. package/components/InputNumber/InputNumber.d.ts +110 -0
  258. package/components/InputNumber/InputNumber.test.d.ts +1 -0
  259. package/components/InputNumber/InputNumber.utils.d.ts +13 -0
  260. package/components/InputNumber/InputNumber.utils.test.d.ts +1 -0
  261. package/components/InputPassword/InputPassword.d.ts +56 -18
  262. package/components/InputPassword/InputPassword.utils.d.ts +2 -3
  263. package/components/InputSearch/InputSearch.d.ts +55 -18
  264. package/components/InputSearch/InputSearch.utils.d.ts +2 -3
  265. package/components/Link/Link.d.ts +11 -43
  266. package/components/Link/Link.utils.d.ts +2 -8
  267. package/components/LinkButton/LinkButton.d.ts +71 -0
  268. package/components/LinkButton/LinkButton.test.d.ts +1 -0
  269. package/components/LinkButton/LinkButton.utils.d.ts +24 -0
  270. package/components/LinkButton/LinkButton.utils.test.d.ts +1 -0
  271. package/components/LinkCard/LinkCard.d.ts +96 -0
  272. package/components/LinkCard/LinkCard.test.d.ts +1 -0
  273. package/components/LinkCard/LinkCard.utils.d.ts +10 -0
  274. package/components/LinkCard/LinkCard.utils.test.d.ts +1 -0
  275. package/components/Logo/Logo.d.ts +18 -10
  276. package/components/Logo/Logo.test.d.ts +1 -0
  277. package/components/Logo/Logo.utils.d.ts +2 -2
  278. package/components/Logo100Years/Logo100Years.d.ts +1 -0
  279. package/components/MegaMenu/MegaMenu.d.ts +32 -0
  280. package/components/MegaMenu/MegaMenu.test.d.ts +1 -0
  281. package/components/MegaMenu/MegaMenu.utils.d.ts +52 -0
  282. package/components/MegaMenu/MegaMenu.utils.test.d.ts +1 -0
  283. package/components/NavigationTabs/NavigationTabs.d.ts +43 -0
  284. package/components/NavigationTabs/NavigationTabs.test.d.ts +1 -0
  285. package/components/NavigationTabs/NavigationTabs.utils.d.ts +6 -0
  286. package/components/Notification/Notification.d.ts +25 -11
  287. package/components/Notification/Notification.utils.d.ts +0 -1
  288. package/components/NumberIndicator/NumberIndicator.d.ts +13 -0
  289. package/components/NumberIndicator/NumberIndicator.test.d.ts +1 -0
  290. package/components/NumberIndicator/NumberIndicator.utils.d.ts +2 -0
  291. package/components/Popover/Popover.d.ts +62 -0
  292. package/components/Popover/Popover.test.d.ts +1 -0
  293. package/components/Popover/Popover.utils.d.ts +84 -0
  294. package/components/Popover/Popover.utils.test.d.ts +1 -0
  295. package/components/Radio/Radio.d.ts +32 -14
  296. package/components/RadioGroup/RadioGroup.d.ts +43 -20
  297. package/components/RadioGroup/RadioGroup.utils.d.ts +6 -4
  298. package/components/RadioGroup/RadioGroup.utils.test.d.ts +1 -0
  299. package/components/Scroller/Scroller.d.ts +24 -0
  300. package/components/Scroller/Scroller.test.d.ts +1 -0
  301. package/components/Scroller/Scroller.utils.d.ts +3 -0
  302. package/components/Select/Select.d.ts +37 -13
  303. package/components/Select/Select.utils.d.ts +2 -3
  304. package/components/SkipToContent/SkipToContent.d.ts +19 -0
  305. package/components/SkipToContent/SkipToContent.test.d.ts +1 -0
  306. package/components/Slider/Slider.d.ts +76 -0
  307. package/components/Slider/Slider.test.d.ts +1 -0
  308. package/components/Slider/Slider.utils.d.ts +65 -0
  309. package/components/Slider/Slider.utils.test.d.ts +1 -0
  310. package/components/Spinner/Spinner.d.ts +14 -5
  311. package/components/Stepper/Step.d.ts +33 -0
  312. package/components/Stepper/Step.utils.d.ts +5 -0
  313. package/components/Stepper/Stepper.d.ts +56 -0
  314. package/components/Stepper/Stepper.test.d.ts +1 -0
  315. package/components/Stepper/Stepper.utils.d.ts +30 -0
  316. package/components/Stepper/Stepper.utils.test.d.ts +1 -0
  317. package/components/Switch/Switch.d.ts +23 -12
  318. package/components/SystemFeedback/SystemFeedback.d.ts +16 -7
  319. package/components/SystemFeedback/SystemFeedback.utils.d.ts +4 -7
  320. package/components/Tabs/TabList/NavigationTabList/NavigationTabList.d.ts +22 -0
  321. package/components/Tabs/TabList/TabList.d.ts +38 -0
  322. package/components/Tabs/TabList/TabList.utils.d.ts +2 -0
  323. package/components/Tabs/TabPane/TabPane.d.ts +10 -0
  324. package/components/Tabs/TabPane/TabPane.utils.d.ts +3 -0
  325. package/components/Tabs/TabPane/TabPane.utils.test.d.ts +1 -0
  326. package/components/Tabs/Tabs.d.ts +51 -0
  327. package/components/Tabs/Tabs.test.d.ts +1 -0
  328. package/components/Tabs/Tabs.utils.d.ts +6 -0
  329. package/components/Text/Text.d.ts +19 -10
  330. package/components/Text/Text.utils.d.ts +14 -1
  331. package/components/TextUtility/TextUtility.d.ts +30 -0
  332. package/components/TextUtility/TextUtility.test.d.ts +1 -0
  333. package/components/TextUtility/TextUtility.utils.d.ts +10 -0
  334. package/components/TextUtility/TextUtility.utils.test.d.ts +1 -0
  335. package/components/Textarea/Textarea.d.ts +47 -16
  336. package/components/Textarea/Textarea.utils.d.ts +2 -3
  337. package/components/Title/Title.d.ts +13 -6
  338. package/components/Toast/Toast.d.ts +28 -7
  339. package/components/Toast/Toast.utils.d.ts +19 -1
  340. package/components/Toast/ToastManager.d.ts +7 -4
  341. package/components/Tooltip/Tooltip.d.ts +40 -0
  342. package/components/Tooltip/Tooltip.test.d.ts +1 -0
  343. package/components/Tooltip/Tooltip.utils.d.ts +70 -0
  344. package/components/Tooltip/Tooltip.utils.test.d.ts +1 -0
  345. package/components/TopBar/TopBar.d.ts +54 -0
  346. package/components/TopBar/TopBar.utils.d.ts +14 -0
  347. package/components/TopBar/TopBar.utils.test.d.ts +1 -0
  348. package/connected-icon.svg +1 -0
  349. package/customreactselect.D7YraWJ7.js +15 -0
  350. package/customreactselect.d.ts +2 -1
  351. package/dialog.CBovd8em.js +9 -0
  352. package/dialog.d.ts +1 -0
  353. package/drawer.D5F0KXI2.js +9 -0
  354. package/drawer.d.ts +2 -0
  355. package/fieldset.DgbZ_K_l.js +12 -0
  356. package/fieldset.d.ts +1 -0
  357. package/filelist.CDEBo3Pi.js +160 -0
  358. package/filelist.d.ts +2 -0
  359. package/flag.D-wrUioF.js +50 -0
  360. package/flag.d.ts +2 -0
  361. package/floatingactionbutton.CE-Rz0dx.js +87 -0
  362. package/floatingactionbutton.d.ts +1 -0
  363. package/github-mark-white.svg +1 -0
  364. package/github-mark.svg +1 -0
  365. package/header.BtGgmM59.js +12 -0
  366. package/header.d.ts +2 -0
  367. package/heading.BHSklXho.js +46 -0
  368. package/heading.d.ts +1 -0
  369. package/icon.ByLYRkPZ.js +9 -0
  370. package/icon.d.ts +1 -0
  371. package/icon.svg +1 -1
  372. package/imow-icon.svg +1 -0
  373. package/index.d.ts +51 -4
  374. package/index.es.js +235 -138
  375. package/input.MZXe6rlg.js +188 -0
  376. package/input.d.ts +1 -0
  377. package/inputfile.BO4wDnzQ.js +18 -0
  378. package/inputfile.d.ts +2 -0
  379. package/inputnumber.DevQudIX.js +17 -0
  380. package/inputnumber.d.ts +2 -0
  381. package/inputpassword.C-XYK-JP.js +13 -0
  382. package/inputpassword.d.ts +1 -0
  383. package/inputsearch.CmJdxnzX.js +15 -0
  384. package/inputsearch.d.ts +1 -0
  385. package/intro-design-spacings01.webp +0 -0
  386. package/intro-design-spacings02.webp +0 -0
  387. package/intro-design-spacings03.webp +0 -0
  388. package/link.R1lfD5aN.js +81 -0
  389. package/link.d.ts +1 -0
  390. package/linkbutton.Y-ET1tc9.js +12 -0
  391. package/linkbutton.d.ts +2 -0
  392. package/linkcard.CayqoQNo.js +12 -0
  393. package/linkcard.d.ts +2 -0
  394. package/logo.D7LnRA1E.js +80 -0
  395. package/logo.d.ts +1 -0
  396. package/logo100years.C0IojOp9.js +24 -0
  397. package/logo100years.d.ts +2 -0
  398. package/megamenu.CUjk3_h2.js +12 -0
  399. package/megamenu.d.ts +2 -0
  400. package/mystihl-icon.svg +1 -0
  401. package/navigationtablist.CKPpQrme.js +10 -0
  402. package/navigationtablist.d.ts +2 -0
  403. package/navigationtabs.VUAOwesQ.js +9 -0
  404. package/navigationtabs.d.ts +2 -0
  405. package/notification.d.ts +1 -0
  406. package/notification.u_LLz-O0.js +10 -0
  407. package/numberindicator.ZGVRSmqf.js +36 -0
  408. package/numberindicator.d.ts +2 -0
  409. package/optioncheckbox.d.ts +2 -1
  410. package/optioncheckbox.v8Plcgeg.js +48 -0
  411. package/package.json +77 -59
  412. package/partials/assets.const.js +2 -0
  413. package/partials/connected-apple-icon.png +0 -0
  414. package/partials/connected-favicon.ico +0 -0
  415. package/partials/connected-icon-192.png +0 -0
  416. package/partials/connected-icon-512.png +0 -0
  417. package/partials/connected-icon.svg +1 -0
  418. package/partials/copyAssets.js +27 -13
  419. package/partials/default-icon.svg +1 -0
  420. package/partials/imow-apple-icon.png +0 -0
  421. package/partials/imow-favicon.ico +0 -0
  422. package/partials/imow-icon-192.png +0 -0
  423. package/partials/imow-icon-512.png +0 -0
  424. package/partials/imow-icon.svg +1 -0
  425. package/partials/index.js +342 -2159
  426. package/partials/lib/partials.d.ts +77 -5
  427. package/partials/mystihl-apple-icon.png +0 -0
  428. package/partials/mystihl-favicon.ico +0 -0
  429. package/partials/mystihl-icon-192.png +0 -0
  430. package/partials/mystihl-icon-512.png +0 -0
  431. package/partials/mystihl-icon.svg +1 -0
  432. package/popover.T7-imfkx.js +12 -0
  433. package/popover.d.ts +2 -0
  434. package/radio.DxdVKoxe.js +137 -0
  435. package/radio.d.ts +1 -0
  436. package/radiogroup.CAh4wto1.js +11 -0
  437. package/radiogroup.d.ts +1 -0
  438. package/scroller.DfhhZelk.js +98 -0
  439. package/scroller.d.ts +2 -0
  440. package/select-decision-tree-small.webp +0 -0
  441. package/select-decision-tree.webp +0 -0
  442. package/select.CSCc_-6d.js +14 -0
  443. package/select.d.ts +1 -0
  444. package/skiptocontent.C2HpZt5q.js +35 -0
  445. package/skiptocontent.d.ts +2 -0
  446. package/slider.B2aQwfc2.js +12 -0
  447. package/slider.d.ts +2 -0
  448. package/spinner.CRVyui04.js +46 -0
  449. package/spinner.d.ts +1 -0
  450. package/step.C-LC5sKQ.js +82 -0
  451. package/step.d.ts +6 -0
  452. package/stepper.CRljfUF8.js +16 -0
  453. package/stepper.d.ts +2 -0
  454. package/styles/fonts/STIHLContrafaceDigitalTextDemi.woff +0 -0
  455. package/styles/fonts/STIHLContrafaceDigitalTextDemi.woff2 +0 -0
  456. package/styles/fonts/font-face.min.css +1 -1
  457. package/styles/js/index.d.ts +4 -0
  458. package/styles/js/index.es.js +249 -0
  459. package/styles/js/lib/animation.d.ts +13 -0
  460. package/styles/js/lib/breakpoint.d.ts +9 -0
  461. package/styles/js/lib/spacing.d.ts +22 -0
  462. package/styles/js/lib/theme.d.ts +202 -0
  463. package/styles/scss/ds/index.scss +20 -0
  464. package/styles/scss/ds/lib/animation.scss +21 -0
  465. package/styles/scss/ds/lib/breakpoints.scss +17 -0
  466. package/styles/scss/ds/lib/container-query.scss +54 -0
  467. package/styles/scss/ds/lib/ds-internal/_a11y.scss +15 -0
  468. package/styles/scss/ds/lib/ds-internal/_focus.scss +60 -0
  469. package/styles/scss/ds/lib/ds-internal/_heading.scss +37 -0
  470. package/styles/scss/ds/lib/ds-internal/_helpers.scss +32 -0
  471. package/styles/scss/ds/lib/ds-internal/_high-contrast.scss +6 -0
  472. package/styles/scss/ds/lib/ds-internal/_hover.scss +6 -0
  473. package/styles/scss/ds/lib/ds-internal/_index.scss +11 -0
  474. package/styles/scss/ds/lib/ds-internal/_input.scss +196 -0
  475. package/styles/scss/ds/lib/ds-internal/_link-button.scss +226 -0
  476. package/styles/scss/ds/lib/ds-internal/_link.scss +62 -0
  477. package/styles/scss/ds/lib/ds-internal/_spacing-dynamic.scss +53 -0
  478. package/styles/scss/ds/lib/ds-internal/_text.scss +30 -0
  479. package/styles/scss/ds/lib/grid-extended.scss +14 -0
  480. package/styles/scss/ds/lib/grid-full.scss +6 -0
  481. package/styles/scss/ds/lib/grid-main.scss +122 -0
  482. package/styles/scss/ds/lib/grid-narrow.scss +14 -0
  483. package/styles/scss/ds/lib/grid-sidebar.scss +57 -0
  484. package/styles/scss/ds/lib/grid.scss +92 -0
  485. package/styles/scss/ds/lib/heading.scss +75 -0
  486. package/styles/scss/ds/lib/input.scss +26 -0
  487. package/styles/scss/ds/lib/link-button.scss +29 -0
  488. package/styles/scss/ds/lib/link.scss +74 -0
  489. package/styles/scss/ds/lib/media-query.scss +32 -0
  490. package/styles/scss/{lib/_shadow.scss → ds/lib/shadow.scss} +7 -2
  491. package/styles/scss/ds/lib/spacing-dynamic.scss +7 -0
  492. package/styles/scss/ds/lib/spacing.scss +20 -0
  493. package/styles/scss/ds/lib/text.scss +107 -0
  494. package/styles/scss/ds/lib/theme.scss +171 -0
  495. package/styles/scss/ds/lib/transition.scss +36 -0
  496. package/switch.DgKgzm-j.js +66 -0
  497. package/switch.d.ts +1 -0
  498. package/systemfeedback.BKLsE5sY.js +10 -0
  499. package/systemfeedback.d.ts +1 -0
  500. package/tablist.d.ts +2 -0
  501. package/tablist.hMHdX1V8.js +210 -0
  502. package/tabpane.7vMXUKFX.js +37 -0
  503. package/tabpane.d.ts +2 -0
  504. package/tabs.d.ts +2 -0
  505. package/tabs.t-gR7dGc.js +11 -0
  506. package/text.D_e3JBvf.js +72 -0
  507. package/text.d.ts +1 -0
  508. package/textarea.CDXY-OVz.js +14 -0
  509. package/textarea.d.ts +1 -0
  510. package/textutility.CNWCGYOy.js +11 -0
  511. package/textutility.d.ts +2 -0
  512. package/title.d.ts +1 -0
  513. package/title.kJ48FkPU.js +40 -0
  514. package/toast.Bev-Rfuw.js +11 -0
  515. package/toast.d.ts +1 -0
  516. package/toastmanager.DII20_9k.js +89 -0
  517. package/toastmanager.d.ts +1 -0
  518. package/tooltip._lP4aMV2.js +177 -0
  519. package/tooltip.d.ts +2 -0
  520. package/topbar.Z9NNkxKU.js +12 -0
  521. package/topbar.d.ts +2 -0
  522. package/types/icon-types.d.ts +1 -1
  523. package/types/prettier-plugin-organize-imports.d.ts +1 -0
  524. package/utils/get-rect.d.ts +4 -0
  525. package/utils/get-rect.test.d.ts +1 -0
  526. package/utils/helpers.d.ts +17 -0
  527. package/utils/index.d.ts +8 -0
  528. package/utils/is-animation-disabled.d.ts +14 -0
  529. package/utils/is-animation-disabled.test.d.ts +1 -0
  530. package/utils/mergeRefs.d.ts +5 -0
  531. package/utils/mergeRefs.test.d.ts +1 -0
  532. package/utils/remove-spaces.d.ts +6 -0
  533. package/utils/remove-spaces.test.d.ts +1 -0
  534. package/utils/render-documentation.d.ts +1 -0
  535. package/utils/translate.d.ts +11 -0
  536. package/utils/translate.test.d.ts +1 -0
  537. package/utils/useBreakpoint.d.ts +0 -1
  538. package/utils/useElementSize.d.ts +14 -0
  539. package/utils/useElementSize.test.d.ts +1 -0
  540. package/utils/useIsomorphicLayoutEffect.d.ts +25 -0
  541. package/utils/useScrollDirection.d.ts +9 -0
  542. package/utils/useScrollDirection.test.d.ts +1 -0
  543. package/utils/vitest.setup.d.ts +2 -1
  544. package/arialiveregions.49Zyf6mj.js +0 -27
  545. package/assets/CustomReactSelect.B0rJLjN0.css +0 -1
  546. package/assets/Fieldset.xazpUXJX.css +0 -1
  547. package/assets/Icon.CB-KQmw4.css +0 -1
  548. package/assets/InputPassword.C3Uyj7oA.css +0 -1
  549. package/assets/InputSearch.tL3e9-Ob.css +0 -1
  550. package/assets/InputStepper.paPJix5A.css +0 -1
  551. package/assets/Notification.CCCbfXEz.css +0 -1
  552. package/assets/RadioGroup.Ur8Ro-XL.css +0 -1
  553. package/assets/Select.D2qBxaHP.css +0 -1
  554. package/assets/Textarea.BKbocznb.css +0 -1
  555. package/assets/Toast.CAP_EwDX.css +0 -1
  556. package/assets/arialiveregions.VnhjP8Gr.css +0 -1
  557. package/assets/asterisk.C-o6rbGQ.css +0 -1
  558. package/assets/button.BuIpnG-S.css +0 -1
  559. package/assets/buttonround.C3ph5Yyu.css +0 -1
  560. package/assets/checkbox.BsFEWfQe.css +0 -1
  561. package/assets/dialog.BGK3mgk7.css +0 -1
  562. package/assets/floatingactionbutton.D7ywURL3.css +0 -1
  563. package/assets/heading.CGFucb-C.css +0 -1
  564. package/assets/input.BcP5kkZ2.css +0 -1
  565. package/assets/link.DQy_OhwC.css +0 -1
  566. package/assets/linkstandalone.Dh6bE5Fb.css +0 -1
  567. package/assets/logo.BbHYgnWo.css +0 -1
  568. package/assets/optioncheckbox.C-K1FLhc.css +0 -1
  569. package/assets/radio.CSHQGdpr.css +0 -1
  570. package/assets/spinner.C5rBmKiF.css +0 -1
  571. package/assets/switch.sqve8ApJ.css +0 -1
  572. package/assets/systemfeedback.WE3wClZ3.css +0 -1
  573. package/assets/text.DDAveG7E.css +0 -1
  574. package/assets/title.CE0Dm7PI.css +0 -1
  575. package/asterisk.DU8THnoC.js +0 -8
  576. package/button.DX_nxoJC.js +0 -135
  577. package/buttonround.CXsBk9nL.js +0 -118
  578. package/checkbox.B43oeMeC.js +0 -112
  579. package/checkboxgroup.C7aCjYds.js +0 -9
  580. package/chunks/AriaLiveRegions.utils.DzWI5KCU.js +0 -31
  581. package/chunks/CheckboxGroup.CS6Q_TeZ.js +0 -87
  582. package/chunks/CustomReactSelect.DtmbYZUf.js +0 -5033
  583. package/chunks/Fieldset.BokeZzG5.js +0 -99
  584. package/chunks/Icon.9gDIp6p4.js +0 -217
  585. package/chunks/Input.utils.AKWCNkpA.js +0 -110
  586. package/chunks/InputPassword.jpUCijp7.js +0 -140
  587. package/chunks/InputSearch.BmOtAZcR.js +0 -190
  588. package/chunks/InputStepper.DTKjUL4U.js +0 -291
  589. package/chunks/Notification.CUPOlHAX.js +0 -93
  590. package/chunks/RadioGroup.DpwnVv7u.js +0 -110
  591. package/chunks/RadioGroup.module.bi3leRes.js +0 -11
  592. package/chunks/Select.DkDZo0ky.js +0 -193
  593. package/chunks/Textarea.C938p79X.js +0 -195
  594. package/chunks/Toast.CLYrwQVO.js +0 -89
  595. package/chunks/helpers.B1JT5ShS.js +0 -7
  596. package/chunks/index.CvOaL64Y.js +0 -45
  597. package/chunks/jsx-runtime.C-kxDJ4g.js +0 -639
  598. package/chunks/pdf.9kZbElrZ.js +0 -10
  599. package/chunks/petrol.Du6qAgp0.js +0 -10
  600. package/chunks/upload.ZImTAIgx.js +0 -10
  601. package/chunks/useBreakpoint.5xBNDiCf.js +0 -48
  602. package/combobox.BaSkiD6f.js +0 -47
  603. package/components/CustomReactSelect/CustomReactSelect.d.ts +0 -60
  604. package/components/CustomReactSelect/CustomReactSelect.utils.d.ts +0 -16
  605. package/components/InputStepper/InputStepper.d.ts +0 -53
  606. package/components/InputStepper/InputStepper.utils.d.ts +0 -13
  607. package/components/LinkStandalone/LinkStandalone.d.ts +0 -15
  608. package/components/LinkStandalone/LinkStandalone.utils.d.ts +0 -2
  609. package/customreactselect.LTbjaBN2.js +0 -13
  610. package/dialog.BkXwcbUh.js +0 -45
  611. package/fieldset.BXOWK-B-.js +0 -11
  612. package/floatingactionbutton.-nDRRiXY.js +0 -87
  613. package/heading.DqGbFfj2.js +0 -50
  614. package/icon.Cpp_9L1I.js +0 -8
  615. package/input.BM6tyRUm.js +0 -236
  616. package/inputpassword.DUxH1K_k.js +0 -12
  617. package/inputsearch.B-vePHle.js +0 -13
  618. package/inputstepper.C2ypADPI.js +0 -13
  619. package/inputstepper.d.ts +0 -1
  620. package/link.B4XZoLDj.js +0 -115
  621. package/linkstandalone.BSfd95Pd.js +0 -79
  622. package/linkstandalone.d.ts +0 -1
  623. package/logo.C_oJ8isW.js +0 -69
  624. package/notification.CxxAOdNV.js +0 -9
  625. package/optioncheckbox.CUV1MQhh.js +0 -43
  626. package/partials/icon.svg +0 -1
  627. package/radio.Bhu9OUY-.js +0 -79
  628. package/radiogroup.CMJ1b38q.js +0 -11
  629. package/select.DFJK2mHF.js +0 -12
  630. package/spinner.BskX4ovu.js +0 -58
  631. package/styles/scss/_index.scss +0 -23
  632. package/styles/scss/lib/_a11y.scss +0 -15
  633. package/styles/scss/lib/_animation.scss +0 -20
  634. package/styles/scss/lib/_breakpoints.scss +0 -16
  635. package/styles/scss/lib/_container-query.scss +0 -58
  636. package/styles/scss/lib/_focus.scss +0 -62
  637. package/styles/scss/lib/_grid-extended.scss +0 -11
  638. package/styles/scss/lib/_grid-full.scss +0 -6
  639. package/styles/scss/lib/_grid-main.scss +0 -117
  640. package/styles/scss/lib/_grid-narrow.scss +0 -14
  641. package/styles/scss/lib/_grid-sidebar-sidebar.scss +0 -50
  642. package/styles/scss/lib/_grid-sidebar.scss +0 -157
  643. package/styles/scss/lib/_grid.scss +0 -88
  644. package/styles/scss/lib/_heading.scss +0 -66
  645. package/styles/scss/lib/_helpers.scss +0 -3
  646. package/styles/scss/lib/_high-contrast.scss +0 -24
  647. package/styles/scss/lib/_hover.scss +0 -10
  648. package/styles/scss/lib/_link.scss +0 -156
  649. package/styles/scss/lib/_media-query.scss +0 -32
  650. package/styles/scss/lib/_spacing.scss +0 -30
  651. package/styles/scss/lib/_text.scss +0 -67
  652. package/styles/scss/lib/_theme.scss +0 -162
  653. package/styles/scss/lib/_transition.scss +0 -26
  654. package/switch.Bx2tDKx0.js +0 -65
  655. package/systemfeedback.4Hkfigi-.js +0 -25
  656. package/text.CPU8IUqY.js +0 -57
  657. package/textarea.DPy3TJJf.js +0 -12
  658. package/title.icX0VDiO.js +0 -36
  659. package/toast.C-Yg5EoE.js +0 -10
  660. package/toastmanager.DQ_-eTrx.js +0 -96
  661. package/utils/has-document.d.ts +0 -1
  662. /package/components/{CustomReactSelect/CustomReactSelect.utils.test.d.ts → Accordion/Accordion.test.d.ts} +0 -0
  663. /package/components/{InputStepper/InputStepper.test.d.ts → Accordion/Acordion.utils.test.d.ts} +0 -0
  664. /package/components/{InputStepper/InputStepper.utils.test.d.ts → ActionButton/ActionButton.test.d.ts} +0 -0
  665. /package/components/{LinkStandalone/LinkStandalone.test.d.ts → ActionButton/ActionButton.utils.test.d.ts} +0 -0
  666. /package/partials/{apple-icon.png → default-apple-icon.png} +0 -0
  667. /package/partials/{favicon.ico → default-favicon.ico} +0 -0
  668. /package/partials/{icon-192.png → default-icon-192.png} +0 -0
  669. /package/partials/{icon-512.png → default-icon-512.png} +0 -0
@@ -0,0 +1,110 @@
1
+ import { InputHTMLAttributes } from 'react';
2
+ import { BreakpointCustomizable } from '../../types';
3
+ import { InputSize } from '../Input/Input.utils';
4
+ export interface InputNumberProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'defaultValue' | 'size' | 'value'> {
5
+ /** Unique id for the input. */
6
+ id: string;
7
+ /** Label text displayed above the input. */
8
+ label: string;
9
+ /** Text used for assistive technologies when the value changes.
10
+ * @default 'Value changed to'
11
+ */
12
+ announcementText?: string;
13
+ /** Disables the input, preventing user interaction.
14
+ * @default false
15
+ */
16
+ disabled?: boolean;
17
+ /** Decrease amount button props:
18
+ *
19
+ * `data-*`: Custom data attributes.
20
+ *
21
+ * `label`: Accessibility label for the decrease button.
22
+ * (default) 'Decrease'
23
+ *
24
+ * `tooltip`: Tooltip text for the decrease button.
25
+ */
26
+ decreaseAmountButtonProps?: {
27
+ [key: `data-${string}`]: string | undefined;
28
+ label?: string;
29
+ tooltip?: string;
30
+ };
31
+ /** Hides the input label, can be responsive.
32
+ * `boolean | { base: boolean; s?: boolean; m?: boolean; l?: boolean; xl?: boolean; }`
33
+ * @default false
34
+ */
35
+ hideLabel?: BreakpointCustomizable<boolean>;
36
+ /** Short descriptive text displayed beneath the label. */
37
+ hint?: string;
38
+ /** Increase amount button props:
39
+ *
40
+ * `data-*`: Custom data attributes.
41
+ *
42
+ * `label`: Accessibility label for the increase button.
43
+ * (default) 'Increase'
44
+ *
45
+ * `tooltip`: Tooltip text for the increase button.
46
+ */
47
+ increaseAmountButtonProps?: {
48
+ [key: `data-${string}`]: string | undefined;
49
+ label?: string;
50
+ tooltip?: string;
51
+ };
52
+ /** Marks the input as invalid, typically used for form validation.
53
+ * @default false
54
+ */
55
+ invalid?: boolean;
56
+ /** The maximum value for the input.
57
+ * @default 100
58
+ */
59
+ max?: number | string;
60
+ /** The minimum value for the input.
61
+ * @default 0
62
+ */
63
+ min?: number | string;
64
+ /** The interval between legal numbers of the input.
65
+ * @default 1
66
+ */
67
+ step?: number | string;
68
+ /** Text displayed as a prefix inside the input, maximum 8 characters. */
69
+ prefix?: string;
70
+ /** Shows an info button next to the label that triggers a popover with the passed content. */
71
+ popoverContent?: React.ReactNode;
72
+ /** Popover info button props:
73
+ *
74
+ * `data-*`: Custom data attributes.
75
+ *
76
+ * `label`: Accessibility label for the default anchor button.
77
+ * (default) 'Toggle popover'
78
+ */
79
+ popoverInfoButtonProps?: {
80
+ [key: `data-${string}`]: string | undefined;
81
+ label?: string;
82
+ };
83
+ /** Enables the readonly state of the input.
84
+ * @default false
85
+ */
86
+ readonly?: boolean;
87
+ /** Indicates that the input is required.
88
+ * @default false
89
+ */
90
+ required?: boolean;
91
+ /** Text displayed as a suffix inside the input, maximum 5 characters. */
92
+ suffix?: string;
93
+ /** Defines a system feedback message, shown when `invalid={true}`. */
94
+ systemFeedback?: string;
95
+ /** Size of the input.
96
+ * @default 'medium'
97
+ */
98
+ size?: InputSize;
99
+ /** Value of the input. */
100
+ value?: InputHTMLAttributes<HTMLInputElement>['value'];
101
+ }
102
+ /**
103
+ * The `<DSInputNumber />` component is a versatile input field that allows users to easily enter a value and decrease or increase it as needed.
104
+ * It comes in two sizes (medium & small) and supports various customizations including a prefix and suffix.
105
+ *
106
+ * Next to the input field, there are two buttons to increase or decrease the input value.
107
+ *
108
+ * Design in Figma: [Input Number](https://www.figma.com/design/qXldpLO6gxHJNLdcXIPxYt/Core-Components-%F0%9F%92%A0?node-id=2141-6769&t=UBsmFURFENnuYSW1-11)
109
+ */
110
+ export declare const DSInputNumber: import('react').ForwardRefExoticComponent<InputNumberProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,13 @@
1
+ import { InputNumberProps } from './InputNumber';
2
+ type ValidationProps = Pick<InputNumberProps, 'id' | 'label' | 'prefix' | 'suffix' | 'hideLabel' | 'popoverContent'>;
3
+ export declare const isValidValue: (value: string | number | readonly string[] | undefined | null) => boolean;
4
+ /**
5
+ * Validates the given properties of the DSInputNumber component for common configuration errors.
6
+ * This function is intended to be used in development mode to provide developers with
7
+ * warnings about potential misuse of the component.
8
+ *
9
+ * @param validationProps - The subset of DSInputNumber properties to validate. This includes
10
+ * properties related to the prefix, suffix, icons and action button of the input.
11
+ */
12
+ export declare const validateInputNumberProps: ({ id, label, prefix, suffix, hideLabel, popoverContent, }: ValidationProps) => void;
13
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -1,36 +1,72 @@
1
1
  import { InputHTMLAttributes } from 'react';
2
2
  import { BreakpointCustomizable } from '../../types';
3
3
  import { InputSize } from '../Input/Input.utils';
4
-
5
4
  export interface InputPasswordProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'defaultValue' | 'size'> {
6
- /** Unique id for the input */
5
+ /** Unique id for the input. */
7
6
  id: string;
8
- /** Label text displayed above the input */
7
+ /** Label text displayed above the input. */
9
8
  label: string;
10
- /** The value of autocomplete to use for the input */
11
- autocomplete?: 'new-password' | 'current-password' | 'off';
12
- /** Disables the input, preventing user interaction */
9
+ /** The value of autoComplete to use for the input.
10
+ * @default 'new-password'
11
+ */
12
+ autoComplete?: 'new-password' | 'current-password' | 'off';
13
+ /** Disables the input, preventing user interaction.
14
+ * @default false
15
+ */
13
16
  disabled?: boolean;
14
- /** Hides the input label, can be responsive
17
+ /** Hides the input label, can be responsive.
15
18
  * `boolean | { base: boolean; s?: boolean; m?: boolean; l?: boolean; xl?: boolean; }`
19
+ * @default false
16
20
  */
17
21
  hideLabel?: BreakpointCustomizable<boolean>;
18
- /** Short descriptive text displayed beneath the label */
22
+ /** Short descriptive text displayed beneath the label. */
19
23
  hint?: string;
20
- /** Marks the input as invalid, typically used for form validation */
24
+ /** Marks the input as invalid, typically used for form validation.
25
+ * @default false
26
+ */
21
27
  invalid?: boolean;
22
- /** Enables the readonly state of the input */
28
+ /** Shows an info button next to the label that triggers a popover with the passed content. */
29
+ popoverContent?: React.ReactNode;
30
+ /** Popover info button props:
31
+ *
32
+ * `data-*`: Custom data attributes.
33
+ *
34
+ * `label`: Accessibility label for the default anchor button.
35
+ * (default) 'Toggle popover'
36
+ */
37
+ popoverInfoButtonProps?: {
38
+ [key: `data-${string}`]: string | undefined;
39
+ label?: string;
40
+ };
41
+ /** Enables the readonly state of the input.
42
+ * @default false
43
+ */
23
44
  readonly?: boolean;
24
- /** Indicates that the input is required */
45
+ /** Indicates that the input is required.
46
+ * @default false
47
+ */
25
48
  required?: boolean;
26
- /** Defines a system feedback message, shown when `invalid={true}` */
49
+ /** Defines a system feedback message, shown when `invalid={true}`. */
27
50
  systemFeedback?: string;
28
- /** Size of the input */
51
+ /** Size of the input.
52
+ * @default 'medium'
53
+ */
29
54
  size?: InputSize;
30
- /** The show password button text label (for assistive technologies) */
31
- showPasswordText?: string;
32
- /** The hide password button text label (for assistive technologies) */
33
- hidePasswordText?: string;
55
+ /** Toggle password visibility button props:
56
+ *
57
+ * `data-*`: Custom data attributes.
58
+ *
59
+ * `hidePasswordText`: The hide password button text label (for assistive technologies).
60
+ * (default) 'Hide password'
61
+ *
62
+ * `showPasswordText`: The show password button text label (for assistive technologies).
63
+ * (default) 'Show password'
64
+ */
65
+ togglePasswordVisibilityButtonProps?: {
66
+ [key: `data-${string}`]: string | undefined;
67
+ hidePasswordText?: string;
68
+ showPasswordText?: string;
69
+ };
34
70
  }
35
71
  /**
36
72
  * The `<DSInputPassword />` component is an input field that allows users to enter and edit passwords.
@@ -38,5 +74,7 @@ export interface InputPasswordProps extends Omit<InputHTMLAttributes<HTMLInputEl
38
74
  * a hint and a system feedback message.
39
75
  *
40
76
  * The user can toggle the visibility of the password by clicking on the action button.
77
+ *
78
+ * Design in Figma: [Input Password](https://www.figma.com/design/qXldpLO6gxHJNLdcXIPxYt/Core-Components-%F0%9F%92%A0?node-id=2141-6655&t=UBsmFURFENnuYSW1-11)
41
79
  */
42
- export declare const DSInputPassword: ({ id, label, autocomplete, className, disabled, hidePasswordText, hint, hideLabel, invalid, readonly, required, showPasswordText, size, systemFeedback, ...rest }: InputPasswordProps) => JSX.Element;
80
+ export declare const DSInputPassword: import('react').ForwardRefExoticComponent<InputPasswordProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -1,6 +1,5 @@
1
1
  import { InputPasswordProps } from './InputPassword';
2
-
3
- type ValidationProps = Pick<InputPasswordProps, 'id' | 'label'>;
2
+ type ValidationProps = Pick<InputPasswordProps, 'id' | 'label' | 'hideLabel' | 'popoverContent'>;
4
3
  /**
5
4
  * Validates the given properties of the DSInputPassword component for common configuration errors.
6
5
  * This function is intended to be used in development mode to provide developers with
@@ -9,5 +8,5 @@ type ValidationProps = Pick<InputPasswordProps, 'id' | 'label'>;
9
8
  * @param validationProps - The subset of DSInputPassword properties to validate. This includes
10
9
  * id and label.
11
10
  */
12
- export declare const validateInputPasswordProps: ({ id, label }: ValidationProps) => void;
11
+ export declare const validateInputPasswordProps: ({ id, label, hideLabel, popoverContent, }: ValidationProps) => void;
13
12
  export {};
@@ -1,38 +1,73 @@
1
1
  import { InputHTMLAttributes } from 'react';
2
2
  import { BreakpointCustomizable } from '../../types';
3
3
  import { InputSize } from '../Input/Input.utils';
4
-
5
4
  export interface InputSearchProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'defaultValue' | 'size'> {
6
- /** Unique id for the input */
5
+ /** Unique id for the input. */
7
6
  id: string;
8
- /** Label text displayed above the input */
7
+ /** Label text displayed above the input. */
9
8
  label: string;
10
- /** Accessibility label for the clear button */
9
+ /** Accessibility label for the clear button.
10
+ * @default 'Clear search field'
11
+ */
11
12
  clearButtonLabel?: string;
12
- /** Disables the input, preventing user interaction */
13
+ /** Disables the input, preventing user interaction.
14
+ * @default false
15
+ */
13
16
  disabled?: boolean;
14
- /** Hides the input label, can be responsive
17
+ /** Hides the input label, can be responsive.
15
18
  * `boolean | { base: boolean; s?: boolean; m?: boolean; l?: boolean; xl?: boolean; }`
19
+ * @default false
16
20
  */
17
21
  hideLabel?: BreakpointCustomizable<boolean>;
18
- /** Short descriptive text displayed beneath the label */
22
+ /** Short descriptive text displayed beneath the label. */
19
23
  hint?: string;
20
- /** Marks the input as invalid, typically used for form validation */
24
+ /** Marks the input as invalid, typically used for form validation.
25
+ * @default false
26
+ */
21
27
  invalid?: boolean;
22
- /** Enables the readonly state of the input */
28
+ /** Shows an info button next to the label that triggers a popover with the passed content. */
29
+ popoverContent?: React.ReactNode;
30
+ /** Popover info button props:
31
+ *
32
+ * `data-*`: Custom data attributes.
33
+ *
34
+ * `label`: Accessibility label for the default anchor button.
35
+ * (default) 'Toggle popover'
36
+ */
37
+ popoverInfoButtonProps?: {
38
+ [key: `data-${string}`]: string | undefined;
39
+ label?: string;
40
+ };
41
+ /** Enables the readonly state of the input.
42
+ * @default false
43
+ */
23
44
  readonly?: boolean;
24
- /** Indicates that the input is required */
45
+ /** Indicates that the input is required.
46
+ * @default false
47
+ */
25
48
  required?: boolean;
26
- /** Accessibility label for the submit button */
27
- submitButtonLabel?: string;
28
- /** Defines a system feedback message, shown when `invalid={true}` */
49
+ /** Submit button props:
50
+ *
51
+ * `data-*`: Custom data attributes.
52
+ *
53
+ * `label`: Accessibility label for the submit button.
54
+ * (default) 'Search'
55
+ *
56
+ * `onClick`: Callback function called when the submit button is clicked.
57
+ */
58
+ submitButtonProps?: {
59
+ [key: `data-${string}`]: string | undefined;
60
+ label?: string;
61
+ onClick?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
62
+ };
63
+ /** Defines a system feedback message, shown when `invalid={true}`. */
29
64
  systemFeedback?: string;
30
- /** Size of the input */
65
+ /** Size of the input.
66
+ * @default 'medium'
67
+ */
31
68
  size?: InputSize;
32
- /** Value of the input */
69
+ /** Value of the input. */
33
70
  value?: string;
34
- /** Callback function triggered when the submit button is clicked */
35
- submitButtonOnClick?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
36
71
  }
37
72
  /**
38
73
  * The `<DSInputSearch />` component can be used as a dedicated search field input.
@@ -41,5 +76,7 @@ export interface InputSearchProps extends Omit<InputHTMLAttributes<HTMLInputElem
41
76
  *
42
77
  * A search button is always available on the right to submit the search request.
43
78
  * Additionally when the input is filled, a button to clear the input value becomes visible.
79
+ *
80
+ * Design in Figma: [Input Search](https://www.figma.com/design/qXldpLO6gxHJNLdcXIPxYt/Core-Components-%F0%9F%92%A0?node-id=2141-6712&t=UBsmFURFENnuYSW1-11)
44
81
  */
45
- export declare const DSInputSearch: ({ id, label, className, clearButtonLabel, disabled, hint, hideLabel, invalid, readonly, required, size, submitButtonLabel, systemFeedback, value, submitButtonOnClick, onChange, ...rest }: InputSearchProps) => JSX.Element;
82
+ export declare const DSInputSearch: import('react').ForwardRefExoticComponent<InputSearchProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -1,6 +1,5 @@
1
1
  import { InputSearchProps } from './InputSearch';
2
-
3
- type ValidationProps = Pick<InputSearchProps, 'id' | 'label'>;
2
+ type ValidationProps = Pick<InputSearchProps, 'id' | 'label' | 'hideLabel' | 'popoverContent'>;
4
3
  /**
5
4
  * Validates the given properties of the DSInputSearch component for common configuration errors.
6
5
  * This function is intended to be used in development mode to provide developers with
@@ -9,7 +8,7 @@ type ValidationProps = Pick<InputSearchProps, 'id' | 'label'>;
9
8
  * @param validationProps - The subset of DSInputSearch properties to validate. This includes
10
9
  * id and label.
11
10
  */
12
- export declare const validateInputSearchProps: ({ id, label }: ValidationProps) => void;
11
+ export declare const validateInputSearchProps: ({ id, label, hideLabel, popoverContent, }: ValidationProps) => void;
13
12
  /**
14
13
  * Determines whether the specified HTMLElement is within a form element.
15
14
  *
@@ -1,50 +1,18 @@
1
- import { BreakpointCustomizable, IconName, LinkTarget, SelectedAriaAttributes, Theme } from '../../types';
2
- import { IconProps } from '../Icon/Icon';
3
- import { LinkAriaAttribute, LinkIconPosition, LinkReferrerPolicy, LinkRel, LinkSize, LinkVariant } from './Link.utils';
4
-
5
- export interface CommonLinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
6
- /** ARIA attributes to enhance accessibility
7
- * `{'aria-label'? string;`
8
- * `'aria-current'?: boolean | 'false' | 'true' | 'page' | 'step' | 'location' | 'date' | 'time';`
9
- * `'aria-labelledby'?: string;}`
10
- */
11
- aria?: SelectedAriaAttributes<LinkAriaAttribute>;
12
- /** Identifier for analytics tracking */
13
- dataTrackingid?: string;
14
- /** Specifies that the target will be downloaded and opens native browser download dialog */
15
- download?: string;
16
- /** Defines the URL to link to */
17
- href?: string;
18
- /** Name of the icon to display */
19
- iconName?: IconName;
20
- /** The position of the icon */
21
- iconPosition?: LinkIconPosition;
22
- /** URL or path for a custom icon */
23
- iconSource?: IconProps['source'];
24
- /** Defines the referrer information send with the link */
25
- referrerPolicy?: LinkReferrerPolicy;
26
- /** Defines the rel attribute */
27
- rel?: LinkRel;
28
- /** The target of the link */
29
- target?: LinkTarget;
30
- /** Defines the theme */
31
- theme?: Theme;
32
- }
1
+ import { CommonLinkProps } from '../LinkButton/LinkButton';
2
+ import { LinkVariant } from './Link.utils';
33
3
  export interface LinkProps extends CommonLinkProps {
34
- /** Content within the link */
4
+ /** Content within the link. */
35
5
  children: React.ReactNode;
36
- /** Hides the link label, can be responsive
37
- * `boolean | { base: boolean; s?: boolean; m?: boolean; l?: boolean; xl?: boolean; }`
6
+ /** Sets an underline. */
7
+ active?: boolean;
8
+ /** Visual style variant of the Link.
9
+ * @default 'neutral'
38
10
  */
39
- hideLabel?: BreakpointCustomizable<boolean>;
40
- /** Aligns `variant='ghost'` with text */
41
- isFlush?: boolean;
42
- /** Size of the link */
43
- size?: LinkSize;
44
- /** Visual style variant of the link */
45
11
  variant?: LinkVariant;
46
12
  }
47
13
  /**
48
- * Use the Link component when you want the users to navigate to another internal or external page.
14
+ * Use Link when you want the users to navigate to another internal or external page.
15
+ *
16
+ * Design in Figma: [Link](https://www.figma.com/design/qXldpLO6gxHJNLdcXIPxYt/Core-Components-%F0%9F%92%A0?node-id=168-7210&t=UBsmFURFENnuYSW1-11)
49
17
  * */
50
- export declare const DSLink: ({ children, aria, className, dataTrackingid, download, hideLabel, href, iconName, iconPosition, iconSource, isFlush, referrerPolicy, rel, size, target, theme, variant, ...rest }: LinkProps) => JSX.Element;
18
+ export declare const DSLink: import('react').ForwardRefExoticComponent<LinkProps & import('react').RefAttributes<HTMLAnchorElement>>;
@@ -1,8 +1,2 @@
1
- export declare const LINK_SIZE: readonly ["medium", "small"];
2
- export type LinkSize = typeof LINK_SIZE[number];
3
- export declare const LINK_VARIANT: readonly ["filled", "highlight", "outline", "ghost"];
4
- export type LinkVariant = typeof LINK_VARIANT[number];
5
- export type LinkIconPosition = 'left' | 'right';
6
- export type LinkRel = 'alternate' | 'author' | 'bookmark' | 'external' | 'help' | 'license' | 'next' | 'nofollow' | 'noreferrer' | 'noopener' | 'prev' | 'search' | 'tag';
7
- export type LinkReferrerPolicy = 'no-referrer' | 'no-referrer-when-downgrade' | 'origin' | 'origin-when-cross-origin' | 'same-origin' | 'strict-origin-when-cross-origin' | 'unsafe-url';
8
- export type LinkAriaAttribute = 'aria-label' | 'aria-current' | 'aria-labelledby';
1
+ export declare const LINK_VARIANT: readonly ["neutral", "highlight"];
2
+ export type LinkVariant = (typeof LINK_VARIANT)[number];
@@ -0,0 +1,71 @@
1
+ import { BreakpointCustomizable, IconName, LinkTarget, SelectedAriaAttributes, Theme } from '../../types';
2
+ import { IconProps } from '../Icon/Icon';
3
+ import { LinkButtonAriaAttribute, LinkButtonIconPosition, LinkButtonReferrerPolicy, LinkButtonRel, LinkButtonSize, LinkButtonVariant } from './LinkButton.utils';
4
+ export interface CommonLinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
5
+ /** ARIA attributes to enhance accessibility.
6
+ * `{'aria-label'? string;`
7
+ * `'aria-current'?: boolean | 'false' | 'true' | 'page' | 'step' | 'location' | 'date' | 'time';`
8
+ * `'aria-labelledby'?: string;}`
9
+ */
10
+ aria?: SelectedAriaAttributes<LinkButtonAriaAttribute>;
11
+ /** Custom data attributes. */
12
+ [key: `data-${string}`]: string | undefined;
13
+ /** Specifies that the target will be downloaded and opens native browser download dialog. */
14
+ download?: string;
15
+ /** Defines the URL to link to. */
16
+ href?: string;
17
+ /** Name of the icon to display. */
18
+ iconName?: IconName;
19
+ /** The position of the icon.
20
+ * @default 'left'
21
+ */
22
+ iconPosition?: LinkButtonIconPosition;
23
+ /** URL or path for a custom icon. */
24
+ iconSource?: IconProps['source'];
25
+ /** Defines the referrer information send with the link. */
26
+ referrerPolicy?: LinkButtonReferrerPolicy;
27
+ /** Defines the rel attribute. */
28
+ rel?: LinkButtonRel;
29
+ /** The target of the link.
30
+ * @default '_self'
31
+ */
32
+ target?: LinkTarget;
33
+ /** Defines the theme.
34
+ * @default 'light'
35
+ */
36
+ theme?: Theme;
37
+ /** Tooltip content. */
38
+ tooltip?: string;
39
+ }
40
+ export interface LinkButtonProps extends CommonLinkProps {
41
+ /** Content within the link. */
42
+ children: React.ReactNode;
43
+ /** Hides the link label, can be responsive.
44
+ * `boolean | { base: boolean; s?: boolean; m?: boolean; l?: boolean; xl?: boolean; }`
45
+ * @default false
46
+ */
47
+ hideLabel?: BreakpointCustomizable<boolean>;
48
+ /** Aligns `variant='ghost'` with text.
49
+ * @default false
50
+ */
51
+ isFlush?: boolean;
52
+ /** Size of the link.
53
+ * @default 'medium'
54
+ */
55
+ size?: LinkButtonSize;
56
+ /** Stretches the link over the parent's width.
57
+ * `boolean | { base: boolean; s?: boolean; m?: boolean; l?: boolean; xl?: boolean; }`
58
+ * @default false
59
+ */
60
+ stretched?: BreakpointCustomizable<boolean>;
61
+ /** Visual style variant of the link.
62
+ * @default 'filled'
63
+ */
64
+ variant?: LinkButtonVariant;
65
+ }
66
+ /**
67
+ * Use the Link component when you want the users to navigate to another internal or external page.
68
+ *
69
+ * Design in Figma: [Link Button](https://www.figma.com/design/qXldpLO6gxHJNLdcXIPxYt/Core-Components-%F0%9F%92%A0?node-id=162-126)
70
+ * */
71
+ export declare const DSLinkButton: import('react').ForwardRefExoticComponent<LinkButtonProps & import('react').RefAttributes<HTMLAnchorElement>>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,24 @@
1
+ import { LinkButtonProps } from './LinkButton';
2
+ export declare const LINK_BUTTON_SIZE: readonly ["medium", "small"];
3
+ export type LinkButtonSize = (typeof LINK_BUTTON_SIZE)[number];
4
+ export declare const LINK_BUTTON_VARIANT: readonly ["filled", "highlight", "outline", "ghost", "navigation"];
5
+ export type LinkButtonVariant = (typeof LINK_BUTTON_VARIANT)[number];
6
+ export type LinkButtonIconPosition = 'left' | 'right';
7
+ export type LinkButtonRel = 'alternate' | 'author' | 'bookmark' | 'external' | 'help' | 'license' | 'next' | 'nofollow' | 'noreferrer' | 'noopener' | 'prev' | 'search' | 'tag';
8
+ export type LinkButtonReferrerPolicy = 'no-referrer' | 'no-referrer-when-downgrade' | 'origin' | 'origin-when-cross-origin' | 'same-origin' | 'strict-origin-when-cross-origin' | 'unsafe-url';
9
+ export type LinkButtonAriaAttribute = 'aria-label' | 'aria-current' | 'aria-labelledby';
10
+ type ValidationProps = Pick<LinkButtonProps, 'hideLabel' | 'iconName' | 'iconSource' | 'isFlush' | 'size' | 'stretched' | 'theme' | 'variant'>;
11
+ /**
12
+ * Performs runtime validation on a subset of `DSLinkButton` props to detect
13
+ * misconfigurations during development.
14
+ *
15
+ * This function provides warnings or throws errors when invalid combinations of props occur.
16
+ *
17
+ * Intended for development use only; should not be used in production environments.
18
+ *
19
+ * @param validationProps - An object containing the props to validate
20
+ * from the `DSLinkButton` component. These are validated to ensure
21
+ * they are used in supported combinations.
22
+ */
23
+ export declare const validateLinkButtonProps: ({ hideLabel, iconName, iconSource, isFlush, size, stretched, theme, variant, }: ValidationProps) => void;
24
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,96 @@
1
+ import { AnchorHTMLAttributes, JSX } from 'react';
2
+ import { LinkButtonProps } from '../LinkButton/LinkButton';
3
+ import { CardHeading } from './LinkCard.utils';
4
+ type DecorativeLinkButtonProps = Pick<LinkButtonProps, 'iconPosition' | 'iconName' | 'size' | 'hideLabel'> & {
5
+ label?: string;
6
+ variant?: Extract<LinkButtonProps['variant'], 'filled' | 'ghost'>;
7
+ };
8
+ type CardClassNames = {
9
+ brandFlag?: string;
10
+ contentWrapper?: string;
11
+ descriptionWrapper?: string;
12
+ decorativeLink?: string;
13
+ flagsWrapper?: string;
14
+ footerWrapper?: string;
15
+ headerWrapper?: string;
16
+ heading?: string;
17
+ imageWrapper?: string;
18
+ metaDataWrapper?: string;
19
+ };
20
+ export interface LinkCardProps extends AnchorHTMLAttributes<HTMLAnchorElement | HTMLDivElement> {
21
+ /**
22
+ * The `heading` prop can either be a simple `string` or an object with specific properties.
23
+ * When provided as a string, it represents the default medium h3 heading directly.
24
+ * When provided as an object, it allows for more detailed configuration, including:
25
+ * - `headingText: string` The text content for the heading.
26
+ * - `headingSize?: 'x-large' | 'x-large-uppercase' | 'large' | 'large-uppercase' | 'medium' | 'medium-uppercase' | 'small' | 'small-uppercase'` Defines the size of the heading, using predefined size types, defaults to `'medium'`
27
+ * - `headingTag?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'` Specifies the HTML tag to be used for the heading, such as 'h1', 'h2', etc., defaults to `'h3'`
28
+ *
29
+ * @prop {string | { headingText: string; headingSize?: HeadingSize; headingTag?: HeadingTag; }} heading
30
+ */
31
+ heading: CardHeading;
32
+ /** Orange brand flag text displayed on the image. */
33
+ brandFlag?: string;
34
+ /**
35
+ * ClassNames for various parts of the LinkCard can be provided via the `cardClassNames` prop.
36
+ * - `brandFlag?: string` className for the brand flag element.
37
+ * - `contentWrapper?: string` className for the content wrapper element.
38
+ * - `descriptionWrapper?: string` className for the description wrapper element.
39
+ * - `decorativeLink?: string` className for the decorative link button element.
40
+ * - `flagsWrapper?: string` className for the flags wrapper element.
41
+ * - `footerWrapper?: string` className for the footer wrapper element.
42
+ * - `headerWrapper?: string` className for the header wrapper element.
43
+ * - `heading?: string` className for the heading element.
44
+ * - `imageWrapper?: string` className for the image wrapper element.
45
+ * - `metaDataWrapper?: string` className for the meta data wrapper element.
46
+ */
47
+ cardClassNames?: CardClassNames;
48
+ /**
49
+ * Props for the decorative link button optionally displayed at the bottom of the card.
50
+ *
51
+ * - `label?: string` The text label for the decorative link button.
52
+ * - `variant?: 'filled' | 'ghost'` The variant style for the decorative link button, defaults to `'filled'`.
53
+ * - `iconPosition?: 'left' | 'right'` The position of the icon in the decorative link button.
54
+ * - `iconName?: IconName` The name of the icon to be used in the decorative link button.
55
+ * - `size?: 'small' | 'medium'` The size of the decorative link button.
56
+ * - `hideLabel?: boolean` Whether to hide the label of the decorative link button.
57
+ */
58
+ decorativeLinkButtonProps?: DecorativeLinkButtonProps;
59
+ /** Short descriptive text displayed beneath the headline. */
60
+ description?: React.ReactNode;
61
+ /**
62
+ * ARIA label for the list of flags for screen readers. Needed if flags are provided.
63
+ */
64
+ flagListAriaLabel?: string;
65
+ /**
66
+ * Array of DSFlag components to be displayed on the card.
67
+ */
68
+ flags?: string[];
69
+ /** Defines the URL to link to. */
70
+ href?: string;
71
+ /** Image element to be displayed within the card. */
72
+ img?: React.ReactNode;
73
+ /** Link component to be used for the navigation. */
74
+ linkComponent?: React.ReactElement<React.AnchorHTMLAttributes<HTMLAnchorElement> & React.RefAttributes<HTMLAnchorElement> & {
75
+ onClick?: () => void;
76
+ to?: string;
77
+ }>;
78
+ /** Meta data content displayed beneath the description. */
79
+ metaData?: React.ReactNode;
80
+ /**
81
+ * Sets the orientation of the card.
82
+ * @default 'vertical'
83
+ */
84
+ orientation?: 'vertical' | 'horizontal';
85
+ }
86
+ /**
87
+ * A simple, accessible Card component that can be used as a link to navigate to other pages.
88
+ * The entire card is clickable and follows accessibility best practices.
89
+ *
90
+ * Design in Figma: [Link Card](https://www.figma.com/design/qXldpLO6gxHJNLdcXIPxYt/Core-Components-%F0%9F%92%A0?node-id=26075-11591&p=f&t=WDN78eWtKR9F8yYp-11)
91
+ */
92
+ export declare const DSLinkCard: {
93
+ ({ heading, brandFlag, className, cardClassNames, decorativeLinkButtonProps, description, flagListAriaLabel, flags, href, img, linkComponent, metaData, orientation, ...rest }: LinkCardProps): JSX.Element;
94
+ displayName: string;
95
+ };
96
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,10 @@
1
+ import { HeadingSize, HeadingTag } from '../Heading/Heading.utils';
2
+ import { LinkCardProps } from './LinkCard';
3
+ export type CardHeading = string | {
4
+ headingText: string;
5
+ headingSize?: HeadingSize;
6
+ headingTag?: HeadingTag;
7
+ };
8
+ type ValidationProps = Pick<LinkCardProps, 'href' | 'linkComponent' | 'flags' | 'flagListAriaLabel' | 'heading' | 'img' | 'brandFlag'>;
9
+ export declare const validateLinkCardProps: ({ href, linkComponent, flags, flagListAriaLabel, heading, img, brandFlag, }: ValidationProps) => void;
10
+ export {};