@ndla/ui 55.0.12-alpha.0 → 55.0.14-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (408) hide show
  1. package/dist/all-aout.js +0 -0
  2. package/dist/all.css +1 -0
  3. package/dist/panda.buildinfo.json +289 -0
  4. package/dist/styles.css +1197 -0
  5. package/es/Article/Article.js +3 -4
  6. package/es/Article/ArticleByline.js +9 -9
  7. package/es/Article/ArticleFootNotes.js +4 -4
  8. package/es/Article/ArticleParagraph.js +11 -13
  9. package/es/AudioPlayer/AudioPlayer.js +142 -163
  10. package/es/AudioPlayer/Controls.js +187 -203
  11. package/es/AudioPlayer/SpeechControl.js +13 -11
  12. package/es/BlogPost/BlogPost.js +85 -23
  13. package/es/CampaignBlock/CampaignBlock.js +103 -69
  14. package/es/CodeBlock/CodeBlock.js +88 -96
  15. package/es/Concept/Concept.js +69 -0
  16. package/es/ContactBlock/ContactBlock.js +54 -40
  17. package/es/ContentLoader/index.js +7 -7
  18. package/es/ContentTypeBadge/ContentTypeBadgeNew.js +48 -0
  19. package/es/CopyParagraphButton/CopyParagraphButton.js +4 -4
  20. package/es/Embed/AudioEmbed.js +6 -11
  21. package/es/Embed/BrightcoveEmbed.js +25 -39
  22. package/es/Embed/CodeEmbed.js +58 -10
  23. package/es/Embed/ConceptEmbed.js +57 -306
  24. package/es/Embed/ConceptListEmbed.js +18 -24
  25. package/es/Embed/ContentLinkEmbed.js +10 -10
  26. package/es/Embed/CopyrightEmbed.js +4 -21
  27. package/es/Embed/EmbedErrorPlaceholder.js +32 -17
  28. package/es/Embed/ExternalEmbed.js +17 -28
  29. package/es/Embed/FootnoteEmbed.js +14 -11
  30. package/es/Embed/GlossEmbed.js +68 -0
  31. package/es/Embed/H5pEmbed.js +20 -21
  32. package/es/Embed/IframeEmbed.js +17 -15
  33. package/es/Embed/ImageEmbed.js +167 -122
  34. package/es/Embed/InlineTriggerButton.js +70 -0
  35. package/es/Embed/RelatedContentEmbed.js +8 -10
  36. package/es/Embed/UnknownEmbed.js +9 -9
  37. package/es/Embed/UuDisclaimerEmbed.js +16 -27
  38. package/es/Embed/index.js +1 -3
  39. package/es/ErrorMessage/ErrorMessage.js +42 -23
  40. package/es/ErrorMessage/ErrorResourceAccessDenied.js +8 -6
  41. package/es/FactBox/FactBox.js +118 -47
  42. package/es/FileList/File.js +1 -1
  43. package/es/FileList/Format.js +3 -3
  44. package/es/FileList/PdfFile.js +23 -5
  45. package/es/FrontpageArticle/FrontpageArticle.js +1 -1
  46. package/es/Gloss/Gloss.js +122 -94
  47. package/es/Gloss/GlossExample.js +49 -52
  48. package/es/Grid/Grid.js +1 -1
  49. package/es/KeyFigure/KeyFigure.js +2 -2
  50. package/es/LanguageSelector/LanguageSelector.js +2 -2
  51. package/es/LicenseByline/EmbedByline.js +5 -6
  52. package/es/LicenseByline/LicenseDescription.js +1 -1
  53. package/es/LicenseByline/LicenseLink.js +1 -2
  54. package/es/LinkBlock/LinkBlock.js +61 -33
  55. package/es/LinkBlock/LinkBlockSection.js +9 -6
  56. package/es/Logo/Logo.js +1 -30
  57. package/es/Messages/MessageBox.js +1 -1
  58. package/es/RelatedArticleList/RelatedArticleList.js +73 -90
  59. package/es/ResourceBox/ResourceBox.js +67 -44
  60. package/es/Search/ActiveFilters.js +1 -1
  61. package/es/Search/ContentTypeResult.js +9 -6
  62. package/es/Search/ContentTypeResultStyles.js +1 -1
  63. package/es/Search/IsPathToHighlight.js +1 -1
  64. package/es/Search/SearchField.js +6 -8
  65. package/es/Search/SearchResult.js +14 -19
  66. package/es/Search/SearchResultSleeve.js +14 -16
  67. package/es/SnackBar/SnackbarProvider.js +8 -11
  68. package/es/TagSelector/TagSelector.js +124 -131
  69. package/es/TreeStructure/AddFolderButton.js +4 -6
  70. package/es/TreeStructure/ComboboxButton.js +4 -7
  71. package/es/TreeStructure/FolderItem.js +12 -15
  72. package/es/TreeStructure/FolderItems.js +3 -3
  73. package/es/TreeStructure/TreeStructure.js +9 -12
  74. package/es/TreeStructure/helperFunctions.js +1 -1
  75. package/es/ZendeskButton/ZendeskButton.js +55 -0
  76. package/es/i18n/formatNestedMessages.js +1 -1
  77. package/es/i18n/index.js +2 -1
  78. package/es/i18n/useComponentTranslations.js +83 -0
  79. package/es/index.js +6 -12
  80. package/es/locale/messages-en.js +39 -12
  81. package/es/locale/messages-nb.js +39 -12
  82. package/es/locale/messages-nn.js +39 -12
  83. package/es/locale/messages-se.js +39 -12
  84. package/es/locale/messages-sma.js +39 -12
  85. package/es/model/ContentType.js +3 -0
  86. package/es/styles.css +1197 -0
  87. package/es/utils/relativeUrl.js +3 -3
  88. package/lib/Article/Article.js +3 -4
  89. package/lib/Article/ArticleByline.js +9 -9
  90. package/lib/Article/ArticleFootNotes.js +4 -4
  91. package/lib/Article/ArticleParagraph.js +12 -14
  92. package/lib/AudioPlayer/AudioPlayer.d.ts +1 -2
  93. package/lib/AudioPlayer/AudioPlayer.js +142 -162
  94. package/lib/AudioPlayer/Controls.js +190 -205
  95. package/lib/AudioPlayer/SpeechControl.js +13 -11
  96. package/lib/BlogPost/BlogPost.d.ts +2 -2
  97. package/lib/BlogPost/BlogPost.js +85 -24
  98. package/lib/CampaignBlock/CampaignBlock.d.ts +2 -2
  99. package/lib/CampaignBlock/CampaignBlock.js +106 -69
  100. package/lib/CodeBlock/CodeBlock.d.ts +5 -8
  101. package/lib/CodeBlock/CodeBlock.js +88 -96
  102. package/lib/Concept/Concept.d.ts +18 -0
  103. package/lib/Concept/Concept.js +75 -0
  104. package/lib/ContactBlock/ContactBlock.js +55 -43
  105. package/lib/ContentLoader/index.js +7 -7
  106. package/lib/ContentTypeBadge/ContentTypeBadgeNew.d.ts +17 -0
  107. package/lib/ContentTypeBadge/ContentTypeBadgeNew.js +56 -0
  108. package/lib/CopyParagraphButton/CopyParagraphButton.js +4 -4
  109. package/lib/Embed/AudioEmbed.js +7 -12
  110. package/lib/Embed/BrightcoveEmbed.d.ts +1 -2
  111. package/lib/Embed/BrightcoveEmbed.js +28 -40
  112. package/lib/Embed/CodeEmbed.js +56 -8
  113. package/lib/Embed/ConceptEmbed.d.ts +15 -21
  114. package/lib/Embed/ConceptEmbed.js +58 -306
  115. package/lib/Embed/ConceptListEmbed.js +21 -26
  116. package/lib/Embed/ContentLinkEmbed.js +10 -11
  117. package/lib/Embed/CopyrightEmbed.js +6 -22
  118. package/lib/Embed/EmbedErrorPlaceholder.d.ts +4 -3
  119. package/lib/Embed/EmbedErrorPlaceholder.js +32 -18
  120. package/lib/Embed/ExternalEmbed.d.ts +1 -2
  121. package/lib/Embed/ExternalEmbed.js +20 -29
  122. package/lib/Embed/FootnoteEmbed.js +14 -12
  123. package/lib/Embed/GlossEmbed.d.ts +13 -0
  124. package/lib/Embed/GlossEmbed.js +76 -0
  125. package/lib/Embed/H5pEmbed.d.ts +1 -2
  126. package/lib/Embed/H5pEmbed.js +22 -21
  127. package/lib/Embed/IframeEmbed.d.ts +1 -2
  128. package/lib/Embed/IframeEmbed.js +19 -17
  129. package/lib/Embed/ImageEmbed.d.ts +1 -2
  130. package/lib/Embed/ImageEmbed.js +167 -123
  131. package/lib/Embed/InlineTriggerButton.d.ts +11 -0
  132. package/lib/Embed/InlineTriggerButton.js +76 -0
  133. package/lib/Embed/RelatedContentEmbed.js +8 -10
  134. package/lib/Embed/UnknownEmbed.js +9 -10
  135. package/lib/Embed/UuDisclaimerEmbed.js +18 -28
  136. package/lib/Embed/index.d.ts +2 -3
  137. package/lib/Embed/index.js +2 -9
  138. package/lib/ErrorMessage/ErrorMessage.js +41 -24
  139. package/lib/ErrorMessage/ErrorResourceAccessDenied.js +7 -6
  140. package/lib/FactBox/FactBox.d.ts +0 -1
  141. package/lib/FactBox/FactBox.js +119 -46
  142. package/lib/FileList/File.js +1 -1
  143. package/lib/FileList/Format.js +3 -3
  144. package/lib/FileList/PdfFile.js +23 -5
  145. package/lib/FrontpageArticle/FrontpageArticle.js +1 -1
  146. package/lib/Gloss/Gloss.d.ts +10 -2
  147. package/lib/Gloss/Gloss.js +122 -93
  148. package/lib/Gloss/GlossExample.d.ts +3 -5
  149. package/lib/Gloss/GlossExample.js +49 -53
  150. package/lib/Grid/Grid.js +1 -1
  151. package/lib/KeyFigure/KeyFigure.js +2 -2
  152. package/lib/LanguageSelector/LanguageSelector.js +2 -2
  153. package/lib/LicenseByline/EmbedByline.js +5 -6
  154. package/lib/LicenseByline/LicenseDescription.js +1 -1
  155. package/lib/LicenseByline/LicenseLink.js +1 -2
  156. package/lib/LinkBlock/LinkBlock.js +62 -34
  157. package/lib/LinkBlock/LinkBlockSection.js +9 -7
  158. package/lib/Logo/Logo.d.ts +1 -3
  159. package/lib/Logo/Logo.js +2 -30
  160. package/lib/Messages/MessageBox.js +1 -1
  161. package/lib/RelatedArticleList/RelatedArticleList.d.ts +4 -4
  162. package/lib/RelatedArticleList/RelatedArticleList.js +77 -93
  163. package/lib/ResourceBox/ResourceBox.js +67 -45
  164. package/lib/Search/ActiveFilters.js +1 -1
  165. package/lib/Search/ContentTypeResult.js +9 -6
  166. package/lib/Search/ContentTypeResultStyles.js +1 -1
  167. package/lib/Search/IsPathToHighlight.js +1 -1
  168. package/lib/Search/SearchField.js +6 -8
  169. package/lib/Search/SearchResult.js +14 -19
  170. package/lib/Search/SearchResultSleeve.js +14 -16
  171. package/lib/SnackBar/SnackbarProvider.js +8 -11
  172. package/lib/TagSelector/TagSelector.d.ts +27 -12
  173. package/lib/TagSelector/TagSelector.js +126 -131
  174. package/lib/TreeStructure/AddFolderButton.js +4 -6
  175. package/lib/TreeStructure/ComboboxButton.js +4 -7
  176. package/lib/TreeStructure/FolderItem.js +12 -15
  177. package/lib/TreeStructure/FolderItems.js +3 -3
  178. package/lib/TreeStructure/TreeStructure.js +9 -12
  179. package/lib/TreeStructure/helperFunctions.js +1 -1
  180. package/lib/ZendeskButton/ZendeskButton.d.ts +19 -0
  181. package/lib/ZendeskButton/ZendeskButton.js +61 -0
  182. package/lib/i18n/formatNestedMessages.js +1 -1
  183. package/lib/i18n/index.d.ts +1 -0
  184. package/lib/i18n/index.js +20 -1
  185. package/lib/i18n/useComponentTranslations.d.ts +14 -0
  186. package/lib/i18n/useComponentTranslations.js +93 -0
  187. package/lib/index.d.ts +7 -14
  188. package/lib/index.js +77 -89
  189. package/lib/locale/messages-en.d.ts +27 -0
  190. package/lib/locale/messages-en.js +39 -12
  191. package/lib/locale/messages-nb.d.ts +27 -0
  192. package/lib/locale/messages-nb.js +39 -12
  193. package/lib/locale/messages-nn.d.ts +27 -0
  194. package/lib/locale/messages-nn.js +39 -12
  195. package/lib/locale/messages-se.d.ts +27 -0
  196. package/lib/locale/messages-se.js +39 -12
  197. package/lib/locale/messages-sma.d.ts +27 -0
  198. package/lib/locale/messages-sma.js +39 -12
  199. package/lib/model/ContentType.d.ts +3 -0
  200. package/lib/model/ContentType.js +4 -1
  201. package/lib/styles.css +1197 -0
  202. package/lib/types.d.ts +1 -0
  203. package/lib/utils/relativeUrl.js +3 -3
  204. package/package.json +18 -15
  205. package/src/Article/ArticleParagraph.tsx +11 -9
  206. package/src/AudioPlayer/AudioPlayer.tsx +139 -176
  207. package/src/AudioPlayer/Controls.tsx +210 -250
  208. package/src/AudioPlayer/SpeechControl.tsx +9 -7
  209. package/src/BlogPost/BlogPost.tsx +82 -58
  210. package/src/CampaignBlock/CampaignBlock.tsx +92 -55
  211. package/src/CodeBlock/CodeBlock.stories.tsx +0 -43
  212. package/src/CodeBlock/CodeBlock.tsx +91 -202
  213. package/src/Concept/Concept.stories.tsx +142 -0
  214. package/src/Concept/Concept.tsx +73 -0
  215. package/src/ContactBlock/ContactBlock.tsx +10 -2
  216. package/src/ContentTypeBadge/ContentTypeBadgeNew.stories.tsx +70 -0
  217. package/src/ContentTypeBadge/ContentTypeBadgeNew.tsx +69 -0
  218. package/src/Embed/AudioEmbed.tsx +2 -2
  219. package/src/Embed/BrightcoveEmbed.stories.tsx +0 -3
  220. package/src/Embed/BrightcoveEmbed.tsx +17 -19
  221. package/src/Embed/CodeEmbed.stories.tsx +95 -0
  222. package/src/Embed/CodeEmbed.tsx +62 -7
  223. package/src/Embed/ConceptEmbed.stories.tsx +1 -105
  224. package/src/Embed/ConceptEmbed.tsx +60 -393
  225. package/src/Embed/ConceptListEmbed.tsx +20 -19
  226. package/src/Embed/ContentLinkEmbed.tsx +8 -10
  227. package/src/Embed/CopyrightEmbed.tsx +1 -11
  228. package/src/Embed/EmbedErrorPlaceholder.tsx +31 -28
  229. package/src/Embed/ExternalEmbed.tsx +14 -17
  230. package/src/Embed/FootnoteEmbed.stories.tsx +2 -5
  231. package/src/Embed/FootnoteEmbed.tsx +13 -16
  232. package/src/Embed/GlossEmbed.stories.tsx +140 -0
  233. package/src/Embed/GlossEmbed.tsx +64 -0
  234. package/src/Embed/H5pEmbed.tsx +22 -16
  235. package/src/Embed/IframeEmbed.tsx +12 -6
  236. package/src/Embed/ImageEmbed.stories.tsx +53 -11
  237. package/src/Embed/ImageEmbed.tsx +162 -166
  238. package/src/Embed/InlineTriggerButton.tsx +72 -0
  239. package/src/Embed/UnknownEmbed.tsx +6 -7
  240. package/src/Embed/UuDisclaimerEmbed.stories.tsx +4 -4
  241. package/src/Embed/UuDisclaimerEmbed.tsx +17 -25
  242. package/src/Embed/index.ts +2 -3
  243. package/src/ErrorMessage/ErrorMessage.tsx +40 -29
  244. package/src/ErrorMessage/ErrorResourceAccessDenied.tsx +8 -6
  245. package/src/FactBox/FactBox.tsx +115 -115
  246. package/src/FactBox/Factbox.stories.tsx +43 -27
  247. package/src/FileList/FileList.stories.tsx +6 -1
  248. package/src/FileList/PdfFile.tsx +22 -5
  249. package/src/Gloss/Gloss.stories.tsx +107 -1
  250. package/src/Gloss/Gloss.tsx +143 -156
  251. package/src/Gloss/GlossExample.tsx +51 -77
  252. package/src/LinkBlock/LinkBlock.stories.tsx +8 -10
  253. package/src/LinkBlock/LinkBlock.tsx +54 -59
  254. package/src/LinkBlock/LinkBlockSection.tsx +9 -12
  255. package/src/Logo/Logo.stories.tsx +0 -1
  256. package/src/Logo/Logo.tsx +2 -30
  257. package/src/RelatedArticleList/RelatedArticleList.tsx +69 -88
  258. package/src/ResourceBox/ResourceBox.tsx +65 -73
  259. package/src/Search/ContentTypeResult.tsx +9 -3
  260. package/src/Search/SearchResultSleeve.tsx +5 -2
  261. package/src/TagSelector/TagSelector.stories.tsx +92 -68
  262. package/src/TagSelector/TagSelector.tsx +161 -126
  263. package/src/ZendeskButton/ZendeskButton.tsx +58 -0
  264. package/src/i18n/index.ts +5 -0
  265. package/src/i18n/useComponentTranslations.ts +72 -0
  266. package/src/index.ts +27 -18
  267. package/src/locale/messages-en.ts +29 -2
  268. package/src/locale/messages-nb.ts +29 -2
  269. package/src/locale/messages-nn.ts +29 -2
  270. package/src/locale/messages-se.ts +29 -2
  271. package/src/locale/messages-sma.ts +29 -2
  272. package/src/model/ContentType.ts +3 -0
  273. package/src/types.ts +2 -0
  274. package/es/DefinitionList/DefinitionDescription.js +0 -28
  275. package/es/DefinitionList/DefinitionTerm.js +0 -28
  276. package/es/DefinitionList/index.js +0 -10
  277. package/es/Embed/conceptComponents.js +0 -155
  278. package/es/ExpandableBox/ExpandableBox.js +0 -29
  279. package/es/ExpandableBox/index.js +0 -9
  280. package/es/Figure/Figure.js +0 -73
  281. package/es/Figure/index.js +0 -9
  282. package/es/FramedContent/FramedContent.js +0 -28
  283. package/es/FramedContent/index.js +0 -10
  284. package/es/Image/Image.js +0 -100
  285. package/es/Image/ImageLink.js +0 -39
  286. package/es/Image/index.js +0 -12
  287. package/es/LetterFilter/LetterFilter.js +0 -54
  288. package/es/LetterFilter/alphabet.js +0 -9
  289. package/es/LetterFilter/index.js +0 -10
  290. package/es/Notion/Notion.js +0 -76
  291. package/es/Notion/NotionImage.js +0 -91
  292. package/es/Notion/index.js +0 -9
  293. package/es/Table/Table.js +0 -141
  294. package/es/Table/index.js +0 -11
  295. package/es/TagSelector/Control.js +0 -28
  296. package/es/TagSelector/DropdownIndicator.js +0 -60
  297. package/es/TagSelector/Input.js +0 -22
  298. package/es/TagSelector/Menu.js +0 -27
  299. package/es/TagSelector/MenuList.js +0 -28
  300. package/es/TagSelector/Option.js +0 -60
  301. package/es/TagSelector/SelectContainer.js +0 -27
  302. package/es/TagSelector/ValueButton.js +0 -53
  303. package/es/TagSelector/ariaMessages.js +0 -94
  304. package/es/TagSelector/index.js +0 -10
  305. package/es/TagSelector/types.js +0 -1
  306. package/lib/DefinitionList/DefinitionDescription.d.ts +0 -10
  307. package/lib/DefinitionList/DefinitionDescription.js +0 -35
  308. package/lib/DefinitionList/DefinitionTerm.d.ts +0 -10
  309. package/lib/DefinitionList/DefinitionTerm.js +0 -35
  310. package/lib/DefinitionList/index.d.ts +0 -9
  311. package/lib/DefinitionList/index.js +0 -20
  312. package/lib/Embed/conceptComponents.d.ts +0 -40
  313. package/lib/Embed/conceptComponents.js +0 -163
  314. package/lib/ExpandableBox/ExpandableBox.d.ts +0 -15
  315. package/lib/ExpandableBox/ExpandableBox.js +0 -37
  316. package/lib/ExpandableBox/index.d.ts +0 -8
  317. package/lib/ExpandableBox/index.js +0 -18
  318. package/lib/Figure/Figure.d.ts +0 -16
  319. package/lib/Figure/Figure.js +0 -81
  320. package/lib/Figure/index.d.ts +0 -9
  321. package/lib/Figure/index.js +0 -13
  322. package/lib/FramedContent/FramedContent.d.ts +0 -12
  323. package/lib/FramedContent/FramedContent.js +0 -35
  324. package/lib/FramedContent/index.d.ts +0 -9
  325. package/lib/FramedContent/index.js +0 -16
  326. package/lib/Image/Image.d.ts +0 -38
  327. package/lib/Image/Image.js +0 -106
  328. package/lib/Image/ImageLink.d.ts +0 -18
  329. package/lib/Image/ImageLink.js +0 -44
  330. package/lib/Image/index.d.ts +0 -12
  331. package/lib/Image/index.js +0 -30
  332. package/lib/LetterFilter/LetterFilter.d.ts +0 -14
  333. package/lib/LetterFilter/LetterFilter.js +0 -61
  334. package/lib/LetterFilter/alphabet.d.ts +0 -8
  335. package/lib/LetterFilter/alphabet.js +0 -15
  336. package/lib/LetterFilter/index.d.ts +0 -9
  337. package/lib/LetterFilter/index.js +0 -16
  338. package/lib/Notion/Notion.d.ts +0 -20
  339. package/lib/Notion/Notion.js +0 -82
  340. package/lib/Notion/NotionImage.d.ts +0 -23
  341. package/lib/Notion/NotionImage.js +0 -101
  342. package/lib/Notion/index.d.ts +0 -8
  343. package/lib/Notion/index.js +0 -13
  344. package/lib/Table/Table.d.ts +0 -19
  345. package/lib/Table/Table.js +0 -145
  346. package/lib/Table/index.d.ts +0 -10
  347. package/lib/Table/index.js +0 -23
  348. package/lib/TagSelector/Control.d.ts +0 -11
  349. package/lib/TagSelector/Control.js +0 -35
  350. package/lib/TagSelector/DropdownIndicator.d.ts +0 -11
  351. package/lib/TagSelector/DropdownIndicator.js +0 -64
  352. package/lib/TagSelector/Input.d.ts +0 -12
  353. package/lib/TagSelector/Input.js +0 -29
  354. package/lib/TagSelector/Menu.d.ts +0 -12
  355. package/lib/TagSelector/Menu.js +0 -34
  356. package/lib/TagSelector/MenuList.d.ts +0 -16
  357. package/lib/TagSelector/MenuList.js +0 -35
  358. package/lib/TagSelector/Option.d.ts +0 -12
  359. package/lib/TagSelector/Option.js +0 -67
  360. package/lib/TagSelector/SelectContainer.d.ts +0 -11
  361. package/lib/TagSelector/SelectContainer.js +0 -34
  362. package/lib/TagSelector/ValueButton.d.ts +0 -20
  363. package/lib/TagSelector/ValueButton.js +0 -60
  364. package/lib/TagSelector/ariaMessages.d.ts +0 -16
  365. package/lib/TagSelector/ariaMessages.js +0 -101
  366. package/lib/TagSelector/index.d.ts +0 -11
  367. package/lib/TagSelector/index.js +0 -13
  368. package/lib/TagSelector/types.d.ts +0 -11
  369. package/lib/TagSelector/types.js +0 -5
  370. package/src/DefinitionList/DefinitionDescription.tsx +0 -26
  371. package/src/DefinitionList/DefinitionTerm.tsx +0 -26
  372. package/src/DefinitionList/index.tsx +0 -10
  373. package/src/Embed/conceptComponents.tsx +0 -293
  374. package/src/ExpandableBox/ExpandableBox.stories.tsx +0 -41
  375. package/src/ExpandableBox/ExpandableBox.tsx +0 -23
  376. package/src/ExpandableBox/index.ts +0 -9
  377. package/src/Figure/Figure.tsx +0 -167
  378. package/src/Figure/index.ts +0 -11
  379. package/src/FramedContent/FramedContent.stories.tsx +0 -152
  380. package/src/FramedContent/FramedContent.tsx +0 -26
  381. package/src/FramedContent/index.ts +0 -10
  382. package/src/Image/Image.stories.tsx +0 -61
  383. package/src/Image/Image.tsx +0 -147
  384. package/src/Image/ImageLink.tsx +0 -37
  385. package/src/Image/__tests__/Image-test.tsx +0 -66
  386. package/src/Image/__tests__/__snapshots__/Image-test.tsx.snap +0 -194
  387. package/src/Image/index.ts +0 -14
  388. package/src/LetterFilter/LetterFilter.stories.tsx +0 -29
  389. package/src/LetterFilter/LetterFilter.tsx +0 -78
  390. package/src/LetterFilter/alphabet.ts +0 -39
  391. package/src/LetterFilter/index.ts +0 -11
  392. package/src/Notion/Notion.tsx +0 -96
  393. package/src/Notion/NotionImage.tsx +0 -114
  394. package/src/Notion/index.ts +0 -9
  395. package/src/Table/Table.stories.tsx +0 -738
  396. package/src/Table/Table.tsx +0 -284
  397. package/src/Table/index.ts +0 -12
  398. package/src/TagSelector/Control.tsx +0 -34
  399. package/src/TagSelector/DropdownIndicator.tsx +0 -55
  400. package/src/TagSelector/Input.tsx +0 -31
  401. package/src/TagSelector/Menu.tsx +0 -38
  402. package/src/TagSelector/MenuList.tsx +0 -30
  403. package/src/TagSelector/Option.tsx +0 -58
  404. package/src/TagSelector/SelectContainer.tsx +0 -31
  405. package/src/TagSelector/ValueButton.tsx +0 -47
  406. package/src/TagSelector/ariaMessages.ts +0 -96
  407. package/src/TagSelector/index.ts +0 -14
  408. package/src/TagSelector/types.ts +0 -12
@@ -1,293 +0,0 @@
1
- /**
2
- * Copyright (c) 2023-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
- /** @jsxImportSource @emotion/react */
10
- import { forwardRef, ReactNode, RefAttributes } from "react";
11
- import { useTranslation } from "react-i18next";
12
- import { css } from "@emotion/react";
13
- import styled from "@emotion/styled";
14
- import { breakpoints, colors, fonts, misc, mq, spacing, stackOrder } from "@ndla/core";
15
- import { ConceptData, ConceptVisualElementMeta } from "@ndla/types-embed";
16
- import { ExternalEmbed, IframeEmbed } from ".";
17
- import BrightcoveEmbed from "./BrightcoveEmbed";
18
- import H5pEmbed from "./H5pEmbed";
19
- import ImageEmbed from "./ImageEmbed";
20
- import { Gloss } from "../Gloss";
21
- import { LicenseContainerContent } from "../LicenseByline/EmbedByline";
22
- import { Copyright } from "../types";
23
-
24
- export type ConceptType = "concept" | "gloss";
25
-
26
- export interface ConceptNotionData {
27
- title: ConceptData["concept"]["title"];
28
- content?: ReactNode;
29
- metaImage?: {
30
- url?: string;
31
- alt?: string;
32
- };
33
- copyright?: Copyright;
34
- source?: string;
35
- visualElement?: ConceptVisualElementMeta;
36
- conceptType: ConceptData["concept"]["conceptType"];
37
- glossData?: ConceptData["concept"]["glossData"];
38
- lang?: string;
39
- }
40
-
41
- interface ConceptNotionProps extends RefAttributes<HTMLDivElement>, Omit<ConceptNotionData, "metaImage"> {
42
- className?: string;
43
- closeButton?: ReactNode;
44
- previewAlt?: boolean;
45
- inPopover?: boolean;
46
- tags?: string[];
47
- subjects?: string[];
48
- headerButtons?: ReactNode;
49
- exampleIds?: string;
50
- exampleLangs?: string;
51
- showTitle?: boolean;
52
- }
53
-
54
- const NotionDialogText = styled.div`
55
- font-weight: ${fonts.weight.normal};
56
- ${fonts.sizes("18px", 1.3)};
57
- color: ${colors.text.primary};
58
- font-family: ${fonts.sans};
59
- `;
60
-
61
- const NotionDialogContent = styled.div`
62
- padding-bottom: ${spacing.normal};
63
- display: flex;
64
- flex-direction: column;
65
- `;
66
-
67
- const ContentSpacing = styled.div`
68
- padding: ${spacing.normal};
69
- &[data-is-concept="false"] {
70
- margin-bottom: ${spacing.normal};
71
- }
72
- `;
73
-
74
- const notionContentCss = css`
75
- @keyframes animateIn {
76
- 0% {
77
- opacity: 0;
78
- transform: translate3d(0, -13px, 0);
79
- }
80
- 100% {
81
- opacity: 1;
82
- transform: translate3d(0, 0, 0);
83
- }
84
- }
85
-
86
- animation-name: animateIn;
87
- animation-duration: 300ms;
88
- background-color: white;
89
- z-index: ${stackOrder.offsetSingle};
90
- box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
91
- ${mq.range({ from: breakpoints.tablet })} {
92
- width: 500px;
93
- }
94
- ${mq.range({ from: breakpoints.desktop })} {
95
- width: 720px;
96
- max-width: 60vw;
97
- }
98
-
99
- ${mq.range({ until: breakpoints.tablet })} {
100
- padding: ${spacing.small};
101
- z-index: ${stackOrder.popover};
102
- height: 100%;
103
- width: 100%;
104
- overflow: auto;
105
- }
106
- `;
107
-
108
- const NotionHeader = styled.div`
109
- display: flex;
110
- align-items: center;
111
- justify-content: flex-end;
112
- border-bottom: 2px solid ${colors.brand.tertiary};
113
- padding-bottom: ${spacing.small};
114
- h1 {
115
- display: flex;
116
- align-items: center;
117
- flex-wrap: wrap;
118
- flex-grow: 1;
119
- margin: 0;
120
- font-weight: ${fonts.weight.bold};
121
- ${fonts.sizes("22px", 1.2)};
122
- }
123
- small {
124
- display: flex;
125
- ${fonts.sizes("20px", 1.2)};
126
- font-weight: ${fonts.weight.normal};
127
- }
128
- ${mq.range({ from: breakpoints.mobileWide })} {
129
- &[data-is-concept="true"] {
130
- small:before {
131
- display: inline-flex;
132
- align-self: center;
133
- margin: 0 ${spacing.xsmall};
134
- content: "";
135
- height: ${spacing.normal};
136
- width: 1px;
137
- background-color: ${colors.brand.greyLight};
138
- }
139
- }
140
- }
141
- &[data-is-concept="false"] {
142
- margin-bottom: ${spacing.large};
143
- }
144
- `;
145
-
146
- const ListWrapper = styled.div`
147
- display: flex;
148
- gap: ${spacing.small};
149
- align-items: center;
150
- `;
151
-
152
- const StyledNotionDialogContent = styled(NotionDialogContent)`
153
- padding-top: ${spacing.small};
154
- figure {
155
- width: 100% !important;
156
- padding: 0;
157
- margin: 0;
158
- padding-bottom: ${spacing.normal};
159
- }
160
- `;
161
-
162
- const ButtonWrapper = styled.div`
163
- display: flex;
164
- gap: ${spacing.xsmall};
165
- align-items: center;
166
- `;
167
-
168
- const StyledList = styled.ul`
169
- display: flex;
170
- gap: ${spacing.small};
171
- align-items: center;
172
- list-style: none;
173
- > li {
174
- font-family: ${fonts.sans};
175
- font-weight: ${fonts.weight.semibold};
176
- border-radius: ${misc.borderRadius};
177
- background-color: ${colors.brand.greyLightest};
178
- ${fonts.sizes("12px", 1.2)};
179
- padding: ${spacing.xxsmall};
180
- }
181
- `;
182
- const BylineWrapper = styled.div`
183
- padding: 0 ${spacing.normal} ${spacing.small} ${spacing.normal};
184
- span {
185
- font-family: ${fonts.sans};
186
- ${fonts.sizes("16px", "26px")};
187
- }
188
- `;
189
-
190
- export const ConceptNotionV2 = forwardRef<HTMLDivElement, ConceptNotionProps>(
191
- (
192
- {
193
- visualElement,
194
- title,
195
- content,
196
- source,
197
- copyright,
198
- closeButton,
199
- inPopover,
200
- previewAlt,
201
- tags,
202
- subjects,
203
- conceptType,
204
- glossData,
205
- headerButtons,
206
- lang,
207
- exampleIds,
208
- exampleLangs,
209
- showTitle = true,
210
- ...rest
211
- },
212
- ref,
213
- ) => {
214
- const { t } = useTranslation();
215
- const isConcept = conceptType === "concept";
216
- return (
217
- <div css={inPopover ? notionContentCss : undefined} {...rest} ref={ref}>
218
- <ContentSpacing data-is-concept={isConcept}>
219
- <NotionHeader data-is-concept={isConcept}>
220
- {showTitle && (
221
- <h1>
222
- {isConcept && title.title}
223
- {<small data-is-concept={isConcept}>{t(`searchPage.resultType.${conceptType}`)}</small>}
224
- </h1>
225
- )}
226
- <ButtonWrapper>
227
- {headerButtons}
228
- {closeButton}
229
- </ButtonWrapper>
230
- </NotionHeader>
231
- {isConcept ? (
232
- <>
233
- <StyledNotionDialogContent>
234
- {visualElement?.resource === "image" ? (
235
- <ImageEmbed embed={visualElement} lang={lang} />
236
- ) : visualElement?.resource === "brightcove" ? (
237
- <BrightcoveEmbed embed={visualElement} />
238
- ) : visualElement?.resource === "h5p" ? (
239
- <H5pEmbed embed={visualElement} />
240
- ) : visualElement?.resource === "iframe" ? (
241
- <IframeEmbed embed={visualElement} />
242
- ) : visualElement?.resource === "external" ? (
243
- <ExternalEmbed embed={visualElement} />
244
- ) : null}
245
- {content && <NotionDialogText lang={lang}>{content}</NotionDialogText>}
246
- </StyledNotionDialogContent>
247
- {tags && (
248
- <ListWrapper>
249
- {`${t("notions.tags")}:`}
250
- <StyledList>
251
- {tags.map((tag, index) => (
252
- <li key={index}>{tag}</li>
253
- ))}
254
- </StyledList>
255
- </ListWrapper>
256
- )}
257
- {subjects && (
258
- <ListWrapper>
259
- {`${t("notions.usedIn")}:`}
260
- <StyledList>
261
- {subjects.map((subject, index) => (
262
- <li key={index}>{subject}</li>
263
- ))}
264
- </StyledList>
265
- </ListWrapper>
266
- )}
267
- </>
268
- ) : (
269
- <Gloss
270
- title={title}
271
- glossData={glossData!}
272
- audio={
273
- visualElement?.status === "success" && visualElement.resource === "audio"
274
- ? {
275
- src: visualElement.data.audioFile.url,
276
- title: visualElement.data.title.title,
277
- }
278
- : undefined
279
- }
280
- exampleIds={exampleIds}
281
- exampleLangs={exampleLangs}
282
- />
283
- )}
284
- </ContentSpacing>
285
- {copyright && (
286
- <BylineWrapper>
287
- <LicenseContainerContent copyright={copyright} type={conceptType as ConceptType} />
288
- </BylineWrapper>
289
- )}
290
- </div>
291
- );
292
- },
293
- );
@@ -1,41 +0,0 @@
1
- /**
2
- * Copyright (c) 2023-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 { Meta, StoryFn, StoryObj } from "@storybook/react";
10
- import { ExpandableBox, ExpandableBoxSummary } from "./ExpandableBox";
11
-
12
- /**
13
- * This is just a thin wrapper around the native HTML details element.
14
- * `ExpandableBoxSummary` is a thin wrapper around the native HTML summary element.
15
- * The components will eventually add style and functionality to the native elements, as opposed to the components being styled by global css.
16
- */
17
- export default {
18
- title: "Components/ExpandableBox",
19
- tags: ["autodocs"],
20
- parameters: {
21
- inlineStories: true,
22
- },
23
- component: ExpandableBox,
24
- render: (args) => (
25
- <ExpandableBox {...args}>
26
- <ExpandableBoxSummary>Open me</ExpandableBoxSummary>
27
- Everything here is only visible when the box is open
28
- </ExpandableBox>
29
- ),
30
- } as Meta<typeof ExpandableBox>;
31
-
32
- export const Default: StoryObj<typeof ExpandableBox> = {};
33
-
34
- export const WithHeader: StoryFn<typeof ExpandableBox> = ({ ...args }) => (
35
- <ExpandableBox {...args}>
36
- <ExpandableBoxSummary>
37
- <h2>Open me as header text</h2>
38
- </ExpandableBoxSummary>
39
- Everything here is only visible when the box is open
40
- </ExpandableBox>
41
- );
@@ -1,23 +0,0 @@
1
- /**
2
- * Copyright (c) 2023-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 { HTMLAttributes } from "react";
10
- import styled from "@emotion/styled";
11
- import { fonts } from "@ndla/core";
12
-
13
- interface Props extends HTMLAttributes<HTMLDetailsElement> {}
14
-
15
- export const ExpandableBox = ({ children, ...rest }: Props) => {
16
- return <details {...rest}>{children}</details>;
17
- };
18
-
19
- interface SummaryProps extends HTMLAttributes<HTMLElement> {}
20
-
21
- export const ExpandableBoxSummary = ({ children, ...rest }: SummaryProps) => {
22
- return <summary {...rest}>{children}</summary>;
23
- };
@@ -1,9 +0,0 @@
1
- /**
2
- * Copyright (c) 2023-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
- export { ExpandableBox, ExpandableBoxSummary } from "./ExpandableBox";
@@ -1,167 +0,0 @@
1
- /**
2
- * Copyright (c) 2016-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
- // N.B These components is used to render static markup serverside
10
-
11
- /** @jsxImportSource @emotion/react */
12
- import { ComponentPropsWithRef, forwardRef, useMemo } from "react";
13
- import { SerializedStyles, css } from "@emotion/react";
14
- import styled from "@emotion/styled";
15
- import { breakpoints, mq, spacing } from "@ndla/core";
16
-
17
- const StyledFigure = styled.figure`
18
- position: relative;
19
- width: 100%;
20
- transition:
21
- transform 0.4s,
22
- width 0.4s,
23
- height 0.4s;
24
- img {
25
- width: 100%;
26
- }
27
- iframe {
28
- display: block;
29
- border: 0;
30
- }
31
- &[data-sizetype="full"][data-float=""] {
32
- margin: ${spacing.normal} 0 ${spacing.normal};
33
- }
34
- &[data-sizetype="full"] {
35
- margin-bottom: ${spacing.normal};
36
- }
37
- `;
38
-
39
- const floatSizes: Record<FigureType, SerializedStyles> = {
40
- left: css`
41
- margin-top: ${spacing.xsmall};
42
- --float: left;
43
- --width: 50%;
44
- --width-desktop: 65%;
45
- & {
46
- ${mq.range({ from: breakpoints.tablet })} {
47
- padding-right: ${spacing.small};
48
- }
49
- }
50
- `,
51
- right: css`
52
- margin-top: ${spacing.xsmall};
53
- --float: right;
54
- --width: 50%;
55
- --width-desktop: 65%;
56
- & {
57
- ${mq.range({ from: breakpoints.tablet })} {
58
- padding-left: ${spacing.small};
59
- }
60
- }
61
- `,
62
- "small-left": css`
63
- margin-top: ${spacing.xsmall};
64
- --float: left;
65
- --width: 25%;
66
- --width-desktop: 50%;
67
- & {
68
- ${mq.range({ from: breakpoints.tablet })} {
69
- padding-right: ${spacing.small};
70
- }
71
- }
72
- `,
73
- "small-right": css`
74
- margin-top: ${spacing.xsmall};
75
- --float: right;
76
- --width: 25%;
77
- --width-desktop: 50%;
78
- & {
79
- ${mq.range({ from: breakpoints.tablet })} {
80
- padding-left: ${spacing.small};
81
- }
82
- }
83
- `,
84
- "xsmall-left": css`
85
- --float: left;
86
- --width: 25%;
87
- & {
88
- ${mq.range({ from: breakpoints.tablet })} {
89
- padding-right: ${spacing.small};
90
- margin: ${spacing.xsmall} 0 ${spacing.medium};
91
- }
92
- }
93
- `,
94
- "xsmall-right": css`
95
- --float: right;
96
- --width: 25%;
97
- & {
98
- ${mq.range({ from: breakpoints.tablet })} {
99
- padding-left: ${spacing.small};
100
- margin: ${spacing.xsmall} 0 ${spacing.normal} ${spacing.xsmall};
101
- }
102
- }
103
- `,
104
- full: css`
105
- margin-top: ${spacing.xsmall};
106
- `,
107
- "full-column": css`
108
- left: auto !important;
109
- right: auto !important;
110
- width: auto !important;
111
- padding-left: 0;
112
- padding-right: 0;
113
- padding-bottom: ${spacing.large};
114
- margin-bottom: 0;
115
- `,
116
- };
117
-
118
- const floatStyle = css`
119
- ${mq.range({ from: breakpoints.tablet })} {
120
- float: var(--float);
121
- clear: var(--float);
122
- width: var(--width) !important;
123
- z-index: 1;
124
- left: auto !important;
125
- padding: 0;
126
- }
127
- ${mq.range({ from: breakpoints.desktop })} {
128
- width: var(--width-desktop, var(--width)) !important;
129
- }
130
- `;
131
-
132
- const Figure = forwardRef<HTMLElement, Props>(({ children, type = "full", ...rest }, ref) => {
133
- const styles = useMemo(() => {
134
- const styles = [];
135
- const floatCss = floatSizes[type];
136
- if (type !== "full-column" && type !== "full") {
137
- styles.push(floatStyle);
138
- }
139
- if (floatCss) {
140
- styles.push(floatCss);
141
- }
142
- return styles;
143
- }, [type]);
144
-
145
- return (
146
- <StyledFigure data-sizetype={type} css={styles} {...rest} ref={ref}>
147
- {children}
148
- </StyledFigure>
149
- );
150
- });
151
-
152
- export type FigureType =
153
- | "full"
154
- | "full-column"
155
- | "left"
156
- | "small-left"
157
- | "right"
158
- | "small-right"
159
- | "xsmall-right"
160
- | "xsmall-left";
161
-
162
- interface Props extends Omit<ComponentPropsWithRef<"figure">, "type"> {
163
- type?: FigureType;
164
- noFigcaption?: boolean;
165
- }
166
-
167
- export default Figure;
@@ -1,11 +0,0 @@
1
- /**
2
- * Copyright (c) 2017-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
- export { default as Figure } from "./Figure";
10
-
11
- export type { FigureType } from "./Figure";
@@ -1,152 +0,0 @@
1
- /**
2
- * Copyright (c) 2023-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 { Meta, StoryObj } from "@storybook/react";
10
- import { CopyrightMetaData } from "@ndla/types-embed";
11
- import FramedContent from "./FramedContent";
12
- import FigureImage from "../../../../stories/article/FigureImage";
13
- import { CopyrightEmbed } from "../Embed";
14
-
15
- export default {
16
- title: "Components/FramedContent",
17
- component: FramedContent,
18
- tags: ["autodocs"],
19
- parameters: {
20
- inlineStories: true,
21
- },
22
- args: {
23
- children: <p>Content!</p>,
24
- },
25
- } as Meta<typeof FramedContent>;
26
-
27
- export const WithFloating: StoryObj<typeof FramedContent> = {
28
- args: {
29
- children: (
30
- <>
31
- <p>En boks med flytelementer</p>
32
- <FigureImage embedData={{ alt: "", align: "right" }} />
33
- <p>
34
- Pitching er også en god måte å bevisstgjøre seg selv på. Når du pitcher, blir idéen og historien i den filmen
35
- du planlegger å lage, tydeligere for både deg selv og dem du eventuelt jobber sammen med i klassen.
36
- </p>
37
- <p>
38
- Pitching er også en god måte å bevisstgjøre seg selv på. Når du pitcher, blir idéen og historien i den filmen
39
- du planlegger å lage, tydeligere for både deg selv og dem du eventuelt jobber sammen med i klassen.
40
- </p>
41
- </>
42
- ),
43
- },
44
- };
45
-
46
- export const WithFloatingSmall: StoryObj<typeof FramedContent> = {
47
- args: {
48
- children: (
49
- <>
50
- <p>En boks med flytelementer</p>
51
- <FigureImage embedData={{ alt: "", align: "right", size: "small" }} />
52
- <p>
53
- Pitching er også en god måte å bevisstgjøre seg selv på. Når du pitcher, blir idéen og historien i den filmen
54
- du planlegger å lage, tydeligere for både deg selv og dem du eventuelt jobber sammen med i klassen.
55
- </p>
56
- <p>
57
- Pitching er også en god måte å bevisstgjøre seg selv på. Når du pitcher, blir idéen og historien i den filmen
58
- du planlegger å lage, tydeligere for både deg selv og dem du eventuelt jobber sammen med i klassen.
59
- </p>
60
- </>
61
- ),
62
- },
63
- };
64
-
65
- export const TooMuchContent: StoryObj<typeof FramedContent> = {
66
- args: {
67
- children: (
68
- <>
69
- <h2>
70
- Tekst i ramme fungerer <em>dårlig</em> med mye tekst.
71
- </h2>
72
- <p>
73
- Pitching er også en god måte å bevisstgjøre seg selv på. Når du pitcher, blir idéen og historien i den filmen
74
- du planlegger å lage, tydeligere for både deg selv og dem du eventuelt jobber sammen med i klassen.
75
- </p>
76
- <p>
77
- Pitching er også en god måte å bevisstgjøre seg selv på. Når du pitcher, blir idéen og historien i den filmen
78
- du planlegger å lage, tydeligere for både deg selv og dem du eventuelt jobber sammen med i klassen.
79
- </p>
80
- <p>
81
- Pitching er også en god måte å bevisstgjøre seg selv på. Når du pitcher, blir idéen og historien i den filmen
82
- du planlegger å lage, tydeligere for både deg selv og dem du eventuelt jobber sammen med i klassen.
83
- </p>
84
- <p>
85
- Pitching er også en god måte å bevisstgjøre seg selv på. Når du pitcher, blir idéen og historien i den filmen
86
- du planlegger å lage, tydeligere for både deg selv og dem du eventuelt jobber sammen med i klassen.
87
- </p>
88
- <p>
89
- Pitching er også en god måte å bevisstgjøre seg selv på. Når du pitcher, blir idéen og historien i den filmen
90
- du planlegger å lage, tydeligere for både deg selv og dem du eventuelt jobber sammen med i klassen.
91
- </p>
92
- <p>
93
- Pitching er også en god måte å bevisstgjøre seg selv på. Når du pitcher, blir idéen og historien i den filmen
94
- du planlegger å lage, tydeligere for både deg selv og dem du eventuelt jobber sammen med i klassen.
95
- </p>
96
- <p>
97
- Pitching er også en god måte å bevisstgjøre seg selv på. Når du pitcher, blir idéen og historien i den filmen
98
- du planlegger å lage, tydeligere for både deg selv og dem du eventuelt jobber sammen med i klassen.
99
- </p>
100
- <p>
101
- Pitching er også en god måte å bevisstgjøre seg selv på. Når du pitcher, blir idéen og historien i den filmen
102
- du planlegger å lage, tydeligere for både deg selv og dem du eventuelt jobber sammen med i klassen.
103
- </p>
104
- </>
105
- ),
106
- },
107
- };
108
-
109
- const copyrightEmbed: CopyrightMetaData = {
110
- resource: "copyright",
111
- status: "success",
112
- data: undefined,
113
- embedData: {
114
- resource: "copyright",
115
- title: "Hallo",
116
- copyright: {
117
- license: {
118
- license: "CC-BY-SA-4.0",
119
- description: "Creative Commons Attribution-ShareAlike 4.0 International",
120
- url: "https://creativecommons.org/licenses/by-sa/4.0/",
121
- },
122
- creators: [
123
- {
124
- type: "originator",
125
- name: "Camilla Øvstebø ",
126
- },
127
- ],
128
- processors: [
129
- {
130
- type: "linguistic",
131
- name: "Totaltekst",
132
- },
133
- ],
134
- rightsholders: [],
135
- processed: false,
136
- },
137
- },
138
- };
139
-
140
- export const WithCopyrightEmbed: StoryObj<typeof FramedContent> = {
141
- args: {
142
- children: (
143
- <>
144
- <h2>Her har du helt vanlig innhold</h2>
145
- <p>Det kan som sagt være hva som helst.</p>
146
- <CopyrightEmbed embed={copyrightEmbed}>
147
- <p>Dette er innhold som er i en copyright-embed.</p>
148
- </CopyrightEmbed>
149
- </>
150
- ),
151
- },
152
- };