@ndla/ui 22.0.1 → 22.1.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/es/Article/ArticleByline.js +7 -4
- package/es/Article/ArticleNotions.js +10 -6
- package/es/CompetenceGoalTab/CompetenceGoalItem.js +12 -10
- package/es/CompetenceGoalTab/CompetenceGoalTab.js +11 -9
- package/es/CompetenceGoalTab/CompetenceItem.js +14 -12
- package/es/CompetenceGoalTab/SearchButton.js +7 -4
- package/es/CompetenceGoals/CompetenceGoalsDialog.js +8 -4
- package/es/ContentLoader/index.js +8 -3
- package/es/Filter/FilterButtons.js +10 -9
- package/es/Footer/FooterPrivacy.js +3 -2
- package/es/Masthead/MastheadSearchModal.js +4 -3
- package/es/Resource/BlockResource.js +109 -18
- package/es/Resource/ListResource.js +126 -26
- package/es/Resource/resourceComponents.js +36 -25
- package/es/ResourcesWrapper/ResourcesTopicTitle.js +7 -4
- package/es/SearchTypeResult/PopupFilter.js +12 -8
- package/es/SearchTypeResult/components/ItemContexts.js +8 -7
- package/es/SnackBar/DefaultSnackbar.js +56 -0
- package/es/SnackBar/SnackbarProvider.js +179 -0
- package/es/SnackBar/index.js +2 -2
- package/es/Topic/Topic.js +21 -20
- package/es/User/AuthModal.js +9 -8
- package/es/index.js +1 -1
- package/es/locale/messages-en.js +21 -6
- package/es/locale/messages-nb.js +21 -6
- package/es/locale/messages-nn.js +21 -6
- package/es/locale/messages-se.js +21 -6
- package/es/locale/messages-sma.js +21 -6
- package/lib/Article/ArticleByline.js +7 -4
- package/lib/Article/ArticleNotions.js +10 -6
- package/lib/CompetenceGoalTab/CompetenceGoalItem.d.ts +1 -1
- package/lib/CompetenceGoalTab/CompetenceGoalItem.js +12 -10
- package/lib/CompetenceGoalTab/CompetenceGoalTab.d.ts +2 -1
- package/lib/CompetenceGoalTab/CompetenceGoalTab.js +11 -9
- package/lib/CompetenceGoalTab/CompetenceItem.d.ts +2 -1
- package/lib/CompetenceGoalTab/CompetenceItem.js +14 -12
- package/lib/CompetenceGoalTab/SearchButton.d.ts +2 -1
- package/lib/CompetenceGoalTab/SearchButton.js +7 -4
- package/lib/CompetenceGoals/CompetenceGoalsDialog.js +8 -4
- package/lib/ContentLoader/index.d.ts +4 -8
- package/lib/ContentLoader/index.js +8 -3
- package/lib/Filter/FilterButtons.js +10 -9
- package/lib/Footer/FooterPrivacy.js +3 -2
- package/lib/Masthead/MastheadSearchModal.js +4 -3
- package/lib/Resource/BlockResource.d.ts +3 -1
- package/lib/Resource/BlockResource.js +110 -18
- package/lib/Resource/ListResource.d.ts +3 -1
- package/lib/Resource/ListResource.js +127 -26
- package/lib/Resource/resourceComponents.d.ts +4 -2
- package/lib/Resource/resourceComponents.js +38 -19
- package/lib/ResourcesWrapper/ResourcesTopicTitle.js +7 -4
- package/lib/SearchTypeResult/PopupFilter.js +12 -8
- package/lib/SearchTypeResult/components/ItemContexts.js +8 -7
- package/lib/SnackBar/DefaultSnackbar.d.ts +11 -0
- package/lib/SnackBar/DefaultSnackbar.js +70 -0
- package/lib/SnackBar/SnackbarProvider.d.ts +32 -0
- package/lib/SnackBar/SnackbarProvider.js +197 -0
- package/lib/SnackBar/index.d.ts +3 -3
- package/lib/SnackBar/index.js +23 -3
- package/lib/Topic/Topic.js +21 -20
- package/lib/User/AuthModal.js +9 -8
- package/lib/index.d.ts +2 -2
- package/lib/index.js +24 -3
- package/lib/locale/messages-en.d.ts +15 -0
- package/lib/locale/messages-en.js +21 -6
- package/lib/locale/messages-nb.d.ts +15 -0
- package/lib/locale/messages-nb.js +21 -6
- package/lib/locale/messages-nn.d.ts +15 -0
- package/lib/locale/messages-nn.js +21 -6
- package/lib/locale/messages-se.d.ts +15 -0
- package/lib/locale/messages-se.js +21 -6
- package/lib/locale/messages-sma.d.ts +15 -0
- package/lib/locale/messages-sma.js +21 -6
- package/lib/types.d.ts +1 -0
- package/package.json +8 -7
- package/src/Article/ArticleByline.tsx +4 -1
- package/src/Article/ArticleNotions.tsx +4 -1
- package/src/CompetenceGoalTab/CompetenceGoalItem.tsx +6 -2
- package/src/CompetenceGoalTab/CompetenceGoalTab.tsx +5 -4
- package/src/CompetenceGoalTab/CompetenceItem.tsx +9 -2
- package/src/CompetenceGoalTab/SearchButton.tsx +3 -2
- package/src/CompetenceGoals/CompetenceGoalsDialog.jsx +5 -2
- package/src/ContentLoader/index.tsx +9 -9
- package/src/Filter/FilterButtons.tsx +1 -0
- package/src/Footer/FooterPrivacy.tsx +4 -1
- package/src/Masthead/MastheadSearchModal.tsx +1 -0
- package/src/Resource/BlockResource.tsx +69 -6
- package/src/Resource/ListResource.tsx +88 -11
- package/src/Resource/resourceComponents.tsx +25 -9
- package/src/ResourcesWrapper/ResourcesTopicTitle.tsx +5 -1
- package/src/SearchTypeResult/PopupFilter.tsx +3 -1
- package/src/SearchTypeResult/components/ItemContexts.tsx +1 -0
- package/src/SnackBar/DefaultSnackbar.tsx +70 -0
- package/src/SnackBar/SnackbarProvider.tsx +147 -0
- package/src/SnackBar/index.ts +3 -5
- package/src/Topic/Topic.tsx +1 -0
- package/src/User/AuthModal.tsx +2 -1
- package/src/index.ts +2 -2
- package/src/locale/messages-en.ts +15 -0
- package/src/locale/messages-nb.ts +15 -0
- package/src/locale/messages-nn.ts +15 -0
- package/src/locale/messages-se.ts +15 -0
- package/src/locale/messages-sma.ts +15 -0
- package/src/types.ts +1 -0
- package/es/SnackBar/SnackBar.js +0 -117
- package/lib/SnackBar/SnackBar.d.ts +0 -23
- package/lib/SnackBar/SnackBar.js +0 -127
- package/src/.DS_Store +0 -0
- package/src/SnackBar/SnackBar.tsx +0 -183
|
@@ -172,7 +172,8 @@ var messages = _objectSpread(_objectSpread({
|
|
|
172
172
|
},
|
|
173
173
|
contextModal: {
|
|
174
174
|
button: '+ {{count}} fleire stader',
|
|
175
|
-
heading: 'Ressursen er brukt fleire stader'
|
|
175
|
+
heading: 'Ressursen er brukt fleire stader',
|
|
176
|
+
ariaLabel: 'Sjå fleire kontekstar'
|
|
176
177
|
}
|
|
177
178
|
},
|
|
178
179
|
subjectPage: {
|
|
@@ -217,7 +218,8 @@ var messages = _objectSpread(_objectSpread({
|
|
|
217
218
|
topicPage: {
|
|
218
219
|
articleErrorDescription: 'Orsak, ein feil oppstod under lasting av emneskildringa.',
|
|
219
220
|
topic: 'EMNE',
|
|
220
|
-
topics: 'Emne'
|
|
221
|
+
topics: 'Emne',
|
|
222
|
+
imageModal: 'Sjå biletet i full storleik'
|
|
221
223
|
},
|
|
222
224
|
welcomePage: {
|
|
223
225
|
search: 'Søk',
|
|
@@ -275,6 +277,7 @@ var messages = _objectSpread(_objectSpread({
|
|
|
275
277
|
toFrontpage: 'Til framsida',
|
|
276
278
|
subjectOverview: 'Alle fag',
|
|
277
279
|
title: 'Innhald',
|
|
280
|
+
modalLabel: 'Vel innhald',
|
|
278
281
|
subjectPage: 'Fagframside',
|
|
279
282
|
backToSubjectFrontpage: 'Tilbake til fagframsida',
|
|
280
283
|
openFilter: 'Filter',
|
|
@@ -361,6 +364,7 @@ var messages = _objectSpread(_objectSpread({
|
|
|
361
364
|
competenceGoals: {
|
|
362
365
|
competenceGoal: 'kompetansemål',
|
|
363
366
|
title: 'Kompetansemål og læreplan',
|
|
367
|
+
modalText: 'Utforsk læreplankoplingar',
|
|
364
368
|
closeCompetenceGoals: 'Lukk kompetansemål',
|
|
365
369
|
showCompetenceGoals: 'Vis kompetansemål',
|
|
366
370
|
openCompentenceGoalsFilter: 'Filtrer kompetansemål',
|
|
@@ -383,7 +387,9 @@ var messages = _objectSpread(_objectSpread({
|
|
|
383
387
|
competenceTabCorelabel: 'Kjerneelement',
|
|
384
388
|
competenceGoalItem: {
|
|
385
389
|
title: 'Kompetansemål og vurdering'
|
|
386
|
-
}
|
|
390
|
+
},
|
|
391
|
+
licenseData: 'Inneheld data under',
|
|
392
|
+
licenseFrom: 'tilgjengeleggjort på'
|
|
387
393
|
},
|
|
388
394
|
subject: {
|
|
389
395
|
associatedTopics: 'Tilhøyrande emne'
|
|
@@ -923,7 +929,9 @@ var messages = _objectSpread(_objectSpread({
|
|
|
923
929
|
modal: {
|
|
924
930
|
collectedInfo: 'Vi har henta denne informasjonen om deg frå Feide:',
|
|
925
931
|
general: 'Ressursane som krev pålogging med Feide, vises med ikonet',
|
|
926
|
-
topic: ' Logg inn med Feide for å få tilgang til dette emnet.'
|
|
932
|
+
topic: ' Logg inn med Feide for å få tilgang til dette emnet.',
|
|
933
|
+
isAuth: 'Brukarinfo',
|
|
934
|
+
isNotAuth: 'Logg inn med Feide'
|
|
927
935
|
},
|
|
928
936
|
resource: {
|
|
929
937
|
accessDenied: 'Vi beklagar, men denne ressursen er berre for lærarar innlogga med Feide.'
|
|
@@ -957,7 +965,8 @@ var messages = _objectSpread(_objectSpread({
|
|
|
957
965
|
folder: 'Mappe',
|
|
958
966
|
"delete": 'Slett',
|
|
959
967
|
edit: 'Rediger',
|
|
960
|
-
missingName: 'Mappenavn er påkrevd'
|
|
968
|
+
missingName: 'Mappenavn er påkrevd',
|
|
969
|
+
folderDeleted: '"{{folderName}}" er sletta'
|
|
961
970
|
},
|
|
962
971
|
tags: '{{count}} tag',
|
|
963
972
|
tags_plural: '{{count}} tags',
|
|
@@ -1022,8 +1031,14 @@ var messages = _objectSpread(_objectSpread({
|
|
|
1022
1031
|
removeTitle: 'Fjern ressurs',
|
|
1023
1032
|
confirmRemove: 'Er du sikker på at du ønsker å fjerne ressursen frå denne mappen?',
|
|
1024
1033
|
copyLink: 'Kopier lenke til sida',
|
|
1034
|
+
linkCopied: 'Kopiert til utklippstavla',
|
|
1025
1035
|
addToMyNdla: 'Legg i Min NDLA',
|
|
1026
|
-
addedToMyNdla: 'Lagt i Min NDLA'
|
|
1036
|
+
addedToMyNdla: 'Lagt i Min NDLA',
|
|
1037
|
+
addedToFolder: 'Ressurs er lagt i "{{folderName}}"',
|
|
1038
|
+
removedFromFolder: 'Fjernet fra "{{folderName}}"',
|
|
1039
|
+
titleUpdated: 'Tittel oppdatert',
|
|
1040
|
+
tagsUpdated: 'Tags oppdatert',
|
|
1041
|
+
show: 'Vis'
|
|
1027
1042
|
}
|
|
1028
1043
|
},
|
|
1029
1044
|
snackbar: {
|
|
@@ -29,6 +29,8 @@ declare const messages: {
|
|
|
29
29
|
collectedInfo: string;
|
|
30
30
|
general: string;
|
|
31
31
|
topic: string;
|
|
32
|
+
isAuth: string;
|
|
33
|
+
isNotAuth: string;
|
|
32
34
|
};
|
|
33
35
|
resource: {
|
|
34
36
|
accessDenied: string;
|
|
@@ -63,6 +65,7 @@ declare const messages: {
|
|
|
63
65
|
delete: string;
|
|
64
66
|
edit: string;
|
|
65
67
|
missingName: string;
|
|
68
|
+
folderDeleted: string;
|
|
66
69
|
};
|
|
67
70
|
tags: string;
|
|
68
71
|
tags_plural: string;
|
|
@@ -127,8 +130,14 @@ declare const messages: {
|
|
|
127
130
|
removeTitle: string;
|
|
128
131
|
confirmRemove: string;
|
|
129
132
|
copyLink: string;
|
|
133
|
+
linkCopied: string;
|
|
130
134
|
addToMyNdla: string;
|
|
131
135
|
addedToMyNdla: string;
|
|
136
|
+
addedToFolder: string;
|
|
137
|
+
removedFromFolder: string;
|
|
138
|
+
titleUpdated: string;
|
|
139
|
+
tagsUpdated: string;
|
|
140
|
+
show: string;
|
|
132
141
|
};
|
|
133
142
|
};
|
|
134
143
|
snackbar: {
|
|
@@ -304,6 +313,7 @@ declare const messages: {
|
|
|
304
313
|
contextModal: {
|
|
305
314
|
button: string;
|
|
306
315
|
heading: string;
|
|
316
|
+
ariaLabel: string;
|
|
307
317
|
};
|
|
308
318
|
};
|
|
309
319
|
subjectPage: {
|
|
@@ -349,6 +359,7 @@ declare const messages: {
|
|
|
349
359
|
articleErrorDescription: string;
|
|
350
360
|
topic: string;
|
|
351
361
|
topics: string;
|
|
362
|
+
imageModal: string;
|
|
352
363
|
};
|
|
353
364
|
welcomePage: {
|
|
354
365
|
search: string;
|
|
@@ -406,6 +417,7 @@ declare const messages: {
|
|
|
406
417
|
toFrontpage: string;
|
|
407
418
|
subjectOverview: string;
|
|
408
419
|
title: string;
|
|
420
|
+
modalLabel: string;
|
|
409
421
|
subjectPage: string;
|
|
410
422
|
backToSubjectFrontpage: string;
|
|
411
423
|
openFilter: string;
|
|
@@ -516,6 +528,7 @@ declare const messages: {
|
|
|
516
528
|
competenceGoals: {
|
|
517
529
|
competenceGoal: string;
|
|
518
530
|
title: string;
|
|
531
|
+
modalText: string;
|
|
519
532
|
closeCompetenceGoals: string;
|
|
520
533
|
showCompetenceGoals: string;
|
|
521
534
|
openCompentenceGoalsFilter: string;
|
|
@@ -539,6 +552,8 @@ declare const messages: {
|
|
|
539
552
|
competenceGoalItem: {
|
|
540
553
|
title: string;
|
|
541
554
|
};
|
|
555
|
+
licenseData: string;
|
|
556
|
+
licenseFrom: string;
|
|
542
557
|
};
|
|
543
558
|
subject: {
|
|
544
559
|
associatedTopics: string;
|
|
@@ -172,7 +172,8 @@ var messages = _objectSpread(_objectSpread({
|
|
|
172
172
|
},
|
|
173
173
|
contextModal: {
|
|
174
174
|
button: '+ {{count}} flere steder',
|
|
175
|
-
heading: 'Ressursen er brukt flere steder'
|
|
175
|
+
heading: 'Ressursen er brukt flere steder',
|
|
176
|
+
ariaLabel: 'Se flere kontekster'
|
|
176
177
|
}
|
|
177
178
|
},
|
|
178
179
|
subjectPage: {
|
|
@@ -217,7 +218,8 @@ var messages = _objectSpread(_objectSpread({
|
|
|
217
218
|
topicPage: {
|
|
218
219
|
articleErrorDescription: 'Beklager, en feil oppstod under lasting av emnebeskrivelsen.',
|
|
219
220
|
topic: 'EMNE',
|
|
220
|
-
topics: 'Emner'
|
|
221
|
+
topics: 'Emner',
|
|
222
|
+
imageModal: 'Se bildet i full størrelse'
|
|
221
223
|
},
|
|
222
224
|
welcomePage: {
|
|
223
225
|
search: 'Søk',
|
|
@@ -275,6 +277,7 @@ var messages = _objectSpread(_objectSpread({
|
|
|
275
277
|
toFrontpage: 'Til forsiden',
|
|
276
278
|
subjectOverview: 'Alle fag',
|
|
277
279
|
title: 'Innhold',
|
|
280
|
+
modalLabel: 'Velg innhold',
|
|
278
281
|
subjectPage: 'Fagforside',
|
|
279
282
|
backToSubjectFrontpage: 'Tilbake til fagforsiden',
|
|
280
283
|
openFilter: 'Filter',
|
|
@@ -361,6 +364,7 @@ var messages = _objectSpread(_objectSpread({
|
|
|
361
364
|
competenceGoals: {
|
|
362
365
|
competenceGoal: 'kompetansemål',
|
|
363
366
|
title: 'Kompetansemål og læreplan',
|
|
367
|
+
modalText: 'Utforsk læreplankoblinger',
|
|
364
368
|
closeCompetenceGoals: 'Lukk kompetansemål',
|
|
365
369
|
showCompetenceGoals: 'Vis kompetansemål',
|
|
366
370
|
openCompentenceGoalsFilter: 'Filtrer kompetansemål',
|
|
@@ -383,7 +387,9 @@ var messages = _objectSpread(_objectSpread({
|
|
|
383
387
|
competenceTabCorelabel: 'Kjerneelement',
|
|
384
388
|
competenceGoalItem: {
|
|
385
389
|
title: 'Kompetansemål og vurdering'
|
|
386
|
-
}
|
|
390
|
+
},
|
|
391
|
+
licenseData: 'Inneholder data under',
|
|
392
|
+
licenseFrom: 'tilgjengeliggjort på'
|
|
387
393
|
},
|
|
388
394
|
subject: {
|
|
389
395
|
associatedTopics: 'Tilhørende emner'
|
|
@@ -923,7 +929,9 @@ var messages = _objectSpread(_objectSpread({
|
|
|
923
929
|
modal: {
|
|
924
930
|
collectedInfo: 'Vi har hentet følgende informasjon om deg fra Feide:',
|
|
925
931
|
general: 'Ressursene som krever pålogging med Feide, vises med ikonet',
|
|
926
|
-
topic: 'Logg inn med Feide for å få tilgang til dette emnet.'
|
|
932
|
+
topic: 'Logg inn med Feide for å få tilgang til dette emnet.',
|
|
933
|
+
isAuth: 'Brukerinfo',
|
|
934
|
+
isNotAuth: 'Logg inn med Feide'
|
|
927
935
|
},
|
|
928
936
|
resource: {
|
|
929
937
|
accessDenied: 'Vi beklager, men denne ressursen er bare for lærere innlogget med Feide.'
|
|
@@ -957,7 +965,8 @@ var messages = _objectSpread(_objectSpread({
|
|
|
957
965
|
folder: 'Mappe',
|
|
958
966
|
"delete": 'Slett',
|
|
959
967
|
edit: 'Rediger',
|
|
960
|
-
missingName: 'Mappenavn er påkrevd'
|
|
968
|
+
missingName: 'Mappenavn er påkrevd',
|
|
969
|
+
folderDeleted: '"{{folderName}}" er sletta'
|
|
961
970
|
},
|
|
962
971
|
tags: '{{count}} tag',
|
|
963
972
|
tags_plural: '{{count}} tags',
|
|
@@ -1022,8 +1031,14 @@ var messages = _objectSpread(_objectSpread({
|
|
|
1022
1031
|
removeTitle: 'Fjern ressurs',
|
|
1023
1032
|
confirmRemove: 'Er du sikker på at du ønsker å fjerne ressursen frå denne mappen?',
|
|
1024
1033
|
copyLink: 'Kopier lenke til siden',
|
|
1034
|
+
linkCopied: 'Kopiert til utklippstavla',
|
|
1025
1035
|
addToMyNdla: 'Legg i Min NDLA',
|
|
1026
|
-
addedToMyNdla: 'Lagt i Min NDLA'
|
|
1036
|
+
addedToMyNdla: 'Lagt i Min NDLA',
|
|
1037
|
+
addedToFolder: 'Ressurs er lagt i "{{folderName}}"',
|
|
1038
|
+
removedFromFolder: 'Fjernet fra "{{folderName}}"',
|
|
1039
|
+
titleUpdated: 'Tittel oppdatert',
|
|
1040
|
+
tagsUpdated: 'Tags oppdatert',
|
|
1041
|
+
show: 'Vis'
|
|
1027
1042
|
}
|
|
1028
1043
|
},
|
|
1029
1044
|
snackbar: {
|
|
@@ -29,6 +29,8 @@ declare const messages: {
|
|
|
29
29
|
collectedInfo: string;
|
|
30
30
|
general: string;
|
|
31
31
|
topic: string;
|
|
32
|
+
isAuth: string;
|
|
33
|
+
isNotAuth: string;
|
|
32
34
|
};
|
|
33
35
|
resource: {
|
|
34
36
|
accessDenied: string;
|
|
@@ -63,6 +65,7 @@ declare const messages: {
|
|
|
63
65
|
delete: string;
|
|
64
66
|
edit: string;
|
|
65
67
|
missingName: string;
|
|
68
|
+
folderDeleted: string;
|
|
66
69
|
};
|
|
67
70
|
tags: string;
|
|
68
71
|
tags_plural: string;
|
|
@@ -127,8 +130,14 @@ declare const messages: {
|
|
|
127
130
|
removeTitle: string;
|
|
128
131
|
confirmRemove: string;
|
|
129
132
|
copyLink: string;
|
|
133
|
+
linkCopied: string;
|
|
130
134
|
addToMyNdla: string;
|
|
131
135
|
addedToMyNdla: string;
|
|
136
|
+
addedToFolder: string;
|
|
137
|
+
removedFromFolder: string;
|
|
138
|
+
titleUpdated: string;
|
|
139
|
+
tagsUpdated: string;
|
|
140
|
+
show: string;
|
|
132
141
|
};
|
|
133
142
|
};
|
|
134
143
|
snackbar: {
|
|
@@ -304,6 +313,7 @@ declare const messages: {
|
|
|
304
313
|
contextModal: {
|
|
305
314
|
button: string;
|
|
306
315
|
heading: string;
|
|
316
|
+
ariaLabel: string;
|
|
307
317
|
};
|
|
308
318
|
};
|
|
309
319
|
subjectPage: {
|
|
@@ -349,6 +359,7 @@ declare const messages: {
|
|
|
349
359
|
articleErrorDescription: string;
|
|
350
360
|
topic: string;
|
|
351
361
|
topics: string;
|
|
362
|
+
imageModal: string;
|
|
352
363
|
};
|
|
353
364
|
welcomePage: {
|
|
354
365
|
search: string;
|
|
@@ -406,6 +417,7 @@ declare const messages: {
|
|
|
406
417
|
toFrontpage: string;
|
|
407
418
|
subjectOverview: string;
|
|
408
419
|
title: string;
|
|
420
|
+
modalLabel: string;
|
|
409
421
|
subjectPage: string;
|
|
410
422
|
backToSubjectFrontpage: string;
|
|
411
423
|
openFilter: string;
|
|
@@ -516,6 +528,7 @@ declare const messages: {
|
|
|
516
528
|
competenceGoals: {
|
|
517
529
|
competenceGoal: string;
|
|
518
530
|
title: string;
|
|
531
|
+
modalText: string;
|
|
519
532
|
closeCompetenceGoals: string;
|
|
520
533
|
showCompetenceGoals: string;
|
|
521
534
|
openCompentenceGoalsFilter: string;
|
|
@@ -539,6 +552,8 @@ declare const messages: {
|
|
|
539
552
|
competenceGoalItem: {
|
|
540
553
|
title: string;
|
|
541
554
|
};
|
|
555
|
+
licenseData: string;
|
|
556
|
+
licenseFrom: string;
|
|
542
557
|
};
|
|
543
558
|
subject: {
|
|
544
559
|
associatedTopics: string;
|
|
@@ -172,7 +172,8 @@ var messages = _objectSpread(_objectSpread({
|
|
|
172
172
|
},
|
|
173
173
|
contextModal: {
|
|
174
174
|
button: '+ {{count}} flere steder',
|
|
175
|
-
heading: 'Ressursen er brukt flere steder'
|
|
175
|
+
heading: 'Ressursen er brukt flere steder',
|
|
176
|
+
ariaLabel: 'Se flere kontekster'
|
|
176
177
|
}
|
|
177
178
|
},
|
|
178
179
|
subjectPage: {
|
|
@@ -217,7 +218,8 @@ var messages = _objectSpread(_objectSpread({
|
|
|
217
218
|
topicPage: {
|
|
218
219
|
articleErrorDescription: 'Beklager, en feil oppstod under lasting av emnebeskrivelsen.',
|
|
219
220
|
topic: 'EMNE',
|
|
220
|
-
topics: 'Emner'
|
|
221
|
+
topics: 'Emner',
|
|
222
|
+
imageModal: 'Se bildet i full størrelse'
|
|
221
223
|
},
|
|
222
224
|
welcomePage: {
|
|
223
225
|
search: 'Søk',
|
|
@@ -275,6 +277,7 @@ var messages = _objectSpread(_objectSpread({
|
|
|
275
277
|
toFrontpage: 'Til forsiden',
|
|
276
278
|
subjectOverview: 'Alle fag',
|
|
277
279
|
title: 'Innhold',
|
|
280
|
+
modalLabel: 'Velg innhold',
|
|
278
281
|
subjectPage: 'Fagforside',
|
|
279
282
|
backToSubjectFrontpage: 'Tilbake til fagforsiden',
|
|
280
283
|
openFilter: 'Filter',
|
|
@@ -361,6 +364,7 @@ var messages = _objectSpread(_objectSpread({
|
|
|
361
364
|
competenceGoals: {
|
|
362
365
|
competenceGoal: 'kompetansemål',
|
|
363
366
|
title: 'Kompetansemål og læreplan',
|
|
367
|
+
modalText: 'Utforsk læreplankoblinger',
|
|
364
368
|
closeCompetenceGoals: 'Lukk kompetansemål',
|
|
365
369
|
showCompetenceGoals: 'Vis kompetansemål',
|
|
366
370
|
openCompentenceGoalsFilter: 'Filtrer kompetansemål',
|
|
@@ -383,7 +387,9 @@ var messages = _objectSpread(_objectSpread({
|
|
|
383
387
|
competenceTabCorelabel: 'Kjerneelement',
|
|
384
388
|
competenceGoalItem: {
|
|
385
389
|
title: 'Kompetansemål og vurdering'
|
|
386
|
-
}
|
|
390
|
+
},
|
|
391
|
+
licenseData: 'Inneholder data under',
|
|
392
|
+
licenseFrom: 'tilgjengeliggjort på'
|
|
387
393
|
},
|
|
388
394
|
subject: {
|
|
389
395
|
associatedTopics: 'Tilhørende emner'
|
|
@@ -923,7 +929,9 @@ var messages = _objectSpread(_objectSpread({
|
|
|
923
929
|
modal: {
|
|
924
930
|
collectedInfo: 'Vi har hentet følgende informasjon om deg fra Feide:',
|
|
925
931
|
general: 'Ressursene som krever pålogging med Feide, vises med ikonet',
|
|
926
|
-
topic: 'Logg inn med Feide for å få tilgang til dette emnet.'
|
|
932
|
+
topic: 'Logg inn med Feide for å få tilgang til dette emnet.',
|
|
933
|
+
isAuth: 'Brukerinfo',
|
|
934
|
+
isNotAuth: 'Logg inn med Feide'
|
|
927
935
|
},
|
|
928
936
|
resource: {
|
|
929
937
|
accessDenied: 'Vi beklager, men denne ressursen er bare for lærere innlogget med Feide.'
|
|
@@ -957,7 +965,8 @@ var messages = _objectSpread(_objectSpread({
|
|
|
957
965
|
folder: 'Mappe',
|
|
958
966
|
"delete": 'Slett',
|
|
959
967
|
edit: 'Rediger',
|
|
960
|
-
missingName: 'Mappenavn er påkrevd'
|
|
968
|
+
missingName: 'Mappenavn er påkrevd',
|
|
969
|
+
folderDeleted: '"{{folderName}}" er sletta'
|
|
961
970
|
},
|
|
962
971
|
tags: '{{count}} tag',
|
|
963
972
|
tags_plural: '{{count}} tags',
|
|
@@ -1022,8 +1031,14 @@ var messages = _objectSpread(_objectSpread({
|
|
|
1022
1031
|
removeTitle: 'Fjern ressurs',
|
|
1023
1032
|
confirmRemove: 'Er du sikker på at du ønsker å fjerne ressursen frå denne mappen?',
|
|
1024
1033
|
copyLink: 'Kopier lenke til siden',
|
|
1034
|
+
linkCopied: 'Kopiert til utklippstavla',
|
|
1025
1035
|
addToMyNdla: 'Legg i Min NDLA',
|
|
1026
|
-
addedToMyNdla: 'Lagt i Min NDLA'
|
|
1036
|
+
addedToMyNdla: 'Lagt i Min NDLA',
|
|
1037
|
+
addedToFolder: 'Ressurs er lagt i "{{folderName}}"',
|
|
1038
|
+
removedFromFolder: 'Fjernet fra "{{folderName}}"',
|
|
1039
|
+
titleUpdated: 'Tittel oppdatert',
|
|
1040
|
+
tagsUpdated: 'Tags oppdatert',
|
|
1041
|
+
show: 'Vis'
|
|
1027
1042
|
}
|
|
1028
1043
|
},
|
|
1029
1044
|
snackbar: {
|
package/lib/types.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ndla/ui",
|
|
3
|
-
"version": "22.0
|
|
3
|
+
"version": "22.1.0",
|
|
4
4
|
"description": "UI component library for NDLA.",
|
|
5
5
|
"license": "GPL-3.0",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -31,16 +31,16 @@
|
|
|
31
31
|
"types"
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@ndla/button": "^3.2.
|
|
34
|
+
"@ndla/button": "^3.2.1",
|
|
35
35
|
"@ndla/carousel": "^1.2.15",
|
|
36
36
|
"@ndla/core": "^2.3.3",
|
|
37
37
|
"@ndla/forms": "^3.1.3",
|
|
38
38
|
"@ndla/hooks": "^1.1.4",
|
|
39
39
|
"@ndla/icons": "^1.11.3",
|
|
40
40
|
"@ndla/licenses": "^5.0.6",
|
|
41
|
-
"@ndla/modal": "^1.2.
|
|
42
|
-
"@ndla/notion": "^3.1.
|
|
43
|
-
"@ndla/safelink": "^2.2.
|
|
41
|
+
"@ndla/modal": "^1.2.17",
|
|
42
|
+
"@ndla/notion": "^3.1.28",
|
|
43
|
+
"@ndla/safelink": "^2.2.5",
|
|
44
44
|
"@ndla/switch": "^0.1.10",
|
|
45
45
|
"@ndla/tabs": "^1.1.14",
|
|
46
46
|
"@ndla/tooltip": "^2.1.5",
|
|
@@ -68,7 +68,8 @@
|
|
|
68
68
|
"i18next": "^20.3.1",
|
|
69
69
|
"prop-types": "^15.8.1",
|
|
70
70
|
"react": "^16.8.4 || ^17.0.0",
|
|
71
|
-
"react-i18next": "^11.11.0"
|
|
71
|
+
"react-i18next": "^11.11.0",
|
|
72
|
+
"react-router-dom": "^6.3.0"
|
|
72
73
|
},
|
|
73
74
|
"devDependencies": {
|
|
74
75
|
"@babel/plugin-proposal-optional-chaining": "^7.11.0",
|
|
@@ -83,5 +84,5 @@
|
|
|
83
84
|
"publishConfig": {
|
|
84
85
|
"access": "public"
|
|
85
86
|
},
|
|
86
|
-
"gitHead": "
|
|
87
|
+
"gitHead": "f4d197d1841b544f533371350b6c23ebce94012f"
|
|
87
88
|
}
|
|
@@ -102,6 +102,8 @@ const ArticleByline = ({
|
|
|
102
102
|
const showPrimaryContributors = suppliers.length > 0 || authors.length > 0;
|
|
103
103
|
const showSecondaryContributors = suppliers.length > 0 && authors.length > 0;
|
|
104
104
|
|
|
105
|
+
const buttonId = 'popupUseContent';
|
|
106
|
+
|
|
105
107
|
return (
|
|
106
108
|
<Wrapper>
|
|
107
109
|
<div>
|
|
@@ -124,8 +126,9 @@ const ArticleByline = ({
|
|
|
124
126
|
<ButtonWrapper>
|
|
125
127
|
{licenseBox && (
|
|
126
128
|
<Modal
|
|
129
|
+
labelledBy={buttonId}
|
|
127
130
|
activateButton={
|
|
128
|
-
<Button size="small" borderShape="rounded" outline>
|
|
131
|
+
<Button id={buttonId} size="small" borderShape="rounded" outline>
|
|
129
132
|
{t('article.useContent')}
|
|
130
133
|
</Button>
|
|
131
134
|
}
|
|
@@ -165,14 +165,17 @@ type ArticleNotionsProps = {
|
|
|
165
165
|
export const ArticleNotions = ({ notions, relatedContent = [], buttonOffsetRight, type }: ArticleNotionsProps) => {
|
|
166
166
|
const { t } = useTranslation();
|
|
167
167
|
const leftOffset = `${buttonOffsetRight - 32}px`;
|
|
168
|
+
const headingId = 'popupNotionHeading';
|
|
169
|
+
|
|
168
170
|
return (
|
|
169
171
|
<ArticleNotionsContainer>
|
|
170
172
|
<Modal
|
|
173
|
+
labelledBy={headingId}
|
|
171
174
|
activateButton={
|
|
172
175
|
<NotionsTrigger role="button" aria-label={t('article.notionsPrompt')} style={{ left: leftOffset }}>
|
|
173
176
|
<NotionFlip />
|
|
174
177
|
<Explanation />
|
|
175
|
-
<span>{t('article.notionsPrompt')}</span>
|
|
178
|
+
<span id={headingId}>{t('article.notionsPrompt')}</span>
|
|
176
179
|
</NotionsTrigger>
|
|
177
180
|
}
|
|
178
181
|
size="large"
|
|
@@ -60,7 +60,7 @@ const GoalSearchWrapper = styled.div`
|
|
|
60
60
|
}
|
|
61
61
|
`;
|
|
62
62
|
|
|
63
|
-
const CompetenceGoalItem = ({ title, goals }: CompetenceGoalsItemType) => {
|
|
63
|
+
const CompetenceGoalItem = ({ title, goals, isOembed }: CompetenceGoalsItemType) => {
|
|
64
64
|
const { t } = useTranslation();
|
|
65
65
|
return (
|
|
66
66
|
<GoalItem>
|
|
@@ -73,7 +73,11 @@ const CompetenceGoalItem = ({ title, goals }: CompetenceGoalsItemType) => {
|
|
|
73
73
|
<GoalListInnerTextWrapper>{goal.text}</GoalListInnerTextWrapper>
|
|
74
74
|
{goal.url && goal.type !== 'LK06' && (
|
|
75
75
|
<GoalSearchWrapper>
|
|
76
|
-
<SearchButton
|
|
76
|
+
<SearchButton
|
|
77
|
+
to={goal.url}
|
|
78
|
+
text={t('competenceGoals.competenceGoalResourceSearchText')}
|
|
79
|
+
target={isOembed ? '_blank' : '_self'}
|
|
80
|
+
/>
|
|
77
81
|
</GoalSearchWrapper>
|
|
78
82
|
)}
|
|
79
83
|
</GoalListElementInnerWrapper>
|
|
@@ -19,6 +19,7 @@ import CompetenceItem, { ListItemProp } from './CompetenceItem';
|
|
|
19
19
|
type CompetenceProps = {
|
|
20
20
|
list: ListItemProp[];
|
|
21
21
|
highlightSearchBox?: boolean;
|
|
22
|
+
isOembed?: boolean;
|
|
22
23
|
};
|
|
23
24
|
|
|
24
25
|
const Wrapper = styled.div`
|
|
@@ -79,7 +80,7 @@ const HighlightText = styled.span`
|
|
|
79
80
|
font-family: 'Shadows Into Light Two', cursive;
|
|
80
81
|
`;
|
|
81
82
|
|
|
82
|
-
const CompetenceGoalTab = ({ list, highlightSearchBox }: CompetenceProps) => {
|
|
83
|
+
const CompetenceGoalTab = ({ list, highlightSearchBox, isOembed }: CompetenceProps) => {
|
|
83
84
|
const [currentTabItem, setCurrentTab] = useState(list[0]);
|
|
84
85
|
const { t } = useTranslation();
|
|
85
86
|
|
|
@@ -106,15 +107,15 @@ const CompetenceGoalTab = ({ list, highlightSearchBox }: CompetenceProps) => {
|
|
|
106
107
|
<ArrowFeatureTips />
|
|
107
108
|
</HighlightWrapper>
|
|
108
109
|
)}
|
|
109
|
-
<CompetenceItem item={currentTabItem} />
|
|
110
|
+
<CompetenceItem item={currentTabItem} isOembed={isOembed} />
|
|
110
111
|
<LicenseByline licenseRights={[CC, BY]}>
|
|
111
112
|
<LicenseIconsTextWrapper>UDIR</LicenseIconsTextWrapper>
|
|
112
113
|
</LicenseByline>
|
|
113
|
-
|
|
114
|
+
{`${t('competenceGoals.licenseData')} `}
|
|
114
115
|
<SafeLink to="https://data.norge.no/nlod/no" target="_blank">
|
|
115
116
|
NLOD
|
|
116
117
|
</SafeLink>
|
|
117
|
-
|
|
118
|
+
{`, ${t('competenceGoals.licenseFrom')} `}
|
|
118
119
|
<SafeLink to="https://data.udir.no/" target="_blank">
|
|
119
120
|
data.udir.no
|
|
120
121
|
</SafeLink>
|
|
@@ -79,9 +79,10 @@ export type ListItemProp = {
|
|
|
79
79
|
};
|
|
80
80
|
export type ListItemProps = {
|
|
81
81
|
item: ListItemProp;
|
|
82
|
+
isOembed?: boolean;
|
|
82
83
|
};
|
|
83
84
|
|
|
84
|
-
const CompetenceItem = ({ item }: ListItemProps) => {
|
|
85
|
+
const CompetenceItem = ({ item, isOembed }: ListItemProps) => {
|
|
85
86
|
const { t } = useTranslation();
|
|
86
87
|
const { type, groupedCompetenceGoals, groupedCoreElementItems } = item;
|
|
87
88
|
switch (type) {
|
|
@@ -105,7 +106,13 @@ const CompetenceItem = ({ item }: ListItemProps) => {
|
|
|
105
106
|
{group.elements.length > 0 && (
|
|
106
107
|
<Goals>
|
|
107
108
|
{group.elements.map((goal) => (
|
|
108
|
-
<CompetenceGoalItem
|
|
109
|
+
<CompetenceGoalItem
|
|
110
|
+
key={goal.id}
|
|
111
|
+
id={goal.id}
|
|
112
|
+
title={goal.title}
|
|
113
|
+
goals={goal.goals}
|
|
114
|
+
isOembed={isOembed}
|
|
115
|
+
/>
|
|
109
116
|
))}
|
|
110
117
|
</Goals>
|
|
111
118
|
)}
|
|
@@ -37,11 +37,12 @@ const IconWrapper = styled.span`
|
|
|
37
37
|
type Props = {
|
|
38
38
|
to: string;
|
|
39
39
|
text: string;
|
|
40
|
+
target?: string;
|
|
40
41
|
};
|
|
41
42
|
|
|
42
|
-
const SearchButton = ({ to, text }: Props) => (
|
|
43
|
+
const SearchButton = ({ to, text, target = '_self' }: Props) => (
|
|
43
44
|
<Wrapper>
|
|
44
|
-
<SafeLink to={to}>
|
|
45
|
+
<SafeLink to={to} target={target}>
|
|
45
46
|
<IconWrapper>
|
|
46
47
|
<Search style={{ width: '24px', height: '24px' }} />
|
|
47
48
|
</IconWrapper>
|
|
@@ -33,8 +33,11 @@ const HeadingWrapper = styled.h2`
|
|
|
33
33
|
|
|
34
34
|
export const CompetenceGoalsDialog = ({ children, isOpen, onClose, subjectName, modalProps }) => {
|
|
35
35
|
const { t } = useTranslation();
|
|
36
|
+
const iconId = 'popupCompetenceGoals';
|
|
37
|
+
|
|
36
38
|
return (
|
|
37
39
|
<Modal
|
|
40
|
+
labelledBy={iconId}
|
|
38
41
|
{...modalProps}
|
|
39
42
|
controllable
|
|
40
43
|
isOpen={isOpen}
|
|
@@ -48,8 +51,8 @@ export const CompetenceGoalsDialog = ({ children, isOpen, onClose, subjectName,
|
|
|
48
51
|
<ModalHeader modifier="menu">
|
|
49
52
|
<HeaderWrapper>
|
|
50
53
|
<HeadingWrapper>
|
|
51
|
-
<FooterHeaderIcon size="24px" style={{ marginRight: '20px' }} />
|
|
52
|
-
{'
|
|
54
|
+
<FooterHeaderIcon id={iconId} size="24px" style={{ marginRight: '20px' }} />
|
|
55
|
+
{t('competenceGoals.modalText')} {subjectName && ` \u2022 ${subjectName}`}
|
|
53
56
|
</HeadingWrapper>
|
|
54
57
|
<ModalCloseButton onClick={close} title={t('competenceGoals.competenceGoalClose')} />
|
|
55
58
|
</HeaderWrapper>
|
|
@@ -6,18 +6,14 @@
|
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import React, { ReactNode } from 'react';
|
|
9
|
+
import React, { ReactNode, SVGProps } from 'react';
|
|
10
10
|
import { uuid } from '@ndla/util';
|
|
11
11
|
|
|
12
|
-
interface Props {
|
|
12
|
+
interface Props extends Omit<SVGProps<SVGSVGElement>, 'viewBox'> {
|
|
13
13
|
children?: ReactNode;
|
|
14
|
-
speed?: number;
|
|
15
|
-
width?: number;
|
|
16
|
-
height?: number;
|
|
17
14
|
primaryColor?: string;
|
|
18
15
|
secondaryColor?: string;
|
|
19
|
-
|
|
20
|
-
className?: string;
|
|
16
|
+
viewBox?: string | null;
|
|
21
17
|
}
|
|
22
18
|
|
|
23
19
|
const ContentLoader = ({
|
|
@@ -29,18 +25,22 @@ const ContentLoader = ({
|
|
|
29
25
|
primaryColor = '#f0f0f0',
|
|
30
26
|
secondaryColor = '#e0e0e0',
|
|
31
27
|
speed = 2,
|
|
28
|
+
viewBox: viewBoxProp,
|
|
32
29
|
...rest
|
|
33
30
|
}: Props) => {
|
|
34
31
|
const idClip = uuid();
|
|
35
32
|
const idGradient = uuid();
|
|
33
|
+
const viewBox = viewBoxProp === undefined ? `0 0 ${width} ${height}` : viewBoxProp;
|
|
36
34
|
|
|
37
35
|
return (
|
|
38
36
|
<svg
|
|
39
|
-
viewBox={
|
|
37
|
+
viewBox={viewBox ?? undefined}
|
|
40
38
|
version="1.1"
|
|
41
39
|
preserveAspectRatio={preserveAspectRatio}
|
|
42
40
|
className={className}
|
|
43
|
-
{...rest}
|
|
41
|
+
{...rest}
|
|
42
|
+
height={typeof height === 'string' ? height : undefined}
|
|
43
|
+
width={typeof width === 'string' ? width : undefined}>
|
|
44
44
|
<rect
|
|
45
45
|
style={{ fill: `url(#${idGradient})` }}
|
|
46
46
|
clipPath={`url(#${idClip})`}
|
|
@@ -128,6 +128,7 @@ export const FilterButtons = ({ heading, items, onFilterToggle, onRemoveAllFilte
|
|
|
128
128
|
</StyledButtonElementWrapper>
|
|
129
129
|
))}
|
|
130
130
|
<Modal
|
|
131
|
+
label={t('searchPage.searchFilterMessages.resourceTypeFilter.button')}
|
|
131
132
|
size="fullscreen"
|
|
132
133
|
animation="subtle"
|
|
133
134
|
backgroundColor="white"
|