@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,61 @@
1
+ /**
2
+ * Tiles
3
+ */
4
+ @layer components {
5
+ .tile {
6
+ --outline-offset: -0.125rem;
7
+ --gap: var(--gap-s);
8
+
9
+ overflow: hidden;
10
+ position: relative;
11
+ border-radius: var(--border-radius);
12
+ background: var(--tile-background, var(--colour-background-alt));
13
+ color: var(--tile-foreground var(--colour-foreground));
14
+ min-block-size: 160px;
15
+ min-block-size: var(--height, 160px);
16
+ transition:
17
+ 0.2s background-color,
18
+ 0.2s background-image,
19
+ 0.2s color,
20
+ 0.2s border-color;
21
+ }
22
+
23
+ .tile:is(.tile--has-link, :has(> a[href])) {
24
+ cursor: pointer;
25
+ }
26
+
27
+ .tile > a[href] {
28
+ display: block;
29
+ text-indent: -10000%;
30
+ block-size: 100%;
31
+ }
32
+
33
+ .tile .tile__content {
34
+ padding: var(--spacing-m);
35
+ position: relative;
36
+ }
37
+
38
+ .tile--medium:root {
39
+ --height: 15rem;
40
+ }
41
+
42
+ .tile--large:root {
43
+ --height: 27.0625rem;
44
+ }
45
+ }
46
+
47
+ /**
48
+ * Print stylesheet
49
+ */
50
+
51
+ @media print {
52
+ .tile {
53
+ display: block;
54
+ background-color: transparent;
55
+ background-image: none;
56
+ color: var(--colour-foreground);
57
+ min-block-size: 0;
58
+ }
59
+ }
60
+
61
+ /*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRpbGVzLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7RUFFRTtBQUNGO0VBQ0U7SUFDRSwyQkFBc0I7SUFDdEIsbUJBQW1COztJQUVuQixnQkFBZ0I7SUFDaEIsa0JBQWtCO0lBQ2xCLG1DQUFtQztJQUNuQyxnRUFBZ0U7SUFDaEUsc0RBQXNEO0lBQ3RELHFCQUFvQztJQUFwQyxvQ0FBb0M7SUFDcEM7Ozs7dUJBSW1CO0VBZ0JyQjs7SUFkRTtNQUNFLGVBQWU7SUFDakI7O0lBRUE7TUFDRSxjQUFjO01BQ2Qsb0JBQW9CO01BQ3BCLGdCQUFnQjtJQUNsQjs7SUFFQTtNQUNFLHlCQUF5QjtNQUN6QixrQkFBa0I7SUFDcEI7O0VBR0Y7SUFDRSxlQUFlO0VBQ2pCOztFQUVBO0lBQ0Usb0JBQWU7RUFDakI7QUFDRjs7QUFFQTs7RUFFRTs7QUFFRjtFQUNFO0lBQ0UsY0FBYztJQUNkLDZCQUE2QjtJQUM3QixzQkFBc0I7SUFDdEIsK0JBQStCO0lBQy9CLGlCQUFpQjtFQUNuQjtBQUNGIiwiZmlsZSI6InRpbGVzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGlsZXNcbiAqL1xuQGxheWVyIGNvbXBvbmVudHMge1xuICAudGlsZSB7XG4gICAgLS1vdXRsaW5lLW9mZnNldDogLTJweDtcbiAgICAtLWdhcDogdmFyKC0tZ2FwLXMpO1xuXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdGlsZS1iYWNrZ3JvdW5kLCB2YXIoLS1jb2xvdXItYmFja2dyb3VuZC1hbHQpKTtcbiAgICBjb2xvcjogdmFyKC0tdGlsZS1mb3JlZ3JvdW5kIHZhcigtLWNvbG91ci1mb3JlZ3JvdW5kKSk7XG4gICAgbWluLWJsb2NrLXNpemU6IHZhcigtLWhlaWdodCwgMTYwcHgpO1xuICAgIHRyYW5zaXRpb246XG4gICAgICAwLjJzIGJhY2tncm91bmQtY29sb3IsXG4gICAgICAwLjJzIGJhY2tncm91bmQtaW1hZ2UsXG4gICAgICAwLjJzIGNvbG9yLFxuICAgICAgMC4ycyBib3JkZXItY29sb3I7XG5cbiAgICAmOmlzKC50aWxlLS1oYXMtbGluaywgOmhhcyg+IGFbaHJlZl0pKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJiA+IGFbaHJlZl0ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWluZGVudDogLTEwMDAwJTtcbiAgICAgIGJsb2NrLXNpemU6IDEwMCU7XG4gICAgfVxuXG4gICAgJiAudGlsZV9fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLW0pO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgfVxuXG4gICYudGlsZS0tbWVkaXVtIHtcbiAgICAtLWhlaWdodDogMjQwcHg7XG4gIH1cblxuICAmLnRpbGUtLWxhcmdlIHtcbiAgICAtLWhlaWdodDogNDMzcHg7XG4gIH1cbn1cblxuLyoqXG4gKiBQcmludCBzdHlsZXNoZWV0XG4gKi9cblxuQG1lZGlhIHByaW50IHtcbiAgLnRpbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG91ci1mb3JlZ3JvdW5kKTtcbiAgICBtaW4tYmxvY2stc2l6ZTogMDtcbiAgfVxufVxuIl19 */
@@ -0,0 +1,175 @@
1
+ @layer utilities {
2
+ .stack {
3
+ display: grid;
4
+ grid-template-areas: "stack";
5
+ }
6
+
7
+ .stack > * {
8
+ grid-area: stack;
9
+ }
10
+
11
+ .flex {
12
+ display: flex;
13
+ }
14
+
15
+ .place-center {
16
+ align-content: center;
17
+ justify-content: center;
18
+ place-content: center;
19
+ }
20
+
21
+ .align--center {
22
+ margin-inline: auto;
23
+ }
24
+
25
+ .align--left {
26
+ margin-inline-end: auto;
27
+ }
28
+
29
+ .align--right {
30
+ margin-inline-start: auto;
31
+ }
32
+
33
+ .align--bottom {
34
+ margin-block-start: auto;
35
+ }
36
+
37
+ .align--top {
38
+ margin-block-end: auto;
39
+ }
40
+
41
+ .order--start {
42
+ order: -1;
43
+ }
44
+
45
+ .order--1 {
46
+ order: 1;
47
+ }
48
+
49
+ .order--2 {
50
+ order: 2;
51
+ }
52
+
53
+ .order--3 {
54
+ order: 3;
55
+ }
56
+
57
+ .gap--s {
58
+ gap: var(--gap-s);
59
+ }
60
+
61
+ .gap--m {
62
+ gap: var(--gap);
63
+ }
64
+
65
+ .gap--l {
66
+ gap: var(--gap-l);
67
+ }
68
+
69
+ .gap--xl {
70
+ gap: var(--gap-xl);
71
+ }
72
+
73
+ .gap--section-l {
74
+ gap: var(--section-l, var(--spacing-xl));
75
+ }
76
+
77
+ .gap--section-xl {
78
+ gap: var(--section-xl, var(--spacing-uul));
79
+ }
80
+ }
81
+
82
+ @layer utilities {
83
+ .hidden,
84
+ .visually-hidden,
85
+ .sr-only {
86
+ clip-path: polygon(0 0, 0 0, 0 0, 0 0);
87
+ box-sizing: border-box;
88
+ position: absolute !important;
89
+ margin: 0;
90
+ padding: 0;
91
+ }
92
+
93
+ .visually-hidden.visually-hidden--focussable:focus,
94
+ .sr-only.sr-only--focussable:focus {
95
+ clip-path: none;
96
+ position: revert !important;
97
+ margin: revert;
98
+ padding: revert;
99
+ }
100
+ }
101
+
102
+ /**
103
+ * Responsive utility class
104
+ */
105
+
106
+ @layer utilities {
107
+ @media (min-width: 946px) {
108
+ .mobile-only {
109
+ display: none;
110
+ }
111
+ }
112
+ @media (max-width: 945.98px) {
113
+
114
+ .desktop-only,
115
+ .global .desktop-only {
116
+ display: none;
117
+ }
118
+ }
119
+
120
+ .print-only {
121
+ display: none !important;
122
+ }
123
+
124
+ @media print {
125
+
126
+ .print-only {
127
+ display: block !important;
128
+ }
129
+ }
130
+ @media print {
131
+
132
+ .screen-only {
133
+ display: none !important;
134
+ }
135
+ }
136
+ }
137
+
138
+ /**
139
+ * Skeleton and loading UI.
140
+ */
141
+
142
+ @layer utilities {
143
+ .skeleton {
144
+ --background: hsla(0, 0%, 0%, 0.1);
145
+ --opacity-low: 0.5;
146
+ --opacity-high: 0.75;
147
+ --duration: 1500ms;
148
+
149
+ animation: pulse 1500ms ease infinite;
150
+
151
+ animation: pulse var(--duration) ease infinite;
152
+ }
153
+
154
+ .skeleton--bg {
155
+ background-color: var(--background);
156
+ border-radius: var(--border-radius);
157
+ z-index: -1;
158
+ }
159
+ }
160
+
161
+ @keyframes pulse {
162
+ 0% {
163
+ opacity: var(--opacity-low);
164
+ }
165
+
166
+ 75% {
167
+ opacity: var(--opacity-high);
168
+ }
169
+
170
+ 100% {
171
+ opacity: var(--opacity-low);
172
+ }
173
+ }
174
+
175
+ /*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9sYXlvdXQtdXRpbHMuY3NzIiwidXRpbGl0aWVzLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFO0lBQ0UsYUFBYTtJQUNiLDRCQUE0QjtFQUs5Qjs7SUFIRTtNQUNFLGdCQUFnQjtJQUNsQjs7RUFHRjtJQUNFLGFBQWE7RUFDZjs7RUFFQTtJQUNFLHFCQUFxQjtJQUFyQix1QkFBcUI7SUFBckIscUJBQXFCO0VBQ3ZCOztFQUVBO0lBQ0UsbUJBQW1CO0VBQ3JCOztFQUVBO0lBQ0UsdUJBQXVCO0VBQ3pCOztFQUVBO0lBQ0UseUJBQXlCO0VBQzNCOztFQUVBO0lBQ0Usd0JBQXdCO0VBQzFCOztFQUVBO0lBQ0Usc0JBQXNCO0VBQ3hCOztFQUVBO0lBQ0UsU0FBUztFQUNYOztFQUVBO0lBQ0UsUUFBUTtFQUNWOztFQUVBO0lBQ0UsUUFBUTtFQUNWOztFQUVBO0lBQ0UsUUFBUTtFQUNWOztFQUVBO0lBQ0UsaUJBQWlCO0VBQ25COztFQUVBO0lBQ0UsZUFBZTtFQUNqQjs7RUFFQTtJQUNFLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGtCQUFrQjtFQUNwQjs7RUFFQTtJQUNFLHdDQUF3QztFQUMxQzs7RUFFQTtJQUNFLDBDQUEwQztFQUM1QztBQUNGOztBQzNFQTtFQUNFOzs7SUFHRSxzQ0FBc0M7SUFDdEMsc0JBQXNCO0lBQ3RCLDZCQUE2QjtJQUM3QixTQUFTO0lBQ1QsVUFBVTtFQUNaOztFQUVBOztJQUVFLGVBQWU7SUFDZiwyQkFBMkI7SUFDM0IsY0FBYztJQUNkLGVBQWU7RUFDakI7QUFDRjs7QUFFQTs7RUFFRTs7QUFFRjtJQUVJO0VBREY7TUFFSSxhQUFhO0VBRWpCO0lBREU7SUFLQTs7RUFGRjs7TUFHSSxhQUFhO0VBRWpCO0lBREU7O0VBR0Y7SUFDRSx3QkFBd0I7RUFLMUI7O0lBSEU7O0VBSEY7TUFJSSx5QkFBeUI7RUFFN0I7SUFERTtJQUlBOztFQURGO01BRUksd0JBQXdCO0VBRTVCO0lBREU7QUFFSjs7QUFFQTs7RUFFRTs7QUFDRjtFQUNFO0lBQ0Usa0NBQW1DO0lBQ25DLGtCQUFrQjtJQUNsQixvQkFBb0I7SUFDcEIsa0JBQWtCOztJQUVsQixxQ0FBOEM7O0lBQTlDLDhDQUE4QztFQUNoRDs7RUFFQTtJQUNFLG1DQUFtQztJQUNuQyxtQ0FBbUM7SUFDbkMsV0FBVztFQUNiO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLDJCQUEyQjtFQUM3Qjs7RUFFQTtJQUNFLDRCQUE0QjtFQUM5Qjs7RUFFQTtJQUNFLDJCQUEyQjtFQUM3QjtBQUNGIiwiZmlsZSI6InV0aWxpdGllcy5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAbGF5ZXIgdXRpbGl0aWVzIHtcbiAgLnN0YWNrIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwic3RhY2tcIjtcblxuICAgICYgPiAqIHtcbiAgICAgIGdyaWQtYXJlYTogc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgLmZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAucGxhY2UtY2VudGVyIHtcbiAgICBwbGFjZS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAuYWxpZ24tLWNlbnRlciB7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxuXG4gIC5hbGlnbi0tbGVmdCB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IGF1dG87XG4gIH1cblxuICAuYWxpZ24tLXJpZ2h0IHtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiBhdXRvO1xuICB9XG5cbiAgLmFsaWduLS1ib3R0b20ge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogYXV0bztcbiAgfVxuXG4gIC5hbGlnbi0tdG9wIHtcbiAgICBtYXJnaW4tYmxvY2stZW5kOiBhdXRvO1xuICB9XG5cbiAgLm9yZGVyLS1zdGFydCB7XG4gICAgb3JkZXI6IC0xO1xuICB9XG5cbiAgLm9yZGVyLS0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuXG4gIC5vcmRlci0tMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAub3JkZXItLTMge1xuICAgIG9yZGVyOiAzO1xuICB9XG5cbiAgLmdhcC0tcyB7XG4gICAgZ2FwOiB2YXIoLS1nYXAtcyk7XG4gIH1cblxuICAuZ2FwLS1tIHtcbiAgICBnYXA6IHZhcigtLWdhcCk7XG4gIH1cblxuICAuZ2FwLS1sIHtcbiAgICBnYXA6IHZhcigtLWdhcC1sKTtcbiAgfVxuXG4gIC5nYXAtLXhsIHtcbiAgICBnYXA6IHZhcigtLWdhcC14bCk7XG4gIH1cblxuICAuZ2FwLS1zZWN0aW9uLWwge1xuICAgIGdhcDogdmFyKC0tc2VjdGlvbi1sLCB2YXIoLS1zcGFjaW5nLXhsKSk7XG4gIH1cblxuICAuZ2FwLS1zZWN0aW9uLXhsIHtcbiAgICBnYXA6IHZhcigtLXNlY3Rpb24teGwsIHZhcigtLXNwYWNpbmctdXVsKSk7XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCJfbGF5b3V0LXV0aWxzLmNzc1wiO1xuXG5AbGF5ZXIgdXRpbGl0aWVzIHtcbiAgLmhpZGRlbixcbiAgLnZpc3VhbGx5LWhpZGRlbixcbiAgLnNyLW9ubHkge1xuICAgIGNsaXAtcGF0aDogcG9seWdvbigwIDAsIDAgMCwgMCAwLCAwIDApO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAudmlzdWFsbHktaGlkZGVuLnZpc3VhbGx5LWhpZGRlbi0tZm9jdXNzYWJsZTpmb2N1cyxcbiAgLnNyLW9ubHkuc3Itb25seS0tZm9jdXNzYWJsZTpmb2N1cyB7XG4gICAgY2xpcC1wYXRoOiBub25lO1xuICAgIHBvc2l0aW9uOiByZXZlcnQgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IHJldmVydDtcbiAgICBwYWRkaW5nOiByZXZlcnQ7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXNwb25zaXZlIHV0aWxpdHkgY2xhc3NcbiAqL1xuXG5AbGF5ZXIgdXRpbGl0aWVzIHtcbiAgLm1vYmlsZS1vbmx5IHtcbiAgICBAbWVkaWEgKC0tbGFyZ2UtdXApIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmRlc2t0b3Atb25seSxcbiAgLmdsb2JhbCAuZGVza3RvcC1vbmx5IHtcbiAgICBAbWVkaWEgKC0tbGFyZ2UtZG93bikge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAucHJpbnQtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLnNjcmVlbi1vbmx5IHtcbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFNrZWxldG9uIGFuZCBsb2FkaW5nIFVJLlxuICovXG5AbGF5ZXIgdXRpbGl0aWVzIHtcbiAgLnNrZWxldG9uIHtcbiAgICAtLWJhY2tncm91bmQ6IGhzbCgwZGVnIDAlIDAlIC8gMTAlKTtcbiAgICAtLW9wYWNpdHktbG93OiAwLjU7XG4gICAgLS1vcGFjaXR5LWhpZ2g6IDAuNzU7XG4gICAgLS1kdXJhdGlvbjogMTUwMG1zO1xuXG4gICAgYW5pbWF0aW9uOiBwdWxzZSB2YXIoLS1kdXJhdGlvbikgZWFzZSBpbmZpbml0ZTtcbiAgfVxuXG4gIC5za2VsZXRvbi0tYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcHVsc2Uge1xuICAwJSB7XG4gICAgb3BhY2l0eTogdmFyKC0tb3BhY2l0eS1sb3cpO1xuICB9XG5cbiAgNzUlIHtcbiAgICBvcGFjaXR5OiB2YXIoLS1vcGFjaXR5LWhpZ2gpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogdmFyKC0tb3BhY2l0eS1sb3cpO1xuICB9XG59XG4iXX0= */
package/package.json ADDED
@@ -0,0 +1,130 @@
1
+ {
2
+ "name": "@pnx-mixtape/mxds",
3
+ "description": "The Mixtape Design System",
4
+ "version": "0.0.1",
5
+ "scripts": {
6
+ "dev": "concurrently -k -n \"VITE,STORYBOOK\" -c \"#636cff,#ff4785\" \"npm run dev-vite\" \"npm run dev-storybook\"",
7
+ "build": "concurrently -n \"VITE,STORYBOOK\" -c \"#636cff,#ff4785\" \"npm run build-vite\" \"npm run build-storybook\"",
8
+ "dev-storybook-html": "storybook dev -p 6006",
9
+ "dev-storybook-react": "storybook dev -p 6008 -c .storybook-react",
10
+ "dev-storybook": "concurrently \"npm:dev-storybook-*\"",
11
+ "build-storybook": "npm run build-storybook-html && npm run build-storybook-react",
12
+ "build-storybook-html": "storybook build -o dist/storybook",
13
+ "build-storybook-react": "storybook build -o dist/storybook/react -c .storybook-react",
14
+ "dev-vite": "vite build -w -m development",
15
+ "build-vite": "vite build",
16
+ "format": "prettier --write \"**/*.{css,ts,tsx,js,jsx,json,md,mdx}\" && npm run fix-css && npm run fix-js",
17
+ "lint": "prettier --check \"**/*.{css,ts,tsx,js,jsx,json,md,mdx}\" && npm run lint-css && npm run lint-ts && npm run lint-js",
18
+ "lint-css": "stylelint \"./**/*.css\"",
19
+ "fix-css": "npm run lint-css -- --fix",
20
+ "lint-js": "eslint \"./**/*.{ts,tsx}\"",
21
+ "fix-js": "npm run lint-js -- --fix",
22
+ "lint-ts": "tsc",
23
+ "test": "npm run test-storybook",
24
+ "test-vitest": "vitest --run",
25
+ "test-storybook": "concurrently \"npm:test-storybook-*\"",
26
+ "test-storybook-html": "test-storybook --maxWorkers=50%",
27
+ "test-storybook-react": "test-storybook --maxWorkers=50% --url http://127.0.0.1:6008 -c .storybook-react",
28
+ "clean": "rm -rf ./dist",
29
+ "commit": "git-cz",
30
+ "http-server": "http-server ./dist/storybook -i -p 3001"
31
+ },
32
+ "dependencies": {
33
+ "@floating-ui/dom": "^1.6.5",
34
+ "@oddbird/popover-polyfill": "^0.4.3",
35
+ "@pnx-mixtape/ids-shape": "^0.0.7",
36
+ "classnames": "^2.5.1",
37
+ "js-cookie": "^3.0.5",
38
+ "react": "^18.3.1",
39
+ "react-aria": "^3.33.0",
40
+ "react-dom": "^18.3.1",
41
+ "react-keyed-flatten-children": "^3.0.0",
42
+ "react-stately": "^3.31.0",
43
+ "tabbable": "^6.2.0"
44
+ },
45
+ "devDependencies": {
46
+ "@csstools/postcss-global-data": "^2.1.1",
47
+ "@eslint-react/eslint-plugin": "^1.9.1",
48
+ "@eslint/eslintrc": "^3.1.0",
49
+ "@eslint/js": "^8.57.0",
50
+ "@rollup/plugin-terser": "^0.4.4",
51
+ "@storybook/addon-a11y": "^8.5.3",
52
+ "@storybook/addon-essentials": "^8.5.3",
53
+ "@storybook/addon-interactions": "^8.5.3",
54
+ "@storybook/addon-links": "^8.5.3",
55
+ "@storybook/blocks": "^8.5.3",
56
+ "@storybook/html": "^8.5.3",
57
+ "@storybook/html-vite": "^8.5.3",
58
+ "@storybook/manager-api": "^8.5.3",
59
+ "@storybook/react": "^8.5.3",
60
+ "@storybook/react-vite": "^8.5.3",
61
+ "@storybook/test": "^8.5.3",
62
+ "@storybook/test-runner": "^0.21.1",
63
+ "@storybook/types": "^8.5.3",
64
+ "@svgr/rollup": "^8.1.0",
65
+ "@testing-library/dom": "^10.1.0",
66
+ "@testing-library/jest-dom": "^6.6.3",
67
+ "@testing-library/react": "^16.0.0",
68
+ "@testing-library/user-event": "^14.5.2",
69
+ "@typescript-eslint/parser": "^7.18.0",
70
+ "@vitejs/plugin-react": "^4.3.1",
71
+ "@vitest/ui": "^1.6.0",
72
+ "axe-playwright": "^2.0.1",
73
+ "browserslist-to-esbuild": "^2.1.1",
74
+ "clean-css": "^5.3.3",
75
+ "cli-progress": "^3.12.0",
76
+ "concurrently": "^8.2.2",
77
+ "eslint": "^8.57.0",
78
+ "eslint-config-prettier": "^9.1.0",
79
+ "eslint-plugin-react": "^7.34.1",
80
+ "eslint-plugin-storybook": "^0.11.2",
81
+ "eslint-plugin-testing-library": "^6.2.2",
82
+ "eslint-plugin-unused-imports": "^3.2.0",
83
+ "eslint-plugin-vitest": "^0.5.4",
84
+ "globals": "^15.3.0",
85
+ "http-server": "^14.1.1",
86
+ "jsdom": "^24.1.0",
87
+ "postcss": "^8.5.2",
88
+ "postcss-design-tokens": "^1.3.0",
89
+ "postcss-inline-svg": "^6.0.0",
90
+ "postcss-mixins": "^10.0.1",
91
+ "postcss-preset-env": "^9.5.13",
92
+ "postcss-pxtorem": "^6.1.0",
93
+ "prettier": "^3.3.2",
94
+ "storybook": "^8.5.3",
95
+ "storybook-addon-deep-controls": "^0.9.2",
96
+ "stylelint": "^16.5.0",
97
+ "stylelint-config-standard": "^36.0.0",
98
+ "stylelint-use-logical-spec": "^5.0.1",
99
+ "tinyglobby": "^0.2.2",
100
+ "typescript": "^5.4.5",
101
+ "typescript-eslint": "^7.9.0",
102
+ "vite": "^5.2.11",
103
+ "vite-plugin-twig-drupal": "^1.3.0",
104
+ "vitest": "^1.6.0"
105
+ },
106
+ "optionalDependencies": {
107
+ "@esbuild/linux-arm64": "^0.23.0",
108
+ "@rollup/rollup-linux-x64-gnu": "^4.9.5",
109
+ "@rollup/rollup-linux-x64-musl": "^4.18.0",
110
+ "@swc/core-linux-arm64-gnu": "^1.7.3"
111
+ },
112
+ "config": {
113
+ "commitizen": {
114
+ "path": "./node_modules/cz-conventional-changelog"
115
+ }
116
+ },
117
+ "engines": {
118
+ "node": ">= 20.0"
119
+ },
120
+ "type": "module",
121
+ "files": [
122
+ "dist/build/*",
123
+ "src"
124
+ ],
125
+ "exports": {
126
+ ".": "./src/elements.ts",
127
+ "./react": "./src/react.ts",
128
+ "./*.css": "./dist/*.css"
129
+ }
130
+ }
@@ -0,0 +1,36 @@
1
+ import { Meta, StoryObj } from "@storybook/html"
2
+ import Component from "./backgrounds.twig"
3
+ import "./_background.css"
4
+ import { BackgroundStyles } from "../../enums"
5
+
6
+ type BackgroundsType = {
7
+ modifier?: BackgroundStyles
8
+ }
9
+
10
+ const meta: Meta<BackgroundsType> = {
11
+ title: "Atom/Backgrounds",
12
+ tags: ["autodocs"],
13
+ component: Component,
14
+ argTypes: {
15
+ modifier: { options: Object.values(BackgroundStyles), control: "select" },
16
+ },
17
+ }
18
+
19
+ export default meta
20
+ type Story = StoryObj<BackgroundsType>
21
+
22
+ export const Backgrounds: Story = {
23
+ args: {},
24
+ }
25
+
26
+ export const Alt: Story = {
27
+ args: {
28
+ modifier: BackgroundStyles.ALT,
29
+ },
30
+ }
31
+
32
+ export const Reverse: Story = {
33
+ args: {
34
+ modifier: BackgroundStyles.REVERSE,
35
+ },
36
+ }
@@ -0,0 +1,100 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Base/Backgrounds Alt smoke-test 1`] = `
4
+ <div class="spacing--m rich-text vertical-flow background--alt">
5
+ <blockquote>
6
+ <p>
7
+ But I must explain to you how all this mistaken idea of denouncing of a
8
+ <a href="#">
9
+ pleasure and praising pain
10
+ </a>
11
+ was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences.
12
+ </p>
13
+ <a href="#"
14
+ class="link--external"
15
+ >
16
+ Contact the Lorem Ipsum Squad
17
+ </a>
18
+ </blockquote>
19
+ <blockquote class="background--reset">
20
+ <p>
21
+ But I must explain to you how all this mistaken idea of denouncing of a
22
+ <a href="#">
23
+ pleasure and praising pain
24
+ </a>
25
+ was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences.
26
+ </p>
27
+ <a href="#"
28
+ class="link--external"
29
+ >
30
+ Contact the Lorem Ipsum Squad
31
+ </a>
32
+ </blockquote>
33
+ </div>
34
+ `;
35
+
36
+ exports[`Base/Backgrounds Backgrounds smoke-test 1`] = `
37
+ <div class="spacing--m rich-text vertical-flow ">
38
+ <blockquote>
39
+ <p>
40
+ But I must explain to you how all this mistaken idea of denouncing of a
41
+ <a href="#">
42
+ pleasure and praising pain
43
+ </a>
44
+ was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences.
45
+ </p>
46
+ <a href="#"
47
+ class="link--external"
48
+ >
49
+ Contact the Lorem Ipsum Squad
50
+ </a>
51
+ </blockquote>
52
+ <blockquote class="background--reset">
53
+ <p>
54
+ But I must explain to you how all this mistaken idea of denouncing of a
55
+ <a href="#">
56
+ pleasure and praising pain
57
+ </a>
58
+ was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences.
59
+ </p>
60
+ <a href="#"
61
+ class="link--external"
62
+ >
63
+ Contact the Lorem Ipsum Squad
64
+ </a>
65
+ </blockquote>
66
+ </div>
67
+ `;
68
+
69
+ exports[`Base/Backgrounds Reverse smoke-test 1`] = `
70
+ <div class="spacing--m rich-text vertical-flow background--reverse">
71
+ <blockquote>
72
+ <p>
73
+ But I must explain to you how all this mistaken idea of denouncing of a
74
+ <a href="#">
75
+ pleasure and praising pain
76
+ </a>
77
+ was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences.
78
+ </p>
79
+ <a href="#"
80
+ class="link--external"
81
+ >
82
+ Contact the Lorem Ipsum Squad
83
+ </a>
84
+ </blockquote>
85
+ <blockquote class="background--reset">
86
+ <p>
87
+ But I must explain to you how all this mistaken idea of denouncing of a
88
+ <a href="#">
89
+ pleasure and praising pain
90
+ </a>
91
+ was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences.
92
+ </p>
93
+ <a href="#"
94
+ class="link--external"
95
+ >
96
+ Contact the Lorem Ipsum Squad
97
+ </a>
98
+ </blockquote>
99
+ </div>
100
+ `;
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Colors
3
+ *
4
+ * Colors are defined in the constants package. View the [Constants package](https://github.com/previousnext/mixtape/tree/master/packages/constants) on github.
5
+ *
6
+ * Markup: colors.twig
7
+ *
8
+ * Style guide: base.colors
9
+ */
10
+
11
+ /**
12
+ * Backgrounds
13
+ *
14
+ * Colors are defined in the constants package. View the [Constants package](https://github.com/previousnext/mixtape/tree/master/packages/constants) on github.
15
+ *
16
+ * .background--alt - Alternative
17
+ * .background--reverse - Reverse
18
+ *
19
+ * Default: false
20
+ *
21
+ * Markup: backgrounds.twig
22
+ *
23
+ * Style guide: base.colors.backgrounds
24
+ */
25
+ @layer defaults {
26
+ :where([class*="background--"]) {
27
+ background-color: var(--background, var(--colour-background));
28
+ color: var(--foreground, var(--colour-foreground));
29
+ }
30
+
31
+ .background--reset {
32
+ /* use to revert .background--reverse on children */
33
+ --background: var(--colour-background);
34
+ --foreground: var(--colour-foreground);
35
+ --link-colour: var(--colour-primary);
36
+ --line-colour: var(--colour-border);
37
+ }
38
+
39
+ .background--alt {
40
+ --background: var(--colour-background-alt);
41
+ }
42
+
43
+ .background--primary {
44
+ --background: var(--colour-primary);
45
+ --foreground: var(--colour-foreground-reverse);
46
+ --line-colour: var(--colour-border-reverse);
47
+ --link-colour: var(--colour-primary-light);
48
+ }
49
+
50
+ .background--accent {
51
+ --background: var(--colour-accent);
52
+ --foreground: var(--colour-foreground-reverse);
53
+ --line-colour: var(--colour-border-reverse);
54
+ --link-colour: var(--colour-accent-light);
55
+ }
56
+
57
+ .background--image {
58
+ & > img {
59
+ object-fit: cover;
60
+ position: absolute;
61
+ inline-size: 100%;
62
+ min-block-size: 100%;
63
+ filter: brightness(var(--bg-img-brightness, 1))
64
+ saturate(var(--bg-img-saturate, 1.25))
65
+ opacity(var(--bg-img-opacity, 0.5));
66
+ }
67
+ }
68
+
69
+ .background--reverse {
70
+ --line-colour: var(--colour-border-reverse);
71
+ --link-colour: var(--colour-primary-light);
72
+ --background: var(--colour-background-reverse);
73
+ --foreground: var(--colour-foreground-reverse);
74
+
75
+ & .background--image {
76
+ --bg-img-brightness: 0.45;
77
+ --bg-img-opacity: 1;
78
+ }
79
+ }
80
+ }
@@ -0,0 +1,10 @@
1
+ <div class="spacing--m rich-text vertical-flow {{ modifier_class }}{% if modifier %} background--{{ modifier }}{% endif %}">
2
+ <blockquote>
3
+ <p>But I must explain to you how all this mistaken idea of denouncing of a <a href="#">pleasure and praising pain</a> was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences.</p>
4
+ <a href="#" class="link--external">Contact the Lorem Ipsum Squad</a>
5
+ </blockquote>
6
+ <blockquote class="background--reset">
7
+ <p>But I must explain to you how all this mistaken idea of denouncing of a <a href="#">pleasure and praising pain</a> was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences.</p>
8
+ <a href="#" class="link--external">Contact the Lorem Ipsum Squad</a>
9
+ </blockquote>
10
+ </div>
@@ -0,0 +1,76 @@
1
+ import { Meta, ColorPalette, ColorItem } from "@storybook/blocks"
2
+
3
+ <Meta title="Atom/Base" />
4
+
5
+ # Base
6
+
7
+ Base styles and HTML elements, used by all Elements and Components.
8
+
9
+ ## Colours
10
+
11
+ <ColorPalette>
12
+ <ColorItem
13
+ title="Light"
14
+ subtitle="Neutral colours"
15
+ colors={{
16
+ white: "lch(100% 0 0)",
17
+ light: "lch(95% 0 0)",
18
+ mid: "lch(90% 0 0)",
19
+ }}
20
+ />
21
+ <ColorItem
22
+ title="Dark"
23
+ subtitle="Neutral colours"
24
+ colors={{
25
+ black: "lch(0% 0 0)",
26
+ dark: "lch(10% 0 0)",
27
+ mid: "lch(25% 0 0)",
28
+ }}
29
+ />
30
+ <ColorItem
31
+ title="Accent"
32
+ subtitle="Accent colour"
33
+ colors={{
34
+ full: "lch(43% 100 288)",
35
+ light: "lch(95% 10 288)",
36
+ }}
37
+ />
38
+ </ColorPalette>
39
+
40
+ ## State colours
41
+
42
+ <ColorPalette>
43
+
44
+ <ColorItem
45
+ title="Success"
46
+ subtitle="Success colour"
47
+ colors={{
48
+ full: "lch(45% 100 134)",
49
+ light: "lch(95% 10 134)",
50
+ }}
51
+ />
52
+ <ColorItem
53
+ title="Warning"
54
+ subtitle="Warning colour"
55
+ colors={{
56
+ full: "lch(46% 100 70)",
57
+ light: "lch(95% 10 70)",
58
+ }}
59
+ />
60
+ <ColorItem
61
+ title="Error"
62
+ subtitle="Error colour"
63
+ colors={{
64
+ full: "lch(40% 100 34)",
65
+ light: "lch(95% 10 34)",
66
+ }}
67
+ />
68
+ <ColorItem
69
+ title="Info"
70
+ subtitle="Info colour"
71
+ colors={{
72
+ full: "lch(43% 100 288)",
73
+ light: "lch(95% 10 288)",
74
+ }}
75
+ />
76
+ </ColorPalette>