spoko-design-system 0.8.0 → 0.8.1
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/.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 +309 -309
- package/index.ts +66 -66
- package/package.json +22 -22
- 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 +91 -91
- 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 +37 -37
- 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 +37 -37
- 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 +41 -41
- package/src/components/Post/PostCategories.vue +30 -30
- 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/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 +197 -130
- 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 +64 -64
- 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 +133 -133
- 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 +259 -259
- 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 +123 -123
- 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,64 +1,64 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Modal"
|
|
3
|
-
layout: "../../layouts/MainLayout.astro"
|
|
4
|
-
---
|
|
5
|
-
import Modal from '../../components/Modal.astro'
|
|
6
|
-
import Button from '../../components/Button.vue'
|
|
7
|
-
import { Icon } from 'astro-icon/components';
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
# Modal
|
|
11
|
-
|
|
12
|
-
Native modal window based on `<dialog>` tag with `::backdrop` CSS pseudo-element (pure CSS3 modal window).
|
|
13
|
-
#
|
|
14
|
-
**Documentation:**
|
|
15
|
-
|
|
16
|
-
- https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog
|
|
17
|
-
- https://developer.mozilla.org/en-US/docs/Web/CSS/::backdrop
|
|
18
|
-
|
|
19
|
-
## Modal window
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
<div class="component-preview">
|
|
23
|
-
<Modal id="dialog" open="Open modal">
|
|
24
|
-
<main slot="main">
|
|
25
|
-
<p>Some extra content you would like here</p>
|
|
26
|
-
<hr />
|
|
27
|
-
</main>
|
|
28
|
-
<Button primary slot="close" class="mt-4">Close</Button>
|
|
29
|
-
</Modal>
|
|
30
|
-
</div>
|
|
31
|
-
|
|
32
|
-
```js
|
|
33
|
-
<Modal id="dialog" open="Open modal">
|
|
34
|
-
<main slot="main">
|
|
35
|
-
<p>Some extra content you would like here</p>
|
|
36
|
-
<hr />
|
|
37
|
-
<img width="60" height="80" src="/assets/logo.svg" alt="Astro logo">
|
|
38
|
-
</main>
|
|
39
|
-
<Button primary slot="close" class="mt-4">Close</Button>
|
|
40
|
-
</Modal>
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
## Modal with different close button
|
|
44
|
-
|
|
45
|
-
<div class="component-preview">
|
|
46
|
-
<Modal id="dialog2" open="Open modal">
|
|
47
|
-
<main slot="main">
|
|
48
|
-
<p>Some extra content you would like here</p>
|
|
49
|
-
</main>
|
|
50
|
-
<Button primary slot="close" class="mt-4"><Icon name="octicon:x-24" /></Button>
|
|
51
|
-
</Modal>
|
|
52
|
-
</div>
|
|
53
|
-
|
|
54
|
-
```js
|
|
55
|
-
<Modal id="dialog2" open="Open modal">
|
|
56
|
-
<main slot="main">
|
|
57
|
-
<p>Some extra content you would like here</p>
|
|
58
|
-
<img width="60" height="80" src="/assets/logo.svg" alt="Astro logo">
|
|
59
|
-
</main>
|
|
60
|
-
<Button primary slot="close" class="mt-4"><Icon name="octicon:x-24" /></Button>
|
|
61
|
-
</Modal>
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
|
|
1
|
+
---
|
|
2
|
+
title: "Modal"
|
|
3
|
+
layout: "../../layouts/MainLayout.astro"
|
|
4
|
+
---
|
|
5
|
+
import Modal from '../../components/Modal.astro'
|
|
6
|
+
import Button from '../../components/Button.vue'
|
|
7
|
+
import { Icon } from 'astro-icon/components';
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
# Modal
|
|
11
|
+
|
|
12
|
+
Native modal window based on `<dialog>` tag with `::backdrop` CSS pseudo-element (pure CSS3 modal window).
|
|
13
|
+
#
|
|
14
|
+
**Documentation:**
|
|
15
|
+
|
|
16
|
+
- https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog
|
|
17
|
+
- https://developer.mozilla.org/en-US/docs/Web/CSS/::backdrop
|
|
18
|
+
|
|
19
|
+
## Modal window
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
<div class="component-preview">
|
|
23
|
+
<Modal id="dialog" open="Open modal">
|
|
24
|
+
<main slot="main">
|
|
25
|
+
<p>Some extra content you would like here</p>
|
|
26
|
+
<hr />
|
|
27
|
+
</main>
|
|
28
|
+
<Button primary slot="close" class="mt-4">Close</Button>
|
|
29
|
+
</Modal>
|
|
30
|
+
</div>
|
|
31
|
+
|
|
32
|
+
```js
|
|
33
|
+
<Modal id="dialog" open="Open modal">
|
|
34
|
+
<main slot="main">
|
|
35
|
+
<p>Some extra content you would like here</p>
|
|
36
|
+
<hr />
|
|
37
|
+
<img width="60" height="80" src="/assets/logo.svg" alt="Astro logo">
|
|
38
|
+
</main>
|
|
39
|
+
<Button primary slot="close" class="mt-4">Close</Button>
|
|
40
|
+
</Modal>
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Modal with different close button
|
|
44
|
+
|
|
45
|
+
<div class="component-preview">
|
|
46
|
+
<Modal id="dialog2" open="Open modal">
|
|
47
|
+
<main slot="main">
|
|
48
|
+
<p>Some extra content you would like here</p>
|
|
49
|
+
</main>
|
|
50
|
+
<Button primary slot="close" class="mt-4"><Icon name="octicon:x-24" /></Button>
|
|
51
|
+
</Modal>
|
|
52
|
+
</div>
|
|
53
|
+
|
|
54
|
+
```js
|
|
55
|
+
<Modal id="dialog2" open="Open modal">
|
|
56
|
+
<main slot="main">
|
|
57
|
+
<p>Some extra content you would like here</p>
|
|
58
|
+
<img width="60" height="80" src="/assets/logo.svg" alt="Astro logo">
|
|
59
|
+
</main>
|
|
60
|
+
<Button primary slot="close" class="mt-4"><Icon name="octicon:x-24" /></Button>
|
|
61
|
+
</Modal>
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
|
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "PostHeader"
|
|
3
|
-
layout: "../../layouts/MainLayout.astro"
|
|
4
|
-
---
|
|
5
|
-
import PostHeader from '../../components/PostHeader.astro'
|
|
6
|
-
export const author = { firstName: 'Szymon', name: 'CNK' }
|
|
7
|
-
export const categories = [{"name":"Tools & garage accessories","uri":"#"}, {"name":"Lorem Ipsum","uri":"#"}]
|
|
8
|
-
export const date = "2023-07-13T01:35:03"
|
|
9
|
-
|
|
10
|
-
# PostHeader
|
|
11
|
-
|
|
12
|
-
WordPress PostHeader - post top component for WordPress Single Post template data like categories etc. comes from WP Rest API.
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
## PostHeader with some content for WordPress single page template
|
|
16
|
-
|
|
17
|
-
<div class="component-preview">
|
|
18
|
-
<div class="relative w-full">
|
|
19
|
-
<PostHeader
|
|
20
|
-
author={author}
|
|
21
|
-
lang="en"
|
|
22
|
-
categories={categories}
|
|
23
|
-
title="Lorem Ipsum"
|
|
24
|
-
date={date}
|
|
25
|
-
image="https://img.freepik.com/free-photo/morskie-oko-tatry_1204-510.jpg?w=1380&t=st=1706297574~exp=1706298174~hmac=5c93e7317e7dbe602d5dcd708c5b9708ffabcb5e8ab2b7f2790941975dfcefe4"
|
|
26
|
-
/>
|
|
27
|
-
</div>
|
|
28
|
-
</div>
|
|
29
|
-
|
|
30
|
-
```js
|
|
31
|
-
<div class="relative">
|
|
32
|
-
<PostHeader
|
|
33
|
-
author={ { firstName: 'Szymon', name: 'CNK' } }
|
|
34
|
-
lang="en"
|
|
35
|
-
categories={ [{"name":"Tools & garage accessories","uri":"/category/garage/tools-garage-accessories/"}, , {"name":"Lorem Ipsum","uri":"#"}] }
|
|
36
|
-
title="Lorem Ipsum"
|
|
37
|
-
date="2023-07-13T01:35:03"
|
|
38
|
-
image="https://img.freepik.com/free-photo/morskie-oko-tatry_1204-510.jpg?w=1380&t=st=1706297574~exp=1706298174~hmac=5c93e7317e7dbe602d5dcd708c5b9708ffabcb5e8ab2b7f2790941975dfcefe4"
|
|
39
|
-
/>
|
|
40
|
-
</div>
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
## PostHeader - only title
|
|
45
|
-
|
|
46
|
-
<div class="component-preview">
|
|
47
|
-
<div class="relative w-full">
|
|
48
|
-
<PostHeader
|
|
49
|
-
title="Lorem Ipsum"
|
|
50
|
-
lang="en"
|
|
51
|
-
image="https://img.freepik.com/free-photo/painting-mountain-lake-with-mountain-background_188544-9126.jpg?w=1380&t=st=1706297408~exp=1706298008~hmac=34fe549db6a665d24269d38a8ecdd7eb3f82cfea6346c8a4039ee3c03b62aad8"
|
|
52
|
-
/>
|
|
53
|
-
</div>
|
|
54
|
-
</div>
|
|
55
|
-
|
|
56
|
-
```js
|
|
57
|
-
<div class="relative">
|
|
58
|
-
<PostHeader
|
|
59
|
-
title="Lorem Ipsum"
|
|
60
|
-
lang="en"
|
|
61
|
-
image="https://img.freepik.com/free-photo/painting-mountain-lake-with-mountain-background_188544-9126.jpg?w=1380&t=st=1706297408~exp=1706298008~hmac=34fe549db6a665d24269d38a8ecdd7eb3f82cfea6346c8a4039ee3c03b62aad8"
|
|
62
|
-
/>
|
|
63
|
-
</div>
|
|
64
|
-
```
|
|
1
|
+
---
|
|
2
|
+
title: "PostHeader"
|
|
3
|
+
layout: "../../layouts/MainLayout.astro"
|
|
4
|
+
---
|
|
5
|
+
import PostHeader from '../../components/PostHeader.astro'
|
|
6
|
+
export const author = { firstName: 'Szymon', name: 'CNK' }
|
|
7
|
+
export const categories = [{"name":"Tools & garage accessories","uri":"#"}, {"name":"Lorem Ipsum","uri":"#"}]
|
|
8
|
+
export const date = "2023-07-13T01:35:03"
|
|
9
|
+
|
|
10
|
+
# PostHeader
|
|
11
|
+
|
|
12
|
+
WordPress PostHeader - post top component for WordPress Single Post template data like categories etc. comes from WP Rest API.
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
## PostHeader with some content for WordPress single page template
|
|
16
|
+
|
|
17
|
+
<div class="component-preview">
|
|
18
|
+
<div class="relative w-full">
|
|
19
|
+
<PostHeader
|
|
20
|
+
author={author}
|
|
21
|
+
lang="en"
|
|
22
|
+
categories={categories}
|
|
23
|
+
title="Lorem Ipsum"
|
|
24
|
+
date={date}
|
|
25
|
+
image="https://img.freepik.com/free-photo/morskie-oko-tatry_1204-510.jpg?w=1380&t=st=1706297574~exp=1706298174~hmac=5c93e7317e7dbe602d5dcd708c5b9708ffabcb5e8ab2b7f2790941975dfcefe4"
|
|
26
|
+
/>
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
|
|
30
|
+
```js
|
|
31
|
+
<div class="relative">
|
|
32
|
+
<PostHeader
|
|
33
|
+
author={ { firstName: 'Szymon', name: 'CNK' } }
|
|
34
|
+
lang="en"
|
|
35
|
+
categories={ [{"name":"Tools & garage accessories","uri":"/category/garage/tools-garage-accessories/"}, , {"name":"Lorem Ipsum","uri":"#"}] }
|
|
36
|
+
title="Lorem Ipsum"
|
|
37
|
+
date="2023-07-13T01:35:03"
|
|
38
|
+
image="https://img.freepik.com/free-photo/morskie-oko-tatry_1204-510.jpg?w=1380&t=st=1706297574~exp=1706298174~hmac=5c93e7317e7dbe602d5dcd708c5b9708ffabcb5e8ab2b7f2790941975dfcefe4"
|
|
39
|
+
/>
|
|
40
|
+
</div>
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
## PostHeader - only title
|
|
45
|
+
|
|
46
|
+
<div class="component-preview">
|
|
47
|
+
<div class="relative w-full">
|
|
48
|
+
<PostHeader
|
|
49
|
+
title="Lorem Ipsum"
|
|
50
|
+
lang="en"
|
|
51
|
+
image="https://img.freepik.com/free-photo/painting-mountain-lake-with-mountain-background_188544-9126.jpg?w=1380&t=st=1706297408~exp=1706298008~hmac=34fe549db6a665d24269d38a8ecdd7eb3f82cfea6346c8a4039ee3c03b62aad8"
|
|
52
|
+
/>
|
|
53
|
+
</div>
|
|
54
|
+
</div>
|
|
55
|
+
|
|
56
|
+
```js
|
|
57
|
+
<div class="relative">
|
|
58
|
+
<PostHeader
|
|
59
|
+
title="Lorem Ipsum"
|
|
60
|
+
lang="en"
|
|
61
|
+
image="https://img.freepik.com/free-photo/painting-mountain-lake-with-mountain-background_188544-9126.jpg?w=1380&t=st=1706297408~exp=1706298008~hmac=34fe549db6a665d24269d38a8ecdd7eb3f82cfea6346c8a4039ee3c03b62aad8"
|
|
62
|
+
/>
|
|
63
|
+
</div>
|
|
64
|
+
```
|
|
@@ -1,65 +1,65 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "PrCode"
|
|
3
|
-
layout: "../../layouts/MainLayout.astro"
|
|
4
|
-
---
|
|
5
|
-
import PrCode from '../../components/PrCode.vue'
|
|
6
|
-
import ProductCodes from '../../components/ProductCodes.vue'
|
|
7
|
-
|
|
8
|
-
# PR-Code
|
|
9
|
-
|
|
10
|
-
PR Code are Production Codes for all of the installed equipment in the vehicle and is used by manufacturers including VW, Audi, Seat, Skoda, Porsche, Lamborghini etc.
|
|
11
|
-
PR Codes contain 3 characters comprising of letters and numbers.
|
|
12
|
-
|
|
13
|
-
PR codes are located on vehicle´s build sticker that is located on first pages of cars warranty booklet or there should be one in a trunk as well usually under the carpet or in spare tire area.
|
|
14
|
-
|
|
15
|
-
They are important when purchasing spare parts as they provide information about the manufacturer, make, model, year of manufacture, and other vehicle details.
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
## PR-Code
|
|
20
|
-
Single PR-Code.
|
|
21
|
-
|
|
22
|
-
### import:
|
|
23
|
-
|
|
24
|
-
```js
|
|
25
|
-
import PrCode from 'spoko-design-system/src/components/PrCode.vue'
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
#
|
|
29
|
-
|
|
30
|
-
<div class="component-preview">
|
|
31
|
-
<div class="bg-white p-6 w-full">
|
|
32
|
-
<PrCode prcode="2JP" />
|
|
33
|
-
<PrCode prcode="1ZJ" />
|
|
34
|
-
</div>
|
|
35
|
-
</div>
|
|
36
|
-
|
|
37
|
-
```js
|
|
38
|
-
<PrCode prcode="2JP" />
|
|
39
|
-
<PrCode prcode="1ZJ" />
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
## PR-Codes List
|
|
46
|
-
Component to display list of pr codes from array.
|
|
47
|
-
|
|
48
|
-
### import:
|
|
49
|
-
|
|
50
|
-
```js
|
|
51
|
-
import ProductCodes from 'spoko-design-system/src/components/ProductCodes.vue'
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
#
|
|
55
|
-
|
|
56
|
-
<div class="component-preview">
|
|
57
|
-
<div class="bg-white p-6 w-full">
|
|
58
|
-
<ProductCodes prcodes={["2JP", "1ZJ"]} />
|
|
59
|
-
</div>
|
|
60
|
-
</div>
|
|
61
|
-
|
|
62
|
-
```js
|
|
63
|
-
<ProductCodes prcodes={["2JP", "1ZJ"]} />
|
|
64
|
-
```
|
|
65
|
-
|
|
1
|
+
---
|
|
2
|
+
title: "PrCode"
|
|
3
|
+
layout: "../../layouts/MainLayout.astro"
|
|
4
|
+
---
|
|
5
|
+
import PrCode from '../../components/PrCode.vue'
|
|
6
|
+
import ProductCodes from '../../components/ProductCodes.vue'
|
|
7
|
+
|
|
8
|
+
# PR-Code
|
|
9
|
+
|
|
10
|
+
PR Code are Production Codes for all of the installed equipment in the vehicle and is used by manufacturers including VW, Audi, Seat, Skoda, Porsche, Lamborghini etc.
|
|
11
|
+
PR Codes contain 3 characters comprising of letters and numbers.
|
|
12
|
+
|
|
13
|
+
PR codes are located on vehicle´s build sticker that is located on first pages of cars warranty booklet or there should be one in a trunk as well usually under the carpet or in spare tire area.
|
|
14
|
+
|
|
15
|
+
They are important when purchasing spare parts as they provide information about the manufacturer, make, model, year of manufacture, and other vehicle details.
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
## PR-Code
|
|
20
|
+
Single PR-Code.
|
|
21
|
+
|
|
22
|
+
### import:
|
|
23
|
+
|
|
24
|
+
```js
|
|
25
|
+
import PrCode from 'spoko-design-system/src/components/PrCode.vue'
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
#
|
|
29
|
+
|
|
30
|
+
<div class="component-preview">
|
|
31
|
+
<div class="bg-white p-6 w-full">
|
|
32
|
+
<PrCode prcode="2JP" />
|
|
33
|
+
<PrCode prcode="1ZJ" />
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
|
|
37
|
+
```js
|
|
38
|
+
<PrCode prcode="2JP" />
|
|
39
|
+
<PrCode prcode="1ZJ" />
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
## PR-Codes List
|
|
46
|
+
Component to display list of pr codes from array.
|
|
47
|
+
|
|
48
|
+
### import:
|
|
49
|
+
|
|
50
|
+
```js
|
|
51
|
+
import ProductCodes from 'spoko-design-system/src/components/ProductCodes.vue'
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
#
|
|
55
|
+
|
|
56
|
+
<div class="component-preview">
|
|
57
|
+
<div class="bg-white p-6 w-full">
|
|
58
|
+
<ProductCodes prcodes={["2JP", "1ZJ"]} />
|
|
59
|
+
</div>
|
|
60
|
+
</div>
|
|
61
|
+
|
|
62
|
+
```js
|
|
63
|
+
<ProductCodes prcodes={["2JP", "1ZJ"]} />
|
|
64
|
+
```
|
|
65
|
+
|
|
@@ -1,59 +1,59 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "ProductNumber"
|
|
3
|
-
layout: "../../layouts/MainLayout.astro"
|
|
4
|
-
productNumbers:
|
|
5
|
-
- "6R0920870F"
|
|
6
|
-
- "000051443F"
|
|
7
|
-
- "WHT005227"
|
|
8
|
-
- "N0385491"
|
|
9
|
-
---
|
|
10
|
-
import ProductNumber from '../../components/Product/ProductNumber.astro'
|
|
11
|
-
|
|
12
|
-
# ProductNumber
|
|
13
|
-
|
|
14
|
-
ProductNumber - with additional formatting adding spacing for Volkswagen product numbers + additional copy button for easier copying.
|
|
15
|
-
|
|
16
|
-
#
|
|
17
|
-
<div class="component-preview">
|
|
18
|
-
<div class="grid grid-cols-2 lg:grid-cols-4 gap-x-4 w-full bg-white p-y-5 px-4">
|
|
19
|
-
{frontmatter.productNumbers.map((number, index) => (
|
|
20
|
-
<ProductNumber
|
|
21
|
-
big={index === 0 || index === 1}
|
|
22
|
-
isPdp={index >= 1}
|
|
23
|
-
productNumber={number}
|
|
24
|
-
class="mb-2"
|
|
25
|
-
/>
|
|
26
|
-
))}
|
|
27
|
-
</div>
|
|
28
|
-
</div>
|
|
29
|
-
|
|
30
|
-
```js
|
|
31
|
-
<ProductNumber
|
|
32
|
-
small
|
|
33
|
-
productNumber="6R0920870F"
|
|
34
|
-
class="mb-2"
|
|
35
|
-
/>
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
<div class="component-preview">
|
|
39
|
-
<div class="grid grid-cols-2 lg:grid-cols-4 gap-x-4 w-full bg-white p-y-5 px-4">
|
|
40
|
-
{frontmatter.productNumbers.map((number, index) => (
|
|
41
|
-
<ProductNumber
|
|
42
|
-
big
|
|
43
|
-
productNumber={number}
|
|
44
|
-
class="mb-2"
|
|
45
|
-
/>
|
|
46
|
-
))}
|
|
47
|
-
</div>
|
|
48
|
-
</div>
|
|
49
|
-
|
|
50
|
-
<div class="component-preview">
|
|
51
|
-
<div class="grid grid-cols-2 lg:grid-cols-4 gap-x-4 w-full bg-white p-y-5 px-4">
|
|
52
|
-
{frontmatter.productNumbers.map((number, index) => (
|
|
53
|
-
<ProductNumber
|
|
54
|
-
productNumber={number}
|
|
55
|
-
class="mb-2"
|
|
56
|
-
/>
|
|
57
|
-
))}
|
|
58
|
-
</div>
|
|
1
|
+
---
|
|
2
|
+
title: "ProductNumber"
|
|
3
|
+
layout: "../../layouts/MainLayout.astro"
|
|
4
|
+
productNumbers:
|
|
5
|
+
- "6R0920870F"
|
|
6
|
+
- "000051443F"
|
|
7
|
+
- "WHT005227"
|
|
8
|
+
- "N0385491"
|
|
9
|
+
---
|
|
10
|
+
import ProductNumber from '../../components/Product/ProductNumber.astro'
|
|
11
|
+
|
|
12
|
+
# ProductNumber
|
|
13
|
+
|
|
14
|
+
ProductNumber - with additional formatting adding spacing for Volkswagen product numbers + additional copy button for easier copying.
|
|
15
|
+
|
|
16
|
+
#
|
|
17
|
+
<div class="component-preview">
|
|
18
|
+
<div class="grid grid-cols-2 lg:grid-cols-4 gap-x-4 w-full bg-white p-y-5 px-4">
|
|
19
|
+
{frontmatter.productNumbers.map((number, index) => (
|
|
20
|
+
<ProductNumber
|
|
21
|
+
big={index === 0 || index === 1}
|
|
22
|
+
isPdp={index >= 1}
|
|
23
|
+
productNumber={number}
|
|
24
|
+
class="mb-2"
|
|
25
|
+
/>
|
|
26
|
+
))}
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
|
|
30
|
+
```js
|
|
31
|
+
<ProductNumber
|
|
32
|
+
small
|
|
33
|
+
productNumber="6R0920870F"
|
|
34
|
+
class="mb-2"
|
|
35
|
+
/>
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
<div class="component-preview">
|
|
39
|
+
<div class="grid grid-cols-2 lg:grid-cols-4 gap-x-4 w-full bg-white p-y-5 px-4">
|
|
40
|
+
{frontmatter.productNumbers.map((number, index) => (
|
|
41
|
+
<ProductNumber
|
|
42
|
+
big
|
|
43
|
+
productNumber={number}
|
|
44
|
+
class="mb-2"
|
|
45
|
+
/>
|
|
46
|
+
))}
|
|
47
|
+
</div>
|
|
48
|
+
</div>
|
|
49
|
+
|
|
50
|
+
<div class="component-preview">
|
|
51
|
+
<div class="grid grid-cols-2 lg:grid-cols-4 gap-x-4 w-full bg-white p-y-5 px-4">
|
|
52
|
+
{frontmatter.productNumbers.map((number, index) => (
|
|
53
|
+
<ProductNumber
|
|
54
|
+
productNumber={number}
|
|
55
|
+
class="mb-2"
|
|
56
|
+
/>
|
|
57
|
+
))}
|
|
58
|
+
</div>
|
|
59
59
|
</div>
|
|
@@ -1,51 +1,51 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "ProductTile"
|
|
3
|
-
layout: "../../layouts/MainLayout.astro"
|
|
4
|
-
---
|
|
5
|
-
import ProductTile from '../../components/ProductTile.astro'
|
|
6
|
-
|
|
7
|
-
export const productObject = {
|
|
8
|
-
name: 'Combi-instrument MFA+',
|
|
9
|
-
url: 'https://google.com',
|
|
10
|
-
number: '6R0920870F',
|
|
11
|
-
photo: 'https://img.freepik.com/darmowe-wektory/tlo-retro-modeli-geometrycznych_52683-17902.jpg?w=1380&t=st=1706311337'
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
# ProductTile
|
|
15
|
-
|
|
16
|
-
ProductTile - product link component which can be used for carousels, section with related products, recently added etc.
|
|
17
|
-
|
|
18
|
-
It requires a container with a specific width - it's best to set it directly in the carousel's `<swiper-slide>` tag.
|
|
19
|
-
#
|
|
20
|
-
|
|
21
|
-
<div class="component-preview">
|
|
22
|
-
<div class="flex flex-wrap bg-white w-full p-4 pb-0">
|
|
23
|
-
|
|
24
|
-
<div class="flex flex-wrap sm:flex-nowrap content-between w-64 min-w-64 md:(w-96 min-w-96) ml-1 lg:ml-1.5 relative bg-white mb-4 underline-on-hover">
|
|
25
|
-
<ProductTile productObject={productObject} />
|
|
26
|
-
</div>
|
|
27
|
-
<div class="flex flex-wrap sm:flex-nowrap content-between w-64 min-w-64 md:(w-96 min-w-96) ml-1 lg:ml-1.5 relative bg-white mb-4 underline-on-hover">
|
|
28
|
-
<ProductTile productObject={productObject} />
|
|
29
|
-
</div>
|
|
30
|
-
<div class="flex flex-wrap sm:flex-nowrap content-between w-64 min-w-64 md:(w-96 min-w-96) ml-1 lg:ml-1.5 relative bg-white mb-4 underline-on-hover">
|
|
31
|
-
<ProductTile productObject={productObject} />
|
|
32
|
-
</div>
|
|
33
|
-
<div class="flex flex-wrap sm:flex-nowrap content-between w-64 min-w-64 md:(w-96 min-w-96) ml-1 lg:ml-1.5 relative bg-white mb-4 underline-on-hover">
|
|
34
|
-
<ProductTile productObject={productObject} />
|
|
35
|
-
</div>
|
|
36
|
-
<div class="flex flex-wrap sm:flex-nowrap content-between w-64 min-w-64 md:(w-96 min-w-96) ml-1 lg:ml-1.5 relative bg-white mb-4 underline-on-hover">
|
|
37
|
-
<ProductTile productObject={productObject} />
|
|
38
|
-
</div>
|
|
39
|
-
</div>
|
|
40
|
-
</div>
|
|
41
|
-
|
|
42
|
-
```js
|
|
43
|
-
export const productObject = {
|
|
44
|
-
name: 'Combi-instrument MFA+',
|
|
45
|
-
url: 'https://google.com',
|
|
46
|
-
number: '6R0920870F',
|
|
47
|
-
photo: 'https://img.freepik.com/darmowe-wektory/tlo-retro-modeli-geometrycznych_52683-17902.jpg?w=1380&t=st=1706311337'
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
<ProductTile productObject={productObject} />
|
|
51
|
-
```
|
|
1
|
+
---
|
|
2
|
+
title: "ProductTile"
|
|
3
|
+
layout: "../../layouts/MainLayout.astro"
|
|
4
|
+
---
|
|
5
|
+
import ProductTile from '../../components/ProductTile.astro'
|
|
6
|
+
|
|
7
|
+
export const productObject = {
|
|
8
|
+
name: 'Combi-instrument MFA+',
|
|
9
|
+
url: 'https://google.com',
|
|
10
|
+
number: '6R0920870F',
|
|
11
|
+
photo: 'https://img.freepik.com/darmowe-wektory/tlo-retro-modeli-geometrycznych_52683-17902.jpg?w=1380&t=st=1706311337'
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
# ProductTile
|
|
15
|
+
|
|
16
|
+
ProductTile - product link component which can be used for carousels, section with related products, recently added etc.
|
|
17
|
+
|
|
18
|
+
It requires a container with a specific width - it's best to set it directly in the carousel's `<swiper-slide>` tag.
|
|
19
|
+
#
|
|
20
|
+
|
|
21
|
+
<div class="component-preview">
|
|
22
|
+
<div class="flex flex-wrap bg-white w-full p-4 pb-0">
|
|
23
|
+
|
|
24
|
+
<div class="flex flex-wrap sm:flex-nowrap content-between w-64 min-w-64 md:(w-96 min-w-96) ml-1 lg:ml-1.5 relative bg-white mb-4 underline-on-hover">
|
|
25
|
+
<ProductTile productObject={productObject} />
|
|
26
|
+
</div>
|
|
27
|
+
<div class="flex flex-wrap sm:flex-nowrap content-between w-64 min-w-64 md:(w-96 min-w-96) ml-1 lg:ml-1.5 relative bg-white mb-4 underline-on-hover">
|
|
28
|
+
<ProductTile productObject={productObject} />
|
|
29
|
+
</div>
|
|
30
|
+
<div class="flex flex-wrap sm:flex-nowrap content-between w-64 min-w-64 md:(w-96 min-w-96) ml-1 lg:ml-1.5 relative bg-white mb-4 underline-on-hover">
|
|
31
|
+
<ProductTile productObject={productObject} />
|
|
32
|
+
</div>
|
|
33
|
+
<div class="flex flex-wrap sm:flex-nowrap content-between w-64 min-w-64 md:(w-96 min-w-96) ml-1 lg:ml-1.5 relative bg-white mb-4 underline-on-hover">
|
|
34
|
+
<ProductTile productObject={productObject} />
|
|
35
|
+
</div>
|
|
36
|
+
<div class="flex flex-wrap sm:flex-nowrap content-between w-64 min-w-64 md:(w-96 min-w-96) ml-1 lg:ml-1.5 relative bg-white mb-4 underline-on-hover">
|
|
37
|
+
<ProductTile productObject={productObject} />
|
|
38
|
+
</div>
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
|
|
42
|
+
```js
|
|
43
|
+
export const productObject = {
|
|
44
|
+
name: 'Combi-instrument MFA+',
|
|
45
|
+
url: 'https://google.com',
|
|
46
|
+
number: '6R0920870F',
|
|
47
|
+
photo: 'https://img.freepik.com/darmowe-wektory/tlo-retro-modeli-geometrycznych_52683-17902.jpg?w=1380&t=st=1706311337'
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
<ProductTile productObject={productObject} />
|
|
51
|
+
```
|