@primer/react-brand 0.68.0-rc.b6d410ef → 0.68.1-rc.a7b95aa2

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 (486) hide show
  1. package/esm/Accordion/Accordion.d.ts +5 -2
  2. package/esm/Accordion/Accordion.d.ts.map +1 -1
  3. package/esm/Accordion/Accordion.js +92 -50
  4. package/esm/Accordion/Accordion.js.map +1 -1
  5. package/esm/Accordion/Accordion.module-COckontb.css +1 -0
  6. package/esm/Accordion/Accordion.module.js +7 -5
  7. package/esm/Accordion/Accordion.module.js.map +1 -1
  8. package/esm/Box/Box.d.ts +1 -1
  9. package/esm/Box/Box.d.ts.map +1 -1
  10. package/esm/Box/Box.module-ZdcUfGo-.css +1 -0
  11. package/esm/Box/Box.module.js +81 -1
  12. package/esm/Box/Box.module.js.map +1 -1
  13. package/esm/Card/{Card.module-OxFQdnTA.css → Card.module-DZZ8DN76.css} +1 -1
  14. package/esm/Card/Card.module.js +1 -1
  15. package/esm/Card/Card.module.js.map +1 -1
  16. package/esm/FAQ/FAQ.d.ts +2 -1
  17. package/esm/FAQ/FAQ.d.ts.map +1 -1
  18. package/esm/Hero/{Hero.module-DvYo_AtL.css → Hero.module-Cy82CEW3.css} +1 -1
  19. package/esm/Hero/Hero.module.js +1 -1
  20. package/esm/Hero/Hero.module.js.map +1 -1
  21. package/esm/LogoSuite/LogoSuite.js +1 -1
  22. package/esm/LogoSuite/LogoSuite.module-69Mthqju.css +1 -0
  23. package/esm/LogoSuite/LogoSuite.module.js +1 -1
  24. package/esm/LogoSuite/LogoSuite.module.js.map +1 -1
  25. package/esm/MediaPlaylist/MediaPlaylist.d.ts +77 -0
  26. package/esm/MediaPlaylist/MediaPlaylist.d.ts.map +1 -0
  27. package/esm/MediaPlaylist/MediaPlaylist.js +172 -0
  28. package/esm/MediaPlaylist/MediaPlaylist.js.map +1 -0
  29. package/esm/MediaPlaylist/MediaPlaylist.module-BU39a4-W.css +1 -0
  30. package/esm/MediaPlaylist/MediaPlaylist.module.js +30 -0
  31. package/esm/MediaPlaylist/MediaPlaylist.module.js.map +1 -0
  32. package/esm/MediaPlaylist/index.d.ts +2 -0
  33. package/esm/MediaPlaylist/index.d.ts.map +1 -0
  34. package/esm/MediaPlaylist/useMediaPlaylist.d.ts +84 -0
  35. package/esm/MediaPlaylist/useMediaPlaylist.d.ts.map +1 -0
  36. package/esm/MediaPlaylist/useMediaPlaylist.js +114 -0
  37. package/esm/MediaPlaylist/useMediaPlaylist.js.map +1 -0
  38. package/esm/Pagination/Pagination.d.ts +2 -5
  39. package/esm/Pagination/Pagination.d.ts.map +1 -1
  40. package/esm/Pagination/Pagination.js +94 -52
  41. package/esm/Pagination/Pagination.js.map +1 -1
  42. package/esm/Pagination/Pagination.module-DmKBSq7s.css +1 -0
  43. package/esm/Pagination/Pagination.module.js +9 -3
  44. package/esm/Pagination/Pagination.module.js.map +1 -1
  45. package/esm/Pagination/model.d.ts +2 -2
  46. package/esm/Pagination/model.d.ts.map +1 -1
  47. package/esm/Pagination/model.js.map +1 -1
  48. package/esm/PricingOptions/PricingOptions.d.ts +2 -1
  49. package/esm/PricingOptions/PricingOptions.d.ts.map +1 -1
  50. package/esm/PricingOptions/PricingOptions.js +46 -45
  51. package/esm/PricingOptions/PricingOptions.js.map +1 -1
  52. package/esm/Stack/Stack.d.ts +1 -1
  53. package/esm/Stack/Stack.d.ts.map +1 -1
  54. package/esm/Stack/Stack.module-BlpDkOqI.css +1 -0
  55. package/esm/Stack/Stack.module.js +17 -1
  56. package/esm/Stack/Stack.module.js.map +1 -1
  57. package/esm/SubNav/SubNav.d.ts.map +1 -1
  58. package/esm/SubNav/SubNav.js +17 -16
  59. package/esm/SubNav/SubNav.js.map +1 -1
  60. package/esm/SubNav/SubNav.module-D-gLr0JO.css +1 -0
  61. package/esm/SubNav/SubNav.module.js +1 -1
  62. package/esm/SubNav/SubNav.module.js.map +1 -1
  63. package/esm/Tabs/{Tabs.module-D8VFUDRe.css → Tabs.module-CK_p1qwC.css} +1 -1
  64. package/esm/Tabs/Tabs.module.js +1 -1
  65. package/esm/Tabs/Tabs.module.js.map +1 -1
  66. package/esm/TextCursorAnimation/TextCursorAnimation.d.ts +1 -0
  67. package/esm/TextCursorAnimation/TextCursorAnimation.d.ts.map +1 -1
  68. package/esm/TextCursorAnimation/TextCursorAnimation.js +1 -0
  69. package/esm/TextCursorAnimation/TextCursorAnimation.js.map +1 -1
  70. package/esm/TextCursorAnimation/{TextCursorAnimation.module-CkVDXNW5.css → TextCursorAnimation.module-BJLhwKrK.css} +1 -1
  71. package/esm/TextCursorAnimation/TextCursorAnimation.module.js +1 -1
  72. package/esm/TextCursorAnimation/TextCursorAnimation.module.js.map +1 -1
  73. package/esm/Tiles/Tiles.module-BOGZTY7t.css +1 -0
  74. package/esm/Tiles/Tiles.module.js +1 -1
  75. package/esm/Tiles/Tiles.module.js.map +1 -1
  76. package/esm/constants.d.ts +1 -1
  77. package/esm/constants.d.ts.map +1 -1
  78. package/esm/constants.js +2 -0
  79. package/esm/constants.js.map +1 -1
  80. package/esm/css/stylesheets.js +1 -1
  81. package/esm/index.d.ts +1 -0
  82. package/esm/index.d.ts.map +1 -1
  83. package/esm/index.esm.js +51 -50
  84. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/base/size/size-6EfgMG7y.css +1 -0
  85. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/logosuite/{colors-with-modes-n4fDsxWz.css → colors-with-modes-B8ia26TA.css} +1 -1
  86. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/media-playlist/colors-with-modes-YId8eSZQ.css +1 -0
  87. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/text-cursor-animation/colors-with-modes-BODdIvrY.css +1 -0
  88. package/esm/recipes/Flexsuite/Details/FlexSuiteAIDetailsPlaylist/FlexSuiteAIDetailsPlaylist.content.d.ts +49 -0
  89. package/esm/recipes/Flexsuite/Details/FlexSuiteAIDetailsPlaylist/FlexSuiteAIDetailsPlaylist.content.d.ts.map +1 -0
  90. package/esm/recipes/Flexsuite/Details/FlexSuiteAIDetailsPlaylist/FlexSuiteAIDetailsPlaylist.d.ts +7 -0
  91. package/esm/recipes/Flexsuite/Details/FlexSuiteAIDetailsPlaylist/FlexSuiteAIDetailsPlaylist.d.ts.map +1 -0
  92. package/esm/recipes/Flexsuite/Details/index.d.ts +4 -0
  93. package/esm/recipes/Flexsuite/Details/index.d.ts.map +1 -0
  94. package/esm/recipes/Flexsuite/Overview/FlexSuiteAIOverview.d.ts.map +1 -1
  95. package/esm/river/RiverAccordion/RiverAccordion.js +1 -1
  96. package/esm/river/RiverAccordion/RiverAccordion.js.map +1 -1
  97. package/lib/Accordion/Accordion.d.ts +5 -2
  98. package/lib/Box/Box.d.ts +1 -1
  99. package/lib/FAQ/FAQ.d.ts +2 -1
  100. package/lib/MediaPlaylist/MediaPlaylist.d.ts +76 -0
  101. package/lib/MediaPlaylist/index.d.ts +1 -0
  102. package/lib/MediaPlaylist/useMediaPlaylist.d.ts +83 -0
  103. package/lib/Pagination/Pagination.d.ts +2 -5
  104. package/lib/Pagination/model.d.ts +2 -2
  105. package/lib/PricingOptions/PricingOptions.d.ts +2 -1
  106. package/lib/Stack/Stack.d.ts +1 -1
  107. package/lib/TextCursorAnimation/TextCursorAnimation.d.ts +1 -0
  108. package/lib/constants.d.ts +1 -1
  109. package/lib/css/main.css +1055 -391
  110. package/lib/design-tokens/css/tokens/base/colors/color-scales-with-modes.css +1 -1
  111. package/lib/design-tokens/css/tokens/base/colors/light.css +1 -1
  112. package/lib/design-tokens/css/tokens/base/size/size.css +3 -1
  113. package/lib/design-tokens/css/tokens/base/typography/typography.css +1 -1
  114. package/lib/design-tokens/css/tokens/functional/animation/base.css +1 -1
  115. package/lib/design-tokens/css/tokens/functional/colors/global-with-modes.css +1 -1
  116. package/lib/design-tokens/css/tokens/functional/colors/global.css +1 -1
  117. package/lib/design-tokens/css/tokens/functional/components/accordion/colors-with-modes.css +1 -1
  118. package/lib/design-tokens/css/tokens/functional/components/action-menu/colors-with-modes.css +1 -1
  119. package/lib/design-tokens/css/tokens/functional/components/anchor-nav/colors-with-modes.css +1 -1
  120. package/lib/design-tokens/css/tokens/functional/components/bento/base.css +1 -1
  121. package/lib/design-tokens/css/tokens/functional/components/blinking-cursor/colors-with-modes.css +1 -1
  122. package/lib/design-tokens/css/tokens/functional/components/breadcrumbs/colors-with-modes.css +1 -1
  123. package/lib/design-tokens/css/tokens/functional/components/button/colors-with-modes.css +1 -1
  124. package/lib/design-tokens/css/tokens/functional/components/card/base.css +1 -1
  125. package/lib/design-tokens/css/tokens/functional/components/card/colors-with-modes.css +1 -1
  126. package/lib/design-tokens/css/tokens/functional/components/card/colors.css +1 -1
  127. package/lib/design-tokens/css/tokens/functional/components/comparison-table/colors-with-modes.css +1 -1
  128. package/lib/design-tokens/css/tokens/functional/components/comparison-table/comparison-table.css +1 -1
  129. package/lib/design-tokens/css/tokens/functional/components/control/colors-with-modes.css +1 -1
  130. package/lib/design-tokens/css/tokens/functional/components/cta-banner/colors-with-modes.css +1 -1
  131. package/lib/design-tokens/css/tokens/functional/components/eyebrow-banner/colors-with-modes.css +1 -1
  132. package/lib/design-tokens/css/tokens/functional/components/eyebrow-banner/eyebrow-banner.css +1 -1
  133. package/lib/design-tokens/css/tokens/functional/components/faq/base.css +1 -1
  134. package/lib/design-tokens/css/tokens/functional/components/faq/colors-with-modes.css +1 -1
  135. package/lib/design-tokens/css/tokens/functional/components/faq/colors.css +1 -1
  136. package/lib/design-tokens/css/tokens/functional/components/faq/faq.css +1 -1
  137. package/lib/design-tokens/css/tokens/functional/components/footer/colors-with-modes.css +1 -1
  138. package/lib/design-tokens/css/tokens/functional/components/footer/colors.css +1 -1
  139. package/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/base.css +1 -1
  140. package/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/colors-with-modes.css +1 -1
  141. package/lib/design-tokens/css/tokens/functional/components/grid/colors-with-modes.css +1 -1
  142. package/lib/design-tokens/css/tokens/functional/components/grid/colors.css +1 -1
  143. package/lib/design-tokens/css/tokens/functional/components/grid/grid.css +1 -1
  144. package/lib/design-tokens/css/tokens/functional/components/hero/base.css +1 -1
  145. package/lib/design-tokens/css/tokens/functional/components/icon/colors-with-modes.css +1 -1
  146. package/lib/design-tokens/css/tokens/functional/components/icon/colors.css +1 -1
  147. package/lib/design-tokens/css/tokens/functional/components/ide/base.css +1 -1
  148. package/lib/design-tokens/css/tokens/functional/components/ide/colors-with-modes.css +1 -1
  149. package/lib/design-tokens/css/tokens/functional/components/image/base.css +1 -1
  150. package/lib/design-tokens/css/tokens/functional/components/inline-link/base.css +1 -1
  151. package/lib/design-tokens/css/tokens/functional/components/inline-link/colors-with-modes.css +1 -1
  152. package/lib/design-tokens/css/tokens/functional/components/inline-link/colors.css +1 -1
  153. package/lib/design-tokens/css/tokens/functional/components/label/colors-with-modes.css +1 -1
  154. package/lib/design-tokens/css/tokens/functional/components/label/colors.css +1 -1
  155. package/lib/design-tokens/css/tokens/functional/components/link/colors-with-modes.css +1 -1
  156. package/lib/design-tokens/css/tokens/functional/components/link/colors.css +1 -1
  157. package/lib/design-tokens/css/tokens/functional/components/logosuite/base.css +1 -1
  158. package/lib/design-tokens/css/tokens/functional/components/logosuite/colors-with-modes.css +2 -2
  159. package/lib/design-tokens/css/tokens/functional/components/logosuite/colors.css +2 -2
  160. package/lib/design-tokens/css/tokens/functional/components/media-playlist/colors-with-modes.css +13 -0
  161. package/lib/design-tokens/css/tokens/functional/components/media-playlist/colors.css +8 -0
  162. package/lib/design-tokens/css/tokens/functional/components/pricing-options/colors-with-modes.css +1 -1
  163. package/lib/design-tokens/css/tokens/functional/components/pricing-options/colors.css +1 -1
  164. package/lib/design-tokens/css/tokens/functional/components/pricing-options/pricing-options.css +1 -1
  165. package/lib/design-tokens/css/tokens/functional/components/prose/base.css +1 -1
  166. package/lib/design-tokens/css/tokens/functional/components/prose/colors-with-modes.css +1 -1
  167. package/lib/design-tokens/css/tokens/functional/components/river/base.css +1 -1
  168. package/lib/design-tokens/css/tokens/functional/components/river/river.css +1 -1
  169. package/lib/design-tokens/css/tokens/functional/components/river-story-scroll/colors-with-modes.css +1 -1
  170. package/lib/design-tokens/css/tokens/functional/components/section/section.css +1 -1
  171. package/lib/design-tokens/css/tokens/functional/components/statistic/base.css +1 -1
  172. package/lib/design-tokens/css/tokens/functional/components/sub-nav/base.css +1 -1
  173. package/lib/design-tokens/css/tokens/functional/components/sub-nav/colors-with-modes.css +1 -1
  174. package/lib/design-tokens/css/tokens/functional/components/subdomain-nav-bar/colors-with-modes.css +1 -1
  175. package/lib/design-tokens/css/tokens/functional/components/tabs/base.css +1 -1
  176. package/lib/design-tokens/css/tokens/functional/components/tabs/colors-with-modes.css +1 -1
  177. package/lib/design-tokens/css/tokens/functional/components/tabs/colors.css +1 -1
  178. package/lib/design-tokens/css/tokens/functional/components/testimonial/base.css +1 -1
  179. package/lib/design-tokens/css/tokens/functional/components/testimonial/colors-with-modes.css +1 -1
  180. package/lib/design-tokens/css/tokens/functional/components/testimonial/colors.css +1 -1
  181. package/lib/design-tokens/css/tokens/functional/components/text-cursor-animation/colors-with-modes.css +13 -0
  182. package/lib/design-tokens/css/tokens/functional/components/text-cursor-animation/colors.css +8 -0
  183. package/lib/design-tokens/css/tokens/functional/components/tiles/colors-with-modes.css +1 -1
  184. package/lib/design-tokens/css/tokens/functional/components/timeline/base.css +1 -1
  185. package/lib/design-tokens/css/tokens/functional/components/timeline/colors-with-modes.css +1 -1
  186. package/lib/design-tokens/css/tokens/functional/components/timeline/colors.css +1 -1
  187. package/lib/design-tokens/css/tokens/functional/components/token/colors-with-modes.css +1 -1
  188. package/lib/design-tokens/css/tokens/functional/components/token/colors.css +1 -1
  189. package/lib/design-tokens/css/tokens/functional/components/tooltip/colors-with-modes.css +1 -1
  190. package/lib/design-tokens/css/tokens/functional/components/tooltip/colors.css +1 -1
  191. package/lib/design-tokens/css/tokens/functional/components/video-player/base.css +1 -1
  192. package/lib/design-tokens/css/tokens/functional/components/video-player/colors-with-modes.css +1 -1
  193. package/lib/design-tokens/css/tokens/functional/size/border.css +1 -1
  194. package/lib/design-tokens/css/tokens/functional/size/breakpoints.css +1 -1
  195. package/lib/design-tokens/css/tokens/functional/size/size-coarse.css +1 -1
  196. package/lib/design-tokens/css/tokens/functional/size/size-fine.css +1 -1
  197. package/lib/design-tokens/css/tokens/functional/size/size.css +1 -1
  198. package/lib/design-tokens/css/tokens/functional/size/viewport.css +1 -1
  199. package/lib/design-tokens/css/tokens/functional/typography/typography-responsive.css +1 -1
  200. package/lib/design-tokens/css/tokens/functional/typography/typography.css +1 -1
  201. package/lib/design-tokens/js/module/tokens/base/colors/light.js +1 -1
  202. package/lib/design-tokens/js/module/tokens/base/size/size.js +3 -1
  203. package/lib/design-tokens/js/module/tokens/base/typography/typography.js +1 -1
  204. package/lib/design-tokens/js/module/tokens/functional/animation/base.js +1 -1
  205. package/lib/design-tokens/js/module/tokens/functional/colors/global.js +1 -1
  206. package/lib/design-tokens/js/module/tokens/functional/components/bento/base.js +1 -1
  207. package/lib/design-tokens/js/module/tokens/functional/components/card/base.js +1 -1
  208. package/lib/design-tokens/js/module/tokens/functional/components/card/colors.js +1 -1
  209. package/lib/design-tokens/js/module/tokens/functional/components/comparison-table/comparison-table.js +1 -1
  210. package/lib/design-tokens/js/module/tokens/functional/components/eyebrow-banner/eyebrow-banner.js +1 -1
  211. package/lib/design-tokens/js/module/tokens/functional/components/faq/base.js +1 -1
  212. package/lib/design-tokens/js/module/tokens/functional/components/faq/colors.js +1 -1
  213. package/lib/design-tokens/js/module/tokens/functional/components/faq/faq.js +1 -1
  214. package/lib/design-tokens/js/module/tokens/functional/components/footer/colors.js +1 -1
  215. package/lib/design-tokens/js/module/tokens/functional/components/frosted-glass-vfx/base.js +1 -1
  216. package/lib/design-tokens/js/module/tokens/functional/components/grid/colors.js +1 -1
  217. package/lib/design-tokens/js/module/tokens/functional/components/grid/grid.js +1 -1
  218. package/lib/design-tokens/js/module/tokens/functional/components/hero/base.js +1 -1
  219. package/lib/design-tokens/js/module/tokens/functional/components/icon/colors.js +1 -1
  220. package/lib/design-tokens/js/module/tokens/functional/components/ide/base.js +1 -1
  221. package/lib/design-tokens/js/module/tokens/functional/components/image/base.js +1 -1
  222. package/lib/design-tokens/js/module/tokens/functional/components/inline-link/base.js +1 -1
  223. package/lib/design-tokens/js/module/tokens/functional/components/inline-link/colors.js +1 -1
  224. package/lib/design-tokens/js/module/tokens/functional/components/label/colors.js +1 -1
  225. package/lib/design-tokens/js/module/tokens/functional/components/link/colors.js +1 -1
  226. package/lib/design-tokens/js/module/tokens/functional/components/logosuite/base.js +1 -1
  227. package/lib/design-tokens/js/module/tokens/functional/components/logosuite/colors.js +2 -2
  228. package/lib/design-tokens/js/module/tokens/functional/components/media-playlist/colors.js +15 -0
  229. package/lib/design-tokens/js/module/tokens/functional/components/pricing-options/colors.js +1 -1
  230. package/lib/design-tokens/js/module/tokens/functional/components/pricing-options/pricing-options.js +1 -1
  231. package/lib/design-tokens/js/module/tokens/functional/components/prose/base.js +1 -1
  232. package/lib/design-tokens/js/module/tokens/functional/components/river/base.js +1 -1
  233. package/lib/design-tokens/js/module/tokens/functional/components/river/river.js +1 -1
  234. package/lib/design-tokens/js/module/tokens/functional/components/section/section.js +1 -1
  235. package/lib/design-tokens/js/module/tokens/functional/components/statistic/base.js +1 -1
  236. package/lib/design-tokens/js/module/tokens/functional/components/sub-nav/base.js +1 -1
  237. package/lib/design-tokens/js/module/tokens/functional/components/tabs/base.js +1 -1
  238. package/lib/design-tokens/js/module/tokens/functional/components/tabs/colors.js +1 -1
  239. package/lib/design-tokens/js/module/tokens/functional/components/testimonial/base.js +1 -1
  240. package/lib/design-tokens/js/module/tokens/functional/components/testimonial/colors.js +1 -1
  241. package/lib/design-tokens/js/module/tokens/functional/components/text-cursor-animation/colors.js +17 -0
  242. package/lib/design-tokens/js/module/tokens/functional/components/timeline/base.js +1 -1
  243. package/lib/design-tokens/js/module/tokens/functional/components/timeline/colors.js +1 -1
  244. package/lib/design-tokens/js/module/tokens/functional/components/token/colors.js +1 -1
  245. package/lib/design-tokens/js/module/tokens/functional/components/tooltip/colors.js +1 -1
  246. package/lib/design-tokens/js/module/tokens/functional/components/video-player/base.js +1 -1
  247. package/lib/design-tokens/js/module/tokens/functional/size/border.js +1 -1
  248. package/lib/design-tokens/js/module/tokens/functional/size/breakpoints.js +1 -1
  249. package/lib/design-tokens/js/module/tokens/functional/size/size-coarse.js +1 -1
  250. package/lib/design-tokens/js/module/tokens/functional/size/size-fine.js +1 -1
  251. package/lib/design-tokens/js/module/tokens/functional/size/size.js +1 -1
  252. package/lib/design-tokens/js/module/tokens/functional/size/viewport.js +1 -1
  253. package/lib/design-tokens/js/module/tokens/functional/typography/typography-responsive.js +1 -1
  254. package/lib/design-tokens/js/module/tokens/functional/typography/typography.js +1 -1
  255. package/lib/design-tokens/js/tokens/base/colors/light.js +1 -1
  256. package/lib/design-tokens/js/tokens/base/size/size.js +3 -1
  257. package/lib/design-tokens/js/tokens/base/typography/typography.js +1 -1
  258. package/lib/design-tokens/js/tokens/functional/animation/base.js +1 -1
  259. package/lib/design-tokens/js/tokens/functional/colors/global.js +1 -1
  260. package/lib/design-tokens/js/tokens/functional/components/bento/base.js +1 -1
  261. package/lib/design-tokens/js/tokens/functional/components/card/base.js +1 -1
  262. package/lib/design-tokens/js/tokens/functional/components/card/colors.js +1 -1
  263. package/lib/design-tokens/js/tokens/functional/components/comparison-table/comparison-table.js +1 -1
  264. package/lib/design-tokens/js/tokens/functional/components/eyebrow-banner/eyebrow-banner.js +1 -1
  265. package/lib/design-tokens/js/tokens/functional/components/faq/base.js +1 -1
  266. package/lib/design-tokens/js/tokens/functional/components/faq/colors.js +1 -1
  267. package/lib/design-tokens/js/tokens/functional/components/faq/faq.js +1 -1
  268. package/lib/design-tokens/js/tokens/functional/components/footer/colors.js +1 -1
  269. package/lib/design-tokens/js/tokens/functional/components/frosted-glass-vfx/base.js +1 -1
  270. package/lib/design-tokens/js/tokens/functional/components/grid/colors.js +1 -1
  271. package/lib/design-tokens/js/tokens/functional/components/grid/grid.js +1 -1
  272. package/lib/design-tokens/js/tokens/functional/components/hero/base.js +1 -1
  273. package/lib/design-tokens/js/tokens/functional/components/icon/colors.js +1 -1
  274. package/lib/design-tokens/js/tokens/functional/components/ide/base.js +1 -1
  275. package/lib/design-tokens/js/tokens/functional/components/image/base.js +1 -1
  276. package/lib/design-tokens/js/tokens/functional/components/inline-link/base.js +1 -1
  277. package/lib/design-tokens/js/tokens/functional/components/inline-link/colors.js +1 -1
  278. package/lib/design-tokens/js/tokens/functional/components/label/colors.js +1 -1
  279. package/lib/design-tokens/js/tokens/functional/components/link/colors.js +1 -1
  280. package/lib/design-tokens/js/tokens/functional/components/logosuite/base.js +1 -1
  281. package/lib/design-tokens/js/tokens/functional/components/logosuite/colors.js +2 -2
  282. package/lib/design-tokens/js/tokens/functional/components/media-playlist/colors.js +6 -0
  283. package/lib/design-tokens/js/tokens/functional/components/pricing-options/colors.js +1 -1
  284. package/lib/design-tokens/js/tokens/functional/components/pricing-options/pricing-options.js +1 -1
  285. package/lib/design-tokens/js/tokens/functional/components/prose/base.js +1 -1
  286. package/lib/design-tokens/js/tokens/functional/components/river/base.js +1 -1
  287. package/lib/design-tokens/js/tokens/functional/components/river/river.js +1 -1
  288. package/lib/design-tokens/js/tokens/functional/components/section/section.js +1 -1
  289. package/lib/design-tokens/js/tokens/functional/components/statistic/base.js +1 -1
  290. package/lib/design-tokens/js/tokens/functional/components/sub-nav/base.js +1 -1
  291. package/lib/design-tokens/js/tokens/functional/components/tabs/base.js +1 -1
  292. package/lib/design-tokens/js/tokens/functional/components/tabs/colors.js +1 -1
  293. package/lib/design-tokens/js/tokens/functional/components/testimonial/base.js +1 -1
  294. package/lib/design-tokens/js/tokens/functional/components/testimonial/colors.js +1 -1
  295. package/lib/design-tokens/js/tokens/functional/components/text-cursor-animation/colors.js +6 -0
  296. package/lib/design-tokens/js/tokens/functional/components/timeline/base.js +1 -1
  297. package/lib/design-tokens/js/tokens/functional/components/timeline/colors.js +1 -1
  298. package/lib/design-tokens/js/tokens/functional/components/token/colors.js +1 -1
  299. package/lib/design-tokens/js/tokens/functional/components/tooltip/colors.js +1 -1
  300. package/lib/design-tokens/js/tokens/functional/components/video-player/base.js +1 -1
  301. package/lib/design-tokens/js/tokens/functional/size/border.js +1 -1
  302. package/lib/design-tokens/js/tokens/functional/size/breakpoints.js +1 -1
  303. package/lib/design-tokens/js/tokens/functional/size/size-coarse.js +1 -1
  304. package/lib/design-tokens/js/tokens/functional/size/size-fine.js +1 -1
  305. package/lib/design-tokens/js/tokens/functional/size/size.js +1 -1
  306. package/lib/design-tokens/js/tokens/functional/size/viewport.js +1 -1
  307. package/lib/design-tokens/js/tokens/functional/typography/typography-responsive.js +1 -1
  308. package/lib/design-tokens/js/tokens/functional/typography/typography.js +1 -1
  309. package/lib/design-tokens/scss/tokens/base/colors/light.scss +1 -1
  310. package/lib/design-tokens/scss/tokens/base/size/size.scss +3 -1
  311. package/lib/design-tokens/scss/tokens/base/typography/typography.scss +1 -1
  312. package/lib/design-tokens/scss/tokens/functional/animation/base.scss +1 -1
  313. package/lib/design-tokens/scss/tokens/functional/colors/global.scss +1 -1
  314. package/lib/design-tokens/scss/tokens/functional/components/bento/base.scss +1 -1
  315. package/lib/design-tokens/scss/tokens/functional/components/card/base.scss +1 -1
  316. package/lib/design-tokens/scss/tokens/functional/components/card/colors.scss +1 -1
  317. package/lib/design-tokens/scss/tokens/functional/components/comparison-table/comparison-table.scss +1 -1
  318. package/lib/design-tokens/scss/tokens/functional/components/eyebrow-banner/eyebrow-banner.scss +1 -1
  319. package/lib/design-tokens/scss/tokens/functional/components/faq/base.scss +1 -1
  320. package/lib/design-tokens/scss/tokens/functional/components/faq/colors.scss +1 -1
  321. package/lib/design-tokens/scss/tokens/functional/components/faq/faq.scss +1 -1
  322. package/lib/design-tokens/scss/tokens/functional/components/footer/colors.scss +1 -1
  323. package/lib/design-tokens/scss/tokens/functional/components/frosted-glass-vfx/base.scss +1 -1
  324. package/lib/design-tokens/scss/tokens/functional/components/grid/colors.scss +1 -1
  325. package/lib/design-tokens/scss/tokens/functional/components/grid/grid.scss +1 -1
  326. package/lib/design-tokens/scss/tokens/functional/components/hero/base.scss +1 -1
  327. package/lib/design-tokens/scss/tokens/functional/components/icon/colors.scss +1 -1
  328. package/lib/design-tokens/scss/tokens/functional/components/ide/base.scss +1 -1
  329. package/lib/design-tokens/scss/tokens/functional/components/image/base.scss +1 -1
  330. package/lib/design-tokens/scss/tokens/functional/components/inline-link/base.scss +1 -1
  331. package/lib/design-tokens/scss/tokens/functional/components/inline-link/colors.scss +1 -1
  332. package/lib/design-tokens/scss/tokens/functional/components/label/colors.scss +1 -1
  333. package/lib/design-tokens/scss/tokens/functional/components/link/colors.scss +1 -1
  334. package/lib/design-tokens/scss/tokens/functional/components/logosuite/base.scss +1 -1
  335. package/lib/design-tokens/scss/tokens/functional/components/logosuite/colors.scss +2 -2
  336. package/lib/design-tokens/scss/tokens/functional/components/media-playlist/colors.scss +5 -0
  337. package/lib/design-tokens/scss/tokens/functional/components/pricing-options/colors.scss +1 -1
  338. package/lib/design-tokens/scss/tokens/functional/components/pricing-options/pricing-options.scss +1 -1
  339. package/lib/design-tokens/scss/tokens/functional/components/prose/base.scss +1 -1
  340. package/lib/design-tokens/scss/tokens/functional/components/river/base.scss +1 -1
  341. package/lib/design-tokens/scss/tokens/functional/components/river/river.scss +1 -1
  342. package/lib/design-tokens/scss/tokens/functional/components/section/section.scss +1 -1
  343. package/lib/design-tokens/scss/tokens/functional/components/statistic/base.scss +1 -1
  344. package/lib/design-tokens/scss/tokens/functional/components/sub-nav/base.scss +1 -1
  345. package/lib/design-tokens/scss/tokens/functional/components/tabs/base.scss +1 -1
  346. package/lib/design-tokens/scss/tokens/functional/components/tabs/colors.scss +1 -1
  347. package/lib/design-tokens/scss/tokens/functional/components/testimonial/base.scss +1 -1
  348. package/lib/design-tokens/scss/tokens/functional/components/testimonial/colors.scss +1 -1
  349. package/lib/design-tokens/scss/tokens/functional/components/text-cursor-animation/colors.scss +5 -0
  350. package/lib/design-tokens/scss/tokens/functional/components/timeline/base.scss +1 -1
  351. package/lib/design-tokens/scss/tokens/functional/components/timeline/colors.scss +1 -1
  352. package/lib/design-tokens/scss/tokens/functional/components/token/colors.scss +1 -1
  353. package/lib/design-tokens/scss/tokens/functional/components/tooltip/colors.scss +1 -1
  354. package/lib/design-tokens/scss/tokens/functional/components/video-player/base.scss +1 -1
  355. package/lib/design-tokens/scss/tokens/functional/size/border.scss +1 -1
  356. package/lib/design-tokens/scss/tokens/functional/size/breakpoints.scss +1 -1
  357. package/lib/design-tokens/scss/tokens/functional/size/size-coarse.scss +1 -1
  358. package/lib/design-tokens/scss/tokens/functional/size/size-fine.scss +1 -1
  359. package/lib/design-tokens/scss/tokens/functional/size/size.scss +1 -1
  360. package/lib/design-tokens/scss/tokens/functional/size/viewport.scss +1 -1
  361. package/lib/design-tokens/scss/tokens/functional/typography/typography-responsive.scss +1 -1
  362. package/lib/design-tokens/scss/tokens/functional/typography/typography.scss +1 -1
  363. package/lib/design-tokens/ts/tokens/base/colors/light.d.ts +1 -1
  364. package/lib/design-tokens/ts/tokens/base/colors/light.js +1 -1
  365. package/lib/design-tokens/ts/tokens/base/size/size.d.ts +3 -1
  366. package/lib/design-tokens/ts/tokens/base/size/size.js +3 -1
  367. package/lib/design-tokens/ts/tokens/base/typography/typography.d.ts +1 -1
  368. package/lib/design-tokens/ts/tokens/base/typography/typography.js +1 -1
  369. package/lib/design-tokens/ts/tokens/functional/animation/base.d.ts +1 -1
  370. package/lib/design-tokens/ts/tokens/functional/animation/base.js +1 -1
  371. package/lib/design-tokens/ts/tokens/functional/colors/global.d.ts +1 -1
  372. package/lib/design-tokens/ts/tokens/functional/colors/global.js +1 -1
  373. package/lib/design-tokens/ts/tokens/functional/components/bento/base.d.ts +1 -1
  374. package/lib/design-tokens/ts/tokens/functional/components/bento/base.js +1 -1
  375. package/lib/design-tokens/ts/tokens/functional/components/card/base.d.ts +1 -1
  376. package/lib/design-tokens/ts/tokens/functional/components/card/base.js +1 -1
  377. package/lib/design-tokens/ts/tokens/functional/components/card/colors.d.ts +1 -1
  378. package/lib/design-tokens/ts/tokens/functional/components/card/colors.js +1 -1
  379. package/lib/design-tokens/ts/tokens/functional/components/comparison-table/comparison-table.d.ts +1 -1
  380. package/lib/design-tokens/ts/tokens/functional/components/comparison-table/comparison-table.js +1 -1
  381. package/lib/design-tokens/ts/tokens/functional/components/eyebrow-banner/eyebrow-banner.d.ts +1 -1
  382. package/lib/design-tokens/ts/tokens/functional/components/eyebrow-banner/eyebrow-banner.js +1 -1
  383. package/lib/design-tokens/ts/tokens/functional/components/faq/base.d.ts +1 -1
  384. package/lib/design-tokens/ts/tokens/functional/components/faq/base.js +1 -1
  385. package/lib/design-tokens/ts/tokens/functional/components/faq/colors.d.ts +1 -1
  386. package/lib/design-tokens/ts/tokens/functional/components/faq/colors.js +1 -1
  387. package/lib/design-tokens/ts/tokens/functional/components/faq/faq.d.ts +1 -1
  388. package/lib/design-tokens/ts/tokens/functional/components/faq/faq.js +1 -1
  389. package/lib/design-tokens/ts/tokens/functional/components/footer/colors.d.ts +1 -1
  390. package/lib/design-tokens/ts/tokens/functional/components/footer/colors.js +1 -1
  391. package/lib/design-tokens/ts/tokens/functional/components/frosted-glass-vfx/base.d.ts +1 -1
  392. package/lib/design-tokens/ts/tokens/functional/components/frosted-glass-vfx/base.js +1 -1
  393. package/lib/design-tokens/ts/tokens/functional/components/grid/colors.d.ts +1 -1
  394. package/lib/design-tokens/ts/tokens/functional/components/grid/colors.js +1 -1
  395. package/lib/design-tokens/ts/tokens/functional/components/grid/grid.d.ts +1 -1
  396. package/lib/design-tokens/ts/tokens/functional/components/grid/grid.js +1 -1
  397. package/lib/design-tokens/ts/tokens/functional/components/hero/base.d.ts +1 -1
  398. package/lib/design-tokens/ts/tokens/functional/components/hero/base.js +1 -1
  399. package/lib/design-tokens/ts/tokens/functional/components/icon/colors.d.ts +1 -1
  400. package/lib/design-tokens/ts/tokens/functional/components/icon/colors.js +1 -1
  401. package/lib/design-tokens/ts/tokens/functional/components/ide/base.d.ts +1 -1
  402. package/lib/design-tokens/ts/tokens/functional/components/ide/base.js +1 -1
  403. package/lib/design-tokens/ts/tokens/functional/components/image/base.d.ts +1 -1
  404. package/lib/design-tokens/ts/tokens/functional/components/image/base.js +1 -1
  405. package/lib/design-tokens/ts/tokens/functional/components/inline-link/base.d.ts +1 -1
  406. package/lib/design-tokens/ts/tokens/functional/components/inline-link/base.js +1 -1
  407. package/lib/design-tokens/ts/tokens/functional/components/inline-link/colors.d.ts +1 -1
  408. package/lib/design-tokens/ts/tokens/functional/components/inline-link/colors.js +1 -1
  409. package/lib/design-tokens/ts/tokens/functional/components/label/colors.d.ts +1 -1
  410. package/lib/design-tokens/ts/tokens/functional/components/label/colors.js +1 -1
  411. package/lib/design-tokens/ts/tokens/functional/components/link/colors.d.ts +1 -1
  412. package/lib/design-tokens/ts/tokens/functional/components/link/colors.js +1 -1
  413. package/lib/design-tokens/ts/tokens/functional/components/logosuite/base.d.ts +1 -1
  414. package/lib/design-tokens/ts/tokens/functional/components/logosuite/base.js +1 -1
  415. package/lib/design-tokens/ts/tokens/functional/components/logosuite/colors.d.ts +1 -1
  416. package/lib/design-tokens/ts/tokens/functional/components/logosuite/colors.js +2 -2
  417. package/lib/design-tokens/ts/tokens/functional/components/media-playlist/colors.d.ts +15 -0
  418. package/lib/design-tokens/ts/tokens/functional/components/media-playlist/colors.js +12 -0
  419. package/lib/design-tokens/ts/tokens/functional/components/pricing-options/colors.d.ts +1 -1
  420. package/lib/design-tokens/ts/tokens/functional/components/pricing-options/colors.js +1 -1
  421. package/lib/design-tokens/ts/tokens/functional/components/pricing-options/pricing-options.d.ts +1 -1
  422. package/lib/design-tokens/ts/tokens/functional/components/pricing-options/pricing-options.js +1 -1
  423. package/lib/design-tokens/ts/tokens/functional/components/prose/base.d.ts +1 -1
  424. package/lib/design-tokens/ts/tokens/functional/components/prose/base.js +1 -1
  425. package/lib/design-tokens/ts/tokens/functional/components/river/base.d.ts +1 -1
  426. package/lib/design-tokens/ts/tokens/functional/components/river/base.js +1 -1
  427. package/lib/design-tokens/ts/tokens/functional/components/river/river.d.ts +1 -1
  428. package/lib/design-tokens/ts/tokens/functional/components/river/river.js +1 -1
  429. package/lib/design-tokens/ts/tokens/functional/components/section/section.d.ts +1 -1
  430. package/lib/design-tokens/ts/tokens/functional/components/section/section.js +1 -1
  431. package/lib/design-tokens/ts/tokens/functional/components/statistic/base.d.ts +1 -1
  432. package/lib/design-tokens/ts/tokens/functional/components/statistic/base.js +1 -1
  433. package/lib/design-tokens/ts/tokens/functional/components/sub-nav/base.d.ts +1 -1
  434. package/lib/design-tokens/ts/tokens/functional/components/sub-nav/base.js +1 -1
  435. package/lib/design-tokens/ts/tokens/functional/components/tabs/base.d.ts +1 -1
  436. package/lib/design-tokens/ts/tokens/functional/components/tabs/base.js +1 -1
  437. package/lib/design-tokens/ts/tokens/functional/components/tabs/colors.d.ts +1 -1
  438. package/lib/design-tokens/ts/tokens/functional/components/tabs/colors.js +1 -1
  439. package/lib/design-tokens/ts/tokens/functional/components/testimonial/base.d.ts +1 -1
  440. package/lib/design-tokens/ts/tokens/functional/components/testimonial/base.js +1 -1
  441. package/lib/design-tokens/ts/tokens/functional/components/testimonial/colors.d.ts +1 -1
  442. package/lib/design-tokens/ts/tokens/functional/components/testimonial/colors.js +1 -1
  443. package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/colors.d.ts +17 -0
  444. package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/colors.js +14 -0
  445. package/lib/design-tokens/ts/tokens/functional/components/timeline/base.d.ts +1 -1
  446. package/lib/design-tokens/ts/tokens/functional/components/timeline/base.js +1 -1
  447. package/lib/design-tokens/ts/tokens/functional/components/timeline/colors.d.ts +1 -1
  448. package/lib/design-tokens/ts/tokens/functional/components/timeline/colors.js +1 -1
  449. package/lib/design-tokens/ts/tokens/functional/components/token/colors.d.ts +1 -1
  450. package/lib/design-tokens/ts/tokens/functional/components/token/colors.js +1 -1
  451. package/lib/design-tokens/ts/tokens/functional/components/tooltip/colors.d.ts +1 -1
  452. package/lib/design-tokens/ts/tokens/functional/components/tooltip/colors.js +1 -1
  453. package/lib/design-tokens/ts/tokens/functional/components/video-player/base.d.ts +1 -1
  454. package/lib/design-tokens/ts/tokens/functional/components/video-player/base.js +1 -1
  455. package/lib/design-tokens/ts/tokens/functional/size/border.d.ts +1 -1
  456. package/lib/design-tokens/ts/tokens/functional/size/border.js +1 -1
  457. package/lib/design-tokens/ts/tokens/functional/size/breakpoints.d.ts +1 -1
  458. package/lib/design-tokens/ts/tokens/functional/size/breakpoints.js +1 -1
  459. package/lib/design-tokens/ts/tokens/functional/size/size-coarse.d.ts +1 -1
  460. package/lib/design-tokens/ts/tokens/functional/size/size-coarse.js +1 -1
  461. package/lib/design-tokens/ts/tokens/functional/size/size-fine.d.ts +1 -1
  462. package/lib/design-tokens/ts/tokens/functional/size/size-fine.js +1 -1
  463. package/lib/design-tokens/ts/tokens/functional/size/size.d.ts +1 -1
  464. package/lib/design-tokens/ts/tokens/functional/size/size.js +1 -1
  465. package/lib/design-tokens/ts/tokens/functional/size/viewport.d.ts +1 -1
  466. package/lib/design-tokens/ts/tokens/functional/size/viewport.js +1 -1
  467. package/lib/design-tokens/ts/tokens/functional/typography/typography-responsive.d.ts +1 -1
  468. package/lib/design-tokens/ts/tokens/functional/typography/typography-responsive.js +1 -1
  469. package/lib/design-tokens/ts/tokens/functional/typography/typography.d.ts +1 -1
  470. package/lib/design-tokens/ts/tokens/functional/typography/typography.js +1 -1
  471. package/lib/index.d.ts +1 -0
  472. package/lib/index.js +1 -1
  473. package/lib/recipes/Flexsuite/Details/FlexSuiteAIDetailsPlaylist/FlexSuiteAIDetailsPlaylist.content.d.ts +48 -0
  474. package/lib/recipes/Flexsuite/Details/FlexSuiteAIDetailsPlaylist/FlexSuiteAIDetailsPlaylist.d.ts +6 -0
  475. package/lib/recipes/Flexsuite/Details/index.d.ts +3 -0
  476. package/package.json +1 -1
  477. package/esm/Accordion/Accordion.module-D4diKFGj.css +0 -1
  478. package/esm/Box/Box.module-BgKMrzcY.css +0 -1
  479. package/esm/LogoSuite/LogoSuite.module-CWV4mJoG.css +0 -1
  480. package/esm/Pagination/Pagination.module-C7Z_pTFq.css +0 -1
  481. package/esm/Stack/Stack.module-ZIKnqNP_.css +0 -1
  482. package/esm/SubNav/SubNav.module-CFXuWNmS.css +0 -1
  483. package/esm/Tiles/Tiles.module-DVK0nMCy.css +0 -1
  484. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/base/size/size-DBypfR6O.css +0 -1
  485. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/pagination/colors-with-modes-C2GLM06X.css +0 -1
  486. package/lib/design-tokens/css/tokens/functional/components/pagination/colors-with-modes.css +0 -17
@@ -6,10 +6,10 @@ import { Button as o } from "../Button/Button.js";
6
6
  import { useWindowSize as s } from "../hooks/useWindowSize.js";
7
7
  import { Accordion as c } from "../Accordion/Accordion.js";
8
8
  import { UnorderedList as l } from "../list/UnorderedList/UnorderedList.js";
9
+ import { Tooltip as u } from "../Tooltip/Tooltip.js";
9
10
  import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/pricing-options/pricing-options-B9TarQsR.css';import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/pricing-options/colors-with-modes-DBi2l0Re.css';/* empty css */
10
11
  /* empty css */
11
- import u from "./PricingOptions.module.js";
12
- import { Tooltip as d } from "../Tooltip/Tooltip.js";
12
+ import d from "./PricingOptions.module.js";
13
13
  import f, { forwardRef as p, useMemo as m } from "react";
14
14
  import { Fragment as h, jsx as g, jsxs as _ } from "react/jsx-runtime";
15
15
  //#region src/PricingOptions/PricingOptions.tsx
@@ -54,25 +54,25 @@ var v = {
54
54
  let c = m(() => f.Children.toArray(n).filter((e) => f.isValidElement(e) && typeof e.type != "string" && e.type === T), [n]).slice(0, 4), l = m(() => c.map((e) => {
55
55
  let t = f.Children.toArray(e.props.children).find((e) => f.isValidElement(e) && typeof e.type != "string" && e.type === C);
56
56
  return f.isValidElement(t) ? t : null;
57
- }), [c]), d = l.some((e) => e !== null);
57
+ }), [c]), u = l.some((e) => e !== null);
58
58
  return /* @__PURE__ */ g(b, {
59
59
  align: t,
60
60
  children: /* @__PURE__ */ _("div", {
61
- className: e(u.PricingOptions, u[`PricingOptions--layout-${a.includes("default") ? "default" : "cards"}`], u[`PricingOptions--items${c.length}`], u[`PricingOptions--appearance-${a.includes("gradient") ? "gradient" : "solid"}`], r),
61
+ className: e(d.PricingOptions, d[`PricingOptions--layout-${a.includes("default") ? "default" : "cards"}`], d[`PricingOptions--items${c.length}`], d[`PricingOptions--appearance-${a.includes("gradient") ? "gradient" : "solid"}`], r),
62
62
  "data-testid": i || v.root,
63
63
  ref: s,
64
64
  ...o,
65
- children: [c, d && /* @__PURE__ */ g("div", {
66
- className: u.PricingOptions__labels,
65
+ children: [c, u && /* @__PURE__ */ g("div", {
66
+ className: d.PricingOptions__labels,
67
67
  "data-testid": v.labelRow,
68
68
  style: { "--brand-pricing-options-column-count": c.length },
69
69
  children: l.map((t, n) => {
70
70
  let r = !!t?.props.children;
71
71
  return /* @__PURE__ */ g("div", {
72
- className: e(u["PricingOptions__label-cell"], r ? u["PricingOptions__label-cell--has-label"] : u["PricingOptions__label-cell--empty"]),
72
+ className: e(d["PricingOptions__label-cell"], r ? d["PricingOptions__label-cell--has-label"] : d["PricingOptions__label-cell--empty"]),
73
73
  "data-testid": t?.props["data-testid"] || v.label,
74
74
  children: t?.props.children ? /* @__PURE__ */ g("span", {
75
- className: u.PricingOptions__label,
75
+ className: d.PricingOptions__label,
76
76
  children: t.props.children
77
77
  }) : null
78
78
  }, n);
@@ -81,7 +81,7 @@ var v = {
81
81
  })
82
82
  });
83
83
  }), T = p(({ "data-testid": t, children: n, className: r, leadingComponent: i, ...a }, o) => {
84
- let { align: s } = x(), { Heading: c, Description: l, Price: d, FeatureList: p, Actions: h, ActionsMessage: y, Footnote: b } = m(() => f.Children.toArray(n), [n]).reduce((e, t) => (f.isValidElement(t) && typeof t.type != "string" && (t.type === k && (e.FeatureList = t), (t.type === P || t.type === F || t.type === I) && e.Actions.push(t), t.type === N && (e.ActionsMessage = t), t.type === L && (e.Footnote = t), t.type === D && (e.Heading = t), t.type === E && (e.Description = t), t.type === O && (e.Price = t)), e), {
84
+ let { align: s } = x(), { Heading: c, Description: l, Price: u, FeatureList: p, Actions: h, ActionsMessage: y, Footnote: b } = m(() => f.Children.toArray(n), [n]).reduce((e, t) => (f.isValidElement(t) && typeof t.type != "string" && (t.type === k && (e.FeatureList = t), (t.type === P || t.type === F || t.type === I) && e.Actions.push(t), t.type === N && (e.ActionsMessage = t), t.type === L && (e.Footnote = t), t.type === D && (e.Heading = t), t.type === E && (e.Description = t), t.type === O && (e.Price = t)), e), {
85
85
  FeatureList: null,
86
86
  Actions: [],
87
87
  ActionsMessage: null,
@@ -91,23 +91,23 @@ var v = {
91
91
  Price: null
92
92
  });
93
93
  return /* @__PURE__ */ _("div", {
94
- className: e(u.PricingOptions__item, i && u["PricingOptions__item--has-leading-component"], u[`PricingOptions__item--align-${s}`], r),
94
+ className: e(d.PricingOptions__item, i && d["PricingOptions__item--has-leading-component"], d[`PricingOptions__item--align-${s}`], r),
95
95
  "data-testid": t || v.item,
96
96
  ref: o,
97
97
  ...a,
98
98
  children: [
99
99
  /* @__PURE__ */ g("div", {
100
- className: u.PricingOptions__header,
100
+ className: d.PricingOptions__header,
101
101
  children: c
102
102
  }),
103
103
  l,
104
- d,
104
+ u,
105
105
  i && /* @__PURE__ */ g("div", {
106
- className: u["PricingOptions__leading-component"],
106
+ className: d["PricingOptions__leading-component"],
107
107
  children: i
108
108
  }),
109
109
  (h.length > 0 || y) && /* @__PURE__ */ _("div", {
110
- className: u.PricingOptions__actions,
110
+ className: d.PricingOptions__actions,
111
111
  children: [h, y]
112
112
  }),
113
113
  p,
@@ -116,7 +116,7 @@ var v = {
116
116
  });
117
117
  }), E = p(({ children: n, className: r, "data-testid": i, ...a }, o) => /* @__PURE__ */ g(t, {
118
118
  as: "p",
119
- className: e(u.PricingOptions__description, r),
119
+ className: e(d.PricingOptions__description, r),
120
120
  "data-testid": i || v.description,
121
121
  ref: o,
122
122
  size: "200",
@@ -125,40 +125,40 @@ var v = {
125
125
  children: n
126
126
  })), D = p(({ as: t = "h3", children: r, "data-testid": i, size: a = "5", className: o, ...s }, c) => /* @__PURE__ */ g(n, {
127
127
  as: t,
128
- className: e(u.PricingOptions__heading, u[`PricingOptions__heading--size-${a}`], o),
128
+ className: e(d.PricingOptions__heading, d[`PricingOptions__heading--size-${a}`], o),
129
129
  "data-testid": i || v.heading,
130
130
  ref: c,
131
131
  size: a,
132
132
  ...s,
133
133
  children: r
134
- })), O = p(({ children: n, className: r, currencyCode: i = "USD", currencySymbol: a = "$", "data-testid": o, originalPrice: s, trailingText: c, ...l }, d) => /* @__PURE__ */ _(t, {
134
+ })), O = p(({ children: n, className: r, currencyCode: i = "USD", currencySymbol: a = "$", "data-testid": o, originalPrice: s, trailingText: c, ...l }, u) => /* @__PURE__ */ _(t, {
135
135
  as: "p",
136
- className: e(u.PricingOptions__price, r),
136
+ className: e(d.PricingOptions__price, r),
137
137
  "data-testid": o || v.price,
138
- ref: d,
138
+ ref: u,
139
139
  weight: "normal",
140
140
  ...l,
141
141
  children: [
142
142
  /* @__PURE__ */ _("span", {
143
- className: u["PricingOptions__price-amount"],
143
+ className: d["PricingOptions__price-amount"],
144
144
  children: [
145
145
  /* @__PURE__ */ g(t, {
146
146
  as: "span",
147
- className: u["PricingOptions__price-currency-symbol"],
147
+ className: d["PricingOptions__price-currency-symbol"],
148
148
  size: "500",
149
149
  weight: "normal",
150
150
  children: a
151
151
  }),
152
152
  /* @__PURE__ */ g(t, {
153
153
  as: "span",
154
- className: u["PricingOptions__price-value"],
154
+ className: d["PricingOptions__price-value"],
155
155
  size: "500",
156
156
  weight: "normal",
157
157
  children: n
158
158
  }),
159
159
  /* @__PURE__ */ g(t, {
160
160
  as: "span",
161
- className: u["PricingOptions__price-currency-code"],
161
+ className: d["PricingOptions__price-currency-code"],
162
162
  size: "100",
163
163
  weight: "normal",
164
164
  children: i
@@ -166,14 +166,14 @@ var v = {
166
166
  ]
167
167
  }),
168
168
  s && /* @__PURE__ */ _("del", {
169
- className: u["PricingOptions__price-original-price"],
169
+ className: d["PricingOptions__price-original-price"],
170
170
  children: [/* @__PURE__ */ g(t, {
171
171
  size: "400",
172
172
  variant: "muted",
173
173
  weight: "normal",
174
174
  children: a
175
175
  }), /* @__PURE__ */ g(t, {
176
- className: u["PricingOptions__price-original-price-value"],
176
+ className: d["PricingOptions__price-original-price-value"],
177
177
  size: "300",
178
178
  variant: "muted",
179
179
  weight: "normal",
@@ -182,13 +182,13 @@ var v = {
182
182
  }),
183
183
  c && /* @__PURE__ */ g(t, {
184
184
  as: "span",
185
- className: u["PricingOptions__price-trailing-text"],
185
+ className: d["PricingOptions__price-trailing-text"],
186
186
  size: "200",
187
187
  variant: "muted",
188
188
  children: c
189
189
  })
190
190
  ]
191
- })), k = p(({ children: t, className: n, "data-testid": r, hasDivider: a = !0, expanded: o, accordionAs: d = "h4", ...p }, m) => {
191
+ })), k = p(({ children: t, className: n, "data-testid": r, hasDivider: a = !0, expanded: o, accordionAs: u = "h4", ...p }, m) => {
192
192
  let { allFeatureListsExpanded: h, updateFeatureListExpanded: y, featureListUserInteracted: b, setFeatureListUserInteracted: C } = x(), { isMedium: w, isXLarge: T, isSmall: E } = s();
193
193
  f.useEffect(() => {
194
194
  (o === void 0 || typeof o == "object") && C(!1);
@@ -218,7 +218,7 @@ var v = {
218
218
  Heading: t,
219
219
  Items: []
220
220
  }), e), []).map(({ Heading: e, Items: t }, n) => /* @__PURE__ */ _("div", {
221
- className: u["PricingOptions__feature-list-set"],
221
+ className: d["PricingOptions__feature-list-set"],
222
222
  children: [e, /* @__PURE__ */ g(l, {
223
223
  variant: "checked",
224
224
  ...p,
@@ -227,20 +227,21 @@ var v = {
227
227
  }, n));
228
228
  return /* @__PURE__ */ g("div", {
229
229
  ref: m,
230
- className: e(u["PricingOptions__feature-list"], a && u["PricingOptions__feature-list--has-divider"], n),
230
+ className: e(d["PricingOptions__feature-list"], a && d["PricingOptions__feature-list--has-divider"], n),
231
231
  "data-testid": r || v.featureList,
232
232
  children: /* @__PURE__ */ _(c, {
233
- className: u["PricingOptions__feature-list-accordion"],
233
+ className: d["PricingOptions__feature-list-accordion"],
234
+ disableAnimation: !0,
234
235
  open: D,
235
236
  onToggle: (e) => {
236
237
  C(!0), y(e.currentTarget.open);
237
238
  },
238
239
  children: [/* @__PURE__ */ _(c.Heading, {
239
- as: d,
240
- className: u["PricingOptions__feature-list-accordion-heading"],
241
- children: [O, /* @__PURE__ */ g(i, { className: u["PricingOptions__feature-list-accordion-chevron"] })]
240
+ as: u,
241
+ className: d["PricingOptions__feature-list-accordion-heading"],
242
+ children: [O, /* @__PURE__ */ g(i, { className: d["PricingOptions__feature-list-accordion-chevron"] })]
242
243
  }), /* @__PURE__ */ g(c.Content, {
243
- className: u["PricingOptions__feature-list-accordion-content"],
244
+ className: d["PricingOptions__feature-list-accordion-content"],
244
245
  children: k
245
246
  })]
246
247
  })
@@ -253,7 +254,7 @@ var v = {
253
254
  children: e
254
255
  })), j = p(({ children: t, className: r, "data-testid": i, ...a }, o) => /* @__PURE__ */ g(n, {
255
256
  as: "h4",
256
- className: e(u["PricingOptions__feature-list-group-heading"], r),
257
+ className: e(d["PricingOptions__feature-list-group-heading"], r),
257
258
  "data-testid": i || v.featureListGroupHeading,
258
259
  ref: o,
259
260
  size: "subhead-medium",
@@ -262,19 +263,19 @@ var v = {
262
263
  })), M = p(({ children: t, className: n, infoTooltip: i, leadingVisual: o, leadingVisualFill: s, variant: c = "included", "data-testid": f, ...p }, m) => {
263
264
  let h = o ?? (c === "included" ? r : a), y = c === "included" ? "Includes" : "Does not include", b = s ?? (c === "included" ? "var(--brand-color-accent-primary)" : "var(--brand-color-text-muted)");
264
265
  return /* @__PURE__ */ _(l.Item, {
265
- className: e(u["PricingOptions__feature-list-item"], { [u["PricingOptions__feature-list-item--excluded"]]: c === "excluded" }, i && u["PricingOptions__feature-list-item--has-info"], n),
266
+ className: e(d["PricingOptions__feature-list-item"], { [d["PricingOptions__feature-list-item--excluded"]]: c === "excluded" }, i && d["PricingOptions__feature-list-item--has-info"], n),
266
267
  "data-testid": f || v.featureListItem,
267
268
  leadingVisual: h,
268
269
  leadingVisualAriaLabel: y,
269
270
  leadingVisualFill: b,
270
271
  ref: m,
271
272
  ...p,
272
- children: [t, i && /* @__PURE__ */ g(d, {
273
+ children: [t, i && /* @__PURE__ */ g(u, {
273
274
  text: i,
274
275
  direction: "n",
275
276
  children: /* @__PURE__ */ g("button", {
276
277
  type: "button",
277
- className: u["PricingOptions__feature-list-item-info"],
278
+ className: d["PricingOptions__feature-list-item-info"],
278
279
  "aria-label": `More information about ${typeof t == "string" ? t : "this feature"}`,
279
280
  children: /* @__PURE__ */ _("svg", {
280
281
  viewBox: "0 0 4 8",
@@ -294,21 +295,21 @@ var v = {
294
295
  });
295
296
  }), N = p(({ children: t, className: n, "data-testid": r, leadingComponent: i, ...a }, o) => /* @__PURE__ */ _("div", {
296
297
  ref: o,
297
- className: e(u["PricingOptions__actions-message"], n),
298
+ className: e(d["PricingOptions__actions-message"], n),
298
299
  "data-testid": r || v.actionsMessage,
299
300
  ...a,
300
301
  children: [i && /* @__PURE__ */ g("span", {
301
- className: u["PricingOptions__actions-message-leading-component"],
302
+ className: d["PricingOptions__actions-message-leading-component"],
302
303
  children: i
303
304
  }), /* @__PURE__ */ g("div", {
304
- className: u["PricingOptions__actions-message-content"],
305
+ className: d["PricingOptions__actions-message-content"],
305
306
  children: t
306
307
  })]
307
308
  })), P = p(({ as: t, children: n, className: r, "data-testid": i, ...a }, s) => /* @__PURE__ */ g(o, {
308
309
  ref: s,
309
310
  as: t,
310
311
  "data-testid": i || v.primaryAction,
311
- className: e(u["PricingOptions__primary-action"], r),
312
+ className: e(d["PricingOptions__primary-action"], r),
312
313
  size: "medium",
313
314
  variant: "primary",
314
315
  block: !0,
@@ -317,7 +318,7 @@ var v = {
317
318
  })), F = p(({ as: t, children: n, className: r, "data-testid": i, ...a }, s) => /* @__PURE__ */ g(o, {
318
319
  ref: s,
319
320
  as: t,
320
- className: e(u["PricingOptions__primary-action"], r),
321
+ className: e(d["PricingOptions__primary-action"], r),
321
322
  "data-testid": i || v.secondaryAction,
322
323
  variant: "secondary",
323
324
  block: !0,
@@ -325,13 +326,13 @@ var v = {
325
326
  children: n
326
327
  })), I = p(({ children: t, className: n, "data-testid": r, ...i }, a) => /* @__PURE__ */ g("div", {
327
328
  ref: a,
328
- className: e(u["PricingOptions__menu-action"], n),
329
+ className: e(d["PricingOptions__menu-action"], n),
329
330
  "data-testid": r || v.menuAction,
330
331
  ...i,
331
332
  children: t
332
333
  })), L = p(({ children: n, className: r, "data-testid": i, ...a }, o) => /* @__PURE__ */ g(t, {
333
334
  as: "p",
334
- className: e(u.PricingOptions__footnote, r),
335
+ className: e(d.PricingOptions__footnote, r),
335
336
  "data-testid": i || v.footnote,
336
337
  ref: o,
337
338
  size: "100",
@@ -1 +1 @@
1
- {"version":3,"file":"PricingOptions.js","names":[],"sources":["../../src/PricingOptions/PricingOptions.tsx"],"sourcesContent":["import React, {forwardRef, HTMLAttributes, PropsWithChildren, useMemo, Ref, Dispatch} from 'react'\nimport {CheckIcon, TriangleDownIcon, XIcon} from '@primer/octicons-react'\nimport {clsx} from 'clsx'\nimport type {ListItemProps} from '../list/ListItem/ListItem'\nimport type {BaseProps} from '../component-helpers'\n\nimport {\n Accordion,\n Button,\n ButtonBaseProps,\n Heading as HeadingComponent,\n HeadingProps,\n Text,\n Tooltip,\n UnorderedList,\n UnorderedListProps,\n useWindowSize,\n} from '..'\n\n/**\n * Design tokens\n */\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/pricing-options/pricing-options.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/pricing-options/colors-with-modes.css'\n\n/**\n * Main stylesheet (as a CSS Module)\n */\nimport styles from './PricingOptions.module.css'\n\ntype AlignOptions = 'start' | 'center'\n\nexport type PricingOptionsProps = {\n align?: AlignOptions\n variant?: 'default' | 'default-gradient' | 'cards' | 'cards-gradient'\n ['data-testid']?: string\n} & PropsWithChildren<BaseProps<HTMLDivElement>> &\n HTMLAttributes<HTMLDivElement>\n\nconst testIds = {\n root: 'PricingOptions',\n item: 'PricingOptions__item',\n labelRow: 'PricingOptions__labels',\n heading: 'PricingOptions__heading',\n label: 'PricingOptions__label',\n description: 'PricingOptions__description',\n price: 'PricingOptions__price',\n actionsMessage: 'PricingOptions__actionsMessage',\n primaryAction: 'PricingOptions__primaryAction',\n secondaryAction: 'PricingOptions__secondaryAction',\n menuAction: 'PricingOptions__menuAction',\n featureList: 'PricingOptions__featureList',\n featureListHeading: 'PricingOptions__featureListHeading',\n featureListItem: 'PricingOptions__featureListItem',\n featureListGroupHeading: 'PricingOptions__featureListGroupHeading',\n footnote: 'PricingOptions__footnote',\n}\n\ntype PricingOptionsContextValue = {\n align: AlignOptions\n allFeatureListsExpanded: boolean\n updateFeatureListExpanded: Dispatch<boolean>\n featureListUserInteracted: boolean\n setFeatureListUserInteracted: Dispatch<boolean>\n}\n\nconst PricingOptionsContext = React.createContext<PricingOptionsContextValue>({\n align: 'start',\n allFeatureListsExpanded: false,\n featureListUserInteracted: false,\n updateFeatureListExpanded: () => {},\n setFeatureListUserInteracted: () => {},\n})\n\nconst PricingOptionsProvider = ({children, align = 'start'}: PropsWithChildren<{align: AlignOptions}>) => {\n const [allFeatureListsExpanded, setAllFeatureListsExpanded] = React.useState(false)\n const [featureListUserInteracted, setFeatureListUserInteracted] = React.useState(false)\n\n const updateFeatureListExpanded = (newValue: boolean) => {\n setAllFeatureListsExpanded(() => newValue)\n }\n\n return (\n <PricingOptionsContext.Provider\n value={{\n allFeatureListsExpanded,\n updateFeatureListExpanded,\n align,\n featureListUserInteracted,\n setFeatureListUserInteracted,\n }}\n >\n {children}\n </PricingOptionsContext.Provider>\n )\n}\n\nconst usePricingOptions = (): PricingOptionsContextValue => {\n return React.useContext(PricingOptionsContext)\n}\n\nconst pricingOptionsDefaultFeatureListHeading = \"What's included\"\n\ntype PricingOptionsLabelProps = PropsWithChildren<{\n 'data-testid'?: string\n}>\n\nconst PricingOptionsLabel = ({children}: PricingOptionsLabelProps) => {\n return <>{children}</>\n}\n\nconst PricingOptionsRoot = forwardRef(\n (\n {\n align = 'start',\n children,\n className,\n 'data-testid': testId,\n variant = 'default',\n ...rest\n }: PropsWithChildren<PricingOptionsProps>,\n ref: Ref<HTMLDivElement>,\n ) => {\n const filteredChildren = useMemo(\n () =>\n React.Children.toArray(children).filter(\n child => React.isValidElement(child) && typeof child.type !== 'string' && child.type === PricingOptionsItem,\n ) as React.ReactElement<PropsWithChildren<PricingOptionsItem>>[],\n [children],\n ).slice(0, 4)\n\n const headerLabels = useMemo(\n () =>\n filteredChildren.map(item => {\n const labelChild = React.Children.toArray(item.props.children).find(\n child =>\n React.isValidElement(child) && typeof child.type !== 'string' && child.type === PricingOptionsLabel,\n )\n\n return (\n React.isValidElement(labelChild) ? labelChild : null\n ) as React.ReactElement<PricingOptionsLabelProps> | null\n }),\n [filteredChildren],\n )\n\n const hasHeaderLabels = headerLabels.some(label => label !== null)\n\n return (\n <PricingOptionsProvider align={align}>\n <div\n className={clsx(\n styles.PricingOptions,\n styles[`PricingOptions--layout-${variant.includes('default') ? 'default' : 'cards'}`],\n styles[`PricingOptions--items${filteredChildren.length}`],\n styles[`PricingOptions--appearance-${variant.includes('gradient') ? 'gradient' : 'solid'}`],\n className,\n )}\n data-testid={testId || testIds.root}\n ref={ref}\n {...(rest as HTMLAttributes<HTMLElement>)}\n >\n {filteredChildren}\n\n {hasHeaderLabels && (\n <div\n className={styles['PricingOptions__labels']}\n data-testid={testIds.labelRow}\n style={\n {\n '--brand-pricing-options-column-count': filteredChildren.length,\n } as React.CSSProperties\n }\n >\n {headerLabels.map((headerLabel, index) => {\n const hasLabelContent = Boolean(headerLabel?.props.children)\n\n return (\n <div\n className={clsx(\n styles['PricingOptions__label-cell'],\n hasLabelContent\n ? styles['PricingOptions__label-cell--has-label']\n : styles['PricingOptions__label-cell--empty'],\n )}\n data-testid={headerLabel?.props['data-testid'] || testIds.label}\n key={index}\n >\n {headerLabel?.props.children ? (\n <span className={styles.PricingOptions__label}>{headerLabel.props.children}</span>\n ) : null}\n </div>\n )\n })}\n </div>\n )}\n </div>\n </PricingOptionsProvider>\n )\n },\n)\n\nexport type PricingOptionsItem = {\n ['data-testid']?: string\n /**\n * Escape-hatch for inserting custom React components.\n * Warning:\n * This prop isn't advertised in our docs but remains part of the public API for edge-cases.\n * Need to use this prop? Please check in with #primer-brand first to confirm correct usage.\n */\n leadingComponent?: React.ReactElement\n} & PropsWithChildren<BaseProps<HTMLDivElement>>\n\ntype FilteredChildren = {\n FeatureList: React.ReactElement<PricingOptionsFeatureListProps> | null\n Actions: React.ReactElement<PricingOptionsActionsProps>[]\n ActionsMessage: React.ReactElement<PricingOptionsActionsMessageProps> | null\n Footnote: React.ReactElement<PricingOptionsFootnoteProps> | null\n Heading: React.ReactElement<PricingOptionsHeadingProps> | null\n Description: React.ReactElement<PricingOptionsDescriptionProps> | null\n Price: React.ReactElement<PricingOptionsPriceProps> | null\n}\n\nconst PricingOptionsItem = forwardRef(\n (\n {'data-testid': testId, children, className, leadingComponent, ...rest}: PropsWithChildren<PricingOptionsItem>,\n ref: Ref<HTMLDivElement>,\n ) => {\n const {align} = usePricingOptions()\n\n const memoizedChildren = useMemo(() => React.Children.toArray(children), [children])\n\n const filteredChildren = memoizedChildren.reduce<FilteredChildren>(\n (acc, child) => {\n if (React.isValidElement(child) && typeof child.type !== 'string') {\n if (child.type === PricingOptionsFeatureList) {\n acc.FeatureList = child as React.ReactElement<PricingOptionsFeatureListProps> | null\n }\n\n if (\n child.type === PricingOptionsPrimaryAction ||\n child.type === PricingOptionsSecondaryAction ||\n child.type === PricingOptionsMenuAction\n ) {\n acc.Actions.push(child as React.ReactElement<PricingOptionsActionsProps>)\n }\n\n if (child.type === PricingOptionsActionsMessage) {\n acc.ActionsMessage = child as React.ReactElement<PricingOptionsActionsMessageProps>\n }\n\n if (child.type === PricingOptionsFootnote) {\n acc.Footnote = child as React.ReactElement<PricingOptionsFootnoteProps>\n }\n\n if (child.type === PricingOptionsHeading) {\n acc.Heading = child as React.ReactElement<PricingOptionsHeadingProps>\n }\n\n if (child.type === PricingOptionsDescription) {\n acc.Description = child as React.ReactElement<PricingOptionsDescriptionProps>\n }\n\n if (child.type === PricingOptionsPrice) {\n acc.Price = child as React.ReactElement<PricingOptionsPriceProps>\n }\n }\n\n return acc\n },\n {\n FeatureList: null,\n Actions: [],\n ActionsMessage: null,\n Footnote: null,\n Heading: null,\n Description: null,\n Price: null,\n },\n )\n\n const {Heading, Description, Price, FeatureList, Actions, ActionsMessage, Footnote} = filteredChildren\n\n return (\n <div\n className={clsx(\n styles.PricingOptions__item,\n leadingComponent && styles['PricingOptions__item--has-leading-component'],\n styles[`PricingOptions__item--align-${align}`],\n className,\n )}\n data-testid={testId || testIds.item}\n ref={ref}\n {...(rest as HTMLAttributes<HTMLElement>)}\n >\n <div className={styles['PricingOptions__header']}>{Heading}</div>\n {Description}\n {Price}\n {leadingComponent && <div className={styles['PricingOptions__leading-component']}>{leadingComponent}</div>}\n {(Actions.length > 0 || ActionsMessage) && (\n <div className={styles.PricingOptions__actions}>\n {Actions}\n {ActionsMessage}\n </div>\n )}\n {FeatureList}\n {Footnote}\n </div>\n )\n },\n)\n\ntype PricingOptionsDescriptionProps = PropsWithChildren<BaseProps<HTMLParagraphElement>> & {\n 'data-testid'?: string\n}\n\nconst PricingOptionsDescription = forwardRef<HTMLParagraphElement, PricingOptionsDescriptionProps>(\n ({children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <Text\n as=\"p\"\n className={clsx(styles.PricingOptions__description, className)}\n data-testid={testId || testIds.description}\n ref={ref}\n size=\"200\"\n variant=\"muted\"\n {...rest}\n >\n {children}\n </Text>\n )\n },\n)\n\ntype PricingOptionsHeadingProps = PropsWithChildren<BaseProps<HTMLHeadingElement>> & {\n 'data-testid'?: string\n} & HeadingProps\n\nconst PricingOptionsHeading = forwardRef<HTMLHeadingElement, PricingOptionsHeadingProps>(\n ({as = 'h3', children, 'data-testid': testId, size = '5', className, ...rest}, ref) => {\n return (\n <HeadingComponent\n as={as}\n className={clsx(styles.PricingOptions__heading, styles[`PricingOptions__heading--size-${size}`], className)}\n data-testid={testId || testIds.heading}\n ref={ref}\n size={size}\n {...rest}\n >\n {children}\n </HeadingComponent>\n )\n },\n)\n\ntype PricingOptionsPriceProps = PropsWithChildren<BaseProps<HTMLParagraphElement>> & {\n currencyCode?: string\n currencySymbol?: string\n 'data-testid'?: string\n originalPrice?: string\n trailingText?: string\n}\n\nconst PricingOptionsPrice = forwardRef<HTMLParagraphElement, PricingOptionsPriceProps>(\n (\n {\n children,\n className,\n currencyCode = 'USD',\n currencySymbol = '$',\n 'data-testid': testId,\n originalPrice,\n trailingText,\n ...rest\n },\n ref,\n ) => {\n return (\n <Text\n as=\"p\"\n className={clsx(styles.PricingOptions__price, className)}\n data-testid={testId || testIds.price}\n ref={ref}\n weight=\"normal\"\n {...rest}\n >\n <span className={styles['PricingOptions__price-amount']}>\n <Text as=\"span\" className={styles['PricingOptions__price-currency-symbol']} size=\"500\" weight=\"normal\">\n {currencySymbol}\n </Text>\n\n <Text as=\"span\" className={styles['PricingOptions__price-value']} size=\"500\" weight=\"normal\">\n {children}\n </Text>\n\n <Text as=\"span\" className={styles['PricingOptions__price-currency-code']} size=\"100\" weight=\"normal\">\n {currencyCode}\n </Text>\n </span>\n\n {originalPrice && (\n <del className={styles['PricingOptions__price-original-price']}>\n <Text size=\"400\" variant=\"muted\" weight=\"normal\">\n {currencySymbol}\n </Text>\n <Text\n className={styles['PricingOptions__price-original-price-value']}\n size=\"300\"\n variant=\"muted\"\n weight=\"normal\"\n >\n {originalPrice}\n </Text>\n </del>\n )}\n\n {trailingText && (\n <Text as=\"span\" className={styles['PricingOptions__price-trailing-text']} size=\"200\" variant=\"muted\">\n {trailingText}\n </Text>\n )}\n </Text>\n )\n },\n)\n\ntype PricingOptionsFeatureListProps = BaseProps<HTMLUListElement> & {\n accordionAs?: HeadingProps['as']\n expanded?: ExpandedProp\n hasDivider?: boolean\n children: React.ReactElement<PricingOptionsFeatureListGroupHeadingProps | PricingOptionsFeatureListItemProps>[]\n 'data-testid'?: string\n}\n\ntype ExpandedProp = boolean | ResponsiveExpandableProps\n\ntype ResponsiveExpandableProps = {\n narrow: boolean\n regular: boolean\n wide: boolean\n}\n\ntype ValidFeatureListChildren = {\n Heading: React.ReactElement<PricingOptionsFeatureListGroupHeadingProps> | null\n Items: React.ReactElement<PricingOptionsFeatureListItemProps>[]\n}[]\n\nconst PricingOptionsFeatureList = forwardRef<HTMLDivElement, PricingOptionsFeatureListProps>(\n ({children, className, 'data-testid': testId, hasDivider = true, expanded, accordionAs = 'h4', ...rest}, ref) => {\n const {\n allFeatureListsExpanded,\n updateFeatureListExpanded,\n featureListUserInteracted,\n setFeatureListUserInteracted,\n } = usePricingOptions()\n const {isMedium: isRegular, isXLarge: isWide, isSmall: isNarrow} = useWindowSize()\n\n React.useEffect(() => {\n if (expanded === undefined || typeof expanded === 'object') {\n setFeatureListUserInteracted(false)\n }\n }, [isRegular, isWide, isNarrow, setFeatureListUserInteracted, expanded])\n\n const shouldBeOpen = React.useMemo(() => {\n if (featureListUserInteracted) {\n return allFeatureListsExpanded\n }\n\n // Important: Fixes layout shift by ensuring that explicit values are preserved.\n if (typeof expanded === 'boolean') {\n return expanded\n }\n // If undefined, should follow some default responsive logic\n if (expanded === undefined) {\n if (isWide) return true\n if (isRegular) return true\n return false\n }\n\n // finally handle responsive objects, and go from largest to smallest viewports\n const {narrow, regular, wide} = expanded\n if (isWide) return wide\n if (isRegular) return regular\n return narrow\n }, [expanded, allFeatureListsExpanded, isRegular, isWide, featureListUserInteracted])\n\n let FeatureListHeading = (\n <PricingOptions.FeatureListHeading>{pricingOptionsDefaultFeatureListHeading}</PricingOptions.FeatureListHeading>\n )\n\n const FilteredChildrenSet = React.Children.toArray(children).reduce<ValidFeatureListChildren>((acc, child) => {\n if (React.isValidElement(child) && child.type === PricingOptionsFeatureListHeading) {\n FeatureListHeading = child\n } else if (React.isValidElement(child) && child.type === PricingOptionsFeatureListItem) {\n if (acc.length === 0) {\n acc.push({Heading: null, Items: []})\n }\n acc[acc.length - 1].Items.push(child as React.ReactElement<PricingOptionsFeatureListItemProps>)\n } else if (React.isValidElement(child) && child.type === PricingOptionsFeatureListGroupHeading) {\n acc.push({\n Heading: child as React.ReactElement<PricingOptionsFeatureListGroupHeadingProps>,\n Items: [],\n })\n }\n\n return acc\n }, [])\n\n const FeatureListItems = FilteredChildrenSet.map(({Heading: HeadingChild, Items}, index) => (\n <div className={styles['PricingOptions__feature-list-set']} key={index}>\n {HeadingChild}\n\n <UnorderedList variant=\"checked\" {...(rest as UnorderedListProps)}>\n {Items}\n </UnorderedList>\n </div>\n ))\n\n return (\n <div\n ref={ref}\n className={clsx(\n styles['PricingOptions__feature-list'],\n hasDivider && styles['PricingOptions__feature-list--has-divider'],\n className,\n )}\n data-testid={testId || testIds.featureList}\n >\n <Accordion\n className={styles['PricingOptions__feature-list-accordion']}\n open={shouldBeOpen}\n onToggle={event => {\n setFeatureListUserInteracted(true)\n updateFeatureListExpanded(event.currentTarget.open)\n }}\n >\n <Accordion.Heading as={accordionAs} className={styles['PricingOptions__feature-list-accordion-heading']}>\n {FeatureListHeading}\n\n <TriangleDownIcon className={styles['PricingOptions__feature-list-accordion-chevron']} />\n </Accordion.Heading>\n <Accordion.Content className={styles['PricingOptions__feature-list-accordion-content']}>\n {FeatureListItems}\n </Accordion.Content>\n </Accordion>\n </div>\n )\n },\n)\n\ntype PricingOptionsFeatureListHeadingProps = PropsWithChildren<BaseProps<HTMLDivElement>> & {\n 'data-testid'?: string\n}\n\nconst PricingOptionsFeatureListHeading = forwardRef<HTMLDivElement, PricingOptionsFeatureListHeadingProps>(\n ({children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <div className={className} data-testid={testId || testIds.featureListHeading} ref={ref} {...rest}>\n {children}\n </div>\n )\n },\n)\n\ntype PricingOptionsFeatureListGroupHeadingProps = PropsWithChildren<BaseProps<HTMLHeadingElement>> & {\n as?: Exclude<HeadingProps['as'], 'h1' | 'h2'>\n 'data-testid'?: string\n}\n\nconst PricingOptionsFeatureListGroupHeading = forwardRef<\n HTMLHeadingElement,\n PricingOptionsFeatureListGroupHeadingProps\n>(({children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <HeadingComponent\n as=\"h4\"\n className={clsx(styles['PricingOptions__feature-list-group-heading'], className)}\n data-testid={testId || testIds.featureListGroupHeading}\n ref={ref}\n size=\"subhead-medium\"\n {...rest}\n >\n {children}\n </HeadingComponent>\n )\n})\n\ntype PricingOptionsFeatureListItemProps = PropsWithChildren<BaseProps<HTMLLIElement>> & {\n 'data-testid'?: string\n infoTooltip?: string\n variant?: 'included' | 'excluded'\n} & Omit<ListItemProps, 'variant'>\n\nconst PricingOptionsFeatureListItem = forwardRef<HTMLLIElement, PricingOptionsFeatureListItemProps>(\n (\n {\n children,\n className,\n infoTooltip,\n leadingVisual,\n leadingVisualFill,\n variant = 'included',\n 'data-testid': testId,\n ...rest\n },\n ref,\n ) => {\n const itemLeadingVisual = leadingVisual ?? (variant === 'included' ? CheckIcon : XIcon)\n const itemLeadingVisualAriaLabel = variant === 'included' ? 'Includes' : 'Does not include'\n\n const itemLeadingVisualFill =\n leadingVisualFill ??\n (variant === 'included' ? 'var(--brand-color-accent-primary)' : 'var(--brand-color-text-muted)')\n\n return (\n <UnorderedList.Item\n className={clsx(\n styles['PricingOptions__feature-list-item'],\n {[styles['PricingOptions__feature-list-item--excluded']]: variant === 'excluded'},\n infoTooltip && styles['PricingOptions__feature-list-item--has-info'],\n className,\n )}\n data-testid={testId || testIds.featureListItem}\n leadingVisual={itemLeadingVisual}\n leadingVisualAriaLabel={itemLeadingVisualAriaLabel}\n leadingVisualFill={itemLeadingVisualFill}\n ref={ref}\n {...rest}\n >\n {children}\n {infoTooltip && (\n <Tooltip text={infoTooltip} direction=\"n\">\n <button\n type=\"button\"\n className={styles['PricingOptions__feature-list-item-info']}\n aria-label={`More information about ${typeof children === 'string' ? children : 'this feature'}`}\n >\n <svg viewBox=\"0 0 4 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\">\n <path\n d=\"M0.75 3C0.33579 3 0 3.33579 0 3.75C0 4.16421 0.33579 4.5 0.75 4.5H1V6.5H0.75C0.33579 6.5 0 6.8358 0 7.25C0 7.6642 0.33579 8 0.75 8H2.75C3.16421 8 3.5 7.6642 3.5 7.25C3.5 6.8358 3.16421 6.5 2.75 6.5H2.5V3.75C2.5 3.33579 2.16421 3 1.75 3H0.75Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M2.5 1C2.5 1.55228 2.05229 2 1.5 2C0.94772 2 0.5 1.55228 0.5 1C0.5 0.44772 0.94772 0 1.5 0C2.05229 0 2.5 0.44772 2.5 1Z\"\n fill=\"currentColor\"\n />\n </svg>\n </button>\n </Tooltip>\n )}\n </UnorderedList.Item>\n )\n },\n)\n\ntype AsA = {as: 'a'; href: string; 'data-testid'?: string} & React.AnchorHTMLAttributes<BaseProps<HTMLAnchorElement>> &\n ButtonBaseProps\n\ntype AsButton = {as: 'button'; 'data-testid'?: string} & React.ButtonHTMLAttributes<BaseProps<HTMLButtonElement>> &\n ButtonBaseProps\n\ntype PricingOptionsActionsProps = AsA | AsButton\n\ntype PricingOptionsActionsMessageProps = PropsWithChildren<BaseProps<HTMLDivElement>> & {\n 'data-testid'?: string\n leadingComponent?: React.ReactElement\n}\n\nconst PricingOptionsActionsMessage = forwardRef<HTMLDivElement, PricingOptionsActionsMessageProps>(\n ({children, className, 'data-testid': testId, leadingComponent, ...rest}, ref) => {\n return (\n <div\n ref={ref}\n className={clsx(styles['PricingOptions__actions-message'], className)}\n data-testid={testId || testIds.actionsMessage}\n {...rest}\n >\n {leadingComponent && (\n <span className={styles['PricingOptions__actions-message-leading-component']}>{leadingComponent}</span>\n )}\n <div className={styles['PricingOptions__actions-message-content']}>{children}</div>\n </div>\n )\n },\n)\n\nconst PricingOptionsPrimaryAction = forwardRef<\n HTMLAnchorElement | HTMLButtonElement,\n PropsWithChildren<PricingOptionsActionsProps>\n>(({as, children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <Button\n ref={ref as React.Ref<HTMLButtonElement>}\n as={as}\n data-testid={testId || testIds.primaryAction}\n className={clsx(styles['PricingOptions__primary-action'], className)}\n size=\"medium\"\n variant=\"primary\"\n block\n {...rest}\n >\n {children}\n </Button>\n )\n})\n\nconst PricingOptionsSecondaryAction = forwardRef<\n HTMLAnchorElement | HTMLButtonElement,\n PropsWithChildren<PricingOptionsActionsProps>\n>(({as, children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <Button\n ref={ref as React.Ref<HTMLButtonElement>}\n as={as}\n className={clsx(styles['PricingOptions__primary-action'], className)}\n data-testid={testId || testIds.secondaryAction}\n variant=\"secondary\"\n block\n {...rest}\n >\n {children}\n </Button>\n )\n})\n\ntype PricingOptionsMenuActionProps = PropsWithChildren<BaseProps<HTMLDivElement>> & {\n 'data-testid'?: string\n}\n\nconst PricingOptionsMenuAction = forwardRef<HTMLDivElement, PricingOptionsMenuActionProps>(\n ({children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <div\n ref={ref}\n className={clsx(styles['PricingOptions__menu-action'], className)}\n data-testid={testId || testIds.menuAction}\n {...rest}\n >\n {children}\n </div>\n )\n },\n)\n\ntype PricingOptionsFootnoteProps = PropsWithChildren<BaseProps<HTMLParagraphElement>> & {\n 'data-testid'?: string\n}\n\nconst PricingOptionsFootnote = forwardRef<HTMLParagraphElement, PricingOptionsFootnoteProps>(\n ({children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <Text\n as=\"p\"\n className={clsx(styles.PricingOptions__footnote, className)}\n data-testid={testId || testIds.footnote}\n ref={ref}\n size=\"100\"\n variant=\"muted\"\n weight=\"light\"\n {...rest}\n >\n {children}\n </Text>\n )\n },\n)\n\n/**\n * Pricing options component:\n * {@link https://primer.style/brand/components/PricingOptions/ See usage examples}.\n */\nexport const PricingOptions = Object.assign(PricingOptionsRoot, {\n ActionsMessage: PricingOptionsActionsMessage,\n Description: PricingOptionsDescription,\n FeatureList: PricingOptionsFeatureList,\n FeatureListHeading: PricingOptionsFeatureListHeading,\n FeatureListGroupHeading: PricingOptionsFeatureListGroupHeading,\n FeatureListItem: PricingOptionsFeatureListItem,\n Footnote: PricingOptionsFootnote,\n Label: PricingOptionsLabel,\n Heading: PricingOptionsHeading,\n Item: PricingOptionsItem,\n MenuAction: PricingOptionsMenuAction,\n Price: PricingOptionsPrice,\n PrimaryAction: PricingOptionsPrimaryAction,\n SecondaryAction: PricingOptionsSecondaryAction,\n testIds,\n})\n"],"mappings":"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"}
1
+ {"version":3,"file":"PricingOptions.js","names":[],"sources":["../../src/PricingOptions/PricingOptions.tsx"],"sourcesContent":["import React, {forwardRef, HTMLAttributes, PropsWithChildren, useMemo, Ref, Dispatch} from 'react'\nimport {CheckIcon, TriangleDownIcon, XIcon} from '@primer/octicons-react'\nimport {clsx} from 'clsx'\nimport type {ListItemProps} from '../list/ListItem/ListItem'\nimport type {BaseProps} from '../component-helpers'\nimport {Accordion} from '../Accordion/Accordion'\nimport {Button, type ButtonBaseProps} from '../Button'\nimport {Heading as HeadingComponent, type HeadingProps} from '../Heading'\nimport {Text} from '../Text'\nimport {Tooltip} from '../Tooltip'\nimport {useWindowSize} from '../hooks/useWindowSize'\nimport {UnorderedList, type UnorderedListProps} from '../list'\n\n/**\n * Design tokens\n */\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/pricing-options/pricing-options.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/pricing-options/colors-with-modes.css'\n\n/**\n * Main stylesheet (as a CSS Module)\n */\nimport styles from './PricingOptions.module.css'\n\ntype AlignOptions = 'start' | 'center'\n\nexport type PricingOptionsProps = {\n align?: AlignOptions\n variant?: 'default' | 'default-gradient' | 'cards' | 'cards-gradient'\n ['data-testid']?: string\n} & PropsWithChildren<BaseProps<HTMLDivElement>> &\n HTMLAttributes<HTMLDivElement>\n\nconst testIds = {\n root: 'PricingOptions',\n item: 'PricingOptions__item',\n labelRow: 'PricingOptions__labels',\n heading: 'PricingOptions__heading',\n label: 'PricingOptions__label',\n description: 'PricingOptions__description',\n price: 'PricingOptions__price',\n actionsMessage: 'PricingOptions__actionsMessage',\n primaryAction: 'PricingOptions__primaryAction',\n secondaryAction: 'PricingOptions__secondaryAction',\n menuAction: 'PricingOptions__menuAction',\n featureList: 'PricingOptions__featureList',\n featureListHeading: 'PricingOptions__featureListHeading',\n featureListItem: 'PricingOptions__featureListItem',\n featureListGroupHeading: 'PricingOptions__featureListGroupHeading',\n footnote: 'PricingOptions__footnote',\n}\n\ntype PricingOptionsContextValue = {\n align: AlignOptions\n allFeatureListsExpanded: boolean\n updateFeatureListExpanded: Dispatch<boolean>\n featureListUserInteracted: boolean\n setFeatureListUserInteracted: Dispatch<boolean>\n}\n\nconst PricingOptionsContext = React.createContext<PricingOptionsContextValue>({\n align: 'start',\n allFeatureListsExpanded: false,\n featureListUserInteracted: false,\n updateFeatureListExpanded: () => {},\n setFeatureListUserInteracted: () => {},\n})\n\nconst PricingOptionsProvider = ({children, align = 'start'}: PropsWithChildren<{align: AlignOptions}>) => {\n const [allFeatureListsExpanded, setAllFeatureListsExpanded] = React.useState(false)\n const [featureListUserInteracted, setFeatureListUserInteracted] = React.useState(false)\n\n const updateFeatureListExpanded = (newValue: boolean) => {\n setAllFeatureListsExpanded(() => newValue)\n }\n\n return (\n <PricingOptionsContext.Provider\n value={{\n allFeatureListsExpanded,\n updateFeatureListExpanded,\n align,\n featureListUserInteracted,\n setFeatureListUserInteracted,\n }}\n >\n {children}\n </PricingOptionsContext.Provider>\n )\n}\n\nconst usePricingOptions = (): PricingOptionsContextValue => {\n return React.useContext(PricingOptionsContext)\n}\n\nconst pricingOptionsDefaultFeatureListHeading = \"What's included\"\n\ntype PricingOptionsLabelProps = PropsWithChildren<{\n 'data-testid'?: string\n}>\n\nconst PricingOptionsLabel = ({children}: PricingOptionsLabelProps) => {\n return <>{children}</>\n}\n\nconst PricingOptionsRoot = forwardRef(\n (\n {\n align = 'start',\n children,\n className,\n 'data-testid': testId,\n variant = 'default',\n ...rest\n }: PropsWithChildren<PricingOptionsProps>,\n ref: Ref<HTMLDivElement>,\n ) => {\n const filteredChildren = useMemo(\n () =>\n React.Children.toArray(children).filter(\n child => React.isValidElement(child) && typeof child.type !== 'string' && child.type === PricingOptionsItem,\n ) as React.ReactElement<PropsWithChildren<PricingOptionsItem>>[],\n [children],\n ).slice(0, 4)\n\n const headerLabels = useMemo(\n () =>\n filteredChildren.map(item => {\n const labelChild = React.Children.toArray(item.props.children).find(\n child =>\n React.isValidElement(child) && typeof child.type !== 'string' && child.type === PricingOptionsLabel,\n )\n\n return (\n React.isValidElement(labelChild) ? labelChild : null\n ) as React.ReactElement<PricingOptionsLabelProps> | null\n }),\n [filteredChildren],\n )\n\n const hasHeaderLabels = headerLabels.some(label => label !== null)\n\n return (\n <PricingOptionsProvider align={align}>\n <div\n className={clsx(\n styles.PricingOptions,\n styles[`PricingOptions--layout-${variant.includes('default') ? 'default' : 'cards'}`],\n styles[`PricingOptions--items${filteredChildren.length}`],\n styles[`PricingOptions--appearance-${variant.includes('gradient') ? 'gradient' : 'solid'}`],\n className,\n )}\n data-testid={testId || testIds.root}\n ref={ref}\n {...(rest as HTMLAttributes<HTMLElement>)}\n >\n {filteredChildren}\n\n {hasHeaderLabels && (\n <div\n className={styles['PricingOptions__labels']}\n data-testid={testIds.labelRow}\n style={\n {\n '--brand-pricing-options-column-count': filteredChildren.length,\n } as React.CSSProperties\n }\n >\n {headerLabels.map((headerLabel, index) => {\n const hasLabelContent = Boolean(headerLabel?.props.children)\n\n return (\n <div\n className={clsx(\n styles['PricingOptions__label-cell'],\n hasLabelContent\n ? styles['PricingOptions__label-cell--has-label']\n : styles['PricingOptions__label-cell--empty'],\n )}\n data-testid={headerLabel?.props['data-testid'] || testIds.label}\n key={index}\n >\n {headerLabel?.props.children ? (\n <span className={styles.PricingOptions__label}>{headerLabel.props.children}</span>\n ) : null}\n </div>\n )\n })}\n </div>\n )}\n </div>\n </PricingOptionsProvider>\n )\n },\n)\n\nexport type PricingOptionsItem = {\n ['data-testid']?: string\n /**\n * Escape-hatch for inserting custom React components.\n * Warning:\n * This prop isn't advertised in our docs but remains part of the public API for edge-cases.\n * Need to use this prop? Please check in with #primer-brand first to confirm correct usage.\n */\n leadingComponent?: React.ReactElement\n} & PropsWithChildren<BaseProps<HTMLDivElement>>\n\ntype FilteredChildren = {\n FeatureList: React.ReactElement<PricingOptionsFeatureListProps> | null\n Actions: React.ReactElement<PricingOptionsActionsProps>[]\n ActionsMessage: React.ReactElement<PricingOptionsActionsMessageProps> | null\n Footnote: React.ReactElement<PricingOptionsFootnoteProps> | null\n Heading: React.ReactElement<PricingOptionsHeadingProps> | null\n Description: React.ReactElement<PricingOptionsDescriptionProps> | null\n Price: React.ReactElement<PricingOptionsPriceProps> | null\n}\n\nconst PricingOptionsItem = forwardRef(\n (\n {'data-testid': testId, children, className, leadingComponent, ...rest}: PropsWithChildren<PricingOptionsItem>,\n ref: Ref<HTMLDivElement>,\n ) => {\n const {align} = usePricingOptions()\n\n const memoizedChildren = useMemo(() => React.Children.toArray(children), [children])\n\n const filteredChildren = memoizedChildren.reduce<FilteredChildren>(\n (acc, child) => {\n if (React.isValidElement(child) && typeof child.type !== 'string') {\n if (child.type === PricingOptionsFeatureList) {\n acc.FeatureList = child as React.ReactElement<PricingOptionsFeatureListProps> | null\n }\n\n if (\n child.type === PricingOptionsPrimaryAction ||\n child.type === PricingOptionsSecondaryAction ||\n child.type === PricingOptionsMenuAction\n ) {\n acc.Actions.push(child as React.ReactElement<PricingOptionsActionsProps>)\n }\n\n if (child.type === PricingOptionsActionsMessage) {\n acc.ActionsMessage = child as React.ReactElement<PricingOptionsActionsMessageProps>\n }\n\n if (child.type === PricingOptionsFootnote) {\n acc.Footnote = child as React.ReactElement<PricingOptionsFootnoteProps>\n }\n\n if (child.type === PricingOptionsHeading) {\n acc.Heading = child as React.ReactElement<PricingOptionsHeadingProps>\n }\n\n if (child.type === PricingOptionsDescription) {\n acc.Description = child as React.ReactElement<PricingOptionsDescriptionProps>\n }\n\n if (child.type === PricingOptionsPrice) {\n acc.Price = child as React.ReactElement<PricingOptionsPriceProps>\n }\n }\n\n return acc\n },\n {\n FeatureList: null,\n Actions: [],\n ActionsMessage: null,\n Footnote: null,\n Heading: null,\n Description: null,\n Price: null,\n },\n )\n\n const {Heading, Description, Price, FeatureList, Actions, ActionsMessage, Footnote} = filteredChildren\n\n return (\n <div\n className={clsx(\n styles.PricingOptions__item,\n leadingComponent && styles['PricingOptions__item--has-leading-component'],\n styles[`PricingOptions__item--align-${align}`],\n className,\n )}\n data-testid={testId || testIds.item}\n ref={ref}\n {...(rest as HTMLAttributes<HTMLElement>)}\n >\n <div className={styles['PricingOptions__header']}>{Heading}</div>\n {Description}\n {Price}\n {leadingComponent && <div className={styles['PricingOptions__leading-component']}>{leadingComponent}</div>}\n {(Actions.length > 0 || ActionsMessage) && (\n <div className={styles.PricingOptions__actions}>\n {Actions}\n {ActionsMessage}\n </div>\n )}\n {FeatureList}\n {Footnote}\n </div>\n )\n },\n)\n\ntype PricingOptionsDescriptionProps = PropsWithChildren<BaseProps<HTMLParagraphElement>> & {\n 'data-testid'?: string\n}\n\nconst PricingOptionsDescription = forwardRef<HTMLParagraphElement, PricingOptionsDescriptionProps>(\n ({children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <Text\n as=\"p\"\n className={clsx(styles.PricingOptions__description, className)}\n data-testid={testId || testIds.description}\n ref={ref}\n size=\"200\"\n variant=\"muted\"\n {...rest}\n >\n {children}\n </Text>\n )\n },\n)\n\ntype PricingOptionsHeadingProps = PropsWithChildren<BaseProps<HTMLHeadingElement>> & {\n 'data-testid'?: string\n} & HeadingProps\n\nconst PricingOptionsHeading = forwardRef<HTMLHeadingElement, PricingOptionsHeadingProps>(\n ({as = 'h3', children, 'data-testid': testId, size = '5', className, ...rest}, ref) => {\n return (\n <HeadingComponent\n as={as}\n className={clsx(styles.PricingOptions__heading, styles[`PricingOptions__heading--size-${size}`], className)}\n data-testid={testId || testIds.heading}\n ref={ref}\n size={size}\n {...rest}\n >\n {children}\n </HeadingComponent>\n )\n },\n)\n\ntype PricingOptionsPriceProps = PropsWithChildren<BaseProps<HTMLParagraphElement>> & {\n currencyCode?: string\n currencySymbol?: string\n 'data-testid'?: string\n originalPrice?: string\n trailingText?: string\n}\n\nconst PricingOptionsPrice = forwardRef<HTMLParagraphElement, PricingOptionsPriceProps>(\n (\n {\n children,\n className,\n currencyCode = 'USD',\n currencySymbol = '$',\n 'data-testid': testId,\n originalPrice,\n trailingText,\n ...rest\n },\n ref,\n ) => {\n return (\n <Text\n as=\"p\"\n className={clsx(styles.PricingOptions__price, className)}\n data-testid={testId || testIds.price}\n ref={ref}\n weight=\"normal\"\n {...rest}\n >\n <span className={styles['PricingOptions__price-amount']}>\n <Text as=\"span\" className={styles['PricingOptions__price-currency-symbol']} size=\"500\" weight=\"normal\">\n {currencySymbol}\n </Text>\n\n <Text as=\"span\" className={styles['PricingOptions__price-value']} size=\"500\" weight=\"normal\">\n {children}\n </Text>\n\n <Text as=\"span\" className={styles['PricingOptions__price-currency-code']} size=\"100\" weight=\"normal\">\n {currencyCode}\n </Text>\n </span>\n\n {originalPrice && (\n <del className={styles['PricingOptions__price-original-price']}>\n <Text size=\"400\" variant=\"muted\" weight=\"normal\">\n {currencySymbol}\n </Text>\n <Text\n className={styles['PricingOptions__price-original-price-value']}\n size=\"300\"\n variant=\"muted\"\n weight=\"normal\"\n >\n {originalPrice}\n </Text>\n </del>\n )}\n\n {trailingText && (\n <Text as=\"span\" className={styles['PricingOptions__price-trailing-text']} size=\"200\" variant=\"muted\">\n {trailingText}\n </Text>\n )}\n </Text>\n )\n },\n)\n\ntype PricingOptionsFeatureListProps = BaseProps<HTMLUListElement> & {\n accordionAs?: HeadingProps['as']\n expanded?: ExpandedProp\n hasDivider?: boolean\n children: React.ReactElement<PricingOptionsFeatureListGroupHeadingProps | PricingOptionsFeatureListItemProps>[]\n 'data-testid'?: string\n}\n\ntype ExpandedProp = boolean | ResponsiveExpandableProps\n\ntype ResponsiveExpandableProps = {\n narrow: boolean\n regular: boolean\n wide: boolean\n}\n\ntype ValidFeatureListChildren = {\n Heading: React.ReactElement<PricingOptionsFeatureListGroupHeadingProps> | null\n Items: React.ReactElement<PricingOptionsFeatureListItemProps>[]\n}[]\n\nconst PricingOptionsFeatureList = forwardRef<HTMLDivElement, PricingOptionsFeatureListProps>(\n ({children, className, 'data-testid': testId, hasDivider = true, expanded, accordionAs = 'h4', ...rest}, ref) => {\n const {\n allFeatureListsExpanded,\n updateFeatureListExpanded,\n featureListUserInteracted,\n setFeatureListUserInteracted,\n } = usePricingOptions()\n const {isMedium: isRegular, isXLarge: isWide, isSmall: isNarrow} = useWindowSize()\n\n React.useEffect(() => {\n if (expanded === undefined || typeof expanded === 'object') {\n setFeatureListUserInteracted(false)\n }\n }, [isRegular, isWide, isNarrow, setFeatureListUserInteracted, expanded])\n\n const shouldBeOpen = React.useMemo(() => {\n if (featureListUserInteracted) {\n return allFeatureListsExpanded\n }\n\n // Important: Fixes layout shift by ensuring that explicit values are preserved.\n if (typeof expanded === 'boolean') {\n return expanded\n }\n // If undefined, should follow some default responsive logic\n if (expanded === undefined) {\n if (isWide) return true\n if (isRegular) return true\n return false\n }\n\n // finally handle responsive objects, and go from largest to smallest viewports\n const {narrow, regular, wide} = expanded\n if (isWide) return wide\n if (isRegular) return regular\n return narrow\n }, [expanded, allFeatureListsExpanded, isRegular, isWide, featureListUserInteracted])\n\n let FeatureListHeading = (\n <PricingOptions.FeatureListHeading>{pricingOptionsDefaultFeatureListHeading}</PricingOptions.FeatureListHeading>\n )\n\n const FilteredChildrenSet = React.Children.toArray(children).reduce<ValidFeatureListChildren>((acc, child) => {\n if (React.isValidElement(child) && child.type === PricingOptionsFeatureListHeading) {\n FeatureListHeading = child\n } else if (React.isValidElement(child) && child.type === PricingOptionsFeatureListItem) {\n if (acc.length === 0) {\n acc.push({Heading: null, Items: []})\n }\n acc[acc.length - 1].Items.push(child as React.ReactElement<PricingOptionsFeatureListItemProps>)\n } else if (React.isValidElement(child) && child.type === PricingOptionsFeatureListGroupHeading) {\n acc.push({\n Heading: child as React.ReactElement<PricingOptionsFeatureListGroupHeadingProps>,\n Items: [],\n })\n }\n\n return acc\n }, [])\n\n const FeatureListItems = FilteredChildrenSet.map(({Heading: HeadingChild, Items}, index) => (\n <div className={styles['PricingOptions__feature-list-set']} key={index}>\n {HeadingChild}\n\n <UnorderedList variant=\"checked\" {...(rest as UnorderedListProps)}>\n {Items}\n </UnorderedList>\n </div>\n ))\n\n return (\n <div\n ref={ref}\n className={clsx(\n styles['PricingOptions__feature-list'],\n hasDivider && styles['PricingOptions__feature-list--has-divider'],\n className,\n )}\n data-testid={testId || testIds.featureList}\n >\n <Accordion\n className={styles['PricingOptions__feature-list-accordion']}\n disableAnimation\n open={shouldBeOpen}\n onToggle={event => {\n setFeatureListUserInteracted(true)\n updateFeatureListExpanded(event.currentTarget.open)\n }}\n >\n <Accordion.Heading as={accordionAs} className={styles['PricingOptions__feature-list-accordion-heading']}>\n {FeatureListHeading}\n\n <TriangleDownIcon className={styles['PricingOptions__feature-list-accordion-chevron']} />\n </Accordion.Heading>\n <Accordion.Content className={styles['PricingOptions__feature-list-accordion-content']}>\n {FeatureListItems}\n </Accordion.Content>\n </Accordion>\n </div>\n )\n },\n)\n\ntype PricingOptionsFeatureListHeadingProps = PropsWithChildren<BaseProps<HTMLDivElement>> & {\n 'data-testid'?: string\n}\n\nconst PricingOptionsFeatureListHeading = forwardRef<HTMLDivElement, PricingOptionsFeatureListHeadingProps>(\n ({children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <div className={className} data-testid={testId || testIds.featureListHeading} ref={ref} {...rest}>\n {children}\n </div>\n )\n },\n)\n\ntype PricingOptionsFeatureListGroupHeadingProps = PropsWithChildren<BaseProps<HTMLHeadingElement>> & {\n as?: Exclude<HeadingProps['as'], 'h1' | 'h2'>\n 'data-testid'?: string\n}\n\nconst PricingOptionsFeatureListGroupHeading = forwardRef<\n HTMLHeadingElement,\n PricingOptionsFeatureListGroupHeadingProps\n>(({children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <HeadingComponent\n as=\"h4\"\n className={clsx(styles['PricingOptions__feature-list-group-heading'], className)}\n data-testid={testId || testIds.featureListGroupHeading}\n ref={ref}\n size=\"subhead-medium\"\n {...rest}\n >\n {children}\n </HeadingComponent>\n )\n})\n\ntype PricingOptionsFeatureListItemProps = PropsWithChildren<BaseProps<HTMLLIElement>> & {\n 'data-testid'?: string\n infoTooltip?: string\n variant?: 'included' | 'excluded'\n} & Omit<ListItemProps, 'variant'>\n\nconst PricingOptionsFeatureListItem = forwardRef<HTMLLIElement, PricingOptionsFeatureListItemProps>(\n (\n {\n children,\n className,\n infoTooltip,\n leadingVisual,\n leadingVisualFill,\n variant = 'included',\n 'data-testid': testId,\n ...rest\n },\n ref,\n ) => {\n const itemLeadingVisual = leadingVisual ?? (variant === 'included' ? CheckIcon : XIcon)\n const itemLeadingVisualAriaLabel = variant === 'included' ? 'Includes' : 'Does not include'\n\n const itemLeadingVisualFill =\n leadingVisualFill ??\n (variant === 'included' ? 'var(--brand-color-accent-primary)' : 'var(--brand-color-text-muted)')\n\n return (\n <UnorderedList.Item\n className={clsx(\n styles['PricingOptions__feature-list-item'],\n {[styles['PricingOptions__feature-list-item--excluded']]: variant === 'excluded'},\n infoTooltip && styles['PricingOptions__feature-list-item--has-info'],\n className,\n )}\n data-testid={testId || testIds.featureListItem}\n leadingVisual={itemLeadingVisual}\n leadingVisualAriaLabel={itemLeadingVisualAriaLabel}\n leadingVisualFill={itemLeadingVisualFill}\n ref={ref}\n {...rest}\n >\n {children}\n {infoTooltip && (\n <Tooltip text={infoTooltip} direction=\"n\">\n <button\n type=\"button\"\n className={styles['PricingOptions__feature-list-item-info']}\n aria-label={`More information about ${typeof children === 'string' ? children : 'this feature'}`}\n >\n <svg viewBox=\"0 0 4 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\">\n <path\n d=\"M0.75 3C0.33579 3 0 3.33579 0 3.75C0 4.16421 0.33579 4.5 0.75 4.5H1V6.5H0.75C0.33579 6.5 0 6.8358 0 7.25C0 7.6642 0.33579 8 0.75 8H2.75C3.16421 8 3.5 7.6642 3.5 7.25C3.5 6.8358 3.16421 6.5 2.75 6.5H2.5V3.75C2.5 3.33579 2.16421 3 1.75 3H0.75Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M2.5 1C2.5 1.55228 2.05229 2 1.5 2C0.94772 2 0.5 1.55228 0.5 1C0.5 0.44772 0.94772 0 1.5 0C2.05229 0 2.5 0.44772 2.5 1Z\"\n fill=\"currentColor\"\n />\n </svg>\n </button>\n </Tooltip>\n )}\n </UnorderedList.Item>\n )\n },\n)\n\ntype AsA = {as: 'a'; href: string; 'data-testid'?: string} & React.AnchorHTMLAttributes<BaseProps<HTMLAnchorElement>> &\n ButtonBaseProps\n\ntype AsButton = {as: 'button'; 'data-testid'?: string} & React.ButtonHTMLAttributes<BaseProps<HTMLButtonElement>> &\n ButtonBaseProps\n\ntype PricingOptionsActionsProps = AsA | AsButton\n\ntype PricingOptionsActionsMessageProps = PropsWithChildren<BaseProps<HTMLDivElement>> & {\n 'data-testid'?: string\n leadingComponent?: React.ReactElement\n}\n\nconst PricingOptionsActionsMessage = forwardRef<HTMLDivElement, PricingOptionsActionsMessageProps>(\n ({children, className, 'data-testid': testId, leadingComponent, ...rest}, ref) => {\n return (\n <div\n ref={ref}\n className={clsx(styles['PricingOptions__actions-message'], className)}\n data-testid={testId || testIds.actionsMessage}\n {...rest}\n >\n {leadingComponent && (\n <span className={styles['PricingOptions__actions-message-leading-component']}>{leadingComponent}</span>\n )}\n <div className={styles['PricingOptions__actions-message-content']}>{children}</div>\n </div>\n )\n },\n)\n\nconst PricingOptionsPrimaryAction = forwardRef<\n HTMLAnchorElement | HTMLButtonElement,\n PropsWithChildren<PricingOptionsActionsProps>\n>(({as, children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <Button\n ref={ref as React.Ref<HTMLButtonElement>}\n as={as}\n data-testid={testId || testIds.primaryAction}\n className={clsx(styles['PricingOptions__primary-action'], className)}\n size=\"medium\"\n variant=\"primary\"\n block\n {...rest}\n >\n {children}\n </Button>\n )\n})\n\nconst PricingOptionsSecondaryAction = forwardRef<\n HTMLAnchorElement | HTMLButtonElement,\n PropsWithChildren<PricingOptionsActionsProps>\n>(({as, children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <Button\n ref={ref as React.Ref<HTMLButtonElement>}\n as={as}\n className={clsx(styles['PricingOptions__primary-action'], className)}\n data-testid={testId || testIds.secondaryAction}\n variant=\"secondary\"\n block\n {...rest}\n >\n {children}\n </Button>\n )\n})\n\ntype PricingOptionsMenuActionProps = PropsWithChildren<BaseProps<HTMLDivElement>> & {\n 'data-testid'?: string\n}\n\nconst PricingOptionsMenuAction = forwardRef<HTMLDivElement, PricingOptionsMenuActionProps>(\n ({children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <div\n ref={ref}\n className={clsx(styles['PricingOptions__menu-action'], className)}\n data-testid={testId || testIds.menuAction}\n {...rest}\n >\n {children}\n </div>\n )\n },\n)\n\ntype PricingOptionsFootnoteProps = PropsWithChildren<BaseProps<HTMLParagraphElement>> & {\n 'data-testid'?: string\n}\n\nconst PricingOptionsFootnote = forwardRef<HTMLParagraphElement, PricingOptionsFootnoteProps>(\n ({children, className, 'data-testid': testId, ...rest}, ref) => {\n return (\n <Text\n as=\"p\"\n className={clsx(styles.PricingOptions__footnote, className)}\n data-testid={testId || testIds.footnote}\n ref={ref}\n size=\"100\"\n variant=\"muted\"\n weight=\"light\"\n {...rest}\n >\n {children}\n </Text>\n )\n },\n)\n\n/**\n * Pricing options component:\n * {@link https://primer.style/brand/components/PricingOptions/ See usage examples}.\n */\nexport const PricingOptions = Object.assign(PricingOptionsRoot, {\n ActionsMessage: PricingOptionsActionsMessage,\n Description: PricingOptionsDescription,\n FeatureList: PricingOptionsFeatureList,\n FeatureListHeading: PricingOptionsFeatureListHeading,\n FeatureListGroupHeading: PricingOptionsFeatureListGroupHeading,\n FeatureListItem: PricingOptionsFeatureListItem,\n Footnote: PricingOptionsFootnote,\n Label: PricingOptionsLabel,\n Heading: PricingOptionsHeading,\n Item: PricingOptionsItem,\n MenuAction: PricingOptionsMenuAction,\n Price: PricingOptionsPrice,\n PrimaryAction: PricingOptionsPrimaryAction,\n SecondaryAction: PricingOptionsSecondaryAction,\n testIds,\n})\n"],"mappings":"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"}
@@ -4,7 +4,7 @@ import '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/size/si
4
4
  export declare const StackDirectionVariants: readonly ["horizontal", "vertical"];
5
5
  type StackDirectionVariants = (typeof StackDirectionVariants)[number];
6
6
  export declare const defaultStackDirection: "vertical";
7
- export declare const StackSpacingVariants: readonly ["none", "condensed", "normal", "spacious", 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 64, 80, 96, 112, 128];
7
+ export declare const StackSpacingVariants: readonly ["none", "condensed", "normal", "spacious", 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 60, 64, 80, 88, 96, 112, 128];
8
8
  type StackSpacingVariants = (typeof StackSpacingVariants)[number];
9
9
  export declare const defaultStackSpacing: "condensed";
10
10
  export declare const StackAlignItemVariants: readonly ["center", "flex-start", "flex-end"];
@@ -1 +1 @@
1
- {"version":3,"file":"Stack.d.ts","sourceRoot":"","sources":["../../src/Stack/Stack.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAA;AAGhD,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAA;AAInD,OAAO,gFAAgF,CAAA;AAGvF,eAAO,MAAM,sBAAsB,qCAAsC,CAAA;AACzE,KAAK,sBAAsB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAA;AACrE,eAAO,MAAM,qBAAqB,YAA4B,CAAA;AAE9D,eAAO,MAAM,oBAAoB,0HAAyE,CAAA;AAC1G,KAAK,oBAAoB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAA;AACjE,eAAO,MAAM,mBAAmB,aAA0B,CAAA;AAE1D,eAAO,MAAM,sBAAsB,+CAAgD,CAAA;AACnF,KAAK,sBAAsB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAA;AAErE,eAAO,MAAM,qBAAqB,6BAA8B,CAAA;AAChE,KAAK,qBAAqB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAA;AAEnE,eAAO,MAAM,2BAA2B,gGAK9B,CAAA;AACV,KAAK,sBAAsB,GAAG,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAA;AAE1E,KAAK,2BAA2B,GAAG;IACjC,MAAM,CAAC,EAAE,sBAAsB,CAAA;IAC/B,OAAO,CAAC,EAAE,sBAAsB,CAAA;IAChC,IAAI,CAAC,EAAE,sBAAsB,CAAA;CAC9B,CAAA;AAED,KAAK,uBAAuB,GAAG;IAC7B,MAAM,CAAC,EAAE,sBAAsB,CAAA;IAC/B,OAAO,CAAC,EAAE,sBAAsB,CAAA;IAChC,IAAI,CAAC,EAAE,sBAAsB,CAAA;CAC9B,CAAA;AAED,KAAK,sBAAsB,GAAG;IAC5B,MAAM,CAAC,EAAE,sBAAsB,CAAA;IAC/B,OAAO,CAAC,EAAE,sBAAsB,CAAA;IAChC,IAAI,CAAC,EAAE,sBAAsB,CAAA;CAC9B,CAAA;AAED,KAAK,oBAAoB,GAAG;IAC1B,MAAM,CAAC,EAAE,oBAAoB,CAAA;IAC7B,OAAO,CAAC,EAAE,oBAAoB,CAAA;IAC9B,IAAI,CAAC,EAAE,oBAAoB,CAAA;CAC5B,CAAA;AAED,KAAK,qBAAqB,GAAG;IAC3B,MAAM,CAAC,EAAE,qBAAqB,CAAA;IAC9B,OAAO,CAAC,EAAE,qBAAqB,CAAA;IAC/B,IAAI,CAAC,EAAE,qBAAqB,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG;IAChD,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,GAAG,KAAK,CAAC,SAAS,CAAA;IAC7C;;;;OAIG;IACH,SAAS,CAAC,EAAE,sBAAsB,GAAG,sBAAsB,CAAA;IAC3D;;;;OAIG;IACH,GAAG,CAAC,EAAE,oBAAoB,GAAG,oBAAoB,CAAA;IACjD;;;;OAIG;IACH,UAAU,CAAC,EAAE,sBAAsB,GAAG,uBAAuB,CAAA;IAC7D;;;;OAIG;IACH,OAAO,CAAC,EAAE,oBAAoB,GAAG,oBAAoB,CAAA;IACrD;;;;OAIG;IACH,cAAc,CAAC,EAAE,sBAAsB,GAAG,2BAA2B,CAAA;IACrE;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAC3B;;OAEG;IACH,QAAQ,CAAC,EAAE,qBAAqB,GAAG,qBAAqB,CAAA;CACzD,GAAG,SAAS,CAAC,cAAc,CAAC,GAC3B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;AA4GtC;;;GAGG;AACH,eAAO,MAAM,KAAK,yFAAwB,CAAA"}
1
+ {"version":3,"file":"Stack.d.ts","sourceRoot":"","sources":["../../src/Stack/Stack.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAA;AAGhD,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAA;AAInD,OAAO,gFAAgF,CAAA;AAGvF,eAAO,MAAM,sBAAsB,qCAAsC,CAAA;AACzE,KAAK,sBAAsB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAA;AACrE,eAAO,MAAM,qBAAqB,YAA4B,CAAA;AAE9D,eAAO,MAAM,oBAAoB,kIAAyE,CAAA;AAC1G,KAAK,oBAAoB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAA;AACjE,eAAO,MAAM,mBAAmB,aAA0B,CAAA;AAE1D,eAAO,MAAM,sBAAsB,+CAAgD,CAAA;AACnF,KAAK,sBAAsB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAA;AAErE,eAAO,MAAM,qBAAqB,6BAA8B,CAAA;AAChE,KAAK,qBAAqB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAA;AAEnE,eAAO,MAAM,2BAA2B,gGAK9B,CAAA;AACV,KAAK,sBAAsB,GAAG,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAA;AAE1E,KAAK,2BAA2B,GAAG;IACjC,MAAM,CAAC,EAAE,sBAAsB,CAAA;IAC/B,OAAO,CAAC,EAAE,sBAAsB,CAAA;IAChC,IAAI,CAAC,EAAE,sBAAsB,CAAA;CAC9B,CAAA;AAED,KAAK,uBAAuB,GAAG;IAC7B,MAAM,CAAC,EAAE,sBAAsB,CAAA;IAC/B,OAAO,CAAC,EAAE,sBAAsB,CAAA;IAChC,IAAI,CAAC,EAAE,sBAAsB,CAAA;CAC9B,CAAA;AAED,KAAK,sBAAsB,GAAG;IAC5B,MAAM,CAAC,EAAE,sBAAsB,CAAA;IAC/B,OAAO,CAAC,EAAE,sBAAsB,CAAA;IAChC,IAAI,CAAC,EAAE,sBAAsB,CAAA;CAC9B,CAAA;AAED,KAAK,oBAAoB,GAAG;IAC1B,MAAM,CAAC,EAAE,oBAAoB,CAAA;IAC7B,OAAO,CAAC,EAAE,oBAAoB,CAAA;IAC9B,IAAI,CAAC,EAAE,oBAAoB,CAAA;CAC5B,CAAA;AAED,KAAK,qBAAqB,GAAG;IAC3B,MAAM,CAAC,EAAE,qBAAqB,CAAA;IAC9B,OAAO,CAAC,EAAE,qBAAqB,CAAA;IAC/B,IAAI,CAAC,EAAE,qBAAqB,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG;IAChD,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,GAAG,KAAK,CAAC,SAAS,CAAA;IAC7C;;;;OAIG;IACH,SAAS,CAAC,EAAE,sBAAsB,GAAG,sBAAsB,CAAA;IAC3D;;;;OAIG;IACH,GAAG,CAAC,EAAE,oBAAoB,GAAG,oBAAoB,CAAA;IACjD;;;;OAIG;IACH,UAAU,CAAC,EAAE,sBAAsB,GAAG,uBAAuB,CAAA;IAC7D;;;;OAIG;IACH,OAAO,CAAC,EAAE,oBAAoB,GAAG,oBAAoB,CAAA;IACrD;;;;OAIG;IACH,cAAc,CAAC,EAAE,sBAAsB,GAAG,2BAA2B,CAAA;IACrE;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAC3B;;OAEG;IACH,QAAQ,CAAC,EAAE,qBAAqB,GAAG,qBAAqB,CAAA;CACzD,GAAG,SAAS,CAAC,cAAc,CAAC,GAC3B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;AA4GtC;;;GAGG;AACH,eAAO,MAAM,KAAK,yFAAwB,CAAA"}
@@ -0,0 +1 @@
1
+ .Primer_Brand__Stack-module__Stack___kkChc{display:flex}.Primer_Brand__Stack-module__Stack--vertical___bDZvE{flex-direction:column}.Primer_Brand__Stack-module__Stack--horizontal___SffMX{flex-direction:row}.Primer_Brand__Stack-module__Stack-narrow--vertical___IAUDe{flex-direction:column}.Primer_Brand__Stack-module__Stack-narrow--horizontal___2KaoW{flex-direction:row}@media screen and (width>=48rem){.Primer_Brand__Stack-module__Stack-regular--vertical___vd6L5{flex-direction:column}.Primer_Brand__Stack-module__Stack-regular--horizontal___s7IV3{flex-direction:row}}@media screen and (width>=80rem){.Primer_Brand__Stack-module__Stack-wide--vertical___pr0cr{flex-direction:column}.Primer_Brand__Stack-module__Stack-wide--horizontal___2sAhE{flex-direction:row}}.Primer_Brand__Stack-module__Stack--gap-none___M7oco{gap:0}.Primer_Brand__Stack-module__Stack--gap-condensed___wITpD{gap:var(--brand-stack-gap-condensed)}.Primer_Brand__Stack-module__Stack--gap-normal___3_XTQ{gap:var(--brand-stack-gap-normal)}.Primer_Brand__Stack-module__Stack--gap-spacious___YWDRs{gap:var(--brand-stack-gap-spacious)}.Primer_Brand__Stack-module__Stack--gap-4___DmtHd{gap:var(--base-size-4)}.Primer_Brand__Stack-module__Stack--gap-8___0tz6i{gap:var(--base-size-8)}.Primer_Brand__Stack-module__Stack--gap-12___hw3H6{gap:var(--base-size-12)}.Primer_Brand__Stack-module__Stack--gap-16___t6Ejn{gap:var(--base-size-16)}.Primer_Brand__Stack-module__Stack--gap-20___FbD_l{gap:var(--base-size-20)}.Primer_Brand__Stack-module__Stack--gap-24___aI3Ni{gap:var(--base-size-24)}.Primer_Brand__Stack-module__Stack--gap-28___kvqUN{gap:var(--base-size-28)}.Primer_Brand__Stack-module__Stack--gap-32___QcuiZ{gap:var(--base-size-32)}.Primer_Brand__Stack-module__Stack--gap-36___bzo72{gap:var(--base-size-36)}.Primer_Brand__Stack-module__Stack--gap-40____noq3{gap:var(--base-size-40)}.Primer_Brand__Stack-module__Stack--gap-44___E14a1{gap:var(--base-size-44)}.Primer_Brand__Stack-module__Stack--gap-48___4cXLL{gap:var(--base-size-48)}.Primer_Brand__Stack-module__Stack--gap-60___Og2VH{gap:var(--base-size-60)}.Primer_Brand__Stack-module__Stack--gap-64___Jc3_y{gap:var(--base-size-64)}.Primer_Brand__Stack-module__Stack--gap-80___L08Xx{gap:var(--base-size-80)}.Primer_Brand__Stack-module__Stack--gap-88___AyHSj{gap:var(--base-size-88)}.Primer_Brand__Stack-module__Stack--gap-96___akgBJ{gap:var(--base-size-96)}.Primer_Brand__Stack-module__Stack--gap-112___E8Grv{gap:var(--base-size-112)}.Primer_Brand__Stack-module__Stack--gap-128___SVUO1{gap:var(--base-size-128)}.Primer_Brand__Stack-module__Stack-narrow--gap-none___YrNLI{gap:0}.Primer_Brand__Stack-module__Stack-narrow--gap-condensed___1jfe1{gap:var(--brand-stack-gap-condensed)}.Primer_Brand__Stack-module__Stack-narrow--gap-normal___j5C5u{gap:var(--brand-stack-gap-normal)}.Primer_Brand__Stack-module__Stack-narrow--gap-spacious___7yaBE{gap:var(--brand-stack-gap-spacious)}.Primer_Brand__Stack-module__Stack--padding-none___YsKYp{padding:0}.Primer_Brand__Stack-module__Stack--padding-condensed___NyPEM{padding:var(--brand-stack-padding-condensed)}.Primer_Brand__Stack-module__Stack--padding-normal___Z7YWq{padding:var(--brand-stack-padding-normal)}.Primer_Brand__Stack-module__Stack--padding-spacious___HCbMd{padding:var(--brand-stack-padding-spacious)}.Primer_Brand__Stack-module__Stack--padding-4____FXLn{padding:var(--base-size-4)}.Primer_Brand__Stack-module__Stack--padding-8___mfgwT{padding:var(--base-size-8)}.Primer_Brand__Stack-module__Stack--padding-12___xAM4B{padding:var(--base-size-12)}.Primer_Brand__Stack-module__Stack--padding-16___XZRrW{padding:var(--base-size-16)}.Primer_Brand__Stack-module__Stack--padding-20___4KQLU{padding:var(--base-size-20)}.Primer_Brand__Stack-module__Stack--padding-24___xwvS5{padding:var(--base-size-24)}.Primer_Brand__Stack-module__Stack--padding-28___RzzNL{padding:var(--base-size-28)}.Primer_Brand__Stack-module__Stack--padding-32___wkcqe{padding:var(--base-size-32)}.Primer_Brand__Stack-module__Stack--padding-36___LSie5{padding:var(--base-size-36)}.Primer_Brand__Stack-module__Stack--padding-40___VqBeq{padding:var(--base-size-40)}.Primer_Brand__Stack-module__Stack--padding-44___mm4AF{padding:var(--base-size-44)}.Primer_Brand__Stack-module__Stack--padding-48___t1OLR{padding:var(--base-size-48)}.Primer_Brand__Stack-module__Stack--padding-60___0mxrO{padding:var(--base-size-60)}.Primer_Brand__Stack-module__Stack--padding-64___V2DFf{padding:var(--base-size-64)}.Primer_Brand__Stack-module__Stack--padding-80___hoHKh{padding:var(--base-size-80)}.Primer_Brand__Stack-module__Stack--padding-88___goVG4{padding:var(--base-size-88)}.Primer_Brand__Stack-module__Stack--padding-96___aJNAL{padding:var(--base-size-96)}.Primer_Brand__Stack-module__Stack--padding-112___4_E_r{padding:var(--base-size-112)}.Primer_Brand__Stack-module__Stack--padding-128___pxk0j{padding:var(--base-size-128)}.Primer_Brand__Stack-module__Stack-narrow--padding-none___XJ0bB{padding:0}.Primer_Brand__Stack-module__Stack-narrow--padding-condensed___ev3AN{padding:var(--brand-stack-padding-condensed)}.Primer_Brand__Stack-module__Stack-narrow--padding-normal___Nzmce{padding:var(--brand-stack-padding-normal)}.Primer_Brand__Stack-module__Stack-narrow--padding-spacious___mCH98{padding:var(--brand-stack-padding-spacious)}.Primer_Brand__Stack-module__Stack-narrow--padding-4___q19rQ{padding:var(--base-size-4)}.Primer_Brand__Stack-module__Stack-narrow--padding-8___kcIyl{padding:var(--base-size-8)}.Primer_Brand__Stack-module__Stack-narrow--padding-12___XMlJ1{padding:var(--base-size-12)}.Primer_Brand__Stack-module__Stack-narrow--padding-16___8SqCc{padding:var(--base-size-16)}.Primer_Brand__Stack-module__Stack-narrow--padding-20___UHjCb{padding:var(--base-size-20)}.Primer_Brand__Stack-module__Stack-narrow--padding-24____i12s{padding:var(--base-size-24)}.Primer_Brand__Stack-module__Stack-narrow--padding-28___u0yWu{padding:var(--base-size-28)}.Primer_Brand__Stack-module__Stack-narrow--padding-32___zqRGI{padding:var(--base-size-32)}.Primer_Brand__Stack-module__Stack-narrow--padding-36___lGKdp{padding:var(--base-size-36)}.Primer_Brand__Stack-module__Stack-narrow--padding-40___atyPw{padding:var(--base-size-40)}.Primer_Brand__Stack-module__Stack-narrow--padding-44___OVq8j{padding:var(--base-size-44)}.Primer_Brand__Stack-module__Stack-narrow--padding-48___nCssn{padding:var(--base-size-48)}.Primer_Brand__Stack-module__Stack-narrow--padding-60___TZzjf{padding:var(--base-size-60)}.Primer_Brand__Stack-module__Stack-narrow--padding-64___0f2_2{padding:var(--base-size-64)}.Primer_Brand__Stack-module__Stack-narrow--padding-80___5zWH_{padding:var(--base-size-80)}.Primer_Brand__Stack-module__Stack-narrow--padding-88___XetV9{padding:var(--base-size-88)}.Primer_Brand__Stack-module__Stack-narrow--padding-96___uTd_u{padding:var(--base-size-96)}.Primer_Brand__Stack-module__Stack-narrow--padding-112___pF7Tf{padding:var(--base-size-112)}.Primer_Brand__Stack-module__Stack-narrow--padding-128___5p0JU{padding:var(--base-size-128)}.Primer_Brand__Stack-module__Stack-narrow--gap-4___6moeR{gap:var(--base-size-4)}.Primer_Brand__Stack-module__Stack-narrow--gap-8___ZnKF3{gap:var(--base-size-8)}.Primer_Brand__Stack-module__Stack-narrow--gap-12___wppH_{gap:var(--base-size-12)}.Primer_Brand__Stack-module__Stack-narrow--gap-16___NtSXw{gap:var(--base-size-16)}.Primer_Brand__Stack-module__Stack-narrow--gap-20___pCp05{gap:var(--base-size-20)}.Primer_Brand__Stack-module__Stack-narrow--gap-24___d9_7X{gap:var(--base-size-24)}.Primer_Brand__Stack-module__Stack-narrow--gap-28___yydXA{gap:var(--base-size-28)}.Primer_Brand__Stack-module__Stack-narrow--gap-32___uIKIR{gap:var(--base-size-32)}.Primer_Brand__Stack-module__Stack-narrow--gap-36___j5Zvi{gap:var(--base-size-36)}.Primer_Brand__Stack-module__Stack-narrow--gap-40___XyNCt{gap:var(--base-size-40)}.Primer_Brand__Stack-module__Stack-narrow--gap-44___IooME{gap:var(--base-size-44)}.Primer_Brand__Stack-module__Stack-narrow--gap-48___9Ri5H{gap:var(--base-size-48)}.Primer_Brand__Stack-module__Stack-narrow--gap-60___FE3Wk{gap:var(--base-size-60)}.Primer_Brand__Stack-module__Stack-narrow--gap-64___f5a6m{gap:var(--base-size-64)}.Primer_Brand__Stack-module__Stack-narrow--gap-80___t8fnj{gap:var(--base-size-80)}.Primer_Brand__Stack-module__Stack-narrow--gap-88___7PC64{gap:var(--base-size-88)}.Primer_Brand__Stack-module__Stack-narrow--gap-96___kupcP{gap:var(--base-size-96)}.Primer_Brand__Stack-module__Stack-narrow--gap-112____ZzLO{gap:var(--base-size-112)}.Primer_Brand__Stack-module__Stack-narrow--gap-128___Zrn34{gap:var(--base-size-128)}@media screen and (width>=48rem){.Primer_Brand__Stack-module__Stack-regular--gap-none___84Qcx{gap:0}.Primer_Brand__Stack-module__Stack-regular--gap-condensed___nXEjo{gap:var(--brand-stack-gap-condensed)}.Primer_Brand__Stack-module__Stack-regular--gap-normal___4AJ0b{gap:var(--brand-stack-gap-normal)}.Primer_Brand__Stack-module__Stack-regular--gap-spacious___5ovu5{gap:var(--brand-stack-gap-spacious)}.Primer_Brand__Stack-module__Stack-regular--gap-4___8q5d5{gap:var(--base-size-4)}.Primer_Brand__Stack-module__Stack-regular--gap-8___ruGAD{gap:var(--base-size-8)}.Primer_Brand__Stack-module__Stack-regular--gap-12___pkc6_{gap:var(--base-size-12)}.Primer_Brand__Stack-module__Stack-regular--gap-16___Cyxjb{gap:var(--base-size-16)}.Primer_Brand__Stack-module__Stack-regular--gap-20___C8Szl{gap:var(--base-size-20)}.Primer_Brand__Stack-module__Stack-regular--gap-24___JTvNO{gap:var(--base-size-24)}.Primer_Brand__Stack-module__Stack-regular--gap-28___jwMPq{gap:var(--base-size-28)}.Primer_Brand__Stack-module__Stack-regular--gap-32___e6bgD{gap:var(--base-size-32)}.Primer_Brand__Stack-module__Stack-regular--gap-36___gC2Bo{gap:var(--base-size-36)}.Primer_Brand__Stack-module__Stack-regular--gap-40___NYqUy{gap:var(--base-size-40)}.Primer_Brand__Stack-module__Stack-regular--gap-44___b_NET{gap:var(--base-size-44)}.Primer_Brand__Stack-module__Stack-regular--gap-48___QaR_m{gap:var(--base-size-48)}.Primer_Brand__Stack-module__Stack-regular--gap-60___t9VTq{gap:var(--base-size-60)}.Primer_Brand__Stack-module__Stack-regular--gap-64___xCaJe{gap:var(--base-size-64)}.Primer_Brand__Stack-module__Stack-regular--gap-80___rhDhC{gap:var(--base-size-80)}.Primer_Brand__Stack-module__Stack-regular--gap-88___Yaka3{gap:var(--base-size-88)}.Primer_Brand__Stack-module__Stack-regular--gap-96___Ts_06{gap:var(--base-size-96)}.Primer_Brand__Stack-module__Stack-regular--gap-112___eHocK{gap:var(--base-size-112)}.Primer_Brand__Stack-module__Stack-regular--gap-128___uidMP{gap:var(--base-size-128)}.Primer_Brand__Stack-module__Stack-regular--padding-none___BcPTQ{padding:0}.Primer_Brand__Stack-module__Stack-regular--padding-condensed___Wd_3A{padding:var(--brand-stack-padding-condensed)}.Primer_Brand__Stack-module__Stack-regular--padding-normal___f3Joq{padding:var(--brand-stack-padding-normal)}.Primer_Brand__Stack-module__Stack-regular--padding-spacious___xzuU0{padding:var(--brand-stack-padding-spacious)}.Primer_Brand__Stack-module__Stack-regular--padding-4___pEH4Z{padding:var(--base-size-4)}.Primer_Brand__Stack-module__Stack-regular--padding-8___UbyXY{padding:var(--base-size-8)}.Primer_Brand__Stack-module__Stack-regular--padding-12___UQK__{padding:var(--base-size-12)}.Primer_Brand__Stack-module__Stack-regular--padding-16___Y62Pz{padding:var(--base-size-16)}.Primer_Brand__Stack-module__Stack-regular--padding-20___wLP_s{padding:var(--base-size-20)}.Primer_Brand__Stack-module__Stack-regular--padding-24___J5NFg{padding:var(--base-size-24)}.Primer_Brand__Stack-module__Stack-regular--padding-28___LaSVD{padding:var(--base-size-28)}.Primer_Brand__Stack-module__Stack-regular--padding-32___L0_VX{padding:var(--base-size-32)}.Primer_Brand__Stack-module__Stack-regular--padding-36___o5wDc{padding:var(--base-size-36)}.Primer_Brand__Stack-module__Stack-regular--padding-40___cb5NW{padding:var(--base-size-40)}.Primer_Brand__Stack-module__Stack-regular--padding-44___DEz_q{padding:var(--base-size-44)}.Primer_Brand__Stack-module__Stack-regular--padding-48___MqcFN{padding:var(--base-size-48)}.Primer_Brand__Stack-module__Stack-regular--padding-60___2sUmV{padding:var(--base-size-60)}.Primer_Brand__Stack-module__Stack-regular--padding-64___S3iI3{padding:var(--base-size-64)}.Primer_Brand__Stack-module__Stack-regular--padding-80___8eVDK{padding:var(--base-size-80)}.Primer_Brand__Stack-module__Stack-regular--padding-88___ok1gb{padding:var(--base-size-88)}.Primer_Brand__Stack-module__Stack-regular--padding-96___T3v7i{padding:var(--base-size-96)}.Primer_Brand__Stack-module__Stack-regular--padding-112___7YpRg{padding:var(--base-size-112)}.Primer_Brand__Stack-module__Stack-regular--padding-128___ibsTw{padding:var(--base-size-128)}}@media screen and (width>=80rem){.Primer_Brand__Stack-module__Stack-wide--gap-none___ajgTL{gap:0}.Primer_Brand__Stack-module__Stack-wide--gap-condensed___kzJ6N{gap:var(--brand-stack-gap-condensed)}.Primer_Brand__Stack-module__Stack-wide--gap-normal___2URL1{gap:var(--brand-stack-gap-normal)}.Primer_Brand__Stack-module__Stack-wide--gap-spacious___PE_on{gap:var(--brand-stack-gap-spacious)}.Primer_Brand__Stack-module__Stack-wide--gap-4___3nPEs{gap:var(--base-size-4)}.Primer_Brand__Stack-module__Stack-wide--gap-8___FHaOS{gap:var(--base-size-8)}.Primer_Brand__Stack-module__Stack-wide--gap-12___f5Wii{gap:var(--base-size-12)}.Primer_Brand__Stack-module__Stack-wide--gap-16___vdqL4{gap:var(--base-size-16)}.Primer_Brand__Stack-module__Stack-wide--gap-20___3YbbY{gap:var(--base-size-20)}.Primer_Brand__Stack-module__Stack-wide--gap-24___o2aeb{gap:var(--base-size-24)}.Primer_Brand__Stack-module__Stack-wide--gap-28___g5SFZ{gap:var(--base-size-28)}.Primer_Brand__Stack-module__Stack-wide--gap-32___7KZhL{gap:var(--base-size-32)}.Primer_Brand__Stack-module__Stack-wide--gap-36___mWJFS{gap:var(--base-size-36)}.Primer_Brand__Stack-module__Stack-wide--gap-40___wZvNo{gap:var(--base-size-40)}.Primer_Brand__Stack-module__Stack-wide--gap-44___oH_Yw{gap:var(--base-size-44)}.Primer_Brand__Stack-module__Stack-wide--gap-48___IbC9F{gap:var(--base-size-48)}.Primer_Brand__Stack-module__Stack-wide--gap-60___V1qHz{gap:var(--base-size-60)}.Primer_Brand__Stack-module__Stack-wide--gap-64___xC__G{gap:var(--base-size-64)}.Primer_Brand__Stack-module__Stack-wide--gap-80___1QMyu{gap:var(--base-size-80)}.Primer_Brand__Stack-module__Stack-wide--gap-88___d3g2C{gap:var(--base-size-88)}.Primer_Brand__Stack-module__Stack-wide--gap-96___wRoRW{gap:var(--base-size-96)}.Primer_Brand__Stack-module__Stack-wide--gap-112___MQg4d{gap:var(--base-size-112)}.Primer_Brand__Stack-module__Stack-wide--gap-128___YfFMR{gap:var(--base-size-128)}.Primer_Brand__Stack-module__Stack-wide--padding-none___hcJOP{padding:0}.Primer_Brand__Stack-module__Stack-wide--padding-condensed___N3J0E{padding:var(--brand-stack-padding-condensed)}.Primer_Brand__Stack-module__Stack-wide--padding-normal___pjnIB{padding:var(--brand-stack-padding-normal)}.Primer_Brand__Stack-module__Stack-wide--padding-spacious___cFQHO{padding:var(--brand-stack-padding-spacious)}.Primer_Brand__Stack-module__Stack-wide--padding-4___muYDs{padding:var(--base-size-4)}.Primer_Brand__Stack-module__Stack-wide--padding-8___6YlEO{padding:var(--base-size-8)}.Primer_Brand__Stack-module__Stack-wide--padding-12___7KdnN{padding:var(--base-size-12)}.Primer_Brand__Stack-module__Stack-wide--padding-16___M5zuV{padding:var(--base-size-16)}.Primer_Brand__Stack-module__Stack-wide--padding-20___I5zX2{padding:var(--base-size-20)}.Primer_Brand__Stack-module__Stack-wide--padding-24___GooBy{padding:var(--base-size-24)}.Primer_Brand__Stack-module__Stack-wide--padding-28___tZ7sr{padding:var(--base-size-28)}.Primer_Brand__Stack-module__Stack-wide--padding-32___4jLoz{padding:var(--base-size-32)}.Primer_Brand__Stack-module__Stack-wide--padding-36___aIhUT{padding:var(--base-size-36)}.Primer_Brand__Stack-module__Stack-wide--padding-40___4WmEN{padding:var(--base-size-40)}.Primer_Brand__Stack-module__Stack-wide--padding-44___LlwnC{padding:var(--base-size-44)}.Primer_Brand__Stack-module__Stack-wide--padding-48___JEKfb{padding:var(--base-size-48)}.Primer_Brand__Stack-module__Stack-wide--padding-60___zEzWC{padding:var(--base-size-60)}.Primer_Brand__Stack-module__Stack-wide--padding-64___ltiCt{padding:var(--base-size-64)}.Primer_Brand__Stack-module__Stack-wide--padding-80___uLiYs{padding:var(--base-size-80)}.Primer_Brand__Stack-module__Stack-wide--padding-88____swHh{padding:var(--base-size-88)}.Primer_Brand__Stack-module__Stack-wide--padding-96____jNjX{padding:var(--base-size-96)}.Primer_Brand__Stack-module__Stack-wide--padding-112___LSUS8{padding:var(--base-size-112)}.Primer_Brand__Stack-module__Stack-wide--padding-128___KHUZL{padding:var(--base-size-128)}}.Primer_Brand__Stack-module__Stack--align-items-flex-end___hbt2y{align-items:flex-end}.Primer_Brand__Stack-module__Stack--align-items-flex-start___toOez{align-items:flex-start}.Primer_Brand__Stack-module__Stack--align-items-center___mSuT6{align-items:center}.Primer_Brand__Stack-module__Stack-narrow--align-items-flex-end___Ge2P6{align-items:flex-end}.Primer_Brand__Stack-module__Stack-narrow--align-items-flex-start___hoXcB{align-items:flex-start}.Primer_Brand__Stack-module__Stack-narrow--align-items-center___lhASm{align-items:center}@media screen and (width>=48rem){.Primer_Brand__Stack-module__Stack-regular--align-items-flex-end___bvlKf{align-items:flex-end}.Primer_Brand__Stack-module__Stack-regular--align-items-flex-start___AfvRV{align-items:flex-start}.Primer_Brand__Stack-module__Stack-regular--align-items-center___otAWC{align-items:center}}@media screen and (width>=80rem){.Primer_Brand__Stack-module__Stack-wide--align-items-flex-end___ujXDY{align-items:flex-end}.Primer_Brand__Stack-module__Stack-wide--align-items-flex-start___cXAgb{align-items:flex-start}.Primer_Brand__Stack-module__Stack-wide--align-items-center___aZ__N{align-items:center}}.Primer_Brand__Stack-module__Stack--justify-content-flex-end___48DQ2{justify-content:flex-end}.Primer_Brand__Stack-module__Stack--justify-content-flex-start___RqQ_5{justify-content:flex-start}.Primer_Brand__Stack-module__Stack--justify-content-center___0h6jn{justify-content:center}.Primer_Brand__Stack-module__Stack--justify-content-space-between___ntQDP{justify-content:space-between}.Primer_Brand__Stack-module__Stack--justify-content-space-evenly___bIDDs{justify-content:space-evenly}.Primer_Brand__Stack-module__Stack--justify-content-space-around___yUAvd{justify-content:space-around}.Primer_Brand__Stack-module__Stack-narrow--justify-content-flex-end___Z57le{justify-content:flex-end}.Primer_Brand__Stack-module__Stack-narrow--justify-content-flex-start___fDidq{justify-content:flex-start}.Primer_Brand__Stack-module__Stack-narrow--justify-content-center___uHqFo{justify-content:center}.Primer_Brand__Stack-module__Stack-narrow--justify-content-space-between___g6N5s{justify-content:space-between}.Primer_Brand__Stack-module__Stack-narrow--justify-content-space-evenly___apJam{justify-content:space-evenly}.Primer_Brand__Stack-module__Stack-narrow--justify-content-space-around___hPKro{justify-content:space-around}@media screen and (width>=48rem){.Primer_Brand__Stack-module__Stack-regular--justify-content-flex-end___Frx0I{justify-content:flex-end}.Primer_Brand__Stack-module__Stack-regular--justify-content-flex-start___O6P7s{justify-content:flex-start}.Primer_Brand__Stack-module__Stack-regular--justify-content-center___h0_dy{justify-content:center}.Primer_Brand__Stack-module__Stack-regular--justify-content-space-between___zGjlD{justify-content:space-between}.Primer_Brand__Stack-module__Stack-regular--justify-content-space-evenly___Hkq1Z{justify-content:space-evenly}.Primer_Brand__Stack-module__Stack-regular--justify-content-space-around___aSXvQ{justify-content:space-around}}@media screen and (width>=80rem){.Primer_Brand__Stack-module__Stack-wide--justify-content-flex-end___SIG6M{justify-content:flex-end}.Primer_Brand__Stack-module__Stack-wide--justify-content-flex-start___HdgK5{justify-content:flex-start}.Primer_Brand__Stack-module__Stack-wide--justify-content-center___OD2Wf{justify-content:center}.Primer_Brand__Stack-module__Stack-wide--justify-content-space-between___DDCkb{justify-content:space-between}.Primer_Brand__Stack-module__Stack-wide--justify-content-space-evenly___PICqP{justify-content:space-evenly}.Primer_Brand__Stack-module__Stack-wide--justify-content-space-around___sIOQP{justify-content:space-around}}.Primer_Brand__Stack-module__Stack-flexWrap--wrap___uuc8B{flex-wrap:wrap}.Primer_Brand__Stack-module__Stack-flexWrap--no-wrap___kv7Fm{flex-wrap:nowrap}.Primer_Brand__Stack-module__Stack-narrow-flexWrap--wrap___SQOmL{flex-wrap:wrap}.Primer_Brand__Stack-module__Stack-narrow-flexWrap--no-wrap___aoyQB{flex-wrap:nowrap}@media screen and (width>=48rem){.Primer_Brand__Stack-module__Stack-regular-flexWrap--wrap___LTrer{flex-wrap:wrap}.Primer_Brand__Stack-module__Stack-regular-flexWrap--no-wrap___g3lo_{flex-wrap:nowrap}}@media screen and (width>=80rem){.Primer_Brand__Stack-module__Stack-wide-flexWrap--wrap___sBzMn{flex-wrap:wrap}.Primer_Brand__Stack-module__Stack-wide-flexWrap--no-wrap___7PGRZ{flex-wrap:nowrap}}