spoko-design-system 0.6.4 → 0.6.5
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/.astro/settings.json +4 -4
- package/.github/dependabot.yml +11 -11
- package/.github/todo.yml +3 -3
- package/.github/workflows/deploy.yml +39 -39
- package/.stackblitzrc +5 -5
- package/.vscode/extensions.json +5 -5
- package/.vscode/launch.json +11 -11
- package/.vscode/settings.json +5 -5
- package/LICENSE +21 -21
- package/README.md +114 -114
- package/astro-i18next.config.mjs +17 -17
- package/astro-i18next.config.ts +10 -10
- package/astro.config.mjs +86 -86
- package/dev-dist/sw.js +91 -91
- package/dev-dist/workbox-c676b6d3.js +3391 -3391
- package/icon.config.ts +279 -279
- package/index.ts +66 -66
- package/package.json +1 -1
- package/public/fonts/lg.svg +53 -53
- package/public/fonts/vwhead-bold-demo.html +549 -549
- package/public/fonts/vwhead-regular-demo.html +549 -549
- package/public/fonts/vwtext-bold-demo.html +549 -549
- package/public/fonts/vwtext-regular-demo.html +549 -549
- package/public/github.svg +3 -3
- package/public/grid_dot.svg +4 -4
- package/public/linkedin.svg +44 -44
- package/public/locales/en/translation.json +8 -8
- package/public/locales/pl/translation.json +8 -8
- package/public/make-scrollable-code-focusable.js +3 -3
- package/public/pagefind.yml +3 -3
- package/public/polo.blue.svg +29 -29
- package/public/spoko.space.svg +71 -71
- package/public/twitter.svg +46 -46
- package/renovate.json +6 -6
- package/sandbox.config.json +11 -11
- package/src/MyComponent.astro +8 -8
- package/src/components/Badge.vue +19 -19
- package/src/components/Badges.vue +21 -21
- package/src/components/Breadcrumbs.vue +107 -107
- package/src/components/Button.vue +101 -101
- package/src/components/ButtonCopy.astro +183 -183
- package/src/components/ButtonCopy.vue +36 -36
- package/src/components/Card.astro +27 -27
- package/src/components/Carousel.astro +26 -26
- package/src/components/Category/CategoriesCarousel.astro +101 -101
- package/src/components/Category/CategoryDetails.astro +169 -169
- package/src/components/Category/CategoryLink.vue +28 -28
- package/src/components/Category/CategorySidebarToggler.vue +9 -9
- package/src/components/Category/CategoryTile.astro +38 -38
- package/src/components/Category/CategoryViewToggler.astro +89 -89
- package/src/components/Category/SubCategoryLink.vue +19 -19
- package/src/components/Copyright.astro +12 -12
- package/src/components/Date.astro +7 -7
- package/src/components/Faq.astro +33 -33
- package/src/components/FaqItem.astro +80 -80
- package/src/components/FeaturesList.vue +41 -41
- package/src/components/FuckRussia.vue +62 -62
- package/src/components/HandDrive.astro +29 -29
- package/src/components/Header/Header.astro +210 -210
- package/src/components/Header/SkipToContent.astro +1 -1
- package/src/components/Headline.vue +48 -48
- package/src/components/Image.astro +30 -30
- package/src/components/LeftSidebar.astro +53 -53
- package/src/components/MainColors.vue +22 -22
- package/src/components/MainInput.vue +15 -15
- package/src/components/Modal.astro +27 -27
- package/src/components/PageContent.astro +5 -5
- package/src/components/PartNumber.vue +27 -27
- package/src/components/Post/PostCategories.astro +37 -37
- package/src/components/Post/PostCategories.vue +39 -39
- package/src/components/PostHeader.astro +103 -103
- package/src/components/PrCode.vue +141 -141
- package/src/components/Product/ProductButton.vue +18 -18
- package/src/components/Product/ProductCarousel.astro +35 -35
- package/src/components/Product/ProductCodes.vue +174 -174
- package/src/components/Product/ProductEngineType.vue +42 -42
- package/src/components/Product/ProductImage.astro +40 -40
- package/src/components/Product/ProductLink.astro +101 -101
- package/src/components/Product/ProductLink.vue +59 -59
- package/src/components/Product/ProductLinkInfo.astro +37 -37
- package/src/components/Product/ProductNumber.astro +60 -60
- package/src/components/ProductCarousel.astro +38 -38
- package/src/components/ProductCodes.vue +39 -39
- package/src/components/ProductDetailName.vue +52 -52
- package/src/components/ProductDetailsList.vue +65 -65
- package/src/components/ProductTile.astro +48 -48
- package/src/components/Quote.vue +23 -23
- package/src/components/ReloadPrompt.astro +50 -50
- package/src/components/SlimBanner.vue +72 -72
- package/src/components/Table.vue +32 -32
- package/src/components/TableOfContents.astro +15 -15
- package/src/components/Translations.vue +23 -23
- package/src/components/flags/FlagPL.vue +3 -3
- package/src/components/flags/FlagUA.vue +2 -2
- package/src/components/layout/Container.astro +7 -7
- package/src/components/layout/Header.astro +80 -80
- package/src/config.ts +56 -56
- package/src/design.config.ts +98 -98
- package/src/env.d.ts +6 -6
- package/src/layouts/Layout.astro +61 -61
- package/src/layouts/MainLayout.astro +81 -81
- package/src/layouts/partials/FooterCommon.astro +4 -4
- package/src/layouts/partials/HeadCommon.astro +44 -44
- package/src/layouts/partials/HeadSEO.astro +41 -41
- package/src/pages/components/badges.mdx +57 -57
- package/src/pages/components/breadcrumbs.mdx +139 -139
- package/src/pages/components/buttons.mdx +360 -360
- package/src/pages/components/card.mdx +294 -294
- package/src/pages/components/carousel.mdx +62 -62
- package/src/pages/components/copyright.mdx +42 -42
- package/src/pages/components/details-list.mdx +115 -115
- package/src/pages/components/features-list.mdx +37 -37
- package/src/pages/components/flags.mdx +49 -49
- package/src/pages/components/fuck-russia.mdx +39 -39
- package/src/pages/components/hand-drive.mdx +38 -38
- package/src/pages/components/headline.mdx +152 -152
- package/src/pages/components/icons.astro +135 -135
- package/src/pages/components/image.mdx +513 -513
- package/src/pages/components/input.mdx +367 -367
- package/src/pages/components/jumbotron.mdx +359 -359
- package/src/pages/components/modal.mdx +64 -64
- package/src/pages/components/post-header.mdx +60 -60
- package/src/pages/components/pr-code.mdx +65 -65
- package/src/pages/components/product-number.mdx +58 -58
- package/src/pages/components/product-tile.mdx +51 -51
- package/src/pages/components/quote.mdx +33 -33
- package/src/pages/components/slimbanner.mdx +35 -35
- package/src/pages/components/table.mdx +108 -108
- package/src/pages/core/colors.mdx +10 -10
- package/src/pages/core/grid.mdx +89 -89
- package/src/pages/core/introduction.mdx +77 -77
- package/src/pages/core/shadows.astro +20 -20
- package/src/pages/core/typography.astro +49 -49
- package/src/pages/index.astro +130 -130
- package/src/pages/patterns/introduction.mdx +60 -60
- package/src/pwa.ts +12 -12
- package/src/styles/_variables.scss +70 -70
- package/src/styles/base/base.css +184 -184
- package/src/styles/base/grid.css +92 -92
- package/src/styles/base/typography.css +70 -70
- package/src/styles/content.css +73 -73
- package/src/styles/main.css +7 -7
- package/src/types/Product.ts +31 -31
- package/src/types/astro.d.ts +3 -3
- package/src/utils/product/getPriceFormatted.ts +15 -15
- package/src/utils/product/getProductChecklist.ts +17 -17
- package/src/utils/product/useFormatProductNumber.ts +41 -41
- package/src/utils/seo/getShorterDescription.ts +14 -14
- package/src/utils/text/formatDate.ts +5 -5
- package/src/utils/text/formatLocaleNumber.ts +6 -6
- package/src/utils/text/formatPad.ts +12 -12
- package/src/utils/text/getNumberFormatted.ts +33 -33
- package/src/utils/text/getTranslatedLink.ts +5 -5
- package/src/utils/text.ts +19 -19
- package/tailwind.config.cjs +8 -8
- package/tsconfig.json +28 -28
- package/uno-config/index.ts +232 -232
- package/uno-config/theme/breakpoints.ts +9 -9
- package/uno-config/theme/colors.ts +64 -64
- package/uno-config/theme/dimensions.ts +17 -17
- package/uno-config/theme/effects.ts +14 -14
- package/uno-config/theme/grid.ts +10 -10
- package/uno-config/theme/index.ts +28 -28
- package/uno-config/theme/shortcuts/buttons.ts +53 -53
- package/uno-config/theme/shortcuts/components.ts +92 -92
- package/uno-config/theme/shortcuts/index.ts +20 -20
- package/uno-config/theme/shortcuts/layout.ts +64 -64
- package/uno-config/theme/typography.ts +29 -29
- package/uno.config.ts +2 -2
|
@@ -1,62 +1,62 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="relative flex" title="FUCK PUTIN! FUCK RUZZIA!">
|
|
3
|
-
<div i-mdi:tank class="inline-block bg-ukraine mr-1 mt-0.5" />
|
|
4
|
-
<div i-mdi:tank class="inline-block bg-ukraine mr-1 mt-0.5" />
|
|
5
|
-
<div i-mdi:tank class="inline-block bg-ukraine mr-5 mt-0.5" />
|
|
6
|
-
<div class="relative">
|
|
7
|
-
<div class="inline-block absolute" i-noto-v1:flag-for-flag-russia />
|
|
8
|
-
<div i-emojione:fire class="inline-block absolute -mt-1 animate-ping animate-pulseR" />
|
|
9
|
-
</div>
|
|
10
|
-
<div class="absolute left-0 animate-bull animate-bull--1 -mt-1">
|
|
11
|
-
<div i-mdi:bullet class="rotate-90 inline-block bg-yellow " />
|
|
12
|
-
</div>
|
|
13
|
-
<div class="absolute left-0 animate-bull animate-bull animate-bull--2 -mt-1">
|
|
14
|
-
<div i-mdi:bullet class="rotate-90 inline-block bg-yellow " />
|
|
15
|
-
</div>
|
|
16
|
-
<div class="absolute left-0 animate-bull animate-bull--3 -mt-1">
|
|
17
|
-
<div i-mdi:bullet class="rotate-90 inline-block bg-yellow " />
|
|
18
|
-
</div>
|
|
19
|
-
</div>
|
|
20
|
-
</template>
|
|
21
|
-
|
|
22
|
-
<style >
|
|
23
|
-
.bg-ukraine {
|
|
24
|
-
background: linear-gradient(180deg, #0066cc 56%, #ffcc00 44%); }
|
|
25
|
-
|
|
26
|
-
.animate-bull {
|
|
27
|
-
top: -2px;
|
|
28
|
-
animation-iteration-count: infinite; }
|
|
29
|
-
|
|
30
|
-
.animate-bull--1 {
|
|
31
|
-
animation-duration: 2s;
|
|
32
|
-
animation-name: AnimateBull1; }
|
|
33
|
-
|
|
34
|
-
.animate-bull--2 {
|
|
35
|
-
animation-duration: 1.332s;
|
|
36
|
-
animation-name: AnimateBull2;
|
|
37
|
-
animation-delay: 1s; }
|
|
38
|
-
|
|
39
|
-
.animate-bull--3 {
|
|
40
|
-
animation-duration: 0.666s;
|
|
41
|
-
animation-name: AnimateBull3;
|
|
42
|
-
animation-delay: 2s; }
|
|
43
|
-
|
|
44
|
-
@keyframes AnimateBull1 {
|
|
45
|
-
0% {
|
|
46
|
-
transform: translate(14px, 0px); }
|
|
47
|
-
100% {
|
|
48
|
-
transform: translate(86px, 0px); } }
|
|
49
|
-
|
|
50
|
-
@keyframes AnimateBull2 {
|
|
51
|
-
0% {
|
|
52
|
-
transform: translate(38px, 0px); }
|
|
53
|
-
100% {
|
|
54
|
-
transform: translate(80px, 0px); } }
|
|
55
|
-
|
|
56
|
-
@keyframes AnimateBull3 {
|
|
57
|
-
0% {
|
|
58
|
-
transform: translate(62px, 0px); }
|
|
59
|
-
100% {
|
|
60
|
-
transform: translate(88px, 0px); } }
|
|
61
|
-
|
|
62
|
-
</style>
|
|
1
|
+
<template>
|
|
2
|
+
<div class="relative flex" title="FUCK PUTIN! FUCK RUZZIA!">
|
|
3
|
+
<div i-mdi:tank class="inline-block bg-ukraine mr-1 mt-0.5" />
|
|
4
|
+
<div i-mdi:tank class="inline-block bg-ukraine mr-1 mt-0.5" />
|
|
5
|
+
<div i-mdi:tank class="inline-block bg-ukraine mr-5 mt-0.5" />
|
|
6
|
+
<div class="relative">
|
|
7
|
+
<div class="inline-block absolute" i-noto-v1:flag-for-flag-russia />
|
|
8
|
+
<div i-emojione:fire class="inline-block absolute -mt-1 animate-ping animate-pulseR" />
|
|
9
|
+
</div>
|
|
10
|
+
<div class="absolute left-0 animate-bull animate-bull--1 -mt-1">
|
|
11
|
+
<div i-mdi:bullet class="rotate-90 inline-block bg-yellow " />
|
|
12
|
+
</div>
|
|
13
|
+
<div class="absolute left-0 animate-bull animate-bull animate-bull--2 -mt-1">
|
|
14
|
+
<div i-mdi:bullet class="rotate-90 inline-block bg-yellow " />
|
|
15
|
+
</div>
|
|
16
|
+
<div class="absolute left-0 animate-bull animate-bull--3 -mt-1">
|
|
17
|
+
<div i-mdi:bullet class="rotate-90 inline-block bg-yellow " />
|
|
18
|
+
</div>
|
|
19
|
+
</div>
|
|
20
|
+
</template>
|
|
21
|
+
|
|
22
|
+
<style >
|
|
23
|
+
.bg-ukraine {
|
|
24
|
+
background: linear-gradient(180deg, #0066cc 56%, #ffcc00 44%); }
|
|
25
|
+
|
|
26
|
+
.animate-bull {
|
|
27
|
+
top: -2px;
|
|
28
|
+
animation-iteration-count: infinite; }
|
|
29
|
+
|
|
30
|
+
.animate-bull--1 {
|
|
31
|
+
animation-duration: 2s;
|
|
32
|
+
animation-name: AnimateBull1; }
|
|
33
|
+
|
|
34
|
+
.animate-bull--2 {
|
|
35
|
+
animation-duration: 1.332s;
|
|
36
|
+
animation-name: AnimateBull2;
|
|
37
|
+
animation-delay: 1s; }
|
|
38
|
+
|
|
39
|
+
.animate-bull--3 {
|
|
40
|
+
animation-duration: 0.666s;
|
|
41
|
+
animation-name: AnimateBull3;
|
|
42
|
+
animation-delay: 2s; }
|
|
43
|
+
|
|
44
|
+
@keyframes AnimateBull1 {
|
|
45
|
+
0% {
|
|
46
|
+
transform: translate(14px, 0px); }
|
|
47
|
+
100% {
|
|
48
|
+
transform: translate(86px, 0px); } }
|
|
49
|
+
|
|
50
|
+
@keyframes AnimateBull2 {
|
|
51
|
+
0% {
|
|
52
|
+
transform: translate(38px, 0px); }
|
|
53
|
+
100% {
|
|
54
|
+
transform: translate(80px, 0px); } }
|
|
55
|
+
|
|
56
|
+
@keyframes AnimateBull3 {
|
|
57
|
+
0% {
|
|
58
|
+
transform: translate(62px, 0px); }
|
|
59
|
+
100% {
|
|
60
|
+
transform: translate(88px, 0px); } }
|
|
61
|
+
|
|
62
|
+
</style>
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
---
|
|
2
|
-
|
|
3
|
-
const { class: className, handDrive, biggerText } = Astro.props;
|
|
4
|
-
import { t } from "i18next";
|
|
5
|
-
import { Image } from 'astro:assets';
|
|
6
|
-
import handDriveImage from "../assets/hand-drive.svg";
|
|
7
|
-
|
|
8
|
-
const getHandDriveName = (value: number) => {
|
|
9
|
-
if (value === 1)
|
|
10
|
-
return 'lhd'
|
|
11
|
-
|
|
12
|
-
else
|
|
13
|
-
return 'rhd'
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
const handDriveName = getHandDriveName(handDrive)
|
|
17
|
-
---
|
|
18
|
-
<div title={handDriveName.toUpperCase()} class="flex items-center" class:list={className}>
|
|
19
|
-
<Image src={handDriveImage} alt="infoObject.product.hand_drive" width={48} height={34} class={handDriveName} />
|
|
20
|
-
<div data-pagefind-filter={`${t('part.sw-position')}:${handDriveName.toUpperCase()}`}
|
|
21
|
-
class={`ml-2 order-0 ${!biggerText ? 'text-xxs md:text-xs' : 'order-0'}`}
|
|
22
|
-
set:html={t(`part.for-${handDriveName}`)}
|
|
23
|
-
/>
|
|
24
|
-
</div>
|
|
25
|
-
|
|
26
|
-
<style>
|
|
27
|
-
.rhd {
|
|
28
|
-
transform: scaleX(-1);
|
|
29
|
-
}
|
|
1
|
+
---
|
|
2
|
+
|
|
3
|
+
const { class: className, handDrive, biggerText } = Astro.props;
|
|
4
|
+
import { t } from "i18next";
|
|
5
|
+
import { Image } from 'astro:assets';
|
|
6
|
+
import handDriveImage from "../assets/hand-drive.svg";
|
|
7
|
+
|
|
8
|
+
const getHandDriveName = (value: number) => {
|
|
9
|
+
if (value === 1)
|
|
10
|
+
return 'lhd'
|
|
11
|
+
|
|
12
|
+
else
|
|
13
|
+
return 'rhd'
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
const handDriveName = getHandDriveName(handDrive)
|
|
17
|
+
---
|
|
18
|
+
<div title={handDriveName.toUpperCase()} class="flex items-center" class:list={className}>
|
|
19
|
+
<Image src={handDriveImage} alt="infoObject.product.hand_drive" width={48} height={34} class={handDriveName} />
|
|
20
|
+
<div data-pagefind-filter={`${t('part.sw-position')}:${handDriveName.toUpperCase()}`}
|
|
21
|
+
class={`ml-2 order-0 ${!biggerText ? 'text-xxs md:text-xs' : 'order-0'}`}
|
|
22
|
+
set:html={t(`part.for-${handDriveName}`)}
|
|
23
|
+
/>
|
|
24
|
+
</div>
|
|
25
|
+
|
|
26
|
+
<style>
|
|
27
|
+
.rhd {
|
|
28
|
+
transform: scaleX(-1);
|
|
29
|
+
}
|
|
30
30
|
</style>
|
|
@@ -1,210 +1,210 @@
|
|
|
1
|
-
---
|
|
2
|
-
import { SITE } from "../../config";
|
|
3
|
-
import SkipToContent from "./SkipToContent.astro";
|
|
4
|
-
import { MenuIcon } from "astro-navbar";
|
|
5
|
-
import Search from "astro-pagefind/components/Search";
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
<header
|
|
9
|
-
class="p-3 bg-blue-medium bg-opacity-10 backdrop-blur-md border-b text-slate-900"
|
|
10
|
-
>
|
|
11
|
-
<SkipToContent />
|
|
12
|
-
<nav
|
|
13
|
-
title="Top Navigation"
|
|
14
|
-
class="mx-auto flex justify-between items-center px-4"
|
|
15
|
-
>
|
|
16
|
-
<div class="flex flex-nowrap">
|
|
17
|
-
<MenuIcon class="w-4 h-4 text-gray-800 lg:hidden mr-4" />
|
|
18
|
-
<a class="text-2xl font-medium block font-textbold leading-none block my-auto text-blue-medium" href="/"> SDS</a>
|
|
19
|
-
<Search
|
|
20
|
-
transition:persist
|
|
21
|
-
transition:name="search-field"
|
|
22
|
-
className="search-container"
|
|
23
|
-
id="search"
|
|
24
|
-
uiOptions={{
|
|
25
|
-
showImages: false,
|
|
26
|
-
showFilters: false,
|
|
27
|
-
resetStyles: true,
|
|
28
|
-
}}
|
|
29
|
-
/>
|
|
30
|
-
</div>
|
|
31
|
-
<div class="flex gap-2">
|
|
32
|
-
{
|
|
33
|
-
SITE.github && (
|
|
34
|
-
<a
|
|
35
|
-
title="Github"
|
|
36
|
-
class="opacity-80 hover:opacity-100 hover:bg-slate-200 p-2 rounded-full transition-colors"
|
|
37
|
-
href={"https://github.com/" + SITE.github}
|
|
38
|
-
>
|
|
39
|
-
<img class="h-7" src="/github.svg" alt="github logo" />
|
|
40
|
-
</a>
|
|
41
|
-
)
|
|
42
|
-
}
|
|
43
|
-
{
|
|
44
|
-
SITE.linkedin && (
|
|
45
|
-
<a
|
|
46
|
-
title="linkedin"
|
|
47
|
-
class="opacity-80 hover:opacity-100 hover:bg-blue-50 p-2 rounded-full transition-colors"
|
|
48
|
-
href={"https://linkedin.com/in/" + SITE.linkedin}
|
|
49
|
-
>
|
|
50
|
-
<img class="h-7" src="/linkedin.svg" alt="linkedin logo" />
|
|
51
|
-
</a>
|
|
52
|
-
)
|
|
53
|
-
}
|
|
54
|
-
</div>
|
|
55
|
-
</nav>
|
|
56
|
-
</header>
|
|
57
|
-
|
|
58
|
-
<style is:global>
|
|
59
|
-
#search {
|
|
60
|
-
@apply ml-6;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
.search-container {
|
|
64
|
-
box-sizing: border-box;
|
|
65
|
-
@apply h-10 border-0 border-gray-800 rounded-3xl hidden md:block;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
.pagefind-ui {
|
|
69
|
-
@apply font-textlight text-base;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
.pagefind-ui__search-input {
|
|
73
|
-
height: 40px !important;
|
|
74
|
-
border: 0;
|
|
75
|
-
@apply rounded-none sm:rounded-3xl h-10 w-full;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
.pagefind-ui__result-excerpt,
|
|
79
|
-
.pagefind-ui__button {
|
|
80
|
-
font-size: 14px !important;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
.pagefind-ui__filter-name {
|
|
84
|
-
font-size: 12px !important;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
.pagefind-ui__drawer:not(.pagefind-ui__hidden) {
|
|
88
|
-
@apply p-4;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
.pagefind-ui__result-link {
|
|
92
|
-
color: var(--pagefind-ui-primary);
|
|
93
|
-
font-family: vw_headlight;
|
|
94
|
-
font-size: 1rem;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
.pagefind-ui__result-link::before {
|
|
98
|
-
top: 0;
|
|
99
|
-
bottom: 0;
|
|
100
|
-
left: 0;
|
|
101
|
-
right: 0;
|
|
102
|
-
content: "";
|
|
103
|
-
position: absolute;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
.pagefind-ui__result-excerpt {
|
|
107
|
-
color: var(--pagefind-ui-text);
|
|
108
|
-
order: 3;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
.pagefind-ui__drawer {
|
|
112
|
-
@apply bg-white md:fixed shadow-lg rounded-b-lg border-t border-t-transparent overflow-auto top-17 md:max-w-[calc(100vw-10%)] max-h-[calc(100vh-10%)] gap-[30px];
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
.pagefind-ui__search-clear {
|
|
116
|
-
height: 38px;
|
|
117
|
-
top: 0;
|
|
118
|
-
@apply sm:rounded-3xl;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
.pagefind-ui__search-input {
|
|
122
|
-
font-size: 1rem;
|
|
123
|
-
font-weight: 400;
|
|
124
|
-
padding: 0 2.5rem 2px;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
.pagefind-ui__form::before {
|
|
128
|
-
top: 14px;
|
|
129
|
-
left: 16px;
|
|
130
|
-
width: 14px;
|
|
131
|
-
height: 14px;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
.pagefind-ui__result {
|
|
135
|
-
padding: 0.875rem 0;
|
|
136
|
-
gap: 1rem;
|
|
137
|
-
@apply relative;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
.pagefind-ui__filter-block {
|
|
141
|
-
padding: 0.875rem 0;
|
|
142
|
-
border-width: 1px;
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
.pagefind-ui__filter-group {
|
|
146
|
-
gap: 0.5rem;
|
|
147
|
-
padding-top: 0.875rem;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
.pagefind-ui__filter-value {
|
|
151
|
-
gap: 10px;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
.pagefind-ui__filter-checkbox {
|
|
155
|
-
border-radius: 3px;
|
|
156
|
-
margin-top: 1px;
|
|
157
|
-
min-width: calc(16px * var(--pagefind-ui-scale));
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
.pagefind-ui__result-image {
|
|
161
|
-
@apply drop-shadow-sm w-full h-full object-contain rounded-none;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
.pagefind-ui__filter-panel {
|
|
165
|
-
@apply hidden;
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
.pagefind-ui__filter-label {
|
|
169
|
-
font-size: 0.9rem;
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
.pagefind-ui__button {
|
|
173
|
-
font-weight: 400;
|
|
174
|
-
height: 40px;
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
.pagefind-ui__result-tag {
|
|
178
|
-
background: inherit;
|
|
179
|
-
padding: 0;
|
|
180
|
-
color: #9ca3af;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
.pagefind-ui__result-thumb {
|
|
184
|
-
max-width: 120px;
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
.pagefind-ui__result-tags {
|
|
188
|
-
margin-top: 0.4rem;
|
|
189
|
-
order: 2;
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
.pagefind-ui__filter-name::after {
|
|
193
|
-
color: var(--pagefind-ui-primary);
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
.pagefind-ui__result-title {
|
|
197
|
-
font-size: inherit;
|
|
198
|
-
line-height: 1;
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
.pagefind-ui__filter-panel,
|
|
202
|
-
.pagefind-ui__results-area {
|
|
203
|
-
margin-top: 0;
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
.pagefind-ui__message {
|
|
207
|
-
padding: 0.875rem 0;
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
</style>
|
|
1
|
+
---
|
|
2
|
+
import { SITE } from "../../config";
|
|
3
|
+
import SkipToContent from "./SkipToContent.astro";
|
|
4
|
+
import { MenuIcon } from "astro-navbar";
|
|
5
|
+
import Search from "astro-pagefind/components/Search";
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
<header
|
|
9
|
+
class="p-3 bg-blue-medium bg-opacity-10 backdrop-blur-md border-b text-slate-900"
|
|
10
|
+
>
|
|
11
|
+
<SkipToContent />
|
|
12
|
+
<nav
|
|
13
|
+
title="Top Navigation"
|
|
14
|
+
class="mx-auto flex justify-between items-center px-4"
|
|
15
|
+
>
|
|
16
|
+
<div class="flex flex-nowrap">
|
|
17
|
+
<MenuIcon class="w-4 h-4 text-gray-800 lg:hidden mr-4" />
|
|
18
|
+
<a class="text-2xl font-medium block font-textbold leading-none block my-auto text-blue-medium" href="/"> SDS</a>
|
|
19
|
+
<Search
|
|
20
|
+
transition:persist
|
|
21
|
+
transition:name="search-field"
|
|
22
|
+
className="search-container"
|
|
23
|
+
id="search"
|
|
24
|
+
uiOptions={{
|
|
25
|
+
showImages: false,
|
|
26
|
+
showFilters: false,
|
|
27
|
+
resetStyles: true,
|
|
28
|
+
}}
|
|
29
|
+
/>
|
|
30
|
+
</div>
|
|
31
|
+
<div class="flex gap-2">
|
|
32
|
+
{
|
|
33
|
+
SITE.github && (
|
|
34
|
+
<a
|
|
35
|
+
title="Github"
|
|
36
|
+
class="opacity-80 hover:opacity-100 hover:bg-slate-200 p-2 rounded-full transition-colors"
|
|
37
|
+
href={"https://github.com/" + SITE.github}
|
|
38
|
+
>
|
|
39
|
+
<img class="h-7" src="/github.svg" alt="github logo" />
|
|
40
|
+
</a>
|
|
41
|
+
)
|
|
42
|
+
}
|
|
43
|
+
{
|
|
44
|
+
SITE.linkedin && (
|
|
45
|
+
<a
|
|
46
|
+
title="linkedin"
|
|
47
|
+
class="opacity-80 hover:opacity-100 hover:bg-blue-50 p-2 rounded-full transition-colors"
|
|
48
|
+
href={"https://linkedin.com/in/" + SITE.linkedin}
|
|
49
|
+
>
|
|
50
|
+
<img class="h-7" src="/linkedin.svg" alt="linkedin logo" />
|
|
51
|
+
</a>
|
|
52
|
+
)
|
|
53
|
+
}
|
|
54
|
+
</div>
|
|
55
|
+
</nav>
|
|
56
|
+
</header>
|
|
57
|
+
|
|
58
|
+
<style is:global>
|
|
59
|
+
#search {
|
|
60
|
+
@apply ml-6;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.search-container {
|
|
64
|
+
box-sizing: border-box;
|
|
65
|
+
@apply h-10 border-0 border-gray-800 rounded-3xl hidden md:block;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.pagefind-ui {
|
|
69
|
+
@apply font-textlight text-base;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.pagefind-ui__search-input {
|
|
73
|
+
height: 40px !important;
|
|
74
|
+
border: 0;
|
|
75
|
+
@apply rounded-none sm:rounded-3xl h-10 w-full;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.pagefind-ui__result-excerpt,
|
|
79
|
+
.pagefind-ui__button {
|
|
80
|
+
font-size: 14px !important;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.pagefind-ui__filter-name {
|
|
84
|
+
font-size: 12px !important;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.pagefind-ui__drawer:not(.pagefind-ui__hidden) {
|
|
88
|
+
@apply p-4;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.pagefind-ui__result-link {
|
|
92
|
+
color: var(--pagefind-ui-primary);
|
|
93
|
+
font-family: vw_headlight;
|
|
94
|
+
font-size: 1rem;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.pagefind-ui__result-link::before {
|
|
98
|
+
top: 0;
|
|
99
|
+
bottom: 0;
|
|
100
|
+
left: 0;
|
|
101
|
+
right: 0;
|
|
102
|
+
content: "";
|
|
103
|
+
position: absolute;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.pagefind-ui__result-excerpt {
|
|
107
|
+
color: var(--pagefind-ui-text);
|
|
108
|
+
order: 3;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.pagefind-ui__drawer {
|
|
112
|
+
@apply bg-white md:fixed shadow-lg rounded-b-lg border-t border-t-transparent overflow-auto top-17 md:max-w-[calc(100vw-10%)] max-h-[calc(100vh-10%)] gap-[30px];
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.pagefind-ui__search-clear {
|
|
116
|
+
height: 38px;
|
|
117
|
+
top: 0;
|
|
118
|
+
@apply sm:rounded-3xl;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.pagefind-ui__search-input {
|
|
122
|
+
font-size: 1rem;
|
|
123
|
+
font-weight: 400;
|
|
124
|
+
padding: 0 2.5rem 2px;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
.pagefind-ui__form::before {
|
|
128
|
+
top: 14px;
|
|
129
|
+
left: 16px;
|
|
130
|
+
width: 14px;
|
|
131
|
+
height: 14px;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
.pagefind-ui__result {
|
|
135
|
+
padding: 0.875rem 0;
|
|
136
|
+
gap: 1rem;
|
|
137
|
+
@apply relative;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
.pagefind-ui__filter-block {
|
|
141
|
+
padding: 0.875rem 0;
|
|
142
|
+
border-width: 1px;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
.pagefind-ui__filter-group {
|
|
146
|
+
gap: 0.5rem;
|
|
147
|
+
padding-top: 0.875rem;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.pagefind-ui__filter-value {
|
|
151
|
+
gap: 10px;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.pagefind-ui__filter-checkbox {
|
|
155
|
+
border-radius: 3px;
|
|
156
|
+
margin-top: 1px;
|
|
157
|
+
min-width: calc(16px * var(--pagefind-ui-scale));
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.pagefind-ui__result-image {
|
|
161
|
+
@apply drop-shadow-sm w-full h-full object-contain rounded-none;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
.pagefind-ui__filter-panel {
|
|
165
|
+
@apply hidden;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
.pagefind-ui__filter-label {
|
|
169
|
+
font-size: 0.9rem;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
.pagefind-ui__button {
|
|
173
|
+
font-weight: 400;
|
|
174
|
+
height: 40px;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
.pagefind-ui__result-tag {
|
|
178
|
+
background: inherit;
|
|
179
|
+
padding: 0;
|
|
180
|
+
color: #9ca3af;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
.pagefind-ui__result-thumb {
|
|
184
|
+
max-width: 120px;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
.pagefind-ui__result-tags {
|
|
188
|
+
margin-top: 0.4rem;
|
|
189
|
+
order: 2;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
.pagefind-ui__filter-name::after {
|
|
193
|
+
color: var(--pagefind-ui-primary);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
.pagefind-ui__result-title {
|
|
197
|
+
font-size: inherit;
|
|
198
|
+
line-height: 1;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.pagefind-ui__filter-panel,
|
|
202
|
+
.pagefind-ui__results-area {
|
|
203
|
+
margin-top: 0;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
.pagefind-ui__message {
|
|
207
|
+
padding: 0.875rem 0;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
</style>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<a href="#article" class="sr-only focus:not-sr-only skiplink"><span>Skip to Content</span></a>
|
|
1
|
+
<a href="#article" class="sr-only focus:not-sr-only skiplink"><span>Skip to Content</span></a>
|