@kitconcept/volto-light-theme 5.0.0 → 6.0.0-alpha.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/.changelog.draft +26 -10
- package/CHANGELOG.md +44 -0
- package/README.md +7 -367
- package/package.json +23 -10
- package/razzle.extend.js +38 -0
- package/src/components/Anontools/Anontools.jsx +1 -1
- package/src/components/Blocks/Button/schema.js +25 -5
- package/src/components/Blocks/EventMetadata/View.jsx +8 -7
- package/src/components/Blocks/Image/Edit.jsx +4 -6
- package/src/components/Blocks/Image/ImageSidebar.jsx +4 -2
- package/src/components/Blocks/Image/View.jsx +3 -6
- package/src/components/Blocks/Image/schema.js +37 -6
- package/src/components/Blocks/Listing/DefaultTemplate.jsx +3 -2
- package/src/components/Blocks/Listing/GridTemplate.jsx +4 -2
- package/src/components/Blocks/Listing/ImageGallery.jsx +2 -2
- package/src/components/Blocks/Listing/SummaryTemplate.jsx +3 -2
- package/src/components/Blocks/Search/components/SearchInput.jsx +1 -1
- package/src/components/Blocks/Separator/schema.js +59 -0
- package/src/components/Blocks/Slider/DefaultBody.jsx +4 -2
- package/src/components/Blocks/Teaser/schema.js +21 -1
- package/src/components/Blocks/schema.js +16 -15
- package/src/components/Breadcrumbs/Breadcrumbs.jsx +4 -3
- package/src/components/Footer/Footer.jsx +77 -27
- package/src/components/Header/Header.jsx +37 -30
- package/src/components/LanguageSelector/{LanguageSelector.js → LanguageSelector.jsx} +11 -7
- package/src/components/Logo/Logo.jsx +28 -22
- package/src/components/MobileNavigation/MobileNavigation.jsx +3 -2
- package/src/components/MobileNavigation/MobileToolsFooter.jsx +1 -1
- package/src/components/Navigation/Navigation.jsx +4 -3
- package/src/components/SearchWidget/IntranetSearchWidget.jsx +1 -1
- package/src/components/SearchWidget/SearchWidget.jsx +1 -1
- package/src/components/Theme/EventView.jsx +3 -2
- package/src/components/Theme/FileView.jsx +1 -1
- package/src/components/Theme/NewsItemView.jsx +1 -1
- package/src/components/Theming/Theming.tsx +52 -0
- package/src/components/Widgets/AlignWidget.jsx +2 -2
- package/src/components/Widgets/BackgroundColorWidget.tsx +18 -0
- package/src/components/Widgets/BlockAlignmentWidget.tsx +81 -0
- package/src/components/Widgets/BlockWidthWidget.tsx +94 -0
- package/src/components/Widgets/BlocksObjectWidget.tsx +333 -0
- package/src/components/Widgets/ButtonsWidget.tsx +68 -0
- package/src/components/Widgets/ColorPickerWidget.tsx +60 -0
- package/src/components/Widgets/FooterLinksWidget.tsx +106 -0
- package/src/components/Widgets/FooterLogosWidget.tsx +120 -0
- package/src/components/Widgets/ThemingColorPicker.tsx +33 -0
- package/src/config/blocks.tsx +352 -0
- package/src/config/classExtenders.ts +101 -0
- package/src/config/settings.ts +35 -0
- package/src/config/slots.ts +12 -0
- package/src/config/widgets.ts +31 -0
- package/src/customizations/volto/components/theme/View/RenderBlocks.jsx +97 -80
- package/src/customizations/volto/components/theme/View/RenderBlocks.test.jsx +16 -48
- package/src/helpers/helpers.test.ts +51 -0
- package/src/helpers/helpers.ts +48 -0
- package/src/index.ts +54 -0
- package/src/theme/_bgcolor-blocks-layout.scss +1127 -20
- package/src/theme/_footer.scss +8 -5
- package/src/theme/_header.scss +3 -8
- package/src/theme/_layout.scss +24 -7
- package/src/theme/_typo-custom.scss +1 -1
- package/src/theme/_variables.scss +95 -12
- package/src/theme/_widgets.scss +102 -0
- package/src/theme/blocks/_accordion.scss +2 -4
- package/src/theme/blocks/_button.scss +32 -31
- package/src/theme/blocks/_eventMetadata.scss +7 -0
- package/src/theme/blocks/_grid.scss +11 -36
- package/src/theme/blocks/_highlight.scss +1 -0
- package/src/theme/blocks/_image.scss +38 -17
- package/src/theme/blocks/_introduction.scss +16 -0
- package/src/theme/blocks/_listing.scss +1 -6
- package/src/theme/blocks/_search.scss +1 -23
- package/src/theme/blocks/_separator.scss +17 -20
- package/src/theme/blocks/_slider.scss +57 -56
- package/src/theme/blocks/_teaser.scss +3 -3
- package/src/theme/main.scss +1 -0
- package/src/transforms/to6.ts +94 -0
- package/tsconfig.json +33 -0
- package/.release-it.json +0 -31
- package/babel.config.js +0 -17
- package/build/messages/src/components/Anontools/Anontools.json +0 -10
- package/build/messages/src/components/Blocks/Button/schema.json +0 -6
- package/build/messages/src/components/Blocks/EventMetadata/View.json +0 -30
- package/build/messages/src/components/Blocks/Image/Edit.json +0 -10
- package/build/messages/src/components/Blocks/Image/ImageSidebar.json +0 -18
- package/build/messages/src/components/Blocks/Image/schema.json +0 -10
- package/build/messages/src/components/Blocks/Listing/ListingBody.json +0 -26
- package/build/messages/src/components/Blocks/Search/TopSideFacets.json +0 -10
- package/build/messages/src/components/Blocks/Search/components/SearchDetails.json +0 -10
- package/build/messages/src/components/Blocks/Search/components/SearchInput.json +0 -6
- package/build/messages/src/components/Blocks/Slider/DefaultBody.json +0 -18
- package/build/messages/src/components/Blocks/Slider/schema.json +0 -14
- package/build/messages/src/components/Blocks/schema.json +0 -6
- package/build/messages/src/components/Breadcrumbs/Breadcrumbs.json +0 -10
- package/build/messages/src/components/Footer/Footer.json +0 -30
- package/build/messages/src/components/Header/Header.json +0 -6
- package/build/messages/src/components/LanguageSelector/LanguageSelector.json +0 -6
- package/build/messages/src/components/Logo/Logo.json +0 -10
- package/build/messages/src/components/MobileNavigation/MobileNavigation.json +0 -26
- package/build/messages/src/components/Navigation/Navigation.json +0 -10
- package/build/messages/src/components/SearchWidget/IntranetSearchWidget.json +0 -14
- package/build/messages/src/components/SearchWidget/SearchWidget.json +0 -10
- package/build/messages/src/components/Theme/EventView.json +0 -6
- package/build/messages/src/components/Widgets/AlignWidget.json +0 -22
- package/build/messages/src/index.json +0 -10
- package/news/.gitkeep +0 -0
- package/src/components/Atoms/Container/Container.jsx +0 -32
- package/src/components/Atoms/README.md +0 -1
- package/src/components/Atoms/helpers.jsx +0 -9
- package/src/components/CQPolyfill.jsx +0 -9
- package/src/index.js +0 -367
- package/towncrier.toml +0 -33
- /package/src/components/Blocks/Slate/{ExtraAlignWrapper.js → ExtraAlignWrapper.jsx} +0 -0
|
@@ -4,16 +4,9 @@ figure {
|
|
|
4
4
|
margin: 0;
|
|
5
5
|
}
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
.block-editor-image.full figcaption,
|
|
9
|
-
.block.image.full figcaption {
|
|
7
|
+
.block.image.has--block-width--full figcaption {
|
|
10
8
|
padding-right: 25px;
|
|
11
9
|
padding-left: 25px;
|
|
12
|
-
|
|
13
|
-
@media only screen and (min-width: 1470px) {
|
|
14
|
-
padding-right: 0px;
|
|
15
|
-
padding-left: 0px;
|
|
16
|
-
}
|
|
17
10
|
}
|
|
18
11
|
|
|
19
12
|
.block.image {
|
|
@@ -28,14 +21,12 @@ figure {
|
|
|
28
21
|
margin-bottom: 0 !important;
|
|
29
22
|
}
|
|
30
23
|
|
|
31
|
-
&.
|
|
32
|
-
&.
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
// present padding bottom for every block
|
|
38
|
-
padding-top: $heading-text-top-spacing - $block-vertical-space;
|
|
24
|
+
&.has--block-width--default,
|
|
25
|
+
&.has--block-width--narrow,
|
|
26
|
+
&.has--block-width--full {
|
|
27
|
+
figure:not(.left, .right) {
|
|
28
|
+
margin-top: $spacing-large;
|
|
29
|
+
margin-bottom: $spacing-large;
|
|
39
30
|
}
|
|
40
31
|
}
|
|
41
32
|
|
|
@@ -43,6 +34,7 @@ figure {
|
|
|
43
34
|
img {
|
|
44
35
|
width: 100% !important;
|
|
45
36
|
height: auto;
|
|
37
|
+
aspect-ratio: var(--image-aspect-ratio, auto);
|
|
46
38
|
}
|
|
47
39
|
|
|
48
40
|
&.right {
|
|
@@ -114,7 +106,6 @@ figure {
|
|
|
114
106
|
|
|
115
107
|
&.center {
|
|
116
108
|
width: 100% !important;
|
|
117
|
-
margin-top: $spacing-large;
|
|
118
109
|
margin-right: auto !important;
|
|
119
110
|
margin-bottom: $spacing-large;
|
|
120
111
|
margin-left: auto !important;
|
|
@@ -378,3 +369,33 @@ figcaption {
|
|
|
378
369
|
}
|
|
379
370
|
}
|
|
380
371
|
}
|
|
372
|
+
|
|
373
|
+
// Image block overrides
|
|
374
|
+
#page-edit,
|
|
375
|
+
#page-add {
|
|
376
|
+
.block-editor-image figure.center {
|
|
377
|
+
@include variable-container-width();
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
.block-editor-image.default figure {
|
|
381
|
+
max-width: var(--default-container-width);
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
#page-document .blocks-group-wrapper > .block.image.align.center {
|
|
386
|
+
@include variable-container-width();
|
|
387
|
+
}
|
|
388
|
+
#page-document .blocks-group-wrapper > .block.image.align.center figure {
|
|
389
|
+
@include variable-container-width();
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
#page-document .blocks-group-wrapper {
|
|
393
|
+
& > .block.image.align.center.has--block-width--default {
|
|
394
|
+
// Unfortunately needed to have more specificity than the top one
|
|
395
|
+
// TODO: Remove when using layers and the BMv3
|
|
396
|
+
@include adjustMarginsToContainer($default-container-width);
|
|
397
|
+
}
|
|
398
|
+
& > .block.image.align.center.has--block-width--layout {
|
|
399
|
+
@include adjustMarginsToContainer($layout-container-width);
|
|
400
|
+
}
|
|
401
|
+
}
|
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
#page-document .block.introduction {
|
|
2
2
|
@include vertical-space-introduction();
|
|
3
|
+
|
|
4
|
+
& + .block.introduction {
|
|
5
|
+
margin-top: $spacing-medium;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
&:has(+ .block.introduction) {
|
|
9
|
+
margin-bottom: 0;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
&:has(+ .block.__button) {
|
|
13
|
+
margin-bottom: 0;
|
|
14
|
+
}
|
|
3
15
|
}
|
|
4
16
|
|
|
5
17
|
.block.introduction {
|
|
@@ -27,6 +39,10 @@
|
|
|
27
39
|
margin-bottom: $block-vertical-space;
|
|
28
40
|
}
|
|
29
41
|
|
|
42
|
+
.block-container {
|
|
43
|
+
@include default-container-width();
|
|
44
|
+
}
|
|
45
|
+
|
|
30
46
|
h2 {
|
|
31
47
|
@include highlight-title();
|
|
32
48
|
margin-bottom: $spacing-large;
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
&.next--is--__button {
|
|
8
8
|
.listing-item:last-child {
|
|
9
9
|
padding-bottom: 40px !important;
|
|
10
|
-
border-bottom: 1px solid
|
|
10
|
+
border-bottom: 1px solid vas(--theme-font-color, black);
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
|
|
@@ -57,7 +57,6 @@
|
|
|
57
57
|
a {
|
|
58
58
|
.listing-body {
|
|
59
59
|
h2 {
|
|
60
|
-
color: $black;
|
|
61
60
|
@include text-heading-h2();
|
|
62
61
|
}
|
|
63
62
|
p {
|
|
@@ -164,7 +163,6 @@
|
|
|
164
163
|
.card-container {
|
|
165
164
|
width: 100%;
|
|
166
165
|
height: 100% !important;
|
|
167
|
-
background-color: $lightgrey;
|
|
168
166
|
}
|
|
169
167
|
|
|
170
168
|
img.item-image {
|
|
@@ -183,7 +181,6 @@
|
|
|
183
181
|
.headline {
|
|
184
182
|
padding: 0 !important;
|
|
185
183
|
margin-bottom: 20px;
|
|
186
|
-
color: $black;
|
|
187
184
|
letter-spacing: 1px;
|
|
188
185
|
text-transform: uppercase;
|
|
189
186
|
@include headtitle1();
|
|
@@ -192,7 +189,6 @@
|
|
|
192
189
|
|
|
193
190
|
h2 {
|
|
194
191
|
margin: 0 0 20px 0;
|
|
195
|
-
color: $black;
|
|
196
192
|
@include text-heading-h3();
|
|
197
193
|
}
|
|
198
194
|
p {
|
|
@@ -263,7 +259,6 @@
|
|
|
263
259
|
display: block;
|
|
264
260
|
padding: 25px 0 0 0;
|
|
265
261
|
background: none;
|
|
266
|
-
color: #666;
|
|
267
262
|
font-size: 14px;
|
|
268
263
|
font-weight: 300;
|
|
269
264
|
line-height: 18px;
|
|
@@ -23,13 +23,8 @@
|
|
|
23
23
|
.listing-item {
|
|
24
24
|
h2,
|
|
25
25
|
h3 {
|
|
26
|
-
color: $black;
|
|
27
26
|
@include text-heading-h2();
|
|
28
27
|
}
|
|
29
|
-
&:last-child {
|
|
30
|
-
padding-bottom: 40px !important;
|
|
31
|
-
border-bottom: 1px solid $black !important;
|
|
32
|
-
}
|
|
33
28
|
}
|
|
34
29
|
|
|
35
30
|
h2.headline {
|
|
@@ -87,11 +82,9 @@
|
|
|
87
82
|
padding: 19px 0 19px 24px;
|
|
88
83
|
border: none;
|
|
89
84
|
background-color: transparent;
|
|
90
|
-
color: $black;
|
|
91
85
|
font-size: 24px;
|
|
92
86
|
|
|
93
87
|
&::placeholder {
|
|
94
|
-
color: $black;
|
|
95
88
|
opacity: 1;
|
|
96
89
|
}
|
|
97
90
|
}
|
|
@@ -102,7 +95,6 @@
|
|
|
102
95
|
top: 19px;
|
|
103
96
|
right: 24px;
|
|
104
97
|
padding-left: 14px;
|
|
105
|
-
background-color: $veryLightGrey !important;
|
|
106
98
|
|
|
107
99
|
svg {
|
|
108
100
|
width: 36px !important;
|
|
@@ -215,7 +207,7 @@
|
|
|
215
207
|
|
|
216
208
|
.react-select__option--is-selected {
|
|
217
209
|
svg {
|
|
218
|
-
fill: $black
|
|
210
|
+
fill: $black;
|
|
219
211
|
}
|
|
220
212
|
}
|
|
221
213
|
}
|
|
@@ -232,20 +224,6 @@
|
|
|
232
224
|
.sort-label {
|
|
233
225
|
display: none;
|
|
234
226
|
}
|
|
235
|
-
|
|
236
|
-
svg path {
|
|
237
|
-
fill: $black;
|
|
238
|
-
stroke: $black;
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
.active {
|
|
242
|
-
background-color: $black !important;
|
|
243
|
-
|
|
244
|
-
svg path {
|
|
245
|
-
fill: $white;
|
|
246
|
-
stroke: $white;
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
227
|
}
|
|
250
228
|
}
|
|
251
229
|
}
|
|
@@ -1,31 +1,28 @@
|
|
|
1
|
-
#page-document .block.separator
|
|
1
|
+
#page-document .block.separator,
|
|
2
|
+
#page-edit .block-editor-separator,
|
|
3
|
+
#page-add .block-editor-separator {
|
|
2
4
|
// cancel the original padding from the add-on
|
|
3
5
|
&:not(.inner):not([role='presentation']) {
|
|
4
6
|
padding: 0 !important;
|
|
5
7
|
}
|
|
6
8
|
|
|
7
|
-
&.has--
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
&.has--shortLine--true {
|
|
10
|
+
.line::after {
|
|
11
|
+
width: 165px;
|
|
12
|
+
}
|
|
11
13
|
}
|
|
12
14
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
+
.line {
|
|
16
|
+
display: grid;
|
|
17
|
+
max-width: var(--block-width) !important;
|
|
18
|
+
justify-content: var(--block-alignment);
|
|
19
|
+
@include variable-container-width();
|
|
15
20
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
.block.separator {
|
|
21
|
-
&.inner {
|
|
22
|
-
margin-right: auto;
|
|
23
|
-
margin-left: auto;
|
|
24
|
-
|
|
25
|
-
.block.separator {
|
|
26
|
-
margin-right: auto;
|
|
27
|
-
margin-left: auto;
|
|
28
|
-
}
|
|
21
|
+
&::after {
|
|
22
|
+
width: calc(100cqw - 2 * $horizontal-space-small-screens);
|
|
23
|
+
max-width: inherit;
|
|
29
24
|
}
|
|
30
25
|
}
|
|
26
|
+
|
|
27
|
+
@include vertical-space-separator();
|
|
31
28
|
}
|
|
@@ -30,6 +30,63 @@ $sliderImagesAspectRatio: var(--slider-images-aspect-ratio, 16/9);
|
|
|
30
30
|
}
|
|
31
31
|
.teaser-item {
|
|
32
32
|
padding-bottom: $spacing-medium;
|
|
33
|
+
|
|
34
|
+
.teaser-item-title {
|
|
35
|
+
position: absolute;
|
|
36
|
+
top: 50%;
|
|
37
|
+
width: 570px;
|
|
38
|
+
min-height: 321px;
|
|
39
|
+
padding: 60px 50px 60px 100px;
|
|
40
|
+
background: rgba(0, 0, 0, 0.75);
|
|
41
|
+
color: white;
|
|
42
|
+
transform: translateY(-50%);
|
|
43
|
+
|
|
44
|
+
@container (max-width: 1024px) {
|
|
45
|
+
padding: 30px 30px 30px 80px;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
@media only screen and (max-width: $computer-width) {
|
|
49
|
+
position: static;
|
|
50
|
+
width: 100%;
|
|
51
|
+
padding: 60px 20px;
|
|
52
|
+
background: $black;
|
|
53
|
+
transform: none;
|
|
54
|
+
}
|
|
55
|
+
&.has--slider--flagAlign--right {
|
|
56
|
+
right: 0;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.title {
|
|
60
|
+
.supertitle {
|
|
61
|
+
display: inline-block;
|
|
62
|
+
margin-bottom: 20px;
|
|
63
|
+
font-size: 14px;
|
|
64
|
+
font-weight: 700;
|
|
65
|
+
letter-spacing: 1px;
|
|
66
|
+
line-height: 18px;
|
|
67
|
+
text-transform: uppercase;
|
|
68
|
+
}
|
|
69
|
+
h2 {
|
|
70
|
+
@include text-heading-h2();
|
|
71
|
+
margin-top: 0px;
|
|
72
|
+
margin-bottom: $spacing-medium;
|
|
73
|
+
color: $white;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
p {
|
|
77
|
+
@include introduction();
|
|
78
|
+
display: -webkit-box;
|
|
79
|
+
overflow: hidden;
|
|
80
|
+
margin-bottom: 50px;
|
|
81
|
+
-webkit-box-orient: vertical;
|
|
82
|
+
color: $white;
|
|
83
|
+
-webkit-line-clamp: 5;
|
|
84
|
+
text-overflow: ellipsis;
|
|
85
|
+
@media only screen and (max-width: $computer-width) {
|
|
86
|
+
margin-bottom: $spacing-large;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
33
90
|
}
|
|
34
91
|
|
|
35
92
|
.slide-wrapper:not(.empty-slide) {
|
|
@@ -40,68 +97,12 @@ $sliderImagesAspectRatio: var(--slider-images-aspect-ratio, 16/9);
|
|
|
40
97
|
position: relative;
|
|
41
98
|
}
|
|
42
99
|
|
|
43
|
-
.teaser-item-title {
|
|
44
|
-
position: absolute;
|
|
45
|
-
top: 50%;
|
|
46
|
-
width: 570px;
|
|
47
|
-
min-height: 321px;
|
|
48
|
-
padding: 60px 50px 60px 100px;
|
|
49
|
-
background: rgba(0, 0, 0, 0.75);
|
|
50
|
-
color: #fff;
|
|
51
|
-
transform: translateY(-50%);
|
|
52
|
-
|
|
53
|
-
@container (max-width: 1024px) {
|
|
54
|
-
padding: 30px 30px 30px 80px;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
@media only screen and (max-width: $computer-width) {
|
|
58
|
-
position: static;
|
|
59
|
-
width: 100%;
|
|
60
|
-
padding: 60px 20px;
|
|
61
|
-
background: $black;
|
|
62
|
-
transform: none;
|
|
63
|
-
}
|
|
64
|
-
&.has--slider--flagAlign--right {
|
|
65
|
-
right: 0;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
.title {
|
|
69
|
-
.supertitle {
|
|
70
|
-
display: inline-block;
|
|
71
|
-
margin-bottom: 20px;
|
|
72
|
-
font-size: 14px;
|
|
73
|
-
font-weight: 700;
|
|
74
|
-
letter-spacing: 1px;
|
|
75
|
-
line-height: 18px;
|
|
76
|
-
text-transform: uppercase;
|
|
77
|
-
}
|
|
78
|
-
h2 {
|
|
79
|
-
@include text-heading-h2();
|
|
80
|
-
margin-top: 0px;
|
|
81
|
-
margin-bottom: $spacing-medium;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
p {
|
|
85
|
-
@include introduction();
|
|
86
|
-
display: -webkit-box;
|
|
87
|
-
overflow: hidden;
|
|
88
|
-
margin-bottom: 50px;
|
|
89
|
-
-webkit-box-orient: vertical;
|
|
90
|
-
-webkit-line-clamp: 5;
|
|
91
|
-
text-overflow: ellipsis;
|
|
92
|
-
@media only screen and (max-width: $computer-width) {
|
|
93
|
-
margin-bottom: $spacing-large;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
|
|
98
100
|
.ui.button {
|
|
99
101
|
display: initial;
|
|
100
102
|
padding: 8px 20px;
|
|
101
103
|
border: 1px solid currentColor;
|
|
102
104
|
border-radius: 0;
|
|
103
105
|
background-color: transparent;
|
|
104
|
-
color: inherit;
|
|
105
106
|
font-size: 16px;
|
|
106
107
|
font-weight: 900;
|
|
107
108
|
line-height: 20px;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Override the Image component `aspect-ratio`
|
|
2
2
|
.teaser-item .image-wrapper img {
|
|
3
|
-
aspect-ratio: $aspect-ratio !important;
|
|
3
|
+
aspect-ratio: var(--image-aspect-ratio, $aspect-ratio) !important;
|
|
4
4
|
}
|
|
5
5
|
|
|
6
6
|
// Block Teaser Standalone
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
.teaser-item
|
|
22
|
+
.teaser-item {
|
|
23
23
|
align-items: start;
|
|
24
24
|
padding-bottom: 40px; // same as vertical spacing in margin-bottom
|
|
25
25
|
border-bottom: 1px solid $black;
|
|
@@ -122,7 +122,7 @@
|
|
|
122
122
|
&.next--is--__button {
|
|
123
123
|
.teaser-item.default {
|
|
124
124
|
padding-bottom: 40px;
|
|
125
|
-
border-bottom: 1px solid
|
|
125
|
+
border-bottom: 1px solid;
|
|
126
126
|
}
|
|
127
127
|
}
|
|
128
128
|
}
|
package/src/theme/main.scss
CHANGED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import type { BlocksFormData } from '@plone/types';
|
|
2
|
+
import { findStyleByName } from '@plone/volto/helpers/Blocks/Blocks';
|
|
3
|
+
|
|
4
|
+
import config from '@plone/volto/registry';
|
|
5
|
+
|
|
6
|
+
function* visitBlocks(blocks) {
|
|
7
|
+
for (const key in blocks) {
|
|
8
|
+
if (blocks.hasOwnProperty(key)) {
|
|
9
|
+
const block = blocks[key];
|
|
10
|
+
yield block;
|
|
11
|
+
if (block.blocks) {
|
|
12
|
+
yield* visitBlocks(block.blocks);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export function migrateToVLT6ColorAndWidthModel(data: BlocksFormData) {
|
|
19
|
+
const NORMALIZED_WIDTHS = [
|
|
20
|
+
...config.blocks.widths,
|
|
21
|
+
{
|
|
22
|
+
style: {
|
|
23
|
+
'--block-width': 'var(--default-container-width)',
|
|
24
|
+
},
|
|
25
|
+
name: 'wide',
|
|
26
|
+
label: 'Default',
|
|
27
|
+
},
|
|
28
|
+
];
|
|
29
|
+
|
|
30
|
+
for (const block of visitBlocks(data.blocks)) {
|
|
31
|
+
if (block?.styles?.backgroundColor) {
|
|
32
|
+
if (block.styles.backgroundColor === 'transparent') {
|
|
33
|
+
block.styles.backgroundColor = 'default';
|
|
34
|
+
}
|
|
35
|
+
block.theme = block.styles.backgroundColor;
|
|
36
|
+
delete block.styles.backgroundColor;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
if (block['@type'] === '__button') {
|
|
40
|
+
block.styles = {
|
|
41
|
+
...block.styles,
|
|
42
|
+
'blockWidth:noprefix':
|
|
43
|
+
block.styles?.['blockWidth:noprefix'] ??
|
|
44
|
+
findStyleByName(
|
|
45
|
+
NORMALIZED_WIDTHS,
|
|
46
|
+
`${block.styles?.buttonAlign === 'wide' ? 'default' : 'narrow'}`,
|
|
47
|
+
),
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
delete block.styles.buttonAlign;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
if (block['@type'] === 'separator') {
|
|
54
|
+
block.styles = {
|
|
55
|
+
...block.styles,
|
|
56
|
+
shortLine:
|
|
57
|
+
block.styles?.['shortLine'] ?? block?.styles?.align === 'left'
|
|
58
|
+
? true
|
|
59
|
+
: false,
|
|
60
|
+
'align:noprefix': block.styles?.['align:noprefix'] ?? {
|
|
61
|
+
'--block-alignment': 'var(--align-left)',
|
|
62
|
+
},
|
|
63
|
+
'blockWidth:noprefix':
|
|
64
|
+
block.styles?.['blockWidth:noprefix'] ??
|
|
65
|
+
findStyleByName(
|
|
66
|
+
NORMALIZED_WIDTHS,
|
|
67
|
+
`${block.styles?.align === 'full' ? 'default' : 'narrow'}`,
|
|
68
|
+
),
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
delete block.styles.align;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
if (
|
|
75
|
+
block['@type'] === 'image' &&
|
|
76
|
+
!['left', 'right'].includes(block?.align)
|
|
77
|
+
) {
|
|
78
|
+
block.styles = {
|
|
79
|
+
...block.styles,
|
|
80
|
+
'blockWidth:noprefix':
|
|
81
|
+
block.styles?.['blockWidth:noprefix'] ??
|
|
82
|
+
findStyleByName(
|
|
83
|
+
NORMALIZED_WIDTHS,
|
|
84
|
+
block?.align === 'wide'
|
|
85
|
+
? 'default'
|
|
86
|
+
: block?.align === 'center'
|
|
87
|
+
? 'narrow'
|
|
88
|
+
: block.align,
|
|
89
|
+
),
|
|
90
|
+
};
|
|
91
|
+
block.align = 'center';
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"esModuleInterop": true,
|
|
4
|
+
"skipLibCheck": true,
|
|
5
|
+
"target": "es2022",
|
|
6
|
+
"allowJs": true,
|
|
7
|
+
"resolveJsonModule": true,
|
|
8
|
+
"moduleDetection": "force",
|
|
9
|
+
"isolatedModules": true,
|
|
10
|
+
"verbatimModuleSyntax": true,
|
|
11
|
+
"module": "preserve",
|
|
12
|
+
"noEmit": true,
|
|
13
|
+
"lib": ["es2022", "dom", "dom.iterable"],
|
|
14
|
+
"jsx": "react-jsx",
|
|
15
|
+
"paths": {
|
|
16
|
+
"@plone/volto/*": [
|
|
17
|
+
"../../core/packages/volto/src/*",
|
|
18
|
+
"../../../../core/packages/volto/src/*"
|
|
19
|
+
],
|
|
20
|
+
"@kitconcept/volto-light-theme/*": ["./src/*"]
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"include": ["src"],
|
|
24
|
+
"exclude": [
|
|
25
|
+
"node_modules",
|
|
26
|
+
"build",
|
|
27
|
+
"public",
|
|
28
|
+
"coverage",
|
|
29
|
+
"**/*.test.{js,jsx,ts,tsx}",
|
|
30
|
+
"**/*.spec.{js,jsx,ts,tsx}",
|
|
31
|
+
"**/*.stories.{js,jsx,ts,tsx}"
|
|
32
|
+
]
|
|
33
|
+
}
|
package/.release-it.json
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"plugins": {
|
|
3
|
-
"../../core/packages/scripts/prepublish.js": {}
|
|
4
|
-
},
|
|
5
|
-
"hooks": {
|
|
6
|
-
"after:bump": [
|
|
7
|
-
"pipx run towncrier build --draft --yes --version ${version} > .changelog.draft",
|
|
8
|
-
"pipx run towncrier build --yes --version ${version}",
|
|
9
|
-
"cp ../../README.md ./ && cp CHANGELOG.md ../../CHANGELOG.md",
|
|
10
|
-
"python3 -c 'import json; data = json.load(open(\"../../package.json\")); data[\"version\"] = \"${version}\"; json.dump(data, open(\"../../package.json\", \"w\"), indent=2)'",
|
|
11
|
-
"git add ../../CHANGELOG.md ../../package.json"
|
|
12
|
-
],
|
|
13
|
-
"after:release": "rm .changelog.draft"
|
|
14
|
-
},
|
|
15
|
-
"npm": {
|
|
16
|
-
"publish": false
|
|
17
|
-
},
|
|
18
|
-
"git": {
|
|
19
|
-
"changelog": "pipx run towncrier build --draft --yes --version 0.0.0",
|
|
20
|
-
"requireUpstream": false,
|
|
21
|
-
"requireCleanWorkingDir": false,
|
|
22
|
-
"commitMessage": "Release ${version}",
|
|
23
|
-
"tagName": "${version}",
|
|
24
|
-
"tagAnnotation": "Release ${version}"
|
|
25
|
-
},
|
|
26
|
-
"github": {
|
|
27
|
-
"release": true,
|
|
28
|
-
"releaseName": "${version}",
|
|
29
|
-
"releaseNotes": "cat .changelog.draft"
|
|
30
|
-
}
|
|
31
|
-
}
|
package/babel.config.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
module.exports = function (api) {
|
|
2
|
-
api.cache(true);
|
|
3
|
-
const presets = ['razzle'];
|
|
4
|
-
const plugins = [
|
|
5
|
-
[
|
|
6
|
-
'react-intl', // React Intl extractor, required for the whole i18n infrastructure to work
|
|
7
|
-
{
|
|
8
|
-
messagesDir: './build/messages/',
|
|
9
|
-
},
|
|
10
|
-
],
|
|
11
|
-
];
|
|
12
|
-
|
|
13
|
-
return {
|
|
14
|
-
plugins,
|
|
15
|
-
presets,
|
|
16
|
-
};
|
|
17
|
-
};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"id": "Start",
|
|
4
|
-
"defaultMessage": "Start"
|
|
5
|
-
},
|
|
6
|
-
{
|
|
7
|
-
"id": "End",
|
|
8
|
-
"defaultMessage": "End"
|
|
9
|
-
},
|
|
10
|
-
{
|
|
11
|
-
"id": "Location",
|
|
12
|
-
"defaultMessage": "Location"
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"id": "Website",
|
|
16
|
-
"defaultMessage": "Website"
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
"id": "Contact",
|
|
20
|
-
"defaultMessage": "Contact"
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
"id": "Phone",
|
|
24
|
-
"defaultMessage": "Phone"
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"id": "ICS-Download",
|
|
28
|
-
"defaultMessage": "ICS Download"
|
|
29
|
-
}
|
|
30
|
-
]
|