@orangesk/orange-design-system 3.4.0 → 3.6.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 (446) hide show
  1. package/build/components/Carousel/style.css +1 -1
  2. package/build/components/Carousel/style.css.map +1 -1
  3. package/build/components/Footer/style.css +1 -1
  4. package/build/components/Footer/style.css.map +1 -1
  5. package/build/components/Icon/style.css +1 -1
  6. package/build/components/Icon/style.css.map +1 -1
  7. package/build/components/Megamenu/style.css +1 -1
  8. package/build/components/Megamenu/style.css.map +1 -1
  9. package/build/components/PromoBanner/style.css +1 -1
  10. package/build/components/PromoBanner/style.css.map +1 -1
  11. package/build/components/StarRating/style.css +1 -1
  12. package/build/components/StarRating/style.css.map +1 -1
  13. package/build/components/Table/style.css +1 -1
  14. package/build/components/Table/style.css.map +1 -1
  15. package/build/components/Tooltip/style.css +1 -1
  16. package/build/components/Tooltip/style.css.map +1 -1
  17. package/build/components/index.js +1 -1
  18. package/build/components/index.js.map +1 -1
  19. package/build/components/types/index.d.ts +11 -3
  20. package/build/lib/base.css.map +1 -1
  21. package/build/lib/components.css +1 -1
  22. package/build/lib/components.css.map +1 -1
  23. package/build/lib/footer.css +1 -1
  24. package/build/lib/footer.css.map +1 -1
  25. package/build/lib/footer.js +1 -1
  26. package/build/lib/footer.js.map +1 -1
  27. package/build/lib/megamenu.css +1 -1
  28. package/build/lib/megamenu.css.map +1 -1
  29. package/build/lib/megamenu.js +1 -1
  30. package/build/lib/megamenu.js.map +1 -1
  31. package/build/lib/scripts.js +1 -1
  32. package/build/lib/scripts.js.map +1 -1
  33. package/build/lib/style.css +1 -1
  34. package/build/lib/style.css.map +1 -1
  35. package/package.json +45 -46
  36. package/src/assets/icons/age-rating-3.svg +0 -0
  37. package/src/assets/icons/assistent.svg +0 -0
  38. package/src/assets/icons/boxes.svg +0 -0
  39. package/src/assets/icons/business-lounge.svg +0 -0
  40. package/src/assets/icons/calendar-30.svg +0 -0
  41. package/src/assets/icons/calendar-month.svg +0 -0
  42. package/src/assets/icons/communication-settings.svg +0 -0
  43. package/src/assets/icons/cookies.svg +0 -0
  44. package/src/assets/icons/currency-euro.svg +0 -0
  45. package/src/assets/icons/data-services.svg +0 -0
  46. package/src/assets/icons/device-mobile-package.svg +0 -0
  47. package/src/assets/icons/futher-education.svg +0 -0
  48. package/src/assets/icons/modifier-delete.svg +0 -0
  49. package/src/assets/icons/orange-experts-orange-business-consultant.svg +0 -0
  50. package/src/assets/icons/orange-messenger.svg +0 -0
  51. package/src/assets/icons/orange-reflect.svg +0 -0
  52. package/src/assets/icons/personal-smartphone-trainer.svg +0 -0
  53. package/src/assets/icons/unlimited-calls.svg +0 -0
  54. package/src/components/Accordion/Accordion.tsx +2 -1
  55. package/src/components/Accordion/AccordionItem.tsx +2 -1
  56. package/src/components/Alert/Alert.tsx +2 -1
  57. package/src/components/Avatar/Avatar.tsx +2 -1
  58. package/src/components/BlockAction/BlockAction.tsx +2 -1
  59. package/src/components/BlockAction/BlockActionControl.tsx +2 -1
  60. package/src/components/BlockAction/BlockActionIndicator.tsx +2 -1
  61. package/src/components/BlockAction/CloneElementWithClassName.tsx +2 -1
  62. package/src/components/BlockAction/Context.tsx +2 -1
  63. package/src/components/BlockAction/index.tsx +2 -1
  64. package/src/components/Button/IconButton.tsx +2 -1
  65. package/src/components/Button/index.tsx +2 -1
  66. package/src/components/Carousel/Carousel.static.ts +25 -9
  67. package/src/components/Carousel/Carousel.tsx +7 -1
  68. package/src/components/Carousel/CarouselItem.tsx +2 -1
  69. package/src/components/Carousel/constants.ts +1 -0
  70. package/src/components/Carousel/styles/style.scss +2 -1
  71. package/src/components/Carousel/tests/Carousel.static.test.jsx +85 -0
  72. package/src/components/Carousel/tests/Carousel.unit.test.jsx +9 -0
  73. package/src/components/CarouselHero/CarouselHero.tsx +2 -1
  74. package/src/components/CarouselHero/CarouselHeroItem.tsx +2 -1
  75. package/src/components/CarouselPromotions/CarouselPromotions.static.ts +1 -1
  76. package/src/components/CarouselPromotions/CarouselPromotions.tsx +2 -1
  77. package/src/components/CarouselPromotions/CarouselPromotionsItem.tsx +2 -1
  78. package/src/components/CarouselPromotions/styles/mixins.scss +2 -3
  79. package/src/components/Countdown/Countdown.react.ts +2 -2
  80. package/src/components/Countdown/Countdown.static.ts +5 -3
  81. package/src/components/Countdown/Countdown.tsx +2 -2
  82. package/src/components/Countdown/CountdownTag.static.ts +5 -3
  83. package/src/components/Countdown/CountdownTag.tsx +1 -1
  84. package/src/components/Divider/Divider.tsx +2 -1
  85. package/src/components/Dropdown/Dropdown.static.ts +2 -1
  86. package/src/components/Dropdown/Dropdown.tsx +5 -3
  87. package/src/components/Dropdown/DropdownItem.tsx +2 -1
  88. package/src/components/Dropdown/DropdownToggleButton.tsx +1 -1
  89. package/src/components/Dropdown/constants.ts +1 -0
  90. package/src/components/FeatureAccordion/FeatureAccordion.tsx +2 -1
  91. package/src/components/FeatureAccordion/FeatureAccordionItem.tsx +2 -1
  92. package/src/components/Footer/styles/style.scss +2 -0
  93. package/src/components/Forms/Autocomplete/Autocomplete.static.ts +2 -2
  94. package/src/components/Forms/Field/Field.tsx +2 -1
  95. package/src/components/Forms/Field/Label.tsx +2 -1
  96. package/src/components/Forms/Fieldset/Fieldset.tsx +2 -1
  97. package/src/components/Forms/File/File.tsx +2 -1
  98. package/src/components/Forms/Group/Group.tsx +2 -1
  99. package/src/components/Forms/Group/Item.tsx +2 -1
  100. package/src/components/Forms/RangeSlider/RangeSlider.static.ts +4 -2
  101. package/src/components/Forms/Select/index.tsx +2 -1
  102. package/src/components/Gauge/Gauge.tsx +2 -1
  103. package/src/components/Icon/Pictogram.tsx +2 -1
  104. package/src/components/Icon/SpritePathContext.tsx +2 -1
  105. package/src/components/Icon/styles/config.scss +17 -2
  106. package/src/components/Icon/styles/export/size.js +4 -3
  107. package/src/components/Icon/styles/style.scss +9 -0
  108. package/src/components/Icon/tests/Icon.styles.unit.test.jsx +12 -0
  109. package/src/components/Loader/Loader.tsx +2 -1
  110. package/src/components/Loader/LoaderFullscreen.tsx +2 -1
  111. package/src/components/Megamenu/Megamenu.tsx +17 -10
  112. package/src/components/Megamenu/MegamenuBlog.tsx +1 -1
  113. package/src/components/Megamenu/MyOrangeMobilePanel.tsx +24 -11
  114. package/src/components/Megamenu/styles/mixins.scss +6 -1
  115. package/src/components/Megamenu/tests/Megamenu.unit.test.jsx +33 -2
  116. package/src/components/Modal/ModalCloseButton.tsx +2 -2
  117. package/src/components/Pagination/Separator.tsx +1 -1
  118. package/src/components/Pill/Pill.tsx +2 -1
  119. package/src/components/PromoBanner/styles/mixins.scss +10 -0
  120. package/src/components/PromoBanner/styles/style.scss +5 -0
  121. package/src/components/PromotionCard/PromotionCard.tsx +2 -2
  122. package/src/components/SkipLink/SkipLink.tsx +2 -1
  123. package/src/components/StarRating/StarRating.tsx +5 -1
  124. package/src/components/StarRating/styles/style.scss +9 -2
  125. package/src/components/StarRating/tests/StarRating.unit.test.jsx +7 -1
  126. package/src/components/Table/Footer.tsx +1 -1
  127. package/src/components/Table/Header.tsx +1 -1
  128. package/src/components/Table/Row.tsx +1 -1
  129. package/src/components/Table/Rows.tsx +1 -1
  130. package/src/components/Table/Table.tsx +1 -1
  131. package/src/components/Table/TableContext.ts +1 -1
  132. package/src/components/Table/styles/config.scss +1 -0
  133. package/src/components/Table/styles/style.scss +6 -0
  134. package/src/components/Tag/Tag.tsx +4 -3
  135. package/src/components/Tag/TagButton.tsx +1 -1
  136. package/src/components/Tag/constants.ts +1 -0
  137. package/src/components/Tag/styles/mixins.scss +2 -2
  138. package/src/components/Tile/Tile.tsx +3 -2
  139. package/src/components/Tooltip/InfoTooltip.tsx +2 -1
  140. package/src/components/Tooltip/Tooltip.static.ts +2 -2
  141. package/src/components/Tooltip/styles/style.scss +5 -0
  142. package/src/styles/tokens/space.scss +3 -1
  143. package/src/styles/tools/generate.scss +4 -2
  144. package/src/styles/utilities/color.scss +7 -6
  145. package/build/components/tsconfig.tsbuildinfo +0 -1
  146. package/build/components/types/src/components/Accordion/Accordion.d.ts +0 -19
  147. package/build/components/types/src/components/Accordion/Accordion.static.d.ts +0 -20
  148. package/build/components/types/src/components/Accordion/AccordionHeader.d.ts +0 -18
  149. package/build/components/types/src/components/Accordion/AccordionItem.d.ts +0 -20
  150. package/build/components/types/src/components/Accordion/HeadingContext.d.ts +0 -2
  151. package/build/components/types/src/components/Accordion/index.d.ts +0 -2
  152. package/build/components/types/src/components/Accordion/tests/data.d.ts +0 -5
  153. package/build/components/types/src/components/Alert/Alert.d.ts +0 -23
  154. package/build/components/types/src/components/Alert/data.d.ts +0 -7
  155. package/build/components/types/src/components/Alert/index.d.ts +0 -1
  156. package/build/components/types/src/components/AnchorNavigation/AnchorNavigation.d.ts +0 -16
  157. package/build/components/types/src/components/AnchorNavigation/AnchorNavigation.static.d.ts +0 -102
  158. package/build/components/types/src/components/AnchorNavigation/index.d.ts +0 -1
  159. package/build/components/types/src/components/Avatar/Avatar.d.ts +0 -7
  160. package/build/components/types/src/components/Avatar/index.d.ts +0 -2
  161. package/build/components/types/src/components/Bar/Bar.d.ts +0 -22
  162. package/build/components/types/src/components/Bar/BarBreak.d.ts +0 -12
  163. package/build/components/types/src/components/Bar/BarItem.d.ts +0 -16
  164. package/build/components/types/src/components/Bar/index.d.ts +0 -3
  165. package/build/components/types/src/components/BlockAction/BlockAction.d.ts +0 -11
  166. package/build/components/types/src/components/BlockAction/BlockAction.static.d.ts +0 -19
  167. package/build/components/types/src/components/BlockAction/BlockActionControl.d.ts +0 -9
  168. package/build/components/types/src/components/BlockAction/BlockActionIndicator.d.ts +0 -9
  169. package/build/components/types/src/components/BlockAction/CloneElementWithClassName.d.ts +0 -8
  170. package/build/components/types/src/components/BlockAction/Context.d.ts +0 -15
  171. package/build/components/types/src/components/BlockAction/index.d.ts +0 -13
  172. package/build/components/types/src/components/BodyBanner/BodyBanner.d.ts +0 -20
  173. package/build/components/types/src/components/BodyBanner/index.d.ts +0 -1
  174. package/build/components/types/src/components/Breadcrumbs/BreadcrumbItem.d.ts +0 -15
  175. package/build/components/types/src/components/Breadcrumbs/Breadcrumbs.d.ts +0 -18
  176. package/build/components/types/src/components/Breadcrumbs/index.d.ts +0 -1
  177. package/build/components/types/src/components/Button/Button.d.ts +0 -25
  178. package/build/components/types/src/components/Button/IconButton.d.ts +0 -18
  179. package/build/components/types/src/components/Button/index.d.ts +0 -15
  180. package/build/components/types/src/components/Buttons/Buttons.d.ts +0 -8
  181. package/build/components/types/src/components/Buttons/index.d.ts +0 -1
  182. package/build/components/types/src/components/Card/Card.d.ts +0 -11
  183. package/build/components/types/src/components/Card/CardProductHeader.d.ts +0 -9
  184. package/build/components/types/src/components/Card/CardSection.d.ts +0 -14
  185. package/build/components/types/src/components/Card/index.d.ts +0 -4
  186. package/build/components/types/src/components/Card/tests/data.d.ts +0 -5
  187. package/build/components/types/src/components/Carousel/Carousel.d.ts +0 -21
  188. package/build/components/types/src/components/Carousel/Carousel.static.d.ts +0 -100
  189. package/build/components/types/src/components/Carousel/CarouselItem.d.ts +0 -7
  190. package/build/components/types/src/components/Carousel/constants.d.ts +0 -26
  191. package/build/components/types/src/components/Carousel/index.d.ts +0 -2
  192. package/build/components/types/src/components/CarouselHero/CarouselHero.d.ts +0 -19
  193. package/build/components/types/src/components/CarouselHero/CarouselHero.static.d.ts +0 -50
  194. package/build/components/types/src/components/CarouselHero/CarouselHeroItem.d.ts +0 -8
  195. package/build/components/types/src/components/CarouselHero/constants.d.ts +0 -33
  196. package/build/components/types/src/components/CarouselHero/index.d.ts +0 -2
  197. package/build/components/types/src/components/CarouselPromotions/CarouselPromotions.d.ts +0 -9
  198. package/build/components/types/src/components/CarouselPromotions/CarouselPromotions.static.d.ts +0 -36
  199. package/build/components/types/src/components/CarouselPromotions/CarouselPromotionsItem.d.ts +0 -12
  200. package/build/components/types/src/components/CarouselPromotions/constants.d.ts +0 -20
  201. package/build/components/types/src/components/CarouselPromotions/index.d.ts +0 -2
  202. package/build/components/types/src/components/CartTable/CartTable.d.ts +0 -13
  203. package/build/components/types/src/components/CartTable/FooterNameColumn.d.ts +0 -7
  204. package/build/components/types/src/components/CartTable/FooterPriceColumn.d.ts +0 -9
  205. package/build/components/types/src/components/CartTable/Price.d.ts +0 -10
  206. package/build/components/types/src/components/CartTable/data.d.ts +0 -33
  207. package/build/components/types/src/components/CartTable/generateFooter.d.ts +0 -22
  208. package/build/components/types/src/components/CartTable/generateRow.d.ts +0 -21
  209. package/build/components/types/src/components/CartTable/generateTotal.d.ts +0 -45
  210. package/build/components/types/src/components/CartTable/index.d.ts +0 -1
  211. package/build/components/types/src/components/Code/Code.d.ts +0 -16
  212. package/build/components/types/src/components/Code/index.d.ts +0 -6
  213. package/build/components/types/src/components/Container/Container.d.ts +0 -3
  214. package/build/components/types/src/components/Container/index.d.ts +0 -1
  215. package/build/components/types/src/components/Controls/Controls.d.ts +0 -15
  216. package/build/components/types/src/components/Controls/index.d.ts +0 -1
  217. package/build/components/types/src/components/Countdown/Countdown.d.ts +0 -10
  218. package/build/components/types/src/components/Countdown/Countdown.react.d.ts +0 -8
  219. package/build/components/types/src/components/Countdown/Countdown.shared.d.ts +0 -54
  220. package/build/components/types/src/components/Countdown/Countdown.static.d.ts +0 -21
  221. package/build/components/types/src/components/Countdown/CountdownTag.d.ts +0 -9
  222. package/build/components/types/src/components/Countdown/CountdownTag.static.d.ts +0 -16
  223. package/build/components/types/src/components/Countdown/constants.d.ts +0 -28
  224. package/build/components/types/src/components/Countdown/index.d.ts +0 -3
  225. package/build/components/types/src/components/Cover/Cover.d.ts +0 -42
  226. package/build/components/types/src/components/Cover/index.d.ts +0 -2
  227. package/build/components/types/src/components/Divider/Divider.d.ts +0 -9
  228. package/build/components/types/src/components/Divider/index.d.ts +0 -1
  229. package/build/components/types/src/components/DocumentationSidebar/DocumentationSidebar.d.ts +0 -18
  230. package/build/components/types/src/components/DocumentationSidebar/index.d.ts +0 -3
  231. package/build/components/types/src/components/Dropdown/Dropdown.d.ts +0 -22
  232. package/build/components/types/src/components/Dropdown/Dropdown.static.d.ts +0 -28
  233. package/build/components/types/src/components/Dropdown/DropdownDivider.d.ts +0 -3
  234. package/build/components/types/src/components/Dropdown/DropdownItem.d.ts +0 -9
  235. package/build/components/types/src/components/Dropdown/DropdownToggleButton.d.ts +0 -7
  236. package/build/components/types/src/components/Dropdown/index.d.ts +0 -4
  237. package/build/components/types/src/components/Expander/Expander.d.ts +0 -25
  238. package/build/components/types/src/components/Expander/Expander.static.d.ts +0 -14
  239. package/build/components/types/src/components/Expander/index.d.ts +0 -1
  240. package/build/components/types/src/components/FeatureAccordion/FeatureAccordion.d.ts +0 -25
  241. package/build/components/types/src/components/FeatureAccordion/FeatureAccordion.static.d.ts +0 -19
  242. package/build/components/types/src/components/FeatureAccordion/FeatureAccordionItem.d.ts +0 -12
  243. package/build/components/types/src/components/FeatureAccordion/index.d.ts +0 -2
  244. package/build/components/types/src/components/Footer/Footer.d.ts +0 -8
  245. package/build/components/types/src/components/Footer/Footer.static.d.ts +0 -21
  246. package/build/components/types/src/components/Footer/PlanObnovy.d.ts +0 -1
  247. package/build/components/types/src/components/Footer/constants.d.ts +0 -20
  248. package/build/components/types/src/components/Footer/data.d.ts +0 -26
  249. package/build/components/types/src/components/Footer/index.d.ts +0 -1
  250. package/build/components/types/src/components/Footer/static.d.ts +0 -21
  251. package/build/components/types/src/components/Forms/Autocomplete/Autocomplete.d.ts +0 -19
  252. package/build/components/types/src/components/Forms/Autocomplete/Autocomplete.static.d.ts +0 -33
  253. package/build/components/types/src/components/Forms/Autocomplete/index.d.ts +0 -1
  254. package/build/components/types/src/components/Forms/Checkbox/Checkbox.d.ts +0 -21
  255. package/build/components/types/src/components/Forms/Checkbox/index.d.ts +0 -1
  256. package/build/components/types/src/components/Forms/DatePicker/DatePicker.d.ts +0 -84
  257. package/build/components/types/src/components/Forms/DatePicker/DatePicker.static.d.ts +0 -69
  258. package/build/components/types/src/components/Forms/DatePicker/index.d.ts +0 -1
  259. package/build/components/types/src/components/Forms/Field/Control.d.ts +0 -6
  260. package/build/components/types/src/components/Forms/Field/Description.d.ts +0 -7
  261. package/build/components/types/src/components/Forms/Field/Field.d.ts +0 -17
  262. package/build/components/types/src/components/Forms/Field/FieldContext.d.ts +0 -18
  263. package/build/components/types/src/components/Forms/Field/Label.d.ts +0 -11
  264. package/build/components/types/src/components/Forms/Field/Messages.d.ts +0 -12
  265. package/build/components/types/src/components/Forms/Field/Tooltip.d.ts +0 -11
  266. package/build/components/types/src/components/Forms/Field/index.d.ts +0 -1
  267. package/build/components/types/src/components/Forms/Field/utils.d.ts +0 -16
  268. package/build/components/types/src/components/Forms/Fieldset/Fieldset.d.ts +0 -16
  269. package/build/components/types/src/components/Forms/Fieldset/FieldsetContext.d.ts +0 -7
  270. package/build/components/types/src/components/Forms/Fieldset/docsData.d.ts +0 -59
  271. package/build/components/types/src/components/Forms/Fieldset/index.d.ts +0 -1
  272. package/build/components/types/src/components/Forms/File/File.d.ts +0 -17
  273. package/build/components/types/src/components/Forms/File/File.static.d.ts +0 -27
  274. package/build/components/types/src/components/Forms/File/index.d.ts +0 -1
  275. package/build/components/types/src/components/Forms/Group/Group.d.ts +0 -16
  276. package/build/components/types/src/components/Forms/Group/Item.d.ts +0 -8
  277. package/build/components/types/src/components/Forms/Group/index.d.ts +0 -1
  278. package/build/components/types/src/components/Forms/Hint/Hint.d.ts +0 -7
  279. package/build/components/types/src/components/Forms/Hint/index.d.ts +0 -1
  280. package/build/components/types/src/components/Forms/InputStepper/InputStepper.d.ts +0 -21
  281. package/build/components/types/src/components/Forms/InputStepper/InputStepper.static.d.ts +0 -24
  282. package/build/components/types/src/components/Forms/InputStepper/index.d.ts +0 -1
  283. package/build/components/types/src/components/Forms/Label/Label.d.ts +0 -8
  284. package/build/components/types/src/components/Forms/Label/index.d.ts +0 -1
  285. package/build/components/types/src/components/Forms/Message/Message.d.ts +0 -12
  286. package/build/components/types/src/components/Forms/Message/index.d.ts +0 -1
  287. package/build/components/types/src/components/Forms/Radio/Radio.d.ts +0 -21
  288. package/build/components/types/src/components/Forms/Radio/index.d.ts +0 -1
  289. package/build/components/types/src/components/Forms/RangeSlider/RangeSlider.d.ts +0 -40
  290. package/build/components/types/src/components/Forms/RangeSlider/RangeSlider.static.d.ts +0 -24
  291. package/build/components/types/src/components/Forms/RangeSlider/data.d.ts +0 -49
  292. package/build/components/types/src/components/Forms/RangeSlider/index.d.ts +0 -1
  293. package/build/components/types/src/components/Forms/Select/Select.d.ts +0 -33
  294. package/build/components/types/src/components/Forms/Select/index.d.ts +0 -3
  295. package/build/components/types/src/components/Forms/TextArea/TextArea.d.ts +0 -29
  296. package/build/components/types/src/components/Forms/TextArea/index.d.ts +0 -1
  297. package/build/components/types/src/components/Forms/TextInput/TextInput.d.ts +0 -35
  298. package/build/components/types/src/components/Forms/TextInput/index.d.ts +0 -1
  299. package/build/components/types/src/components/Forms/index.d.ts +0 -16
  300. package/build/components/types/src/components/Gauge/Gauge.d.ts +0 -11
  301. package/build/components/types/src/components/Gauge/GaugeMaker.d.ts +0 -3
  302. package/build/components/types/src/components/Gauge/index.d.ts +0 -1
  303. package/build/components/types/src/components/Grid/Grid.d.ts +0 -14
  304. package/build/components/types/src/components/Grid/GridCol.d.ts +0 -12
  305. package/build/components/types/src/components/Grid/index.d.ts +0 -2
  306. package/build/components/types/src/components/Hero/Hero.d.ts +0 -49
  307. package/build/components/types/src/components/Hero/index.d.ts +0 -1
  308. package/build/components/types/src/components/Icon/Icon.d.ts +0 -30
  309. package/build/components/types/src/components/Icon/IconSearch.d.ts +0 -6
  310. package/build/components/types/src/components/Icon/IconSearchWrapper.d.ts +0 -1
  311. package/build/components/types/src/components/Icon/Pictogram.d.ts +0 -22
  312. package/build/components/types/src/components/Icon/PictogramSearch.d.ts +0 -6
  313. package/build/components/types/src/components/Icon/PictogramSearchWrapper.d.ts +0 -1
  314. package/build/components/types/src/components/Icon/SpritePathContext.d.ts +0 -8
  315. package/build/components/types/src/components/Icon/iconSearchTags.d.ts +0 -427
  316. package/build/components/types/src/components/Icon/iconUtils.d.ts +0 -2
  317. package/build/components/types/src/components/Icon/index.d.ts +0 -3
  318. package/build/components/types/src/components/IconList/IconList.d.ts +0 -13
  319. package/build/components/types/src/components/IconList/Item.d.ts +0 -9
  320. package/build/components/types/src/components/IconList/index.d.ts +0 -2
  321. package/build/components/types/src/components/Image/Image.d.ts +0 -20
  322. package/build/components/types/src/components/Image/index.d.ts +0 -1
  323. package/build/components/types/src/components/Link/Link.d.ts +0 -18
  324. package/build/components/types/src/components/Link/index.d.ts +0 -1
  325. package/build/components/types/src/components/List/ClickableControl.d.ts +0 -9
  326. package/build/components/types/src/components/List/List.d.ts +0 -13
  327. package/build/components/types/src/components/List/ListItem.d.ts +0 -16
  328. package/build/components/types/src/components/List/index.d.ts +0 -2
  329. package/build/components/types/src/components/Loader/Loader.d.ts +0 -14
  330. package/build/components/types/src/components/Loader/Loader.static.d.ts +0 -19
  331. package/build/components/types/src/components/Loader/LoaderFullscreen.d.ts +0 -7
  332. package/build/components/types/src/components/Loader/index.d.ts +0 -2
  333. package/build/components/types/src/components/Megamenu/BrandMark.d.ts +0 -1
  334. package/build/components/types/src/components/Megamenu/Logo.d.ts +0 -1
  335. package/build/components/types/src/components/Megamenu/LogoJeTu.d.ts +0 -1
  336. package/build/components/types/src/components/Megamenu/MegaMenuIcon.d.ts +0 -13
  337. package/build/components/types/src/components/Megamenu/Megamenu.d.ts +0 -16
  338. package/build/components/types/src/components/Megamenu/Megamenu.static.d.ts +0 -63
  339. package/build/components/types/src/components/Megamenu/MegamenuBlog.d.ts +0 -2
  340. package/build/components/types/src/components/Megamenu/MegamenuSearchContent.d.ts +0 -10
  341. package/build/components/types/src/components/Megamenu/MyOrangeMobilePanel.d.ts +0 -7
  342. package/build/components/types/src/components/Megamenu/constants.d.ts +0 -86
  343. package/build/components/types/src/components/Megamenu/data.d.ts +0 -29
  344. package/build/components/types/src/components/Megamenu/ids.d.ts +0 -11
  345. package/build/components/types/src/components/Megamenu/index.d.ts +0 -3
  346. package/build/components/types/src/components/Megamenu/shared.d.ts +0 -40
  347. package/build/components/types/src/components/Megamenu/static.d.ts +0 -21
  348. package/build/components/types/src/components/Modal/Modal.d.ts +0 -39
  349. package/build/components/types/src/components/Modal/Modal.static.d.ts +0 -37
  350. package/build/components/types/src/components/Modal/ModalBody.d.ts +0 -12
  351. package/build/components/types/src/components/Modal/ModalCloseButton.d.ts +0 -8
  352. package/build/components/types/src/components/Modal/ModalProductFooter.d.ts +0 -10
  353. package/build/components/types/src/components/Modal/ModalProductHeader.d.ts +0 -11
  354. package/build/components/types/src/components/Modal/ModalTitle.d.ts +0 -9
  355. package/build/components/types/src/components/Modal/index.d.ts +0 -6
  356. package/build/components/types/src/components/Pagination/Pagination.d.ts +0 -25
  357. package/build/components/types/src/components/Pagination/PaginationItem.d.ts +0 -21
  358. package/build/components/types/src/components/Pagination/Separator.d.ts +0 -6
  359. package/build/components/types/src/components/Pagination/helpers.d.ts +0 -23
  360. package/build/components/types/src/components/Pagination/index.d.ts +0 -3
  361. package/build/components/types/src/components/Pill/Pill.d.ts +0 -11
  362. package/build/components/types/src/components/Pill/index.d.ts +0 -1
  363. package/build/components/types/src/components/Preview/CodeExample.d.ts +0 -12
  364. package/build/components/types/src/components/Preview/Preview.d.ts +0 -9
  365. package/build/components/types/src/components/Preview/PreviewGenerator.d.ts +0 -30
  366. package/build/components/types/src/components/Preview/PreviewTitleBar.d.ts +0 -9
  367. package/build/components/types/src/components/Preview/getElementDisplayName.d.ts +0 -1
  368. package/build/components/types/src/components/Preview/index.d.ts +0 -9
  369. package/build/components/types/src/components/Progress/Progress.d.ts +0 -14
  370. package/build/components/types/src/components/Progress/index.d.ts +0 -1
  371. package/build/components/types/src/components/PromoBanner/PromoBanner.d.ts +0 -25
  372. package/build/components/types/src/components/PromoBanner/index.d.ts +0 -1
  373. package/build/components/types/src/components/PromotionCard/PromotionCard.d.ts +0 -9
  374. package/build/components/types/src/components/PromotionCard/PromotionCardContent.d.ts +0 -8
  375. package/build/components/types/src/components/PromotionCard/PromotionCardImageWrapper.d.ts +0 -8
  376. package/build/components/types/src/components/PromotionCard/PromotionCardSection.d.ts +0 -9
  377. package/build/components/types/src/components/PromotionCard/PromotionCardTitle.d.ts +0 -8
  378. package/build/components/types/src/components/PromotionCard/constants.d.ts +0 -5
  379. package/build/components/types/src/components/PromotionCard/index.d.ts +0 -5
  380. package/build/components/types/src/components/Section/Section.d.ts +0 -26
  381. package/build/components/types/src/components/Section/index.d.ts +0 -1
  382. package/build/components/types/src/components/Skeleton/Skeleton.d.ts +0 -3
  383. package/build/components/types/src/components/Skeleton/index.d.ts +0 -1
  384. package/build/components/types/src/components/SkipLink/SkipLink.d.ts +0 -6
  385. package/build/components/types/src/components/SkipLink/index.d.ts +0 -1
  386. package/build/components/types/src/components/SocialButton/SocialButton.d.ts +0 -13
  387. package/build/components/types/src/components/SocialButton/index.d.ts +0 -1
  388. package/build/components/types/src/components/StarRating/StarRating.d.ts +0 -9
  389. package/build/components/types/src/components/StarRating/index.d.ts +0 -1
  390. package/build/components/types/src/components/Stepbar/Stepbar.d.ts +0 -19
  391. package/build/components/types/src/components/Stepbar/index.d.ts +0 -1
  392. package/build/components/types/src/components/Sticker/Sticker.d.ts +0 -10
  393. package/build/components/types/src/components/Sticker/index.d.ts +0 -2
  394. package/build/components/types/src/components/Table/Cell.d.ts +0 -11
  395. package/build/components/types/src/components/Table/Footer.d.ts +0 -3
  396. package/build/components/types/src/components/Table/Header.d.ts +0 -3
  397. package/build/components/types/src/components/Table/Row.d.ts +0 -10
  398. package/build/components/types/src/components/Table/Rows.d.ts +0 -3
  399. package/build/components/types/src/components/Table/Table.d.ts +0 -24
  400. package/build/components/types/src/components/Table/Table.static.d.ts +0 -23
  401. package/build/components/types/src/components/Table/TableContext.d.ts +0 -4
  402. package/build/components/types/src/components/Table/docsData.d.ts +0 -41
  403. package/build/components/types/src/components/Table/index.d.ts +0 -2
  404. package/build/components/types/src/components/Table/types.d.ts +0 -35
  405. package/build/components/types/src/components/Tabs/Tab.d.ts +0 -13
  406. package/build/components/types/src/components/Tabs/TabPanel.d.ts +0 -20
  407. package/build/components/types/src/components/Tabs/Tabs.d.ts +0 -18
  408. package/build/components/types/src/components/Tabs/Tabs.static.d.ts +0 -40
  409. package/build/components/types/src/components/Tabs/index.d.ts +0 -3
  410. package/build/components/types/src/components/Tag/Tag.d.ts +0 -29
  411. package/build/components/types/src/components/Tag/TagButton.d.ts +0 -12
  412. package/build/components/types/src/components/Tag/index.d.ts +0 -3
  413. package/build/components/types/src/components/Tile/Tile.d.ts +0 -16
  414. package/build/components/types/src/components/Tile/index.d.ts +0 -1
  415. package/build/components/types/src/components/Timeline/Timeline.d.ts +0 -13
  416. package/build/components/types/src/components/Timeline/index.d.ts +0 -2
  417. package/build/components/types/src/components/Tooltip/InfoTooltip.d.ts +0 -8
  418. package/build/components/types/src/components/Tooltip/Tooltip.d.ts +0 -24
  419. package/build/components/types/src/components/Tooltip/Tooltip.static.d.ts +0 -30
  420. package/build/components/types/src/components/Tooltip/index.d.ts +0 -2
  421. package/build/components/types/src/components/Tooltip/tests/BaseWrapper.d.ts +0 -3
  422. package/build/components/types/src/components/index.d.ts +0 -54
  423. package/build/components/types/src/components/static.d.ts +0 -1
  424. package/build/components/types/src/docs/utils/SpacePreview.d.ts +0 -2
  425. package/build/components/types/src/docs/utils/ToggleButton.d.ts +0 -9
  426. package/build/components/types/src/scripts/index.d.ts +0 -131
  427. package/build/components/types/src/scripts/lib/moduleFactory.d.ts +0 -3
  428. package/build/components/types/src/scripts/modules/SameHeight.d.ts +0 -22
  429. package/build/components/types/src/scripts/modules/SpacePreview/SpacePreview.d.ts +0 -23
  430. package/build/components/types/src/scripts/modules/SpacePreview/index.d.ts +0 -2
  431. package/build/components/types/src/scripts/modules/Toggle.d.ts +0 -42
  432. package/build/components/types/src/scripts/modules/toggleUtil.d.ts +0 -13
  433. package/build/components/types/src/styles/export/breakpoint.d.ts +0 -9
  434. package/build/components/types/src/styles/export/color.d.ts +0 -107
  435. package/build/components/types/src/styles/export/space.d.ts +0 -9
  436. package/build/components/types/src/utils/ConditionalWrapper.d.ts +0 -10
  437. package/build/components/types/src/utils/classes.d.ts +0 -5
  438. package/build/components/types/src/utils/color.d.ts +0 -20
  439. package/build/components/types/src/utils/constants.d.ts +0 -18
  440. package/build/components/types/src/utils/formatCode.d.ts +0 -5
  441. package/build/components/types/src/utils/generateId.d.ts +0 -6
  442. package/build/components/types/src/utils/helpers.d.ts +0 -11
  443. package/build/components/types/src/utils/hooks.d.ts +0 -30
  444. package/build/components/types/src/utils/index.d.ts +0 -5
  445. package/build/components/types/src/utils/keyboard.d.ts +0 -14
  446. package/build/lib/tsconfig.tsbuildinfo +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orangesk/orange-design-system",
3
- "version": "3.4.0",
3
+ "version": "3.6.0",
4
4
  "private": false,
5
5
  "engines": {
6
6
  "node": ">=20.x"
@@ -23,40 +23,11 @@
23
23
  "./src/*": "./src/*",
24
24
  "./public/*": "./public/*"
25
25
  },
26
- "scripts": {
27
- "dev": "npm run build:scss-exports && npm run build:search-index && npm run build:preview-iframe && next dev",
28
- "build": "npm run build:scss-exports && npm run build:search-index && npm run build:preview-iframe && next build && npm run sprite",
29
- "build:bundle": "npm run build:scss-exports && pnpm exec rollup -c && npm run build:megamenu && npm run build:footer",
30
- "build:preview-iframe": "node scripts/build-preview-iframe-bundle.mjs",
31
- "build:megamenu": "npm run build:scss-exports && pnpm exec rollup -c rollup.megamenu.config.mjs",
32
- "dev:megamenu": "npm run build:scss-exports && pnpm exec rollup -c rollup.megamenu.config.mjs --watch",
33
- "build:footer": "npm run build:scss-exports && pnpm exec rollup -c rollup.footer.config.mjs",
34
- "dev:footer": "npm run build:scss-exports && pnpm exec rollup -c rollup.footer.config.mjs --watch",
35
- "build:scss-exports": "node scripts/build-scss-exports.js",
36
- "build:search-index": "node scripts/mdx-search-index.js",
37
- "start": "next start",
38
- "lint": "biome lint .",
39
- "lint:fix": "biome lint --write .",
40
- "lint:fix:unsafe": "biome lint --write --unsafe .",
41
- "check": "biome check .",
42
- "check:fix": "biome check --write .",
43
- "imports:fix": "biome check --write --only=assist/source/organizeImports .",
44
- "format": "biome format --write . && prettier --write '**/*.{mdx,scss}'",
45
- "format:biome": "biome format --write .",
46
- "format:prettier": "prettier --write '**/*.{mdx,scss}'",
47
- "test": "vitest",
48
- "test:visual:docker": "docker run --rm --init --ipc=host -e CI=1 -v \"$PWD\":/work -w /work mcr.microsoft.com/playwright:v1.58.2-noble bash -lc \"corepack enable && pnpm install --frozen-lockfile --ignore-scripts && pnpm run test:visual\"",
49
- "test:visual:docker:update": "docker run --rm --init --ipc=host -e CI=1 -v \"$PWD\":/work -w /work mcr.microsoft.com/playwright:v1.58.2-noble bash -lc \"corepack enable && pnpm install --frozen-lockfile --ignore-scripts && pnpm run test:visual:update\"",
50
- "test:ui": "vitest --ui",
51
- "coverage": "vitest run --coverage",
52
- "prepare": "husky",
53
- "sprite": "svg-sprite --symbol --symbol-dest public --symbol-sprite sprite.svg src/assets/icons/*.svg"
54
- },
55
26
  "dependencies": {
56
27
  "@cloudfour/transition-hidden-element": "^2.0.2",
57
28
  "@mdx-js/loader": "^3.1.1",
58
29
  "@mdx-js/react": "^3.1.1",
59
- "@next/mdx": "16.3.0",
30
+ "@next/mdx": "16.3.2",
60
31
  "@orangesk/accessible-autocomplete": "3.2.2",
61
32
  "@popperjs/core": "^2.11.8",
62
33
  "@types/mdx": "^2.0.14",
@@ -64,15 +35,15 @@
64
35
  "classnames": "^2.5.1",
65
36
  "daypickr": "^0.3.4",
66
37
  "diff2html": "^3.4.56",
67
- "dompurify": "^3.4.13",
68
- "html-react-parser": "6.1.5",
38
+ "dompurify": "^3.4.14",
39
+ "html-react-parser": "6.1.7",
69
40
  "lorem-ipsum": "3.0.0",
70
41
  "minisearch": "7.2.0",
71
- "next": "16.3.0",
42
+ "next": "16.3.2",
72
43
  "normalize.css": "^8.0.1",
73
44
  "nouislider": "^15.8.1",
74
45
  "prism-react-renderer": "^2.4.1",
75
- "query-string": "^9.4.1",
46
+ "query-string": "^9.5.0",
76
47
  "react": "^19.2.8",
77
48
  "react-dom": "^19.2.8",
78
49
  "react-element-to-jsx-string": "^17.0.1",
@@ -81,7 +52,7 @@
81
52
  "rehype-slug": "^6.0.0",
82
53
  "remark-gemoji": "^8.0.0",
83
54
  "remark-gfm": "^4.0.1",
84
- "swiper": "14.0.7",
55
+ "swiper": "14.1.0",
85
56
  "tabbable": "^6.5.0",
86
57
  "unescape-html": "^1.1.0",
87
58
  "wnumb": "^1.2.0"
@@ -102,22 +73,22 @@
102
73
  "@rollup/plugin-url": "^8.0.2",
103
74
  "@rollup/rollup-darwin-arm64": "^4.62.4",
104
75
  "@testing-library/dom": "^10.4.1",
105
- "@testing-library/jest-dom": "7.0.0",
76
+ "@testing-library/jest-dom": "7.0.1",
106
77
  "@testing-library/react": "^16.3.2",
107
- "@testing-library/user-event": "^14.6.3",
108
- "@types/node": "26.1.2",
78
+ "@testing-library/user-event": "^14.6.5",
79
+ "@types/node": "26.2.0",
109
80
  "@types/react": "19.2.18",
110
81
  "@types/react-dom": "19.2.4",
111
82
  "@types/wnumb": "^1.2.3",
112
83
  "@vitejs/plugin-react": "6.0.5",
113
- "@vitest/browser": "^4.1.10",
114
- "@vitest/browser-playwright": "^4.1.10",
115
- "@vitest/coverage-v8": "^4.1.10",
116
- "@vitest/ui": "^4.1.10",
84
+ "@vitest/browser": "^4.1.11",
85
+ "@vitest/browser-playwright": "^4.1.11",
86
+ "@vitest/coverage-v8": "^4.1.11",
87
+ "@vitest/ui": "^4.1.11",
117
88
  "canvas": "^3.2.3",
118
89
  "fs-extra": "^11.4.0",
119
90
  "glob": "13.0.6",
120
- "html-validate": "11.6.2",
91
+ "html-validate": "11.8.0",
121
92
  "husky": "^9.1.7",
122
93
  "identity-obj-proxy": "^3.0.0",
123
94
  "jsdom": "30.0.1",
@@ -131,12 +102,40 @@
131
102
  "sass": "^1.102.0",
132
103
  "svg-sprite": "^2.0.4",
133
104
  "typescript": "6.0.3",
134
- "vitest": "^4.1.10",
105
+ "vitest": "^4.1.11",
135
106
  "vitest-axe": "^0.1.0",
136
107
  "vitest-browser-react": "^2.2.0"
137
108
  },
138
109
  "lint-staged": {
139
110
  "*.{js,jsx,ts,tsx,json,css}": "biome check --write --no-errors-on-unmatched",
140
111
  "*.{mdx,scss}": "prettier --write"
112
+ },
113
+ "scripts": {
114
+ "dev": "npm run build:scss-exports && npm run build:search-index && npm run build:preview-iframe && next dev",
115
+ "build": "npm run build:scss-exports && npm run build:search-index && npm run build:preview-iframe && next build && npm run sprite",
116
+ "build:bundle": "pnpm run build:scss-exports && pnpm exec rollup -c && pnpm run build:megamenu && pnpm run build:footer",
117
+ "build:preview-iframe": "node scripts/build-preview-iframe-bundle.mjs",
118
+ "build:megamenu": "pnpm run build:scss-exports && pnpm exec rollup -c rollup.megamenu.config.mjs",
119
+ "dev:megamenu": "npm run build:scss-exports && pnpm exec rollup -c rollup.megamenu.config.mjs --watch",
120
+ "build:footer": "pnpm run build:scss-exports && pnpm exec rollup -c rollup.footer.config.mjs",
121
+ "dev:footer": "npm run build:scss-exports && pnpm exec rollup -c rollup.footer.config.mjs --watch",
122
+ "build:scss-exports": "node scripts/build-scss-exports.js",
123
+ "build:search-index": "node scripts/mdx-search-index.js",
124
+ "start": "next start",
125
+ "lint": "biome lint .",
126
+ "lint:fix": "biome lint --write .",
127
+ "lint:fix:unsafe": "biome lint --write --unsafe .",
128
+ "check": "biome check .",
129
+ "check:fix": "biome check --write .",
130
+ "imports:fix": "biome check --write --only=assist/source/organizeImports .",
131
+ "format": "biome format --write . && prettier --write '**/*.{mdx,scss}'",
132
+ "format:biome": "biome format --write .",
133
+ "format:prettier": "prettier --write '**/*.{mdx,scss}'",
134
+ "test": "vitest",
135
+ "test:visual:docker": "docker run --rm --init --ipc=host -e CI=1 -v \"$PWD\":/work -w /work mcr.microsoft.com/playwright:v1.58.2-noble bash -lc \"corepack enable && pnpm install --frozen-lockfile --ignore-scripts && pnpm run test:visual\"",
136
+ "test:visual:docker:update": "docker run --rm --init --ipc=host -e CI=1 -v \"$PWD\":/work -w /work mcr.microsoft.com/playwright:v1.58.2-noble bash -lc \"corepack enable && pnpm install --frozen-lockfile --ignore-scripts && pnpm run test:visual:update\"",
137
+ "test:ui": "vitest --ui",
138
+ "coverage": "vitest run --coverage",
139
+ "sprite": "svg-sprite --symbol --symbol-dest public --symbol-sprite sprite.svg src/assets/icons/*.svg"
141
140
  }
142
- }
141
+ }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1,7 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import cx from "classnames";
4
- import React, { ReactNode } from "react";
4
+ import type { ReactNode } from "react";
5
+ import React from "react";
5
6
  import { useStatic } from "@/utils/hooks";
6
7
  import AccordionStatic from "./Accordion.static";
7
8
  import HeadingContext from "./HeadingContext";
@@ -1,7 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import cx from "classnames";
4
- import React, { ReactNode } from "react";
4
+ import type { ReactNode } from "react";
5
+ import React from "react";
5
6
 
6
7
  import { useHydrationSafeId } from "../../utils/hooks";
7
8
 
@@ -1,5 +1,6 @@
1
1
  import cx from "classnames";
2
- import React, { JSX } from "react";
2
+ import type { JSX } from "react";
3
+ import React from "react";
3
4
  import ConditionalWrapper from "../../utils/ConditionalWrapper";
4
5
  import { Buttons } from "../Buttons";
5
6
  import { Icon } from "../Icon";
@@ -1,5 +1,6 @@
1
1
  import cx from "classnames";
2
- import React, { HTMLAttributes } from "react";
2
+ import type { HTMLAttributes } from "react";
3
+ import React from "react";
3
4
 
4
5
  import { Icon } from "../Icon";
5
6
 
@@ -1,5 +1,6 @@
1
1
  import cx from "classnames";
2
- import React, { ReactElement } from "react";
2
+ import type { ReactElement } from "react";
3
+ import React from "react";
3
4
 
4
5
  import { CloneElementWithClassName } from "./CloneElementWithClassName";
5
6
  import { Provider } from "./Context";
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
 
3
- import React, { ReactElement, useContext } from "react";
3
+ import type { ReactElement } from "react";
4
+ import React, { useContext } from "react";
4
5
  import { CloneElementWithClassName } from "./CloneElementWithClassName";
5
6
  import { Context } from "./Context";
6
7
 
@@ -1,7 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import cx from "classnames";
4
- import React, { ReactElement, useContext } from "react";
4
+ import type { ReactElement } from "react";
5
+ import React, { useContext } from "react";
5
6
  import { CloneElementWithClassName } from "./CloneElementWithClassName";
6
7
  import { Context } from "./Context";
7
8
 
@@ -1,5 +1,6 @@
1
1
  import cx from "classnames";
2
- import React, { ReactElement } from "react";
2
+ import type { ReactElement } from "react";
3
+ import React from "react";
3
4
 
4
5
  interface CloneElementWithClassNameProps {
5
6
  className?: string;
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
 
3
- import React, { Dispatch, ReactNode, SetStateAction, useState } from "react";
3
+ import type { Dispatch, ReactNode, SetStateAction } from "react";
4
+ import React, { useState } from "react";
4
5
 
5
6
  interface ContextType {
6
7
  isIndicating: boolean;
@@ -1,4 +1,5 @@
1
- import React, { ReactElement } from "react";
1
+ import type { ReactElement } from "react";
2
+ import React from "react";
2
3
  import { BlockAction } from "./BlockAction";
3
4
  import { BlockActionControl } from "./BlockActionControl";
4
5
  import { BlockActionIndicator } from "./BlockActionIndicator";
@@ -2,7 +2,8 @@ import cx from "classnames";
2
2
  import React from "react";
3
3
 
4
4
  import { Icon } from "../Icon";
5
- import { Button, ButtonSize } from "./Button";
5
+ import type { ButtonSize } from "./Button";
6
+ import { Button } from "./Button";
6
7
 
7
8
  export type IconPosition = "left" | "right";
8
9
 
@@ -1,4 +1,5 @@
1
- import { Button, ButtonProps } from "./Button";
1
+ import type { ButtonProps } from "./Button";
2
+ import { Button } from "./Button";
2
3
  import { IconButton } from "./IconButton";
3
4
 
4
5
  export const ButtonPrimary = (props: ButtonProps) => (
@@ -14,6 +14,7 @@ import Tooltip from "../Tooltip/Tooltip.static";
14
14
  import {
15
15
  CLASS_ACTIVE,
16
16
  CLASS_BLEED_RIGHT,
17
+ CLASS_BLEED_RIGHT_NO_LEFT,
17
18
  CLASS_DOT,
18
19
  CLASS_SCROLLBAR_DRAG,
19
20
  CLASS_SCROLLBAR_HORIZONTAL,
@@ -113,6 +114,13 @@ export default class Carousel {
113
114
  ) as HTMLElement | null;
114
115
  }
115
116
 
117
+ private isBleedRight(): boolean {
118
+ return (
119
+ this.element.classList.contains(CLASS_BLEED_RIGHT) ||
120
+ this.element.classList.contains(CLASS_BLEED_RIGHT_NO_LEFT)
121
+ );
122
+ }
123
+
116
124
  private getSlidesPerView(): number {
117
125
  return Number(this.instance?.params?.slidesPerView) || 1;
118
126
  }
@@ -146,7 +154,7 @@ export default class Carousel {
146
154
  }
147
155
 
148
156
  private getOverflowWidth(viewportWrapper?: HTMLElement): number {
149
- const isBleedRight = this.element.classList.contains(CLASS_BLEED_RIGHT);
157
+ const isBleedRight = this.isBleedRight();
150
158
  const containerWidth = isBleedRight
151
159
  ? this.element.clientWidth || viewportWrapper?.clientWidth || 0
152
160
  : this.viewport?.clientWidth || 0;
@@ -223,7 +231,7 @@ export default class Carousel {
223
231
  this.getCustomOptions();
224
232
  }
225
233
 
226
- const isBleedRight = this.element.classList.contains(CLASS_BLEED_RIGHT);
234
+ const isBleedRight = this.isBleedRight();
227
235
 
228
236
  this.instance = new Swiper(this.viewport, {
229
237
  ...this.config,
@@ -248,7 +256,7 @@ export default class Carousel {
248
256
 
249
257
  this.updateCarouselEnabledState();
250
258
 
251
- if (this.element.classList.contains(CLASS_BLEED_RIGHT)) {
259
+ if (this.isBleedRight()) {
252
260
  this.adjustConfigForBleedRight();
253
261
  this.fixBleedRightScrollbar();
254
262
  }
@@ -480,13 +488,18 @@ export default class Carousel {
480
488
  document.documentElement?.clientWidth || window.innerWidth || 0;
481
489
  const wrapperRect = viewportWrapper.getBoundingClientRect();
482
490
  const rootRect = this.element.getBoundingClientRect();
491
+ const isBleedRightNoLeft = this.element.classList.contains(
492
+ CLASS_BLEED_RIGHT_NO_LEFT,
493
+ );
483
494
  const stableLeftInsetSource =
484
495
  rootRect.left > 0 ? rootRect.left : wrapperRect.left;
485
496
  const leftInset = Math.max(Math.floor(stableLeftInsetSource), 0);
486
- const shellWidth = Math.max(Math.floor(viewportWidth), containerWidth, 0);
487
- const shellMarginLeft = -leftInset;
497
+ const shellWidth = isBleedRightNoLeft
498
+ ? Math.max(Math.floor(viewportWidth - leftInset), containerWidth, 0)
499
+ : Math.max(Math.floor(viewportWidth), containerWidth, 0);
500
+ const shellMarginLeft = isBleedRightNoLeft ? 0 : -leftInset;
488
501
  const bleedViewportWidth = Math.max(
489
- shellWidth - leftInset,
502
+ isBleedRightNoLeft ? shellWidth : shellWidth - leftInset,
490
503
  containerWidth,
491
504
  0,
492
505
  );
@@ -501,11 +514,12 @@ export default class Carousel {
501
514
  : slidesCount > slidesPerView;
502
515
  const shouldDisableBleed = !hasIntrinsicOverflow;
503
516
  const shouldEnableBleedClass = !shouldDisableBleed;
504
- const hadBleedClass = this.element.classList.contains(CLASS_BLEED_RIGHT);
517
+ const hadBleedClass = this.isBleedRight();
505
518
  const nextBleedViewportWidth = shouldDisableBleed
506
519
  ? "100%"
507
520
  : `${bleedViewportWidth}px`;
508
- const nextBleedMarginLeft = shouldDisableBleed ? "0px" : `${leftInset}px`;
521
+ const nextBleedMarginLeft =
522
+ shouldDisableBleed || isBleedRightNoLeft ? "0px" : `${leftInset}px`;
509
523
  const nextBleedShellWidth = shouldDisableBleed ? "100%" : `${shellWidth}px`;
510
524
  const nextBleedShellMarginLeft = shouldDisableBleed
511
525
  ? "0px"
@@ -524,7 +538,9 @@ export default class Carousel {
524
538
  "--carousel-bleed-shell-margin-left",
525
539
  ) !== nextBleedShellMarginLeft;
526
540
 
527
- this.element.classList.toggle(CLASS_BLEED_RIGHT, shouldEnableBleedClass);
541
+ if (!isBleedRightNoLeft) {
542
+ this.element.classList.toggle(CLASS_BLEED_RIGHT, shouldEnableBleedClass);
543
+ }
528
544
 
529
545
  const baseWidth = shouldDisableBleed ? undefined : containerWidth;
530
546
  this.instance.params.width = baseWidth;
@@ -1,12 +1,14 @@
1
1
  "use client";
2
2
 
3
3
  import cx from "classnames";
4
- import React, { HTMLAttributes, ReactElement, ReactNode } from "react";
4
+ import type { HTMLAttributes, ReactElement, ReactNode } from "react";
5
+ import React from "react";
5
6
  import { useStatic } from "@/utils/hooks";
6
7
  import { Controls } from "../Controls";
7
8
  import CarouselStatic from "./Carousel.static";
8
9
  import { CarouselItem } from "./CarouselItem";
9
10
  import {
11
+ CLASS_BLEED_RIGHT_NO_LEFT,
10
12
  CLASS_CONTROLS,
11
13
  CLASS_DOTS,
12
14
  CLASS_NAVIGATION,
@@ -33,6 +35,8 @@ interface CarouselProps<T = ReactNode> extends HTMLAttributes<HTMLDivElement> {
33
35
  showScrollbar?: boolean;
34
36
  /** Make carousel bleed to the right edge of screen while keeping left aligned with container */
35
37
  bleedRight?: boolean;
38
+ /** Make carousel bleed right from its root edge without bleeding left */
39
+ bleedRightNoLeft?: boolean;
36
40
  className?: string;
37
41
  }
38
42
 
@@ -48,6 +52,7 @@ const Carousel = <T,>({
48
52
  renderItems,
49
53
  showScrollbar = false,
50
54
  bleedRight = false,
55
+ bleedRightNoLeft = false,
51
56
  ...other
52
57
  }: CarouselProps<T>) => {
53
58
  const [carouselRef] = useStatic(CarouselStatic);
@@ -71,6 +76,7 @@ const Carousel = <T,>({
71
76
  const classes = cx(CLASS_ROOT, className, {
72
77
  [`${CLASS_ROOT}--scrollbar`]: showScrollbar,
73
78
  [`${CLASS_ROOT}--bleed-right`]: bleedRight,
79
+ [CLASS_BLEED_RIGHT_NO_LEFT]: bleedRightNoLeft,
74
80
  });
75
81
 
76
82
  const elementClasses = {
@@ -1,5 +1,6 @@
1
1
  import cx from "classnames";
2
- import React, { HTMLAttributes, ReactNode } from "react";
2
+ import type { HTMLAttributes, ReactNode } from "react";
3
+ import React from "react";
3
4
 
4
5
  import { CLASS_SLIDE } from "./constants";
5
6
 
@@ -18,6 +18,7 @@ export const CLASS_SCROLLBAR_DRAG = `${CLASS_ROOT}__scrollbar-drag`;
18
18
  export const CLASS_ACTIVE = "is-active";
19
19
  export const CLASS_SCROLLBAR_VARIANT = `${CLASS_ROOT}--scrollbar`;
20
20
  export const CLASS_BLEED_RIGHT = `${CLASS_ROOT}--bleed-right`;
21
+ export const CLASS_BLEED_RIGHT_NO_LEFT = `${CLASS_ROOT}--bleed-right-no-left`;
21
22
 
22
23
  export const SELECTOR_VIEWPORT = `.${CLASS_VIEWPORT}`;
23
24
  export const SELECTOR_TRACK = `.${CLASS_TRACK}`;
@@ -9,7 +9,8 @@
9
9
  @include mixins.scrollbar-variant;
10
10
  }
11
11
 
12
- &--bleed-right {
12
+ &--bleed-right,
13
+ &--bleed-right-no-left {
13
14
  @include mixins.bleed-right-variant;
14
15
  }
15
16
 
@@ -901,6 +901,91 @@ describe("Carousel Static - Auto-Disable Feature", () => {
901
901
  });
902
902
  });
903
903
 
904
+ it("should keep the left edge fixed for no-left bleed geometry", () => {
905
+ const originalInnerWidth = window.innerWidth;
906
+ Object.defineProperty(window, "innerWidth", {
907
+ configurable: true,
908
+ writable: true,
909
+ value: 1000,
910
+ });
911
+
912
+ mockSwiperInstance.slides = [
913
+ document.createElement("div"),
914
+ document.createElement("div"),
915
+ document.createElement("div"),
916
+ ];
917
+ mockSwiperInstance.params.slidesPerView = 1.2;
918
+
919
+ document.body.innerHTML = `
920
+ <div class="carousel carousel--bleed-right-no-left" data-carousel-id="test-carousel" id="test-carousel">
921
+ <div class="carousel__viewport-wrapper">
922
+ <div class="carousel__viewport">
923
+ <div class="carousel__track">
924
+ <div class="carousel__slide">Slide 1</div>
925
+ <div class="carousel__slide">Slide 2</div>
926
+ <div class="carousel__slide">Slide 3</div>
927
+ </div>
928
+ </div>
929
+ </div>
930
+ <div class="carousel__pagination"></div>
931
+ </div>
932
+ `;
933
+
934
+ carouselElement = document.querySelector(".carousel");
935
+ const viewportWrapper = carouselElement.querySelector(
936
+ ".carousel__viewport-wrapper",
937
+ );
938
+ const track = carouselElement.querySelector(".carousel__track");
939
+
940
+ Object.defineProperty(viewportWrapper, "clientWidth", {
941
+ configurable: true,
942
+ value: 800,
943
+ });
944
+ Object.defineProperty(track, "scrollWidth", {
945
+ configurable: true,
946
+ value: 1200,
947
+ });
948
+ Object.defineProperty(viewportWrapper, "getBoundingClientRect", {
949
+ configurable: true,
950
+ value: () => ({
951
+ top: 0,
952
+ right: 920,
953
+ bottom: 200,
954
+ left: 120,
955
+ width: 800,
956
+ height: 200,
957
+ x: 120,
958
+ y: 0,
959
+ toJSON: () => ({}),
960
+ }),
961
+ });
962
+
963
+ carouselInstance = new Carousel(carouselElement);
964
+
965
+ expect(
966
+ carouselElement.style.getPropertyValue(
967
+ "--carousel-bleed-viewport-width",
968
+ ),
969
+ ).toBe("880px");
970
+ expect(
971
+ carouselElement.style.getPropertyValue("--carousel-bleed-margin-left"),
972
+ ).toBe("0px");
973
+ expect(
974
+ carouselElement.style.getPropertyValue("--carousel-bleed-shell-width"),
975
+ ).toBe("880px");
976
+ expect(
977
+ carouselElement.style.getPropertyValue(
978
+ "--carousel-bleed-shell-margin-left",
979
+ ),
980
+ ).toBe("0px");
981
+
982
+ Object.defineProperty(window, "innerWidth", {
983
+ configurable: true,
984
+ writable: true,
985
+ value: originalInnerWidth,
986
+ });
987
+ });
988
+
904
989
  it("should calculate bleed-right scrollbar drag from logical viewport, not shell width", () => {
905
990
  mockSwiperInstance.slides = [
906
991
  document.createElement("div"),
@@ -365,6 +365,15 @@ describe("rendering Carousel", () => {
365
365
  expect(carousel).toHaveClass("carousel--bleed-right");
366
366
  });
367
367
 
368
+ it("should support right bleed without left bleed", () => {
369
+ const { container } = render(
370
+ <Carousel items={items} bleedRightNoLeft showScrollbar />,
371
+ );
372
+ const carousel = container.querySelector(".carousel");
373
+ expect(carousel).toHaveClass("carousel--bleed-right-no-left");
374
+ expect(carousel).not.toHaveClass("carousel--bleed-right");
375
+ });
376
+
368
377
  it("should support minimal slides for testing auto-disable", () => {
369
378
  const minimalItems = [<p key="item1">item1</p>];
370
379
  const { container } = render(<Carousel items={minimalItems} />);
@@ -1,7 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import cx from "classnames";
4
- import React, { ReactNode, useId } from "react";
4
+ import type { ReactNode } from "react";
5
+ import React, { useId } from "react";
5
6
  import { useStatic } from "@/utils/hooks";
6
7
  import { Container } from "../Container";
7
8
  import { Controls } from "../Controls";
@@ -1,5 +1,6 @@
1
1
  import cx from "classnames";
2
- import React, { HTMLAttributes, ReactNode } from "react";
2
+ import type { HTMLAttributes, ReactNode } from "react";
3
+ import React from "react";
3
4
  import { Image } from "@/components/Image";
4
5
  import { Container } from "../Container";
5
6
  import {
@@ -59,7 +59,7 @@ export default class CarouselPromotions {
59
59
  viewport!: HTMLElement;
60
60
  instance!: Swiper;
61
61
  interval: number = 0;
62
- autoplayTimer?: NodeJS.Timeout;
62
+ autoplayTimer?: ReturnType<typeof setTimeout>;
63
63
  private resizeRafId?: number;
64
64
  private boundWindowResizeHandler: () => void;
65
65
  private boundPaginationClickHandler: () => void;
@@ -1,7 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import cx from "classnames";
4
- import React, { ReactNode } from "react";
4
+ import type { ReactNode } from "react";
5
+ import React from "react";
5
6
  import { useStatic } from "@/utils/hooks";
6
7
  import CarouselPromotionsStatic from "./CarouselPromotions.static";
7
8
  import {
@@ -1,5 +1,6 @@
1
1
  import cx from "classnames";
2
- import React, { ReactElement } from "react";
2
+ import type { ReactElement } from "react";
3
+ import React from "react";
3
4
 
4
5
  import {
5
6
  CLASS_IMAGE,