@ndla/ui 3.0.9 → 3.0.13

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.
@@ -149,6 +149,7 @@ declare const messages: {
149
149
  all: string;
150
150
  hits: string;
151
151
  showingSearchPhrase: string;
152
+ showingCompetenceGoalSearchPhrase: string;
152
153
  searchPhraseSuggestion: string;
153
154
  notionLabels: string;
154
155
  notionsHeading: string;
@@ -194,6 +195,7 @@ declare const messages: {
194
195
  dialogHeader: string;
195
196
  dialogText: string;
196
197
  };
198
+ archived: string;
197
199
  };
198
200
  subjectsPage: {
199
201
  chooseSubject: string;
@@ -206,6 +208,7 @@ declare const messages: {
206
208
  };
207
209
  welcomePage: {
208
210
  search: string;
211
+ searchDisclaimer: string;
209
212
  resetSearch: string;
210
213
  closeSearch: string;
211
214
  searchAllInfo: string;
@@ -326,11 +329,8 @@ declare const messages: {
326
329
  };
327
330
  };
328
331
  article: {
329
- author: string;
330
- published: string;
331
332
  edition: string;
332
333
  publisher: string;
333
- created: string;
334
334
  lastUpdated: string;
335
335
  closeLabel: string;
336
336
  useContent: string;
@@ -407,6 +407,9 @@ declare const messages: {
407
407
  copyTitle: string;
408
408
  hasCopiedTitle: string;
409
409
  };
410
+ image: {
411
+ rules: string;
412
+ };
410
413
  images: {
411
414
  heading: string;
412
415
  description: string;
@@ -546,6 +549,7 @@ declare const messages: {
546
549
  fr: string;
547
550
  de: string;
548
551
  se: string;
552
+ sma: string;
549
553
  es: string;
550
554
  zh: string;
551
555
  unknown: string;
@@ -134,6 +134,7 @@ var messages = _objectSpread(_objectSpread({
134
134
  all: 'All',
135
135
  hits: '{{count}} hits',
136
136
  showingSearchPhrase: 'Showing results for:',
137
+ showingCompetenceGoalSearchPhrase: 'Showing results for competence goals {text}',
137
138
  searchPhraseSuggestion: 'Search instead for:',
138
139
  notionLabels: 'Used in',
139
140
  notionsHeading: 'Begrepsforklaring',
@@ -178,7 +179,8 @@ var messages = _objectSpread(_objectSpread({
178
179
  iconLabel: 'in beta',
179
180
  dialogHeader: '{{title}} is under construction',
180
181
  dialogText: 'Read more at'
181
- }
182
+ },
183
+ archived: 'This is an expired and unmaintained subject.'
182
184
  },
183
185
  subjectsPage: {
184
186
  chooseSubject: 'Choose subject',
@@ -191,6 +193,7 @@ var messages = _objectSpread(_objectSpread({
191
193
  },
192
194
  welcomePage: {
193
195
  search: 'Search',
196
+ searchDisclaimer: 'We are constantly working to improve ourselves! If you have comments to the search, please use the «spør NDLA» function in the bottom right corner.',
194
197
  resetSearch: 'Empty search',
195
198
  closeSearch: 'Close search',
196
199
  searchAllInfo: 'View all results',
@@ -287,11 +290,8 @@ var messages = _objectSpread(_objectSpread({
287
290
  }
288
291
  },
289
292
  article: {
290
- author: 'Author',
291
- published: 'Published',
292
293
  edition: 'Edition',
293
294
  publisher: 'Publisher',
294
- created: 'Created',
295
295
  lastUpdated: 'Last updated',
296
296
  closeLabel: 'Close',
297
297
  useContent: 'Cite or use',
@@ -368,6 +368,9 @@ var messages = _objectSpread(_objectSpread({
368
368
  copyTitle: 'Copy link',
369
369
  hasCopiedTitle: 'Link copied'
370
370
  },
371
+ image: {
372
+ rules: 'Rules for use of image:'
373
+ },
371
374
  images: {
372
375
  heading: 'How to use images from the article',
373
376
  description: 'Remember to copy the text to be attached to the image where you use it.',
@@ -506,7 +509,8 @@ var messages = _objectSpread(_objectSpread({
506
509
  en: 'English',
507
510
  fr: 'French',
508
511
  de: 'German',
509
- se: 'Sami',
512
+ se: 'Northern Sami',
513
+ sma: 'Southern Sami',
510
514
  es: 'Spanish',
511
515
  zh: 'Chinese',
512
516
  unknown: 'Unknown',
@@ -195,6 +195,7 @@ declare const messages: {
195
195
  dialogHeader: string;
196
196
  dialogText: string;
197
197
  };
198
+ archived: string;
198
199
  };
199
200
  subjectsPage: {
200
201
  errorDescription: string;
@@ -418,6 +419,9 @@ declare const messages: {
418
419
  copyTitle: string;
419
420
  hasCopiedTitle: string;
420
421
  };
422
+ image: {
423
+ rules: string;
424
+ };
421
425
  images: {
422
426
  heading: string;
423
427
  description: string;
@@ -545,6 +549,7 @@ declare const messages: {
545
549
  fr: string;
546
550
  de: string;
547
551
  se: string;
552
+ sma: string;
548
553
  es: string;
549
554
  zh: string;
550
555
  unknown: string;
@@ -680,6 +685,7 @@ declare const messages: {
680
685
  createLearningPathButtonText: string;
681
686
  lastUpdated: string;
682
687
  youAreInALearningPath: string;
688
+ readTime: string;
683
689
  readTimeHour: string;
684
690
  readTimeHour_plurals: string;
685
691
  readTimeMinutesShort: string;
@@ -179,7 +179,8 @@ var messages = _objectSpread(_objectSpread({
179
179
  iconLabel: 'i arbeid',
180
180
  dialogHeader: '{{title}} er under arbeid.',
181
181
  dialogText: 'Du kan lese mer om hva dette betyr på'
182
- }
182
+ },
183
+ archived: 'Dette er et utgått fag som ikke vedlikeholdes.'
183
184
  },
184
185
  subjectsPage: {
185
186
  errorDescription: 'Beklager, en feil oppstod under lasting av fagene.',
@@ -379,6 +380,9 @@ var messages = _objectSpread(_objectSpread({
379
380
  copyTitle: 'Kopier lenke',
380
381
  hasCopiedTitle: 'Lenke kopiert'
381
382
  },
383
+ image: {
384
+ rules: 'Regler for bruk av bildet:'
385
+ },
382
386
  images: {
383
387
  heading: 'Slik bruker du bilder fra artikkelen',
384
388
  description: 'Husk å kopiere teksten som skal legges ved bildet der du bruker det.',
@@ -505,7 +509,8 @@ var messages = _objectSpread(_objectSpread({
505
509
  en: 'Engelsk',
506
510
  fr: 'Fransk',
507
511
  de: 'Tysk',
508
- se: 'Samisk',
512
+ se: 'Nordsamisk',
513
+ sma: 'Sørsamisk',
509
514
  es: 'Spansk',
510
515
  zh: 'Kinesisk',
511
516
  unknown: 'Ukjent',
@@ -641,6 +646,7 @@ var messages = _objectSpread(_objectSpread({
641
646
  createLearningPathButtonText: 'Gå til stier',
642
647
  lastUpdated: 'Sist oppdatert',
643
648
  youAreInALearningPath: 'Du er nå inne i en læringssti',
649
+ readTime: '{{hours}} Skoletimer = {{minutes}} min',
644
650
  readTimeHour: 'time',
645
651
  readTimeHour_plurals: 'timer',
646
652
  readTimeMinutesShort: 'min',
@@ -149,6 +149,7 @@ declare const messages: {
149
149
  all: string;
150
150
  hits: string;
151
151
  showingSearchPhrase: string;
152
+ showingCompetenceGoalSearchPhrase: string;
152
153
  searchPhraseSuggestion: string;
153
154
  notionLabels: string;
154
155
  notionsHeading: string;
@@ -194,6 +195,7 @@ declare const messages: {
194
195
  dialogHeader: string;
195
196
  dialogText: string;
196
197
  };
198
+ archived: string;
197
199
  };
198
200
  subjectsPage: {
199
201
  errorDescription: string;
@@ -417,6 +419,9 @@ declare const messages: {
417
419
  copyTitle: string;
418
420
  hasCopiedTitle: string;
419
421
  };
422
+ image: {
423
+ rules: string;
424
+ };
420
425
  images: {
421
426
  heading: string;
422
427
  description: string;
@@ -544,6 +549,7 @@ declare const messages: {
544
549
  fr: string;
545
550
  de: string;
546
551
  se: string;
552
+ sma: string;
547
553
  es: string;
548
554
  zh: string;
549
555
  unknown: string;
@@ -134,6 +134,7 @@ var messages = _objectSpread(_objectSpread({
134
134
  all: 'Alle',
135
135
  hits: '{{count}} Treff',
136
136
  showingSearchPhrase: 'Viser resultat for',
137
+ showingCompetenceGoalSearchPhrase: 'Viser resultat for kompetansemål {text}',
137
138
  searchPhraseSuggestion: 'Søk i staden for',
138
139
  notionLabels: 'Brukes i',
139
140
  notionsHeading: 'Begrepsforklaring',
@@ -178,7 +179,8 @@ var messages = _objectSpread(_objectSpread({
178
179
  iconLabel: 'i arbeid',
179
180
  dialogHeader: '{{title}} er under arbeid.',
180
181
  dialogText: 'Du kan lese meir om kva dette betyr på'
181
- }
182
+ },
183
+ archived: 'Dette er eit utgått fag som ikkje blir halde ved like.'
182
184
  },
183
185
  subjectsPage: {
184
186
  errorDescription: 'Orsak, ein feil oppstod under lasting av faga.',
@@ -378,6 +380,9 @@ var messages = _objectSpread(_objectSpread({
378
380
  copyTitle: 'Kopier lenke',
379
381
  hasCopiedTitle: 'Lenke kopiert'
380
382
  },
383
+ image: {
384
+ rules: 'Reglar for bruk av biletet:'
385
+ },
381
386
  images: {
382
387
  heading: 'Slik bruker du bilete frå artikkelen',
383
388
  description: 'Hugs å kopiere teksten som skal leggjast ved biletet der du bruker det.',
@@ -504,7 +509,8 @@ var messages = _objectSpread(_objectSpread({
504
509
  en: 'Engelsk',
505
510
  fr: 'Fransk',
506
511
  de: 'Tysk',
507
- se: 'Samisk',
512
+ se: 'Nordsamisk',
513
+ sma: 'Sørsamisk',
508
514
  es: 'Spansk',
509
515
  zh: 'Kinesisk',
510
516
  unknown: 'Ukjent',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ndla/ui",
3
- "version": "3.0.9",
3
+ "version": "3.0.13",
4
4
  "description": "UI component library for NDLA.",
5
5
  "license": "GPL-3.0",
6
6
  "main": "lib/index.js",
@@ -31,18 +31,18 @@
31
31
  "types"
32
32
  ],
33
33
  "dependencies": {
34
- "@ndla/button": "^1.0.5",
35
- "@ndla/carousel": "^1.0.5",
34
+ "@ndla/button": "^1.0.6",
35
+ "@ndla/carousel": "^1.0.6",
36
36
  "@ndla/core": "^0.7.2",
37
- "@ndla/hooks": "^1.0.3",
38
- "@ndla/icons": "^1.3.0",
39
- "@ndla/licenses": "^1.0.6",
40
- "@ndla/modal": "^1.1.8",
41
- "@ndla/safelink": "^1.0.4",
37
+ "@ndla/hooks": "^1.0.6",
38
+ "@ndla/icons": "^1.3.1",
39
+ "@ndla/licenses": "^1.0.7",
40
+ "@ndla/modal": "^1.1.11",
41
+ "@ndla/safelink": "^1.0.5",
42
42
  "@ndla/switch": "^0.0.32",
43
- "@ndla/tabs": "^1.0.5",
43
+ "@ndla/tabs": "^1.0.8",
44
44
  "@ndla/tooltip": "^0.2.46",
45
- "@ndla/util": "^1.0.3",
45
+ "@ndla/util": "^2.0.0",
46
46
  "@reach/menu-button": "^0.12.1",
47
47
  "@reach/slider": "^0.12.1",
48
48
  "@types/hoist-non-react-statics": "^3.3.1",
@@ -92,5 +92,5 @@
92
92
  "publishConfig": {
93
93
  "access": "public"
94
94
  },
95
- "gitHead": "378a5d61749861dd7197093daa8e8a1f66c35b29"
95
+ "gitHead": "815d8d7d88d2a021c35f96421eb357925c0c2b6b"
96
96
  }
@@ -64,7 +64,7 @@ type Props = {
64
64
  };
65
65
 
66
66
  const ArticleByline = ({
67
- authors,
67
+ authors = [],
68
68
  suppliers,
69
69
  license,
70
70
  licenseBox,
@@ -95,16 +95,17 @@ const ArticleByline = ({
95
95
  return contributorsArray.join('');
96
96
  };
97
97
  const licenseRights = getLicenseByAbbreviation(license, locale).rights;
98
-
99
98
  return (
100
99
  <Wrapper>
101
100
  <div>
102
101
  {t('article.lastUpdated')} {published}
103
102
  </div>
104
- {authors && (
103
+ {(authors.length > 0 || licenseRights.length > 0) && (
105
104
  <TextWrapper>
106
105
  <LicenseByline licenseRights={licenseRights}>
107
- <AuthorsWrapper>{t('article.authorsLabel', { names: renderContributors(authors) })}</AuthorsWrapper>
106
+ {authors.length > 0 && (
107
+ <AuthorsWrapper>{t('article.authorsLabel', { names: renderContributors(authors) })}</AuthorsWrapper>
108
+ )}
108
109
  </LicenseByline>
109
110
  </TextWrapper>
110
111
  )}
@@ -1,4 +1,4 @@
1
- import React, { ReactChildren } from 'react';
1
+ import React, { ReactNode } from 'react';
2
2
  import { useTranslation } from 'react-i18next';
3
3
  import styled from '@emotion/styled';
4
4
  import { breakpoints, fonts, mq } from '@ndla/core';
@@ -87,7 +87,7 @@ const Illustration = styled.div`
87
87
 
88
88
  type Props = {
89
89
  cards: ListItemProps[];
90
- children: ReactChildren;
90
+ children: ReactNode;
91
91
  totalCardCount: number;
92
92
  hideCards?: boolean;
93
93
  };
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Copyright (c) 2021-present, NDLA.
3
+ *
4
+ * This source code is licensed under the GPLv3 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ import { validateTranslationFiles } from '@ndla/util';
10
+ import messagesNB from '../messages-nb';
11
+ import messagesNN from '../messages-nn';
12
+ import messagesEN from '../messages-en';
13
+
14
+ test('That all translations has all language keys', () => {
15
+ const anyMissing = validateTranslationFiles(
16
+ [
17
+ {
18
+ languageName: 'Norsk bokmål',
19
+ translationObject: messagesNB,
20
+ },
21
+ {
22
+ languageName: 'Norsk nynorsk',
23
+ translationObject: messagesNN,
24
+ },
25
+ {
26
+ languageName: 'English',
27
+ translationObject: messagesEN,
28
+ },
29
+ ],
30
+ 'only-on-error',
31
+ );
32
+
33
+ expect(anyMissing).toBe(false);
34
+ });
@@ -131,6 +131,7 @@ const messages = {
131
131
  all: 'All',
132
132
  hits: '{{count}} hits',
133
133
  showingSearchPhrase: 'Showing results for:',
134
+ showingCompetenceGoalSearchPhrase: 'Showing results for competence goals {text}',
134
135
  searchPhraseSuggestion: 'Search instead for:',
135
136
  notionLabels: 'Used in',
136
137
  notionsHeading: 'Begrepsforklaring',
@@ -177,6 +178,7 @@ const messages = {
177
178
  dialogHeader: '{{title}} is under construction',
178
179
  dialogText: 'Read more at',
179
180
  },
181
+ archived: 'This is an expired and unmaintained subject.',
180
182
  },
181
183
  subjectsPage: {
182
184
  chooseSubject: 'Choose subject',
@@ -189,6 +191,8 @@ const messages = {
189
191
  },
190
192
  welcomePage: {
191
193
  search: 'Search',
194
+ searchDisclaimer:
195
+ 'We are constantly working to improve ourselves! If you have comments to the search, please use the «spør NDLA» function in the bottom right corner.',
192
196
  resetSearch: 'Empty search',
193
197
  closeSearch: 'Close search',
194
198
  searchAllInfo: 'View all results',
@@ -310,11 +314,8 @@ const messages = {
310
314
  },
311
315
  },
312
316
  article: {
313
- author: 'Author',
314
- published: 'Published',
315
317
  edition: 'Edition',
316
318
  publisher: 'Publisher',
317
- created: 'Created',
318
319
  lastUpdated: 'Last updated',
319
320
  closeLabel: 'Close',
320
321
  useContent: 'Cite or use',
@@ -391,6 +392,9 @@ const messages = {
391
392
  copyTitle: 'Copy link',
392
393
  hasCopiedTitle: 'Link copied',
393
394
  },
395
+ image: {
396
+ rules: 'Rules for use of image:',
397
+ },
394
398
  images: {
395
399
  heading: 'How to use images from the article',
396
400
  description: 'Remember to copy the text to be attached to the image where you use it.',
@@ -529,7 +533,8 @@ const messages = {
529
533
  en: 'English',
530
534
  fr: 'French',
531
535
  de: 'German',
532
- se: 'Sami',
536
+ se: 'Northern Sami',
537
+ sma: 'Southern Sami',
533
538
  es: 'Spanish',
534
539
  zh: 'Chinese',
535
540
  unknown: 'Unknown',
@@ -177,6 +177,7 @@ const messages = {
177
177
  dialogHeader: '{{title}} er under arbeid.',
178
178
  dialogText: 'Du kan lese mer om hva dette betyr på',
179
179
  },
180
+ archived: 'Dette er et utgått fag som ikke vedlikeholdes.',
180
181
  },
181
182
  subjectsPage: {
182
183
  errorDescription: 'Beklager, en feil oppstod under lasting av fagene.',
@@ -402,6 +403,9 @@ const messages = {
402
403
  copyTitle: 'Kopier lenke',
403
404
  hasCopiedTitle: 'Lenke kopiert',
404
405
  },
406
+ image: {
407
+ rules: 'Regler for bruk av bildet:',
408
+ },
405
409
  images: {
406
410
  heading: 'Slik bruker du bilder fra artikkelen',
407
411
  description: 'Husk å kopiere teksten som skal legges ved bildet der du bruker det.',
@@ -528,7 +532,8 @@ const messages = {
528
532
  en: 'Engelsk',
529
533
  fr: 'Fransk',
530
534
  de: 'Tysk',
531
- se: 'Samisk',
535
+ se: 'Nordsamisk',
536
+ sma: 'Sørsamisk',
532
537
  es: 'Spansk',
533
538
  zh: 'Kinesisk',
534
539
  unknown: 'Ukjent',
@@ -669,6 +674,7 @@ const messages = {
669
674
  createLearningPathButtonText: 'Gå til stier',
670
675
  lastUpdated: 'Sist oppdatert',
671
676
  youAreInALearningPath: 'Du er nå inne i en læringssti',
677
+ readTime: '{{hours}} Skoletimer = {{minutes}} min',
672
678
  readTimeHour: 'time',
673
679
  readTimeHour_plurals: 'timer',
674
680
  readTimeMinutesShort: 'min',
@@ -131,6 +131,7 @@ const messages = {
131
131
  all: 'Alle',
132
132
  hits: '{{count}} Treff',
133
133
  showingSearchPhrase: 'Viser resultat for',
134
+ showingCompetenceGoalSearchPhrase: 'Viser resultat for kompetansemål {text}',
134
135
  searchPhraseSuggestion: 'Søk i staden for',
135
136
  notionLabels: 'Brukes i',
136
137
  notionsHeading: 'Begrepsforklaring',
@@ -176,6 +177,7 @@ const messages = {
176
177
  dialogHeader: '{{title}} er under arbeid.',
177
178
  dialogText: 'Du kan lese meir om kva dette betyr på',
178
179
  },
180
+ archived: 'Dette er eit utgått fag som ikkje blir halde ved like.',
179
181
  },
180
182
  subjectsPage: {
181
183
  errorDescription: 'Orsak, ein feil oppstod under lasting av faga.',
@@ -402,6 +404,9 @@ const messages = {
402
404
  copyTitle: 'Kopier lenke',
403
405
  hasCopiedTitle: 'Lenke kopiert',
404
406
  },
407
+ image: {
408
+ rules: 'Reglar for bruk av biletet:',
409
+ },
405
410
  images: {
406
411
  heading: 'Slik bruker du bilete frå artikkelen',
407
412
  description: 'Hugs å kopiere teksten som skal leggjast ved biletet der du bruker det.',
@@ -528,7 +533,8 @@ const messages = {
528
533
  en: 'Engelsk',
529
534
  fr: 'Fransk',
530
535
  de: 'Tysk',
531
- se: 'Samisk',
536
+ se: 'Nordsamisk',
537
+ sma: 'Sørsamisk',
532
538
  es: 'Spansk',
533
539
  zh: 'Kinesisk',
534
540
  unknown: 'Ukjent',