@ndla/ui 42.0.3 → 42.0.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/es/List/OrderedList.js +1 -1
- package/es/Programme/ProgrammeSubjects.js +7 -7
- package/es/ProgrammeCard/ProgrammeCard.js +11 -11
- package/es/all.css +1 -1
- package/es/locale/messages-en.js +4 -2
- package/es/locale/messages-nb.js +4 -2
- package/es/locale/messages-nn.js +4 -2
- package/es/locale/messages-se.js +4 -2
- package/es/locale/messages-sma.js +4 -2
- package/lib/List/OrderedList.js +1 -1
- package/lib/Programme/ProgrammeSubjects.d.ts +1 -1
- package/lib/Programme/ProgrammeSubjects.js +7 -7
- package/lib/ProgrammeCard/ProgrammeCard.d.ts +3 -3
- package/lib/ProgrammeCard/ProgrammeCard.js +11 -11
- package/lib/all.css +1 -1
- package/lib/locale/messages-en.d.ts +4 -2
- package/lib/locale/messages-en.js +4 -2
- package/lib/locale/messages-nb.d.ts +4 -2
- package/lib/locale/messages-nb.js +4 -2
- package/lib/locale/messages-nn.d.ts +4 -2
- package/lib/locale/messages-nn.js +4 -2
- package/lib/locale/messages-se.d.ts +4 -2
- package/lib/locale/messages-se.js +4 -2
- package/lib/locale/messages-sma.d.ts +4 -2
- package/lib/locale/messages-sma.js +4 -2
- package/package.json +2 -2
- package/src/List/OrderedList.tsx +36 -27
- package/src/Programme/ProgrammeSubjects.tsx +6 -6
- package/src/ProgrammeCard/ProgrammeCard.tsx +5 -5
- package/src/global/components/component.bodybox.scss +0 -16
- package/src/locale/messages-en.ts +4 -2
- package/src/locale/messages-nb.ts +4 -2
- package/src/locale/messages-nn.ts +4 -2
- package/src/locale/messages-se.ts +4 -2
- package/src/locale/messages-sma.ts +4 -2
|
@@ -262,9 +262,11 @@ declare const messages: {
|
|
|
262
262
|
contact: string;
|
|
263
263
|
help: string;
|
|
264
264
|
};
|
|
265
|
-
|
|
265
|
+
programmes: {
|
|
266
|
+
header: string;
|
|
267
|
+
description: string;
|
|
266
268
|
grades: string;
|
|
267
|
-
|
|
269
|
+
accordionHeader: string;
|
|
268
270
|
};
|
|
269
271
|
embed: {
|
|
270
272
|
conceptListError: string;
|
|
@@ -1264,9 +1264,11 @@ var messages = _objectSpread(_objectSpread({
|
|
|
1264
1264
|
contact: 'Contact',
|
|
1265
1265
|
help: 'Help'
|
|
1266
1266
|
},
|
|
1267
|
-
|
|
1267
|
+
programmes: {
|
|
1268
|
+
header: 'View our educational programmes',
|
|
1269
|
+
description: 'We strive to offer the best learning resources within traditional and new media.',
|
|
1268
1270
|
grades: 'Grades',
|
|
1269
|
-
|
|
1271
|
+
accordionHeader: 'All educational programmes'
|
|
1270
1272
|
},
|
|
1271
1273
|
embed: {
|
|
1272
1274
|
conceptListError: 'Failed to show concept list',
|
|
@@ -262,9 +262,11 @@ declare const messages: {
|
|
|
262
262
|
contact: string;
|
|
263
263
|
help: string;
|
|
264
264
|
};
|
|
265
|
-
|
|
265
|
+
programmes: {
|
|
266
|
+
header: string;
|
|
267
|
+
description: string;
|
|
266
268
|
grades: string;
|
|
267
|
-
|
|
269
|
+
accordionHeader: string;
|
|
268
270
|
};
|
|
269
271
|
embed: {
|
|
270
272
|
conceptListError: string;
|
|
@@ -1262,9 +1262,11 @@ var messages = _objectSpread(_objectSpread({
|
|
|
1262
1262
|
contact: 'Kontakt',
|
|
1263
1263
|
help: 'Hjelp'
|
|
1264
1264
|
},
|
|
1265
|
-
|
|
1265
|
+
programmes: {
|
|
1266
|
+
header: 'Se våre utdanningsprogram',
|
|
1267
|
+
description: 'Vi ønsker å tilby de beste læringsressursene innen tradisjonelle og nye medier.',
|
|
1266
1268
|
grades: 'Trinn',
|
|
1267
|
-
|
|
1269
|
+
accordionHeader: 'Alle utdanningsprogram'
|
|
1268
1270
|
},
|
|
1269
1271
|
embed: {
|
|
1270
1272
|
conceptListError: 'Klarte ikke å vise forklaringsliste',
|
|
@@ -262,9 +262,11 @@ declare const messages: {
|
|
|
262
262
|
contact: string;
|
|
263
263
|
help: string;
|
|
264
264
|
};
|
|
265
|
-
|
|
265
|
+
programmes: {
|
|
266
|
+
header: string;
|
|
267
|
+
description: string;
|
|
266
268
|
grades: string;
|
|
267
|
-
|
|
269
|
+
accordionHeader: string;
|
|
268
270
|
};
|
|
269
271
|
embed: {
|
|
270
272
|
conceptListError: string;
|
|
@@ -1262,9 +1262,11 @@ var messages = _objectSpread(_objectSpread({
|
|
|
1262
1262
|
contact: 'Kontakt',
|
|
1263
1263
|
help: 'Hjelp'
|
|
1264
1264
|
},
|
|
1265
|
-
|
|
1265
|
+
programmes: {
|
|
1266
|
+
header: 'Se våre utdanningsprogram',
|
|
1267
|
+
description: 'Vi ønsker å tilby dei beste læringsressursane innan tradisjonelle og nye media.',
|
|
1266
1268
|
grades: 'Trinn',
|
|
1267
|
-
|
|
1269
|
+
accordionHeader: 'Alle utdanningsprogram'
|
|
1268
1270
|
},
|
|
1269
1271
|
embed: {
|
|
1270
1272
|
conceptListError: 'Klarte ikkje å vise forklaringsliste',
|
|
@@ -262,9 +262,11 @@ declare const messages: {
|
|
|
262
262
|
contact: string;
|
|
263
263
|
help: string;
|
|
264
264
|
};
|
|
265
|
-
|
|
265
|
+
programmes: {
|
|
266
|
+
header: string;
|
|
267
|
+
description: string;
|
|
266
268
|
grades: string;
|
|
267
|
-
|
|
269
|
+
accordionHeader: string;
|
|
268
270
|
};
|
|
269
271
|
embed: {
|
|
270
272
|
conceptListError: string;
|
|
@@ -1262,9 +1262,11 @@ var messages = _objectSpread(_objectSpread({
|
|
|
1262
1262
|
contact: 'Váldde oktavuođa',
|
|
1263
1263
|
help: 'Veahket'
|
|
1264
1264
|
},
|
|
1265
|
-
|
|
1265
|
+
programmes: {
|
|
1266
|
+
header: 'Se våre utdanningsprogram',
|
|
1267
|
+
description: 'Vi ønsker å tilby de beste læringsressursene innen tradisjonelle og nye medier.',
|
|
1266
1268
|
grades: 'Ceahkki',
|
|
1267
|
-
|
|
1269
|
+
accordionHeader: 'Alle utdanningsprogram'
|
|
1268
1270
|
},
|
|
1269
1271
|
embed: {
|
|
1270
1272
|
conceptListError: 'Ii sáhttán čájehit čilgehuslisttu',
|
|
@@ -262,9 +262,11 @@ declare const messages: {
|
|
|
262
262
|
contact: string;
|
|
263
263
|
help: string;
|
|
264
264
|
};
|
|
265
|
-
|
|
265
|
+
programmes: {
|
|
266
|
+
header: string;
|
|
267
|
+
description: string;
|
|
266
268
|
grades: string;
|
|
267
|
-
|
|
269
|
+
accordionHeader: string;
|
|
268
270
|
};
|
|
269
271
|
embed: {
|
|
270
272
|
conceptListError: string;
|
|
@@ -1262,9 +1262,11 @@ var messages = _objectSpread(_objectSpread({
|
|
|
1262
1262
|
contact: 'Kontakt',
|
|
1263
1263
|
help: 'Hjelp'
|
|
1264
1264
|
},
|
|
1265
|
-
|
|
1265
|
+
programmes: {
|
|
1266
|
+
header: 'Se våre utdanningsprogram',
|
|
1267
|
+
description: 'Vi ønsker å tilby de beste læringsressursene innen tradisjonelle og nye medier.',
|
|
1266
1268
|
grades: 'Trinn',
|
|
1267
|
-
|
|
1269
|
+
accordionHeader: 'Alle utdanningsprogram'
|
|
1268
1270
|
},
|
|
1269
1271
|
embed: {
|
|
1270
1272
|
conceptListError: 'Klarte ikkje å vise forklaringsliste',
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ndla/ui",
|
|
3
|
-
"version": "42.0.
|
|
3
|
+
"version": "42.0.5",
|
|
4
4
|
"description": "UI component library for NDLA.",
|
|
5
5
|
"license": "GPL-3.0",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -83,5 +83,5 @@
|
|
|
83
83
|
"publishConfig": {
|
|
84
84
|
"access": "public"
|
|
85
85
|
},
|
|
86
|
-
"gitHead": "
|
|
86
|
+
"gitHead": "b355806f2071434f06fb2e0205dcdb4dccb4d7e4"
|
|
87
87
|
}
|
package/src/List/OrderedList.tsx
CHANGED
|
@@ -41,51 +41,60 @@ const StyledOl = styled.ol`
|
|
|
41
41
|
margin-bottom: ${spacing.nsmall} !important;
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
+
counter-reset: level1;
|
|
44
45
|
|
|
45
46
|
&[data-type='letters'] {
|
|
46
|
-
counter-reset: item 0;
|
|
47
47
|
> li {
|
|
48
|
-
counter-increment: item;
|
|
49
48
|
&:before {
|
|
50
|
-
|
|
51
|
-
transform: translateX(-100%);
|
|
52
|
-
content: counter(item, upper-alpha) '.';
|
|
53
|
-
padding-right: ${spacing.nsmall};
|
|
49
|
+
content: counter(level1, upper-alpha) '.';
|
|
54
50
|
}
|
|
55
51
|
|
|
56
52
|
> ol[data-type='letters'] {
|
|
57
53
|
> li:before {
|
|
58
|
-
content: counter(
|
|
54
|
+
content: counter(level1, lower-alpha) '.';
|
|
59
55
|
}
|
|
60
56
|
ol[data-type='letters'] {
|
|
61
57
|
> li:before {
|
|
62
|
-
content: counter(
|
|
58
|
+
content: counter(level1, lower-roman) '.';
|
|
63
59
|
}
|
|
64
60
|
}
|
|
65
61
|
}
|
|
66
62
|
}
|
|
67
63
|
}
|
|
68
64
|
|
|
69
|
-
|
|
70
|
-
counter-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
padding-right: ${spacing.nsmall};
|
|
78
|
-
}
|
|
65
|
+
> li {
|
|
66
|
+
counter-increment: level1;
|
|
67
|
+
&:before {
|
|
68
|
+
position: absolute;
|
|
69
|
+
transform: translateX(-100%);
|
|
70
|
+
content: counter(level1, decimal) '.';
|
|
71
|
+
padding-right: ${spacing.nsmall};
|
|
72
|
+
}
|
|
79
73
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
74
|
+
> ol:not([data-type='letters']) {
|
|
75
|
+
counter-reset: level2;
|
|
76
|
+
> li {
|
|
77
|
+
padding-left: ${spacing.nsmall};
|
|
78
|
+
counter-increment: level2;
|
|
79
|
+
&:before {
|
|
80
|
+
content: counter(level1, decimal) '.' counter(level2, decimal) '.';
|
|
81
|
+
}
|
|
82
|
+
> ol:not([data-type='letters']) {
|
|
83
|
+
counter-reset: level3;
|
|
84
|
+
> li {
|
|
85
|
+
padding-left: ${spacing.medium};
|
|
86
|
+
counter-increment: level3;
|
|
87
|
+
&:before {
|
|
88
|
+
content: counter(level1, decimal) '.' counter(level2, decimal) '.' counter(level3, decimal) '.';
|
|
89
|
+
}
|
|
90
|
+
> ol:not([data-type='letters']) {
|
|
91
|
+
counter-reset: level4;
|
|
92
|
+
> li {
|
|
93
|
+
padding-left: ${spacing.large};
|
|
94
|
+
counter-increment: level4;
|
|
95
|
+
&:before {
|
|
96
|
+
content: counter(level1, decimal) '.' counter(level2, decimal) '.' counter(level3, decimal) '.'
|
|
97
|
+
counter(level4, decimal) '.';
|
|
89
98
|
}
|
|
90
99
|
}
|
|
91
100
|
}
|
|
@@ -24,7 +24,7 @@ const GradesMenu = styled.ul`
|
|
|
24
24
|
|
|
25
25
|
export type GradesProps = {
|
|
26
26
|
selectedGrade?: string;
|
|
27
|
-
grades
|
|
27
|
+
grades?: {
|
|
28
28
|
missingProgrammeSubjects?: boolean;
|
|
29
29
|
name: string;
|
|
30
30
|
categories?: {
|
|
@@ -45,14 +45,14 @@ const ProgrammeSubjects = ({ grades, onNavigate, selectedGrade = 'vg1' }: Props)
|
|
|
45
45
|
const { t } = useTranslation();
|
|
46
46
|
|
|
47
47
|
const grade = useMemo(
|
|
48
|
-
() => grades
|
|
48
|
+
() => grades?.find((grade) => grade.name.toLowerCase() === selectedGrade) ?? grades?.[0],
|
|
49
49
|
[grades, selectedGrade],
|
|
50
50
|
);
|
|
51
51
|
|
|
52
52
|
return (
|
|
53
53
|
<>
|
|
54
|
-
<GradesMenu aria-label={t('
|
|
55
|
-
{grades
|
|
54
|
+
<GradesMenu aria-label={t('programmes.grades')}>
|
|
55
|
+
{grades?.map((item) => {
|
|
56
56
|
const current = item.name.toLowerCase() === selectedGrade;
|
|
57
57
|
return (
|
|
58
58
|
<li key={item.name}>
|
|
@@ -69,8 +69,8 @@ const ProgrammeSubjects = ({ grades, onNavigate, selectedGrade = 'vg1' }: Props)
|
|
|
69
69
|
);
|
|
70
70
|
})}
|
|
71
71
|
</GradesMenu>
|
|
72
|
-
{grade
|
|
73
|
-
{grade
|
|
72
|
+
{grade?.missingProgrammeSubjects && <MessageBox>{t('messageBoxInfo.noContent')}</MessageBox>}
|
|
73
|
+
{grade?.categories?.map((category) => (
|
|
74
74
|
<NavigationBox key={category.name} heading={category.name} items={category.subjects} onClick={onNavigate} />
|
|
75
75
|
))}
|
|
76
76
|
</>
|
|
@@ -20,8 +20,8 @@ export interface Programme {
|
|
|
20
20
|
title: string;
|
|
21
21
|
language: string;
|
|
22
22
|
};
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
narrowImage?: Image;
|
|
24
|
+
wideImage?: Image;
|
|
25
25
|
url: string;
|
|
26
26
|
}
|
|
27
27
|
|
|
@@ -79,11 +79,11 @@ const StyledTitle = styled.span`
|
|
|
79
79
|
}
|
|
80
80
|
`;
|
|
81
81
|
|
|
82
|
-
const ProgrammeCard = ({ title,
|
|
82
|
+
const ProgrammeCard = ({ title, narrowImage, wideImage, url }: Programme) => {
|
|
83
83
|
return (
|
|
84
84
|
<StyledCardContainer to={url}>
|
|
85
|
-
<StyledImg data-is-mobile="false" src={
|
|
86
|
-
<StyledImg data-is-mobile="true" src={
|
|
85
|
+
{narrowImage && <StyledImg data-is-mobile="false" src={narrowImage.src} alt={narrowImage.alt} />}
|
|
86
|
+
{wideImage && <StyledImg data-is-mobile="true" src={wideImage.src} alt={wideImage.alt} />}
|
|
87
87
|
<StyledTitle>{title.title}</StyledTitle>
|
|
88
88
|
</StyledCardContainer>
|
|
89
89
|
);
|
|
@@ -31,22 +31,6 @@
|
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
/* Hacks for complex content fetched inside bodybox */
|
|
35
|
-
.c-bodybox > ul:not([class]),
|
|
36
|
-
.c-bodybox :not(li) > ul:not([class]) {
|
|
37
|
-
@include mq(desktop) {
|
|
38
|
-
margin-left: $spacing;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
.c-bodybox > ol:not([class]),
|
|
43
|
-
.c-bodybox :not(li) > ol:not([class]),
|
|
44
|
-
.c-bodybox .ol-list--roman {
|
|
45
|
-
@include mq(desktop) {
|
|
46
|
-
margin-left: $spacing--large;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
34
|
.c-bodybox {
|
|
51
35
|
.c-figure {
|
|
52
36
|
width: 100% !important;
|
|
@@ -1307,9 +1307,11 @@ const messages = {
|
|
|
1307
1307
|
contact: 'Contact',
|
|
1308
1308
|
help: 'Help',
|
|
1309
1309
|
},
|
|
1310
|
-
|
|
1310
|
+
programmes: {
|
|
1311
|
+
header: 'View our educational programmes',
|
|
1312
|
+
description: 'We strive to offer the best learning resources within traditional and new media.',
|
|
1311
1313
|
grades: 'Grades',
|
|
1312
|
-
|
|
1314
|
+
accordionHeader: 'All educational programmes',
|
|
1313
1315
|
},
|
|
1314
1316
|
embed: {
|
|
1315
1317
|
conceptListError: 'Failed to show concept list',
|
|
@@ -1303,9 +1303,11 @@ const messages = {
|
|
|
1303
1303
|
contact: 'Kontakt',
|
|
1304
1304
|
help: 'Hjelp',
|
|
1305
1305
|
},
|
|
1306
|
-
|
|
1306
|
+
programmes: {
|
|
1307
|
+
header: 'Se våre utdanningsprogram',
|
|
1308
|
+
description: 'Vi ønsker å tilby de beste læringsressursene innen tradisjonelle og nye medier.',
|
|
1307
1309
|
grades: 'Trinn',
|
|
1308
|
-
|
|
1310
|
+
accordionHeader: 'Alle utdanningsprogram',
|
|
1309
1311
|
},
|
|
1310
1312
|
embed: {
|
|
1311
1313
|
conceptListError: 'Klarte ikke å vise forklaringsliste',
|
|
@@ -1303,9 +1303,11 @@ const messages = {
|
|
|
1303
1303
|
contact: 'Kontakt',
|
|
1304
1304
|
help: 'Hjelp',
|
|
1305
1305
|
},
|
|
1306
|
-
|
|
1306
|
+
programmes: {
|
|
1307
|
+
header: 'Se våre utdanningsprogram',
|
|
1308
|
+
description: 'Vi ønsker å tilby dei beste læringsressursane innan tradisjonelle og nye media.',
|
|
1307
1309
|
grades: 'Trinn',
|
|
1308
|
-
|
|
1310
|
+
accordionHeader: 'Alle utdanningsprogram',
|
|
1309
1311
|
},
|
|
1310
1312
|
embed: {
|
|
1311
1313
|
conceptListError: 'Klarte ikkje å vise forklaringsliste',
|
|
@@ -1304,9 +1304,11 @@ const messages = {
|
|
|
1304
1304
|
contact: 'Váldde oktavuođa',
|
|
1305
1305
|
help: 'Veahket',
|
|
1306
1306
|
},
|
|
1307
|
-
|
|
1307
|
+
programmes: {
|
|
1308
|
+
header: 'Se våre utdanningsprogram',
|
|
1309
|
+
description: 'Vi ønsker å tilby de beste læringsressursene innen tradisjonelle og nye medier.',
|
|
1308
1310
|
grades: 'Ceahkki',
|
|
1309
|
-
|
|
1311
|
+
accordionHeader: 'Alle utdanningsprogram',
|
|
1310
1312
|
},
|
|
1311
1313
|
embed: {
|
|
1312
1314
|
conceptListError: 'Ii sáhttán čájehit čilgehuslisttu',
|
|
@@ -1308,9 +1308,11 @@ const messages = {
|
|
|
1308
1308
|
contact: 'Kontakt',
|
|
1309
1309
|
help: 'Hjelp',
|
|
1310
1310
|
},
|
|
1311
|
-
|
|
1311
|
+
programmes: {
|
|
1312
|
+
header: 'Se våre utdanningsprogram',
|
|
1313
|
+
description: 'Vi ønsker å tilby de beste læringsressursene innen tradisjonelle og nye medier.',
|
|
1312
1314
|
grades: 'Trinn',
|
|
1313
|
-
|
|
1315
|
+
accordionHeader: 'Alle utdanningsprogram',
|
|
1314
1316
|
},
|
|
1315
1317
|
embed: {
|
|
1316
1318
|
conceptListError: 'Klarte ikkje å vise forklaringsliste',
|