@pnx-mixtape/mxds 0.0.2 → 0.0.4

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 (265) hide show
  1. package/README.md +13 -13
  2. package/package.json +5 -4
  3. package/src/Atom/Background/__snapshots__/Backgrounds.stories.ts.snap +3 -3
  4. package/src/Atom/Background/_background.css +1 -22
  5. package/src/Atom/Blockquote/_blockquote.css +1 -1
  6. package/src/Atom/Button/Button.stories.ts +4 -6
  7. package/src/Atom/Button/README.md +3 -3
  8. package/src/Atom/Button/__snapshots__/Button.stories.ts.snap +23 -11
  9. package/src/Atom/Button/__snapshots__/Button.stories.tsx.snap +2 -2
  10. package/src/Atom/Button/_buttons-styles.css +1 -1
  11. package/src/Atom/Button/_buttons.css +5 -1
  12. package/src/Atom/Button/button.twig +6 -4
  13. package/src/Atom/Button/twig/story-button.twig +11 -0
  14. package/src/Atom/DefinitionList/__snapshots__/DefinitionList.stories.tsx.snap +1 -1
  15. package/src/Atom/Heading/__snapshots__/Heading.stories.ts.snap +2 -2
  16. package/src/Atom/Heading/__snapshots__/Heading.stories.tsx.snap +1 -1
  17. package/src/Atom/Heading/_headings.css +1 -1
  18. package/src/Atom/Heading/heading.twig +19 -1
  19. package/src/Atom/Icon/README.md +1 -1
  20. package/src/Atom/Icon/__snapshots__/Icon.stories.ts.snap +3 -3
  21. package/src/Atom/Icon/__snapshots__/Icon.stories.tsx.snap +3 -3
  22. package/src/Atom/Icon/_extended-set.css +1 -1
  23. package/src/Atom/Icon/_icon.css +5 -5
  24. package/src/Atom/Image/__snapshots__/Image.stories.ts.snap +1 -1
  25. package/src/Atom/Image/_image.css +1 -1
  26. package/src/Atom/Link/Link.stories.ts +31 -7
  27. package/src/Atom/Link/__snapshots__/Link.stories.ts.snap +46 -6
  28. package/src/Atom/Link/__snapshots__/Link.stories.tsx.snap +3 -3
  29. package/src/Atom/Link/_links.css +24 -2
  30. package/src/Atom/Link/link.twig +8 -6
  31. package/src/Atom/Link/twig/story-link.twig +11 -0
  32. package/src/Atom/Media/Media.stories.ts +17 -1
  33. package/src/Atom/Media/__snapshots__/Media.stories.ts.snap +17 -2
  34. package/src/Atom/Media/__snapshots__/Media.stories.tsx.snap +2 -2
  35. package/src/Atom/Media/_media.css +1 -1
  36. package/src/Atom/Media/media.twig +1 -5
  37. package/src/Atom/Media/twig/story-media.twig +11 -0
  38. package/src/Atom/NavList/__snapshots__/NavList.stories.ts.snap +1 -1
  39. package/src/Atom/NavList/nav-list.css +1 -1
  40. package/src/Atom/README.md +1 -1
  41. package/src/Atom/Spacing/__snapshots__/Spacing.stories.ts.snap +1 -1
  42. package/src/Atom/Spacing/_spacing.css +1 -1
  43. package/src/Atom/Table/__snapshots__/Table.stories.ts.snap +4 -4
  44. package/src/Atom/Table/__snapshots__/TableResponsive.stories.ts.snap +1 -1
  45. package/src/Atom/Table/_table.css +1 -1
  46. package/src/Atom/Text/__snapshots__/Text.stories.tsx.snap +1 -1
  47. package/src/Atom/Text/__snapshots__/TextSizes.stories.ts.snap +2 -2
  48. package/src/Atom/Text/_text-align.css +1 -1
  49. package/src/Atom/Text/_text-sizes.css +1 -1
  50. package/src/Atom/Video/Video.stories.ts +5 -3
  51. package/src/Atom/Video/__snapshots__/Video.stories.ts.snap +3 -13
  52. package/src/Atom/Video/_video.css +6 -1
  53. package/src/Atom/Video/video.twig +10 -4
  54. package/src/Atom/_animated.css +1 -1
  55. package/src/Atom/_flow-legacy.css +1 -1
  56. package/src/Atom/_flow.css +1 -1
  57. package/src/Atom/_generic.css +1 -1
  58. package/src/Atom/_hr.css +1 -1
  59. package/src/Atom/base.css +2 -2
  60. package/src/Component/Accordion/README.md +7 -17
  61. package/src/Component/Accordion/__snapshots__/Accordion.stories.ts.snap +4 -4
  62. package/src/Component/Accordion/__snapshots__/Accordion.stories.tsx.snap +1 -1
  63. package/src/Component/Accordion/accordion.css +2 -2
  64. package/src/Component/Accordion/accordion.entry.js +2 -0
  65. package/src/Component/Breadcrumb/__snapshots__/Breadcrumb.stories.ts.snap +1 -1
  66. package/src/Component/Breadcrumb/__snapshots__/Breadcrumb.stories.tsx.snap +2 -2
  67. package/src/Component/Breadcrumb/breadcrumb.css +1 -1
  68. package/src/Component/Callout/__snapshots__/Callout.stories.ts.snap +12 -0
  69. package/src/Component/Callout/callout.css +1 -1
  70. package/src/Component/Card/README.md +7 -13
  71. package/src/Component/Card/__snapshots__/Card.stories.ts.snap +34 -24
  72. package/src/Component/Card/__snapshots__/Card.stories.tsx.snap +3 -3
  73. package/src/Component/Card/card.css +3 -3
  74. package/src/Component/ContentBlock/README.md +7 -13
  75. package/src/Component/ContentBlock/__snapshots__/ContentBlock.stories.ts.snap +6 -23
  76. package/src/Component/ContentBlock/__snapshots__/ContentBlock.stories.tsx.snap +1 -1
  77. package/src/Component/ContentBlock/content-block.css +2 -2
  78. package/src/Component/Dialog/README.md +15 -49
  79. package/src/Component/Dialog/__snapshots__/Dialog.stories.ts.snap +2 -2
  80. package/src/Component/Dialog/__snapshots__/Dialog.stories.tsx.snap +1 -1
  81. package/src/Component/Dialog/dialog.css +3 -3
  82. package/src/Component/Dialog/dialog.entry.js +1 -0
  83. package/src/Component/DropMenu/README.md +19 -4
  84. package/src/Component/DropMenu/__snapshots__/DropMenu.stories.ts.snap +1 -1
  85. package/src/Component/DropMenu/__snapshots__/DropMenu.stories.tsx.snap +1 -1
  86. package/src/Component/DropMenu/drop-menu.css +1 -1
  87. package/src/Component/DropMenu/drop-menu.entry.js +1 -0
  88. package/src/Component/{InPageAlert/Elements/InPageAlert.ts → GlobalAlert/Elements/ClosableAlert.ts} +21 -10
  89. package/src/Component/GlobalAlert/GlobalAlert.stories.ts +49 -0
  90. package/src/Component/GlobalAlert/GlobalAlert.stories.tsx +33 -0
  91. package/src/Component/GlobalAlert/GlobalAlert.tsx +50 -0
  92. package/src/Component/GlobalAlert/README.md +27 -0
  93. package/src/Component/GlobalAlert/__snapshots__/GlobalAlert.stories.ts.snap +43 -0
  94. package/src/Component/GlobalAlert/__snapshots__/GlobalAlert.stories.tsx.snap +48 -0
  95. package/src/Component/GlobalAlert/global-alert.css +55 -0
  96. package/src/Component/GlobalAlert/global-alert.entry.js +1 -0
  97. package/src/Component/GlobalAlert/global-alert.twig +30 -0
  98. package/src/Component/GlobalAlert/twig/story-global-alert.twig +14 -0
  99. package/src/Component/HeroBanner/__snapshots__/HeroBanner.stories.ts.snap +74 -0
  100. package/src/Component/HeroBanner/__snapshots__/{PageTitle.stories.tsx.snap → HeroBanner.stories.tsx.snap} +4 -4
  101. package/src/Component/HeroBanner/hero-banner.css +1 -1
  102. package/src/Component/HeroBanner/hero-banner.twig +1 -0
  103. package/src/Component/InPageAlert/InPageAlert.stories.ts +20 -22
  104. package/src/Component/InPageAlert/InPageAlert.stories.tsx +5 -5
  105. package/src/Component/InPageAlert/InPageAlert.tsx +15 -41
  106. package/src/Component/InPageAlert/README.md +4 -4
  107. package/src/Component/InPageAlert/__snapshots__/InPageAlert.stories.ts.snap +9 -36
  108. package/src/Component/InPageAlert/__snapshots__/InPageAlert.stories.tsx.snap +56 -56
  109. package/src/Component/InPageAlert/in-page-alert.css +2 -2
  110. package/src/Component/InPageAlert/in-page-alert.twig +13 -16
  111. package/src/Component/InPageAlert/twig/story-in-page-alert.twig +11 -0
  112. package/src/Component/InPageNavigation/README.md +10 -15
  113. package/src/Component/InPageNavigation/__snapshots__/InPageNavigation.stories.ts.snap +6 -70
  114. package/src/Component/InPageNavigation/__snapshots__/InPageNavigation.stories.tsx.snap +1 -1
  115. package/src/Component/InPageNavigation/in-page-navigation.css +2 -2
  116. package/src/Component/InPageNavigation/in-page-navigation.entry.js +1 -0
  117. package/src/Component/LinkList/README.md +3 -3
  118. package/src/Component/LinkList/__snapshots__/LinkList.stories.ts.snap +24 -55
  119. package/src/Component/LinkList/link-list.css +1 -1
  120. package/src/Component/Navigation/README.md +16 -7
  121. package/src/Component/Navigation/__snapshots__/Collapsible.stories.ts.snap +1 -1
  122. package/src/Component/Navigation/__snapshots__/Dropdown.stories.ts.snap +1 -1
  123. package/src/Component/Navigation/__snapshots__/Dropdown.stories.tsx.snap +1 -1
  124. package/src/Component/Navigation/__snapshots__/Navigation.stories.ts.snap +1 -1
  125. package/src/Component/Navigation/__snapshots__/Navigation.stories.tsx.snap +2 -2
  126. package/src/Component/Navigation/_navigation-collapsible.css +1 -1
  127. package/src/Component/Navigation/_navigation-dropdown.css +1 -1
  128. package/src/Component/Navigation/_navigation-mega.css +1 -1
  129. package/src/Component/Navigation/_navigation.css +1 -1
  130. package/src/Component/Navigation/navigation.entry.js +1 -0
  131. package/src/Component/Pagination/README.md +3 -3
  132. package/src/Component/Pagination/__snapshots__/Pagination.stories.ts.snap +1 -1
  133. package/src/Component/Pagination/__snapshots__/Pagination.stories.tsx.snap +1 -1
  134. package/src/Component/Pagination/pagination.css +1 -1
  135. package/src/Component/Sticky/README.md +12 -5
  136. package/src/Component/Sticky/__snapshots__/Sticky.stories.ts.snap +9 -82
  137. package/src/Component/Sticky/__snapshots__/Sticky.stories.tsx.snap +1 -1
  138. package/src/Component/Sticky/sticky.css +2 -2
  139. package/src/Component/Sticky/sticky.entry.js +1 -0
  140. package/src/Component/Tabs/README.md +11 -4
  141. package/src/Component/Tabs/__snapshots__/Tabs.stories.ts.snap +1 -1
  142. package/src/Component/Tabs/__snapshots__/Tabs.stories.tsx.snap +1 -1
  143. package/src/Component/Tabs/tabs.css +2 -2
  144. package/src/Component/Tabs/tabs.entry.js +1 -0
  145. package/src/Component/Tag/README.md +2 -2
  146. package/src/Component/Tag/__snapshots__/Tag.stories.ts.snap +3 -3
  147. package/src/Component/Tag/__snapshots__/Tag.stories.tsx.snap +1 -1
  148. package/src/Component/Tag/tag.css +1 -1
  149. package/src/Component/Tile/__snapshots__/Tile.stories.ts.snap +1 -1
  150. package/src/Component/Tile/__snapshots__/Tile.stories.tsx.snap +2 -2
  151. package/src/Component/Tile/tiles.css +1 -1
  152. package/src/Form/README.md +2 -2
  153. package/src/Form/form.css +12 -12
  154. package/src/Layout/Footer/FooterMenu/__snapshots__/FooterMenu.stories.ts.snap +1 -1
  155. package/src/Layout/Footer/FooterMenu/footer-menu.css +1 -1
  156. package/src/Layout/Footer/footer.css +1 -1
  157. package/src/Layout/Grid/__snapshots__/Grid.stories.ts.snap +33 -90
  158. package/src/Layout/Grid/container-grid.css +2 -2
  159. package/src/Layout/Grid/grid.css +2 -2
  160. package/src/Layout/Header/_header.css +1 -1
  161. package/src/Layout/Header/_toggles.css +1 -1
  162. package/src/Layout/Header/header.entry.js +1 -0
  163. package/src/Layout/Masthead/__snapshots__/Masthead.stories.ts.snap +2 -2
  164. package/src/Layout/Masthead/masthead.css +5 -5
  165. package/src/Layout/Masthead/masthead.twig +2 -2
  166. package/src/Layout/Page/README.md +2 -2
  167. package/src/Layout/Page/__snapshots__/Page.stories.tsx.snap +1 -1
  168. package/src/Layout/Page/page.css +2 -2
  169. package/src/Layout/README.md +3 -2
  170. package/src/Layout/Section/Section.stories.ts +1 -2
  171. package/src/Layout/Section/__snapshots__/Background.stories.ts.snap +59 -0
  172. package/src/Layout/Section/__snapshots__/Breakouts.stories.ts.snap +80 -0
  173. package/src/Layout/Section/__snapshots__/Flow.stories.ts.snap +91 -0
  174. package/src/Layout/Section/__snapshots__/Section.stories.ts.snap +22 -14
  175. package/src/Layout/Section/section.css +4 -4
  176. package/src/Layout/Section/twig/section-story.twig +1 -1
  177. package/src/Layout/Sidebar/sidebar.css +1 -1
  178. package/src/Utility/Drupal/README.md +1 -1
  179. package/src/Utility/README.md +1 -1
  180. package/src/Utility/_layout-utils.css +1 -1
  181. package/src/Utility/utilities.css +3 -3
  182. package/src/elements.ts +1 -1
  183. package/dist/build/Accordion.js +0 -61
  184. package/dist/build/Accordion.js.map +0 -1
  185. package/dist/build/AccordionDiv.js +0 -62
  186. package/dist/build/AccordionDiv.js.map +0 -1
  187. package/dist/build/AccordionGroup.js +0 -85
  188. package/dist/build/AccordionGroup.js.map +0 -1
  189. package/dist/build/AccordionMobile.js +0 -31
  190. package/dist/build/AccordionMobile.js.map +0 -1
  191. package/dist/build/Dialog.js +0 -116
  192. package/dist/build/Dialog.js.map +0 -1
  193. package/dist/build/DropMenu.js +0 -132
  194. package/dist/build/DropMenu.js.map +0 -1
  195. package/dist/build/GlobalToggle.js +0 -103
  196. package/dist/build/GlobalToggle.js.map +0 -1
  197. package/dist/build/InPageAlert.js +0 -61
  198. package/dist/build/InPageAlert.js.map +0 -1
  199. package/dist/build/InPageNavigation.js +0 -92
  200. package/dist/build/InPageNavigation.js.map +0 -1
  201. package/dist/build/Navigation.js +0 -126
  202. package/dist/build/Navigation.js.map +0 -1
  203. package/dist/build/Sticky.js +0 -63
  204. package/dist/build/Sticky.js.map +0 -1
  205. package/dist/build/Tabs.js +0 -164
  206. package/dist/build/Tabs.js.map +0 -1
  207. package/dist/build/accordion.css +0 -108
  208. package/dist/build/base.css +0 -1000
  209. package/dist/build/breadcrumb.css +0 -47
  210. package/dist/build/breakpoint-loader.js +0 -52
  211. package/dist/build/breakpoint-loader.js.map +0 -1
  212. package/dist/build/button.css +0 -126
  213. package/dist/build/callout.css +0 -11
  214. package/dist/build/card.css +0 -135
  215. package/dist/build/chunks/js.cookie-CiMiGxWx.js +0 -101
  216. package/dist/build/chunks/js.cookie-CiMiGxWx.js.map +0 -1
  217. package/dist/build/chunks/polyfills-CJ5uTmUJ.js +0 -749
  218. package/dist/build/chunks/polyfills-CJ5uTmUJ.js.map +0 -1
  219. package/dist/build/chunks/popover-wbPSyFRj.js +0 -654
  220. package/dist/build/chunks/popover-wbPSyFRj.js.map +0 -1
  221. package/dist/build/chunks/utilities-BIk0P2KX.js +0 -61
  222. package/dist/build/chunks/utilities-BIk0P2KX.js.map +0 -1
  223. package/dist/build/constants.css +0 -120
  224. package/dist/build/container-grid.css +0 -207
  225. package/dist/build/content-block.css +0 -23
  226. package/dist/build/cookie-compliance.js +0 -122
  227. package/dist/build/cookie-compliance.js.map +0 -1
  228. package/dist/build/dialog.css +0 -98
  229. package/dist/build/disclosure-widget.js +0 -124
  230. package/dist/build/disclosure-widget.js.map +0 -1
  231. package/dist/build/drop-menu.css +0 -78
  232. package/dist/build/drupal.css +0 -74
  233. package/dist/build/footer-menu.css +0 -32
  234. package/dist/build/footer.css +0 -61
  235. package/dist/build/form.css +0 -589
  236. package/dist/build/grid.css +0 -200
  237. package/dist/build/header.css +0 -131
  238. package/dist/build/hero-banner.css +0 -62
  239. package/dist/build/icon.css +0 -399
  240. package/dist/build/in-page-alert.css +0 -94
  241. package/dist/build/in-page-navigation.css +0 -17
  242. package/dist/build/index.css +0 -4980
  243. package/dist/build/io-loader.js +0 -44
  244. package/dist/build/io-loader.js.map +0 -1
  245. package/dist/build/keyboard.js +0 -101
  246. package/dist/build/keyboard.js.map +0 -1
  247. package/dist/build/link-list.css +0 -72
  248. package/dist/build/masthead.css +0 -39
  249. package/dist/build/nav-list.css +0 -29
  250. package/dist/build/navigation.css +0 -371
  251. package/dist/build/page.css +0 -184
  252. package/dist/build/pagination.css +0 -123
  253. package/dist/build/section.css +0 -160
  254. package/dist/build/sidebar.css +0 -105
  255. package/dist/build/sticky.css +0 -47
  256. package/dist/build/tabs.css +0 -106
  257. package/dist/build/tag.css +0 -67
  258. package/dist/build/tiles.css +0 -61
  259. package/dist/build/utilities.css +0 -175
  260. package/src/Component/Card/__snapshots__/CardGrid.stories.ts.snap +0 -89
  261. package/src/Component/HeroBanner/__snapshots__/PageTitle.stories.ts.snap +0 -31
  262. package/src/Layout/Section/__snapshots__/SectionBackground.stories.ts.snap +0 -55
  263. package/src/Layout/Section/__snapshots__/SectionsBreakouts.stories.ts.snap +0 -78
  264. package/src/Layout/Section/__snapshots__/SectionsFlowsGroups.stories.ts.snap +0 -89
  265. package/src/index.css +0 -27
@@ -1,17 +1,57 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Base/Link IconLink smoke-test 1`] = `
4
- <a class=" icon icon--arrow-right"
3
+ exports[`Atom/Link Download smoke-test 1`] = `
4
+ <a class="link link--download"
5
5
  href="#"
6
6
  >
7
- Hyperlink
7
+ <span class="icon icon--download ">
8
+ </span>
9
+ <span>
10
+ Download (PDF 12kb)
11
+ </span>
8
12
  </a>
9
13
  `;
10
14
 
11
- exports[`Base/Link Link smoke-test 1`] = `
12
- <a class
15
+ exports[`Atom/Link External smoke-test 1`] = `
16
+ <a class="link link--external"
13
17
  href="#"
14
18
  >
15
- Hyperlink
19
+ <span>
20
+ Hyperlink
21
+ </span>
22
+ </a>
23
+ `;
24
+
25
+ exports[`Atom/Link IconLink smoke-test 1`] = `
26
+ <a class="link "
27
+ href="#"
28
+ >
29
+ <span class="icon icon--link ">
30
+ </span>
31
+ <span>
32
+ Hyperlink
33
+ </span>
34
+ </a>
35
+ `;
36
+
37
+ exports[`Atom/Link Link smoke-test 1`] = `
38
+ <a class="link "
39
+ href="#"
40
+ >
41
+ <span>
42
+ Hyperlink
43
+ </span>
44
+ </a>
45
+ `;
46
+
47
+ exports[`Atom/Link More smoke-test 1`] = `
48
+ <a class="link link--more "
49
+ href="#"
50
+ >
51
+ <span>
52
+ Hyperlink
53
+ </span>
54
+ <span class="icon icon--arrow-right ">
55
+ </span>
16
56
  </a>
17
57
  `;
@@ -1,6 +1,6 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Base/Link External smoke-test 1`] = `
3
+ exports[`Atom/Link External smoke-test 1`] = `
4
4
  <a href="http://example.com"
5
5
  class="link link--external"
6
6
  >
@@ -8,7 +8,7 @@ exports[`Base/Link External smoke-test 1`] = `
8
8
  </a>
9
9
  `;
10
10
 
11
- exports[`Base/Link Link smoke-test 1`] = `
11
+ exports[`Atom/Link Link smoke-test 1`] = `
12
12
  <a href="http://example.com"
13
13
  class="link"
14
14
  >
@@ -16,7 +16,7 @@ exports[`Base/Link Link smoke-test 1`] = `
16
16
  </a>
17
17
  `;
18
18
 
19
- exports[`Base/Link More smoke-test 1`] = `
19
+ exports[`Atom/Link More smoke-test 1`] = `
20
20
  <a href="http://example.com"
21
21
  class="link link--more"
22
22
  >
@@ -1,4 +1,4 @@
1
- @layer defaults {
1
+ @layer design-system.defaults {
2
2
  a:where([href]):is(.link, .link--more, .link--external),
3
3
  .rich-text a:where([href]:not([class])) {
4
4
  color: var(--link-colour, var(--colour-primary));
@@ -33,7 +33,29 @@
33
33
 
34
34
  a:where([href]).link--more {
35
35
  font-weight: var(--font-weight-bold);
36
+
37
+ & .icon {
38
+ transition: transform 0.5s var(--ease);
39
+ }
40
+
41
+ &:hover .icon {
42
+ transform: translateX(3px);
43
+ }
44
+ }
45
+
46
+ a:where([href]).link--download {
47
+ & .icon {
48
+ transition: transform 0.5s var(--ease);
49
+ }
50
+
51
+ &:hover .icon {
52
+ transform: translateY(3px);
53
+ }
54
+ }
55
+
56
+ a:where([href]):has(.icon) {
36
57
  display: inline-flex;
37
- gap: var(--spacing-s);
58
+ align-items: center;
59
+ gap: var(--spacing-xxs);
38
60
  }
39
61
  }
@@ -1,12 +1,14 @@
1
+ {% set baseClass = 'link' %}
1
2
  {% set classes = [
2
- more ? 'link--more' : null,
3
- external ? 'link--external' : null,
4
- download ? 'icon icon--download' : null,
5
- icon ? 'icon icon--'~icon.icon : null,
6
- icon.align ? 'icon--'~icon.align : null,
3
+ baseClass,
4
+ more ? baseClass~'--more' : null,
5
+ external ? baseClass~'--external' : null,
6
+ download ? baseClass~'--download' : null,
7
7
  ] %}
8
8
  {% set attributes = (attributes|default(create_attribute())).addClass(classes) %}
9
9
 
10
10
  <a{{ attributes }} href="{{ href }}"{% if current %} aria-current="page"{% endif %}>
11
- {{ title }}
11
+ {{ iconStart }}
12
+ <span>{{ title }}</span>
13
+ {{ iconEnd }}
12
14
  </a>
@@ -0,0 +1,11 @@
1
+ {% extends "../link.twig" %}
2
+ {% if iconStart %}
3
+ {% set iconStart %}
4
+ {% include '@mixtape/Atom/Icon/icon.twig' with { icon: iconStart.icon } only %}
5
+ {% endset %}
6
+ {% endif %}
7
+ {% if iconEnd %}
8
+ {% set iconEnd %}
9
+ {% include '@mixtape/Atom/Icon/icon.twig' with { icon: iconEnd.icon } only %}
10
+ {% endset %}
11
+ {% endif %}
@@ -1,5 +1,5 @@
1
1
  import { Meta, StoryObj } from "@storybook/html"
2
- import Component from "./media.twig"
2
+ import Component from "./twig/story-media.twig"
3
3
  import "../_base.css"
4
4
  import { Media as MediaType, MediaAlignmentTypes } from "@pnx-mixtape/ids-shape"
5
5
 
@@ -12,9 +12,14 @@ const meta: Meta<MediaType> = {
12
12
  alt: "Some blurry bubble image",
13
13
  },
14
14
  caption: "A picsum image",
15
+ type: "image",
15
16
  },
16
17
  argTypes: {
17
18
  align: { options: Object.values(MediaAlignmentTypes), control: "select" },
19
+ // @ts-expect-error The controls follow the shape
20
+ "item.src": { control: "text" },
21
+ "item.alt": { control: "text" },
22
+ "item.title": { control: "text" },
18
23
  },
19
24
  }
20
25
 
@@ -24,3 +29,14 @@ type Story = StoryObj<MediaType>
24
29
  export const Media: Story = {
25
30
  args: {},
26
31
  }
32
+
33
+ export const Video: Story = {
34
+ args: {
35
+ type: "video",
36
+ caption: "A remote video",
37
+ item: {
38
+ src: "https://www.youtube.com/embed/NpEaa2P7qZI",
39
+ title: "Something from youtube",
40
+ },
41
+ },
42
+ }
@@ -1,7 +1,7 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Base/Media Media smoke-test 1`] = `
4
- <figure class="media ">
3
+ exports[`Atom/Media Media smoke-test 1`] = `
4
+ <figure class="media media--image ">
5
5
  <picture>
6
6
  <img src="https://picsum.photos/id/56/558/418?grayscale"
7
7
  alt="Some blurry bubble image"
@@ -12,3 +12,18 @@ exports[`Base/Media Media smoke-test 1`] = `
12
12
  </figcaption>
13
13
  </figure>
14
14
  `;
15
+
16
+ exports[`Atom/Media Video smoke-test 1`] = `
17
+ <figure class="media media--video ">
18
+ <figure class="video">
19
+ <iframe src="https://www.youtube.com/embed/NpEaa2P7qZI"
20
+ title="Something from youtube"
21
+ allowfullscreen
22
+ >
23
+ </iframe>
24
+ </figure>
25
+ <figcaption>
26
+ A remote video
27
+ </figcaption>
28
+ </figure>
29
+ `;
@@ -1,6 +1,6 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Base/Image Caption smoke-test 1`] = `
3
+ exports[`Atom/Image Caption smoke-test 1`] = `
4
4
  <figure class="media--left">
5
5
  <img alt="Example image"
6
6
  src="https://picsum.photos/id/56/558/418?grayscale"
@@ -11,7 +11,7 @@ exports[`Base/Image Caption smoke-test 1`] = `
11
11
  </figure>
12
12
  `;
13
13
 
14
- exports[`Base/Image Image smoke-test 1`] = `
14
+ exports[`Atom/Image Image smoke-test 1`] = `
15
15
  <img alt="Example image"
16
16
  src="https://picsum.photos/id/56/558/418?grayscale"
17
17
  >
@@ -1,4 +1,4 @@
1
- @layer defaults {
1
+ @layer design-system.atoms {
2
2
  :is(.media--left, .media--right, .media--center) {
3
3
  @media (--small-up) {
4
4
  display: table;
@@ -7,11 +7,7 @@
7
7
  {% set attributes = attributes|default(create_attribute()).addClass(classes) %}
8
8
 
9
9
  <figure{{ attributes }}>
10
- {% if type == "video" %}
11
- {% include '@mixtape/Atom/Video/video.twig' with ( item ) only %}
12
- {% else %}
13
- {% include '@mixtape/Atom/Image/image.twig' with ( item ) only %}
14
- {% endif %}
10
+ {{ item }}
15
11
  {% if caption %}
16
12
  <figcaption>{{ caption }}</figcaption>
17
13
  {% endif %}
@@ -0,0 +1,11 @@
1
+ {% extends "../media.twig" %}
2
+ {% if type == "image" %}
3
+ {% set item %}
4
+ {% include "@mixtape/Atom/Image/image.twig" with { src: item.src, alt: item.alt } only %}
5
+ {% endset %}
6
+ {% endif %}
7
+ {% if type == "video" %}
8
+ {% set item %}
9
+ {% include "@mixtape/Atom/Video/video.twig" with { src: item.src, title: item.title } only %}
10
+ {% endset %}
11
+ {% endif %}
@@ -1,6 +1,6 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Atom/NavList/NavList List smoke-test 1`] = `
3
+ exports[`Atom/NavList List smoke-test 1`] = `
4
4
  <nav class="nav nav--list ">
5
5
  <h4 class="text--embellished-headline">
6
6
  Jump To Section
@@ -2,7 +2,7 @@
2
2
  * List Navigation
3
3
  */
4
4
 
5
- @layer components {
5
+ @layer design-system.atoms {
6
6
  .nav--list {
7
7
  margin-block-end: var(--spacing-m);
8
8
 
@@ -2,4 +2,4 @@
2
2
 
3
3
  ### How to use
4
4
 
5
- `@import '@pnx-mixtape/mxds/base.css';`
5
+ `@import '@pnx-mixtape/mxds/src/Atom/base.css';`
@@ -1,6 +1,6 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Base/Spacing Spacing smoke-test 1`] = `
3
+ exports[`Atom/Spacing Spacing smoke-test 1`] = `
4
4
  <div class="spacing ">
5
5
  <p>
6
6
  </p>
@@ -1,6 +1,6 @@
1
1
  @import "../_mixins.css";
2
2
 
3
- @layer utlities {
3
+ @layer design-system.utilities {
4
4
  .spacing--reset {
5
5
  padding: 0 !important;
6
6
  }
@@ -1,6 +1,6 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Base/Table Flush smoke-test 1`] = `
3
+ exports[`Atom/Table Flush smoke-test 1`] = `
4
4
  <table class=" table--flush">
5
5
  <thead>
6
6
  <tr>
@@ -65,7 +65,7 @@ exports[`Base/Table Flush smoke-test 1`] = `
65
65
  </table>
66
66
  `;
67
67
 
68
- exports[`Base/Table Small smoke-test 1`] = `
68
+ exports[`Atom/Table Small smoke-test 1`] = `
69
69
  <table class=" table--small">
70
70
  <thead>
71
71
  <tr>
@@ -130,7 +130,7 @@ exports[`Base/Table Small smoke-test 1`] = `
130
130
  </table>
131
131
  `;
132
132
 
133
- exports[`Base/Table Table smoke-test 1`] = `
133
+ exports[`Atom/Table Table smoke-test 1`] = `
134
134
  <table class>
135
135
  <thead>
136
136
  <tr>
@@ -195,7 +195,7 @@ exports[`Base/Table Table smoke-test 1`] = `
195
195
  </table>
196
196
  `;
197
197
 
198
- exports[`Base/Table Zebra smoke-test 1`] = `
198
+ exports[`Atom/Table Zebra smoke-test 1`] = `
199
199
  <table class=" table--striped">
200
200
  <thead>
201
201
  <tr>
@@ -1,6 +1,6 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Base/Table/Responsive TableResponsive smoke-test 1`] = `
3
+ exports[`Atom/Table/Responsive TableResponsive smoke-test 1`] = `
4
4
  <div class="table--responsive">
5
5
  <table class="table">
6
6
  <thead>
@@ -1,4 +1,4 @@
1
- @layer defaults {
1
+ @layer design-system.defaults {
2
2
  table {
3
3
  inline-size: 100%;
4
4
  border-collapse: collapse;
@@ -1,6 +1,6 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Base/Typography/Text Text smoke-test 1`] = `
3
+ exports[`Atom/Typography/Text Text smoke-test 1`] = `
4
4
  <p class>
5
5
  Text
6
6
  </p>
@@ -1,6 +1,6 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Base/Typography/Text Sizes Example smoke-test 1`] = `
3
+ exports[`Atom/Typography/Text Sizes Example smoke-test 1`] = `
4
4
  <div class="vertical-flow">
5
5
  <p class="text--embellished-headline">
6
6
  Embelished headline: Lorem ipsum dolor sit amet consectetur
@@ -56,7 +56,7 @@ exports[`Base/Typography/Text Sizes Example smoke-test 1`] = `
56
56
  </div>
57
57
  `;
58
58
 
59
- exports[`Base/Typography/Text Sizes TextSizes smoke-test 1`] = `
59
+ exports[`Atom/Typography/Text Sizes TextSizes smoke-test 1`] = `
60
60
  <p class>
61
61
  In publishing and graphic design, lorem ipsum is a placeholder text commonly used to demonstrate the visual form of a document without relying on meaningful content (also called greeking). Replacing the actual content with placeholder text allows designers to design the form of the content before the content itself has been produced.
62
62
  </p>
@@ -1,4 +1,4 @@
1
- @layer utlities {
1
+ @layer design-system.utilities {
2
2
  .text--left {
3
3
  text-align: start;
4
4
  }
@@ -1,4 +1,4 @@
1
- @layer utlities {
1
+ @layer design-system.atoms {
2
2
  :is(
3
3
  .text--section-headline,
4
4
  .text--embellished-headline,
@@ -6,11 +6,13 @@ const meta: Meta<typeof Component> = {
6
6
  title: "Atom/Video",
7
7
  tags: ["autodocs"],
8
8
  component: Component,
9
+ args: {
10
+ src: "https://www.youtube.com/embed/NpEaa2P7qZI",
11
+ title: "Something from youtube",
12
+ },
9
13
  }
10
14
 
11
15
  export default meta
12
16
  type Story = StoryObj<typeof meta>
13
17
 
14
- export const Video: Story = {
15
- args: {},
16
- }
18
+ export const Video: Story = {}
@@ -1,21 +1,11 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Base/Video Video smoke-test 1`] = `
4
- <p>
5
- Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
6
- </p>
3
+ exports[`Atom/Video Video smoke-test 1`] = `
7
4
  <figure class="video">
8
- <iframe title="Some video"
9
- width="560"
10
- height="315"
11
- src="https://www.youtube.com/embed/NpEaa2P7qZI"
12
- frameborder="0"
13
- allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"
5
+ <iframe src="https://www.youtube.com/embed/NpEaa2P7qZI"
6
+ title="Something from youtube"
14
7
  allowfullscreen
15
8
  >
16
9
  </iframe>
17
10
  </figure>
18
- <p>
19
- Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
20
- </p>
21
11
  `;
@@ -1,10 +1,15 @@
1
- @layer defaults {
1
+ @layer design-system.defaults {
2
2
  .video {
3
3
  &,
4
4
  & :is(embed, object, iframe) {
5
5
  aspect-ratio: 16 / 9;
6
6
  block-size: 100%;
7
7
  inline-size: 100%;
8
+ border: 0;
8
9
  }
9
10
  }
11
+
12
+ .media--video {
13
+ inline-size: 100%;
14
+ }
10
15
  }
@@ -1,5 +1,11 @@
1
- <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
2
- <figure class="video">
3
- <iframe title="Some video" width="560" height="315" src="https://www.youtube.com/embed/NpEaa2P7qZI" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
1
+ {% set attributes = attributes|default(create_attribute()).addClass("video") %}
2
+ <figure{{ attributes }}>
3
+ <iframe
4
+ src="{{ src }}"
5
+ {% if title %} title="{{ title }}"{% endif %}
6
+ {% if loading %} loading="{{ loading }}"{% endif %}
7
+ {% if height %} height="{{ height }}"{% endif %}
8
+ {% if width %} width="{{ width }}"{% endif %}
9
+ allowfullscreen
10
+ ></iframe>
4
11
  </figure>
5
- <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
@@ -1,4 +1,4 @@
1
- @layer utilities {
1
+ @layer design-system.utilities {
2
2
  .animated--fade-in {
3
3
  animation: fade-in 0.5s var(--ease);
4
4
  }
@@ -1,4 +1,4 @@
1
- @layer defaults {
1
+ @layer design-system.defaults {
2
2
  * + h1 {
3
3
  margin-block-start: var(--spacing-m);
4
4
  }
@@ -1,4 +1,4 @@
1
- @layer utilities {
1
+ @layer design-system.utilities {
2
2
  .vertical-flow {
3
3
  /* Default vertical flow. */
4
4
 
@@ -1,4 +1,4 @@
1
- @layer defaults {
1
+ @layer design-system.defaults {
2
2
  *,
3
3
  *::before,
4
4
  *::after {
package/src/Atom/_hr.css CHANGED
@@ -1,4 +1,4 @@
1
- @layer defaults {
1
+ @layer design-system.defaults {
2
2
  hr {
3
3
  display: block;
4
4
  block-size: 0;
package/src/Atom/base.css CHANGED
@@ -1,5 +1,5 @@
1
- @layer popover-polyfill, defaults, layout, elements, components, utilities;
1
+ @layer popover-polyfill, design-system.defaults, design-system.atoms, design-system.layouts, design-system.components, design-system.utilities;
2
2
 
3
- @import "Background/_background.css";
3
+ @import "./Background/_background.css";
4
4
  @import "_animated.css";
5
5
  @import "_base.css";
@@ -4,13 +4,13 @@
4
4
 
5
5
  **CSS**
6
6
 
7
- `@import '@pnx-mixtape/mxds/accordion.css';`
7
+ `@import '@pnx-mixtape/mxds/src/Component/Accordion/accordion.css';`
8
8
 
9
9
  **Twig**
10
10
 
11
11
  You can setup a twig namespace in your project if you wish to use the twig files directly.
12
12
 
13
- - Eg: `{% extends '@mixtape/accordion/twig/accordion.twig' %}`
13
+ - Eg: `{% extends '@mixtape/Component/Accordion/accordion.twig' %}`
14
14
 
15
15
  Alternatively copy/paste the file for more control.
16
16
 
@@ -18,7 +18,7 @@ Alternatively copy/paste the file for more control.
18
18
 
19
19
  JSX components are available for use with React.
20
20
 
21
- - JSX import: `import { Accordion } from '@pnx-mixtape/mxds/react';`
21
+ - JSX import: `import { Accordion } from '@pnx-mixtape/mxds/src/react';`
22
22
 
23
23
  **JS Custom Element**
24
24
 
@@ -27,19 +27,9 @@ These do not use the Shadow DOM and are not typical Web Components.
27
27
  External CSS applies.
28
28
  No Polyfills or frameworks are required.
29
29
 
30
- - AccordionBase import: `import '@pnx-mixtape/mxds/Components/Accordion/Elements/Accordion';` and be sure to include `<mx-accordion>` around the `<details />` tag.
31
- - AccordionMobile import: `import '@pnx-mixtape/mxds/Components/Accordion/Elements/AccordionMobile';` and be sure to include `<mx-accordionmobile>` around the `<details />` tag.
32
- - AccordionDiv import: `import '@nx-mixtape/Components/Accordion/Elements/AccordionDiv';` and be sure to include `<mx-accordiondiv class="accordion">` instead of the `<details />` tag.
33
-
34
- ```html
35
- <mx-accordion>
36
- <details class="accordion">
37
- <summary class="accordion__toggle">Title</summary>
38
- <div class="accordion__content">
39
- <p>Body content</p>
40
- </div>
41
- </details>
42
- </mx-accordion>
43
- ```
30
+ - AccordionBase import: `import '@pnx-mixtape/mxds/src/Component/Accordion/Elements/Accordion';` and be sure to include `<mx-accordion>` around the `<details />` tag.
31
+ - AccordionMobile import: `import '@pnx-mixtape/mxds/src/Component/Accordion/Elements/AccordionMobile';` and be sure to include `<mx-accordionmobile>` around the `<details />` tag.
32
+ - AccordionDiv import: `import '@nx-mixtape/Component/Accordion/Elements/AccordionDiv';` and be sure to include `<mx-accordiondiv class="accordion">` instead of the `<details />` tag.
33
+ - AccordionGroup import: `import '@pnx-mixtape/mxds/src/Component/Accordion/Elements/AccordionGroup';` and be sure to include `<mx-accordion-group>` around the `<details />` tags.
44
34
 
45
35
  See twig files for all HTML examples.
@@ -1,9 +1,9 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Components/Accordion Accordion smoke-test 1`] = `
3
+ exports[`Component/Accordion Accordion smoke-test 1`] = `
4
4
  <div class="accordions">
5
5
  <div class="accordion__title">
6
- <h2 class=" ">
6
+ <h2 class>
7
7
  Accordion group
8
8
  </h2>
9
9
  </div>
@@ -38,11 +38,11 @@ exports[`Components/Accordion Accordion smoke-test 1`] = `
38
38
  </div>
39
39
  `;
40
40
 
41
- exports[`Components/Accordion ToggleAll smoke-test 1`] = `
41
+ exports[`Component/Accordion ToggleAll smoke-test 1`] = `
42
42
  <div class="accordions">
43
43
  <mx-accordion-group>
44
44
  <div class="accordion__title">
45
- <h2 class=" ">
45
+ <h2 class>
46
46
  Accordion group
47
47
  </h2>
48
48
  <div class="accordions__toggle-all">
@@ -1,6 +1,6 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`Components/Accordion Accordion smoke-test 1`] = `
3
+ exports[`Component/Accordion Accordion smoke-test 1`] = `
4
4
  <div class="accordion accordion--divided"
5
5
  data-open="false"
6
6
  >
@@ -2,7 +2,7 @@
2
2
  * Accordion
3
3
  */
4
4
 
5
- @layer defaults {
5
+ @layer design-system.defaults {
6
6
  details {
7
7
  & summary {
8
8
  list-style-type: none;
@@ -34,7 +34,7 @@
34
34
  }
35
35
  }
36
36
 
37
- @layer components {
37
+ @layer design-system.components {
38
38
  .accordion__title {
39
39
  margin-block-end: var(--spacing-m);
40
40
  display: flex;
@@ -0,0 +1,2 @@
1
+ import "./Elements/Accordion"
2
+ import "./Elements/AccordionGroup"