@orangesk/orange-design-system 2.0.0-beta.0 → 2.0.0-beta.10

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 (572) hide show
  1. package/build/components/index.css +1 -2
  2. package/build/components/index.css.map +1 -1
  3. package/build/components/index.js +7 -7
  4. package/build/components/index.js.map +1 -1
  5. package/build/components/tsconfig.tsbuildinfo +1 -1
  6. package/build/components/types/index.d.ts +1508 -0
  7. package/build/components/types/src/components/Accordion/Accordion.d.ts +2 -0
  8. package/build/components/types/src/components/Accordion/AccordionHeader.d.ts +2 -1
  9. package/build/components/types/src/components/Accordion/AccordionItem.d.ts +2 -1
  10. package/build/components/types/src/components/AnchorNavigation/AnchorNavigation.d.ts +1 -1
  11. package/build/components/types/src/components/AnchorNavigation/AnchorNavigation.static.d.ts +19 -17
  12. package/build/components/types/src/components/AnchorNavigation/index.d.ts +0 -1
  13. package/build/components/types/src/components/BlockAction/index.d.ts +0 -1
  14. package/build/components/types/src/components/BodyBanner/index.d.ts +0 -1
  15. package/build/components/types/src/components/Button/Button.d.ts +1 -0
  16. package/build/components/types/src/components/Button/index.d.ts +0 -1
  17. package/build/components/types/src/components/Card/Card.d.ts +2 -4
  18. package/build/components/types/src/components/Card/CardSection.d.ts +2 -2
  19. package/build/components/types/src/components/Carousel/Carousel.d.ts +4 -0
  20. package/build/components/types/src/components/Carousel/Carousel.static.d.ts +1 -0
  21. package/build/components/types/src/components/Carousel/constants.d.ts +2 -0
  22. package/build/components/types/src/components/CarouselHero/CarouselHero.d.ts +18 -0
  23. package/build/components/types/src/components/CarouselHero/CarouselHero.static.d.ts +47 -0
  24. package/build/components/types/src/components/CarouselHero/CarouselHeroItem.d.ts +8 -0
  25. package/build/components/types/src/components/CarouselHero/constants.d.ts +33 -0
  26. package/build/components/types/src/components/CarouselHero/index.d.ts +2 -0
  27. package/build/components/types/src/components/Cover/index.d.ts +1 -2
  28. package/build/components/types/src/components/Divider/Divider.d.ts +0 -4
  29. package/build/components/types/src/components/Expander/Expander.d.ts +2 -2
  30. package/build/components/types/src/components/Footer/Footer.d.ts +1 -5
  31. package/build/components/types/src/components/Footer/constants.d.ts +9 -0
  32. package/build/components/types/src/components/Forms/Select/index.d.ts +0 -1
  33. package/build/components/types/src/components/Icon/iconSearchTags.d.ts +253 -251
  34. package/build/components/types/src/components/IconList/index.d.ts +2 -3
  35. package/build/components/types/src/components/List/index.d.ts +2 -3
  36. package/build/components/types/src/components/Megamenu/MegaMenuIcon.d.ts +13 -0
  37. package/build/components/types/src/components/Megamenu/Megamenu.d.ts +1 -9
  38. package/build/components/types/src/components/Megamenu/Megamenu.static.d.ts +47 -0
  39. package/build/components/types/src/components/Megamenu/MegamenuBlog.d.ts +1 -0
  40. package/build/components/types/src/components/Megamenu/constants.d.ts +48 -0
  41. package/build/components/types/src/components/Megamenu/index.d.ts +2 -3
  42. package/build/components/types/src/components/Megamenu/static.d.ts +22 -0
  43. package/build/components/types/src/components/Modal/Modal.d.ts +6 -0
  44. package/build/components/types/src/components/Modal/ModalBody.d.ts +4 -3
  45. package/build/components/types/src/components/Modal/ModalProductBody.d.ts +10 -0
  46. package/build/components/types/src/components/Modal/ModalProductFooter.d.ts +10 -0
  47. package/build/components/types/src/components/Modal/index.d.ts +2 -0
  48. package/build/components/types/src/components/Pagination/Pagination.d.ts +2 -3
  49. package/build/components/types/src/components/Pill/Pill.d.ts +4 -1
  50. package/build/components/types/src/components/Preview/PreviewGenerator.d.ts +1 -1
  51. package/build/components/types/src/components/PromoBanner/PromoBanner.d.ts +9 -5
  52. package/build/components/types/src/components/PromotionCard/PromotionCard.d.ts +2 -2
  53. package/build/components/types/src/components/Section/Section.d.ts +4 -1
  54. package/build/components/types/src/components/Tag/Tag.d.ts +9 -2
  55. package/build/components/types/src/components/index.d.ts +3 -5
  56. package/build/components/types/src/scripts/index.d.ts +10 -0
  57. package/build/lib/after-components.css +1 -1
  58. package/build/lib/after-components.css.map +1 -1
  59. package/build/lib/before-components.css +1 -1
  60. package/build/lib/before-components.css.map +1 -1
  61. package/build/lib/components.css +1 -1
  62. package/build/lib/components.css.map +1 -1
  63. package/build/lib/footer.css +2 -0
  64. package/build/lib/footer.css.map +1 -0
  65. package/build/lib/megamenu.css +2 -0
  66. package/build/lib/megamenu.css.map +1 -0
  67. package/build/lib/megamenu.js +2 -0
  68. package/build/lib/megamenu.js.map +1 -0
  69. package/build/lib/scripts.css +1 -1
  70. package/build/lib/scripts.css.map +1 -1
  71. package/build/lib/scripts.js +5 -5
  72. package/build/lib/scripts.js.map +1 -1
  73. package/build/lib/style.css +1 -1
  74. package/build/lib/style.css.map +1 -1
  75. package/build/lib/tsconfig.tsbuildinfo +1 -1
  76. package/build/logo-line.svg +5 -0
  77. package/build/sprite.svg +1 -1
  78. package/package.json +35 -29
  79. package/src/assets/icons/ai.svg +6 -0
  80. package/src/assets/icons/article.svg +7 -0
  81. package/src/assets/icons/pictogram-activation--dark.svg +10 -11
  82. package/src/assets/icons/pictogram-activation-free--dark.svg +4 -5
  83. package/src/assets/icons/pictogram-activation-free.svg +4 -5
  84. package/src/assets/icons/pictogram-activation.svg +10 -11
  85. package/src/assets/icons/pictogram-archive--dark.svg +3 -4
  86. package/src/assets/icons/pictogram-archive.svg +3 -4
  87. package/src/assets/icons/pictogram-calling-minutes--dark.svg +3 -4
  88. package/src/assets/icons/pictogram-calling-minutes.svg +3 -4
  89. package/src/assets/icons/pictogram-canal-plus--dark.svg +3 -4
  90. package/src/assets/icons/pictogram-canal-plus.svg +3 -4
  91. package/src/assets/icons/pictogram-competition-tickets--dark.svg +11 -12
  92. package/src/assets/icons/pictogram-competition-tickets.svg +11 -12
  93. package/src/assets/icons/pictogram-device-discount--dark.svg +7 -6
  94. package/src/assets/icons/pictogram-device-discount.svg +5 -6
  95. package/src/assets/icons/pictogram-discount-general--dark.svg +5 -6
  96. package/src/assets/icons/pictogram-discount-general.svg +5 -6
  97. package/src/assets/icons/pictogram-discount-price--dark.svg +5 -6
  98. package/src/assets/icons/pictogram-discount-price.svg +5 -6
  99. package/src/assets/icons/pictogram-extra-data--dark.svg +6 -7
  100. package/src/assets/icons/pictogram-extra-data.svg +6 -7
  101. package/src/assets/icons/pictogram-free-payment--dark.svg +5 -6
  102. package/src/assets/icons/pictogram-free-payment.svg +3 -6
  103. package/src/assets/icons/pictogram-gift--dark.svg +12 -13
  104. package/src/assets/icons/pictogram-gift-one-benefit--dark.svg +7 -8
  105. package/src/assets/icons/pictogram-gift-one-benefit.svg +7 -8
  106. package/src/assets/icons/pictogram-gift-two-benefits--dark.svg +8 -9
  107. package/src/assets/icons/pictogram-gift-two-benefits.svg +8 -9
  108. package/src/assets/icons/pictogram-gift.svg +3 -4
  109. package/src/assets/icons/pictogram-hbo-max--dark.svg +5 -6
  110. package/src/assets/icons/pictogram-hbo-max.svg +5 -6
  111. package/src/assets/icons/pictogram-infinite-sms--dark.svg +3 -4
  112. package/src/assets/icons/pictogram-infinite-sms.svg +3 -4
  113. package/src/assets/icons/pictogram-installation--dark.svg +4 -5
  114. package/src/assets/icons/pictogram-installation-free--dark.svg +4 -5
  115. package/src/assets/icons/pictogram-installation-free.svg +4 -5
  116. package/src/assets/icons/pictogram-installation.svg +4 -5
  117. package/src/assets/icons/pictogram-max--dark.svg +3 -4
  118. package/src/assets/icons/pictogram-max-canal-plus--dark.svg +5 -6
  119. package/src/assets/icons/pictogram-max-canal-plus.svg +5 -6
  120. package/src/assets/icons/pictogram-max.svg +3 -4
  121. package/src/assets/icons/pictogram-moj-orange-app--dark.svg +3 -4
  122. package/src/assets/icons/pictogram-moj-orange-app.svg +3 -4
  123. package/src/assets/icons/pictogram-movie-storage--dark.svg +4 -5
  124. package/src/assets/icons/pictogram-movie-storage.svg +4 -5
  125. package/src/assets/icons/pictogram-online-protection--dark.svg +3 -4
  126. package/src/assets/icons/pictogram-online-protection.svg +3 -4
  127. package/src/assets/icons/pictogram-random-damage--dark.svg +4 -8
  128. package/src/assets/icons/pictogram-random-damage.svg +4 -8
  129. package/src/assets/icons/pictogram-recycling--dark.svg +7 -8
  130. package/src/assets/icons/pictogram-recycling.svg +14 -15
  131. package/src/assets/icons/pictogram-repair--dark.svg +12 -13
  132. package/src/assets/icons/pictogram-repair.svg +12 -13
  133. package/src/assets/icons/pictogram-roaming--dark.svg +3 -4
  134. package/src/assets/icons/pictogram-roaming-discount--dark.svg +3 -16
  135. package/src/assets/icons/pictogram-roaming-discount.svg +15 -16
  136. package/src/assets/icons/pictogram-roaming.svg +3 -4
  137. package/src/assets/icons/pictogram-skylink--dark.svg +10 -11
  138. package/src/assets/icons/pictogram-skylink-live-tv--dark.svg +7 -8
  139. package/src/assets/icons/pictogram-skylink-live-tv.svg +7 -8
  140. package/src/assets/icons/pictogram-skylink.svg +10 -11
  141. package/src/assets/icons/pictogram-sms--dark.svg +5 -6
  142. package/src/assets/icons/pictogram-sms.svg +5 -6
  143. package/src/assets/icons/pictogram-theft--dark.svg +3 -7
  144. package/src/assets/icons/pictogram-theft.svg +3 -7
  145. package/src/assets/icons/pictogram-three-devices--dark.svg +4 -8
  146. package/src/assets/icons/pictogram-three-devices.svg +4 -8
  147. package/src/assets/icons/pictogram-trust--dark.svg +3 -4
  148. package/src/assets/icons/pictogram-trust.svg +3 -4
  149. package/src/assets/icons/pictogram-water-damage--dark.svg +5 -6
  150. package/src/assets/icons/pictogram-water-damage.svg +5 -6
  151. package/src/components/Accordion/Accordion.tsx +4 -0
  152. package/src/components/Accordion/AccordionHeader.tsx +9 -2
  153. package/src/components/Accordion/AccordionItem.tsx +5 -2
  154. package/src/components/Accordion/styles/config.scss +4 -4
  155. package/src/components/Accordion/styles/mixins.scss +9 -3
  156. package/src/components/Accordion/styles/style.scss +4 -0
  157. package/src/components/Accordion/tests/Accordion.unit.test.js +11 -0
  158. package/src/components/AnchorNavigation/AnchorNavigation.static.ts +253 -73
  159. package/src/components/AnchorNavigation/AnchorNavigation.tsx +20 -16
  160. package/src/components/AnchorNavigation/index.tsx +0 -2
  161. package/src/components/AnchorNavigation/styles/mixins.scss +14 -27
  162. package/src/components/AnchorNavigation/tests/AnchorNavigation.conformance.test.js +67 -0
  163. package/src/components/AnchorNavigation/tests/AnchorNavigation.unit.test.js +163 -0
  164. package/src/components/Bar/styles/config.scss +4 -5
  165. package/src/components/BlockAction/index.tsx +0 -2
  166. package/src/components/BlockAction/styles/mixins.scss +0 -6
  167. package/src/components/BodyBanner/index.tsx +0 -2
  168. package/src/components/Breadcrumbs/styles/mixins.scss +2 -4
  169. package/src/components/Button/Button.tsx +2 -2
  170. package/src/components/Button/index.tsx +0 -2
  171. package/src/components/Button/styles/config.scss +1 -1
  172. package/src/components/Button/styles/mixins.scss +5 -0
  173. package/src/components/Button/styles/style.scss +4 -0
  174. package/src/components/Card/Card.tsx +20 -8
  175. package/src/components/Card/CardSection.tsx +7 -11
  176. package/src/components/Card/styles/config.scss +1 -1
  177. package/src/components/Card/styles/mixins.scss +8 -6
  178. package/src/components/Card/styles/style.scss +4 -0
  179. package/src/components/Card/tests/Card.unit.test.js +45 -11
  180. package/src/components/Card/tests/CardSection.unit.test.js +36 -3
  181. package/src/components/Carousel/Carousel.static.ts +67 -1
  182. package/src/components/Carousel/Carousel.tsx +41 -19
  183. package/src/components/Carousel/constants.ts +2 -0
  184. package/src/components/Carousel/styles/config.scss +1 -2
  185. package/src/components/Carousel/styles/mixins.scss +35 -2
  186. package/src/components/Carousel/styles/style.scss +8 -0
  187. package/src/components/CarouselHero/CarouselHero.static.ts +528 -0
  188. package/src/components/CarouselHero/CarouselHero.tsx +147 -0
  189. package/src/components/CarouselHero/CarouselHeroItem.tsx +40 -0
  190. package/src/components/CarouselHero/constants.ts +36 -0
  191. package/src/components/CarouselHero/index.ts +2 -0
  192. package/src/components/CarouselHero/styles/config.scss +54 -0
  193. package/src/components/CarouselHero/styles/mixins.scss +278 -0
  194. package/src/components/CarouselHero/styles/style.scss +63 -0
  195. package/src/components/CarouselHero/tests/CarouselHero.conformance.test.js +130 -0
  196. package/src/components/CarouselHero/tests/CarouselHero.unit.test.js +346 -0
  197. package/src/components/CarouselHero/tests/CarouselHeroItem.conformance.test.js +135 -0
  198. package/src/components/CarouselHero/tests/CarouselHeroItem.unit.test.js +143 -0
  199. package/src/components/CarouselPromotions/styles/mixins.scss +10 -3
  200. package/src/components/CartTable/FooterPriceColumn.tsx +5 -3
  201. package/src/components/CartTable/Price.tsx +1 -1
  202. package/src/components/Controls/styles/config.scss +2 -2
  203. package/src/components/Controls/tests/Controls.test.js +0 -9
  204. package/src/components/Cover/index.ts +1 -2
  205. package/src/components/Divider/Divider.tsx +2 -16
  206. package/src/components/Divider/styles/config.scss +0 -17
  207. package/src/components/Divider/styles/mixins.scss +8 -10
  208. package/src/components/Divider/styles/style.scss +2 -16
  209. package/src/components/Divider/tests/Divider.conformance.test.js +1 -1
  210. package/src/components/Divider/tests/Divider.unit.test.js +0 -17
  211. package/src/components/Dropdown/styles/mixins.scss +1 -1
  212. package/src/components/Expander/Expander.tsx +4 -2
  213. package/src/components/Expander/styles/style.scss +7 -0
  214. package/src/components/Footer/Footer.tsx +86 -70
  215. package/src/components/Footer/constants.ts +10 -0
  216. package/src/components/Footer/styles/config.scss +1 -0
  217. package/src/components/Footer/styles/mixins.scss +172 -0
  218. package/src/components/Footer/styles/style.scss +48 -0
  219. package/src/components/Footer/tests/Footer.conformance.test.js +133 -8
  220. package/src/components/Footer/tests/Footer.unit.test.js +71 -6
  221. package/src/components/Forms/DatePicker/styles/style.scss +1 -1
  222. package/src/components/Forms/File/styles/mixins.scss +1 -1
  223. package/src/components/Forms/InputStepper/styles/style.scss +0 -66
  224. package/src/components/Forms/RangeSlider/styles/mixins.scss +1 -1
  225. package/src/components/Forms/Select/index.tsx +0 -2
  226. package/src/components/Forms/TextInput/styles/config.scss +1 -1
  227. package/src/components/Forms/styles/config.scss +3 -3
  228. package/src/components/Icon/iconSearchTags.ts +434 -432
  229. package/src/components/Icon/styles/style.scss +15 -0
  230. package/src/components/Icon/tests/Pictogram.unit.test.js +38 -0
  231. package/src/components/IconList/index.ts +2 -3
  232. package/src/components/Link/styles/style.scss +6 -2
  233. package/src/components/Link/tests/Link.conformance.test.js +5 -20
  234. package/src/components/Link/tests/Link.unit.test.js +1 -10
  235. package/src/components/List/index.ts +2 -3
  236. package/src/components/Loader/Loader.tsx +2 -10
  237. package/src/components/Loader/styles/mixins.scss +1 -1
  238. package/src/components/Loader/styles/style.scss +6 -4
  239. package/src/components/Megamenu/MegaMenuIcon.tsx +48 -0
  240. package/src/components/Megamenu/Megamenu.static.ts +600 -0
  241. package/src/components/Megamenu/Megamenu.tsx +799 -356
  242. package/src/components/Megamenu/MegamenuBlog.tsx +309 -0
  243. package/src/components/Megamenu/constants.ts +56 -0
  244. package/src/components/Megamenu/index.ts +2 -5
  245. package/src/components/Megamenu/static.ts +73 -0
  246. package/src/components/Megamenu/styles/config.scss +2 -13
  247. package/src/components/Megamenu/styles/mixins.scss +647 -208
  248. package/src/components/Megamenu/styles/style.scss +173 -61
  249. package/src/components/Modal/Modal.tsx +17 -2
  250. package/src/components/Modal/ModalBody.tsx +29 -14
  251. package/src/components/Modal/ModalProductBody.tsx +52 -0
  252. package/src/components/Modal/ModalProductFooter.tsx +38 -0
  253. package/src/components/Modal/index.ts +2 -0
  254. package/src/components/Modal/styles/config.scss +7 -0
  255. package/src/components/Modal/styles/mixins.scss +121 -14
  256. package/src/components/Modal/styles/style.scss +28 -0
  257. package/src/components/Modal/tests/Modal.unit.test.js +73 -0
  258. package/src/components/Modal/tests/ModalBody.unit.test.js +28 -12
  259. package/src/components/Pagination/Pagination.tsx +2 -2
  260. package/src/components/Pill/Pill.tsx +8 -3
  261. package/src/components/Pill/styles/config.scss +22 -2
  262. package/src/components/Pill/styles/style.scss +7 -3
  263. package/src/components/Pill/tests/Pill.conformance.test.js +7 -3
  264. package/src/components/Pill/tests/Pill.unit.test.js +45 -7
  265. package/src/components/Preview/PreviewGenerator.tsx +78 -34
  266. package/src/components/PromoBanner/PromoBanner.tsx +52 -34
  267. package/src/components/PromoBanner/styles/mixins.scss +37 -20
  268. package/src/components/PromoBanner/styles/style.scss +5 -11
  269. package/src/components/PromoBanner/tests/PromoBanner.conformance.test.js +781 -0
  270. package/src/components/PromoBanner/tests/PromoBanner.unit.test.js +529 -0
  271. package/src/components/PromotionCard/PromotionCard.tsx +13 -12
  272. package/src/components/PromotionCard/tests/PromotionCard.conformance.test.js +567 -0
  273. package/src/components/PromotionCard/tests/PromotionCard.unit.test.js +500 -0
  274. package/src/components/Section/Section.tsx +20 -4
  275. package/src/components/Section/styles/config.scss +18 -16
  276. package/src/components/Section/styles/mixins.scss +16 -13
  277. package/src/components/Section/styles/style.scss +1 -0
  278. package/src/components/Section/tests/Section.conformance.test.js +27 -10
  279. package/src/components/Section/tests/Section.unit.test.js +73 -25
  280. package/src/components/Tag/Tag.tsx +27 -3
  281. package/src/components/Tag/styles/config.scss +31 -0
  282. package/src/components/Tag/styles/mixins.scss +39 -3
  283. package/src/components/Tag/styles/style.scss +28 -2
  284. package/src/components/Tag/tests/Tag.conformance.test.js +19 -1
  285. package/src/components/Tag/tests/Tag.unit.test.js +93 -0
  286. package/src/components/Tile/styles/style.scss +1 -1
  287. package/src/components/index.ts +5 -6
  288. package/src/styles/base/globals.scss +19 -0
  289. package/src/styles/base/styleguide.scss +17 -17
  290. package/src/styles/export/base.js +2 -2
  291. package/src/styles/export/color.js +2 -2
  292. package/src/styles/shame.scss +2 -1
  293. package/src/styles/tokens/base.scss +1 -1
  294. package/src/styles/tokens/color.scss +12 -8
  295. package/src/styles/typography/mixins.scss +3 -2
  296. package/src/styles/utilities/border.scss +1 -1
  297. package/src/styles/utilities/color.scss +113 -20
  298. package/src/styles/utilities/index.scss +1 -0
  299. package/src/styles/utilities/layout.scss +9 -0
  300. package/src/styles/utilities/ordering.scss +44 -0
  301. package/build/components/Accordion/index.js +0 -16
  302. package/build/components/Accordion/index.js.map +0 -1
  303. package/build/components/Accordion/tsconfig.tsbuildinfo +0 -1
  304. package/build/components/Alert/index.js +0 -16
  305. package/build/components/Alert/index.js.map +0 -1
  306. package/build/components/Alert/tsconfig.tsbuildinfo +0 -1
  307. package/build/components/AnchorNavigation/index.js +0 -16
  308. package/build/components/AnchorNavigation/index.js.map +0 -1
  309. package/build/components/AnchorNavigation/style.css +0 -2
  310. package/build/components/AnchorNavigation/style.css.map +0 -1
  311. package/build/components/AnchorNavigation/tsconfig.tsbuildinfo +0 -1
  312. package/build/components/Bar/index.js +0 -16
  313. package/build/components/Bar/index.js.map +0 -1
  314. package/build/components/Bar/tsconfig.tsbuildinfo +0 -1
  315. package/build/components/BlockAction/index.js +0 -16
  316. package/build/components/BlockAction/index.js.map +0 -1
  317. package/build/components/BlockAction/style.css +0 -2
  318. package/build/components/BlockAction/style.css.map +0 -1
  319. package/build/components/BlockAction/tsconfig.tsbuildinfo +0 -1
  320. package/build/components/BodyBanner/index.js +0 -16
  321. package/build/components/BodyBanner/index.js.map +0 -1
  322. package/build/components/BodyBanner/style.css +0 -2
  323. package/build/components/BodyBanner/style.css.map +0 -1
  324. package/build/components/BodyBanner/tsconfig.tsbuildinfo +0 -1
  325. package/build/components/Breadcrumbs/index.js +0 -16
  326. package/build/components/Breadcrumbs/index.js.map +0 -1
  327. package/build/components/Breadcrumbs/tsconfig.tsbuildinfo +0 -1
  328. package/build/components/Button/index.js +0 -16
  329. package/build/components/Button/index.js.map +0 -1
  330. package/build/components/Button/style.css +0 -2
  331. package/build/components/Button/style.css.map +0 -1
  332. package/build/components/Button/tsconfig.tsbuildinfo +0 -1
  333. package/build/components/Buttons/index.js +0 -16
  334. package/build/components/Buttons/index.js.map +0 -1
  335. package/build/components/Buttons/tsconfig.tsbuildinfo +0 -1
  336. package/build/components/Card/index.js +0 -16
  337. package/build/components/Card/index.js.map +0 -1
  338. package/build/components/Card/tsconfig.tsbuildinfo +0 -1
  339. package/build/components/Carousel/index.js +0 -16
  340. package/build/components/Carousel/index.js.map +0 -1
  341. package/build/components/Carousel/style.css +0 -2
  342. package/build/components/Carousel/style.css.map +0 -1
  343. package/build/components/Carousel/tsconfig.tsbuildinfo +0 -1
  344. package/build/components/CarouselPromotions/index.js +0 -16
  345. package/build/components/CarouselPromotions/index.js.map +0 -1
  346. package/build/components/CarouselPromotions/tsconfig.tsbuildinfo +0 -1
  347. package/build/components/CartTable/index.js +0 -16
  348. package/build/components/CartTable/index.js.map +0 -1
  349. package/build/components/CartTable/style.css +0 -2
  350. package/build/components/CartTable/style.css.map +0 -1
  351. package/build/components/CartTable/tsconfig.tsbuildinfo +0 -1
  352. package/build/components/Code/index.js +0 -11
  353. package/build/components/Code/index.js.map +0 -1
  354. package/build/components/Code/style.css +0 -2
  355. package/build/components/Code/style.css.map +0 -1
  356. package/build/components/Code/tsconfig.tsbuildinfo +0 -1
  357. package/build/components/Container/index.js +0 -16
  358. package/build/components/Container/index.js.map +0 -1
  359. package/build/components/Container/tsconfig.tsbuildinfo +0 -1
  360. package/build/components/Controls/index.js +0 -16
  361. package/build/components/Controls/index.js.map +0 -1
  362. package/build/components/Controls/tsconfig.tsbuildinfo +0 -1
  363. package/build/components/Cover/index.js +0 -16
  364. package/build/components/Cover/index.js.map +0 -1
  365. package/build/components/Cover/style.css +0 -2
  366. package/build/components/Cover/style.css.map +0 -1
  367. package/build/components/Cover/tsconfig.tsbuildinfo +0 -1
  368. package/build/components/Divider/index.js +0 -16
  369. package/build/components/Divider/index.js.map +0 -1
  370. package/build/components/Divider/tsconfig.tsbuildinfo +0 -1
  371. package/build/components/DocumentationSidebar/index.js +0 -16
  372. package/build/components/DocumentationSidebar/index.js.map +0 -1
  373. package/build/components/DocumentationSidebar/style.css +0 -2
  374. package/build/components/DocumentationSidebar/style.css.map +0 -1
  375. package/build/components/DocumentationSidebar/tsconfig.tsbuildinfo +0 -1
  376. package/build/components/Dropdown/index.js +0 -16
  377. package/build/components/Dropdown/index.js.map +0 -1
  378. package/build/components/Dropdown/style.css +0 -2
  379. package/build/components/Dropdown/style.css.map +0 -1
  380. package/build/components/Dropdown/tsconfig.tsbuildinfo +0 -1
  381. package/build/components/Expander/index.js +0 -16
  382. package/build/components/Expander/index.js.map +0 -1
  383. package/build/components/Expander/tsconfig.tsbuildinfo +0 -1
  384. package/build/components/FeatureAccordion/index.js +0 -16
  385. package/build/components/FeatureAccordion/index.js.map +0 -1
  386. package/build/components/FeatureAccordion/style.css +0 -2
  387. package/build/components/FeatureAccordion/style.css.map +0 -1
  388. package/build/components/FeatureAccordion/tsconfig.tsbuildinfo +0 -1
  389. package/build/components/Footer/index.js +0 -16
  390. package/build/components/Footer/index.js.map +0 -1
  391. package/build/components/Footer/style.css +0 -2
  392. package/build/components/Footer/style.css.map +0 -1
  393. package/build/components/Footer/tsconfig.tsbuildinfo +0 -1
  394. package/build/components/Forms/index.js +0 -20
  395. package/build/components/Forms/index.js.map +0 -1
  396. package/build/components/Forms/style.css +0 -2
  397. package/build/components/Forms/style.css.map +0 -1
  398. package/build/components/Forms/tsconfig.tsbuildinfo +0 -1
  399. package/build/components/Gauge/index.js +0 -16
  400. package/build/components/Gauge/index.js.map +0 -1
  401. package/build/components/Gauge/tsconfig.tsbuildinfo +0 -1
  402. package/build/components/Grid/index.js +0 -16
  403. package/build/components/Grid/index.js.map +0 -1
  404. package/build/components/Grid/style.css +0 -2
  405. package/build/components/Grid/style.css.map +0 -1
  406. package/build/components/Grid/tsconfig.tsbuildinfo +0 -1
  407. package/build/components/Hero/index.js +0 -16
  408. package/build/components/Hero/index.js.map +0 -1
  409. package/build/components/Hero/style.css +0 -2
  410. package/build/components/Hero/style.css.map +0 -1
  411. package/build/components/Hero/tsconfig.tsbuildinfo +0 -1
  412. package/build/components/Icon/index.js +0 -11
  413. package/build/components/Icon/index.js.map +0 -1
  414. package/build/components/Icon/tsconfig.tsbuildinfo +0 -1
  415. package/build/components/IconList/index.js +0 -16
  416. package/build/components/IconList/index.js.map +0 -1
  417. package/build/components/IconList/style.css +0 -2
  418. package/build/components/IconList/style.css.map +0 -1
  419. package/build/components/IconList/tsconfig.tsbuildinfo +0 -1
  420. package/build/components/Image/index.js +0 -16
  421. package/build/components/Image/index.js.map +0 -1
  422. package/build/components/Image/tsconfig.tsbuildinfo +0 -1
  423. package/build/components/Link/index.js +0 -7
  424. package/build/components/Link/index.js.map +0 -1
  425. package/build/components/Link/tsconfig.tsbuildinfo +0 -1
  426. package/build/components/List/index.js +0 -16
  427. package/build/components/List/index.js.map +0 -1
  428. package/build/components/List/style.css +0 -2
  429. package/build/components/List/style.css.map +0 -1
  430. package/build/components/List/tsconfig.tsbuildinfo +0 -1
  431. package/build/components/Loader/index.js +0 -16
  432. package/build/components/Loader/index.js.map +0 -1
  433. package/build/components/Loader/tsconfig.tsbuildinfo +0 -1
  434. package/build/components/Megamenu/index.js +0 -20
  435. package/build/components/Megamenu/index.js.map +0 -1
  436. package/build/components/Megamenu/style.css +0 -2
  437. package/build/components/Megamenu/style.css.map +0 -1
  438. package/build/components/Megamenu/tsconfig.tsbuildinfo +0 -1
  439. package/build/components/Modal/index.js +0 -20
  440. package/build/components/Modal/index.js.map +0 -1
  441. package/build/components/Modal/style.css +0 -2
  442. package/build/components/Modal/style.css.map +0 -1
  443. package/build/components/Modal/tsconfig.tsbuildinfo +0 -1
  444. package/build/components/Pagination/index.js +0 -16
  445. package/build/components/Pagination/index.js.map +0 -1
  446. package/build/components/Pagination/tsconfig.tsbuildinfo +0 -1
  447. package/build/components/Pill/index.js +0 -16
  448. package/build/components/Pill/index.js.map +0 -1
  449. package/build/components/Pill/tsconfig.tsbuildinfo +0 -1
  450. package/build/components/Preview/index.js +0 -77
  451. package/build/components/Preview/index.js.map +0 -1
  452. package/build/components/Preview/style.css +0 -2
  453. package/build/components/Preview/style.css.map +0 -1
  454. package/build/components/Preview/tsconfig.tsbuildinfo +0 -1
  455. package/build/components/Progress/index.js +0 -16
  456. package/build/components/Progress/index.js.map +0 -1
  457. package/build/components/Progress/tsconfig.tsbuildinfo +0 -1
  458. package/build/components/PromoBanner/index.js +0 -16
  459. package/build/components/PromoBanner/index.js.map +0 -1
  460. package/build/components/PromoBanner/style.css +0 -2
  461. package/build/components/PromoBanner/style.css.map +0 -1
  462. package/build/components/PromoBanner/tsconfig.tsbuildinfo +0 -1
  463. package/build/components/PromotionCard/index.js +0 -16
  464. package/build/components/PromotionCard/index.js.map +0 -1
  465. package/build/components/PromotionCard/tsconfig.tsbuildinfo +0 -1
  466. package/build/components/Section/index.js +0 -16
  467. package/build/components/Section/index.js.map +0 -1
  468. package/build/components/Section/tsconfig.tsbuildinfo +0 -1
  469. package/build/components/Skeleton/index.js +0 -16
  470. package/build/components/Skeleton/index.js.map +0 -1
  471. package/build/components/Skeleton/tsconfig.tsbuildinfo +0 -1
  472. package/build/components/SkipLink/index.js +0 -16
  473. package/build/components/SkipLink/index.js.map +0 -1
  474. package/build/components/SkipLink/tsconfig.tsbuildinfo +0 -1
  475. package/build/components/Stepbar/index.js +0 -16
  476. package/build/components/Stepbar/index.js.map +0 -1
  477. package/build/components/Stepbar/tsconfig.tsbuildinfo +0 -1
  478. package/build/components/Sticker/index.js +0 -16
  479. package/build/components/Sticker/index.js.map +0 -1
  480. package/build/components/Sticker/tsconfig.tsbuildinfo +0 -1
  481. package/build/components/Table/index.js +0 -16
  482. package/build/components/Table/index.js.map +0 -1
  483. package/build/components/Table/style.css +0 -2
  484. package/build/components/Table/style.css.map +0 -1
  485. package/build/components/Table/tsconfig.tsbuildinfo +0 -1
  486. package/build/components/Tabs/index.js +0 -16
  487. package/build/components/Tabs/index.js.map +0 -1
  488. package/build/components/Tabs/tsconfig.tsbuildinfo +0 -1
  489. package/build/components/Tag/index.js +0 -16
  490. package/build/components/Tag/index.js.map +0 -1
  491. package/build/components/Tag/tsconfig.tsbuildinfo +0 -1
  492. package/build/components/Testimonial/index.js +0 -16
  493. package/build/components/Testimonial/index.js.map +0 -1
  494. package/build/components/Testimonial/tsconfig.tsbuildinfo +0 -1
  495. package/build/components/Tile/index.js +0 -16
  496. package/build/components/Tile/index.js.map +0 -1
  497. package/build/components/Tile/tsconfig.tsbuildinfo +0 -1
  498. package/build/components/Tooltip/index.js +0 -16
  499. package/build/components/Tooltip/index.js.map +0 -1
  500. package/build/components/Tooltip/style.css +0 -2
  501. package/build/components/Tooltip/style.css.map +0 -1
  502. package/build/components/Tooltip/tsconfig.tsbuildinfo +0 -1
  503. package/build/components/static.css +0 -2
  504. package/build/components/static.css.map +0 -1
  505. package/build/components/static.js +0 -10
  506. package/build/components/static.js.map +0 -1
  507. package/build/components/types/src/components/Hero/HeroPlayground.d.ts +0 -2
  508. package/build/components/types/src/components/Megamenu/MegamenuDropdown.d.ts +0 -17
  509. package/src/components/Accordion/Accordion.mdx +0 -222
  510. package/src/components/Alert/Alert.mdx +0 -141
  511. package/src/components/Bar/Bar.mdx +0 -203
  512. package/src/components/BlockAction/BlockAction.mdx +0 -244
  513. package/src/components/BodyBanner/BodyBanner.mdx +0 -268
  514. package/src/components/Breadcrumbs/Breadcrumbs.mdx +0 -84
  515. package/src/components/Button/Button.mdx +0 -273
  516. package/src/components/Buttons/Buttons.mdx +0 -39
  517. package/src/components/Card/Card.mdx +0 -334
  518. package/src/components/Carousel/Carousel.mdx +0 -159
  519. package/src/components/CarouselPromotions/CarouselPromotions.mdx +0 -246
  520. package/src/components/CartTable/CartTable.mdx +0 -129
  521. package/src/components/Container/Container.mdx +0 -73
  522. package/src/components/Controls/Controls.mdx +0 -469
  523. package/src/components/Cover/Cover.mdx +0 -87
  524. package/src/components/Divider/Divider.mdx +0 -65
  525. package/src/components/Dropdown/Dropdown.mdx +0 -260
  526. package/src/components/Expander/Expander.mdx +0 -153
  527. package/src/components/FeatureAccordion/FeatureAccordion.mdx +0 -33
  528. package/src/components/Forms/Autocomplete/Autocomplete.mdx +0 -198
  529. package/src/components/Forms/Checkbox/Checkbox.mdx +0 -139
  530. package/src/components/Forms/DatePicker/DatePicker.mdx +0 -149
  531. package/src/components/Forms/Field/Field.mdx +0 -383
  532. package/src/components/Forms/Fieldset/Fieldset.mdx +0 -178
  533. package/src/components/Forms/File/File.mdx +0 -88
  534. package/src/components/Forms/FormTooltip.mdx +0 -51
  535. package/src/components/Forms/Forms.mdx +0 -48
  536. package/src/components/Forms/Group/Group.mdx +0 -146
  537. package/src/components/Forms/Hint/Hint.mdx +0 -40
  538. package/src/components/Forms/InputStepper/InputStepper.mdx +0 -147
  539. package/src/components/Forms/Label/Label.mdx +0 -95
  540. package/src/components/Forms/Message/Message.mdx +0 -40
  541. package/src/components/Forms/Radio/Radio.mdx +0 -98
  542. package/src/components/Forms/RangeSlider/RangeSlider.mdx +0 -304
  543. package/src/components/Forms/Select/Select.mdx +0 -106
  544. package/src/components/Forms/TextArea/TextArea.mdx +0 -109
  545. package/src/components/Forms/TextInput/TextInput.mdx +0 -153
  546. package/src/components/Gauge/Gauge.mdx +0 -35
  547. package/src/components/Grid/Grid.mdx +0 -320
  548. package/src/components/Hero/Hero.mdx +0 -168
  549. package/src/components/Hero/HeroPlayground.tsx +0 -369
  550. package/src/components/Icon/Icon.mdx +0 -172
  551. package/src/components/IconList/IconList.mdx +0 -53
  552. package/src/components/Image/Image.mdx +0 -175
  553. package/src/components/Link/Link.mdx +0 -224
  554. package/src/components/List/List.mdx +0 -216
  555. package/src/components/Loader/Loader.mdx +0 -148
  556. package/src/components/Megamenu/MegamenuDropdown.tsx +0 -64
  557. package/src/components/Modal/Modal.mdx +0 -565
  558. package/src/components/Pagination/Pagination.mdx +0 -45
  559. package/src/components/Pill/Pill.mdx +0 -41
  560. package/src/components/Progress/Progress.mdx +0 -119
  561. package/src/components/PromotionCard/PromotionCard.mdx +0 -191
  562. package/src/components/Section/Section.mdx +0 -397
  563. package/src/components/Skeleton/Skeleton.mdx +0 -90
  564. package/src/components/SkipLink/SkipLink.mdx +0 -23
  565. package/src/components/Stepbar/Stepbar.mdx +0 -137
  566. package/src/components/Sticker/Sticker.mdx +0 -50
  567. package/src/components/Table/Table.mdx +0 -199
  568. package/src/components/Tabs/Tabs.mdx +0 -373
  569. package/src/components/Tag/Tag.mdx +0 -52
  570. package/src/components/Testimonial/Testimonial.mdx +0 -41
  571. package/src/components/Tile/Tile.mdx +0 -163
  572. package/src/components/Tooltip/Tooltip.mdx +0 -227
@@ -1,97 +1,209 @@
1
- @use "../../../styles/tools/generate";
2
- @use "../../../styles/tools/convert";
3
- @use "./config" as *;
4
- @use "./mixins" as mixins;
5
- @use "../../../styles/tokens/color";
6
- @use "../../../styles/tokens/space";
7
- @use "../../../styles/tokens/breakpoint";
1
+ @use "../../Container/styles/mixins" as container;
2
+ @use "../../Accordion/styles/mixins" as accordion;
3
+ @use "../../../styles/typography/mixins" as typography;
8
4
 
9
- @layer components {
10
- // =============================================================================
11
- // MEGAMENU BASE
12
- // =============================================================================
5
+ @use "./mixins";
6
+ @use "./config";
13
7
 
14
- .megamenu {
15
- @include mixins.megamenu();
8
+ // Modifiers global states and resets
9
+ #{config.$class-root} {
10
+ @include mixins.globals;
11
+ }
12
+
13
+ #{config.$class-root},
14
+ #{config.$class-root}.is-light {
15
+ @include mixins.light-vars;
16
+ }
17
+
18
+ #{config.$class-root}.is-dark {
19
+ @include mixins.dark-vars;
20
+ }
21
+
22
+ // Component
23
+ #{config.$class-root} {
24
+ @include mixins.base;
25
+
26
+ &__nav {
27
+ @include mixins.nav;
28
+
29
+ &-item {
30
+ @include mixins.nav-item;
31
+ }
32
+
33
+ &--vertical {
34
+ @include mixins.nav-vertical;
35
+ }
36
+
37
+ &--space-small {
38
+ @include mixins.nav-space-small;
39
+ }
40
+
41
+ &-dropdown {
42
+ @include mixins.nav-dropdown;
43
+
44
+ &.is-visible {
45
+ opacity: 1;
46
+ }
47
+ }
16
48
 
17
- &__visible {
18
- @include mixins.megamenu-visible();
49
+ &-logo {
50
+ @include mixins.nav-logo;
19
51
  }
52
+
53
+ &-link {
54
+ @include mixins.nav-link;
55
+ }
56
+
57
+ &-cart-icon {
58
+ @include mixins.nav-cart-icon;
59
+ }
60
+
61
+ &-button {
62
+ @include mixins.nav-button;
63
+
64
+ &--indicator {
65
+ @include mixins.nav-button-indicator;
66
+ }
67
+ }
68
+
69
+ &-icon {
70
+ @include mixins.nav-icon;
71
+ }
72
+
73
+ &-spacer {
74
+ @include mixins.nav-spacer;
75
+ }
76
+ }
77
+
78
+ &__subnav {
79
+ @include mixins.subnav;
80
+
81
+ &-item {
82
+ @include mixins.subnav-item;
83
+ }
84
+ }
85
+
86
+ &__top {
87
+ @include mixins.top;
20
88
  }
21
89
 
22
- // =============================================================================
23
- // HEADER & NAVIGATION
24
- // =============================================================================
90
+ &__main {
91
+ @include mixins.main;
92
+ }
25
93
 
26
- .megamenu-header {
27
- @include mixins.megamenu-header();
94
+ &__submain {
95
+ @include mixins.submain;
28
96
  }
29
97
 
30
- .megamenu-divider {
31
- @include mixins.megamenu-divider();
98
+ &__mobile {
99
+ @include mixins.mobile;
100
+
101
+ &-overlay {
102
+ @include mixins.mobile-overlay;
103
+ }
104
+
105
+ &-wrapper {
106
+ @include mixins.mobile-wrapper;
107
+ }
108
+
109
+ &-header {
110
+ @include mixins.mobile-header;
111
+ }
112
+
113
+ &-body {
114
+ @include mixins.mobile-body;
115
+ }
32
116
  }
33
117
 
34
- .megamenu-content {
35
- @include mixins.megamenu-content();
118
+ &__container {
119
+ @include mixins.container;
36
120
  }
37
121
 
38
- // =============================================================================
39
- // SIDEBAR & OVERLAY
40
- // =============================================================================
122
+ &__grid {
123
+ @include mixins.grid;
124
+ }
41
125
 
42
- .megamenu-sidebar {
43
- @include mixins.megamenu-sidebar();
126
+ &__card {
127
+ @include mixins.card;
44
128
  }
45
129
 
46
- .megamenu-sidebar-header {
47
- @include mixins.megamenu-sidebar-header();
130
+ &__text--large {
131
+ @include mixins.text-large;
48
132
  }
49
133
 
50
- .megamenu-overlay {
51
- @include mixins.megamenu-overlay();
134
+ &-icon {
135
+ @include mixins.icon;
52
136
  }
53
137
 
54
- // =============================================================================
55
- // NAVIGATION LINKS
56
- // =============================================================================
138
+ &__overlay {
139
+ @include mixins.overlay;
140
+ }
57
141
 
58
- .megamenu-link {
59
- @include mixins.megamenu-link();
142
+ &-spacer {
143
+ @include mixins.spacer;
60
144
 
61
- &__full {
62
- @include mixins.megamenu-dropdown-button();
63
- &--icon {
64
- @include mixins.megamenu-dropdown-button-icon();
65
- }
145
+ &--small {
146
+ @include mixins.spacer-small;
66
147
  }
148
+ }
67
149
 
68
- &__small {
69
- @include mixins.megamenu-link-small();
70
- }
150
+ &__accordion {
151
+ @include mixins.accordion;
152
+ }
71
153
 
72
- &.is-active,
73
- &__small.is-active {
74
- @include mixins.megamenu-link__active();
75
- }
154
+ &__accordion-item {
155
+ @include mixins.accordion-item();
76
156
  }
77
157
 
78
- .megamenu-logo {
79
- @include mixins.megamenu-logo();
158
+ &__accordion-header {
159
+ @include accordion.header;
80
160
  }
81
161
 
82
- .megamenu-icon {
83
- @include mixins.megamenu-icon();
162
+ &__accordion-button {
163
+ @include mixins.accordion-button;
84
164
  }
85
165
 
86
- // =============================================================================
87
- // DROPDOWN FUNCTIONALITY
88
- // =============================================================================
166
+ &__accordion-title {
167
+ @include mixins.accordion-title;
168
+ }
89
169
 
90
- .megamenu-dropdown {
91
- @include mixins.megamenu-dropdown();
170
+ &__accordion-icon {
171
+ @include mixins.accordion-icon;
172
+ }
92
173
 
93
- &__active {
94
- @include mixins.megamenu-dropdown-active();
174
+ &__accordion-body {
175
+ @include mixins.accordion-body;
176
+ }
177
+
178
+ &__input {
179
+ @include mixins.input;
180
+ }
181
+
182
+ &__tag {
183
+ @include mixins.tag;
184
+
185
+ &--transparent {
186
+ @include mixins.tag-transparent;
95
187
  }
96
188
  }
189
+
190
+ &__list--inline {
191
+ @include typography.list-inline;
192
+ }
193
+
194
+ &__list--gap-small {
195
+ @include mixins.list-gap-small;
196
+ }
197
+
198
+ &--hide-md-down {
199
+ @include mixins.hide-md-down;
200
+ }
201
+
202
+ &--hide-lg-up {
203
+ @include mixins.hide-lg-up;
204
+ }
205
+
206
+ &--align-center {
207
+ text-align: center !important;
208
+ }
97
209
  }
@@ -51,6 +51,12 @@ interface ModalProps extends React.HTMLAttributes<HTMLDivElement> {
51
51
  className?: string;
52
52
  /** Color scheme for the modal */
53
53
  colorScheme?: "dark" | "light";
54
+ /** Disables header paddings */
55
+ disableHeaderSpacing?: boolean;
56
+ /** Disables body paddings */
57
+ disableBodySpacing?: boolean;
58
+ /** Disables footer paddings */
59
+ disableFooterSpacing?: boolean;
54
60
  }
55
61
 
56
62
  const defaultProps = {
@@ -78,6 +84,9 @@ const Modal: React.FC<ModalProps> = ({
78
84
  renderFooter,
79
85
  fullHeight,
80
86
  colorScheme,
87
+ disableHeaderSpacing,
88
+ disableBodySpacing,
89
+ disableFooterSpacing,
81
90
  ...other
82
91
  }) => {
83
92
  const [modalRef, instance] = useStatic(ModalStatic);
@@ -125,7 +134,7 @@ const Modal: React.FC<ModalProps> = ({
125
134
  {}
126
135
  <div
127
136
  className={cx(`${CLASS_ROOT}__header`, {
128
- [`${CLASS_ROOT}__header--no-spacing`]: !!renderHeader,
137
+ [`${CLASS_ROOT}__header--no-spacing`]: disableHeaderSpacing,
129
138
  })}
130
139
  >
131
140
  {renderHeader ? (
@@ -140,11 +149,17 @@ const Modal: React.FC<ModalProps> = ({
140
149
  {renderBody ? (
141
150
  renderBody()
142
151
  ) : (
143
- <ModalBody withTopPadding={!!renderHeader}>{children}</ModalBody>
152
+ <ModalBody
153
+ disableSpacing={disableBodySpacing}
154
+ withTopPadding={!disableBodySpacing && !!renderHeader}
155
+ >
156
+ {children}
157
+ </ModalBody>
144
158
  )}
145
159
  <div
146
160
  className={cx(`${CLASS_ROOT}__footer`, {
147
161
  [`${CLASS_ROOT}__footer--sticky`]: hasStickyFooter,
162
+ [`${CLASS_ROOT}__footer--no-spacing`]: disableFooterSpacing,
148
163
  })}
149
164
  >
150
165
  {renderFooter ? (
@@ -1,26 +1,36 @@
1
1
  import React from "react";
2
2
  import cx from "classnames";
3
3
 
4
- export const colors = [
5
- "white",
6
- "gray",
7
- "orange",
8
- "orange-dark",
9
- "black",
10
- "blue",
11
- "green",
12
- "pink",
13
- "violet",
14
- "yellow",
4
+ export const modalBodyColors = [
5
+ "background-primary",
6
+ "background-secondary",
7
+ "background-contrast",
8
+ "background-accent",
9
+ "background-accent1-blog",
10
+ "background-accent2-blog",
11
+ "surface-primary",
12
+ "surface-secondary",
13
+ "surface-tertiary",
14
+ "surface-subtle",
15
+ "surface-moderate",
16
+ "surface-contrast",
17
+ "surface-accent",
18
+ "fill-subtle",
19
+ "fill-accent1",
20
+ "fill-accent2",
21
+ "fill-accent3",
22
+ "fill-accent4",
23
+ "fill-accent5",
15
24
  ] as const;
16
25
 
17
- export type BodyColor = (typeof colors)[number];
26
+ export type ModalBodyColor = (typeof modalBodyColors)[number];
18
27
 
19
28
  interface ModalBodyProps extends React.HTMLAttributes<HTMLDivElement> {
20
- color?: BodyColor;
29
+ color?: ModalBodyColor;
21
30
  className?: string;
22
31
  children?: React.ReactNode;
23
32
  withTopPadding?: boolean;
33
+ disableSpacing?: boolean;
24
34
  }
25
35
 
26
36
  const CLASS_ROOT = "modal__body";
@@ -30,13 +40,18 @@ const ModalBody: React.FC<ModalBodyProps> = ({
30
40
  className,
31
41
  children,
32
42
  withTopPadding,
43
+ disableSpacing,
33
44
  ...other
34
45
  }) => (
35
46
  <div
36
47
  className={cx(CLASS_ROOT, className, {
37
- [`bg-${color}`]: color,
48
+ ...(color && color !== "background-contrast" ? { [color]: true } : {}),
49
+ ...(color === "background-contrast"
50
+ ? { [`${color} text-inverse`]: true }
51
+ : {}),
38
52
  [`${CLASS_ROOT}--colorful`]: color,
39
53
  [`${CLASS_ROOT}--with-top-padding`]: withTopPadding,
54
+ [`${CLASS_ROOT}--no-spacing`]: disableSpacing,
40
55
  })}
41
56
  {...other}
42
57
  >
@@ -0,0 +1,52 @@
1
+ import React from "react";
2
+ import cx from "classnames";
3
+
4
+ interface ModalProductBodyProps extends React.HTMLAttributes<HTMLDivElement> {
5
+ subtitleSection?: React.ReactNode;
6
+ listSection?: React.ReactNode;
7
+ benefitsSection?: React.ReactNode;
8
+ extraPaymentsSection?: React.ReactNode;
9
+ }
10
+
11
+ export const CLASS_ROOT = "modal__product-body";
12
+
13
+ const ModalProductBody = React.forwardRef<
14
+ HTMLDivElement,
15
+ ModalProductBodyProps
16
+ >(
17
+ (
18
+ {
19
+ className,
20
+ subtitleSection,
21
+ listSection,
22
+ benefitsSection,
23
+ extraPaymentsSection,
24
+ ...other
25
+ },
26
+ ref,
27
+ ) => {
28
+ const classes = cx(CLASS_ROOT, className);
29
+
30
+ const subtitleSectionClass = `${CLASS_ROOT}-subtitle-section`;
31
+ const listSectionClass = `${CLASS_ROOT}-list-section`;
32
+ const accordionSectionClass = `${CLASS_ROOT}-accordion-section`;
33
+
34
+ return (
35
+ <div className={classes} ref={ref} {...other}>
36
+ {subtitleSection && (
37
+ <div className={subtitleSectionClass}>{subtitleSection}</div>
38
+ )}
39
+ {listSection && <div className={listSectionClass}>{listSection}</div>}
40
+ {benefitsSection && (
41
+ <div className={accordionSectionClass}>{benefitsSection}</div>
42
+ )}
43
+ {extraPaymentsSection && (
44
+ <div className={listSectionClass}>{extraPaymentsSection}</div>
45
+ )}
46
+ </div>
47
+ );
48
+ },
49
+ );
50
+ ModalProductBody.displayName = "ModalProductBody";
51
+
52
+ export { ModalProductBody };
@@ -0,0 +1,38 @@
1
+ import React from "react";
2
+ import cx from "classnames";
3
+
4
+ interface ModalProductFooterProps extends React.HTMLAttributes<HTMLDivElement> {
5
+ image?: React.ReactNode;
6
+ /** Use small spacing */
7
+ space?: "small";
8
+ button?: React.ReactNode;
9
+ }
10
+
11
+ export const CLASS_ROOT = "modal__product";
12
+
13
+ const ModalProductFooter = React.forwardRef<
14
+ HTMLDivElement,
15
+ ModalProductFooterProps
16
+ >(({ className, children, button, image, space, ...other }, ref) => {
17
+ const classes = cx(
18
+ `${CLASS_ROOT}-footer`,
19
+ // {
20
+ // [`${CLASS_ROOT}-footer--space-small`]: space === "small",
21
+ // },
22
+ className,
23
+ );
24
+
25
+ const contentClasses = `${CLASS_ROOT}-footer-content`;
26
+ const buttonClasses = `${CLASS_ROOT}-footer-button`;
27
+
28
+ return (
29
+ <div className={classes} ref={ref} {...other}>
30
+ <div className={contentClasses}>{children}</div>
31
+ <div className={buttonClasses}>{button}</div>
32
+ </div>
33
+ );
34
+ });
35
+
36
+ ModalProductFooter.displayName = "ModalProductFooter";
37
+
38
+ export { ModalProductFooter };
@@ -3,3 +3,5 @@ export { ModalBody } from "./ModalBody";
3
3
  export { ModalTitle } from "./ModalTitle";
4
4
  export { ModalCloseButton } from "./ModalCloseButton";
5
5
  export { ModalProductHeader } from "./ModalProductHeader";
6
+ export { ModalProductFooter } from "./ModalProductFooter";
7
+ export { ModalProductBody } from "./ModalProductBody";
@@ -39,3 +39,10 @@ $spacing: (
39
39
  ),
40
40
  large: (), // same as default,
41
41
  );
42
+
43
+ $spacing-product-footer: (
44
+ default: (
45
+ default: space.get("medium") space.get("small") convert.to-rem(40px),
46
+ md: space.get("medium") space.get("large") space.get("large") space.get("large"),
47
+ )
48
+ )
@@ -134,14 +134,16 @@
134
134
  @mixin body-spacing($size, $sizes: config.$spacing) {
135
135
  $spacing: map.get($sizes, $size);
136
136
 
137
- @each $breakpoint, $space in $spacing {
138
- @include breakpoint.get($breakpoint) {
139
- padding-left: $space;
140
- padding-right: $space;
137
+ &:not(.modal__body--no-spacing) {
138
+ @each $breakpoint, $space in $spacing {
139
+ @include breakpoint.get($breakpoint) {
140
+ padding-left: $space;
141
+ padding-right: $space;
142
+ }
141
143
  }
142
144
  }
143
145
 
144
- &:not(.modal__body--colorful) {
146
+ &:not(.modal__body--colorful):not(.modal__body--no-spacing) {
145
147
  @each $breakpoint, $space in $spacing {
146
148
  @include breakpoint.get($breakpoint) {
147
149
  padding-bottom: $space;
@@ -184,21 +186,27 @@
184
186
  > *:last-child {
185
187
  margin-bottom: 0;
186
188
  }
189
+
190
+ .divider {
191
+ padding: 0;
192
+ }
187
193
  }
188
194
 
189
195
  @mixin footer-spacing($size, $sizes: config.$spacing) {
190
196
  $spacing: map.get($sizes, $size);
191
197
 
192
- @each $breakpoint, $space in $spacing {
193
- @include breakpoint.get($breakpoint) {
194
- padding-top: 0;
195
- padding-right: $space;
196
- padding-bottom: $space;
197
- padding-left: $space;
198
+ &:not(.modal__footer--no-spacing) {
199
+ @each $breakpoint, $space in $spacing {
200
+ @include breakpoint.get($breakpoint) {
201
+ padding-top: 0;
202
+ padding-right: $space;
203
+ padding-bottom: $space;
204
+ padding-left: $space;
198
205
 
199
- @at-root {
200
- .modal__body--colorful + .modal__footer {
201
- padding: $space !important;
206
+ @at-root {
207
+ .modal__body--colorful + .modal__footer {
208
+ padding: $space !important;
209
+ }
202
210
  }
203
211
  }
204
212
  }
@@ -227,8 +235,107 @@
227
235
  }
228
236
  }
229
237
 
238
+ @mixin modal-product-footer() {
239
+ display: flex;
240
+ align-items: center;
241
+ gap: convert.to-rem(20px);
242
+
243
+ @include breakpoint.get("md") {
244
+ gap: convert.to-rem(30px);
245
+ }
246
+
247
+ @include breakpoint.get("xs", "down") {
248
+ flex-direction: column;
249
+ }
250
+
251
+ @each $breakpoint, $value in map.get(config.$spacing-product-footer, "default") {
252
+ @include breakpoint.get($breakpoint) {
253
+ padding: $value;
254
+ }
255
+ }
256
+ }
257
+
258
+ @mixin modal-product-footer-content() {
259
+ flex: 1 0 auto;
260
+ display: flex;
261
+ flex-direction: column;
262
+ gap: convert.to-rem(7px);
263
+
264
+ @include breakpoint.get("xs", "down") {
265
+ flex-direction: row-reverse;
266
+ align-items: center;
267
+ width: 100%;
268
+ justify-content: space-between;
269
+ }
270
+ }
271
+
272
+ @mixin modal-product-footer-button() {
273
+ @include breakpoint.get("xs", "down") {
274
+ width: 100%;
275
+
276
+ .btn {
277
+ width: 100%;
278
+ }
279
+ }
280
+ }
281
+
230
282
  @mixin modal-product-image() {
231
283
  object-fit: cover;
232
284
  object-position: left;
233
285
  max-width: convert.to-rem(125px);
234
286
  }
287
+
288
+ @mixin modal-product-body-subtitle-section() {
289
+ padding: convert.to-rem(15px) space.get();
290
+
291
+ @include breakpoint.get('md') {
292
+ padding: convert.to-rem(20px) space.get('large');
293
+ }
294
+ }
295
+
296
+ @mixin modal-product-body-list-section() {
297
+ padding: 0 space.get();
298
+
299
+ @include breakpoint.get('md') {
300
+ padding: space.get('small') space.get('large');
301
+ }
302
+
303
+ ul {
304
+ margin-bottom: 0;
305
+ padding: space.get('small') space.get() space.get('small') convert.to-rem(18px);
306
+ @include breakpoint.get('md') {
307
+ padding-right: 0;
308
+ }
309
+ }
310
+
311
+ li {
312
+ margin-bottom: convert.to-rem(15px);
313
+
314
+ &:last-child {
315
+ margin-bottom: 0;
316
+ }
317
+ }
318
+ }
319
+
320
+ @mixin modal-product-body-accordion-section() {
321
+ padding: convert.to-rem(15px) space.get();
322
+
323
+ .accordion__body {
324
+ padding: 0 space.get() convert.to-rem(15px) space.get('small');
325
+ margin-bottom: 0;
326
+ }
327
+
328
+ @include breakpoint.get('md') {
329
+ padding: space.get('small') space.get('large');
330
+
331
+ .accordion__body {
332
+ padding: 0 space.get('large') convert.to-rem(15px) space.get('small');
333
+ }
334
+ }
335
+ }
336
+
337
+ @mixin modal-product-body-section-title() {
338
+ margin-bottom: 0 !important;
339
+
340
+ padding: space.get('small') 0;
341
+ }
@@ -120,4 +120,32 @@
120
120
  .modal__product-header--space-small .modal__product-content {
121
121
  @include mixins.modal-product-header(space.get());
122
122
  }
123
+
124
+ .modal__product-footer {
125
+ @include mixins.modal-product-footer();
126
+ }
127
+
128
+ .modal__product-footer-content {
129
+ @include mixins.modal-product-footer-content();
130
+ }
131
+
132
+ .modal__product-footer-button {
133
+ @include mixins.modal-product-footer-button();
134
+ }
135
+
136
+ .modal__product-body-subtitle-section {
137
+ @include mixins.modal-product-body-subtitle-section();
138
+ }
139
+
140
+ .modal__product-body-list-section {
141
+ @include mixins.modal-product-body-list-section();
142
+ }
143
+
144
+ .modal__product-body-accordion-section {
145
+ @include mixins.modal-product-body-accordion-section();
146
+ }
147
+
148
+ .modal__product-body-section-title {
149
+ @include mixins.modal-product-body-section-title();
150
+ }
123
151
  }