@stihl-design-system/components 1.0.0-RC.14 → 1.0.0-RC.16

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 (244) hide show
  1. package/accordion.Dm5MWHQ6.js +12 -0
  2. package/arialiveregions.BwwB-OfU.js +19 -0
  3. package/assets/Accordion.B5bGf8mR.css +1 -0
  4. package/assets/Breadcrumb.BaYrwrYl.css +1 -0
  5. package/assets/NavigationTabList.B6x56sAV.css +1 -0
  6. package/assets/linkstandalone.LMdnj-G0.css +1 -0
  7. package/asterisk.DUzshaw5.js +8 -0
  8. package/breadcrumb.BDpXhffn.js +11 -0
  9. package/breadcrumb.d.ts +2 -0
  10. package/button.Ywd82k7O.js +121 -0
  11. package/buttonround.CI5RGkR9.js +105 -0
  12. package/checkbox.C1JJOQeV.js +103 -0
  13. package/checkboxgroup.o5t3fWsf.js +9 -0
  14. package/chip.DcJLVxEm.js +11 -0
  15. package/chipgroup.CCq2AMSa.js +187 -0
  16. package/chunks/Accordion.BmI7nlus.js +166 -0
  17. package/chunks/AriaLiveRegions.utils.zSFFD3SF.js +27 -0
  18. package/chunks/Breadcrumb.BycdSn-b.js +106 -0
  19. package/chunks/CheckboxGroup.C-Adg1hA.js +74 -0
  20. package/chunks/Chip.BY8kLPnz.js +120 -0
  21. package/chunks/CustomReactSelect.C2yN7CYh.js +3622 -0
  22. package/chunks/Dialog.CjzCKRr2.js +140 -0
  23. package/chunks/Drawer.m2JeVNBp.js +148 -0
  24. package/chunks/Fieldset.DfWsQgjD.js +105 -0
  25. package/chunks/Icon.DhKyUWtM.js +231 -0
  26. package/chunks/Input.utils.Um8Pqp4U.js +52 -0
  27. package/chunks/InputPassword.CmvZcn6n.js +141 -0
  28. package/chunks/InputSearch.CwXaGLJp.js +179 -0
  29. package/chunks/InputStepper.NCl90c4h.js +275 -0
  30. package/chunks/NavigationTabList.BOrhiSiM.js +63 -0
  31. package/chunks/NavigationTabs.DW_6fZxc.js +63 -0
  32. package/chunks/Notification.Bp28ubaX.js +99 -0
  33. package/chunks/RadioGroup.Dh-7jSOg.js +105 -0
  34. package/chunks/Select.CMwsbHvQ.js +190 -0
  35. package/chunks/TabPane.utils.DG16Y2uD.js +10 -0
  36. package/chunks/Tabs.D3yDE5nU.js +77 -0
  37. package/chunks/Textarea.CMRn2Aof.js +184 -0
  38. package/chunks/Toast.Boi6TEHu.js +76 -0
  39. package/chunks/index.CEyLAtio.js +48 -0
  40. package/chunks/index.CgTHIF3K.js +293 -0
  41. package/chunks/{translate.isa3FHb8.js → translate.nuU7uChI.js} +1 -4
  42. package/chunks/useBreakpoint.CMOR9ZOB.js +44 -0
  43. package/combobox.BhzaJrs7.js +55 -0
  44. package/components/Accordion/Accordion.d.ts +5 -1
  45. package/components/Accordion/Accordion.utils.d.ts +2 -2
  46. package/components/AriaLiveRegions/AriaLiveRegions.d.ts +1 -0
  47. package/components/Asterisk/Asterisk.d.ts +1 -0
  48. package/components/Breadcrumb/Breadcrumb.d.ts +45 -0
  49. package/components/Breadcrumb/Breadcrumb.utils.d.ts +4 -0
  50. package/components/Button/Button.d.ts +6 -4
  51. package/components/ButtonRound/ButtonRound.d.ts +4 -1
  52. package/components/Checkbox/Checkbox.d.ts +2 -0
  53. package/components/CheckboxGroup/CheckboxGroup.d.ts +3 -1
  54. package/components/ChipGroup/ChipGroup.d.ts +2 -0
  55. package/components/Combobox/Combobox.d.ts +3 -0
  56. package/components/Combobox/CustomReactSelect/CustomReactSelect.d.ts +3 -2
  57. package/components/Combobox/CustomReactSelect/OptionCheckbox.d.ts +1 -1
  58. package/components/Dialog/Dialog.d.ts +15 -4
  59. package/components/Drawer/Drawer.d.ts +15 -5
  60. package/components/Fieldset/Fieldset.d.ts +3 -1
  61. package/components/Flag/Flag.d.ts +3 -0
  62. package/components/FloatingActionButton/FloatingActionButton.d.ts +4 -1
  63. package/components/Heading/Heading.d.ts +3 -1
  64. package/components/Icon/Icon.d.ts +3 -1
  65. package/components/Input/Input.d.ts +23 -10
  66. package/components/Input/Input.utils.d.ts +2 -2
  67. package/components/InputPassword/InputPassword.d.ts +18 -9
  68. package/components/InputSearch/InputSearch.d.ts +17 -7
  69. package/components/InputStepper/InputStepper.d.ts +24 -8
  70. package/components/Link/Link.d.ts +6 -3
  71. package/components/LinkStandalone/LinkStandalone.d.ts +4 -1
  72. package/components/Logo/Logo.d.ts +3 -1
  73. package/components/NavigationTabs/NavigationTabs.d.ts +43 -0
  74. package/components/NavigationTabs/NavigationTabs.test.d.ts +1 -0
  75. package/components/NavigationTabs/NavigationTabs.utils.d.ts +6 -0
  76. package/components/Notification/Notification.d.ts +14 -5
  77. package/components/NumberIndicator/NumberIndicator.d.ts +1 -0
  78. package/components/RadioGroup/RadioGroup.d.ts +2 -0
  79. package/components/Select/Select.d.ts +2 -1
  80. package/components/SkipToContent/SkipToContent.d.ts +3 -0
  81. package/components/Spinner/Spinner.d.ts +7 -1
  82. package/components/Switch/Switch.d.ts +6 -4
  83. package/components/SystemFeedback/SystemFeedback.d.ts +1 -1
  84. package/components/Tabs/TabList/NavigationTabList/NavigationTabList.d.ts +22 -0
  85. package/components/Tabs/TabList/TabList.d.ts +38 -0
  86. package/components/Tabs/TabList/TabList.utils.d.ts +6 -0
  87. package/components/Tabs/TabList/TabList.utils.test.d.ts +1 -0
  88. package/components/Tabs/TabPane/TabPane.d.ts +1 -1
  89. package/components/Tabs/Tabs.d.ts +9 -2
  90. package/components/Tabs/Tabs.utils.d.ts +1 -6
  91. package/components/Text/Text.d.ts +6 -4
  92. package/components/Textarea/Textarea.d.ts +3 -1
  93. package/components/Title/Title.d.ts +3 -1
  94. package/components/Toast/Toast.d.ts +2 -0
  95. package/customreactselect.CW5-QQSM.js +14 -0
  96. package/dialog.DuAgAwfs.js +10 -0
  97. package/drawer.D3E46fH1.js +10 -0
  98. package/fieldset.4UygHVV3.js +12 -0
  99. package/flag.BJk5fHMs.js +50 -0
  100. package/floatingactionbutton.DFZ2YwaJ.js +74 -0
  101. package/heading.6LOBHJG6.js +55 -0
  102. package/icon.dww0DXWN.js +9 -0
  103. package/index.d.ts +4 -0
  104. package/index.es.js +139 -179
  105. package/input.DXzeHdRE.js +211 -0
  106. package/inputpassword.DXEvvgZt.js +13 -0
  107. package/inputsearch.DzwXj82k.js +14 -0
  108. package/inputstepper.CYwcFoQ1.js +16 -0
  109. package/link.CgNqBaNn.js +106 -0
  110. package/linkstandalone.Dn-uDj5T.js +69 -0
  111. package/logo.BgnYvK7t.js +51 -0
  112. package/navigationtablist.XNy54fXK.js +9 -0
  113. package/navigationtablist.d.ts +2 -0
  114. package/navigationtabs.DheMj9hs.js +9 -0
  115. package/navigationtabs.d.ts +2 -0
  116. package/notification.BnyOWmCm.js +10 -0
  117. package/numberindicator.Do92cr0z.js +35 -0
  118. package/optioncheckbox.DcckSTrV.js +52 -0
  119. package/package.json +53 -50
  120. package/partials/index.js +248 -2131
  121. package/partials/lib/partials.d.ts +77 -4
  122. package/radio.TDaeblOB.js +130 -0
  123. package/radiogroup.DyL_cJzK.js +11 -0
  124. package/select.BoeUz4Fb.js +13 -0
  125. package/skiptocontent.D7xhN0KM.js +35 -0
  126. package/spinner.gilnr6vN.js +52 -0
  127. package/switch.Ca9tRATr.js +68 -0
  128. package/systemfeedback.7I6fnqjX.js +34 -0
  129. package/tablist.TWjlHs5Y.js +251 -0
  130. package/tablist.d.ts +2 -0
  131. package/tabpane.CB-eudyw.js +37 -0
  132. package/tabs.Cr2CMXbY.js +11 -0
  133. package/text.C6gOJ2nV.js +59 -0
  134. package/textarea.CqDSxfcU.js +12 -0
  135. package/title.CSCXJnBN.js +43 -0
  136. package/toast.BN0v57nF.js +11 -0
  137. package/toastmanager.B9CR9plV.js +115 -0
  138. package/utils/render-documentation.d.ts +1 -0
  139. package/accordion.C6_sqiW2.js +0 -10
  140. package/arialiveregions.2dxodwBP.js +0 -27
  141. package/assets/Accordion.i4k5SMQM.css +0 -1
  142. package/assets/Tabs.DUqlqP6R.css +0 -1
  143. package/assets/linkstandalone.DIazcjIv.css +0 -1
  144. package/asterisk.DpzETKdT.js +0 -8
  145. package/button.BfcWQZhx.js +0 -135
  146. package/buttonround.E56F_805.js +0 -118
  147. package/checkbox.Dt0OWryN.js +0 -111
  148. package/checkboxgroup.je32bRPr.js +0 -8
  149. package/chip.CpnDX4Ro.js +0 -10
  150. package/chipgroup.Cy76KMWu.js +0 -175
  151. package/chunks/Accordion.Bza3TO4Y.js +0 -125
  152. package/chunks/AriaLiveRegions.utils.Bq6Mp2bE.js +0 -40
  153. package/chunks/CheckboxGroup.C_2ZwEQJ.js +0 -95
  154. package/chunks/Chip.BvlKC503.js +0 -148
  155. package/chunks/CustomReactSelect.CB41lklE.js +0 -3598
  156. package/chunks/Dialog.ClBjJWOh.js +0 -148
  157. package/chunks/Drawer.ReDW3ohH.js +0 -154
  158. package/chunks/Fieldset.Ct_JFRs9.js +0 -99
  159. package/chunks/Icon.BCmt_XBG.js +0 -223
  160. package/chunks/Input.utils.DYbmWlx6.js +0 -111
  161. package/chunks/InputPassword.Cvk5J8w1.js +0 -143
  162. package/chunks/InputSearch.BIIW-ERk.js +0 -192
  163. package/chunks/InputStepper.DGzR3KY6.js +0 -296
  164. package/chunks/Notification.uAEjPywP.js +0 -92
  165. package/chunks/RadioGroup.D10-pe9H.js +0 -146
  166. package/chunks/Select.DsLnW29U.js +0 -194
  167. package/chunks/TabPane.CYuUi0oL.js +0 -51
  168. package/chunks/Tabs.D_JAsvoh.js +0 -270
  169. package/chunks/Textarea.Dh9R9YdZ.js +0 -199
  170. package/chunks/Toast.j7LPnQ36.js +0 -89
  171. package/chunks/index.CvOaL64Y.js +0 -45
  172. package/chunks/jsx-runtime.C115EyI4.js +0 -635
  173. package/chunks/useBreakpoint.B8XxjSVJ.js +0 -48
  174. package/combobox.D6zXg976.js +0 -47
  175. package/customreactselect.BcjDvZG6.js +0 -13
  176. package/dialog.BkVOgeWY.js +0 -9
  177. package/drawer.DM_NKGTQ.js +0 -9
  178. package/fieldset.CSNoVbL1.js +0 -11
  179. package/flag.BKpsdB_-.js +0 -43
  180. package/floatingactionbutton.D5L0B7zI.js +0 -87
  181. package/heading.IPIYc5vW.js +0 -50
  182. package/icon.Ck0BpI34.js +0 -8
  183. package/input.BbnmbMCI.js +0 -241
  184. package/inputpassword.KnZRwWCQ.js +0 -12
  185. package/inputsearch.DgYJPZ2v.js +0 -13
  186. package/inputstepper.T_of1Gz0.js +0 -15
  187. package/link.L8O_InKe.js +0 -116
  188. package/linkstandalone.BBoEniZ_.js +0 -79
  189. package/logo.Hul8qCFo.js +0 -65
  190. package/notification.Bt9TbAAt.js +0 -9
  191. package/numberindicator.UU7FSouT.js +0 -26
  192. package/optioncheckbox.BRUTnQnJ.js +0 -43
  193. package/radio.B-2uuWHq.js +0 -114
  194. package/radiogroup.DM_lF4hI.js +0 -10
  195. package/select.COLuwr89.js +0 -12
  196. package/skiptocontent.DxogCFvU.js +0 -45
  197. package/spinner.Bq97Og-6.js +0 -58
  198. package/switch.DI8YYa5G.js +0 -65
  199. package/systemfeedback.C3Pfxxpp.js +0 -25
  200. package/tabpane.BnQBzVXw.js +0 -8
  201. package/tabs.BaELlVri.js +0 -15
  202. package/text.DThvTwm8.js +0 -57
  203. package/textarea.Wcl_pVBb.js +0 -13
  204. package/title.DqzdB2Gq.js +0 -36
  205. package/toast.DQlMWU6I.js +0 -10
  206. package/toastmanager.DxHFtr5C.js +0 -119
  207. /package/assets/{CheckboxGroup.BH1Br1dg.css → CheckboxGroup.Dd-Huo7x.css} +0 -0
  208. /package/assets/{Chip.DSdLuzoi.css → Chip.dxIYIjj7.css} +0 -0
  209. /package/assets/{CustomReactSelect.vHt8qNKC.css → CustomReactSelect.DYDaP5r5.css} +0 -0
  210. /package/assets/{Dialog.BgzebVk4.css → Dialog.DXmPdExC.css} +0 -0
  211. /package/assets/{Drawer.Bauwxrk7.css → Drawer.BcM0epJS.css} +0 -0
  212. /package/assets/{Fieldset.DOdTbb7C.css → Fieldset.Og4EsnPI.css} +0 -0
  213. /package/assets/{Icon.DxRSBRSL.css → Icon.ZNrKuqgu.css} +0 -0
  214. /package/assets/{InputPassword.CG7Ugu73.css → InputPassword.DtKteerr.css} +0 -0
  215. /package/assets/{InputSearch.CseChMc-.css → InputSearch.Mql3oFlQ.css} +0 -0
  216. /package/assets/{InputStepper.C0eAYr7P.css → InputStepper.BXz1MMBg.css} +0 -0
  217. /package/assets/{Notification.DbRapUJo.css → Notification.DZIF-Wo6.css} +0 -0
  218. /package/assets/{RadioGroup.BfMo157q.css → RadioGroup.CM2mYOzc.css} +0 -0
  219. /package/assets/{Select.D4EXgIbz.css → Select.KvAgxJZk.css} +0 -0
  220. /package/assets/{Textarea.KJGPTYMz.css → Textarea.BIRQlv6m.css} +0 -0
  221. /package/assets/{Toast.CuafTAf7.css → Toast.CuM-yS7S.css} +0 -0
  222. /package/assets/{arialiveregions.DhsijBaL.css → arialiveregions.e0Q16ZWi.css} +0 -0
  223. /package/assets/{asterisk.BfVAUBO7.css → asterisk.B41DaZDe.css} +0 -0
  224. /package/assets/{button.DF4RBeC2.css → button.CpPeQPsM.css} +0 -0
  225. /package/assets/{buttonround.19uK_-oO.css → buttonround.BFauSRAb.css} +0 -0
  226. /package/assets/{checkbox.ByOoFouu.css → checkbox.BKHQN_tu.css} +0 -0
  227. /package/assets/{chipgroup.BzfZLbkv.css → chipgroup.CUIkyYBW.css} +0 -0
  228. /package/assets/{flag.B-RLcMcf.css → flag.C7i3MAAP.css} +0 -0
  229. /package/assets/{floatingactionbutton.E9HekT6S.css → floatingactionbutton.l0nvFiJU.css} +0 -0
  230. /package/assets/{heading.u4f8Mz94.css → heading.B-rdLVZD.css} +0 -0
  231. /package/assets/{input.BAkFKPW3.css → input.B5spSeMe.css} +0 -0
  232. /package/assets/{link.DDJj0D1U.css → link.Be5OF_8E.css} +0 -0
  233. /package/assets/{logo.CnW8alZU.css → logo.bVXt9m9R.css} +0 -0
  234. /package/assets/{numberindicator.BJ9vFpnd.css → numberindicator.BJnvB-K3.css} +0 -0
  235. /package/assets/{optioncheckbox.BZaWtRD7.css → optioncheckbox.DAffEKvY.css} +0 -0
  236. /package/assets/{radio.X-RTl_jo.css → radio.CGf7v0D_.css} +0 -0
  237. /package/assets/{skiptocontent.PTL3256m.css → skiptocontent.CTSDC_kG.css} +0 -0
  238. /package/assets/{spinner.2iWJWKyA.css → spinner.BJ5xwnYH.css} +0 -0
  239. /package/assets/{switch.gw6aa3kx.css → switch.Bc9KIyw9.css} +0 -0
  240. /package/assets/{systemfeedback.BPz5YlPC.css → systemfeedback.DoqgHZPH.css} +0 -0
  241. /package/assets/{TabPane.zywjfwo8.css → tabpane.D1LTb432.css} +0 -0
  242. /package/assets/{text.DjTG_qNb.css → text.BlRcxO8n.css} +0 -0
  243. /package/assets/{title.rosWPEG3.css → title.B0tsgJ-n.css} +0 -0
  244. /package/components/{Tabs/Tabs.utils.test.d.ts → Breadcrumb/Breadcrumb.test.d.ts} +0 -0
@@ -1,194 +0,0 @@
1
- "use client";
2
- import { j as t } from "./jsx-runtime.C115EyI4.js";
3
- import { c as r } from "./index.CvOaL64Y.js";
4
- import { useRef as C, useState as q, useEffect as W } from "react";
5
- import { u as F } from "./useBreakpoint.B8XxjSVJ.js";
6
- import { Asterisk as M } from "../asterisk.DpzETKdT.js";
7
- import { D as O } from "./Icon.BCmt_XBG.js";
8
- import { DSSystemFeedback as T } from "../systemfeedback.C3Pfxxpp.js";
9
- import { g as p } from "./helpers.CcqWV-wZ.js";
10
- import '../assets/Select.D4EXgIbz.css';const V = "ds-select_root_1ui0h_1", Z = "ds-select_hint_1ui0h_9", J = "ds-select_label_1ui0h_9", K = "ds-select_wrapper_1ui0h_13", Q = "ds-select_affix_1ui0h_19", U = "ds-select_affix--small_1ui0h_40", X = "ds-select_affix--disabled_1ui0h_53", Y = "ds-select_prefix_1ui0h_61", z = "ds-select_affix--readonly_1ui0h_64", G = "ds-select_suffix_1ui0h_74", ee = "ds-select_action-button_1ui0h_81", se = "ds-select_label--hidden_1ui0h_99", te = "ds-select_label--disabled_1ui0h_112", le = "ds-select_feedback_1ui0h_132", ce = "ds-select_select-wrapper_1ui0h_137", ae = "ds-select_select_1ui0h_137", ne = "ds-select_select--invalid_1ui0h_262", ie = "ds-select_select--small_1ui0h_269", oe = "ds-select_input--has-leading-icon_1ui0h_322", de = "ds-select_input--has-action-button_1ui0h_325", re = "ds-select_input--has-second-action-button_1ui0h_328", _e = "ds-select_select--has-leading-icon_1ui0h_331", ue = "ds-select_select--has-action-button_1ui0h_334", he = "ds-select_select--has-second-action-button_1ui0h_337", fe = "ds-select_select--has-affix_1ui0h_340", pe = "ds-select_select--is-ready_1ui0h_354", be = "ds-select_select--placeholder_1ui0h_371", me = "ds-select_chevron_1ui0h_410", xe = "ds-select_chevron--small_1ui0h_414", ve = "ds-select_chevron--disabled_1ui0h_417", e = {
11
- root: V,
12
- hint: Z,
13
- label: J,
14
- wrapper: K,
15
- affix: Q,
16
- "affix--small": "ds-select_affix--small_1ui0h_40",
17
- affixSmall: U,
18
- "affix--disabled": "ds-select_affix--disabled_1ui0h_53",
19
- affixDisabled: X,
20
- prefix: Y,
21
- "affix--readonly": "ds-select_affix--readonly_1ui0h_64",
22
- affixReadonly: z,
23
- suffix: G,
24
- "action-button": "ds-select_action-button_1ui0h_81",
25
- actionButton: ee,
26
- "label--hidden": "ds-select_label--hidden_1ui0h_99",
27
- labelHidden: se,
28
- "label--disabled": "ds-select_label--disabled_1ui0h_112",
29
- labelDisabled: te,
30
- feedback: le,
31
- "select-wrapper": "ds-select_select-wrapper_1ui0h_137",
32
- selectWrapper: ce,
33
- select: ae,
34
- "select--invalid": "ds-select_select--invalid_1ui0h_262",
35
- selectInvalid: ne,
36
- "select--small": "ds-select_select--small_1ui0h_269",
37
- selectSmall: ie,
38
- "input--has-leading-icon": "ds-select_input--has-leading-icon_1ui0h_322",
39
- inputHasLeadingIcon: oe,
40
- "input--has-action-button": "ds-select_input--has-action-button_1ui0h_325",
41
- inputHasActionButton: de,
42
- "input--has-second-action-button": "ds-select_input--has-second-action-button_1ui0h_328",
43
- inputHasSecondActionButton: re,
44
- "select--has-leading-icon": "ds-select_select--has-leading-icon_1ui0h_331",
45
- selectHasLeadingIcon: _e,
46
- "select--has-action-button": "ds-select_select--has-action-button_1ui0h_334",
47
- selectHasActionButton: ue,
48
- "select--has-second-action-button": "ds-select_select--has-second-action-button_1ui0h_337",
49
- selectHasSecondActionButton: he,
50
- "select--has-affix": "ds-select_select--has-affix_1ui0h_340",
51
- selectHasAffix: fe,
52
- "select--is-ready": "ds-select_select--is-ready_1ui0h_354",
53
- selectIsReady: pe,
54
- "select--placeholder": "ds-select_select--placeholder_1ui0h_371",
55
- selectPlaceholder: be,
56
- chevron: me,
57
- "chevron--small": "ds-select_chevron--small_1ui0h_414",
58
- chevronSmall: xe,
59
- "chevron--disabled": "ds-select_chevron--disabled_1ui0h_417",
60
- chevronDisabled: ve
61
- }, Ee = ["medium", "small"], Se = ({
62
- id: s,
63
- label: a,
64
- options: c
65
- }) => {
66
- if (!s)
67
- throw new Error(
68
- p(
69
- "DSSelect",
70
- 'A unique "id" prop is required. Please add a unique "id" prop to the DSSelect component.'
71
- )
72
- );
73
- if (!a)
74
- throw new Error(
75
- p(
76
- "DSSelect",
77
- `A label is always required for a11y reasons. Please add a descriptive "label" prop to the DSSelect component. If you don't want to display a label, set hideLabel={true}.`
78
- )
79
- );
80
- if (!c || c.length === 0)
81
- throw new Error(
82
- p(
83
- "DSSelect",
84
- 'Options are always required. Please add an "options" prop to the DSSelect component.'
85
- )
86
- );
87
- }, ge = (s, a, c) => s === "" || a !== void 0 && a !== "" ? !1 : !(c !== void 0 && c !== ""), Le = ({
88
- id: s,
89
- label: a,
90
- options: c,
91
- className: H,
92
- defaultValue: b,
93
- disabled: _ = !1,
94
- hideLabel: I = !1,
95
- hint: u,
96
- invalid: d = !1,
97
- placeholder: h = "Select",
98
- required: m = !1,
99
- size: x = "medium",
100
- systemFeedback: f,
101
- value: v,
102
- ...w
103
- }) => {
104
- process.env.NODE_ENV !== "production" && Se({
105
- id: s,
106
- label: a,
107
- options: c
108
- });
109
- const o = C(null), [j, A] = q(
110
- ge(h, b, v)
111
- );
112
- W(() => {
113
- if (!o.current) return;
114
- const n = () => {
115
- if (!o.current) return;
116
- const i = o.current.value;
117
- A(i === "");
118
- }, l = o.current;
119
- return l.addEventListener("change", n), () => {
120
- l.removeEventListener("change", n);
121
- };
122
- }, []);
123
- const B = F(I), S = `${s}-label`, g = `${s}-feedback`, D = `${s}-hint`, E = u ? ` ${D}` : "", L = (n) => [
124
- h && /* @__PURE__ */ t.jsx("option", { value: "", children: h }, `${s}-hidden-option-disabled-placeholder`),
125
- ...n.map((l) => {
126
- if ("options" in l) {
127
- const { label: i, options: $ } = l;
128
- return /* @__PURE__ */ t.jsx("optgroup", { label: i, children: $.map(y) }, i);
129
- } else
130
- return y(l);
131
- })
132
- ], y = ({ label: n, value: l, isDisabled: i }) => /* @__PURE__ */ t.jsx("option", { value: l, disabled: i, children: n }, l), N = r(e.root, H), P = r(e.select, {
133
- [e.selectSmall]: x === "small",
134
- [e.selectInvalid]: d,
135
- [e.selectPlaceholder]: j
136
- }), k = r(e.label, {
137
- // hide label only visually to keep them available for assistive technologies
138
- [e.labelHidden]: B,
139
- [e.labelDisabled]: _
140
- }), R = r(e.chevron, {
141
- [e.chevronSmall]: x === "small",
142
- [e.chevronDisabled]: _
143
- });
144
- return /* @__PURE__ */ t.jsxs("div", { className: N, children: [
145
- /* @__PURE__ */ t.jsxs("label", { className: k, id: S, htmlFor: s, children: [
146
- a,
147
- m && /* @__PURE__ */ t.jsx(M, {})
148
- ] }),
149
- u && /* @__PURE__ */ t.jsx("div", { className: e.hint, id: D, children: u }),
150
- d && f && /* @__PURE__ */ t.jsx(
151
- T,
152
- {
153
- className: e.feedback,
154
- message: f,
155
- type: "invalid",
156
- id: g,
157
- "aria-live": "assertive"
158
- }
159
- ),
160
- /* @__PURE__ */ t.jsxs("div", { className: e.selectWrapper, children: [
161
- /* @__PURE__ */ t.jsx(
162
- "select",
163
- {
164
- ...w,
165
- id: s,
166
- ref: o,
167
- className: P,
168
- "aria-labelledby": `${S}${E}`,
169
- "aria-describedby": d && f ? g : void 0,
170
- "aria-invalid": d,
171
- defaultValue: b,
172
- value: v,
173
- disabled: _,
174
- required: m,
175
- children: L(c)
176
- }
177
- ),
178
- /* @__PURE__ */ t.jsx(
179
- O,
180
- {
181
- name: "chevron-down",
182
- className: R,
183
- "aria-hidden": "true"
184
- }
185
- )
186
- ] })
187
- ] });
188
- };
189
- export {
190
- Le as D,
191
- Ee as S,
192
- ge as g,
193
- Se as v
194
- };
@@ -1,51 +0,0 @@
1
- "use client";
2
- import { j as u } from "./jsx-runtime.C115EyI4.js";
3
- import { c as i } from "./index.CvOaL64Y.js";
4
- import { useRef as f, useState as m, useEffect as p } from "react";
5
- import '../assets/TabPane.zywjfwo8.css';const T = "ds-tabs_tabpane_30tnb_1", d = {
6
- tabpane: T
7
- }, E = (e) => [
8
- "A",
9
- "BUTTON",
10
- "INPUT",
11
- "SELECT",
12
- "TEXTAREA",
13
- "AUDIO",
14
- "VIDEO"
15
- ].includes(e.tagName) || e.hasAttribute("contenteditable"), g = (e) => {
16
- const t = (a) => E(a) ? !0 : Array.from(a.children).some(
17
- (s) => t(s)
18
- );
19
- return t(e);
20
- }, A = (e, t) => `tabs-${e}-tabbutton-${t}`, h = (e, t, a) => `tabs-${e}-tabpanel-${t}-${a}`, x = ({
21
- id: e,
22
- content: t,
23
- index: a,
24
- selectedTabIndex: s,
25
- tabListId: r,
26
- className: o
27
- }) => {
28
- const n = f(null), [c, l] = m(!1);
29
- p(() => {
30
- n.current && l(g(n.current));
31
- }, [t]);
32
- const b = i(d.tabpane, o);
33
- return /* @__PURE__ */ u.jsx(
34
- "div",
35
- {
36
- id: h(r, e, a),
37
- role: "tabpanel",
38
- "aria-labelledby": A(r, e),
39
- hidden: s !== a,
40
- tabIndex: c ? void 0 : 0,
41
- ref: n,
42
- className: b,
43
- children: t
44
- }
45
- );
46
- };
47
- export {
48
- x as T,
49
- h as a,
50
- A as g
51
- };
@@ -1,270 +0,0 @@
1
- "use client";
2
- import { j as l } from "./jsx-runtime.C115EyI4.js";
3
- import { c as T } from "./index.CvOaL64Y.js";
4
- import { useState as v, useRef as p, useEffect as tt } from "react";
5
- import { h as R } from "./has-window.ut_-aShB.js";
6
- import { g as N, r as et } from "./helpers.CcqWV-wZ.js";
7
- import { u as M } from "./useIsomorphicLayoutEffect.CnJ9AMFS.js";
8
- import { DSButton as H } from "../button.BfcWQZhx.js";
9
- import { D as rt } from "./Icon.BCmt_XBG.js";
10
- import { NumberIndicator as st } from "../numberindicator.UU7FSouT.js";
11
- import { g as z, a as O, T as nt } from "./TabPane.CYuUi0oL.js";
12
- import '../assets/Tabs.DUqlqP6R.css';const y = () => {
13
- if (R) {
14
- const o = getComputedStyle(document.documentElement).getPropertyValue("--ds-animation-duration").trim();
15
- return o === "0s" || o === "0ms";
16
- } else
17
- return !0;
18
- }, ot = "ds-tabs_tabs-wrapper_infm4_1", ct = "ds-tabs_scroll-wrapper_infm4_6", at = "ds-tabs_scroller_infm4_17", lt = "ds-tabs_scroller--centered_infm4_23", it = "ds-tabs_tab_infm4_1", ut = "ds-tabs_scroll-button_infm4_98", dt = "ds-tabs_scroll-button--hidden_infm4_103", ft = "ds-tabs_scroll-button--right_infm4_107", mt = "ds-tabs_indicator_infm4_119", a = {
19
- "tabs-wrapper": "ds-tabs_tabs-wrapper_infm4_1",
20
- tabsWrapper: ot,
21
- "scroll-wrapper": "ds-tabs_scroll-wrapper_infm4_6",
22
- scrollWrapper: ct,
23
- scroller: at,
24
- "scroller--centered": "ds-tabs_scroller--centered_infm4_23",
25
- scrollerCentered: lt,
26
- tab: it,
27
- "scroll-button": "ds-tabs_scroll-button_infm4_98",
28
- scrollButton: ut,
29
- "scroll-button--hidden": "ds-tabs_scroll-button--hidden_infm4_103",
30
- scrollButtonHidden: dt,
31
- "scroll-button--right": "ds-tabs_scroll-button--right_infm4_107",
32
- scrollButtonRight: ft,
33
- indicator: mt
34
- }, St = ["left", "center"], Bt = ["prev", "next"], m = (o) => R && (o == null ? void 0 : o.getBoundingClientRect()) || DOMRect.fromRect({ x: 0, y: 0, width: 0, height: 0 }), h = 48, pt = ({ id: o, tabs: f }) => {
35
- if (!o)
36
- throw new Error(
37
- N(
38
- "DSTabs",
39
- 'A unique "id" prop is required. Please add a unique "id" prop to the DSTabs component.'
40
- )
41
- );
42
- if (!f)
43
- throw new Error(
44
- N("DSTabs", et("tabs", "DSTabs"))
45
- );
46
- }, yt = ({
47
- id: o,
48
- tabs: f,
49
- alignment: E = "left",
50
- className: q,
51
- classNameTabPane: $,
52
- defaultSelectedTabIndex: L = 0,
53
- onTabChange: I,
54
- ...X
55
- }) => {
56
- process.env.NODE_ENV !== "production" && pt({
57
- id: o,
58
- tabs: f
59
- });
60
- const [i, G] = v(
61
- L
62
- ), [C, b] = v(
63
- L
64
- ), [K, V] = v(!1), [F, Q] = v(!1), _ = p([]), g = p(null), u = p(null), d = p(null), w = p(!1), j = p(i);
65
- M(() => {
66
- var t;
67
- if (R) {
68
- const r = [
69
- "16px 'STIHL Contraface Digital Text Regular'",
70
- "14px 'STIHL Contraface Digital Text Demi'",
71
- "16px 'STIHL Contraface Digital Text Bold'"
72
- ];
73
- Promise.all(r.map((c) => document.fonts.load(c))).then(() => {
74
- x(i), D("next", i, "instant"), k(), w.current = !0;
75
- }).catch((c) => {
76
- throw new Error(
77
- N(
78
- "DSTabs",
79
- `The component requires the fonts to be loaded: ${c}`
80
- )
81
- );
82
- });
83
- const e = () => {
84
- !w.current || !d.current || (s.matches ? d.current.style.transitionDuration = "0s" : d.current.style.transitionDuration = "");
85
- }, s = window.matchMedia("(prefers-reduced-motion: reduce)");
86
- s.addEventListener("change", e);
87
- const n = () => {
88
- k(), J();
89
- };
90
- return window.addEventListener("resize", n), (t = u.current) == null || t.addEventListener("scroll", n), () => {
91
- var c;
92
- s.removeEventListener("change", e), window.removeEventListener("resize", n), (c = u.current) == null || c.removeEventListener("scroll", n);
93
- };
94
- }
95
- }, [f, E]), M(() => {
96
- w.current && x(i), j.current = i;
97
- }, [i]), tt(() => {
98
- var t;
99
- w.current && ((t = _.current[C]) == null || t.focus());
100
- }, [C]);
101
- const W = (t) => {
102
- const r = m(u.current), e = m(_.current[t]);
103
- let s = "next";
104
- e.left - h < r.left ? s = "prev" : e.right + h > r.right ? s = "next" : s = i < t ? "next" : "prev", G(t), b(t), D(s, t), I && I(t);
105
- }, k = () => {
106
- if (u.current && g.current) {
107
- const t = m(u.current), r = m(g.current);
108
- V(r.left < t.left), Q(r.right > t.right + 4);
109
- }
110
- }, A = (t = 0) => {
111
- R && d.current && !y() && !window.matchMedia("(prefers-reduced-motion: reduce)").matches && setTimeout(() => {
112
- d.current && (d.current.style.transitionDuration = "250ms");
113
- }, t);
114
- }, J = () => {
115
- d.current && (d.current.style.transitionDuration = "0s", x(j.current), A());
116
- }, x = (t) => {
117
- const r = d.current, e = m(_.current[t]), s = m(g.current), n = e.left - s.left;
118
- r && (w.current ? (r.style.width = `${e.width}px`, r.style.transform = `translateX(${n}px)`) : (r.style.transitionDuration = "0s", r.style.transform = `translateX(${n}px)`, r.style.width = `${e.width}px`, A(50)));
119
- }, U = (t, r) => {
120
- let e;
121
- switch (t.key) {
122
- case "ArrowLeft":
123
- e = (r > 0 ? r : f.length) - 1, b(e);
124
- break;
125
- case "ArrowRight":
126
- e = (r + 1) % f.length, b(e);
127
- break;
128
- case "Home":
129
- e = 0, b(e);
130
- break;
131
- case "End":
132
- e = f.length - 1, b(e);
133
- break;
134
- case "Enter":
135
- case " ":
136
- W(r);
137
- return;
138
- default:
139
- return;
140
- }
141
- e !== void 0 && setTimeout(
142
- () => D(
143
- t.key === "ArrowRight" ? "next" : "prev",
144
- e
145
- ),
146
- 0
147
- ), t.preventDefault();
148
- }, D = (t, r, e = "smooth") => {
149
- const s = _.current[r], n = u.current, c = m(s), S = m(n);
150
- let B;
151
- if (!(!s || !n)) {
152
- if (t === "prev") {
153
- if (c.left - h > S.left)
154
- return;
155
- B = s.offsetLeft - h;
156
- } else {
157
- if (c.right + h < S.right)
158
- return;
159
- B = s.offsetLeft + s.offsetWidth - S.width + h;
160
- }
161
- n.scrollTo({
162
- left: B,
163
- behavior: y() ? "instant" : e
164
- });
165
- }
166
- }, P = (t) => {
167
- var e;
168
- const r = Y(t);
169
- (e = u.current) == null || e.scrollTo({
170
- left: r,
171
- behavior: y() ? "instant" : "smooth"
172
- });
173
- }, Y = (t) => {
174
- if (!g.current || !u.current)
175
- return 0;
176
- const { scrollLeft: r, offsetWidth: e } = u.current, s = Math.round(e * 0.2);
177
- return t === "next" ? r + s : r - s;
178
- }, Z = T(a.scroller, {
179
- [a.scrollerCentered]: E === "center"
180
- });
181
- return /* @__PURE__ */ l.jsxs(
182
- "div",
183
- {
184
- className: T(a.tabs, q),
185
- id: o,
186
- ...X,
187
- children: [
188
- /* @__PURE__ */ l.jsxs("div", { className: a.tabsWrapper, children: [
189
- /* @__PURE__ */ l.jsxs("div", { className: a.scrollWrapper, ref: u, children: [
190
- /* @__PURE__ */ l.jsx("div", { role: "tablist", className: Z, ref: g, children: f.map(
191
- ({ id: t, label: r, iconName: e, numberIndicatorValue: s }, n) => /* @__PURE__ */ l.jsxs(
192
- "button",
193
- {
194
- id: z(o, t),
195
- role: "tab",
196
- "aria-selected": i === n,
197
- "aria-controls": O(o, t, n),
198
- tabIndex: i === n ? 0 : -1,
199
- className: a.tab,
200
- ref: (c) => {
201
- _.current[n] = c;
202
- },
203
- onClick: () => W(n),
204
- onKeyDown: (c) => U(c, n),
205
- children: [
206
- e && /* @__PURE__ */ l.jsx(rt, { name: e, "aria-hidden": "true" }),
207
- r,
208
- s && /* @__PURE__ */ l.jsx(st, { label: s })
209
- ]
210
- },
211
- z(o, t)
212
- )
213
- ) }),
214
- /* @__PURE__ */ l.jsx("span", { className: a.indicator, ref: d })
215
- ] }),
216
- /* @__PURE__ */ l.jsx(
217
- H,
218
- {
219
- variant: "filled",
220
- className: T(a.scrollButton, {
221
- [a.scrollButtonHidden]: !K
222
- }),
223
- hideLabel: !0,
224
- iconName: "chevron-left",
225
- tabIndex: -1,
226
- size: "small",
227
- onClick: () => P("prev"),
228
- children: "Left"
229
- }
230
- ),
231
- /* @__PURE__ */ l.jsx(
232
- H,
233
- {
234
- variant: "filled",
235
- className: T(a.scrollButton, a.scrollButtonRight, {
236
- [a.scrollButtonHidden]: !F
237
- }),
238
- hideLabel: !0,
239
- iconName: "chevron-right",
240
- tabIndex: -1,
241
- size: "small",
242
- onClick: () => P("next"),
243
- children: "Right"
244
- }
245
- )
246
- ] }),
247
- f.map(({ id: t, content: r }, e) => /* @__PURE__ */ l.jsx(
248
- nt,
249
- {
250
- id: t,
251
- content: r,
252
- index: e,
253
- selectedTabIndex: i,
254
- tabListId: o,
255
- className: $
256
- },
257
- O(o, t, e)
258
- ))
259
- ]
260
- }
261
- );
262
- };
263
- export {
264
- yt as D,
265
- h as S,
266
- St as T,
267
- Bt as a,
268
- m as g,
269
- pt as v
270
- };