@pnx-mixtape/mxds 0.0.8 → 0.0.9
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.
- package/package.json +1 -1
- package/src/Atom/Button/button.twig +1 -1
- package/src/Atom/Image/image.twig +3 -3
- package/src/Atom/Link/link.twig +1 -1
- package/src/Atom/Media/media.twig +2 -2
- package/src/Atom/Video/video.twig +1 -1
- package/src/Component/Accordion/accordion-item.twig +1 -1
- package/src/Component/Accordion/accordion.twig +1 -1
- package/src/Component/Card/Card.stories.ts +26 -14
- package/src/Component/Card/__snapshots__/Card.stories.ts.snap +18 -12
- package/src/Component/Card/card.twig +5 -5
- package/src/Component/ContentBlock/__snapshots__/ContentBlock.stories.ts.snap +9 -45
- package/src/Component/ContentBlock/content-block.twig +2 -2
- package/src/Component/DropMenu/drop-menu.twig +1 -1
- package/src/Component/GlobalAlert/__snapshots__/GlobalAlert.stories.ts.snap +1 -3
- package/src/Component/GlobalAlert/global-alert.twig +3 -3
- package/src/Component/HeroBanner/HeroBanner.stories.ts +25 -11
- package/src/Component/HeroBanner/__snapshots__/HeroBanner.stories.ts.snap +18 -12
- package/src/Component/HeroBanner/hero-banner.twig +3 -3
- package/src/Component/LinkList/LinkList.stories.ts +20 -6
- package/src/Component/LinkList/__snapshots__/LinkList.stories.ts.snap +18 -12
- package/src/Component/LinkList/link-list.css +7 -35
- package/src/Component/LinkList/link-list.twig +1 -5
- package/src/Component/ListItem/list-item.twig +4 -4
- package/src/Component/Navigation/menu.twig +4 -4
- package/src/Component/Navigation/navigation.twig +1 -1
- package/src/Component/Pagination/pagination-item.twig +1 -1
- package/src/Component/Pagination/pagination.twig +2 -2
- package/src/Component/SideNavigation/side-navigation.twig +4 -4
- package/src/Component/Tabs/tabs.twig +1 -1
- package/src/Component/Tag/tag.css +4 -0
- package/src/Form/Checkbox/input-checkbox.twig +1 -1
- package/src/Form/Form/form.twig +2 -2
- package/src/Form/FormItem/form-item.twig +1 -1
- package/src/Form/Select/input-select.twig +1 -1
- package/src/Form/TextInput/input-text.twig +1 -1
- package/src/Form/Textarea/input-textarea.twig +1 -1
- package/src/Layout/Footer/Footer.stories.ts +0 -1
- package/src/Layout/Footer/__snapshots__/Footer.stories.ts.snap +20 -40
- package/src/Layout/Footer/footer.twig +3 -3
- package/src/Layout/Header/Header.stories.ts +0 -1
- package/src/Layout/Header/__snapshots__/Header.stories.ts.snap +5 -5
- package/src/Layout/Header/header-stacked.twig +13 -11
- package/src/Layout/Header/header.twig +12 -10
- package/src/Layout/Header/twig/logo.twig +1 -3
- package/src/Layout/Masthead/Masthead.stories.ts +10 -0
- package/src/Layout/Masthead/__snapshots__/Masthead.stories.ts.snap +51 -3
- package/src/Layout/Masthead/masthead.css +23 -0
- package/src/Layout/Masthead/masthead.twig +9 -5
- package/src/Layout/Section/section.twig +1 -1
- package/src/Layout/Sidebar/sidebar.twig +5 -5
- package/dist/build/accordion.css +0 -108
- package/dist/build/accordion.entry.js +0 -139
- package/dist/build/accordion.entry.js.map +0 -1
- package/dist/build/base.css +0 -996
- package/dist/build/breadcrumb.css +0 -51
- package/dist/build/button.css +0 -132
- package/dist/build/callout.css +0 -11
- package/dist/build/card.css +0 -149
- package/dist/build/chunks/disclosure-widget-CQLPJ8Ta.js +0 -124
- package/dist/build/chunks/disclosure-widget-CQLPJ8Ta.js.map +0 -1
- package/dist/build/chunks/drop-menu.entry-BC6x9vst.js +0 -132
- package/dist/build/chunks/drop-menu.entry-BC6x9vst.js.map +0 -1
- package/dist/build/chunks/keyboard-C73DHu0c.js +0 -101
- package/dist/build/chunks/keyboard-C73DHu0c.js.map +0 -1
- package/dist/build/chunks/polyfills-CJ5uTmUJ.js +0 -749
- package/dist/build/chunks/polyfills-CJ5uTmUJ.js.map +0 -1
- package/dist/build/chunks/popover-wbPSyFRj.js +0 -654
- package/dist/build/chunks/popover-wbPSyFRj.js.map +0 -1
- package/dist/build/chunks/utilities-B4YZb689.js +0 -243
- package/dist/build/chunks/utilities-B4YZb689.js.map +0 -1
- package/dist/build/constants.css +0 -120
- package/dist/build/container-grid.css +0 -208
- package/dist/build/content-block.css +0 -36
- package/dist/build/dialog.css +0 -98
- package/dist/build/dialog.entry.js +0 -113
- package/dist/build/dialog.entry.js.map +0 -1
- package/dist/build/drop-menu.css +0 -78
- package/dist/build/drop-menu.entry.js +0 -2
- package/dist/build/drop-menu.entry.js.map +0 -1
- package/dist/build/drupal.css +0 -74
- package/dist/build/footer.css +0 -151
- package/dist/build/form.css +0 -517
- package/dist/build/global-alert.css +0 -60
- package/dist/build/global-alert.entry.js +0 -68
- package/dist/build/global-alert.entry.js.map +0 -1
- package/dist/build/grid.css +0 -200
- package/dist/build/header.css +0 -138
- package/dist/build/header.entry.js +0 -103
- package/dist/build/header.entry.js.map +0 -1
- package/dist/build/hero-banner.css +0 -62
- package/dist/build/icon.css +0 -399
- package/dist/build/in-page-alert.css +0 -94
- package/dist/build/in-page-navigation.css +0 -17
- package/dist/build/in-page-navigation.entry.js +0 -89
- package/dist/build/in-page-navigation.entry.js.map +0 -1
- package/dist/build/link-list.css +0 -72
- package/dist/build/list-item.css +0 -114
- package/dist/build/masthead.css +0 -30
- package/dist/build/navigation.css +0 -392
- package/dist/build/navigation.entry.js +0 -124
- package/dist/build/navigation.entry.js.map +0 -1
- package/dist/build/page.css +0 -80
- package/dist/build/pagination.css +0 -130
- package/dist/build/section.css +0 -163
- package/dist/build/side-navigation.css +0 -88
- package/dist/build/sidebar.css +0 -105
- package/dist/build/social-links.css +0 -20
- package/dist/build/steps.css +0 -118
- package/dist/build/steps.entry.js +0 -2
- package/dist/build/steps.entry.js.map +0 -1
- package/dist/build/sticky.css +0 -47
- package/dist/build/sticky.entry.js +0 -60
- package/dist/build/sticky.entry.js.map +0 -1
- package/dist/build/tabs.css +0 -109
- package/dist/build/tabs.entry.js +0 -202
- package/dist/build/tabs.entry.js.map +0 -1
- package/dist/build/tag.css +0 -67
- package/dist/build/tiles.css +0 -61
- package/dist/build/utilities.css +0 -178
|
@@ -3,10 +3,6 @@
|
|
|
3
3
|
|
|
4
4
|
<ul{{ attributes }}>
|
|
5
5
|
{% for item in items %}
|
|
6
|
-
{
|
|
7
|
-
<li><a href="{{ item.href }}" class="mx-icon mx-icon--chevron-right">{{ item.title }}</a></li>
|
|
8
|
-
{% else %}
|
|
9
|
-
<li class="mx-icon mx-icon--chevron-right">{{ item.title }}</li>
|
|
10
|
-
{% endif %}
|
|
6
|
+
<li>{{ item }}</li>
|
|
11
7
|
{% endfor %}
|
|
12
8
|
</ul>
|
|
@@ -7,22 +7,22 @@
|
|
|
7
7
|
|
|
8
8
|
<div class="mx-container">
|
|
9
9
|
<article{{ attributes }}>
|
|
10
|
-
{% if image %}
|
|
10
|
+
{% if image is not empty %}
|
|
11
11
|
<figure class="mx-list-item__media">
|
|
12
12
|
{{ image }}
|
|
13
13
|
</figure>
|
|
14
14
|
{% endif %}
|
|
15
15
|
<div class="mx-list-item__content mx-vertical-flow">
|
|
16
|
-
{% if label %}
|
|
16
|
+
{% if label is not empty %}
|
|
17
17
|
<strong class="mx-text--s">{{ label }}</strong>
|
|
18
18
|
{% endif %}
|
|
19
|
-
{% if info and infoBefore %}
|
|
19
|
+
{% if info is not empty and infoBefore %}
|
|
20
20
|
<div class="mx-text--s">{{ info }}</div>
|
|
21
21
|
{% endif %}
|
|
22
22
|
<div class="mx-heading--m">
|
|
23
23
|
{{ link }}
|
|
24
24
|
</div>
|
|
25
|
-
{% if info and not infoBefore %}
|
|
25
|
+
{% if info is not empty and not infoBefore %}
|
|
26
26
|
<div class="mx-text--s">{{ info }}</div>
|
|
27
27
|
{% endif %}
|
|
28
28
|
{{ content }}
|
|
@@ -10,19 +10,19 @@
|
|
|
10
10
|
{% set componentAttributes = (componentAttributes ?? create_attribute()) %}
|
|
11
11
|
{% set setInert = setInert|default(true) %}
|
|
12
12
|
|
|
13
|
-
{% macro menutree(items, level, setInert) %}
|
|
13
|
+
{% macro menutree(items, level, setInert, baseClass) %}
|
|
14
14
|
{% set levelClass = baseClass~'__level-'~(level + 1) %}
|
|
15
15
|
<ul class="{{ levelClass }}"{% if level > 0 and setInert %} inert{% endif %}>
|
|
16
16
|
{% for item in items %}
|
|
17
|
-
<li{% if item.items %} class="mx-nav__has-subnav"{% endif %}>
|
|
18
|
-
{% if item.link.href %}
|
|
17
|
+
<li{% if item.items is not empty %} class="mx-nav__has-subnav"{% endif %}>
|
|
18
|
+
{% if item.link.href is not empty %}
|
|
19
19
|
<a href="{{ item.link.href }}" {% if item.link.current %} aria-current="page" {% endif %}>
|
|
20
20
|
{{ item.link.title }}
|
|
21
21
|
</a>
|
|
22
22
|
{% else %}
|
|
23
23
|
{{ item.link.title }}
|
|
24
24
|
{% endif %}
|
|
25
|
-
{% if item.items %}
|
|
25
|
+
{% if item.items is not empty %}
|
|
26
26
|
<button class="mx-nav__toggle mx-icon mx-icon--chevron-down mx-icon--only">Sub-navigation</button>
|
|
27
27
|
{{ nav.menutree(item.items, level + 1, setInert, baseClass) }}
|
|
28
28
|
{% endif %}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
{% extends "
|
|
1
|
+
{% extends "@mixtape/Component/Navigation/menu.twig" %}
|
|
2
2
|
{% set componentAttributes = (componentAttributes|default(create_attribute())) %}
|
|
3
3
|
{% if type == "collapsible" %}
|
|
4
4
|
{# Vertical click to expand menu. Is the default mobile experience for dropdown and mega menus. #}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
{% set attributes = (attributes ?? create_attribute()).addClass(classes) %}
|
|
3
3
|
<nav{{ attributes}} aria-label="Pagination">
|
|
4
4
|
<ul class="mx-pagination__items">
|
|
5
|
-
{% if previous %}
|
|
5
|
+
{% if previous is not empty %}
|
|
6
6
|
<li class="mx-pagination__previous">
|
|
7
7
|
{{ previous }}
|
|
8
8
|
</li>
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
{% for page in pages %}
|
|
11
11
|
{{ page }}
|
|
12
12
|
{% endfor %}
|
|
13
|
-
{% if next %}
|
|
13
|
+
{% if next is not empty %}
|
|
14
14
|
<li class="mx-pagination__next">
|
|
15
15
|
{{ next }}
|
|
16
16
|
</li>
|
|
@@ -6,19 +6,19 @@
|
|
|
6
6
|
] %}
|
|
7
7
|
{% set attributes = (attributes ?? create_attribute()).addClass(classes) %}
|
|
8
8
|
|
|
9
|
-
{% macro menutree(items, level, setInert) %}
|
|
9
|
+
{% macro menutree(items, level, setInert, baseClass) %}
|
|
10
10
|
{% set levelClass = baseClass~'__level-'~(level + 1) %}
|
|
11
11
|
<ul class="{{ levelClass }}"{% if level > 0 and setInert %} inert{% endif %}>
|
|
12
12
|
{% for item in items %}
|
|
13
|
-
<li{% if item.items %} class="mx-nav__has-subnav"{% endif %}>
|
|
14
|
-
{% if item.link.href %}
|
|
13
|
+
<li{% if item.items is not empty %} class="mx-nav__has-subnav"{% endif %}>
|
|
14
|
+
{% if item.link.href is not empty %}
|
|
15
15
|
<a href="{{ item.link.href }}" {% if item.link.current %} aria-current="page" {% endif %}>
|
|
16
16
|
{{ item.link.title }}
|
|
17
17
|
</a>
|
|
18
18
|
{% else %}
|
|
19
19
|
{{ item.link.title }}
|
|
20
20
|
{% endif %}
|
|
21
|
-
{% if item.items %}
|
|
21
|
+
{% if item.items is not empty %}
|
|
22
22
|
<button class="mx-nav__toggle mx-icon mx-icon--chevron-down mx-icon--only">Sub-navigation</button>
|
|
23
23
|
{{ nav.menutree(item.items, level + 1, setInert, baseClass) }}
|
|
24
24
|
{% endif %}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
{% set attributes = (attributes ?? create_attribute()).addClass(classes) %}
|
|
8
8
|
{{ title }}
|
|
9
|
-
<mx-tabs{{ attributes }}{% if id %} id="{{ id }}"{% endif %}>
|
|
9
|
+
<mx-tabs{{ attributes }}{% if id is not empty %} id="{{ id }}"{% endif %}>
|
|
10
10
|
{% for item in items %}
|
|
11
11
|
{{ item }}
|
|
12
12
|
{% endfor %}
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
name="{{ name }}"
|
|
20
20
|
value="{{ value }}"
|
|
21
21
|
{% if checked %} checked="checked"{% endif %}
|
|
22
|
-
{% if helpers %} aria-describedby="{{ helpers }}"{% endif %}
|
|
22
|
+
{% if helpers is not empty %} aria-describedby="{{ helpers }}"{% endif %}
|
|
23
23
|
{% if status == "invalid" %} aria-invalid="true"{% endif %}
|
|
24
24
|
{% if required %} required{% endif %}
|
|
25
25
|
>
|
package/src/Form/Form/form.twig
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
id="{{ id }}"
|
|
16
16
|
name="{{ name }}"
|
|
17
17
|
{% if label %} aria-label="{{ label }}"{% endif %}
|
|
18
|
-
{% if helpers %} aria-describedby="{{ helpers }}"{% endif %}
|
|
18
|
+
{% if helpers is not empty %} aria-describedby="{{ helpers }}"{% endif %}
|
|
19
19
|
{% if status == "invalid" %} aria-invalid="true"{% endif %}
|
|
20
20
|
{% if required %} required{% endif %}
|
|
21
21
|
>
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
value="{{ value }}"
|
|
23
23
|
{% if label %} aria-label="{{ label }}"{% endif %}
|
|
24
24
|
{% if placeholder %} placeholder="{{ placeholder }}"{% endif %}
|
|
25
|
-
{% if helpers %} aria-describedby="{{ helpers }}"{% endif %}
|
|
25
|
+
{% if helpers is not empty %} aria-describedby="{{ helpers }}"{% endif %}
|
|
26
26
|
{% if status == "invalid" %} aria-invalid="true"{% endif %}
|
|
27
27
|
{% if required %} required{% endif %}
|
|
28
28
|
/>
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
id="{{ id }}"
|
|
16
16
|
name="{{ name }}"
|
|
17
17
|
{% if label %} aria-label="{{ label }}"{% endif %}
|
|
18
|
-
{% if helpers %} aria-describedby="{{ helpers }}"{% endif %}
|
|
18
|
+
{% if helpers is not empty %} aria-describedby="{{ helpers }}"{% endif %}
|
|
19
19
|
{% if status == "invalid" %} aria-invalid="true"{% endif %}
|
|
20
20
|
{% if required %} required{% endif %}
|
|
21
21
|
></textarea>
|
|
@@ -4,15 +4,11 @@ exports[`Layout/Footer Everything smoke-test 1`] = `
|
|
|
4
4
|
<div class="mx-page">
|
|
5
5
|
<footer class="mx-footer mx-section mx-section--top-l mx-section--bottom-m mx-background--reverse">
|
|
6
6
|
<div class="mx-footer__inner">
|
|
7
|
-
<
|
|
8
|
-
|
|
7
|
+
<img alt="Mixtape"
|
|
8
|
+
src="./mixtape-logo.png"
|
|
9
|
+
width="120"
|
|
10
|
+
height
|
|
9
11
|
>
|
|
10
|
-
<img alt="Mixtape"
|
|
11
|
-
src="./mixtape-logo.png"
|
|
12
|
-
width="120"
|
|
13
|
-
height
|
|
14
|
-
>
|
|
15
|
-
</a>
|
|
16
12
|
<nav class="mx-social-links"
|
|
17
13
|
aria-label="Social media links"
|
|
18
14
|
>
|
|
@@ -136,15 +132,11 @@ exports[`Layout/Footer Footer smoke-test 1`] = `
|
|
|
136
132
|
<div class="mx-page">
|
|
137
133
|
<footer class="mx-footer mx-section mx-section--top-l mx-section--bottom-m mx-background--reverse">
|
|
138
134
|
<div class="mx-footer__inner">
|
|
139
|
-
<
|
|
140
|
-
|
|
135
|
+
<img alt="Mixtape"
|
|
136
|
+
src="./mixtape-logo.png"
|
|
137
|
+
width="120"
|
|
138
|
+
height
|
|
141
139
|
>
|
|
142
|
-
<img alt="Mixtape"
|
|
143
|
-
src="./mixtape-logo.png"
|
|
144
|
-
width="120"
|
|
145
|
-
height
|
|
146
|
-
>
|
|
147
|
-
</a>
|
|
148
140
|
<nav class="mx-nav mx-nav--footer"
|
|
149
141
|
aria-label="Footer navigation"
|
|
150
142
|
id="footer-story"
|
|
@@ -198,15 +190,11 @@ exports[`Layout/Footer Light smoke-test 1`] = `
|
|
|
198
190
|
<div class="mx-page">
|
|
199
191
|
<footer class="mx-footer mx-section mx-section--top-l mx-section--bottom-m mx-background--alt">
|
|
200
192
|
<div class="mx-footer__inner">
|
|
201
|
-
<
|
|
202
|
-
|
|
193
|
+
<img alt="Mixtape"
|
|
194
|
+
src="./mixtape-logo.png"
|
|
195
|
+
width="120"
|
|
196
|
+
height
|
|
203
197
|
>
|
|
204
|
-
<img alt="Mixtape"
|
|
205
|
-
src="./mixtape-logo.png"
|
|
206
|
-
width="120"
|
|
207
|
-
height
|
|
208
|
-
>
|
|
209
|
-
</a>
|
|
210
198
|
<nav class="mx-nav mx-nav--footer"
|
|
211
199
|
aria-label="Footer navigation"
|
|
212
200
|
id="footer-story"
|
|
@@ -260,15 +248,11 @@ exports[`Layout/Footer NoMenu smoke-test 1`] = `
|
|
|
260
248
|
<div class="mx-page">
|
|
261
249
|
<footer class="mx-footer mx-section mx-section--top-l mx-section--bottom-m mx-background--reverse">
|
|
262
250
|
<div class="mx-footer__inner">
|
|
263
|
-
<
|
|
264
|
-
|
|
251
|
+
<img alt="Mixtape"
|
|
252
|
+
src="./mixtape-logo.png"
|
|
253
|
+
width="120"
|
|
254
|
+
height
|
|
265
255
|
>
|
|
266
|
-
<img alt="Mixtape"
|
|
267
|
-
src="./mixtape-logo.png"
|
|
268
|
-
width="120"
|
|
269
|
-
height
|
|
270
|
-
>
|
|
271
|
-
</a>
|
|
272
256
|
<span class="mx-footer__copyright mx-text--s">
|
|
273
257
|
© 2025 Company Name
|
|
274
258
|
</span>
|
|
@@ -298,15 +282,11 @@ exports[`Layout/Footer WithAcknowledgment smoke-test 1`] = `
|
|
|
298
282
|
<div class="mx-footer__aoc mx-text--s">
|
|
299
283
|
We acknowledge the traditional owners and custodians of country throughout Australia and acknowledges their continuing connection to land, waters and community. We pay our respects to the people, the cultures and the elders past, present and emerging.
|
|
300
284
|
</div>
|
|
301
|
-
<
|
|
302
|
-
|
|
285
|
+
<img alt="Mixtape"
|
|
286
|
+
src="./mixtape-logo.png"
|
|
287
|
+
width="120"
|
|
288
|
+
height
|
|
303
289
|
>
|
|
304
|
-
<img alt="Mixtape"
|
|
305
|
-
src="./mixtape-logo.png"
|
|
306
|
-
width="120"
|
|
307
|
-
height
|
|
308
|
-
>
|
|
309
|
-
</a>
|
|
310
290
|
<nav class="mx-nav mx-nav--footer"
|
|
311
291
|
aria-label="Footer navigation"
|
|
312
292
|
id="footer-story"
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
{% set attributes = (attributes ?? create_attribute()).addClass(classes) %}
|
|
10
10
|
<footer{{ attributes }}>
|
|
11
11
|
<div class="mx-footer__inner">
|
|
12
|
-
{% if aoc %}
|
|
12
|
+
{% if aoc is not empty %}
|
|
13
13
|
<div class="mx-footer__aoc mx-text--s">{{ aoc }}</div>
|
|
14
14
|
{% endif %}
|
|
15
15
|
|
|
@@ -17,10 +17,10 @@
|
|
|
17
17
|
{{ socials }}
|
|
18
18
|
{{ navigation }}
|
|
19
19
|
|
|
20
|
-
{% if copyright %}
|
|
20
|
+
{% if copyright is not empty %}
|
|
21
21
|
<span class="mx-footer__copyright mx-text--s">{{ copyright }}</span>
|
|
22
22
|
{% endif %}
|
|
23
|
-
{% if links %}
|
|
23
|
+
{% if links is not empty %}
|
|
24
24
|
<nav class="mx-footer__links mx-nav mx-nav--inline mx-text--s" aria-label="Footer subsidiary links">
|
|
25
25
|
{% for link in links %}
|
|
26
26
|
{{ link }}
|
|
@@ -6,7 +6,7 @@ exports[`Layout/Header Controls smoke-test 1`] = `
|
|
|
6
6
|
<div class="mx-header__inner">
|
|
7
7
|
<div class="mx-header__brand">
|
|
8
8
|
<a class="mx-logo"
|
|
9
|
-
href="
|
|
9
|
+
href="/"
|
|
10
10
|
>
|
|
11
11
|
<img alt="Mixtape"
|
|
12
12
|
src="./mixtape-logo.png"
|
|
@@ -81,7 +81,7 @@ exports[`Layout/Header Header smoke-test 1`] = `
|
|
|
81
81
|
<div class="mx-header__inner">
|
|
82
82
|
<div class="mx-header__brand">
|
|
83
83
|
<a class="mx-logo"
|
|
84
|
-
href="
|
|
84
|
+
href="/"
|
|
85
85
|
>
|
|
86
86
|
<img alt="Mixtape"
|
|
87
87
|
src="./mixtape-logo.png"
|
|
@@ -147,7 +147,7 @@ exports[`Layout/Header Search smoke-test 1`] = `
|
|
|
147
147
|
<div class="mx-header__inner">
|
|
148
148
|
<div class="mx-header__brand">
|
|
149
149
|
<a class="mx-logo"
|
|
150
|
-
href="
|
|
150
|
+
href="/"
|
|
151
151
|
>
|
|
152
152
|
<img alt="Mixtape"
|
|
153
153
|
src="./mixtape-logo.png"
|
|
@@ -248,7 +248,7 @@ exports[`Layout/Header Stacked smoke-test 1`] = `
|
|
|
248
248
|
<div class="mx-header__inner">
|
|
249
249
|
<div class="mx-header__brand">
|
|
250
250
|
<a class="mx-logo"
|
|
251
|
-
href="
|
|
251
|
+
href="/"
|
|
252
252
|
>
|
|
253
253
|
<img alt="Mixtape"
|
|
254
254
|
src="./mixtape-logo.png"
|
|
@@ -454,7 +454,7 @@ exports[`Layout/Header WithTitle smoke-test 1`] = `
|
|
|
454
454
|
<div class="mx-header__inner">
|
|
455
455
|
<div class="mx-header__brand">
|
|
456
456
|
<a class="mx-logo"
|
|
457
|
-
href="
|
|
457
|
+
href="/"
|
|
458
458
|
>
|
|
459
459
|
<img alt="Mixtape"
|
|
460
460
|
src="./mixtape-logo.png"
|
|
@@ -7,41 +7,43 @@
|
|
|
7
7
|
{% set attributes = (attributes ?? create_attribute()).addClass(classes) %}
|
|
8
8
|
<header{{ attributes }}>
|
|
9
9
|
<div class="mx-header__inner">
|
|
10
|
-
{% if logo or title or description %}
|
|
10
|
+
{% if logo is not empty or title is not empty or description is not empty %}
|
|
11
11
|
<div class="mx-header__brand">
|
|
12
|
-
{{ logo }}
|
|
13
|
-
{% if title or description %}
|
|
12
|
+
<a class="mx-logo" href="/">{{ logo }}</a>
|
|
13
|
+
{% if title is not empty or description is not empty %}
|
|
14
14
|
<div class="mx-header__name">
|
|
15
|
-
{% if title %}<strong>{{ title }}</strong>{% endif %}
|
|
15
|
+
{% if title is not empty %}<strong>{{ title }}</strong>{% endif %}
|
|
16
16
|
{{ description }}
|
|
17
17
|
</div>
|
|
18
18
|
{% endif %}
|
|
19
19
|
</div>
|
|
20
20
|
{% endif %}
|
|
21
|
-
{% if navigation or search %}
|
|
21
|
+
{% if navigation is not empty or search is not empty %}
|
|
22
22
|
<div class="mx-header__toggles">
|
|
23
|
-
{% if search %}
|
|
23
|
+
{% if search is not empty %}
|
|
24
24
|
<mx-global-toggle hideMenu><button aria-controls="primary-search" class="mx-button mx-button--icon-only mx-icon mx-icon--search" disabled>Open Search</button></mx-global-toggle>
|
|
25
25
|
{% endif %}
|
|
26
|
-
{% if navigation %}
|
|
26
|
+
{% if navigation is not empty %}
|
|
27
27
|
<mx-global-toggle><button aria-controls="primary-nav" class="mx-button mx-button--dark mx-button--icon-only mx-icon mx-icon--menu" disabled>Open Menu</button></mx-global-toggle>
|
|
28
28
|
{% endif %}
|
|
29
29
|
</div>
|
|
30
30
|
{% endif %}
|
|
31
|
-
{% if search %}
|
|
31
|
+
{% if search is not empty %}
|
|
32
32
|
<div id="primary-search" class="mx-header__search global-nav-up-only" aria-label="Search">
|
|
33
33
|
{{ search }}
|
|
34
34
|
</div>
|
|
35
35
|
{% endif %}
|
|
36
36
|
</div>
|
|
37
37
|
</header>
|
|
38
|
-
{% if navigation or controls %}
|
|
38
|
+
{% if navigation is not empty or controls is not empty %}
|
|
39
39
|
<div id="primary-nav" class="mx-header__nav mx-section global-nav-up-only" aria-label="Primary navigation">
|
|
40
40
|
<div class="mx-header__nav-inner">
|
|
41
41
|
{{ navigation }}
|
|
42
|
-
{% if controls %}
|
|
42
|
+
{% if controls is not empty %}
|
|
43
43
|
<div class="mx-header__nav-right">
|
|
44
|
-
{
|
|
44
|
+
{% for control in controls %}
|
|
45
|
+
{{ controls }}
|
|
46
|
+
{% endfor %}
|
|
45
47
|
</div>
|
|
46
48
|
{% endif %}
|
|
47
49
|
</div>
|
|
@@ -7,39 +7,41 @@
|
|
|
7
7
|
{% set attributes = (attributes ?? create_attribute()).addClass(classes) %}
|
|
8
8
|
<header{{ attributes }}>
|
|
9
9
|
<div class="mx-header__inner">
|
|
10
|
-
{% if logo or title or description %}
|
|
10
|
+
{% if logo is not empty or title is not empty or description is not empty %}
|
|
11
11
|
<div class="mx-header__brand">
|
|
12
|
-
{{ logo }}
|
|
13
|
-
{% if title or description %}
|
|
12
|
+
<a class="mx-logo" href="/">{{ logo }}</a>
|
|
13
|
+
{% if title is not empty or description is not empty %}
|
|
14
14
|
<div class="mx-header__name">
|
|
15
|
-
{% if title %}<strong>{{ title }}</strong>{% endif %}
|
|
15
|
+
{% if title is not empty %}<strong>{{ title }}</strong>{% endif %}
|
|
16
16
|
{{ description }}
|
|
17
17
|
</div>
|
|
18
18
|
{% endif %}
|
|
19
19
|
</div>
|
|
20
20
|
{% endif %}
|
|
21
|
-
{% if navigation or search %}
|
|
21
|
+
{% if navigation is not empty or search is not empty %}
|
|
22
22
|
<div class="mx-header__toggles">
|
|
23
|
-
{% if search %}
|
|
23
|
+
{% if search is not empty %}
|
|
24
24
|
<mx-global-toggle hideMenu><button aria-controls="primary-search" class="mx-button mx-button--icon-only mx-icon mx-icon--search" disabled>Open Search</button></mx-global-toggle>
|
|
25
25
|
{% endif %}
|
|
26
|
-
{% if navigation %}
|
|
26
|
+
{% if navigation is not empty %}
|
|
27
27
|
<mx-global-toggle><button aria-controls="primary-nav" class="mx-button mx-button--dark mx-button--icon-only mx-icon mx-icon--menu" disabled>Open Menu</button></mx-global-toggle>
|
|
28
28
|
{% endif %}
|
|
29
29
|
</div>
|
|
30
30
|
{% endif %}
|
|
31
31
|
<div class="mx-header__main">
|
|
32
|
-
{% if navigation %}
|
|
32
|
+
{% if navigation is not empty %}
|
|
33
33
|
<div id="primary-nav" class="mx-header__nav global-nav-up-only" aria-label="Primary navigation">
|
|
34
34
|
{{ navigation }}
|
|
35
35
|
</div>
|
|
36
36
|
{% endif %}
|
|
37
|
-
{% if search %}
|
|
37
|
+
{% if search is not empty %}
|
|
38
38
|
<div id="primary-search" class="mx-header__search global-nav-up-only" aria-label="Search">
|
|
39
39
|
{{ search }}
|
|
40
40
|
</div>
|
|
41
41
|
{% endif %}
|
|
42
|
-
{
|
|
42
|
+
{% for control in controls %}
|
|
43
|
+
{{ controls }}
|
|
44
|
+
{% endfor %}
|
|
43
45
|
</div>
|
|
44
46
|
</div>
|
|
45
47
|
</header>
|
|
@@ -15,6 +15,16 @@ const meta: Meta<MastheadType> = {
|
|
|
15
15
|
component: Component,
|
|
16
16
|
args: {
|
|
17
17
|
content: "A PreviousNext product",
|
|
18
|
+
skipLinks: [
|
|
19
|
+
Link({
|
|
20
|
+
href: "#content",
|
|
21
|
+
title: "Skip to content",
|
|
22
|
+
}),
|
|
23
|
+
Link({
|
|
24
|
+
href: "#nav",
|
|
25
|
+
title: "Skip to navigation",
|
|
26
|
+
}),
|
|
27
|
+
],
|
|
18
28
|
},
|
|
19
29
|
decorators: [Page],
|
|
20
30
|
}
|
|
@@ -2,9 +2,25 @@
|
|
|
2
2
|
|
|
3
3
|
exports[`Layout/Masthead Light smoke-test 1`] = `
|
|
4
4
|
<div class="mx-page">
|
|
5
|
+
<nav class="mx-skip-links"
|
|
6
|
+
aria-label="Skip to links"
|
|
7
|
+
>
|
|
8
|
+
<a href="#content">
|
|
9
|
+
<span>
|
|
10
|
+
Skip to content
|
|
11
|
+
</span>
|
|
12
|
+
</a>
|
|
13
|
+
<a href="#nav">
|
|
14
|
+
<span>
|
|
15
|
+
Skip to navigation
|
|
16
|
+
</span>
|
|
17
|
+
</a>
|
|
18
|
+
</nav>
|
|
5
19
|
<div class="mx-masthead mx-section__full mx-page mx-spacing--top-xxs mx-spacing--bottom-xxs mx-background--alt">
|
|
6
20
|
<div class="flex">
|
|
7
|
-
|
|
21
|
+
<div>
|
|
22
|
+
A PreviousNext product
|
|
23
|
+
</div>
|
|
8
24
|
</div>
|
|
9
25
|
</div>
|
|
10
26
|
</div>
|
|
@@ -12,9 +28,25 @@ exports[`Layout/Masthead Light smoke-test 1`] = `
|
|
|
12
28
|
|
|
13
29
|
exports[`Layout/Masthead Masthead smoke-test 1`] = `
|
|
14
30
|
<div class="mx-page">
|
|
31
|
+
<nav class="mx-skip-links"
|
|
32
|
+
aria-label="Skip to links"
|
|
33
|
+
>
|
|
34
|
+
<a href="#content">
|
|
35
|
+
<span>
|
|
36
|
+
Skip to content
|
|
37
|
+
</span>
|
|
38
|
+
</a>
|
|
39
|
+
<a href="#nav">
|
|
40
|
+
<span>
|
|
41
|
+
Skip to navigation
|
|
42
|
+
</span>
|
|
43
|
+
</a>
|
|
44
|
+
</nav>
|
|
15
45
|
<div class="mx-masthead mx-section__full mx-page mx-spacing--top-xxs mx-spacing--bottom-xxs mx-background--reverse">
|
|
16
46
|
<div class="flex">
|
|
17
|
-
|
|
47
|
+
<div>
|
|
48
|
+
A PreviousNext product
|
|
49
|
+
</div>
|
|
18
50
|
</div>
|
|
19
51
|
</div>
|
|
20
52
|
</div>
|
|
@@ -22,9 +54,25 @@ exports[`Layout/Masthead Masthead smoke-test 1`] = `
|
|
|
22
54
|
|
|
23
55
|
exports[`Layout/Masthead WithLinks smoke-test 1`] = `
|
|
24
56
|
<div class="mx-page">
|
|
57
|
+
<nav class="mx-skip-links"
|
|
58
|
+
aria-label="Skip to links"
|
|
59
|
+
>
|
|
60
|
+
<a href="#content">
|
|
61
|
+
<span>
|
|
62
|
+
Skip to content
|
|
63
|
+
</span>
|
|
64
|
+
</a>
|
|
65
|
+
<a href="#nav">
|
|
66
|
+
<span>
|
|
67
|
+
Skip to navigation
|
|
68
|
+
</span>
|
|
69
|
+
</a>
|
|
70
|
+
</nav>
|
|
25
71
|
<div class="mx-masthead mx-section__full mx-page mx-spacing--top-xxs mx-spacing--bottom-xxs mx-background--reverse">
|
|
26
72
|
<div class="flex">
|
|
27
|
-
|
|
73
|
+
<div>
|
|
74
|
+
A PreviousNext product
|
|
75
|
+
</div>
|
|
28
76
|
<nav class="mx-masthead__nav"
|
|
29
77
|
aria-label="Additional links"
|
|
30
78
|
>
|
|
@@ -18,6 +18,29 @@
|
|
|
18
18
|
gap: var(--gap);
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
+
|
|
22
|
+
.mx-skip-links {
|
|
23
|
+
background-color: var(--colour-background-alt);
|
|
24
|
+
position: fixed;
|
|
25
|
+
inset-block-start: 0;
|
|
26
|
+
inset-inline-start: 0;
|
|
27
|
+
inline-size: 100%;
|
|
28
|
+
display: flex;
|
|
29
|
+
z-index: 200;
|
|
30
|
+
transform: translateY(-100%);
|
|
31
|
+
visibility: hidden;
|
|
32
|
+
|
|
33
|
+
&:has(a:focus) {
|
|
34
|
+
transform: translateY(0);
|
|
35
|
+
visibility: visible;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
& a {
|
|
39
|
+
display: inline-block;
|
|
40
|
+
padding-block: 2px;
|
|
41
|
+
padding-inline: 4px;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
21
44
|
}
|
|
22
45
|
|
|
23
46
|
@media print {
|