spoko-design-system 1.20.0 → 1.21.0
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/.claude/settings.json +48 -48
- package/.github/dependabot.yml +11 -11
- package/.github/todo.yml +3 -3
- package/.github/workflows/claude.yml +37 -37
- package/.github/workflows/code-quality.yml +72 -72
- package/.github/workflows/deploy.yml +43 -43
- package/.husky/README.md +41 -41
- package/.husky/commit-msg +1 -1
- package/.husky/pre-commit +40 -40
- package/.prettierignore +14 -14
- package/.prettierrc +30 -30
- package/.stackblitzrc +5 -5
- package/.vscode/extensions.json +4 -4
- package/.vscode/launch.json +11 -11
- package/.vscode/settings.json +21 -21
- package/CHANGELOG.md +470 -462
- package/CLAUDE.md +268 -268
- package/LICENSE +21 -21
- package/README.md +303 -303
- package/TOOLTIPS.md +236 -236
- package/astro.config.mjs +84 -84
- package/commitlint.config.js +3 -3
- package/dev-dist/sw.js +91 -91
- package/dev-dist/workbox-c676b6d3.js +3391 -3391
- package/eslint.config.js +70 -70
- package/icon.config.ts +348 -348
- package/index.ts +78 -78
- package/package.json +160 -160
- package/public/arrow-bottom.svg +7 -7
- 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/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/sonar-project.properties +26 -26
- package/src/components/Category/CategoriesCarousel.astro +3 -7
- package/src/pages/components/badges.mdx +57 -57
- package/src/pages/components/breadcrumbs.mdx +139 -139
- package/src/pages/components/buttons.mdx +359 -359
- 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 +207 -207
- 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 +78 -78
- package/src/pages/components/headline.mdx +337 -337
- package/src/pages/components/image.mdx +513 -513
- package/src/pages/components/input.mdx +367 -367
- package/src/pages/components/jumbotron.mdx +530 -530
- package/src/pages/components/modal.mdx +212 -212
- package/src/pages/components/post-header.mdx +64 -64
- package/src/pages/components/pr-code.mdx +213 -213
- package/src/pages/components/product-engine.mdx +418 -418
- 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 +260 -260
- package/src/pages/components/table.mdx +108 -108
- package/src/pages/core/colors.mdx +21 -21
- package/src/pages/core/grid.mdx +193 -193
- package/src/pages/core/introduction.mdx +77 -77
- package/src/pages/core/tooltips.mdx +491 -491
- package/src/pages/patterns/introduction.mdx +60 -60
- package/src/styles/_variables.scss +70 -70
- package/tailwind.config.cjs +8 -8
- package/tsconfig.json +28 -28
- package/uno-config/index.ts +269 -269
- package/uno-config/theme/breakpoints.ts +9 -9
- package/uno-config/theme/colors.ts +65 -65
- 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 +26 -26
- package/uno-config/theme/shortcuts/buttons.ts +53 -53
- package/uno-config/theme/shortcuts/components.ts +124 -124
- package/uno-config/theme/shortcuts/index.ts +20 -20
- package/uno-config/theme/shortcuts/jumbotron.ts +71 -71
- package/uno-config/theme/shortcuts/layout.ts +75 -75
- package/uno-config/theme/typography.ts +29 -29
- package/uno.config.ts +2 -2
|
@@ -1,60 +1,60 @@
|
|
|
1
|
-
---
|
|
2
|
-
layout: ../../layouts/MainLayout.astro
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
import Container from '../../components/layout/Container.astro'
|
|
6
|
-
import Header from '../../components/layout/Header.astro'
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
# Patterns
|
|
10
|
-
|
|
11
|
-
Common patterns for building interfaces.
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
## Container (max-w-screen-xl)
|
|
16
|
-
|
|
17
|
-
<div class="component-preview" style="display: block">
|
|
18
|
-
<Container class="bg-white">content</Container>
|
|
19
|
-
</div>
|
|
20
|
-
|
|
21
|
-
### Code
|
|
22
|
-
|
|
23
|
-
```html
|
|
24
|
-
<Container class="bg-white">content</Container>
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
## Container FullWidth (max-w-full)
|
|
29
|
-
|
|
30
|
-
<div class="component-preview" style="display: block">
|
|
31
|
-
<Container class="bg-white" isFullWidth>content</Container>
|
|
32
|
-
</div>
|
|
33
|
-
|
|
34
|
-
### Code
|
|
35
|
-
|
|
36
|
-
```html
|
|
37
|
-
<Container class="bg-white" isFullWidth>content</Container>
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
## Header
|
|
41
|
-
|
|
42
|
-
<div class="component-preview" style="display: block">
|
|
43
|
-
<Header class="static">
|
|
44
|
-
<div slot="logo" class="flex-shrink-0 flex items-center h-8">
|
|
45
|
-
<div class="bg-gray">LOGO</div>
|
|
46
|
-
</div>
|
|
47
|
-
<input type="text" slot="search" class="h-full w-full sm:w-52 md:w-64 border border-solid px-3 text-sm" placeholder="Search..."/>
|
|
48
|
-
</Header>
|
|
49
|
-
</div>
|
|
50
|
-
|
|
51
|
-
### Code
|
|
52
|
-
|
|
53
|
-
```html
|
|
54
|
-
<Header>
|
|
55
|
-
<div slot="logo" class="flex-shrink-0 flex items-center h-8">
|
|
56
|
-
<div class="bg-gray">LOGO</div>
|
|
57
|
-
</div>
|
|
58
|
-
<input type="text" slot="search" class="h-full w-full sm:w-52 md:w-64 border border-solid px-3 text-sm" placeholder="Search..."/>
|
|
59
|
-
</Header>
|
|
60
|
-
```
|
|
1
|
+
---
|
|
2
|
+
layout: ../../layouts/MainLayout.astro
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
import Container from '../../components/layout/Container.astro'
|
|
6
|
+
import Header from '../../components/layout/Header.astro'
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
# Patterns
|
|
10
|
+
|
|
11
|
+
Common patterns for building interfaces.
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
## Container (max-w-screen-xl)
|
|
16
|
+
|
|
17
|
+
<div class="component-preview" style="display: block">
|
|
18
|
+
<Container class="bg-white">content</Container>
|
|
19
|
+
</div>
|
|
20
|
+
|
|
21
|
+
### Code
|
|
22
|
+
|
|
23
|
+
```html
|
|
24
|
+
<Container class="bg-white">content</Container>
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
## Container FullWidth (max-w-full)
|
|
29
|
+
|
|
30
|
+
<div class="component-preview" style="display: block">
|
|
31
|
+
<Container class="bg-white" isFullWidth>content</Container>
|
|
32
|
+
</div>
|
|
33
|
+
|
|
34
|
+
### Code
|
|
35
|
+
|
|
36
|
+
```html
|
|
37
|
+
<Container class="bg-white" isFullWidth>content</Container>
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Header
|
|
41
|
+
|
|
42
|
+
<div class="component-preview" style="display: block">
|
|
43
|
+
<Header class="static">
|
|
44
|
+
<div slot="logo" class="flex-shrink-0 flex items-center h-8">
|
|
45
|
+
<div class="bg-gray">LOGO</div>
|
|
46
|
+
</div>
|
|
47
|
+
<input type="text" slot="search" class="h-full w-full sm:w-52 md:w-64 border border-solid px-3 text-sm" placeholder="Search..."/>
|
|
48
|
+
</Header>
|
|
49
|
+
</div>
|
|
50
|
+
|
|
51
|
+
### Code
|
|
52
|
+
|
|
53
|
+
```html
|
|
54
|
+
<Header>
|
|
55
|
+
<div slot="logo" class="flex-shrink-0 flex items-center h-8">
|
|
56
|
+
<div class="bg-gray">LOGO</div>
|
|
57
|
+
</div>
|
|
58
|
+
<input type="text" slot="search" class="h-full w-full sm:w-52 md:w-64 border border-solid px-3 text-sm" placeholder="Search..."/>
|
|
59
|
+
</Header>
|
|
60
|
+
```
|
|
@@ -1,70 +1,70 @@
|
|
|
1
|
-
@use "sass:map";
|
|
2
|
-
|
|
3
|
-
$white: #fff !default;
|
|
4
|
-
$gray-100: #F3F4F6;
|
|
5
|
-
$gray-200: #E5E7EB;
|
|
6
|
-
$gray-300: #B5BBC5;
|
|
7
|
-
$gray-400: #9CA3AF;
|
|
8
|
-
$slate-medium: #64748B!default;
|
|
9
|
-
$gray-600: #6c757d !default;
|
|
10
|
-
$gray-700: #495057 !default;
|
|
11
|
-
$gray-800: #343a40 !default;
|
|
12
|
-
$gray-900: #212529 !default;
|
|
13
|
-
$black: #000 !default;
|
|
14
|
-
|
|
15
|
-
$filter-label: #a8a8a8;
|
|
16
|
-
|
|
17
|
-
$bg-stylish: #F6F6F6;
|
|
18
|
-
$bg-highlighted: #E7E7E7;
|
|
19
|
-
$badge-dark: #202020;
|
|
20
|
-
|
|
21
|
-
// social media colors:
|
|
22
|
-
$facebook: #4267B2;
|
|
23
|
-
$youtube: #ff0000;
|
|
24
|
-
$ebay: #3665f3;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
$grays: () !default;
|
|
28
|
-
// stylelint-disable-next-line scss/dollar-variable-default
|
|
29
|
-
$grays: map.merge(
|
|
30
|
-
(
|
|
31
|
-
"100": $gray-100,
|
|
32
|
-
"200": $gray-200,
|
|
33
|
-
"300": $gray-300,
|
|
34
|
-
"400": $gray-400,
|
|
35
|
-
"500": $slate-medium,
|
|
36
|
-
"600": $gray-600,
|
|
37
|
-
"700": $gray-700,
|
|
38
|
-
"800": $gray-800,
|
|
39
|
-
"900": $gray-900
|
|
40
|
-
),
|
|
41
|
-
$grays
|
|
42
|
-
);
|
|
43
|
-
|
|
44
|
-
$lightblue: #ccecff;
|
|
45
|
-
$vwblue: #0786ba;
|
|
46
|
-
$vwblue2: #00b1eb;
|
|
47
|
-
$blue: #0099da; //#0070B2; //#007bff !default;
|
|
48
|
-
$darkblue: #00437A;
|
|
49
|
-
$verydarkblue: #001E50;
|
|
50
|
-
$indigo: #6610f2 !default;
|
|
51
|
-
$purple: #6f42c1 !default;
|
|
52
|
-
$pink: #e83e8c !default;
|
|
53
|
-
$red: #dc3545;//#e94e1b; //#dc3545 !default;
|
|
54
|
-
$orange: #ff5a00; //allegro//#f4831d; //#ff9700; // #fd7e14 !default;
|
|
55
|
-
$orange-darken: #e94d1a;
|
|
56
|
-
$yellow: #ffc107 !default;
|
|
57
|
-
$green: #28a745 !default;
|
|
58
|
-
$teal: #20c997 !default;
|
|
59
|
-
$cyan: #17a2b8 !default;
|
|
60
|
-
$grey: #797878 !default;
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
$primary: $blue; // $blue !default;
|
|
64
|
-
$secondary: $grey; //$gray-600; //$gray-600 !default;
|
|
65
|
-
$success: $green !default;
|
|
66
|
-
$info: $ebay;//$cyan !default;
|
|
67
|
-
$warning: $orange !default;
|
|
68
|
-
$danger: $red !default;
|
|
69
|
-
$light: $gray-100 !default;
|
|
70
|
-
$dark: $gray-900 !default;
|
|
1
|
+
@use "sass:map";
|
|
2
|
+
|
|
3
|
+
$white: #fff !default;
|
|
4
|
+
$gray-100: #F3F4F6;
|
|
5
|
+
$gray-200: #E5E7EB;
|
|
6
|
+
$gray-300: #B5BBC5;
|
|
7
|
+
$gray-400: #9CA3AF;
|
|
8
|
+
$slate-medium: #64748B!default;
|
|
9
|
+
$gray-600: #6c757d !default;
|
|
10
|
+
$gray-700: #495057 !default;
|
|
11
|
+
$gray-800: #343a40 !default;
|
|
12
|
+
$gray-900: #212529 !default;
|
|
13
|
+
$black: #000 !default;
|
|
14
|
+
|
|
15
|
+
$filter-label: #a8a8a8;
|
|
16
|
+
|
|
17
|
+
$bg-stylish: #F6F6F6;
|
|
18
|
+
$bg-highlighted: #E7E7E7;
|
|
19
|
+
$badge-dark: #202020;
|
|
20
|
+
|
|
21
|
+
// social media colors:
|
|
22
|
+
$facebook: #4267B2;
|
|
23
|
+
$youtube: #ff0000;
|
|
24
|
+
$ebay: #3665f3;
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
$grays: () !default;
|
|
28
|
+
// stylelint-disable-next-line scss/dollar-variable-default
|
|
29
|
+
$grays: map.merge(
|
|
30
|
+
(
|
|
31
|
+
"100": $gray-100,
|
|
32
|
+
"200": $gray-200,
|
|
33
|
+
"300": $gray-300,
|
|
34
|
+
"400": $gray-400,
|
|
35
|
+
"500": $slate-medium,
|
|
36
|
+
"600": $gray-600,
|
|
37
|
+
"700": $gray-700,
|
|
38
|
+
"800": $gray-800,
|
|
39
|
+
"900": $gray-900
|
|
40
|
+
),
|
|
41
|
+
$grays
|
|
42
|
+
);
|
|
43
|
+
|
|
44
|
+
$lightblue: #ccecff;
|
|
45
|
+
$vwblue: #0786ba;
|
|
46
|
+
$vwblue2: #00b1eb;
|
|
47
|
+
$blue: #0099da; //#0070B2; //#007bff !default;
|
|
48
|
+
$darkblue: #00437A;
|
|
49
|
+
$verydarkblue: #001E50;
|
|
50
|
+
$indigo: #6610f2 !default;
|
|
51
|
+
$purple: #6f42c1 !default;
|
|
52
|
+
$pink: #e83e8c !default;
|
|
53
|
+
$red: #dc3545;//#e94e1b; //#dc3545 !default;
|
|
54
|
+
$orange: #ff5a00; //allegro//#f4831d; //#ff9700; // #fd7e14 !default;
|
|
55
|
+
$orange-darken: #e94d1a;
|
|
56
|
+
$yellow: #ffc107 !default;
|
|
57
|
+
$green: #28a745 !default;
|
|
58
|
+
$teal: #20c997 !default;
|
|
59
|
+
$cyan: #17a2b8 !default;
|
|
60
|
+
$grey: #797878 !default;
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
$primary: $blue; // $blue !default;
|
|
64
|
+
$secondary: $grey; //$gray-600; //$gray-600 !default;
|
|
65
|
+
$success: $green !default;
|
|
66
|
+
$info: $ebay;//$cyan !default;
|
|
67
|
+
$warning: $orange !default;
|
|
68
|
+
$danger: $red !default;
|
|
69
|
+
$light: $gray-100 !default;
|
|
70
|
+
$dark: $gray-900 !default;
|
package/tailwind.config.cjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
module.exports = {
|
|
2
|
-
// darkMode: "class",
|
|
3
|
-
content: ["./src/**/*.{astro,html,js,jsx,svelte,ts,tsx,vue}"],
|
|
4
|
-
theme: {
|
|
5
|
-
extend: {},
|
|
6
|
-
},
|
|
7
|
-
plugins: [],
|
|
8
|
-
};
|
|
1
|
+
module.exports = {
|
|
2
|
+
// darkMode: "class",
|
|
3
|
+
content: ["./src/**/*.{astro,html,js,jsx,svelte,ts,tsx,vue}"],
|
|
4
|
+
theme: {
|
|
5
|
+
extend: {},
|
|
6
|
+
},
|
|
7
|
+
plugins: [],
|
|
8
|
+
};
|
package/tsconfig.json
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
{
|
|
2
|
-
"include": ["env.d.ts", "src/**/*", "src/**/*.vue", "src/**/*.astro", "src/**/*.d.ts", "*.ts"],
|
|
3
|
-
"compilerOptions": {
|
|
4
|
-
"baseUrl": "src",
|
|
5
|
-
|
|
6
|
-
// Enable JSON imports.
|
|
7
|
-
"resolveJsonModule": true,
|
|
8
|
-
|
|
9
|
-
// Enable stricter transpilation for better output.
|
|
10
|
-
"isolatedModules": true,
|
|
11
|
-
|
|
12
|
-
// Astro will directly run your TypeScript code, no transpilation needed.
|
|
13
|
-
"noEmit": true,
|
|
14
|
-
|
|
15
|
-
"target": "esnext",
|
|
16
|
-
"useDefineForClassFields": true,
|
|
17
|
-
"module": "esnext",
|
|
18
|
-
"moduleResolution": "node",
|
|
19
|
-
"jsx": "preserve",
|
|
20
|
-
"allowJs": true,
|
|
21
|
-
"types": ["vite/client", "vitest", "@vue/runtime-dom", "@astrojs/ts", "@astrojs/ts-plugin", "unplugin-vue-macros/macros-global", "unplugin-icons/types/astro"],
|
|
22
|
-
"paths": {
|
|
23
|
-
"@components/*": ["components/*"],
|
|
24
|
-
"@utils/*": ["utils/*"],
|
|
25
|
-
"@types/*": ["types/*"]
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
|
-
"exclude": ["dist", "node_modules"]
|
|
1
|
+
{
|
|
2
|
+
"include": ["env.d.ts", "src/**/*", "src/**/*.vue", "src/**/*.astro", "src/**/*.d.ts", "*.ts"],
|
|
3
|
+
"compilerOptions": {
|
|
4
|
+
"baseUrl": "src",
|
|
5
|
+
|
|
6
|
+
// Enable JSON imports.
|
|
7
|
+
"resolveJsonModule": true,
|
|
8
|
+
|
|
9
|
+
// Enable stricter transpilation for better output.
|
|
10
|
+
"isolatedModules": true,
|
|
11
|
+
|
|
12
|
+
// Astro will directly run your TypeScript code, no transpilation needed.
|
|
13
|
+
"noEmit": true,
|
|
14
|
+
|
|
15
|
+
"target": "esnext",
|
|
16
|
+
"useDefineForClassFields": true,
|
|
17
|
+
"module": "esnext",
|
|
18
|
+
"moduleResolution": "node",
|
|
19
|
+
"jsx": "preserve",
|
|
20
|
+
"allowJs": true,
|
|
21
|
+
"types": ["vite/client", "vitest", "@vue/runtime-dom", "@astrojs/ts", "@astrojs/ts-plugin", "unplugin-vue-macros/macros-global", "unplugin-icons/types/astro"],
|
|
22
|
+
"paths": {
|
|
23
|
+
"@components/*": ["components/*"],
|
|
24
|
+
"@utils/*": ["utils/*"],
|
|
25
|
+
"@types/*": ["types/*"]
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"exclude": ["dist", "node_modules"]
|
|
29
29
|
}
|