accomadesc 0.3.26 → 0.3.28
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/MainNav.svelte +9 -1
- package/dist/NavItem.svelte +21 -2
- package/dist/PageComponent.svelte +25 -12
- package/dist/state.svelte.d.ts +5 -0
- package/dist/state.svelte.js +7 -0
- package/dist/types.d.ts +1 -0
- package/package.json +1 -1
package/dist/MainNav.svelte
CHANGED
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
import { fade } from 'svelte/transition';
|
|
4
4
|
import type { Nav, I18nFacade } from './types.js';
|
|
5
5
|
import NavItem from './NavItem.svelte';
|
|
6
|
+
import { getContext } from 'svelte';
|
|
7
|
+
import { GLOBAL_STATE, GlobalState } from './state.svelte.ts';
|
|
6
8
|
|
|
7
9
|
let currentPath = $derived(page.url.pathname);
|
|
8
10
|
let {
|
|
@@ -30,6 +32,8 @@
|
|
|
30
32
|
return ['', lang, ...pathElements.slice(1)].join('/');
|
|
31
33
|
}
|
|
32
34
|
};
|
|
35
|
+
|
|
36
|
+
const gs: GlobalState = getContext(GLOBAL_STATE);
|
|
33
37
|
</script>
|
|
34
38
|
|
|
35
39
|
<button class="not-nav" onclick={close} aria-label="close" transition:fade|global></button>
|
|
@@ -50,7 +54,7 @@
|
|
|
50
54
|
<a
|
|
51
55
|
data-sveltekit-keepfocus
|
|
52
56
|
data-sveltekit-noscroll
|
|
53
|
-
class=
|
|
57
|
+
class={{ 'lang-link': true, disabled: gs.disableLinks }}
|
|
54
58
|
rel="alternate"
|
|
55
59
|
onclick={() => (updateCurrentLang ? updateCurrentLang(langKey) : '')}
|
|
56
60
|
href={pathForLang(langKey)}
|
|
@@ -136,4 +140,8 @@
|
|
|
136
140
|
padding-left: 2.5rem;
|
|
137
141
|
margin: 0;
|
|
138
142
|
}
|
|
143
|
+
|
|
144
|
+
.disabled {
|
|
145
|
+
pointer-events: none;
|
|
146
|
+
}
|
|
139
147
|
</style>
|
package/dist/NavItem.svelte
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { NavItem, I18nFacade } from './types.js';
|
|
3
3
|
import ExtLinkSvg from './svg/ExtLinkSVG.svelte';
|
|
4
|
+
import { getContext } from 'svelte';
|
|
5
|
+
import { GLOBAL_STATE, GlobalState } from './state.svelte.ts';
|
|
4
6
|
|
|
5
7
|
let {
|
|
6
8
|
n,
|
|
@@ -13,6 +15,8 @@
|
|
|
13
15
|
} & I18nFacade = $props();
|
|
14
16
|
|
|
15
17
|
const path = $derived(`/${currentLang}${n.path}`);
|
|
18
|
+
|
|
19
|
+
const gs: GlobalState = getContext(GLOBAL_STATE);
|
|
16
20
|
</script>
|
|
17
21
|
|
|
18
22
|
<div class="wrapper" class:sub={n.sub}>
|
|
@@ -22,12 +26,23 @@
|
|
|
22
26
|
<div class="link-icon-wrapper">
|
|
23
27
|
<ExtLinkSvg size="1.6rem" />
|
|
24
28
|
</div>
|
|
25
|
-
<a
|
|
29
|
+
<a
|
|
30
|
+
href={n.path}
|
|
31
|
+
target="_blank"
|
|
32
|
+
rel="noreferrer noopener nofollow"
|
|
33
|
+
class:disabled={gs.disableLinks}
|
|
34
|
+
>
|
|
26
35
|
{translateFunc ? translateFunc(n.key) : ''}
|
|
27
36
|
</a>
|
|
28
37
|
</div>
|
|
29
38
|
{:else}
|
|
30
|
-
<a
|
|
39
|
+
<a
|
|
40
|
+
href={path}
|
|
41
|
+
{onclick}
|
|
42
|
+
data-sveltekit-keepfocus
|
|
43
|
+
data-sveltekit-noscroll
|
|
44
|
+
class:disabled={gs.disableLinks}
|
|
45
|
+
>
|
|
31
46
|
{translateFunc ? translateFunc(n.key) : ''}
|
|
32
47
|
</a>
|
|
33
48
|
{/if}
|
|
@@ -69,4 +84,8 @@
|
|
|
69
84
|
position: relative;
|
|
70
85
|
width: 100%;
|
|
71
86
|
}
|
|
87
|
+
|
|
88
|
+
.disabled {
|
|
89
|
+
pointer-events: none;
|
|
90
|
+
}
|
|
72
91
|
</style>
|
|
@@ -16,6 +16,8 @@
|
|
|
16
16
|
import { page } from '$app/state';
|
|
17
17
|
import Button from './basic/Button.svelte';
|
|
18
18
|
import { fallbackCSS } from './style.js';
|
|
19
|
+
import { GLOBAL_STATE, GlobalState } from './state.svelte.ts';
|
|
20
|
+
import { setContext } from 'svelte';
|
|
19
21
|
|
|
20
22
|
let {
|
|
21
23
|
hero,
|
|
@@ -31,6 +33,7 @@
|
|
|
31
33
|
footerRef = 'footer_html',
|
|
32
34
|
fixedHamburger = true,
|
|
33
35
|
navbarOverHamburger = true,
|
|
36
|
+
disableLinks = false,
|
|
34
37
|
translateFunc,
|
|
35
38
|
formatMoneyFunc,
|
|
36
39
|
formatDateFunc,
|
|
@@ -41,6 +44,8 @@
|
|
|
41
44
|
calendarTranslation,
|
|
42
45
|
}: PageProps & I18nFacade = $props();
|
|
43
46
|
|
|
47
|
+
setContext(GLOBAL_STATE, new GlobalState(disableLinks));
|
|
48
|
+
|
|
44
49
|
let pageTitle = hero && hero.title ? hero.title : header ? header : title;
|
|
45
50
|
|
|
46
51
|
let langSelectorOpen = $state(false);
|
|
@@ -100,6 +105,7 @@
|
|
|
100
105
|
data-sveltekit-noscroll
|
|
101
106
|
onclick={() => (updateCurrentLang ? updateCurrentLang(l) : '')}
|
|
102
107
|
href={pathForLang(l)}
|
|
108
|
+
class:disabled={disableLinks}
|
|
103
109
|
>
|
|
104
110
|
<Icon iconName={l} height="1.5rem" width="1.5rem" />
|
|
105
111
|
</a>
|
|
@@ -133,7 +139,7 @@
|
|
|
133
139
|
</header>
|
|
134
140
|
|
|
135
141
|
<div class="floating-title">
|
|
136
|
-
<h1>{translateFunc ? translateFunc(hero.title) : ''}</h1>
|
|
142
|
+
<h1 id="hero-title">{translateFunc ? translateFunc(hero.title) : ''}</h1>
|
|
137
143
|
</div>
|
|
138
144
|
{:else}
|
|
139
145
|
{#if title}
|
|
@@ -192,7 +198,10 @@
|
|
|
192
198
|
|
|
193
199
|
{#each allTranslations as langKey}
|
|
194
200
|
<a
|
|
195
|
-
class=
|
|
201
|
+
class={{
|
|
202
|
+
'lang-link': true,
|
|
203
|
+
disabled: disableLinks,
|
|
204
|
+
}}
|
|
196
205
|
rel="alternate"
|
|
197
206
|
onclick={() => (updateCurrentLang ? updateCurrentLang(langKey) : '')}
|
|
198
207
|
href={pathForLang(langKey)}
|
|
@@ -282,16 +291,16 @@
|
|
|
282
291
|
justify-content: center;
|
|
283
292
|
/* mix-blend-mode: difference; */
|
|
284
293
|
text-align: center;
|
|
285
|
-
}
|
|
286
294
|
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
+
h1#hero-title {
|
|
296
|
+
margin-left: 1rem;
|
|
297
|
+
color: var(--main-font-color);
|
|
298
|
+
font-weight: bolder;
|
|
299
|
+
font-size: 2.8rem;
|
|
300
|
+
font-family: var(--landing-title-font-family, 'sans-serif');
|
|
301
|
+
font-variant: var(--landing-title-font-variant, 'small-caps');
|
|
302
|
+
filter: var(--title-filter);
|
|
303
|
+
}
|
|
295
304
|
}
|
|
296
305
|
|
|
297
306
|
@media (max-width: 300px) {
|
|
@@ -406,7 +415,7 @@
|
|
|
406
415
|
}
|
|
407
416
|
|
|
408
417
|
ul {
|
|
409
|
-
margin-left:
|
|
418
|
+
margin-left: 2rem;
|
|
410
419
|
padding-left: 0.2rem;
|
|
411
420
|
}
|
|
412
421
|
|
|
@@ -415,4 +424,8 @@
|
|
|
415
424
|
color: var(--main-font-color);
|
|
416
425
|
}
|
|
417
426
|
}
|
|
427
|
+
|
|
428
|
+
.disabled {
|
|
429
|
+
pointer-events: none;
|
|
430
|
+
}
|
|
418
431
|
</style>
|
package/dist/types.d.ts
CHANGED