@pnx-mixtape/mxds 0.0.1

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 (622) hide show
  1. package/README.md +274 -0
  2. package/dist/build/Accordion.js +61 -0
  3. package/dist/build/Accordion.js.map +1 -0
  4. package/dist/build/AccordionDiv.js +62 -0
  5. package/dist/build/AccordionDiv.js.map +1 -0
  6. package/dist/build/AccordionGroup.js +85 -0
  7. package/dist/build/AccordionGroup.js.map +1 -0
  8. package/dist/build/AccordionMobile.js +31 -0
  9. package/dist/build/AccordionMobile.js.map +1 -0
  10. package/dist/build/Dialog.js +116 -0
  11. package/dist/build/Dialog.js.map +1 -0
  12. package/dist/build/DropMenu.js +132 -0
  13. package/dist/build/DropMenu.js.map +1 -0
  14. package/dist/build/GlobalToggle.js +103 -0
  15. package/dist/build/GlobalToggle.js.map +1 -0
  16. package/dist/build/InPageAlert.js +61 -0
  17. package/dist/build/InPageAlert.js.map +1 -0
  18. package/dist/build/InPageNavigation.js +92 -0
  19. package/dist/build/InPageNavigation.js.map +1 -0
  20. package/dist/build/Navigation.js +126 -0
  21. package/dist/build/Navigation.js.map +1 -0
  22. package/dist/build/Sticky.js +63 -0
  23. package/dist/build/Sticky.js.map +1 -0
  24. package/dist/build/Tabs.js +164 -0
  25. package/dist/build/Tabs.js.map +1 -0
  26. package/dist/build/accordion.css +108 -0
  27. package/dist/build/base.css +1000 -0
  28. package/dist/build/breadcrumb.css +47 -0
  29. package/dist/build/breakpoint-loader.js +52 -0
  30. package/dist/build/breakpoint-loader.js.map +1 -0
  31. package/dist/build/button.css +126 -0
  32. package/dist/build/callout.css +11 -0
  33. package/dist/build/card.css +135 -0
  34. package/dist/build/chunks/js.cookie-CiMiGxWx.js +101 -0
  35. package/dist/build/chunks/js.cookie-CiMiGxWx.js.map +1 -0
  36. package/dist/build/chunks/polyfills-CJ5uTmUJ.js +749 -0
  37. package/dist/build/chunks/polyfills-CJ5uTmUJ.js.map +1 -0
  38. package/dist/build/chunks/popover-wbPSyFRj.js +654 -0
  39. package/dist/build/chunks/popover-wbPSyFRj.js.map +1 -0
  40. package/dist/build/chunks/utilities-BIk0P2KX.js +61 -0
  41. package/dist/build/chunks/utilities-BIk0P2KX.js.map +1 -0
  42. package/dist/build/constants.css +120 -0
  43. package/dist/build/container-grid.css +207 -0
  44. package/dist/build/content-block.css +23 -0
  45. package/dist/build/cookie-compliance.js +122 -0
  46. package/dist/build/cookie-compliance.js.map +1 -0
  47. package/dist/build/dialog.css +98 -0
  48. package/dist/build/disclosure-widget.js +124 -0
  49. package/dist/build/disclosure-widget.js.map +1 -0
  50. package/dist/build/drop-menu.css +78 -0
  51. package/dist/build/drupal.css +74 -0
  52. package/dist/build/footer-menu.css +32 -0
  53. package/dist/build/footer.css +61 -0
  54. package/dist/build/form.css +589 -0
  55. package/dist/build/grid.css +200 -0
  56. package/dist/build/header.css +131 -0
  57. package/dist/build/hero-banner.css +62 -0
  58. package/dist/build/icon.css +399 -0
  59. package/dist/build/in-page-alert.css +94 -0
  60. package/dist/build/in-page-navigation.css +17 -0
  61. package/dist/build/index.css +4980 -0
  62. package/dist/build/io-loader.js +44 -0
  63. package/dist/build/io-loader.js.map +1 -0
  64. package/dist/build/keyboard.js +101 -0
  65. package/dist/build/keyboard.js.map +1 -0
  66. package/dist/build/link-list.css +72 -0
  67. package/dist/build/masthead.css +39 -0
  68. package/dist/build/nav-list.css +29 -0
  69. package/dist/build/navigation.css +371 -0
  70. package/dist/build/page.css +184 -0
  71. package/dist/build/pagination.css +123 -0
  72. package/dist/build/section.css +160 -0
  73. package/dist/build/sidebar.css +105 -0
  74. package/dist/build/sticky.css +47 -0
  75. package/dist/build/tabs.css +106 -0
  76. package/dist/build/tag.css +67 -0
  77. package/dist/build/tiles.css +61 -0
  78. package/dist/build/utilities.css +175 -0
  79. package/package.json +130 -0
  80. package/src/Atom/Background/Backgrounds.stories.ts +36 -0
  81. package/src/Atom/Background/__snapshots__/Backgrounds.stories.ts.snap +100 -0
  82. package/src/Atom/Background/_background.css +80 -0
  83. package/src/Atom/Background/backgrounds.twig +10 -0
  84. package/src/Atom/Base.mdx +76 -0
  85. package/src/Atom/Blockquote/_blockquote.css +7 -0
  86. package/src/Atom/Button/Button.stories.ts +71 -0
  87. package/src/Atom/Button/Button.stories.tsx +31 -0
  88. package/src/Atom/Button/Button.tsx +70 -0
  89. package/src/Atom/Button/README.md +30 -0
  90. package/src/Atom/Button/__snapshots__/Button.stories.ts.snap +41 -0
  91. package/src/Atom/Button/__snapshots__/Button.stories.tsx.snap +17 -0
  92. package/src/Atom/Button/_buttons-styles.css +48 -0
  93. package/src/Atom/Button/_buttons.css +71 -0
  94. package/src/Atom/Button/button.css +2 -0
  95. package/src/Atom/Button/button.twig +23 -0
  96. package/src/Atom/DefinitionList/DefinitionList.stories.tsx +25 -0
  97. package/src/Atom/DefinitionList/DefinitionList.tsx +27 -0
  98. package/src/Atom/DefinitionList/__snapshots__/DefinitionList.stories.tsx.snap +30 -0
  99. package/src/Atom/Heading/Heading.stories.ts +25 -0
  100. package/src/Atom/Heading/Heading.stories.tsx +19 -0
  101. package/src/Atom/Heading/Heading.tsx +44 -0
  102. package/src/Atom/Heading/__snapshots__/Heading.stories.ts.snap +7 -0
  103. package/src/Atom/Heading/__snapshots__/Heading.stories.tsx.snap +9 -0
  104. package/src/Atom/Heading/_headings.css +84 -0
  105. package/src/Atom/Heading/heading.twig +8 -0
  106. package/src/Atom/Icon/Icon.mdx +32 -0
  107. package/src/Atom/Icon/Icon.stories.ts +50 -0
  108. package/src/Atom/Icon/Icon.stories.tsx +44 -0
  109. package/src/Atom/Icon/Icon.tsx +30 -0
  110. package/src/Atom/Icon/README.md +7 -0
  111. package/src/Atom/Icon/__snapshots__/Icon.stories.ts.snap +18 -0
  112. package/src/Atom/Icon/__snapshots__/Icon.stories.tsx.snap +18 -0
  113. package/src/Atom/Icon/_extended-set.css +45 -0
  114. package/src/Atom/Icon/_icon.css +151 -0
  115. package/src/Atom/Icon/_mixin-icon.css +5 -0
  116. package/src/Atom/Icon/icon.css +2 -0
  117. package/src/Atom/Icon/icon.twig +12 -0
  118. package/src/Atom/Icon/images/arrow-down.svg +1 -0
  119. package/src/Atom/Icon/images/arrow-left.svg +1 -0
  120. package/src/Atom/Icon/images/arrow-right.svg +1 -0
  121. package/src/Atom/Icon/images/arrow-up.svg +1 -0
  122. package/src/Atom/Icon/images/attachment.svg +1 -0
  123. package/src/Atom/Icon/images/blockquote.svg +1 -0
  124. package/src/Atom/Icon/images/bluesky.svg +1 -0
  125. package/src/Atom/Icon/images/bookmark.svg +1 -0
  126. package/src/Atom/Icon/images/building.svg +1 -0
  127. package/src/Atom/Icon/images/calendar.svg +1 -0
  128. package/src/Atom/Icon/images/chevron-down.svg +1 -0
  129. package/src/Atom/Icon/images/chevron-left.svg +1 -0
  130. package/src/Atom/Icon/images/chevron-right.svg +1 -0
  131. package/src/Atom/Icon/images/chevron-up.svg +1 -0
  132. package/src/Atom/Icon/images/clock.svg +1 -0
  133. package/src/Atom/Icon/images/close.svg +1 -0
  134. package/src/Atom/Icon/images/collapse.svg +1 -0
  135. package/src/Atom/Icon/images/controls.svg +1 -0
  136. package/src/Atom/Icon/images/download.svg +1 -0
  137. package/src/Atom/Icon/images/drupal.svg +3 -0
  138. package/src/Atom/Icon/images/email.svg +1 -0
  139. package/src/Atom/Icon/images/error.svg +1 -0
  140. package/src/Atom/Icon/images/expand.svg +1 -0
  141. package/src/Atom/Icon/images/external-link.svg +1 -0
  142. package/src/Atom/Icon/images/facebook.svg +1 -0
  143. package/src/Atom/Icon/images/file.svg +1 -0
  144. package/src/Atom/Icon/images/globe.svg +1 -0
  145. package/src/Atom/Icon/images/google.svg +1 -0
  146. package/src/Atom/Icon/images/heart-selected.svg +1 -0
  147. package/src/Atom/Icon/images/heart-unselected.svg +1 -0
  148. package/src/Atom/Icon/images/home.svg +1 -0
  149. package/src/Atom/Icon/images/image.svg +1 -0
  150. package/src/Atom/Icon/images/info.svg +1 -0
  151. package/src/Atom/Icon/images/instagram.svg +1 -0
  152. package/src/Atom/Icon/images/link.svg +1 -0
  153. package/src/Atom/Icon/images/linkedin.svg +1 -0
  154. package/src/Atom/Icon/images/list.svg +1 -0
  155. package/src/Atom/Icon/images/lock.svg +1 -0
  156. package/src/Atom/Icon/images/login.svg +1 -0
  157. package/src/Atom/Icon/images/mastodon.svg +3 -0
  158. package/src/Atom/Icon/images/media-next.svg +1 -0
  159. package/src/Atom/Icon/images/media-pause.svg +1 -0
  160. package/src/Atom/Icon/images/media-play.svg +1 -0
  161. package/src/Atom/Icon/images/media-previous.svg +1 -0
  162. package/src/Atom/Icon/images/media-rewind.svg +1 -0
  163. package/src/Atom/Icon/images/media-skip.svg +1 -0
  164. package/src/Atom/Icon/images/media-stop.svg +1 -0
  165. package/src/Atom/Icon/images/menu.svg +1 -0
  166. package/src/Atom/Icon/images/more.svg +1 -0
  167. package/src/Atom/Icon/images/notification.svg +1 -0
  168. package/src/Atom/Icon/images/pencil.svg +1 -0
  169. package/src/Atom/Icon/images/phone.svg +1 -0
  170. package/src/Atom/Icon/images/pin.svg +1 -0
  171. package/src/Atom/Icon/images/print.svg +1 -0
  172. package/src/Atom/Icon/images/question.svg +1 -0
  173. package/src/Atom/Icon/images/restart.svg +1 -0
  174. package/src/Atom/Icon/images/search.svg +1 -0
  175. package/src/Atom/Icon/images/settings.svg +1 -0
  176. package/src/Atom/Icon/images/share.svg +1 -0
  177. package/src/Atom/Icon/images/star-selected.svg +1 -0
  178. package/src/Atom/Icon/images/star-unselected.svg +1 -0
  179. package/src/Atom/Icon/images/success.svg +1 -0
  180. package/src/Atom/Icon/images/tick.svg +1 -0
  181. package/src/Atom/Icon/images/trash.svg +1 -0
  182. package/src/Atom/Icon/images/twitter.svg +1 -0
  183. package/src/Atom/Icon/images/user.svg +1 -0
  184. package/src/Atom/Icon/images/video.svg +1 -0
  185. package/src/Atom/Icon/images/warning.svg +1 -0
  186. package/src/Atom/Icon/images/youtube.svg +1 -0
  187. package/src/Atom/Image/Image.stories.ts +20 -0
  188. package/src/Atom/Image/__snapshots__/Image.stories.ts.snap +9 -0
  189. package/src/Atom/Image/_image.css +29 -0
  190. package/src/Atom/Image/image.twig +13 -0
  191. package/src/Atom/Link/Link.stories.ts +37 -0
  192. package/src/Atom/Link/Link.stories.tsx +30 -0
  193. package/src/Atom/Link/Link.tsx +38 -0
  194. package/src/Atom/Link/__snapshots__/Link.stories.ts.snap +17 -0
  195. package/src/Atom/Link/__snapshots__/Link.stories.tsx.snap +25 -0
  196. package/src/Atom/Link/_links.css +39 -0
  197. package/src/Atom/Link/link.twig +12 -0
  198. package/src/Atom/Media/Media.stories.ts +26 -0
  199. package/src/Atom/Media/Media.stories.tsx +25 -0
  200. package/src/Atom/Media/Media.tsx +42 -0
  201. package/src/Atom/Media/__snapshots__/Media.stories.ts.snap +14 -0
  202. package/src/Atom/Media/__snapshots__/Media.stories.tsx.snap +18 -0
  203. package/src/Atom/Media/_media.css +40 -0
  204. package/src/Atom/Media/media.twig +18 -0
  205. package/src/Atom/NavList/NavList.stories.ts +15 -0
  206. package/src/Atom/NavList/__snapshots__/NavList.stories.ts.snap +43 -0
  207. package/src/Atom/NavList/nav-list.css +29 -0
  208. package/src/Atom/NavList/nav-list.twig +25 -0
  209. package/src/Atom/README.md +5 -0
  210. package/src/Atom/Spacing/Spacing.stories.ts +48 -0
  211. package/src/Atom/Spacing/__snapshots__/Spacing.stories.ts.snap +8 -0
  212. package/src/Atom/Spacing/_spacing.css +36 -0
  213. package/src/Atom/Spacing/spacing.twig +3 -0
  214. package/src/Atom/Table/Table.stories.ts +39 -0
  215. package/src/Atom/Table/TableResponsive.stories.ts +16 -0
  216. package/src/Atom/Table/__snapshots__/Table.stories.ts.snap +261 -0
  217. package/src/Atom/Table/__snapshots__/TableResponsive.stories.ts.snap +68 -0
  218. package/src/Atom/Table/_table.css +72 -0
  219. package/src/Atom/Table/table-responsive.twig +32 -0
  220. package/src/Atom/Table/table.twig +30 -0
  221. package/src/Atom/Text/Text.stories.tsx +20 -0
  222. package/src/Atom/Text/Text.tsx +26 -0
  223. package/src/Atom/Text/TextSizes.stories.ts +25 -0
  224. package/src/Atom/Text/__snapshots__/Text.stories.tsx.snap +7 -0
  225. package/src/Atom/Text/__snapshots__/TextSizes.stories.ts.snap +63 -0
  226. package/src/Atom/Text/_text-align.css +13 -0
  227. package/src/Atom/Text/_text-sizes.css +117 -0
  228. package/src/Atom/Text/text-alignment.twig +5 -0
  229. package/src/Atom/Text/text-style.twig +1 -0
  230. package/src/Atom/Text/text-styles-example.twig +35 -0
  231. package/src/Atom/Video/Video.stories.ts +16 -0
  232. package/src/Atom/Video/Video.tsx +17 -0
  233. package/src/Atom/Video/__snapshots__/Video.stories.ts.snap +21 -0
  234. package/src/Atom/Video/_video.css +10 -0
  235. package/src/Atom/Video/video.twig +5 -0
  236. package/src/Atom/_animated.css +65 -0
  237. package/src/Atom/_base.css +62 -0
  238. package/src/Atom/_flow-legacy.css +48 -0
  239. package/src/Atom/_flow.css +53 -0
  240. package/src/Atom/_generic.css +93 -0
  241. package/src/Atom/_hr.css +10 -0
  242. package/src/Atom/_mixins.css +22 -0
  243. package/src/Atom/_print.css +20 -0
  244. package/src/Atom/base.css +5 -0
  245. package/src/Atom/images/external-link.svg +1 -0
  246. package/src/Component/Accordion/Accordion.stories.ts +51 -0
  247. package/src/Component/Accordion/Accordion.stories.tsx +22 -0
  248. package/src/Component/Accordion/Accordion.tsx +83 -0
  249. package/src/Component/Accordion/Elements/Accordion.ts +82 -0
  250. package/src/Component/Accordion/Elements/AccordionDiv.ts +83 -0
  251. package/src/Component/Accordion/Elements/AccordionGroup.ts +106 -0
  252. package/src/Component/Accordion/Elements/AccordionMobile.ts +47 -0
  253. package/src/Component/Accordion/README.md +45 -0
  254. package/src/Component/Accordion/__snapshots__/Accordion.stories.ts.snap +94 -0
  255. package/src/Component/Accordion/__snapshots__/Accordion.stories.tsx.snap +26 -0
  256. package/src/Component/Accordion/accordion-item.twig +18 -0
  257. package/src/Component/Accordion/accordion.css +107 -0
  258. package/src/Component/Accordion/accordion.twig +19 -0
  259. package/src/Component/Accordion/images/collapse.svg +1 -0
  260. package/src/Component/Accordion/images/expand.svg +1 -0
  261. package/src/Component/Accordion/twig/accordion-div.twig +13 -0
  262. package/src/Component/Accordion/twig/accordion-example.twig +36 -0
  263. package/src/Component/Accordion/twig/accordion-mobile.twig +15 -0
  264. package/src/Component/Accordion/twig/accordion-story.twig +13 -0
  265. package/src/Component/Author/Author.stories.tsx +18 -0
  266. package/src/Component/Author/Author.tsx +30 -0
  267. package/src/Component/Author/__snapshots__/Author.stories.tsx.snap +21 -0
  268. package/src/Component/Breadcrumb/Breadcrumb.stories.ts +15 -0
  269. package/src/Component/Breadcrumb/Breadcrumb.stories.tsx +38 -0
  270. package/src/Component/Breadcrumb/Breadcrumb.tsx +34 -0
  271. package/src/Component/Breadcrumb/__snapshots__/Breadcrumb.stories.ts.snap +26 -0
  272. package/src/Component/Breadcrumb/__snapshots__/Breadcrumb.stories.tsx.snap +60 -0
  273. package/src/Component/Breadcrumb/breadcrumb.css +46 -0
  274. package/src/Component/Breadcrumb/breadcrumb.twig +12 -0
  275. package/src/Component/Callout/Callout.stories.ts +29 -0
  276. package/src/Component/Callout/callout.css +7 -0
  277. package/src/Component/Callout/callout.twig +10 -0
  278. package/src/Component/Callout/twig/callout-story.twig +11 -0
  279. package/src/Component/Card/CHANGELOG.md +187 -0
  280. package/src/Component/Card/Card.stories.ts +106 -0
  281. package/src/Component/Card/Card.stories.tsx +50 -0
  282. package/src/Component/Card/Card.tsx +56 -0
  283. package/src/Component/Card/README.md +21 -0
  284. package/src/Component/Card/__snapshots__/Card.stories.ts.snap +186 -0
  285. package/src/Component/Card/__snapshots__/Card.stories.tsx.snap +88 -0
  286. package/src/Component/Card/__snapshots__/CardGrid.stories.ts.snap +89 -0
  287. package/src/Component/Card/card-grid.twig +10 -0
  288. package/src/Component/Card/card.css +128 -0
  289. package/src/Component/Card/card.twig +45 -0
  290. package/src/Component/Card/twig/old-card.twig +17 -0
  291. package/src/Component/Card/twig/story-card.twig +29 -0
  292. package/src/Component/ContentBlock/ContentBlock.stories.ts +15 -0
  293. package/src/Component/ContentBlock/ContentBlock.stories.tsx +30 -0
  294. package/src/Component/ContentBlock/ContentBlock.tsx +37 -0
  295. package/src/Component/ContentBlock/README.md +21 -0
  296. package/src/Component/ContentBlock/__snapshots__/ContentBlock.stories.ts.snap +26 -0
  297. package/src/Component/ContentBlock/__snapshots__/ContentBlock.stories.tsx.snap +21 -0
  298. package/src/Component/ContentBlock/content-block.css +21 -0
  299. package/src/Component/ContentBlock/content-block.twig +12 -0
  300. package/src/Component/ContentBlock/twig/content-block-example.twig +7 -0
  301. package/src/Component/Dialog/Dialog.stories.ts +28 -0
  302. package/src/Component/Dialog/Dialog.stories.tsx +45 -0
  303. package/src/Component/Dialog/Dialog.tsx +79 -0
  304. package/src/Component/Dialog/Elements/Dialog.ts +145 -0
  305. package/src/Component/Dialog/README.md +63 -0
  306. package/src/Component/Dialog/__snapshots__/Dialog.stories.ts.snap +85 -0
  307. package/src/Component/Dialog/__snapshots__/Dialog.stories.tsx.snap +39 -0
  308. package/src/Component/Dialog/dialog.css +85 -0
  309. package/src/Component/Dialog/dialog.twig +19 -0
  310. package/src/Component/DropMenu/Components/DropMenuContext.tsx +192 -0
  311. package/src/Component/DropMenu/Components/DropMenuItem.tsx +35 -0
  312. package/src/Component/DropMenu/DropMenu.stories.ts +36 -0
  313. package/src/Component/DropMenu/DropMenu.stories.tsx +24 -0
  314. package/src/Component/DropMenu/DropMenu.tsx +81 -0
  315. package/src/Component/DropMenu/Elements/DropMenu.ts +172 -0
  316. package/src/Component/DropMenu/README.md +11 -0
  317. package/src/Component/DropMenu/__snapshots__/DropMenu.stories.ts.snap +32 -0
  318. package/src/Component/DropMenu/__snapshots__/DropMenu.stories.tsx.snap +47 -0
  319. package/src/Component/DropMenu/drop-menu.css +68 -0
  320. package/src/Component/DropMenu/drop-menu.twig +27 -0
  321. package/src/Component/DropMenu/polyfills.js +28 -0
  322. package/src/Component/HeroBanner/HeroBanner.stories.ts +75 -0
  323. package/src/Component/HeroBanner/HeroBanner.stories.tsx +30 -0
  324. package/src/Component/HeroBanner/HeroBanner.tsx +50 -0
  325. package/src/Component/HeroBanner/__snapshots__/PageTitle.stories.ts.snap +31 -0
  326. package/src/Component/HeroBanner/__snapshots__/PageTitle.stories.tsx.snap +36 -0
  327. package/src/Component/HeroBanner/hero-banner.css +51 -0
  328. package/src/Component/HeroBanner/hero-banner.twig +41 -0
  329. package/src/Component/HeroBanner/twig/hero-banner-story.twig +19 -0
  330. package/src/Component/InPageAlert/Elements/InPageAlert.ts +87 -0
  331. package/src/Component/InPageAlert/InPageAlert.stories.ts +35 -0
  332. package/src/Component/InPageAlert/InPageAlert.stories.tsx +43 -0
  333. package/src/Component/InPageAlert/InPageAlert.tsx +50 -0
  334. package/src/Component/InPageAlert/README.md +27 -0
  335. package/src/Component/InPageAlert/__snapshots__/InPageAlert.stories.ts.snap +43 -0
  336. package/src/Component/InPageAlert/__snapshots__/InPageAlert.stories.tsx.snap +69 -0
  337. package/src/Component/InPageAlert/in-page-alert.css +89 -0
  338. package/src/Component/InPageAlert/in-page-alert.twig +18 -0
  339. package/src/Component/InPageNavigation/Elements/InPageNavigation.ts +125 -0
  340. package/src/Component/InPageNavigation/Hooks/useInPageNavigation.ts +45 -0
  341. package/src/Component/InPageNavigation/InPageNavigation.stories.ts +16 -0
  342. package/src/Component/InPageNavigation/InPageNavigation.stories.tsx +86 -0
  343. package/src/Component/InPageNavigation/InPageNavigation.tsx +38 -0
  344. package/src/Component/InPageNavigation/README.md +30 -0
  345. package/src/Component/InPageNavigation/__snapshots__/InPageNavigation.stories.ts.snap +73 -0
  346. package/src/Component/InPageNavigation/__snapshots__/InPageNavigation.stories.tsx.snap +149 -0
  347. package/src/Component/InPageNavigation/in-page-navigation.css +17 -0
  348. package/src/Component/InPageNavigation/in-page-navigation.twig +17 -0
  349. package/src/Component/InPageNavigation/twig/in-page-navigation-content-example.twig +16 -0
  350. package/src/Component/InPageNavigation/twig/in-page-navigation-menu-example.twig +6 -0
  351. package/src/Component/LinkList/LinkList.stories.ts +29 -0
  352. package/src/Component/LinkList/LinkList.stories.tsx +29 -0
  353. package/src/Component/LinkList/LinkList.tsx +43 -0
  354. package/src/Component/LinkList/README.md +19 -0
  355. package/src/Component/LinkList/__snapshots__/LinkList.stories.ts.snap +58 -0
  356. package/src/Component/LinkList/__snapshots__/LinkList.stories.tsx.snap +53 -0
  357. package/src/Component/LinkList/link-list.css +68 -0
  358. package/src/Component/LinkList/link-list.twig +12 -0
  359. package/src/Component/ListItem/Teaser.stories.tsx +34 -0
  360. package/src/Component/ListItem/Teaser.tsx +54 -0
  361. package/src/Component/ListItem/__snapshots__/Teaser.stories.tsx.snap +32 -0
  362. package/src/Component/Navigation/Collapsible.stories.ts +16 -0
  363. package/src/Component/Navigation/Components/DropdownLevel.tsx +107 -0
  364. package/src/Component/Navigation/Dropdown.stories.ts +16 -0
  365. package/src/Component/Navigation/Dropdown.stories.tsx +46 -0
  366. package/src/Component/Navigation/Dropdown.tsx +39 -0
  367. package/src/Component/Navigation/Elements/Navigation.ts +174 -0
  368. package/src/Component/Navigation/MegaNav.stories.ts +16 -0
  369. package/src/Component/Navigation/Navigation.stories.ts +15 -0
  370. package/src/Component/Navigation/Navigation.stories.tsx +40 -0
  371. package/src/Component/Navigation/Navigation.tsx +51 -0
  372. package/src/Component/Navigation/README.md +17 -0
  373. package/src/Component/Navigation/__snapshots__/Collapsible.stories.ts.snap +123 -0
  374. package/src/Component/Navigation/__snapshots__/Dropdown.stories.ts.snap +125 -0
  375. package/src/Component/Navigation/__snapshots__/Dropdown.stories.tsx.snap +39 -0
  376. package/src/Component/Navigation/__snapshots__/Navigation.stories.ts.snap +25 -0
  377. package/src/Component/Navigation/__snapshots__/Navigation.stories.tsx.snap +61 -0
  378. package/src/Component/Navigation/_navigation-collapsible.css +72 -0
  379. package/src/Component/Navigation/_navigation-dropdown.css +152 -0
  380. package/src/Component/Navigation/_navigation-mega.css +51 -0
  381. package/src/Component/Navigation/_navigation.css +55 -0
  382. package/src/Component/Navigation/navigation-collapsible.twig +7 -0
  383. package/src/Component/Navigation/navigation-dropdown.twig +7 -0
  384. package/src/Component/Navigation/navigation-mega-nav.twig +7 -0
  385. package/src/Component/Navigation/navigation.css +4 -0
  386. package/src/Component/Navigation/navigation.twig +9 -0
  387. package/src/Component/Navigation/twig/navigation-subnav-list.twig +108 -0
  388. package/src/Component/Pagination/Components/PaginationContext.tsx +188 -0
  389. package/src/Component/Pagination/Components/PaginationItem.tsx +48 -0
  390. package/src/Component/Pagination/Pagination.stories.ts +15 -0
  391. package/src/Component/Pagination/Pagination.stories.tsx +25 -0
  392. package/src/Component/Pagination/Pagination.tsx +75 -0
  393. package/src/Component/Pagination/README.md +19 -0
  394. package/src/Component/Pagination/__snapshots__/Pagination.stories.ts.snap +58 -0
  395. package/src/Component/Pagination/__snapshots__/Pagination.stories.tsx.snap +57 -0
  396. package/src/Component/Pagination/pagination.css +112 -0
  397. package/src/Component/Pagination/pagination.twig +44 -0
  398. package/src/Component/SocialShare/SocialShare.stories.tsx +26 -0
  399. package/src/Component/SocialShare/SocialShare.tsx +53 -0
  400. package/src/Component/SocialShare/__snapshots__/SocialShare.stories.tsx.snap +25 -0
  401. package/src/Component/Sticky/Elements/Sticky.ts +93 -0
  402. package/src/Component/Sticky/README.md +23 -0
  403. package/src/Component/Sticky/Sticky.stories.ts +16 -0
  404. package/src/Component/Sticky/Sticky.stories.tsx +14 -0
  405. package/src/Component/Sticky/Sticky.tsx +34 -0
  406. package/src/Component/Sticky/__snapshots__/Sticky.stories.ts.snap +86 -0
  407. package/src/Component/Sticky/__snapshots__/Sticky.stories.tsx.snap +11 -0
  408. package/src/Component/Sticky/sticky.css +39 -0
  409. package/src/Component/Sticky/sticky.twig +21 -0
  410. package/src/Component/Sticky/twig/sticky-example.twig +4 -0
  411. package/src/Component/Tabs/Components/Tab.tsx +45 -0
  412. package/src/Component/Tabs/Components/TabDropMenu.tsx +14 -0
  413. package/src/Component/Tabs/Components/TabList.tsx +9 -0
  414. package/src/Component/Tabs/Components/TabPanel.tsx +32 -0
  415. package/src/Component/Tabs/Elements/Tabs.ts +213 -0
  416. package/src/Component/Tabs/README.md +23 -0
  417. package/src/Component/Tabs/Tabs.stories.ts +22 -0
  418. package/src/Component/Tabs/Tabs.stories.tsx +51 -0
  419. package/src/Component/Tabs/Tabs.tsx +100 -0
  420. package/src/Component/Tabs/__snapshots__/Tabs.stories.ts.snap +144 -0
  421. package/src/Component/Tabs/__snapshots__/Tabs.stories.tsx.snap +120 -0
  422. package/src/Component/Tabs/tabs.css +103 -0
  423. package/src/Component/Tabs/tabs.twig +49 -0
  424. package/src/Component/Tabs/twig/panel.twig +5 -0
  425. package/src/Component/Tabs/twig/tab-list.twig +26 -0
  426. package/src/Component/Tag/README.md +19 -0
  427. package/src/Component/Tag/Tag.stories.ts +54 -0
  428. package/src/Component/Tag/Tag.stories.tsx +13 -0
  429. package/src/Component/Tag/Tag.tsx +19 -0
  430. package/src/Component/Tag/__snapshots__/Tag.stories.ts.snap +64 -0
  431. package/src/Component/Tag/__snapshots__/Tag.stories.tsx.snap +7 -0
  432. package/src/Component/Tag/tag.css +57 -0
  433. package/src/Component/Tag/tags.twig +23 -0
  434. package/src/Component/Tile/README.md +3 -0
  435. package/src/Component/Tile/Tile.stories.ts +23 -0
  436. package/src/Component/Tile/Tile.stories.tsx +30 -0
  437. package/src/Component/Tile/Tile.tsx +40 -0
  438. package/src/Component/Tile/__snapshots__/Tile.stories.ts.snap +83 -0
  439. package/src/Component/Tile/__snapshots__/Tile.stories.tsx.snap +38 -0
  440. package/src/Component/Tile/tile.twig +10 -0
  441. package/src/Component/Tile/tiles.css +58 -0
  442. package/src/Component/Tile/twig/tiles.twig +18 -0
  443. package/src/Form/Checkbox/Checkboxes.stories.ts +47 -0
  444. package/src/Form/Checkbox/FormCheckbox.stories.tsx +32 -0
  445. package/src/Form/Checkbox/FormCheckbox.tsx +124 -0
  446. package/src/Form/Checkbox/__snapshots__/Checkboxes.stories.ts.snap +115 -0
  447. package/src/Form/Checkbox/input-checkbox-single.twig +6 -0
  448. package/src/Form/Checkbox/input-checkbox.twig +24 -0
  449. package/src/Form/Description/Description.stories.ts +16 -0
  450. package/src/Form/Description/ErrorMessage.stories.ts +16 -0
  451. package/src/Form/Description/FormDescription.stories.tsx +14 -0
  452. package/src/Form/Description/FormDescription.tsx +28 -0
  453. package/src/Form/Description/__snapshots__/Description.stories.ts.snap +17 -0
  454. package/src/Form/Description/__snapshots__/ErrorMessage.stories.ts.snap +20 -0
  455. package/src/Form/Description/__snapshots__/FormDescription.stories.tsx.snap +10 -0
  456. package/src/Form/Description/form-description.twig +3 -0
  457. package/src/Form/Description/form-error.twig +5 -0
  458. package/src/Form/Fieldset/Fieldset.stories.ts +34 -0
  459. package/src/Form/Fieldset/__snapshots__/Fieldset.stories.ts.snap +23 -0
  460. package/src/Form/Fieldset/fieldset.twig +4 -0
  461. package/src/Form/Form/Form.stories.tsx +10 -0
  462. package/src/Form/Form/Form.tsx +9 -0
  463. package/src/Form/Form/FormTitle.stories.tsx +14 -0
  464. package/src/Form/Form/FormTitle.tsx +12 -0
  465. package/src/Form/Form/__snapshots__/Form.stories.tsx.snap +6 -0
  466. package/src/Form/Form/__snapshots__/FormTitle.stories.tsx.snap +9 -0
  467. package/src/Form/Form/twig/form-example.twig +13 -0
  468. package/src/Form/Item/FormItem.stories.tsx +58 -0
  469. package/src/Form/Item/FormItem.tsx +26 -0
  470. package/src/Form/Item/__snapshots__/FormItem.stories.tsx.snap +102 -0
  471. package/src/Form/Label/FormLabel.stories.tsx +20 -0
  472. package/src/Form/Label/FormLabel.tsx +19 -0
  473. package/src/Form/Label/Label.stories.ts +34 -0
  474. package/src/Form/Label/__snapshots__/FormLabel.stories.tsx.snap +16 -0
  475. package/src/Form/Label/__snapshots__/Label.stories.ts.snap +23 -0
  476. package/src/Form/Label/label.twig +2 -0
  477. package/src/Form/README.md +11 -0
  478. package/src/Form/Radio/FormRadio.stories.tsx +37 -0
  479. package/src/Form/Radio/FormRadio.tsx +80 -0
  480. package/src/Form/Radio/Radios.stories.ts +47 -0
  481. package/src/Form/Radio/__snapshots__/Radios.stories.ts.snap +125 -0
  482. package/src/Form/Radio/input-radio.twig +24 -0
  483. package/src/Form/Search/TextInputWithInlineButton.stories.ts +16 -0
  484. package/src/Form/Search/__snapshots__/TextInputWithInlineButton.stories.ts.snap +26 -0
  485. package/src/Form/Search/input-text-inline-submit.twig +8 -0
  486. package/src/Form/Select/FormSelect.stories.tsx +34 -0
  487. package/src/Form/Select/FormSelect.tsx +67 -0
  488. package/src/Form/Select/Select.stories.ts +40 -0
  489. package/src/Form/Select/__snapshots__/FormSelect.stories.tsx.snap +23 -0
  490. package/src/Form/Select/__snapshots__/Select.stories.ts.snap +148 -0
  491. package/src/Form/Select/select.twig +16 -0
  492. package/src/Form/TextInput/FormText.stories.tsx +15 -0
  493. package/src/Form/TextInput/FormText.tsx +55 -0
  494. package/src/Form/TextInput/InputDivider.stories.ts +16 -0
  495. package/src/Form/TextInput/TextInput.stories.ts +57 -0
  496. package/src/Form/TextInput/TextInputWithIcon.stories.ts +40 -0
  497. package/src/Form/TextInput/__snapshots__/FormText.stories.tsx.snap +13 -0
  498. package/src/Form/TextInput/__snapshots__/InputDivider.stories.ts.snap +32 -0
  499. package/src/Form/TextInput/__snapshots__/TextInput.stories.ts.snap +101 -0
  500. package/src/Form/TextInput/__snapshots__/TextInputWithIcon.stories.ts.snap +67 -0
  501. package/src/Form/TextInput/input-divider.twig +11 -0
  502. package/src/Form/TextInput/input-text-icon.twig +7 -0
  503. package/src/Form/TextInput/input-text.twig +5 -0
  504. package/src/Form/Textarea/FormTextarea.stories.tsx +14 -0
  505. package/src/Form/Textarea/FormTextarea.tsx +53 -0
  506. package/src/Form/Textarea/Textarea.stories.ts +16 -0
  507. package/src/Form/Textarea/__snapshots__/FormTextarea.stories.tsx.snap +12 -0
  508. package/src/Form/Textarea/__snapshots__/Textarea.stories.ts.snap +19 -0
  509. package/src/Form/Textarea/textarea.twig +5 -0
  510. package/src/Form/form.css +479 -0
  511. package/src/Form/images/checkmark.svg +1 -0
  512. package/src/Form/images/form-chevron-down.svg +1 -0
  513. package/src/Form/images/form-error.svg +1 -0
  514. package/src/Form/images/form-success.svg +1 -0
  515. package/src/Layout/Footer/Footer.stories.ts +15 -0
  516. package/src/Layout/Footer/Footer.stories.tsx +42 -0
  517. package/src/Layout/Footer/Footer.tsx +55 -0
  518. package/src/Layout/Footer/FooterMenu/FooterMenu.stories.ts +15 -0
  519. package/src/Layout/Footer/FooterMenu/__snapshots__/FooterMenu.stories.ts.snap +101 -0
  520. package/src/Layout/Footer/FooterMenu/footer-menu.css +29 -0
  521. package/src/Layout/Footer/FooterMenu/footer-menu.twig +5 -0
  522. package/src/Layout/Footer/__snapshots__/Footer.stories.ts.snap +139 -0
  523. package/src/Layout/Footer/__snapshots__/Footer.stories.tsx.snap +70 -0
  524. package/src/Layout/Footer/footer.css +54 -0
  525. package/src/Layout/Footer/footer.twig +25 -0
  526. package/src/Layout/Grid/Grid.stories.ts +68 -0
  527. package/src/Layout/Grid/Grid.stories.tsx +125 -0
  528. package/src/Layout/Grid/Grid.tsx +51 -0
  529. package/src/Layout/Grid/__snapshots__/Grid.stories.ts.snap +103 -0
  530. package/src/Layout/Grid/__snapshots__/Grid.stories.tsx.snap +67 -0
  531. package/src/Layout/Grid/container-grid.css +190 -0
  532. package/src/Layout/Grid/grid-item.twig +16 -0
  533. package/src/Layout/Grid/grid.css +190 -0
  534. package/src/Layout/Grid/grid.twig +10 -0
  535. package/src/Layout/Grid/twig/container-grid-dynamic.twig +47 -0
  536. package/src/Layout/Grid/twig/container-grid.twig +46 -0
  537. package/src/Layout/Grid/twig/grid-story.twig +6 -0
  538. package/src/Layout/Grid/twig/old-grid.twig +46 -0
  539. package/src/Layout/Header/Components/GlobalToggle.tsx +35 -0
  540. package/src/Layout/Header/Components/Logo.tsx +17 -0
  541. package/src/Layout/Header/Elements/GlobalToggle.ts +137 -0
  542. package/src/Layout/Header/Header.stories.ts +18 -0
  543. package/src/Layout/Header/Header.stories.tsx +17 -0
  544. package/src/Layout/Header/Header.tsx +73 -0
  545. package/src/Layout/Header/Stacked/Stacked.stories.ts +16 -0
  546. package/src/Layout/Header/Stacked/__snapshots__/Stacked.stories.ts.snap +353 -0
  547. package/src/Layout/Header/Stacked/header-stacked.twig +33 -0
  548. package/src/Layout/Header/__snapshots__/Header.stories.ts.snap +157 -0
  549. package/src/Layout/Header/__snapshots__/Header.stories.tsx.snap +55 -0
  550. package/src/Layout/Header/_header.css +89 -0
  551. package/src/Layout/Header/_toggles.css +31 -0
  552. package/src/Layout/Header/header.css +2 -0
  553. package/src/Layout/Header/header.twig +24 -0
  554. package/src/Layout/Header/twig/global-header.twig +4 -0
  555. package/src/Layout/Header/twig/logo.twig +3 -0
  556. package/src/Layout/Masthead/Masthead.stories.ts +16 -0
  557. package/src/Layout/Masthead/__snapshots__/Masthead.stories.ts.snap +32 -0
  558. package/src/Layout/Masthead/masthead.css +36 -0
  559. package/src/Layout/Masthead/masthead.twig +10 -0
  560. package/src/Layout/Page/Page.stories.tsx +22 -0
  561. package/src/Layout/Page/Page.tsx +16 -0
  562. package/src/Layout/Page/README.md +19 -0
  563. package/src/Layout/Page/__snapshots__/Page.stories.tsx.snap +80 -0
  564. package/src/Layout/Page/page.css +150 -0
  565. package/src/Layout/Page/page.twig +3 -0
  566. package/src/Layout/README.md +19 -0
  567. package/src/Layout/Section/Background.stories.ts +25 -0
  568. package/src/Layout/Section/Breakouts.stories.ts +16 -0
  569. package/src/Layout/Section/Flow.stories.ts +16 -0
  570. package/src/Layout/Section/Section.stories.ts +63 -0
  571. package/src/Layout/Section/Section.stories.tsx +56 -0
  572. package/src/Layout/Section/Section.tsx +83 -0
  573. package/src/Layout/Section/SectionGrid.stories.tsx +53 -0
  574. package/src/Layout/Section/SectionGrid.tsx +71 -0
  575. package/src/Layout/Section/__snapshots__/Section.stories.ts.snap +19 -0
  576. package/src/Layout/Section/__snapshots__/Section.stories.tsx.snap +37 -0
  577. package/src/Layout/Section/__snapshots__/SectionBackground.stories.ts.snap +55 -0
  578. package/src/Layout/Section/__snapshots__/SectionGrid.stories.tsx.snap +37 -0
  579. package/src/Layout/Section/__snapshots__/SectionsBreakouts.stories.ts.snap +78 -0
  580. package/src/Layout/Section/__snapshots__/SectionsFlowsGroups.stories.ts.snap +89 -0
  581. package/src/Layout/Section/section.css +156 -0
  582. package/src/Layout/Section/section.twig +25 -0
  583. package/src/Layout/Section/twig/section-background.twig +12 -0
  584. package/src/Layout/Section/twig/section-story.twig +14 -0
  585. package/src/Layout/Section/twig/sections-breakout.twig +38 -0
  586. package/src/Layout/Section/twig/sections-flow.twig +51 -0
  587. package/src/Layout/Section/twig/sections-stacked.twig +28 -0
  588. package/src/Layout/Sidebar/Sidebar.stories.ts +35 -0
  589. package/src/Layout/Sidebar/Sidebar.stories.tsx +33 -0
  590. package/src/Layout/Sidebar/Sidebar.tsx +34 -0
  591. package/src/Layout/Sidebar/__snapshots__/Sidebar.stories.ts.snap +40 -0
  592. package/src/Layout/Sidebar/__snapshots__/Sidebar.stories.tsx.snap +47 -0
  593. package/src/Layout/Sidebar/sidebar.css +69 -0
  594. package/src/Layout/Sidebar/sidebar.twig +17 -0
  595. package/src/Layout/images/mixtape-logo.png +0 -0
  596. package/src/Utility/Context/ImageComponent.tsx +49 -0
  597. package/src/Utility/Context/LinkComponent.tsx +57 -0
  598. package/src/Utility/Drupal/README.md +9 -0
  599. package/src/Utility/Drupal/drupal.css +66 -0
  600. package/src/Utility/Drupal/twig/local-tasks.twig +17 -0
  601. package/src/Utility/Drupal/twig/login-form.twig +22 -0
  602. package/src/Utility/Elements/breakpoint-loader.ts +79 -0
  603. package/src/Utility/Elements/cookie-compliance.ts +174 -0
  604. package/src/Utility/Elements/disclosure-widget.ts +173 -0
  605. package/src/Utility/Elements/io-loader.ts +57 -0
  606. package/src/Utility/Elements/keyboard.ts +150 -0
  607. package/src/Utility/Hooks/useLocalStorage.ts +78 -0
  608. package/src/Utility/Hooks/useMediaQuery.ts +31 -0
  609. package/src/Utility/Hooks/useToggle.ts +17 -0
  610. package/src/Utility/Hooks/useUrlParams.ts +24 -0
  611. package/src/Utility/README.md +15 -0
  612. package/src/Utility/_layout-utils.css +78 -0
  613. package/src/Utility/global.d.ts +25 -0
  614. package/src/Utility/utilities.css +88 -0
  615. package/src/Utility/utilities.ts +163 -0
  616. package/src/_custom-media.css +33 -0
  617. package/src/constants.css +118 -0
  618. package/src/elements.ts +13 -0
  619. package/src/enums.ts +260 -0
  620. package/src/index.css +27 -0
  621. package/src/react.ts +68 -0
  622. package/src/tokens.js +119 -0
@@ -0,0 +1,94 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Components/Accordion Accordion smoke-test 1`] = `
4
+ <div class="accordions">
5
+ <div class="accordion__title">
6
+ <h2 class=" ">
7
+ Accordion group
8
+ </h2>
9
+ </div>
10
+ <mx-accordion>
11
+ <details class="accordion accordion--divided">
12
+ <summary class="accordion__toggle">
13
+ Music
14
+ <span class="button icon button--small button--icon-only icon--chevron-down"
15
+ aria-hidden="true"
16
+ >
17
+ </span>
18
+ </summary>
19
+ <div class="accordion__content rich-text vertical-flow">
20
+ I'm baby air plant hashtag letterpress blue bottle. Cloud bread dreamcatcher everyday carry lumbersexual, iceland cardigan swag chicharrones lo-fi fanny pack affogato freegan XOXO shaman. Shoreditch cloud bread waistcoat tbh XOXO. Chillwave pour-over umami pug glossier health goth.
21
+ </div>
22
+ </details>
23
+ </mx-accordion>
24
+ <mx-accordion>
25
+ <details class="accordion accordion--divided">
26
+ <summary class="accordion__toggle">
27
+ Performances
28
+ <span class="button icon button--small button--icon-only icon--chevron-down"
29
+ aria-hidden="true"
30
+ >
31
+ </span>
32
+ </summary>
33
+ <div class="accordion__content rich-text vertical-flow">
34
+ I'm baby air plant hashtag letterpress blue bottle. Cloud bread dreamcatcher everyday carry lumbersexual, iceland cardigan swag chicharrones lo-fi fanny pack affogato freegan XOXO shaman. Shoreditch cloud bread waistcoat tbh XOXO. Chillwave pour-over umami pug glossier health goth.
35
+ </div>
36
+ </details>
37
+ </mx-accordion>
38
+ </div>
39
+ `;
40
+
41
+ exports[`Components/Accordion ToggleAll smoke-test 1`] = `
42
+ <div class="accordions">
43
+ <mx-accordion-group>
44
+ <div class="accordion__title">
45
+ <h2 class=" ">
46
+ Accordion group
47
+ </h2>
48
+ <div class="accordions__toggle-all">
49
+ <button data-expand
50
+ class="button button--light button--small"
51
+ type="button"
52
+ >
53
+ Expand all
54
+ </button>
55
+ <button data-collapse
56
+ class="button button--light button--small"
57
+ type="button"
58
+ disabled
59
+ >
60
+ Collapse all
61
+ </button>
62
+ </div>
63
+ </div>
64
+ <mx-accordion>
65
+ <details class="accordion accordion--divided">
66
+ <summary class="accordion__toggle">
67
+ Music
68
+ <span class="button icon button--small button--icon-only icon--chevron-down"
69
+ aria-hidden="true"
70
+ >
71
+ </span>
72
+ </summary>
73
+ <div class="accordion__content rich-text vertical-flow">
74
+ I'm baby air plant hashtag letterpress blue bottle. Cloud bread dreamcatcher everyday carry lumbersexual, iceland cardigan swag chicharrones lo-fi fanny pack affogato freegan XOXO shaman. Shoreditch cloud bread waistcoat tbh XOXO. Chillwave pour-over umami pug glossier health goth.
75
+ </div>
76
+ </details>
77
+ </mx-accordion>
78
+ <mx-accordion>
79
+ <details class="accordion accordion--divided">
80
+ <summary class="accordion__toggle">
81
+ Performances
82
+ <span class="button icon button--small button--icon-only icon--chevron-down"
83
+ aria-hidden="true"
84
+ >
85
+ </span>
86
+ </summary>
87
+ <div class="accordion__content rich-text vertical-flow">
88
+ I'm baby air plant hashtag letterpress blue bottle. Cloud bread dreamcatcher everyday carry lumbersexual, iceland cardigan swag chicharrones lo-fi fanny pack affogato freegan XOXO shaman. Shoreditch cloud bread waistcoat tbh XOXO. Chillwave pour-over umami pug glossier health goth.
89
+ </div>
90
+ </details>
91
+ </mx-accordion>
92
+ </mx-accordion-group>
93
+ </div>
94
+ `;
@@ -0,0 +1,26 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Components/Accordion Accordion smoke-test 1`] = `
4
+ <div class="accordion accordion--divided"
5
+ data-open="false"
6
+ >
7
+ <button type="button"
8
+ class="accordion__toggle"
9
+ id="unique-0"
10
+ aria-expanded="false"
11
+ >
12
+ Open me!
13
+ <span class="button button--small icon button--icon-only icon--chevron-down"
14
+ aria-hidden="true"
15
+ >
16
+ </span>
17
+ </button>
18
+ <div role="region"
19
+ aria-labelledby="unique-0"
20
+ class="accordion__content rich-text vertical-flow"
21
+ inert
22
+ >
23
+ I'm baby air plant hashtag letterpress blue bottle. Cloud bread dreamcatcher everyday carry lumbersexual, iceland cardigan swag chicharrones lo-fi fanny pack affogato freegan XOXO shaman. Shoreditch cloud bread waistcoat tbh XOXO. Chillwave pour-over umami pug glossier health goth.
24
+ </div>
25
+ </div>
26
+ `;
@@ -0,0 +1,18 @@
1
+ {% set baseClass = 'accordion' %}
2
+ {% set classes = [
3
+ baseClass,
4
+ baseClass~'--divided',
5
+ ] %}
6
+ {% set attributes = (attributes|default(create_attribute())).addClass(classes) %}
7
+
8
+ <mx-accordion>
9
+ <details{{ attributes }}{% if id %} id="{{ id }}"{% endif %}>
10
+ <summary class="accordion__toggle">
11
+ {{ title }}
12
+ <span class="button icon button--small button--icon-only icon--chevron-down" aria-hidden="true"></span>
13
+ </summary>
14
+ <div class="accordion__content rich-text vertical-flow">
15
+ {{ content }}
16
+ </div>
17
+ </details>
18
+ </mx-accordion>
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Accordion
3
+ */
4
+
5
+ @layer defaults {
6
+ details {
7
+ & summary {
8
+ list-style-type: none;
9
+
10
+ &:is(::-webkit-details-marker, ::marker) {
11
+ display: none;
12
+ content: "";
13
+ }
14
+ }
15
+ }
16
+
17
+ :is(mx-accordion, mx-accordiondiv, mx-accordionmobile) {
18
+ display: block;
19
+ }
20
+
21
+ :where(:is(div.accordion, mx-accordiondiv)) {
22
+ & .accordion__toggle {
23
+ appearance: none;
24
+ color: inherit;
25
+ font-size: inherit;
26
+ background: initial;
27
+ border: initial;
28
+ padding: initial;
29
+ }
30
+
31
+ & .accordion__content[inert] {
32
+ display: none;
33
+ }
34
+ }
35
+ }
36
+
37
+ @layer components {
38
+ .accordion__title {
39
+ margin-block-end: var(--spacing-m);
40
+ display: flex;
41
+ flex-flow: row wrap;
42
+ gap: var(--spacing-s);
43
+ align-items: center;
44
+ }
45
+
46
+ .accordions__toggle-all {
47
+ margin-inline-start: auto;
48
+ }
49
+
50
+ .accordion {
51
+ contain: layout;
52
+
53
+ & .accordion__toggle {
54
+ cursor: pointer;
55
+ inline-size: 100%;
56
+ }
57
+
58
+ &:is(> h2, > h3, > h4, > h5, > h6) {
59
+ all: unset;
60
+ }
61
+ }
62
+
63
+ .accordion--divided {
64
+ border-block-end: var(--line-width, 1px) solid
65
+ var(--line-colour, var(--colour-border));
66
+
67
+ & .accordion__toggle {
68
+ padding-block: var(--vertical-padding, var(--spacing-xxs));
69
+ padding-inline: var(--horizontal-padding, 0);
70
+ display: flex;
71
+ justify-content: space-between;
72
+ align-items: center;
73
+
74
+ & .button--icon-only {
75
+ flex-shrink: 0;
76
+ margin-inline-start: var(--spacing-xxs);
77
+ }
78
+ }
79
+
80
+ &:is([open], [data-open="true"]) {
81
+ & .accordion__toggle {
82
+ & .button--icon-only {
83
+ transform: rotate(180deg);
84
+ }
85
+ }
86
+
87
+ & .accordion__content {
88
+ border-block-start: var(--line-width, 1px) solid
89
+ var(--line-colour, var(--colour-border));
90
+ padding-block: var(--vertical-padding, var(--spacing-xxs));
91
+ padding-inline: var(--horizontal-padding, 0);
92
+ }
93
+ }
94
+ }
95
+ }
96
+
97
+ /**
98
+ * Print stylesheet
99
+ */
100
+
101
+ @media print {
102
+ .accordion {
103
+ & .accordion__content {
104
+ display: block !important;
105
+ }
106
+ }
107
+ }
@@ -0,0 +1,19 @@
1
+ <div class="accordions">
2
+ {% if toggleAll %}
3
+ <mx-accordion-group>
4
+ {% endif %}
5
+ {% if title or toggleAll %}
6
+ <div class="accordion__title">
7
+ {{ title }}
8
+ {% if toggleAll %}
9
+ <div class="accordions__toggle-all">
10
+ <button data-expand class="button button--light button--small" type="button">Expand all</button><button data-collapse class="button button--light button--small" type="button">Collapse all</button>
11
+ </div>
12
+ {% endif %}
13
+ </div>
14
+ {% endif %}
15
+ {{ items }}
16
+ {% if toggleAll %}
17
+ </mx-accordion-group>
18
+ {% endif %}
19
+ </div>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path d="M4 7h8v2H4z" /></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path d="M9 4H7v3H4v2h3v3h2V9h3V7H9z" /></svg>
@@ -0,0 +1,13 @@
1
+ <mx-accordiondiv class="accordion {{ modifier_class }}">
2
+ {% block summary %}
3
+ <button type="button" class="accordion__toggle">
4
+ {{ title | default('Open Me') }}
5
+ <span class="button icon button--small button--icon-only icon--chevron-down" aria-hidden="true"></span>
6
+ </button>
7
+ {% endblock %}
8
+ <div class="accordion__content rich-text vertical-flow">
9
+ {% block content %}
10
+ <p>This content is hidden inside the accordion body until it is disclosed by clicking the accordion toggle.</p>
11
+ {% endblock %}
12
+ </div>
13
+ </mx-accordiondiv>
@@ -0,0 +1,36 @@
1
+ {% if type == 'base' %}
2
+ {% embed './accordion.twig' with { modifier_class: 'accordion--divided' } %}
3
+ {% block summary %}
4
+ <summary class="accordion__toggle">
5
+ {{ title | default('Accordion example') }}
6
+ <span class="button icon button--small button--icon-only icon--chevron-down" aria-hidden="true"></span>
7
+ </summary>
8
+ {% endblock %}
9
+ {% endembed %}
10
+ {% endif %}
11
+ {% if type == 'div' %}
12
+ {% embed './accordion-div.twig' with { modifier_class: 'accordion--divided' } %}
13
+ {% block summary %}
14
+ <button type="button" class="accordion__toggle">
15
+ {{ title | default('A div accordion example') }}
16
+ <span class="button icon button--small button--icon-only icon--chevron-down" aria-hidden="true"></span>
17
+ </button>
18
+ {% endblock %}
19
+ {% block content %}
20
+ <p>This other content is hidden inside the accordion body until it is disclosed by clicking the accordion toggle.</p>
21
+ {% endblock %}
22
+ {% endembed %}
23
+ {% endif %}
24
+ {% if type == 'mobile' %}
25
+ {% embed './accordion-mobile.twig' with { modifier_class: 'accordion--divided' } %}
26
+ {% block summary %}
27
+ <summary class="accordion__toggle">
28
+ {{ title | default('A mobile only example that should be open on Desktop') }}
29
+ <span class="button icon button--small button--icon-only icon--chevron-down" aria-hidden="true"></span>
30
+ </summary>
31
+ {% endblock %}
32
+ {% block content %}
33
+ <p>This other content is hidden inside the accordion body until it is disclosed by clicking the accordion toggle.</p>
34
+ {% endblock %}
35
+ {% endembed %}
36
+ {% endif %}
@@ -0,0 +1,15 @@
1
+ <mx-accordionmobile>
2
+ <details class="accordion {{ modifier_class }}">
3
+ {% block summary %}
4
+ <summary class="accordion__toggle">
5
+ {{ title | default('Open Me') }}
6
+ <span class="button icon button--small button--icon-only icon--chevron-down" aria-hidden="true"></span>
7
+ </summary>
8
+ {% endblock %}
9
+ <div class="accordion__content rich-text vertical-flow">
10
+ {% block content %}
11
+ <p>This content is hidden inside the accordion body until it is disclosed by clicking the accordion toggle.</p>
12
+ {% endblock %}
13
+ </div>
14
+ </details>
15
+ </mx-accordionmobile>
@@ -0,0 +1,13 @@
1
+ {% extends "../accordion.twig" %}
2
+ {% if items %}
3
+ {% set items %}
4
+ {% for item in items %}
5
+ {% include "../accordion-item" with { title: item.title, content: item.content, id: item.id, attributes: attributes } only %}
6
+ {% endfor %}
7
+ {% endset %}
8
+ {% endif %}
9
+ {% if title %}
10
+ {% set title %}
11
+ {% include "@mixtape/Atom/Heading/heading.twig" with { title: title.title, as: title.as } only %}
12
+ {% endset %}
13
+ {% endif %}
@@ -0,0 +1,18 @@
1
+ import { Meta, StoryObj } from "@storybook/react"
2
+ import Component from "./Author"
3
+ import Media from "../../Atom/Media/Media"
4
+
5
+ const meta: Meta<typeof Component> = {
6
+ title: "Elements/Author",
7
+ component: Component,
8
+ args: {
9
+ name: "Jiminy Cricket",
10
+ role: "Lead Narrator",
11
+ image: (
12
+ <Media src="https://picsum.photos/70" alt="Jiminy Cricket's avatar" />
13
+ ),
14
+ },
15
+ }
16
+
17
+ export default meta
18
+ export const Author: StoryObj<typeof meta> = {}
@@ -0,0 +1,30 @@
1
+ import { JSX, ReactNode } from "react"
2
+ import Grid from "../../Layout/Grid/Grid"
3
+ import Heading from "../../Atom/Heading/Heading"
4
+ import Text from "../../Atom/Text/Text"
5
+ import { GridWidths, TextStyles } from "../../enums"
6
+ import { HeadingTypes } from "@pnx-mixtape/ids-shape"
7
+
8
+ type AuthorProps = {
9
+ name: string
10
+ role?: string
11
+ image?: ReactNode
12
+ }
13
+
14
+ const Author = ({ image, role, name }: AuthorProps): JSX.Element => (
15
+ <Grid wrapper className={"author"}>
16
+ {image && (
17
+ <Grid width={GridWidths.TWO} className={"author__image"}>
18
+ {image}
19
+ </Grid>
20
+ )}
21
+ <Grid width={GridWidths.TEN} className={"author__details"}>
22
+ <Heading as={HeadingTypes.THREE} className={"spacing--top-s"}>
23
+ {name}
24
+ </Heading>
25
+ {role && <Text modifier={TextStyles.M}>{role}</Text>}
26
+ </Grid>
27
+ </Grid>
28
+ )
29
+
30
+ export default Author
@@ -0,0 +1,21 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Elements/Author Author smoke-test 1`] = `
4
+ <div class="grid author">
5
+ <div class="grid--2-col author__image">
6
+ <img alt="Jiminy Cricket's avatar"
7
+ src="https://picsum.photos/70"
8
+ >
9
+ </div>
10
+ <div class="grid--10-col author__details">
11
+ <h3 class="spacing--top-s"
12
+ id="jiminy-cricket"
13
+ >
14
+ Jiminy Cricket
15
+ </h3>
16
+ <p class="text--m">
17
+ Lead Narrator
18
+ </p>
19
+ </div>
20
+ </div>
21
+ `;
@@ -0,0 +1,15 @@
1
+ import { Meta, StoryObj } from "@storybook/html"
2
+ import Component from "./breadcrumb.twig"
3
+ import "./breadcrumb.css"
4
+
5
+ const meta: Meta<typeof Component> = {
6
+ tags: ["autodocs"],
7
+ component: Component,
8
+ }
9
+
10
+ export default meta
11
+ type Story = StoryObj<typeof meta>
12
+
13
+ export const Breadcrumb: Story = {
14
+ args: {},
15
+ }
@@ -0,0 +1,38 @@
1
+ import { Meta, StoryObj } from "@storybook/react"
2
+ import Component from "./Breadcrumb"
3
+ import "./breadcrumb.css"
4
+
5
+ const meta: Meta<typeof Component> = {
6
+ tags: ["autodocs"],
7
+ component: Component,
8
+ args: {
9
+ items: [
10
+ {
11
+ id: "1",
12
+ title: "Home",
13
+ to: "#",
14
+ },
15
+ {
16
+ id: "2",
17
+ title: "About",
18
+ to: "#",
19
+ },
20
+ {
21
+ id: "3",
22
+ title: "Contact",
23
+ to: "#",
24
+ },
25
+ ],
26
+ title: "Current page title",
27
+ },
28
+ }
29
+
30
+ export default meta
31
+ type Story = StoryObj<typeof meta>
32
+
33
+ export const Breadcrumb: Story = {}
34
+ export const NoCurrentPage: Story = {
35
+ args: {
36
+ title: null,
37
+ },
38
+ }
@@ -0,0 +1,34 @@
1
+ import { JSX, ComponentPropsWithoutRef } from "react"
2
+ import classNames from "classnames"
3
+ import Link from "../../Atom/Link/Link"
4
+ import { NavigationItem } from "../Navigation/Navigation"
5
+
6
+ type BreadcrumbProps = ComponentPropsWithoutRef<"nav"> & {
7
+ items: NavigationItem[]
8
+ title?: string
9
+ className?: string
10
+ }
11
+
12
+ const Breadcrumb = ({
13
+ items,
14
+ title,
15
+ className,
16
+ ...props
17
+ }: BreadcrumbProps): JSX.Element => (
18
+ <nav
19
+ className={classNames("nav", "nav--breadcrumb", "nav--inline", className)}
20
+ {...props}
21
+ >
22
+ <ul>
23
+ {items &&
24
+ items.map(item => (
25
+ <li key={item.id}>
26
+ <Link to={item.to}>{item.title}</Link>
27
+ </li>
28
+ ))}
29
+ {title && <li className="nav__item--current">{title}</li>}
30
+ </ul>
31
+ </nav>
32
+ )
33
+
34
+ export default Breadcrumb
@@ -0,0 +1,26 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Navigation/Breadcrumb Breadcrumb smoke-test 1`] = `
4
+ <nav class="nav nav--inline nav--breadcrumb ">
5
+ <ul>
6
+ <li>
7
+ <a href="#">
8
+ Home
9
+ </a>
10
+ </li>
11
+ <li>
12
+ <a href="#">
13
+ Level 1
14
+ </a>
15
+ </li>
16
+ <li>
17
+ <a href="#">
18
+ Level 2
19
+ </a>
20
+ </li>
21
+ <li>
22
+ Current Page
23
+ </li>
24
+ </ul>
25
+ </nav>
26
+ `;
@@ -0,0 +1,60 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Navigation/Breadcrumb Breadcrumb smoke-test 1`] = `
4
+ <nav class="nav nav--breadcrumb nav--inline">
5
+ <ul>
6
+ <li>
7
+ <a href="#"
8
+ class="link"
9
+ >
10
+ Home
11
+ </a>
12
+ </li>
13
+ <li>
14
+ <a href="#"
15
+ class="link"
16
+ >
17
+ About
18
+ </a>
19
+ </li>
20
+ <li>
21
+ <a href="#"
22
+ class="link"
23
+ >
24
+ Contact
25
+ </a>
26
+ </li>
27
+ <li class="nav__item--current">
28
+ Current page title
29
+ </li>
30
+ </ul>
31
+ </nav>
32
+ `;
33
+
34
+ exports[`Navigation/Breadcrumb NoCurrentPage smoke-test 1`] = `
35
+ <nav class="nav nav--breadcrumb nav--inline">
36
+ <ul>
37
+ <li>
38
+ <a href="#"
39
+ class="link"
40
+ >
41
+ Home
42
+ </a>
43
+ </li>
44
+ <li>
45
+ <a href="#"
46
+ class="link"
47
+ >
48
+ About
49
+ </a>
50
+ </li>
51
+ <li>
52
+ <a href="#"
53
+ class="link"
54
+ >
55
+ Contact
56
+ </a>
57
+ </li>
58
+ </ul>
59
+ </nav>
60
+ `;
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Breadcrumb Navigation
3
+ */
4
+
5
+ @layer components {
6
+ .nav--breadcrumb {
7
+ --nav-font-size: var(--font-size-s);
8
+
9
+ position: relative;
10
+ z-index: 1;
11
+ overflow: auto;
12
+ white-space: nowrap;
13
+
14
+ & > ul {
15
+ gap: var(--breadcrumb-gap, var(--spacing-xxxxs));
16
+ }
17
+
18
+ & > ul > li {
19
+ color: var(
20
+ --breadcrumb-foreground,
21
+ var(--foreground, var(--colour-foreground-alt))
22
+ );
23
+ display: flex;
24
+ align-items: center;
25
+
26
+ &:where(:not(:last-child))::after {
27
+ content: "";
28
+ display: block;
29
+ vertical-align: middle;
30
+ mask-image: svg-load("../../Atom/Icon/images/chevron-right.svg");
31
+ mask-position: center;
32
+ mask-repeat: no-repeat;
33
+ block-size: var(--spacing-m);
34
+ inline-size: var(--spacing-m);
35
+ background-color: currentcolor;
36
+ }
37
+ }
38
+ }
39
+
40
+ [dir="rtl"] .nav--breadcrumb,
41
+ .translated-rtl .nav--breadcrumb {
42
+ & > ul > li::after {
43
+ transform: rotate(180deg);
44
+ }
45
+ }
46
+ }
@@ -0,0 +1,12 @@
1
+ {% spaceless %}
2
+ <nav class="nav nav--inline nav--breadcrumb {{ modifier_class }}">
3
+ {% block crumbs %}
4
+ <ul>
5
+ <li><a href="#">Home</a></li>
6
+ <li><a href="#">Level 1</a></li>
7
+ <li><a href="#">Level 2</a></li>
8
+ <li>Current Page</li>
9
+ </ul>
10
+ {% endblock %}
11
+ </nav>
12
+ {% endspaceless %}