@ndla/ui 34.6.2 → 34.6.3

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 (153) hide show
  1. package/es/Article/Article.js +11 -6
  2. package/es/Aside/Aside.js +5 -2
  3. package/es/CopyParagraphButton/CopyParagraphButtonV2.js +85 -0
  4. package/es/CopyParagraphButton/index.js +2 -1
  5. package/es/Embed/AudioEmbed.js +254 -0
  6. package/es/Embed/BrightcoveEmbed.js +250 -0
  7. package/es/Embed/ConceptEmbed.js +358 -0
  8. package/es/Embed/ConceptListEmbed.js +71 -0
  9. package/es/Embed/ContentLinkEmbed.js +42 -0
  10. package/es/Embed/ExternalEmbed.js +91 -0
  11. package/es/Embed/FootnoteEmbed.js +32 -0
  12. package/es/Embed/H5pEmbed.js +87 -0
  13. package/es/Embed/IframeEmbed.js +83 -0
  14. package/es/Embed/ImageEmbed.js +322 -0
  15. package/es/Embed/RelatedContentEmbed.js +58 -0
  16. package/es/Embed/UnknownEmbed.js +27 -0
  17. package/es/Embed/conceptComponents.js +282 -0
  18. package/es/Embed/index.js +21 -0
  19. package/es/FactBox/FactBoxV2.js +90 -0
  20. package/es/FactBox/index.js +1 -0
  21. package/es/Figure/Figure.js +8 -5
  22. package/es/Figure/FigureLicenseDialogContent.js +72 -0
  23. package/es/FileList/FileListV2.js +47 -0
  24. package/es/FileList/FileV2.js +34 -0
  25. package/es/FileList/PdfFile.js +25 -0
  26. package/es/FileList/index.js +3 -0
  27. package/es/Notion/Notion.js +5 -5
  28. package/es/Notion/NotionVisualElement.js +2 -2
  29. package/es/RelatedArticleList/RelatedArticleV2.js +101 -0
  30. package/es/RelatedArticleList/index.js +2 -1
  31. package/es/Table/Table.js +95 -8
  32. package/es/all.css +1 -1
  33. package/es/index.js +5 -4
  34. package/es/locale/messages-en.js +8 -1
  35. package/es/locale/messages-nb.js +8 -1
  36. package/es/locale/messages-nn.js +8 -1
  37. package/es/locale/messages-se.js +8 -1
  38. package/es/locale/messages-sma.js +8 -1
  39. package/lib/Article/Article.d.ts +2 -1
  40. package/lib/Article/Article.js +11 -6
  41. package/lib/Aside/Aside.d.ts +2 -1
  42. package/lib/Aside/Aside.js +5 -2
  43. package/lib/CopyParagraphButton/CopyParagraphButtonV2.d.ts +14 -0
  44. package/lib/CopyParagraphButton/CopyParagraphButtonV2.js +84 -0
  45. package/lib/CopyParagraphButton/index.d.ts +2 -1
  46. package/lib/CopyParagraphButton/index.js +7 -0
  47. package/lib/Embed/AudioEmbed.d.ts +20 -0
  48. package/lib/Embed/AudioEmbed.js +252 -0
  49. package/lib/Embed/BrightcoveEmbed.d.ts +16 -0
  50. package/lib/Embed/BrightcoveEmbed.js +250 -0
  51. package/lib/Embed/ConceptEmbed.d.ts +19 -0
  52. package/lib/Embed/ConceptEmbed.js +358 -0
  53. package/lib/Embed/ConceptListEmbed.d.ts +13 -0
  54. package/lib/Embed/ConceptListEmbed.js +70 -0
  55. package/lib/Embed/ContentLinkEmbed.d.ts +14 -0
  56. package/lib/Embed/ContentLinkEmbed.js +50 -0
  57. package/lib/Embed/ExternalEmbed.d.ts +14 -0
  58. package/lib/Embed/ExternalEmbed.js +90 -0
  59. package/lib/Embed/FootnoteEmbed.d.ts +13 -0
  60. package/lib/Embed/FootnoteEmbed.js +39 -0
  61. package/lib/Embed/H5pEmbed.d.ts +14 -0
  62. package/lib/Embed/H5pEmbed.js +86 -0
  63. package/lib/Embed/IframeEmbed.d.ts +14 -0
  64. package/lib/Embed/IframeEmbed.js +91 -0
  65. package/lib/Embed/ImageEmbed.d.ts +37 -0
  66. package/lib/Embed/ImageEmbed.js +326 -0
  67. package/lib/Embed/RelatedContentEmbed.d.ts +16 -0
  68. package/lib/Embed/RelatedContentEmbed.js +64 -0
  69. package/lib/Embed/UnknownEmbed.d.ts +13 -0
  70. package/lib/Embed/UnknownEmbed.js +35 -0
  71. package/lib/Embed/conceptComponents.d.ts +32 -0
  72. package/lib/Embed/conceptComponents.js +280 -0
  73. package/lib/Embed/index.d.ts +20 -0
  74. package/lib/Embed/index.js +97 -0
  75. package/lib/FactBox/FactBoxV2.d.ts +13 -0
  76. package/lib/FactBox/FactBoxV2.js +92 -0
  77. package/lib/FactBox/index.d.ts +1 -0
  78. package/lib/FactBox/index.js +7 -0
  79. package/lib/Figure/Figure.d.ts +5 -2
  80. package/lib/Figure/Figure.js +8 -5
  81. package/lib/Figure/FigureLicenseDialogContent.d.ts +22 -0
  82. package/lib/Figure/FigureLicenseDialogContent.js +71 -0
  83. package/lib/FileList/FileListV2.d.ts +13 -0
  84. package/lib/FileList/FileListV2.js +46 -0
  85. package/lib/FileList/FileV2.d.ts +16 -0
  86. package/lib/FileList/FileV2.js +42 -0
  87. package/lib/FileList/PdfFile.d.ts +13 -0
  88. package/lib/FileList/PdfFile.js +31 -0
  89. package/lib/FileList/index.d.ts +3 -0
  90. package/lib/FileList/index.js +21 -0
  91. package/lib/Notion/Notion.js +5 -5
  92. package/lib/Notion/NotionVisualElement.d.ts +1 -1
  93. package/lib/Notion/NotionVisualElement.js +2 -2
  94. package/lib/RelatedArticleList/RelatedArticleV2.d.ts +25 -0
  95. package/lib/RelatedArticleList/RelatedArticleV2.js +101 -0
  96. package/lib/RelatedArticleList/index.d.ts +2 -1
  97. package/lib/RelatedArticleList/index.js +7 -0
  98. package/lib/Table/Table.js +98 -8
  99. package/lib/all.css +1 -1
  100. package/lib/index.d.ts +5 -4
  101. package/lib/index.js +117 -2
  102. package/lib/locale/messages-en.d.ts +7 -0
  103. package/lib/locale/messages-en.js +8 -1
  104. package/lib/locale/messages-nb.d.ts +7 -0
  105. package/lib/locale/messages-nb.js +8 -1
  106. package/lib/locale/messages-nn.d.ts +7 -0
  107. package/lib/locale/messages-nn.js +8 -1
  108. package/lib/locale/messages-se.d.ts +7 -0
  109. package/lib/locale/messages-se.js +8 -1
  110. package/lib/locale/messages-sma.d.ts +7 -0
  111. package/lib/locale/messages-sma.js +8 -1
  112. package/lib/types.d.ts +1 -1
  113. package/package.json +16 -12
  114. package/src/Article/Article.tsx +8 -3
  115. package/src/Aside/Aside.tsx +9 -1
  116. package/src/Aside/component.aside.scss +3 -0
  117. package/src/CopyParagraphButton/CopyParagraphButtonV2.tsx +84 -0
  118. package/src/CopyParagraphButton/index.tsx +2 -1
  119. package/src/Embed/AudioEmbed.tsx +249 -0
  120. package/src/Embed/BrightcoveEmbed.tsx +203 -0
  121. package/src/Embed/ConceptEmbed.tsx +408 -0
  122. package/src/Embed/ConceptListEmbed.tsx +64 -0
  123. package/src/Embed/ContentLinkEmbed.tsx +41 -0
  124. package/src/Embed/ExternalEmbed.tsx +80 -0
  125. package/src/Embed/FootnoteEmbed.tsx +30 -0
  126. package/src/Embed/H5pEmbed.tsx +74 -0
  127. package/src/Embed/IframeEmbed.tsx +84 -0
  128. package/src/Embed/ImageEmbed.tsx +314 -0
  129. package/src/Embed/RelatedContentEmbed.tsx +62 -0
  130. package/src/Embed/UnknownEmbed.tsx +27 -0
  131. package/src/Embed/conceptComponents.tsx +393 -0
  132. package/src/Embed/index.ts +21 -0
  133. package/src/FactBox/FactBoxV2.tsx +56 -0
  134. package/src/FactBox/index.ts +2 -0
  135. package/src/Figure/Figure.tsx +28 -15
  136. package/src/Figure/FigureLicenseDialogContent.tsx +80 -0
  137. package/src/Figure/component.figure.scss +0 -1
  138. package/src/FileList/FileListV2.tsx +58 -0
  139. package/src/FileList/FileV2.tsx +35 -0
  140. package/src/FileList/PdfFile.tsx +25 -0
  141. package/src/FileList/index.ts +3 -0
  142. package/src/Notion/Notion.tsx +0 -1
  143. package/src/Notion/NotionVisualElement.tsx +1 -1
  144. package/src/RelatedArticleList/RelatedArticleV2.tsx +84 -0
  145. package/src/RelatedArticleList/index.ts +2 -1
  146. package/src/Table/Table.tsx +77 -4
  147. package/src/index.ts +19 -4
  148. package/src/locale/messages-en.ts +7 -0
  149. package/src/locale/messages-nb.ts +7 -0
  150. package/src/locale/messages-nn.ts +7 -0
  151. package/src/locale/messages-se.ts +7 -0
  152. package/src/locale/messages-sma.ts +7 -0
  153. package/src/types.ts +1 -1
package/lib/index.d.ts CHANGED
@@ -6,6 +6,7 @@
6
6
  *
7
7
  */
8
8
  export { default as SectionHeading } from './SectionHeading';
9
+ export { ConceptNotionV2, ImageEmbed, AudioEmbed, H5pEmbed, ExternalEmbed, IframeEmbed, FootnoteEmbed, BrightcoveEmbed, ContentLinkEmbed, RelatedContentEmbed, ConceptEmbed, ConceptListEmbed, UnknownEmbed, } from './Embed';
9
10
  export { ArticleByline, ArticleContent, ArticleFootNotes, ArticleIntroduction, ArticleTitle, ArticleWrapper, ArticleHeaderWrapper, ArticleSideBar, default as Article, } from './Article';
10
11
  export { CompetenceGoalsDialog } from './CompetenceGoals';
11
12
  export { default as Table } from './Table';
@@ -15,15 +16,15 @@ export { default as NoContentBox } from './NoContentBox';
15
16
  export { default as Masthead, MastheadItem, getMastheadHeight, useMastheadHeight, SkipToMainContent } from './Masthead';
16
17
  export { default as Portrait } from './Portrait';
17
18
  export { default as ContentLoader } from './ContentLoader';
18
- export { default as RelatedArticleList, RelatedArticle } from './RelatedArticleList';
19
+ export { default as RelatedArticleList, RelatedArticle, RelatedArticleListV2 } from './RelatedArticleList';
19
20
  export { ErrorResourceAccessDenied, default as ErrorMessage } from './ErrorMessage';
20
- export { default as FileList, File } from './FileList';
21
+ export { default as FileList, File, FileListV2, FileV2, PdfFile } from './FileList';
21
22
  export { BlogPost, BlogPostWrapper } from './BlogPosts';
22
23
  export { default as Logo } from './Logo';
23
24
  export { InfoBox } from './InfoBox';
24
25
  export { default as InfoWidget } from './InfoWidget';
25
26
  export { FrontpageInfo, FrontpageFilm, FrontpageToolbox, FrontpageMultidisciplinarySubject, FrontpageHeader, FrontpageSubjectIllustration, FrontpageSearch, FrontpageProgramMenu, } from './Frontpage';
26
- export { default as FactBox } from './FactBox';
27
+ export { default as FactBox, FactBoxV2 } from './FactBox';
27
28
  export { default as Image, ImageLink, makeSrcQueryString } from './Image';
28
29
  export type { ImageCrop, ImageFocalPoint } from './Image';
29
30
  export type { HeroContentType } from './Hero';
@@ -77,7 +78,7 @@ export { MediaList, MediaListItem, MediaListItemBody, MediaListItemActions, Medi
77
78
  export { default as ContentTypeBadge, SubjectMaterialBadge, TasksAndActivitiesBadge, AssessmentResourcesBadge, LearningPathBadge, SubjectBadge, ExternalLearningResourcesBadge, SourceMaterialBadge, } from './ContentTypeBadge';
78
79
  export { SubjectChildContent, SubjectContent, SubjectFlexWrapper, SubjectHeader, SubjectNewContent, SubjectSecondaryContent, SubjectSectionTitle, SubjectSidebarWrapper, SubjectSocialContent, SubjectSocialSection, SubjectTopics, SubjectBanner, } from './Subject';
79
80
  export { default as ContentCard } from './ContentCard';
80
- export { default as CopyParagraphButton } from './CopyParagraphButton';
81
+ export { default as CopyParagraphButton, CopyParagraphButtonV2 } from './CopyParagraphButton';
81
82
  export { default as ContentPlaceholder } from './ContentPlaceholder';
82
83
  export { Notion, ConceptNotion } from './Notion';
83
84
  export type { NotionVisualElementType, ConceptNotionType } from './Notion';
package/lib/index.js CHANGED
@@ -100,6 +100,12 @@ Object.defineProperty(exports, "AssessmentResourcesHero", {
100
100
  return _Hero.AssessmentResourcesHero;
101
101
  }
102
102
  });
103
+ Object.defineProperty(exports, "AudioEmbed", {
104
+ enumerable: true,
105
+ get: function get() {
106
+ return _Embed.AudioEmbed;
107
+ }
108
+ });
103
109
  Object.defineProperty(exports, "AudioPlayer", {
104
110
  enumerable: true,
105
111
  get: function get() {
@@ -160,6 +166,12 @@ Object.defineProperty(exports, "Breadcrumblist", {
160
166
  return _Breadcrumblist["default"];
161
167
  }
162
168
  });
169
+ Object.defineProperty(exports, "BrightcoveEmbed", {
170
+ enumerable: true,
171
+ get: function get() {
172
+ return _Embed.BrightcoveEmbed;
173
+ }
174
+ });
163
175
  Object.defineProperty(exports, "CompetenceGoalTab", {
164
176
  enumerable: true,
165
177
  get: function get() {
@@ -172,12 +184,30 @@ Object.defineProperty(exports, "CompetenceGoalsDialog", {
172
184
  return _CompetenceGoals.CompetenceGoalsDialog;
173
185
  }
174
186
  });
187
+ Object.defineProperty(exports, "ConceptEmbed", {
188
+ enumerable: true,
189
+ get: function get() {
190
+ return _Embed.ConceptEmbed;
191
+ }
192
+ });
193
+ Object.defineProperty(exports, "ConceptListEmbed", {
194
+ enumerable: true,
195
+ get: function get() {
196
+ return _Embed.ConceptListEmbed;
197
+ }
198
+ });
175
199
  Object.defineProperty(exports, "ConceptNotion", {
176
200
  enumerable: true,
177
201
  get: function get() {
178
202
  return _Notion.ConceptNotion;
179
203
  }
180
204
  });
205
+ Object.defineProperty(exports, "ConceptNotionV2", {
206
+ enumerable: true,
207
+ get: function get() {
208
+ return _Embed.ConceptNotionV2;
209
+ }
210
+ });
181
211
  Object.defineProperty(exports, "Content", {
182
212
  enumerable: true,
183
213
  get: function get() {
@@ -190,6 +220,12 @@ Object.defineProperty(exports, "ContentCard", {
190
220
  return _ContentCard["default"];
191
221
  }
192
222
  });
223
+ Object.defineProperty(exports, "ContentLinkEmbed", {
224
+ enumerable: true,
225
+ get: function get() {
226
+ return _Embed.ContentLinkEmbed;
227
+ }
228
+ });
193
229
  Object.defineProperty(exports, "ContentLoader", {
194
230
  enumerable: true,
195
231
  get: function get() {
@@ -220,6 +256,12 @@ Object.defineProperty(exports, "CopyParagraphButton", {
220
256
  return _CopyParagraphButton["default"];
221
257
  }
222
258
  });
259
+ Object.defineProperty(exports, "CopyParagraphButtonV2", {
260
+ enumerable: true,
261
+ get: function get() {
262
+ return _CopyParagraphButton.CopyParagraphButtonV2;
263
+ }
264
+ });
223
265
  Object.defineProperty(exports, "CreatedBy", {
224
266
  enumerable: true,
225
267
  get: function get() {
@@ -256,6 +298,12 @@ Object.defineProperty(exports, "ErrorResourceAccessDenied", {
256
298
  return _ErrorMessage.ErrorResourceAccessDenied;
257
299
  }
258
300
  });
301
+ Object.defineProperty(exports, "ExternalEmbed", {
302
+ enumerable: true,
303
+ get: function get() {
304
+ return _Embed.ExternalEmbed;
305
+ }
306
+ });
259
307
  Object.defineProperty(exports, "ExternalLearningResourcesBadge", {
260
308
  enumerable: true,
261
309
  get: function get() {
@@ -274,6 +322,12 @@ Object.defineProperty(exports, "FactBox", {
274
322
  return _FactBox["default"];
275
323
  }
276
324
  });
325
+ Object.defineProperty(exports, "FactBoxV2", {
326
+ enumerable: true,
327
+ get: function get() {
328
+ return _FactBox.FactBoxV2;
329
+ }
330
+ });
277
331
  Object.defineProperty(exports, "Figure", {
278
332
  enumerable: true,
279
333
  get: function get() {
@@ -322,6 +376,18 @@ Object.defineProperty(exports, "FileList", {
322
376
  return _FileList["default"];
323
377
  }
324
378
  });
379
+ Object.defineProperty(exports, "FileListV2", {
380
+ enumerable: true,
381
+ get: function get() {
382
+ return _FileList.FileListV2;
383
+ }
384
+ });
385
+ Object.defineProperty(exports, "FileV2", {
386
+ enumerable: true,
387
+ get: function get() {
388
+ return _FileList.FileV2;
389
+ }
390
+ });
325
391
  Object.defineProperty(exports, "FilmMovieList", {
326
392
  enumerable: true,
327
393
  get: function get() {
@@ -388,6 +454,12 @@ Object.defineProperty(exports, "FooterText", {
388
454
  return _Footer.FooterText;
389
455
  }
390
456
  });
457
+ Object.defineProperty(exports, "FootnoteEmbed", {
458
+ enumerable: true,
459
+ get: function get() {
460
+ return _Embed.FootnoteEmbed;
461
+ }
462
+ });
391
463
  Object.defineProperty(exports, "FrontpageFilm", {
392
464
  enumerable: true,
393
465
  get: function get() {
@@ -436,6 +508,12 @@ Object.defineProperty(exports, "FrontpageToolbox", {
436
508
  return _Frontpage.FrontpageToolbox;
437
509
  }
438
510
  });
511
+ Object.defineProperty(exports, "H5pEmbed", {
512
+ enumerable: true,
513
+ get: function get() {
514
+ return _Embed.H5pEmbed;
515
+ }
516
+ });
439
517
  Object.defineProperty(exports, "HeaderBreadcrumb", {
440
518
  enumerable: true,
441
519
  get: function get() {
@@ -454,12 +532,24 @@ Object.defineProperty(exports, "HomeBreadcrumb", {
454
532
  return _Breadcrumb.HomeBreadcrumb;
455
533
  }
456
534
  });
535
+ Object.defineProperty(exports, "IframeEmbed", {
536
+ enumerable: true,
537
+ get: function get() {
538
+ return _Embed.IframeEmbed;
539
+ }
540
+ });
457
541
  Object.defineProperty(exports, "Image", {
458
542
  enumerable: true,
459
543
  get: function get() {
460
544
  return _Image["default"];
461
545
  }
462
546
  });
547
+ Object.defineProperty(exports, "ImageEmbed", {
548
+ enumerable: true,
549
+ get: function get() {
550
+ return _Embed.ImageEmbed;
551
+ }
552
+ });
463
553
  Object.defineProperty(exports, "ImageLink", {
464
554
  enumerable: true,
465
555
  get: function get() {
@@ -724,6 +814,12 @@ Object.defineProperty(exports, "PageContainer", {
724
814
  return _Layout.PageContainer;
725
815
  }
726
816
  });
817
+ Object.defineProperty(exports, "PdfFile", {
818
+ enumerable: true,
819
+ get: function get() {
820
+ return _FileList.PdfFile;
821
+ }
822
+ });
727
823
  Object.defineProperty(exports, "Portrait", {
728
824
  enumerable: true,
729
825
  get: function get() {
@@ -754,6 +850,18 @@ Object.defineProperty(exports, "RelatedArticleList", {
754
850
  return _RelatedArticleList["default"];
755
851
  }
756
852
  });
853
+ Object.defineProperty(exports, "RelatedArticleListV2", {
854
+ enumerable: true,
855
+ get: function get() {
856
+ return _RelatedArticleList.RelatedArticleListV2;
857
+ }
858
+ });
859
+ Object.defineProperty(exports, "RelatedContentEmbed", {
860
+ enumerable: true,
861
+ get: function get() {
862
+ return _Embed.RelatedContentEmbed;
863
+ }
864
+ });
757
865
  Object.defineProperty(exports, "ResourceBox", {
758
866
  enumerable: true,
759
867
  get: function get() {
@@ -1042,6 +1150,12 @@ Object.defineProperty(exports, "TreeStructure", {
1042
1150
  return _TreeStructure.TreeStructure;
1043
1151
  }
1044
1152
  });
1153
+ Object.defineProperty(exports, "UnknownEmbed", {
1154
+ enumerable: true,
1155
+ get: function get() {
1156
+ return _Embed.UnknownEmbed;
1157
+ }
1158
+ });
1045
1159
  Object.defineProperty(exports, "UserInfo", {
1046
1160
  enumerable: true,
1047
1161
  get: function get() {
@@ -1133,6 +1247,7 @@ Object.defineProperty(exports, "useSnack", {
1133
1247
  }
1134
1248
  });
1135
1249
  var _SectionHeading = _interopRequireDefault(require("./SectionHeading"));
1250
+ var _Embed = require("./Embed");
1136
1251
  var _Article = _interopRequireWildcard(require("./Article"));
1137
1252
  var _CompetenceGoals = require("./CompetenceGoals");
1138
1253
  var _Table = _interopRequireDefault(require("./Table"));
@@ -1150,7 +1265,7 @@ var _Logo = _interopRequireDefault(require("./Logo"));
1150
1265
  var _InfoBox = require("./InfoBox");
1151
1266
  var _InfoWidget = _interopRequireDefault(require("./InfoWidget"));
1152
1267
  var _Frontpage = require("./Frontpage");
1153
- var _FactBox = _interopRequireDefault(require("./FactBox"));
1268
+ var _FactBox = _interopRequireWildcard(require("./FactBox"));
1154
1269
  var _Image = _interopRequireWildcard(require("./Image"));
1155
1270
  var _Hero = require("./Hero");
1156
1271
  var _Filter = require("./Filter");
@@ -1196,7 +1311,7 @@ var _MediaList = require("./MediaList");
1196
1311
  var _ContentTypeBadge = _interopRequireWildcard(require("./ContentTypeBadge"));
1197
1312
  var _Subject = require("./Subject");
1198
1313
  var _ContentCard = _interopRequireDefault(require("./ContentCard"));
1199
- var _CopyParagraphButton = _interopRequireDefault(require("./CopyParagraphButton"));
1314
+ var _CopyParagraphButton = _interopRequireWildcard(require("./CopyParagraphButton"));
1200
1315
  var _ContentPlaceholder = _interopRequireDefault(require("./ContentPlaceholder"));
1201
1316
  var _Notion = require("./Notion");
1202
1317
  var _BannerCard = require("./BannerCard");
@@ -208,6 +208,11 @@ declare const messages: {
208
208
  programme: {
209
209
  grades: string;
210
210
  };
211
+ embed: {
212
+ conceptListError: string;
213
+ linkError: string;
214
+ unsupported: string;
215
+ };
211
216
  common: {
212
217
  subject: string;
213
218
  subject_plural: string;
@@ -796,6 +801,7 @@ declare const messages: {
796
801
  rightsholder: string;
797
802
  source: string;
798
803
  published: string;
804
+ info: string;
799
805
  };
800
806
  errorMessage: {
801
807
  title: string;
@@ -930,6 +936,7 @@ declare const messages: {
930
936
  hits: string;
931
937
  };
932
938
  notions: {
939
+ tags: string;
933
940
  usedIn: string;
934
941
  closeNotion: string;
935
942
  };
@@ -587,7 +587,8 @@ var messages = _objectSpread(_objectSpread({
587
587
  originator: 'Originator',
588
588
  rightsholder: 'Rightsholder',
589
589
  source: 'Source',
590
- published: 'Published'
590
+ published: 'Published',
591
+ info: 'License information'
591
592
  },
592
593
  errorMessage: {
593
594
  title: 'Oops, something went wrong',
@@ -722,6 +723,7 @@ var messages = _objectSpread(_objectSpread({
722
723
  hits: '{{count}} hits'
723
724
  },
724
725
  notions: {
726
+ tags: 'List and filters',
725
727
  usedIn: 'Used in',
726
728
  closeNotion: 'Close'
727
729
  },
@@ -1182,6 +1184,11 @@ var messages = _objectSpread(_objectSpread({
1182
1184
  },
1183
1185
  programme: {
1184
1186
  grades: 'Grades'
1187
+ },
1188
+ embed: {
1189
+ conceptListError: 'Failed to show concept list',
1190
+ linkError: 'Failed to show link.',
1191
+ unsupported: "Embed {{type}} not supported."
1185
1192
  }
1186
1193
  });
1187
1194
  var _default = messages;
@@ -208,6 +208,11 @@ declare const messages: {
208
208
  programme: {
209
209
  grades: string;
210
210
  };
211
+ embed: {
212
+ conceptListError: string;
213
+ linkError: string;
214
+ unsupported: string;
215
+ };
211
216
  common: {
212
217
  subject: string;
213
218
  subject_plural: string;
@@ -796,6 +801,7 @@ declare const messages: {
796
801
  published: string;
797
802
  rightsholder: string;
798
803
  source: string;
804
+ info: string;
799
805
  };
800
806
  errorMessage: {
801
807
  title: string;
@@ -930,6 +936,7 @@ declare const messages: {
930
936
  hits: string;
931
937
  };
932
938
  notions: {
939
+ tags: string;
933
940
  usedIn: string;
934
941
  closeNotion: string;
935
942
  };
@@ -587,7 +587,8 @@ var messages = _objectSpread(_objectSpread({
587
587
  originator: 'Opphaver',
588
588
  published: 'Publiseringsdato',
589
589
  rightsholder: 'Rettighetshaver',
590
- source: 'Kilde'
590
+ source: 'Kilde',
591
+ info: 'Lisensinformasjon'
591
592
  },
592
593
  errorMessage: {
593
594
  title: 'Ops, noe gikk galt',
@@ -722,6 +723,7 @@ var messages = _objectSpread(_objectSpread({
722
723
  hits: '{{count}} treff'
723
724
  },
724
725
  notions: {
726
+ tags: 'Liste og filter',
725
727
  usedIn: 'Brukes i',
726
728
  closeNotion: 'Lukk'
727
729
  },
@@ -1182,6 +1184,11 @@ var messages = _objectSpread(_objectSpread({
1182
1184
  },
1183
1185
  programme: {
1184
1186
  grades: 'Trinn'
1187
+ },
1188
+ embed: {
1189
+ conceptListError: 'Klarte ikke å vise forklaringsliste',
1190
+ linkError: 'Klarte ikke å vise lenke.',
1191
+ unsupported: "Embed {{type}} er ikke st\xF8ttet."
1185
1192
  }
1186
1193
  });
1187
1194
  var _default = messages;
@@ -208,6 +208,11 @@ declare const messages: {
208
208
  programme: {
209
209
  grades: string;
210
210
  };
211
+ embed: {
212
+ conceptListError: string;
213
+ linkError: string;
214
+ unsupported: string;
215
+ };
211
216
  common: {
212
217
  subject: string;
213
218
  subject_plural: string;
@@ -796,6 +801,7 @@ declare const messages: {
796
801
  rightsholder: string;
797
802
  source: string;
798
803
  published: string;
804
+ info: string;
799
805
  };
800
806
  errorMessage: {
801
807
  title: string;
@@ -930,6 +936,7 @@ declare const messages: {
930
936
  hits: string;
931
937
  };
932
938
  notions: {
939
+ tags: string;
933
940
  usedIn: string;
934
941
  closeNotion: string;
935
942
  };
@@ -587,7 +587,8 @@ var messages = _objectSpread(_objectSpread({
587
587
  originator: 'Opphavar',
588
588
  rightsholder: 'Rettshavar',
589
589
  source: 'Kjelde',
590
- published: 'Publiseringsdato'
590
+ published: 'Publiseringsdato',
591
+ info: 'Lisensinformasjon'
591
592
  },
592
593
  errorMessage: {
593
594
  title: 'Ops, noko gjekk gale',
@@ -722,6 +723,7 @@ var messages = _objectSpread(_objectSpread({
722
723
  hits: '{{count}} treff'
723
724
  },
724
725
  notions: {
726
+ tags: 'Liste og filter',
725
727
  usedIn: 'Brukast i',
726
728
  closeNotion: 'Lukk'
727
729
  },
@@ -1182,6 +1184,11 @@ var messages = _objectSpread(_objectSpread({
1182
1184
  },
1183
1185
  programme: {
1184
1186
  grades: 'Trinn'
1187
+ },
1188
+ embed: {
1189
+ conceptListError: 'Klarte ikkje å vise forklaringsliste',
1190
+ linkError: 'Klarte ikkje å vise lenke.',
1191
+ unsupported: "Embed {{type}} er ikkje st\xF8tta."
1185
1192
  }
1186
1193
  });
1187
1194
  var _default = messages;
@@ -208,6 +208,11 @@ declare const messages: {
208
208
  programme: {
209
209
  grades: string;
210
210
  };
211
+ embed: {
212
+ conceptListError: string;
213
+ linkError: string;
214
+ unsupported: string;
215
+ };
211
216
  common: {
212
217
  subject: string;
213
218
  subject_plural: string;
@@ -796,6 +801,7 @@ declare const messages: {
796
801
  published: string;
797
802
  rightsholder: string;
798
803
  source: string;
804
+ info: string;
799
805
  };
800
806
  errorMessage: {
801
807
  title: string;
@@ -930,6 +936,7 @@ declare const messages: {
930
936
  hits: string;
931
937
  };
932
938
  notions: {
939
+ tags: string;
933
940
  usedIn: string;
934
941
  closeNotion: string;
935
942
  };
@@ -587,7 +587,8 @@ var messages = _objectSpread(_objectSpread({
587
587
  originator: 'Ásaheaddji',
588
588
  published: 'Almmuhanbeaivi',
589
589
  rightsholder: 'Vuoigatvuođaguoddi',
590
- source: 'Gáldu'
590
+ source: 'Gáldu',
591
+ info: 'Lisensinformasjon'
591
592
  },
592
593
  errorMessage: {
593
594
  title: 'Ops, juoga manai boastut',
@@ -722,6 +723,7 @@ var messages = _objectSpread(_objectSpread({
722
723
  hits: '{{count}} deaivama'
723
724
  },
724
725
  notions: {
726
+ tags: 'Liste og filter',
725
727
  usedIn: 'Adnojuvvo dás',
726
728
  closeNotion: 'Govčča'
727
729
  },
@@ -1182,6 +1184,11 @@ var messages = _objectSpread(_objectSpread({
1182
1184
  },
1183
1185
  programme: {
1184
1186
  grades: 'Trinn'
1187
+ },
1188
+ embed: {
1189
+ conceptListError: 'Klarte ikkje å vise forklaringsliste',
1190
+ linkError: 'Klarte ikkje å vise lenke.',
1191
+ unsupported: "Embed {{type}} er ikkje st\xF8tta."
1185
1192
  }
1186
1193
  });
1187
1194
  var _default = messages;
@@ -208,6 +208,11 @@ declare const messages: {
208
208
  programme: {
209
209
  grades: string;
210
210
  };
211
+ embed: {
212
+ conceptListError: string;
213
+ linkError: string;
214
+ unsupported: string;
215
+ };
211
216
  common: {
212
217
  subject: string;
213
218
  subject_plural: string;
@@ -796,6 +801,7 @@ declare const messages: {
796
801
  published: string;
797
802
  rightsholder: string;
798
803
  source: string;
804
+ info: string;
799
805
  };
800
806
  errorMessage: {
801
807
  title: string;
@@ -930,6 +936,7 @@ declare const messages: {
930
936
  hits: string;
931
937
  };
932
938
  notions: {
939
+ tags: string;
933
940
  usedIn: string;
934
941
  closeNotion: string;
935
942
  };
@@ -587,7 +587,8 @@ var messages = _objectSpread(_objectSpread({
587
587
  originator: 'Opphaver',
588
588
  published: 'Publiseringsdato',
589
589
  rightsholder: 'Rettighetshaver',
590
- source: 'Gaaltije'
590
+ source: 'Gaaltije',
591
+ info: 'Lisensinformasjon'
591
592
  },
592
593
  errorMessage: {
593
594
  title: 'Ovva, mij akt båajhtede sjïdtit',
@@ -722,6 +723,7 @@ var messages = _objectSpread(_objectSpread({
722
723
  hits: '{{count}} gaavnedimmieh'
723
724
  },
724
725
  notions: {
726
+ tags: 'Liste og filter',
725
727
  usedIn: 'Brukes i',
726
728
  closeNotion: 'Dahph'
727
729
  },
@@ -1182,6 +1184,11 @@ var messages = _objectSpread(_objectSpread({
1182
1184
  },
1183
1185
  programme: {
1184
1186
  grades: 'Trinn'
1187
+ },
1188
+ embed: {
1189
+ conceptListError: 'Klarte ikkje å vise forklaringsliste',
1190
+ linkError: 'Klarte ikkje å vise lenke.',
1191
+ unsupported: "Embed {{type}} er ikkje st\xF8tta."
1185
1192
  }
1186
1193
  });
1187
1194
  var _default = messages;
package/lib/types.d.ts CHANGED
@@ -39,7 +39,7 @@ export interface License {
39
39
  license: string;
40
40
  }
41
41
  export interface Copyright {
42
- license: License;
42
+ license?: License;
43
43
  creators: Array<Contributor>;
44
44
  rightsholders: Array<Contributor>;
45
45
  processors: Array<Contributor>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ndla/ui",
3
- "version": "34.6.2",
3
+ "version": "34.6.3",
4
4
  "description": "UI component library for NDLA.",
5
5
  "license": "GPL-3.0",
6
6
  "main": "lib/index.js",
@@ -31,28 +31,30 @@
31
31
  "types"
32
32
  ],
33
33
  "dependencies": {
34
- "@ndla/article-scripts": "^3.0.14",
35
- "@ndla/button": "^9.1.3",
34
+ "@ndla/article-scripts": "^3.0.15",
35
+ "@ndla/button": "^9.1.4",
36
36
  "@ndla/carousel": "^3.0.3",
37
37
  "@ndla/core": "^3.1.2",
38
- "@ndla/forms": "^4.2.6",
39
- "@ndla/hooks": "^2.0.1",
38
+ "@ndla/forms": "^4.2.7",
39
+ "@ndla/hooks": "^2.0.2",
40
40
  "@ndla/icons": "^2.2.3",
41
41
  "@ndla/licenses": "^7.0.1",
42
42
  "@ndla/modal": "^2.2.7",
43
- "@ndla/notion": "^4.2.3",
44
- "@ndla/safelink": "^4.0.8",
43
+ "@ndla/notion": "^4.2.4",
44
+ "@ndla/safelink": "^4.0.9",
45
45
  "@ndla/switch": "^1.0.7",
46
- "@ndla/tabs": "^2.1.6",
47
- "@ndla/tooltip": "^4.0.9",
46
+ "@ndla/tabs": "^2.1.7",
47
+ "@ndla/tooltip": "^4.0.10",
48
48
  "@ndla/types-learningpath-api": "^0.0.17",
49
- "@ndla/util": "^3.1.9",
49
+ "@ndla/util": "^3.1.10",
50
+ "@radix-ui/react-accordion": "1.1.0",
50
51
  "@radix-ui/react-dropdown-menu": "2.0.2",
52
+ "@radix-ui/react-popover": "^1.0.3",
51
53
  "@reach/menu-button": "^0.16.2",
52
54
  "@reach/slider": "^0.16.0",
53
55
  "focus-trap-react": "^8.9.2",
54
56
  "framer-motion": "^6.5.1",
55
- "html-react-parser": "^0.14.1",
57
+ "html-react-parser": "^3.0.8",
56
58
  "i18next-browser-languagedetector": "^6.1.1",
57
59
  "invariant": "^2.2.3",
58
60
  "react-bem-helper": "1.4.1",
@@ -73,6 +75,8 @@
73
75
  },
74
76
  "devDependencies": {
75
77
  "@babel/plugin-proposal-optional-chaining": "^7.11.0",
78
+ "@ndla/types-embed": "^1.0.0",
79
+ "@ndla/types-image-api": "0.0.10",
76
80
  "@types/reach__dialog": "^0.1.0",
77
81
  "css-loader": "^6.7.3",
78
82
  "mini-css-extract-plugin": "^2.7.2",
@@ -83,5 +87,5 @@
83
87
  "publishConfig": {
84
88
  "access": "public"
85
89
  },
86
- "gitHead": "3ee77008faadb18e2316c564971b19d4ca0fc2c4"
90
+ "gitHead": "3be4405a57a209633f9e8534b5f208ab50bae6f0"
87
91
  }
@@ -123,6 +123,7 @@ type Props = {
123
123
  modifier?: string;
124
124
  children?: ReactNode;
125
125
  messages: Messages;
126
+ contentTransformed?: boolean;
126
127
  locale: Locale;
127
128
  messageBoxLinks?: [];
128
129
  copyText?: string;
@@ -137,7 +138,10 @@ type Props = {
137
138
  accessMessage?: string;
138
139
  };
139
140
 
140
- const getArticleContent = (content: any, locale: Locale) => {
141
+ const getArticleContent = (content: any, locale: Locale, contentTransformed?: boolean) => {
142
+ if (contentTransformed) {
143
+ return content;
144
+ }
141
145
  switch (typeof content) {
142
146
  case 'string':
143
147
  return <ArticleContent content={content} locale={locale} />;
@@ -166,6 +170,7 @@ export const Article = ({
166
170
  accessMessage,
167
171
  heartButton,
168
172
  copyText,
173
+ contentTransformed,
169
174
  }: Props) => {
170
175
  const articleRef = useRef<HTMLDivElement>(null);
171
176
  const wrapperRef = useRef<HTMLDivElement>(null);
@@ -232,7 +237,7 @@ export const Article = ({
232
237
  buttonOffsetRight={articlePositionRight}
233
238
  />
234
239
  )}
235
- {getArticleContent(content, locale)}
240
+ {getArticleContent(content, locale, contentTransformed)}
236
241
  </LayoutItem>
237
242
 
238
243
  <LayoutItem layout="center">
@@ -242,7 +247,7 @@ export const Article = ({
242
247
  authors={authors}
243
248
  suppliers={rightsholders}
244
249
  published={published}
245
- license={licenseObj.license}
250
+ license={licenseObj?.license ?? ''}
246
251
  licenseBox={licenseBox}
247
252
  printUrl={printUrl}
248
253
  />