@stihl-design-system/components 1.0.0-RC.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (399) hide show
  1. package/LICENSE.md +42 -0
  2. package/README.md +56 -0
  3. package/apple-icon.png +0 -0
  4. package/assets/Asterisk.582f2067.css +1 -0
  5. package/assets/Button.684e8bda.css +1 -0
  6. package/assets/ButtonRound.ca8748cf.css +1 -0
  7. package/assets/Checkbox.84cf6398.css +1 -0
  8. package/assets/CustomReactSelect.d89ccccb.css +1 -0
  9. package/assets/Fieldset.5297efb8.css +1 -0
  10. package/assets/FloatingActionButton.de295f5d.css +1 -0
  11. package/assets/Heading.32278621.css +1 -0
  12. package/assets/Icon.8890ee9a.css +1 -0
  13. package/assets/Input.2c508b2f.css +1 -0
  14. package/assets/InputPassword.a534f047.css +1 -0
  15. package/assets/InputSearch.8f986307.css +1 -0
  16. package/assets/InputStepper.52fb45ca.css +1 -0
  17. package/assets/Link.03deeca0.css +1 -0
  18. package/assets/LinkStandalone.7e23a8ac.css +1 -0
  19. package/assets/Logo.09e48e82.css +1 -0
  20. package/assets/OptionCheckbox.9c20f6f1.css +1 -0
  21. package/assets/Radio.be8f06f5.css +1 -0
  22. package/assets/RadioGroup.8b55ee38.css +1 -0
  23. package/assets/Select.b2423b5f.css +1 -0
  24. package/assets/Spinner.af45d460.css +1 -0
  25. package/assets/Switch.f3ab20de.css +1 -0
  26. package/assets/SystemFeedback.f4421d60.css +1 -0
  27. package/assets/Text.4756effe.css +1 -0
  28. package/assets/Textarea.eecf04b3.css +1 -0
  29. package/assets/Title.60d50d3e.css +1 -0
  30. package/asterisk.91abccec.js +8 -0
  31. package/asterisk.d.ts +1 -0
  32. package/button.89b2675b.js +135 -0
  33. package/button.d.ts +1 -0
  34. package/buttonround.c60c8034.js +118 -0
  35. package/buttonround.d.ts +1 -0
  36. package/checkbox.7d414047.js +112 -0
  37. package/checkbox.d.ts +1 -0
  38. package/checkboxgroup.d.ts +1 -0
  39. package/checkboxgroup.e9e25471.js +78 -0
  40. package/chunks/360.3f3132d9.js +11 -0
  41. package/chunks/CustomReactSelect.9d0a378a.js +5011 -0
  42. package/chunks/Input.utils.f8f3286f.js +106 -0
  43. package/chunks/Link.module.b8230547.js +37 -0
  44. package/chunks/RadioGroup.module.59ca486a.js +11 -0
  45. package/chunks/academic-cap.a6849ffc.js +11 -0
  46. package/chunks/alarm-clock.542230f3.js +11 -0
  47. package/chunks/arrow-clockwise.0496f663.js +11 -0
  48. package/chunks/arrow-counterclockwise.635a0130.js +11 -0
  49. package/chunks/arrow-down-line.0976611e.js +11 -0
  50. package/chunks/arrow-down.9780d975.js +11 -0
  51. package/chunks/arrow-edge.3288acdd.js +11 -0
  52. package/chunks/arrow-left.ace9c808.js +11 -0
  53. package/chunks/arrow-out.0499f39e.js +11 -0
  54. package/chunks/arrow-outline-left.efc33275.js +11 -0
  55. package/chunks/arrow-right.133feef2.js +11 -0
  56. package/chunks/arrow-up-arrow-down.b612e9b1.js +11 -0
  57. package/chunks/arrow-up.3be6430a.js +11 -0
  58. package/chunks/at.6279d12b.js +11 -0
  59. package/chunks/barcode-scanner.0a4a314d.js +11 -0
  60. package/chunks/battery.e1249ee1.js +11 -0
  61. package/chunks/bell.87fe4f0b.js +11 -0
  62. package/chunks/bin-open.be4290d8.js +11 -0
  63. package/chunks/bin.b36466f3.js +11 -0
  64. package/chunks/bluetooth.54b89b90.js +11 -0
  65. package/chunks/bookmark.4d5ce4c3.js +11 -0
  66. package/chunks/burger.1301d91e.js +11 -0
  67. package/chunks/calendar.ba39a664.js +11 -0
  68. package/chunks/camera.3bed4f3b.js +11 -0
  69. package/chunks/cart-check.9fb6abdb.js +11 -0
  70. package/chunks/cart-plus.fd5c4674.js +11 -0
  71. package/chunks/cart.7516d35c.js +11 -0
  72. package/chunks/catalog.bd0c7830.js +11 -0
  73. package/chunks/certificate.1639c28e.js +11 -0
  74. package/chunks/chain-link.45025ed0.js +11 -0
  75. package/chunks/chainsaw.56d43a9f.js +11 -0
  76. package/chunks/check.a08beeae.js +11 -0
  77. package/chunks/chevron-down.80b0dc85.js +11 -0
  78. package/chunks/chevron-left.f5feade0.js +11 -0
  79. package/chunks/chevron-line-left.17b172d1.js +11 -0
  80. package/chunks/chevron-line-right.7cd234b7.js +11 -0
  81. package/chunks/chevron-right.259bc1a3.js +11 -0
  82. package/chunks/chevron-up.d1335850.js +11 -0
  83. package/chunks/circle-check-colored.98e13ab9.js +11 -0
  84. package/chunks/circle-check-inverted.db29ab06.js +11 -0
  85. package/chunks/circle-info-colored.8da47e36.js +11 -0
  86. package/chunks/circle-info-inverted.0ed118fb.js +11 -0
  87. package/chunks/circle-pause.55300d1b.js +11 -0
  88. package/chunks/circle-stroke.203dd7aa.js +11 -0
  89. package/chunks/circle.33ec82eb.js +11 -0
  90. package/chunks/clock.3014a102.js +11 -0
  91. package/chunks/coffee-cup.98d6531f.js +11 -0
  92. package/chunks/compare.c76b221b.js +11 -0
  93. package/chunks/connected-box-mobile.9cd742dd.js +11 -0
  94. package/chunks/connected-box-stationary.191a3ed0.js +11 -0
  95. package/chunks/connected-box.fe21c39b.js +11 -0
  96. package/chunks/cross.fe709ee7.js +11 -0
  97. package/chunks/diamond-exclamationmark-colored.bf3ffccf.js +11 -0
  98. package/chunks/diamond-exclamationmark-inverted.b5648587.js +11 -0
  99. package/chunks/diamond.e962c289.js +11 -0
  100. package/chunks/diskette.04733444.js +11 -0
  101. package/chunks/distance.9e6b56ff.js +11 -0
  102. package/chunks/dots-connected.9869fae1.js +11 -0
  103. package/chunks/download-complete.0b84a7cc.js +11 -0
  104. package/chunks/envelope-open.3c3fd714.js +11 -0
  105. package/chunks/envelope.5c9ff834.js +11 -0
  106. package/chunks/exclamationmark.92afe58f.js +11 -0
  107. package/chunks/exit.bde46887.js +11 -0
  108. package/chunks/eye-closed.0b517bb7.js +11 -0
  109. package/chunks/eye.8f4b311b.js +11 -0
  110. package/chunks/facebook.4a040606.js +11 -0
  111. package/chunks/filter.dee66683.js +11 -0
  112. package/chunks/finger-double-arrow.9cd4c623.js +11 -0
  113. package/chunks/flash.15646b5e.js +11 -0
  114. package/chunks/fullscreen.fdd976fe.js +11 -0
  115. package/chunks/gear.1f5f6fe9.js +11 -0
  116. package/chunks/globe.7f419498.js +11 -0
  117. package/chunks/grid.2c1cdc21.js +11 -0
  118. package/chunks/guidance.63bebf3e.js +11 -0
  119. package/chunks/haircross.0ac15319.js +11 -0
  120. package/chunks/hanger.edc848f4.js +11 -0
  121. package/chunks/headphones.a023699e.js +11 -0
  122. package/chunks/heart.d4440641.js +11 -0
  123. package/chunks/helpers.ea3ca41a.js +7 -0
  124. package/chunks/hexagon-arrow-clockwise.98e9b555.js +11 -0
  125. package/chunks/horizontal-ellipsis.84419429.js +11 -0
  126. package/chunks/house.70059642.js +11 -0
  127. package/chunks/imow.3374e620.js +11 -0
  128. package/chunks/index.8021d3e0.js +45 -0
  129. package/chunks/info.1787448e.js +11 -0
  130. package/chunks/instagram.e12dd682.js +11 -0
  131. package/chunks/jsx-runtime.5c071667.js +632 -0
  132. package/chunks/leave-fullscreen.def46043.js +11 -0
  133. package/chunks/lightbulb.b73d3ebf.js +11 -0
  134. package/chunks/linkedin.ce0c68cb.js +11 -0
  135. package/chunks/list-three-rows.ef44c7ef.js +11 -0
  136. package/chunks/list-two-rows.5ed8f1af.js +11 -0
  137. package/chunks/loading-spinner.8293421e.js +11 -0
  138. package/chunks/lock.3cbc8ced.js +11 -0
  139. package/chunks/magnifying-glass-minus.b0f906e5.js +11 -0
  140. package/chunks/magnifying-glass-plus.6ffc69c5.js +11 -0
  141. package/chunks/magnifying-glass.c297e41f.js +11 -0
  142. package/chunks/map.c96b1dcd.js +11 -0
  143. package/chunks/minus.7f6676e8.js +11 -0
  144. package/chunks/mobile.416ee5b0.js +11 -0
  145. package/chunks/nine-squares.34eeb0d4.js +11 -0
  146. package/chunks/note-check.aaf92ef9.js +11 -0
  147. package/chunks/note-plus.e7ab1b93.js +11 -0
  148. package/chunks/note.cc96375c.js +11 -0
  149. package/chunks/number-input.076fcf63.js +11 -0
  150. package/chunks/paperclip.e8831256.js +11 -0
  151. package/chunks/parcel.75534dbd.js +11 -0
  152. package/chunks/pause.901567cf.js +11 -0
  153. package/chunks/pdf.92c1781a.js +11 -0
  154. package/chunks/pen.ecbcb50d.js +11 -0
  155. package/chunks/percent.4b7fa587.js +11 -0
  156. package/chunks/petrol.41999bec.js +11 -0
  157. package/chunks/phone.3c23c041.js +11 -0
  158. package/chunks/pin-s.a5519070.js +11 -0
  159. package/chunks/pin.1137362d.js +11 -0
  160. package/chunks/pinterest.88763b51.js +11 -0
  161. package/chunks/placeholder.d6fdaf8f.js +11 -0
  162. package/chunks/play.dd0f1d8c.js +11 -0
  163. package/chunks/plug.00f114c4.js +11 -0
  164. package/chunks/plus.42721ebf.js +11 -0
  165. package/chunks/printer.5bb7ee0d.js +11 -0
  166. package/chunks/prohibition-sign.af5616b3.js +11 -0
  167. package/chunks/questionmark.db94a06d.js +11 -0
  168. package/chunks/security.2be491e3.js +11 -0
  169. package/chunks/share.ddae7aef.js +11 -0
  170. package/chunks/shirt.135d58c1.js +11 -0
  171. package/chunks/shop.f120426b.js +11 -0
  172. package/chunks/sound-off.c6f5ed43.js +11 -0
  173. package/chunks/sound-on.212c36bc.js +11 -0
  174. package/chunks/speechbubble.9428546e.js +11 -0
  175. package/chunks/speechbubbles.65cb946e.js +11 -0
  176. package/chunks/square.452f505f.js +11 -0
  177. package/chunks/star-half.1458bc5b.js +11 -0
  178. package/chunks/star.fab17456.js +11 -0
  179. package/chunks/tag.4d730d72.js +11 -0
  180. package/chunks/thumbs-down.cbf6e4ec.js +11 -0
  181. package/chunks/thumbs-up.435754e1.js +11 -0
  182. package/chunks/triangle-exclamationmark-colored.94025893.js +11 -0
  183. package/chunks/triangle-exclamationmark-inverted.bc4eed15.js +11 -0
  184. package/chunks/triangle.bff84ddf.js +11 -0
  185. package/chunks/truck.a904d6d3.js +11 -0
  186. package/chunks/two-people-screen.3e509922.js +11 -0
  187. package/chunks/two-sheets.d1cfef0f.js +11 -0
  188. package/chunks/upload.7f1850a3.js +11 -0
  189. package/chunks/useBreakpoint.6c1b06c2.js +48 -0
  190. package/chunks/user.bf5b30a5.js +11 -0
  191. package/chunks/vertical-ellipsis.1cac00e5.js +11 -0
  192. package/chunks/wc.9d108bd0.js +11 -0
  193. package/chunks/wifi-1bar.b6fc33aa.js +11 -0
  194. package/chunks/wifi-2bars.27e9da59.js +11 -0
  195. package/chunks/wifi-off.e5daf3a9.js +11 -0
  196. package/chunks/wifi.40bb915d.js +11 -0
  197. package/chunks/wind-rose.27fa658a.js +11 -0
  198. package/chunks/wrench.69493ef3.js +11 -0
  199. package/chunks/x.d9da4202.js +11 -0
  200. package/chunks/xing.e17c1a24.js +11 -0
  201. package/chunks/youtube.dbf50787.js +11 -0
  202. package/combobox.d.ts +1 -0
  203. package/combobox.f98a4472.js +45 -0
  204. package/components/Asterisk/Asterisk.d.ts +2 -0
  205. package/components/Button/Button.d.ts +45 -0
  206. package/components/Button/Button.test.d.ts +1 -0
  207. package/components/Button/Button.utils.d.ts +6 -0
  208. package/components/ButtonRound/ButtonRound.d.ts +11 -0
  209. package/components/ButtonRound/ButtonRound.test.d.ts +1 -0
  210. package/components/ButtonRound/ButtonRound.utils.d.ts +2 -0
  211. package/components/Checkbox/Checkbox.d.ts +26 -0
  212. package/components/Checkbox/Checkbox.test.d.ts +1 -0
  213. package/components/CheckboxGroup/CheckboxGroup.d.ts +41 -0
  214. package/components/CheckboxGroup/CheckboxGroup.test.d.ts +1 -0
  215. package/components/CheckboxGroup/CheckboxGroup.utils.d.ts +4 -0
  216. package/components/Combobox/Combobox.d.ts +18 -0
  217. package/components/Combobox/Combobox.test.d.ts +1 -0
  218. package/components/Combobox/Combobox.utils.d.ts +57 -0
  219. package/components/Combobox/Combobox.utils.test.d.ts +1 -0
  220. package/components/CustomReactSelect/CustomReactSelect.d.ts +60 -0
  221. package/components/CustomReactSelect/CustomReactSelect.utils.d.ts +15 -0
  222. package/components/CustomReactSelect/CustomReactSelect.utils.test.d.ts +1 -0
  223. package/components/CustomReactSelect/OptionCheckbox.d.ts +13 -0
  224. package/components/Fieldset/Fieldset.d.ts +35 -0
  225. package/components/Fieldset/Fieldset.test.d.ts +1 -0
  226. package/components/Fieldset/Fieldset.utils.d.ts +10 -0
  227. package/components/FloatingActionButton/FloatingActionButton.d.ts +13 -0
  228. package/components/FloatingActionButton/FloatingActionButton.test.d.ts +1 -0
  229. package/components/Heading/Heading.d.ts +18 -0
  230. package/components/Heading/Heading.test.d.ts +1 -0
  231. package/components/Heading/Heading.utils.d.ts +4 -0
  232. package/components/Icon/Icon.d.ts +23 -0
  233. package/components/Icon/Icon.test.d.ts +1 -0
  234. package/components/Icon/Icon.utils.d.ts +12 -0
  235. package/components/Input/Input.d.ts +54 -0
  236. package/components/Input/Input.test.d.ts +1 -0
  237. package/components/Input/Input.utils.d.ts +59 -0
  238. package/components/Input/Input.utils.test.d.ts +1 -0
  239. package/components/InputPassword/InputPassword.d.ts +41 -0
  240. package/components/InputPassword/InputPassword.test.d.ts +1 -0
  241. package/components/InputPassword/InputPassword.utils.d.ts +12 -0
  242. package/components/InputPassword/InputPassword.utils.test.d.ts +1 -0
  243. package/components/InputSearch/InputSearch.d.ts +44 -0
  244. package/components/InputSearch/InputSearch.test.d.ts +1 -0
  245. package/components/InputSearch/InputSearch.utils.d.ts +23 -0
  246. package/components/InputSearch/InputSearch.utils.test.d.ts +1 -0
  247. package/components/InputStepper/InputStepper.d.ts +52 -0
  248. package/components/InputStepper/InputStepper.test.d.ts +1 -0
  249. package/components/InputStepper/InputStepper.utils.d.ts +12 -0
  250. package/components/InputStepper/InputStepper.utils.test.d.ts +1 -0
  251. package/components/Link/Link.d.ts +50 -0
  252. package/components/Link/Link.test.d.ts +1 -0
  253. package/components/Link/Link.utils.d.ts +8 -0
  254. package/components/LinkStandalone/LinkStandalone.d.ts +15 -0
  255. package/components/LinkStandalone/LinkStandalone.test.d.ts +1 -0
  256. package/components/LinkStandalone/LinkStandalone.utils.d.ts +2 -0
  257. package/components/Logo/Logo.d.ts +21 -0
  258. package/components/Logo/Logo.utils.d.ts +3 -0
  259. package/components/Radio/Radio.d.ts +27 -0
  260. package/components/Radio/Radio.test.d.ts +1 -0
  261. package/components/RadioGroup/RadioGroup.d.ts +56 -0
  262. package/components/RadioGroup/RadioGroup.test.d.ts +1 -0
  263. package/components/RadioGroup/RadioGroup.utils.d.ts +6 -0
  264. package/components/Select/Select.d.ts +43 -0
  265. package/components/Select/Select.test.d.ts +1 -0
  266. package/components/Select/Select.utils.d.ts +35 -0
  267. package/components/Select/Select.utils.test.d.ts +1 -0
  268. package/components/Spinner/Spinner.d.ts +14 -0
  269. package/components/Spinner/Spinner.test.d.ts +1 -0
  270. package/components/Spinner/Spinner.utils.d.ts +3 -0
  271. package/components/Switch/Switch.d.ts +29 -0
  272. package/components/Switch/Switch.test.d.ts +1 -0
  273. package/components/Switch/Switch.utils.d.ts +2 -0
  274. package/components/SystemFeedback/SystemFeedback.d.ts +9 -0
  275. package/components/SystemFeedback/SystemFeedback.test.d.ts +1 -0
  276. package/components/SystemFeedback/SystemFeedback.utils.d.ts +8 -0
  277. package/components/Text/Text.d.ts +21 -0
  278. package/components/Text/Text.test.d.ts +1 -0
  279. package/components/Text/Text.utils.d.ts +6 -0
  280. package/components/Textarea/Textarea.d.ts +42 -0
  281. package/components/Textarea/Textarea.test.d.ts +1 -0
  282. package/components/Textarea/Textarea.utils.d.ts +13 -0
  283. package/components/Textarea/Textarea.utils.test.d.ts +1 -0
  284. package/components/Title/Title.d.ts +20 -0
  285. package/components/Title/Title.test.d.ts +1 -0
  286. package/components/Title/Title.utils.d.ts +3 -0
  287. package/customreactselect.a53f9932.js +13 -0
  288. package/customreactselect.d.ts +1 -0
  289. package/favicon.ico +0 -0
  290. package/fieldset.d.ts +1 -0
  291. package/fieldset.fb7b7e49.js +98 -0
  292. package/floatingactionbutton.281b5465.js +87 -0
  293. package/floatingactionbutton.d.ts +1 -0
  294. package/heading.cb7698f4.js +44 -0
  295. package/heading.d.ts +1 -0
  296. package/icon-192.png +0 -0
  297. package/icon-512.png +0 -0
  298. package/icon.b4211784.js +215 -0
  299. package/icon.d.ts +1 -0
  300. package/icon.svg +1 -0
  301. package/index.d.ts +23 -0
  302. package/index.es.js +49 -0
  303. package/input.abb902e3.js +228 -0
  304. package/input.d.ts +1 -0
  305. package/inputpassword.11c12c66.js +139 -0
  306. package/inputpassword.d.ts +1 -0
  307. package/inputsearch.0c88e71a.js +188 -0
  308. package/inputsearch.d.ts +1 -0
  309. package/inputstepper.b74dac4d.js +284 -0
  310. package/inputstepper.d.ts +1 -0
  311. package/link.cd3720d1.js +84 -0
  312. package/link.d.ts +1 -0
  313. package/linkstandalone.26b52de0.js +80 -0
  314. package/linkstandalone.d.ts +1 -0
  315. package/logo.d.ts +1 -0
  316. package/logo.e6576fe3.js +68 -0
  317. package/manifest.json +6 -0
  318. package/manifest.webmanifest +6 -0
  319. package/optioncheckbox.7195f001.js +43 -0
  320. package/optioncheckbox.d.ts +1 -0
  321. package/package.json +125 -0
  322. package/partials/apple-icon.png +0 -0
  323. package/partials/copyAssets.js +84 -0
  324. package/partials/favicon.ico +0 -0
  325. package/partials/icon-192.png +0 -0
  326. package/partials/icon-512.png +0 -0
  327. package/partials/icon.svg +1 -0
  328. package/partials/index.d.ts +2 -0
  329. package/partials/index.js +2167 -0
  330. package/partials/lib/partials.d.ts +17 -0
  331. package/partials/manifest.json +6 -0
  332. package/partials/manifest.webmanifest +6 -0
  333. package/partials/shared.d.ts +2 -0
  334. package/radio.1b205d64.js +79 -0
  335. package/radio.d.ts +1 -0
  336. package/radiogroup.6a22fe96.js +100 -0
  337. package/radiogroup.d.ts +1 -0
  338. package/react.svg +1 -0
  339. package/select.2ff31eab.js +188 -0
  340. package/select.d.ts +1 -0
  341. package/spinner.d.ts +1 -0
  342. package/spinner.ee015469.js +58 -0
  343. package/styles/fonts/STIHLContrafaceDisplayTitling.woff +0 -0
  344. package/styles/fonts/STIHLContrafaceDisplayTitling.woff2 +0 -0
  345. package/styles/fonts/STIHLContrafaceText-Bold.woff +0 -0
  346. package/styles/fonts/STIHLContrafaceText-Bold.woff2 +0 -0
  347. package/styles/fonts/STIHLContrafaceText.woff +0 -0
  348. package/styles/fonts/STIHLContrafaceText.woff2 +0 -0
  349. package/styles/fonts/font-face.min.css +1 -0
  350. package/styles/fonts/index.es.js +1 -0
  351. package/styles/scss/_index.scss +21 -0
  352. package/styles/scss/lib/_a11y.scss +15 -0
  353. package/styles/scss/lib/_animation.scss +6 -0
  354. package/styles/scss/lib/_breakpoints.scss +16 -0
  355. package/styles/scss/lib/_container-query.scss +58 -0
  356. package/styles/scss/lib/_focus.scss +61 -0
  357. package/styles/scss/lib/_grid-extended.scss +11 -0
  358. package/styles/scss/lib/_grid-full.scss +6 -0
  359. package/styles/scss/lib/_grid-main.scss +117 -0
  360. package/styles/scss/lib/_grid-narrow.scss +14 -0
  361. package/styles/scss/lib/_grid-sidebar-sidebar.scss +48 -0
  362. package/styles/scss/lib/_grid-sidebar.scss +174 -0
  363. package/styles/scss/lib/_grid.scss +86 -0
  364. package/styles/scss/lib/_heading.scss +45 -0
  365. package/styles/scss/lib/_helpers.scss +3 -0
  366. package/styles/scss/lib/_hover.scss +10 -0
  367. package/styles/scss/lib/_link.scss +155 -0
  368. package/styles/scss/lib/_media-query.scss +32 -0
  369. package/styles/scss/lib/_spacing.scss +18 -0
  370. package/styles/scss/lib/_text.scss +63 -0
  371. package/styles/scss/lib/_theme.scss +160 -0
  372. package/styles/scss/lib/_transition.scss +26 -0
  373. package/switch.2f011fcc.js +65 -0
  374. package/switch.d.ts +1 -0
  375. package/systemfeedback.6bbd1505.js +25 -0
  376. package/systemfeedback.d.ts +1 -0
  377. package/text.8d80704f.js +57 -0
  378. package/text.d.ts +1 -0
  379. package/textarea.d.ts +1 -0
  380. package/textarea.e156b0ce.js +189 -0
  381. package/title.d.ts +1 -0
  382. package/title.d855a8e4.js +36 -0
  383. package/types/aria-types.d.ts +330 -0
  384. package/types/common-types.d.ts +13 -0
  385. package/types/icon-types.d.ts +2 -0
  386. package/types/index.d.ts +3 -0
  387. package/utils/breakpoint-customizable.d.ts +12 -0
  388. package/utils/has-document.d.ts +1 -0
  389. package/utils/has-window.d.ts +1 -0
  390. package/utils/helpers.d.ts +27 -0
  391. package/utils/helpers.test.d.ts +1 -0
  392. package/utils/index.d.ts +4 -0
  393. package/utils/link-target.d.ts +2 -0
  394. package/utils/render-documentation.d.ts +26 -0
  395. package/utils/theme.d.ts +2 -0
  396. package/utils/useBreakpoint.d.ts +12 -0
  397. package/utils/useBreakpoint.test.d.ts +1 -0
  398. package/utils/vitest.setup.d.ts +0 -0
  399. package/utils/wait-for-icon.d.ts +25 -0
@@ -0,0 +1,50 @@
1
+ /// <reference types="react" />
2
+ import type { BreakpointCustomizable, IconName, LinkTarget, SelectedAriaAttributes, Theme } from '../../types';
3
+ import { type IconProps } from '../Icon/Icon';
4
+ import type { LinkAriaAttribute, LinkIconPosition, LinkReferrerPolicy, LinkRel, LinkSize, LinkVariant } from './Link.utils';
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
+ }
33
+ export interface LinkProps extends CommonLinkProps {
34
+ /** Content within the link */
35
+ children: React.ReactNode;
36
+ /** Hides the link label, can be responsive
37
+ * `boolean | { base: boolean; s?: boolean; m?: boolean; l?: boolean; xl?: boolean; }`
38
+ */
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
+ variant?: LinkVariant;
46
+ }
47
+ /**
48
+ * Use the Link component when you want the users to navigate to another internal or external page.
49
+ * */
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;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
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';
@@ -0,0 +1,15 @@
1
+ /// <reference types="react" />
2
+ import { type CommonLinkProps } from '../Link/Link';
3
+ import { type LinkStandaloneVariant } from './LinkStandalone.utils';
4
+ export interface LinkStandaloneProps extends CommonLinkProps {
5
+ /** Content within the link */
6
+ children: React.ReactNode;
7
+ /** Enables the active state */
8
+ active?: boolean;
9
+ /** Visual style variant of the Link Standalone */
10
+ variant?: LinkStandaloneVariant;
11
+ }
12
+ /**
13
+ * Use LinkStandalone when you want the users to navigate to another internal or external page.
14
+ * */
15
+ export declare const DSLinkStandalone: ({ children, aria, active, className, dataTrackingid, download, href, iconName, iconPosition, iconSource, referrerPolicy, rel, target, theme, variant, ...rest }: LinkStandaloneProps) => JSX.Element;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export declare const LINK_STANDALONE_VARIANT: readonly ["neutral", "highlight"];
2
+ export type LinkStandaloneVariant = typeof LINK_STANDALONE_VARIANT[number];
@@ -0,0 +1,21 @@
1
+ import type { HTMLAttributes } from 'react';
2
+ import type { SelectedAriaAttributes, Theme } from '../../types';
3
+ import type { LogoAriaAttribute, LogoTarget } from './Logo.utils';
4
+ export interface LogoProps extends HTMLAttributes<HTMLOrSVGElement | HTMLAnchorElement> {
5
+ /** If the DSLogo is used with an href prop, make sure to add a descriptive label to inform screen reader users what the link stands for
6
+ * `{'aria-label'? string;}`
7
+ */
8
+ aria?: SelectedAriaAttributes<LogoAriaAttribute>;
9
+ /** Defines the URL to link to. When providing an url then the component will be rendered as a link */
10
+ href?: string;
11
+ /** The target of the link */
12
+ target?: LogoTarget;
13
+ /** Defines the theme */
14
+ theme?: Theme;
15
+ }
16
+ /**
17
+ * This component is used to display the logo.
18
+ *
19
+ * It can be also used as a link by providing a `href` and an `aria-label`.
20
+ */
21
+ export declare const DSLogo: ({ aria, className, href, target, theme, ...rest }: LogoProps) => JSX.Element;
@@ -0,0 +1,3 @@
1
+ import type { LinkTarget } from '../../types';
2
+ export type LogoTarget = LinkTarget;
3
+ export type LogoAriaAttribute = 'aria-label';
@@ -0,0 +1,27 @@
1
+ import { type InputHTMLAttributes } from 'react';
2
+ import type { BreakpointCustomizable } from '../../types';
3
+ export interface RadioProps extends InputHTMLAttributes<HTMLInputElement> {
4
+ /** Label text displayed next to the radio */
5
+ label: React.ReactNode;
6
+ /** Name of the radio group */
7
+ name: string;
8
+ /** Set the value of the radio */
9
+ value: string;
10
+ /** Disables the radio, preventing user interaction */
11
+ disabled?: boolean;
12
+ /** Hides the radio label, can be responsive
13
+ * `boolean | { base: boolean; s?: boolean; m?: boolean; l?: boolean; xl?: boolean; }`
14
+ */
15
+ hideLabel?: BreakpointCustomizable<boolean>;
16
+ /** Controls whether the radio is checked. */
17
+ checked?: boolean;
18
+ /** Marks the radio as invalid, typically used for form validation */
19
+ invalid?: boolean;
20
+ /** Callback function triggered when the state of the radio changes */
21
+ onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
22
+ }
23
+ /**
24
+ * Generally used in radio groups—collections of radio buttons describing a set of related options.
25
+ * Only one radio button in a given group can be selected at the same time.
26
+ * */
27
+ export declare const DSRadio: import("react").ForwardRefExoticComponent<RadioProps & import("react").RefAttributes<HTMLInputElement>>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,56 @@
1
+ import { type FieldsetHTMLAttributes } from 'react';
2
+ import { type FieldsetProps } from '../Fieldset/Fieldset';
3
+ import { type RadioGroupOption } from './RadioGroup.utils';
4
+ export interface RadioGroupProps extends Omit<FieldsetHTMLAttributes<HTMLFieldSetElement>, 'onChange'> {
5
+ /**
6
+ * The `legend` prop can either be a simple `string` or an object with specific properties.
7
+ * When provided as a string, it represents the legend text directly.
8
+ * When provided as an object, it allows for more detailed configuration, including:
9
+ * - `headingText: string` The text content for the legend.
10
+ * - `headingSize?: 'x-large' | 'large' | 'medium' | 'medium-uppercase' | 'small' | 'small-uppercase'` Defines the size of the heading, using predefined size types, defaults to `'medium'`
11
+ * - `headingTag?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'` Specifies the HTML tag to be used for the heading, such as 'h1', 'h2', etc., defaults to `'h2'`
12
+ *
13
+ * @prop {string | { headingText: string; headingSize?: HeadingSize; headingTag?: HeadingTag; }} legend
14
+ */
15
+ legend: FieldsetProps['legend'];
16
+ /** Name of the radio group */
17
+ name: string;
18
+ /**
19
+ * An array of RadioGroupOption Objects containing the label and the value of each Radio Button
20
+ * `{label: string; value: string}[]`
21
+ * @prop {{label: string; value: string}[]} options
22
+ */
23
+ options: RadioGroupOption[];
24
+ /**
25
+ * Set the alignment of the radio buttons
26
+ */
27
+ alignment?: 'vertical' | 'horizontal';
28
+ /**
29
+ * Value of the selected Option in **uncontrolled RadioGroup** component
30
+ */
31
+ defaultValue?: string;
32
+ /** Short descriptive text displayed beneath the legend */
33
+ description?: FieldsetProps['description'];
34
+ /** Disables the radio group, preventing user interaction */
35
+ disabled?: boolean;
36
+ /** Unique id for the radio group, needs to be set for proper accessibility functionality, if `description` or `systemFeedback` are set */
37
+ id?: string;
38
+ /** Marks the radio group as invalid, typically used for form validation */
39
+ invalid?: boolean;
40
+ /** Marks the radio group as required.
41
+ * When this property is set, an asterisk (*) is automatically appended to the radio group's legend
42
+ * */
43
+ required?: boolean;
44
+ /** Defines a system feedback message, shown when `invalid={true}` */
45
+ systemFeedback?: string;
46
+ /** Set the value of the selected option */
47
+ value?: string;
48
+ /** Callback function triggered when the value of the radio group changes */
49
+ onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
50
+ }
51
+ /**
52
+ * The `DSRadioGroup` component offers a cohesive and accessible solution for grouping radio buttons,
53
+ * complete with customizable legends, alignment options, and integrated validation feedback,
54
+ * enhancing the user experience in form designs.
55
+ * */
56
+ export declare const DSRadioGroup: import("react").ForwardRefExoticComponent<RadioGroupProps & import("react").RefAttributes<HTMLInputElement>>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,6 @@
1
+ import type { RadioProps } from '../Radio/Radio';
2
+ import type { RadioGroupProps } from './RadioGroup';
3
+ export type RadioGroupOption = Pick<RadioProps, 'label' | 'value'>;
4
+ type ValidationProps = Pick<RadioGroupProps, 'description' | 'id' | 'legend' | 'name' | 'options' | 'systemFeedback'>;
5
+ export declare const validateProps: ({ description, id, legend, name, options, systemFeedback, }: ValidationProps) => void;
6
+ export {};
@@ -0,0 +1,43 @@
1
+ import { type SelectHTMLAttributes } from 'react';
2
+ import type { BreakpointCustomizable } from '../../types';
3
+ import { type SelectOptionsOrOptGroups, type SelectSize } from './Select.utils';
4
+ export interface SelectProps extends Omit<SelectHTMLAttributes<HTMLSelectElement>, 'size'> {
5
+ /** Unique id for the select */
6
+ id: string;
7
+ /** Label text displayed above the select */
8
+ label: string;
9
+ /**
10
+ * Defines the options, can be a mixed array of options and option groups
11
+ * `type SelectOption = {label: string; value: string | number; isDisabled?: boolean;}`
12
+ * `type SelectOptionsGroup = {label: string; options: SelectOption[];}`
13
+ * `type SelectOptionsOrOptGroups = (SelectOption | SelectOptionsGroup)[];`
14
+ * */
15
+ options: SelectOptionsOrOptGroups;
16
+ /** Disables the select, preventing user interaction */
17
+ disabled?: boolean;
18
+ /** Hides the select label, can be responsive
19
+ * `boolean | { base: boolean; s?: boolean; m?: boolean; l?: boolean; xl?: boolean; }`
20
+ */
21
+ hideLabel?: BreakpointCustomizable<boolean>;
22
+ /** Short descriptive text displayed beneath the label */
23
+ hint?: string;
24
+ /** Marks the select as invalid, typically used for form validation */
25
+ invalid?: boolean;
26
+ /** Modifies the empty option label to ensure a conscious choice. */
27
+ placeholder?: string;
28
+ /** Indicates that the select is required */
29
+ required?: boolean;
30
+ /** Size of the select */
31
+ size?: SelectSize;
32
+ /** Defines a system feedback message, shown when `invalid={true}` */
33
+ systemFeedback?: string;
34
+ }
35
+ /**
36
+ * Use the DSSelect component to efficiently navigate through and select from a range of options,
37
+ * enhancing user interaction and decision-making in your application.
38
+ *
39
+ *
40
+ * <div className="ds-alert">If you are looking for a component with a **custom dropdown** or the ability to **filter** and **select multiple options**, please take a look at
41
+ * [DSCombobox](/docs/components-combobox--documentation)</div>
42
+ * */
43
+ export declare const DSSelect: ({ id, label, options, className, defaultValue, disabled, hideLabel, hint, invalid, placeholder, required, size, systemFeedback, value, ...rest }: SelectProps) => JSX.Element;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,35 @@
1
+ import type { HTMLAttributes } from 'react';
2
+ import type { GroupBase, OptionsOrGroups } from 'react-select';
3
+ import type { SelectProps } from './Select';
4
+ type ValidationProps = Pick<SelectProps, 'id' | 'label' | 'options'>;
5
+ export interface SelectOption extends HTMLAttributes<HTMLOptionElement> {
6
+ label: string;
7
+ value: string | number;
8
+ isDisabled?: boolean;
9
+ }
10
+ export type SelectOptionsGroup = GroupBase<SelectOption>;
11
+ export type SelectOptionsOrOptGroups = OptionsOrGroups<SelectOption, SelectOptionsGroup>;
12
+ export declare const SELECT_SIZE: readonly ["medium", "small"];
13
+ export type SelectSize = (typeof SELECT_SIZE)[number];
14
+ /**
15
+ * Validates the given properties of the DSSelect component for common configuration errors.
16
+ * This function is intended to be used in development mode to provide developers with
17
+ * warnings about potential misuse of the component.
18
+ *
19
+ * @param validationProps - The subset of DSSelect properties to validate. This includes
20
+ * id and label.
21
+ */
22
+ export declare const validateSelectProps: ({ id, label, options, }: ValidationProps) => void;
23
+ /**
24
+ * Determines the initial visibility of the placeholder based on the `placeholder` string and
25
+ * the values of `defaultValue` and `value` from the props.
26
+ * The function will return true to indicate the placeholder should be selected in the following conditions:
27
+ * - The `placeholder` is not an empty string, and neither `defaultValue` nor `value` are provided.
28
+ * - Both `defaultValue` and `value` are either undefined or explicitly set to an empty string.
29
+ * Otherwise, it returns false, indicating the placeholder is not selected.
30
+ *
31
+ * This ensures that the placeholder is only selected when no initial or current value is set
32
+ * and a placeholder string is provided, enforcing a more deliberate selection by the user when necessary.
33
+ */
34
+ export declare const getIsPlaceholderSelected: (placeholder: string, defaultValue: string | number | readonly string[] | undefined, value: string | number | readonly string[] | undefined) => boolean;
35
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { HTMLAttributes } from 'react';
2
+ import type { SelectedAriaAttributes, Theme } from '../../types';
3
+ import type { SpinnerAriaAttribute, SpinnerSize } from './Spinner.utils';
4
+ export interface SpinnerProps extends HTMLAttributes<HTMLSpanElement> {
5
+ /** ARIA attributes to enhance accessibility
6
+ * `{'aria-label'? string;}`
7
+ */
8
+ aria?: SelectedAriaAttributes<SpinnerAriaAttribute>;
9
+ /** Size of the spinner */
10
+ size?: SpinnerSize;
11
+ /** Defines the theme */
12
+ theme?: Theme;
13
+ }
14
+ export declare const DSSpinner: ({ aria, className, size, theme, ...rest }: SpinnerProps) => JSX.Element;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ export declare const SPINNER_SIZE: readonly ["small", "medium", "large", "x-large", "inherit"];
2
+ export type SpinnerSize = (typeof SPINNER_SIZE)[number];
3
+ export type SpinnerAriaAttribute = 'aria-label';
@@ -0,0 +1,29 @@
1
+ import { type ButtonHTMLAttributes } from 'react';
2
+ import type { SelectedAriaAttributes } from '../../types';
3
+ import type { SwitchAriaAttribute, SwitchLabelPosition } from './Switch.utils';
4
+ export interface SwitchProps extends ButtonHTMLAttributes<HTMLButtonElement> {
5
+ /** Content within the label */
6
+ children: React.ReactNode;
7
+ /** ARIA attributes to enhance accessibility
8
+ * `{'aria-label'? string;}`
9
+ */
10
+ aria?: SelectedAriaAttributes<SwitchAriaAttribute>;
11
+ /** Alignment of the label */
12
+ alignLabel?: SwitchLabelPosition;
13
+ /** Controls whether the switch is checked. */
14
+ checked?: boolean;
15
+ /** Identifier for analytics tracking */
16
+ dataTrackingid?: string;
17
+ /** Disables the switch, preventing user interaction */
18
+ disabled?: boolean;
19
+ /** Shows loading indicator */
20
+ loading?: boolean;
21
+ /** Stretches the Switch over the parent's width */
22
+ stretched?: boolean;
23
+ /** Callback function triggered when the switch is clicked */
24
+ onClick?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
25
+ }
26
+ /**
27
+ * Often used in settings, in which users can communicate their choice through binary selection.
28
+ * */
29
+ export declare const DSSwitch: ({ children, aria, alignLabel, checked, className, dataTrackingid, disabled, loading, stretched, onClick, ...rest }: SwitchProps) => JSX.Element;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export type SwitchLabelPosition = 'left' | 'right';
2
+ export type SwitchAriaAttribute = 'aria-label';
@@ -0,0 +1,9 @@
1
+ import type { HTMLAttributes } from 'react';
2
+ import { type SystemFeedbackType } from './SystemFeedback.utils';
3
+ export interface SystemFeedbackProps extends HTMLAttributes<HTMLDivElement> {
4
+ /** Defines the message */
5
+ message: string;
6
+ /** Defines the type */
7
+ type: SystemFeedbackType;
8
+ }
9
+ export declare const DSSystemFeedback: ({ className, message, type, ...rest }: SystemFeedbackProps) => JSX.Element;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ interface SystemFeedbackIcons {
2
+ valid: 'circle-check-colored';
3
+ invalid: 'diamond-exclamationmark-colored';
4
+ warning: 'triangle-exclamationmark-colored';
5
+ }
6
+ export declare const systemFeedbackIcons: SystemFeedbackIcons;
7
+ export type SystemFeedbackType = 'valid' | 'invalid' | 'warning';
8
+ export {};
@@ -0,0 +1,21 @@
1
+ import type { HTMLAttributes } from 'react';
2
+ import type { Theme } from '../../types';
3
+ import type { TextSize, TextTag, TextWeight } from './Text.utils';
4
+ export interface TextProps extends HTMLAttributes<HTMLQuoteElement | HTMLDivElement | HTMLLegendElement | HTMLParagraphElement | HTMLSpanElement | HTMLTimeElement> {
5
+ /** Content of the text */
6
+ children: React.ReactNode;
7
+ /** Size of the text */
8
+ size?: TextSize;
9
+ /** Specifies the HTML tag to be used for the text */
10
+ tag?: TextTag;
11
+ /** Defines the theme */
12
+ theme?: Theme;
13
+ /** Defines the weight, `size='xx-small'` does not have a bold variant */
14
+ weight?: TextWeight;
15
+ }
16
+ /**
17
+ * The `DSText` component is designed for displaying body text and paragraphs,
18
+ * ensuring consistent sizing across different viewports.
19
+ * It is a versatile component that can be used in various parts of your application where text content is needed.
20
+ */
21
+ export declare const DSText: ({ children, className, size, tag, theme, weight, ...rest }: TextProps) => JSX.Element;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,6 @@
1
+ export declare const TEXT_TAG: readonly ["address", "blockquote", "cite", "div", "figcaption", "legend", "p", "span", "time"];
2
+ export type TextTag = (typeof TEXT_TAG)[number];
3
+ export declare const TEXT_SIZE: readonly ["large", "medium", "small", "x-small", "xx-small"];
4
+ export type TextSize = (typeof TEXT_SIZE)[number];
5
+ export declare const TEXT_WEIGHT: readonly ["bold", "normal"];
6
+ export type TextWeight = (typeof TEXT_WEIGHT)[number];
@@ -0,0 +1,42 @@
1
+ import { type TextareaHTMLAttributes } from 'react';
2
+ import type { BreakpointCustomizable } from '../../types';
3
+ import { type TextareaSize } from './Textarea.utils';
4
+ export interface TextareaProps extends Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'size' | 'rows' | 'cols'> {
5
+ /** Unique id for the textarea */
6
+ id: string;
7
+ /** Label text displayed above the textarea */
8
+ label: string;
9
+ /** Text displayed when maximum characters are reached */
10
+ charsLimitText?: string;
11
+ /** Text used for assistive technologies when the characters remaining amount changes */
12
+ charsRemainingText?: string;
13
+ /** Disables the textarea, preventing user interaction */
14
+ disabled?: boolean;
15
+ /** Hides the textarea label, can be responsive
16
+ * `boolean | { base: boolean; s?: boolean; m?: boolean; l?: boolean; xl?: boolean; }`
17
+ */
18
+ hideLabel?: BreakpointCustomizable<boolean>;
19
+ /** Short descriptive text displayed beneath the label */
20
+ hint?: string;
21
+ /** Marks the textarea as invalid, typically used for form validation */
22
+ invalid?: boolean;
23
+ /** Maximum length of the textarea value - if set, a character counter is visible beneath the textarea */
24
+ maxLength?: number;
25
+ /** Enables the readonly state of the textarea */
26
+ readonly?: boolean;
27
+ /** Indicates that the textarea is required */
28
+ required?: boolean;
29
+ /** Controls whether the textarea is resizable manually or automatically adjusts to user input */
30
+ resize?: 'vertical' | 'auto';
31
+ /** Defines a system feedback message, shown when `invalid={true}` */
32
+ systemFeedback?: string;
33
+ /** Size of the textarea */
34
+ size?: TextareaSize;
35
+ /** CSS className that can be set on the wrapping container of `<DSTextarea />`. */
36
+ wrapperClassName?: string;
37
+ }
38
+ /**
39
+ * The `<DSTextarea />` component allows users to enter and edit multi line text.
40
+ * It comes in two sizes (medium & small) and supports various customizations
41
+ */
42
+ export declare const DSTextarea: ({ id, label, charsLimitText, charsRemainingText, className, defaultValue, disabled, hint, hideLabel, invalid, maxLength, readonly, required, resize, size, systemFeedback, value, wrapperClassName, onChange, onInput, ...rest }: TextareaProps) => JSX.Element;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,13 @@
1
+ import type { TextareaProps } from './Textarea';
2
+ export declare const TEXTAREA_SIZE: readonly ["medium", "small"];
3
+ export type TextareaSize = (typeof TEXTAREA_SIZE)[number];
4
+ type ValidationProps = Pick<TextareaProps, 'id' | 'label'>;
5
+ /**
6
+ * Validates the given properties of the DSTextarea component for common configuration errors.
7
+ * This function is intended to be used in development mode to provide developers with
8
+ * warnings about potential misuse of the component.
9
+ *
10
+ * @param validationProps - The subset of DSTextarea properties to validate.
11
+ */
12
+ export declare const validateTextareaProps: ({ id, label }: ValidationProps) => void;
13
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,20 @@
1
+ import type { HTMLAttributes } from 'react';
2
+ import type { Theme } from '../../types';
3
+ import type { TitleSize, TitleTag } from './Title.utils';
4
+ export interface TitleProps extends HTMLAttributes<HTMLHeadingElement> {
5
+ /** Content of the title */
6
+ children: React.ReactNode;
7
+ /** Size of the title */
8
+ size?: TitleSize;
9
+ /** Specifies the HTML tag to be used for the title */
10
+ tag?: TitleTag;
11
+ /** Defines the theme */
12
+ theme?: Theme;
13
+ }
14
+ /**
15
+ * The `DSTitle` component is specifically designed for `h1` and `h2` headlines.
16
+ * It's intended for primary emotional headlines that should be prominent,
17
+ * accompanied by a stand line for reinforcement.
18
+ * The component ensures impactful headline presentation in your application.
19
+ */
20
+ export declare const DSTitle: ({ children, className, size, tag, theme, ...rest }: TitleProps) => JSX.Element;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ export declare const TITLE_SIZE: readonly ["x-large", "large"];
2
+ export type TitleSize = typeof TITLE_SIZE[number];
3
+ export type TitleTag = 'h1' | 'h2';
@@ -0,0 +1,13 @@
1
+ "use client";
2
+ import "./chunks/jsx-runtime.5c071667.js";
3
+ import "./chunks/index.8021d3e0.js";
4
+ import "react";
5
+ import { C as l } from "./chunks/CustomReactSelect.9d0a378a.js";
6
+ import "./chunks/useBreakpoint.6c1b06c2.js";
7
+ import "./asterisk.91abccec.js";
8
+ import "./icon.b4211784.js";
9
+ import "./systemfeedback.6bbd1505.js";
10
+ import "./optioncheckbox.7195f001.js";
11
+ export {
12
+ l as CustomReactSelect
13
+ };
@@ -0,0 +1 @@
1
+ export * from './components/CustomReactSelect/CustomReactSelect'
package/favicon.ico ADDED
Binary file
package/fieldset.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from './components/Fieldset/Fieldset'
@@ -0,0 +1,98 @@
1
+ import "./assets/Fieldset.5297efb8.css";
2
+ import { j as e } from "./chunks/jsx-runtime.5c071667.js";
3
+ import { c } from "./chunks/index.8021d3e0.js";
4
+ import "react";
5
+ import { Asterisk as k } from "./asterisk.91abccec.js";
6
+ import { DSHeading as F } from "./heading.cb7698f4.js";
7
+ import { DSSystemFeedback as w } from "./systemfeedback.6bbd1505.js";
8
+ import { g as y } from "./chunks/helpers.ea3ca41a.js";
9
+ const N = "_root_1q2kr_25", v = "_child-wrapper_1q2kr_31", E = "_legend_1q2kr_38", M = "_legend--utility--m_1q2kr_41", C = "_description_1q2kr_52", P = "_description--small_1q2kr_65", T = "_system-feedback_1q2kr_69", i = {
10
+ root: N,
11
+ "child-wrapper": "_child-wrapper_1q2kr_31",
12
+ childWrapper: v,
13
+ legend: E,
14
+ "legend--utility--m": "_legend--utility--m_1q2kr_41",
15
+ legendUtilityM: M,
16
+ description: C,
17
+ "description--small": "_description--small_1q2kr_65",
18
+ descriptionSmall: P,
19
+ "system-feedback": "_system-feedback_1q2kr_69",
20
+ systemFeedback: T
21
+ }, U = ({
22
+ description: n,
23
+ id: s,
24
+ legend: a,
25
+ systemFeedback: t
26
+ }) => {
27
+ if (!s && (n || t))
28
+ throw new Error(
29
+ y(
30
+ "DSFieldset",
31
+ 'A unique "id" prop is required when providing the description or systemFeedback property. Please add an unique "id" prop to the DSFieldset component.'
32
+ )
33
+ );
34
+ if (!a)
35
+ throw new Error(
36
+ y(
37
+ "DSFieldset",
38
+ "The legend prop is required. Please add the legend prop to the DSFieldset component."
39
+ )
40
+ );
41
+ }, L = ({
42
+ children: n,
43
+ legend: s,
44
+ className: a,
45
+ description: t,
46
+ disabled: j = !1,
47
+ id: d,
48
+ invalid: p = !1,
49
+ required: m = !1,
50
+ systemFeedback: r,
51
+ ...q
52
+ }) => {
53
+ process.env.NODE_ENV !== "production" && U({ description: t, id: d, legend: s, systemFeedback: r });
54
+ let o, _, g;
55
+ const l = typeof s == "object" && s !== void 0;
56
+ l && ({ headingSize: o, headingTag: _, headingText: g } = s);
57
+ const h = `${d}-feedback`, f = `${d}-description`, S = [
58
+ r && h,
59
+ t && f
60
+ ].filter(Boolean).join(" "), b = !l || o === "small" || o === "small-uppercase", u = c(i.root, a), x = c(i.legend, {
61
+ [i.legendUtilityM]: !l
62
+ }), D = c(i.description, {
63
+ [i.descriptionSmall]: b
64
+ });
65
+ return /* @__PURE__ */ e.jsxs(
66
+ "fieldset",
67
+ {
68
+ className: u,
69
+ disabled: j,
70
+ ...q,
71
+ "aria-invalid": p,
72
+ "aria-describedby": S || void 0,
73
+ children: [
74
+ /* @__PURE__ */ e.jsx("legend", { className: x, children: l ? /* @__PURE__ */ e.jsxs(F, { tag: _, size: o, children: [
75
+ g,
76
+ m && /* @__PURE__ */ e.jsx(k, {})
77
+ ] }) : /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
78
+ s,
79
+ m && /* @__PURE__ */ e.jsx(k, {})
80
+ ] }) }),
81
+ t && /* @__PURE__ */ e.jsx("span", { id: f, className: D, children: t }),
82
+ p && r && /* @__PURE__ */ e.jsx(
83
+ w,
84
+ {
85
+ id: h,
86
+ type: "invalid",
87
+ message: r,
88
+ className: i.systemFeedback
89
+ }
90
+ ),
91
+ /* @__PURE__ */ e.jsx("div", { className: i.childWrapper, children: n })
92
+ ]
93
+ }
94
+ );
95
+ };
96
+ export {
97
+ L as DSFieldset
98
+ };