@onsvisual/svelte-components 1.1.13 → 1.1.15
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/dist/components/AnalyticsBanner/AnalyticsBanner.svelte +10 -14
- package/dist/components/AnalyticsBanner/AnalyticsBanner.svelte.d.ts +2 -2
- package/dist/components/Header/Header.svelte +6 -1
- package/dist/components/Header/HeaderNav.svelte +36 -28
- package/dist/css/main.css +1 -1
- package/package.json +1 -1
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
<script>
|
|
8
8
|
import { onMount, getContext } from "svelte";
|
|
9
|
+
import Container from "../Container/Container.svelte";
|
|
9
10
|
|
|
10
11
|
/**
|
|
11
12
|
* Google analytics/tags manager ID
|
|
@@ -34,7 +35,7 @@
|
|
|
34
35
|
export let usageCookies = false;
|
|
35
36
|
/**
|
|
36
37
|
* Set the width of the banner
|
|
37
|
-
* @type {"wide"|"wider"}
|
|
38
|
+
* @type {"narrow"|"medium"|"wide"|"wider"|"full"}
|
|
38
39
|
*/
|
|
39
40
|
export let width = "wide";
|
|
40
41
|
/**
|
|
@@ -202,6 +203,7 @@
|
|
|
202
203
|
{#if showBanner && !hideBanner}
|
|
203
204
|
<div
|
|
204
205
|
class="ons-cookies-banner"
|
|
206
|
+
class:ons-cookies-banner__full={width === "full"}
|
|
205
207
|
role="region"
|
|
206
208
|
aria-label="Cookies banner"
|
|
207
209
|
style:display={showBanner ? "block" : null}
|
|
@@ -213,10 +215,7 @@
|
|
|
213
215
|
id="global-cookie-message"
|
|
214
216
|
aria-label="cookie banner"
|
|
215
217
|
>
|
|
216
|
-
<
|
|
217
|
-
class="ons-container ons-cookies-banner__primary"
|
|
218
|
-
class:ons-page__container--wider={width === "wider"}
|
|
219
|
-
>
|
|
218
|
+
<Container {width} cls="ons-cookies-banner__primary">
|
|
220
219
|
<div class="ons-grid">
|
|
221
220
|
<div class="ons-grid__col ons-col-8@m">
|
|
222
221
|
<h2 class="ons-cookies-banner__title ons-u-mb-xs">{i18n("Cookies on ons.gov.uk")}</h2>
|
|
@@ -236,7 +235,7 @@
|
|
|
236
235
|
</div>
|
|
237
236
|
</div>
|
|
238
237
|
</div>
|
|
239
|
-
<div class="ons-grid ons-grid
|
|
238
|
+
<div class="ons-grid ons-grid-flex ons-u-mt-s">
|
|
240
239
|
<div class="ons-grid__col">
|
|
241
240
|
<button
|
|
242
241
|
type="submit"
|
|
@@ -267,13 +266,10 @@
|
|
|
267
266
|
>
|
|
268
267
|
</div>
|
|
269
268
|
</div>
|
|
270
|
-
</
|
|
269
|
+
</Container>
|
|
271
270
|
</form>
|
|
272
271
|
{:else}
|
|
273
|
-
<
|
|
274
|
-
class="ons-container ons-cookies-banner__confirmation"
|
|
275
|
-
class:ons-page__container--wider={width === "wider"}
|
|
276
|
-
>
|
|
272
|
+
<Container {width} cls="ons-cookies-banner__confirmation">
|
|
277
273
|
<div
|
|
278
274
|
class="ons-grid ons-grid--flex ons-grid--between ons-grid--gutterless ons-grid--no-wrap@s ons-grid--vertical-center"
|
|
279
275
|
>
|
|
@@ -298,7 +294,7 @@
|
|
|
298
294
|
</button>
|
|
299
295
|
</div>
|
|
300
296
|
</div>
|
|
301
|
-
</
|
|
297
|
+
</Container>
|
|
302
298
|
{/if}
|
|
303
299
|
</div>
|
|
304
300
|
{/if}
|
|
@@ -308,7 +304,7 @@
|
|
|
308
304
|
/* padding: 0; */
|
|
309
305
|
background: var(--pale, #f0f0f0) !important;
|
|
310
306
|
}
|
|
311
|
-
.ons-page__container
|
|
312
|
-
|
|
307
|
+
.ons-cookies-banner__full :global(.ons-page__container) {
|
|
308
|
+
padding: 0 12px;
|
|
313
309
|
}
|
|
314
310
|
</style>
|
|
@@ -3,7 +3,7 @@ export function analyticsEvent(props: any): void;
|
|
|
3
3
|
/** @typedef {typeof __propDef.events} AnalyticsBannerEvents */
|
|
4
4
|
/** @typedef {typeof __propDef.slots} AnalyticsBannerSlots */
|
|
5
5
|
export default class AnalyticsBanner extends SvelteComponentTyped<{
|
|
6
|
-
width?: "wide" | "wider" | undefined;
|
|
6
|
+
width?: "narrow" | "medium" | "wide" | "wider" | "full" | undefined;
|
|
7
7
|
page?: any;
|
|
8
8
|
analyticsId?: string | undefined;
|
|
9
9
|
analyticsProps?: object | undefined;
|
|
@@ -20,7 +20,7 @@ export type AnalyticsBannerSlots = typeof __propDef.slots;
|
|
|
20
20
|
import { SvelteComponentTyped } from "svelte";
|
|
21
21
|
declare const __propDef: {
|
|
22
22
|
props: {
|
|
23
|
-
width?: "wide" | "wider" | undefined;
|
|
23
|
+
width?: "narrow" | "medium" | "wide" | "wider" | "full" | undefined;
|
|
24
24
|
page?: any;
|
|
25
25
|
analyticsId?: string | undefined;
|
|
26
26
|
analyticsProps?: object | undefined;
|
|
@@ -105,7 +105,12 @@
|
|
|
105
105
|
});
|
|
106
106
|
</script>
|
|
107
107
|
|
|
108
|
-
<header
|
|
108
|
+
<header
|
|
109
|
+
class="ons-header"
|
|
110
|
+
class:ons-header--basic={!compact && !legacy}
|
|
111
|
+
class:ons-header__full={width === "full"}
|
|
112
|
+
role="banner"
|
|
113
|
+
>
|
|
109
114
|
{#if skipHref}
|
|
110
115
|
<SkipLink href={skipHref} />
|
|
111
116
|
{/if}
|
|
@@ -241,6 +241,10 @@
|
|
|
241
241
|
const columns = [[menu.topics[0]], [menu.topics[1], menu.topics[2]], [menu.topics[3]]];
|
|
242
242
|
|
|
243
243
|
onMount(() => {
|
|
244
|
+
const hasBodyClass = "className" in document?.body || {};
|
|
245
|
+
const bodyClassString = document?.body?.className || "";
|
|
246
|
+
if (hasBodyClass && !bodyClassString.includes("ons-js-enabled"))
|
|
247
|
+
document.body.className = bodyClassString + " ons-js-enabled";
|
|
244
248
|
initNav(el?.parentElement || document);
|
|
245
249
|
});
|
|
246
250
|
</script>
|
|
@@ -398,10 +402,10 @@
|
|
|
398
402
|
<div class="ons-header__links ons-grid__col">
|
|
399
403
|
<button
|
|
400
404
|
type="button"
|
|
401
|
-
class="ons-btn ons-u-fs-
|
|
405
|
+
class="ons-btn ons-u-fs-r--b ons-js-toggle-nav-menu ons-u-db-no-js_disabled button-nav ons-btn--menu"
|
|
402
406
|
aria-label="Toggle menu"
|
|
403
407
|
aria-controls="menu-links"
|
|
404
|
-
aria-expanded="
|
|
408
|
+
aria-expanded="false"
|
|
405
409
|
aria-disabled="true"
|
|
406
410
|
>
|
|
407
411
|
<span class="ons-btn__inner"
|
|
@@ -423,10 +427,10 @@
|
|
|
423
427
|
</button>
|
|
424
428
|
</div>
|
|
425
429
|
{#if search}
|
|
426
|
-
<div class="ons-header__links ons-grid__col ons-header__menu-
|
|
430
|
+
<div class="ons-header__links ons-grid__col ons-header__menu-links">
|
|
427
431
|
<button
|
|
428
432
|
type="button"
|
|
429
|
-
class="ons-btn ons-u-fs-s--b ons-js-toggle-header-search ons-
|
|
433
|
+
class="ons-btn ons-u-fs-s--b ons-js-toggle-header-search ons-u-db-no-js_disabled ons-btn--search-icon ons-btn--search"
|
|
430
434
|
aria-label="Toggle search"
|
|
431
435
|
aria-controls="search"
|
|
432
436
|
aria-expanded="true"
|
|
@@ -449,24 +453,26 @@
|
|
|
449
453
|
</button>
|
|
450
454
|
</div>
|
|
451
455
|
{/if}
|
|
452
|
-
{#if bilingual}
|
|
453
|
-
<div class="ons-grid__col ons-col-auto">
|
|
454
|
-
<div class="ons-header__language">
|
|
455
|
-
<ul class="ons-language-links">
|
|
456
|
-
<li class="ons-language-links__item">
|
|
457
|
-
<a
|
|
458
|
-
href="{baseother}{path}"
|
|
459
|
-
class="language__link"
|
|
460
|
-
lang={lang == "en" ? "cy" : "en"}
|
|
461
|
-
>
|
|
462
|
-
<span class="ons-u-vh">{i18n("Newid iaith i")} </span>{i18n("Cymraeg")}
|
|
463
|
-
</a>
|
|
464
|
-
</li>
|
|
465
|
-
</ul>
|
|
466
|
-
</div>
|
|
467
|
-
</div>
|
|
468
|
-
{/if}
|
|
469
456
|
</div>
|
|
457
|
+
{#if bilingual}
|
|
458
|
+
<div
|
|
459
|
+
class="ons-header__links ons-grid__col ons-col-auto ons-header__links--language-section ons-u-d-no@2xs@m"
|
|
460
|
+
>
|
|
461
|
+
<div class="ons-header__language ons-u-fs-r--b">
|
|
462
|
+
<ul class="ons-language-links">
|
|
463
|
+
<li class="ons-language-links__item">
|
|
464
|
+
<a
|
|
465
|
+
href="{baseother}{path}"
|
|
466
|
+
class="language__link"
|
|
467
|
+
lang={lang == "en" ? "cy" : "en"}
|
|
468
|
+
>
|
|
469
|
+
<span class="ons-u-vh">{i18n("Newid iaith i")} </span>{i18n("Cymraeg")}
|
|
470
|
+
</a>
|
|
471
|
+
</li>
|
|
472
|
+
</ul>
|
|
473
|
+
</div>
|
|
474
|
+
</div>
|
|
475
|
+
{/if}
|
|
470
476
|
</div>
|
|
471
477
|
</Container>
|
|
472
478
|
</div>
|
|
@@ -478,6 +484,15 @@
|
|
|
478
484
|
aria-hidden="true"
|
|
479
485
|
>
|
|
480
486
|
<Container {width}>
|
|
487
|
+
<div class="ons-header-nav-menu__language ons-u-fs-s--b ons-u-d-no@m ons-u-d-no@2xl">
|
|
488
|
+
<ul class="ons-language-links">
|
|
489
|
+
<li class="ons-language-links__item">
|
|
490
|
+
<a href="{baseother}{path}" lang={lang == "en" ? "cy" : "en"}>
|
|
491
|
+
<span class="ons-u-vh">{i18n("Newid iaith i")} </span>{i18n("Cymraeg")}
|
|
492
|
+
</a>
|
|
493
|
+
</li>
|
|
494
|
+
</ul>
|
|
495
|
+
</div>
|
|
481
496
|
<ul class="ons-grid ons-header-nav-menu__key-list">
|
|
482
497
|
{#each menu.main as item (item.url)}
|
|
483
498
|
<li class="ons-grid__col ons-col-4@m ons-header-nav-menu__col">
|
|
@@ -588,9 +603,6 @@
|
|
|
588
603
|
{/if}
|
|
589
604
|
|
|
590
605
|
<style>
|
|
591
|
-
.ons-header__grid-top {
|
|
592
|
-
padding: 0;
|
|
593
|
-
}
|
|
594
606
|
.ons-header__top {
|
|
595
607
|
background: var(--ons-color-page-light);
|
|
596
608
|
}
|
|
@@ -598,10 +610,6 @@
|
|
|
598
610
|
.ons-icon--logo__group--text {
|
|
599
611
|
fill: var(--ons-color-text-link-hover);
|
|
600
612
|
}
|
|
601
|
-
.ons-header__language {
|
|
602
|
-
display: block;
|
|
603
|
-
margin-top: 0.85em;
|
|
604
|
-
}
|
|
605
613
|
.ons-header--border:has(+ .ons-u-d-no) {
|
|
606
614
|
border-bottom: 1px solid var(--ons-color-borders);
|
|
607
615
|
}
|