spoko-design-system 0.2.45 → 0.2.48

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.
Files changed (30) hide show
  1. package/index.ts +8 -0
  2. package/package.json +1 -1
  3. package/src/components/Breadcrumbs.vue +17 -20
  4. package/src/components/Category/CategoriesCarousel.astro +2 -2
  5. package/src/components/Category/CategoriesSidebar.astro +1 -1
  6. package/src/components/Category/CategoryDetails.astro +1 -1
  7. package/src/components/Category/CategorySection.astro +1 -1
  8. package/src/components/FeaturesList.vue +1 -1
  9. package/src/components/FuckRussia.vue +17 -35
  10. package/src/components/HandDrive.astro +1 -1
  11. package/src/components/Header/Header.astro +151 -155
  12. package/src/components/Headline.vue +1 -1
  13. package/src/components/Jumbatron.vue +1 -1
  14. package/src/components/Modal.astro +1 -1
  15. package/src/components/PostHeader.astro +1 -1
  16. package/src/components/PrCode.vue +111 -126
  17. package/src/components/Product/ProductCodes.vue +103 -96
  18. package/src/components/Product/ProductColors.vue +42 -0
  19. package/src/components/Product/ProductDetailName.vue +22 -0
  20. package/src/components/Product/ProductDetails.vue +99 -0
  21. package/src/components/Product/ProductDoc.vue +25 -0
  22. package/src/components/Product/ProductEngineType.vue +1 -1
  23. package/src/components/Product/ProductModel.vue +24 -0
  24. package/src/components/Product/ProductModels.vue +31 -0
  25. package/src/components/Product/ProductName.vue +15 -0
  26. package/src/components/Product/ProductPositions.vue +34 -0
  27. package/src/components/ProductDetailName.vue +2 -2
  28. package/src/components/ProductDetailsList.vue +1 -1
  29. package/src/components/layout/Header.astro +1 -1
  30. package/tsconfig.json +1 -1
package/index.ts CHANGED
@@ -16,6 +16,14 @@ export { default as FeaturesList } from './src/components/FeaturesList.vue';
16
16
  export { default as ProductCodes } from './src/components/ProductCodes.vue';
17
17
  export { default as ProductEngineType } from './src/components/Product/ProductEngineType.vue';
18
18
  export { default as ProductButton } from './src/components/Product/ProductButton.vue';
19
+ export { default as ProductColors } from './src/components/Product/ProductColors.vue';
20
+ export { default as ProductDetailName } from './src/components/Product/ProductDetailName.vue';
21
+ export { default as ProductDetails } from './src/components/Product/ProductDetails.vue';
22
+ export { default as ProductDoc } from './src/components/Product/ProductDoc.vue';
23
+ export { default as ProductModel } from './src/components/Product/ProductModel.vue';
24
+ export { default as ProductModels } from './src/components/Product/ProductModels.vue';
25
+ export { default as ProductName } from './src/components/Product/ProductName.vue';
26
+ export { default as ProductPositions } from './src/components/Product/ProductPositions.vue';
19
27
 
20
28
  export { default as CategoryLink } from './src/components/Category/CategoryLink.vue';
21
29
  export { default as CategorySidebarToggler } from './src/components/Category/CategorySidebarToggler.vue';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "spoko-design-system",
3
- "version": "0.2.45",
3
+ "version": "0.2.48",
4
4
  "private": false,
5
5
  "main": "./index.ts",
6
6
  "module": "./index.ts",
@@ -74,37 +74,34 @@ const isLast = (index: Number) => {
74
74
  </nav>
75
75
  </template>
76
76
 
77
- <style lang="scss" scoped>
78
- .breadcrumbs {
77
+ <style scoped>.breadcrumbs {
79
78
  list-style: none;
80
79
  font-size: 0.875rem;
81
80
  }
82
81
 
83
- .breadcrumb-item {
84
-
85
- &+.breadcrumb-item:before {
86
- @apply py-4.25 sm:py-1 px-1;
87
- display: inline-block;
88
- padding-right: .5rem;
89
- color: #bdbdbd;
90
- content: "/";
91
- }
82
+ .breadcrumb-item + .breadcrumb-item::before {
83
+ @apply py-4.25 sm:py-1 px-1;
84
+ display: inline-block;
85
+ padding-right: .5rem;
86
+ color: #bdbdbd;
87
+ content: "/";
88
+ }
92
89
 
93
- b {
94
- @apply hidden sm:inline font-normal;
95
- }
90
+ .breadcrumb-item b {
91
+ @apply hidden sm:inline font-normal;
96
92
  }
97
93
 
98
94
  .breadcrumb-link {
99
95
  border: 0;
100
96
  cursor: pointer;
97
+ }
101
98
 
102
- &--disabled {
103
- cursor: default;
99
+ .breadcrumb-link--disabled {
100
+ cursor: default;
101
+ }
104
102
 
105
- &:hover {
106
- color: inherit;
107
- }
108
- }
103
+ .breadcrumb-link--disabled:hover {
104
+ color: inherit;
109
105
  }
106
+
110
107
  </style>
@@ -73,13 +73,13 @@ const activeIndex = activeCategorySlug && categories ? categories.map(a => a.slu
73
73
  </swiper-container>
74
74
  <!-- </div> -->
75
75
 
76
- <style lang="scss">
76
+ <style >
77
77
  .active {
78
78
  @apply bg-blue-700 text-white bg-opacity-100;
79
79
 
80
80
  &:not(:hover) .cats-img {
81
81
  filter: invert(100%);
82
- // @apply filter-invert;
82
+ /* // @apply filter-invert; */
83
83
  }
84
84
 
85
85
  }
@@ -135,7 +135,7 @@ sidebar mb-4 fixed top-0 ease delay-100 flex-col ml-0 overflow-hidden z-40 sm:z-
135
135
  <div id="ga-sidebar"></div>
136
136
  </div>
137
137
 
138
- <style lang="scss" scoped>
138
+ <style scoped>
139
139
 
140
140
  .sidebar {
141
141
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- import CategorySidebarToggler from "@components/Category/CategorySidebarToggler.vue";
2
+ import CategorySidebarToggler from '@components/Category/CategorySidebarToggler.vue';
3
3
  import { Icon } from 'astro-icon/components';
4
4
  const { category, subcategory, subtitle, subsubtitle, titleSmall, locale } = Astro.props;
5
5
  import { t } from "i18next";
@@ -58,7 +58,7 @@ const categoryLink = subsubcategory ? createSubSubCatLink(locale, category.slug,
58
58
  </swiper-container>
59
59
  </div>
60
60
 
61
- <style lang="scss">
61
+ <style >
62
62
  .category-section {
63
63
  content-visibility: auto;
64
64
 
@@ -26,7 +26,7 @@ const props = defineProps({
26
26
  </template>
27
27
 
28
28
 
29
- <style lang="scss" scoped>
29
+ <style scoped>
30
30
  ul {
31
31
  @apply list-square pl-5;
32
32
 
@@ -19,62 +19,44 @@
19
19
  </div>
20
20
  </template>
21
21
 
22
- <style lang="scss">
22
+ <style >
23
23
  .bg-ukraine {
24
- background: linear-gradient(180deg, #0066cc 56%, rgba(255, 204, 0, 1) 44%);
25
- }
24
+ background: linear-gradient(180deg, #0066cc 56%, #ffcc00 44%); }
26
25
 
27
26
  .animate-bull {
28
27
  top: -2px;
29
- // @apply rotate-90;
30
-
31
- animation-iteration-count: infinite;
32
-
33
- &--1 {
28
+ animation-iteration-count: infinite; }
29
+
30
+ .animate-bull--1 {
34
31
  animation-duration: 2s;
35
- animation-name: AnimateBull1;
36
- }
32
+ animation-name: AnimateBull1; }
37
33
 
38
- &--2 {
34
+ .animate-bull--2 {
39
35
  animation-duration: 1.332s;
40
36
  animation-name: AnimateBull2;
41
- animation-delay: 1s;
42
- }
37
+ animation-delay: 1s; }
43
38
 
44
- &--3 {
39
+ .animate-bull--3 {
45
40
  animation-duration: 0.666s;
46
41
  animation-name: AnimateBull3;
47
- animation-delay: 2s;
48
- }
49
- }
42
+ animation-delay: 2s; }
50
43
 
51
44
  @keyframes AnimateBull1 {
52
45
  0% {
53
- transform: translate(14px, 0px);
54
- }
55
-
46
+ transform: translate(14px, 0px); }
56
47
  100% {
57
- transform: translate(86px, 0px);
58
- }
59
- }
48
+ transform: translate(86px, 0px); } }
60
49
 
61
50
  @keyframes AnimateBull2 {
62
51
  0% {
63
- transform: translate(38px, 0px);
64
- }
65
-
52
+ transform: translate(38px, 0px); }
66
53
  100% {
67
- transform: translate(80px, 0px);
68
- }
69
- }
54
+ transform: translate(80px, 0px); } }
70
55
 
71
56
  @keyframes AnimateBull3 {
72
57
  0% {
73
- transform: translate(62px, 0px);
74
- }
75
-
58
+ transform: translate(62px, 0px); }
76
59
  100% {
77
- transform: translate(88px, 0px);
78
- }
79
- }
60
+ transform: translate(88px, 0px); } }
61
+
80
62
  </style>
@@ -23,7 +23,7 @@ const handDriveName = getHandDriveName(handDrive)
23
23
  />
24
24
  </div>
25
25
 
26
- <style lang="scss">
26
+ <style>
27
27
  .rhd {
28
28
  transform: scaleX(-1);
29
29
  }
@@ -55,160 +55,156 @@ import Search from "astro-pagefind/components/Search";
55
55
  </nav>
56
56
  </header>
57
57
 
58
- <style lang="scss" is:global>
59
- #search {
60
- @apply ml-6;
61
-
62
- &.search-container {
63
- box-sizing: border-box;
64
- @apply h-10 border-0 border-gray-800 rounded-3xl hidden md:block;
65
- }
66
- .pagefind-ui {
67
- @apply font-textlight text-base;
68
-
69
- &__search-input {
70
- height: 40px !important;
71
- border: 0;
72
- @apply rounded-none sm-rounded-3xl h-10 w-full;
73
- }
74
-
75
- &__result-excerpt,
76
- __button {
77
- font-size: 14px !important;
78
- }
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
+ }
79
209
 
80
- &__filter-name {
81
- font-size: 12px !important;
82
- }
83
- &__drawer:not(.pagefind-ui__hidden) {
84
- @apply p-4;
85
- }
86
-
87
- &__result-link {
88
- color: var(--pagefind-ui-primary);
89
- // font-family: 'vw_headregular';
90
- font-family: vw_headlight;
91
- font-size: 1rem;
92
-
93
- &:before {
94
- top: 0;
95
- bottom: 0;
96
- left: 0;
97
- right: 0;
98
- content: "";
99
- position: absolute;
100
- }
101
- }
102
-
103
- &__result-excerpt {
104
- color: var(--pagefind-ui-text);
105
- order: 3;
106
- }
107
-
108
- &__drawer {
109
- @apply bg-white md-position-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%)];
110
- gap: 30px;
111
- }
112
-
113
- &__search-clear {
114
- height: 38px;
115
- top: 0;
116
- @apply sm-rounded-3xl;
117
- }
118
-
119
- &__search-input {
120
- font-size: 1rem;
121
- font-weight: 400;
122
- padding: 0 2.5rem 2px;
123
- }
124
-
125
- &__form {
126
- &:before {
127
- top: 14px;
128
- left: 16px;
129
- width: 14px;
130
- height: 14px;
131
- }
132
- }
133
-
134
- &__result {
135
- padding: 0.875rem 0;
136
- gap: 1rem;
137
- @apply position-relative;
138
- }
139
-
140
- &__filter-block {
141
- padding: 0.875rem 0;
142
- border-width: 1px;
143
- }
144
-
145
- &__filter-group {
146
- gap: 0.5rem;
147
- padding-top: 0.875rem;
148
- }
149
-
150
- &__filter-value {
151
- gap: 10px;
152
- }
153
-
154
- &__filter-checkbox {
155
- border-radius: 3px;
156
- margin-top: 1px;
157
- min-width: calc(16px * var(--pagefind-ui-scale));
158
- }
159
-
160
- &__result-image {
161
- @apply drop-shadow-sm w-full h-full object-contain rounded-none;
162
- }
163
-
164
- &__filter-panel {
165
- // min-width: 220px;
166
- @apply hidden;
167
- }
168
-
169
- &__filter-label {
170
- font-size: 0.9rem;
171
- }
172
-
173
- &__button {
174
- font-weight: 400;
175
- height: 40px;
176
- }
177
-
178
- &__result-tag {
179
- background: inherit;
180
- padding: 0;
181
- color: #9ca3af;
182
- }
183
-
184
- &__result-thumb {
185
- max-width: 120px;
186
- }
187
-
188
- &__result-tags {
189
- margin-top: 0.4rem;
190
- order: 2;
191
- }
192
-
193
- &__filter-name {
194
- &:after {
195
- color: var(--pagefind-ui-primary);
196
- }
197
- }
198
-
199
- &__result-title {
200
- font-size: inherit;
201
- line-height: 1;
202
- }
203
-
204
- &__filter-panel,
205
- &__results-area {
206
- margin-top: 0;
207
- }
208
-
209
- &__message {
210
- padding: 0.875rem 0;
211
- }
212
- }
213
- }
214
210
  </style>
@@ -27,7 +27,7 @@ const props = defineProps({
27
27
  </component>
28
28
  </template>
29
29
 
30
- <style lang="scss">
30
+ <style>
31
31
  .headline--underline {
32
32
  @apply relative pb-4;
33
33
 
@@ -32,7 +32,7 @@ const props = defineProps({
32
32
  </div>
33
33
  </header>
34
34
  </template>
35
- <style lang="scss">
35
+ <style>
36
36
  .bg-vw {
37
37
  background: radial-gradient(circle at 50% 85%,
38
38
  #00437A 0%,
@@ -3,7 +3,7 @@ const { id, open } = Astro.props;
3
3
  import Button from "../components/Button.vue";
4
4
  ---
5
5
 
6
- <style lang="scss">
6
+ <style >
7
7
  dialog {
8
8
  @apply fixed top-0 left-0 right-0 bottom-0;
9
9
 
@@ -52,7 +52,7 @@ import Date from "./Date.astro";
52
52
  </div>
53
53
  </header>
54
54
 
55
- <style lang="scss">
55
+ <style >
56
56
  .post-header {
57
57
  @apply flex relative items-center;
58
58
  min-height: 19vw;