@ndla/ui 55.0.13-alpha.0 → 55.0.15-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 (337) hide show
  1. package/dist/panda.buildinfo.json +142 -1
  2. package/dist/styles.css +597 -0
  3. package/es/Article/ArticleByline.js +7 -7
  4. package/es/Article/ArticleParagraph.js +11 -13
  5. package/es/AudioPlayer/AudioPlayer.js +1 -0
  6. package/es/CampaignBlock/CampaignBlock.js +103 -68
  7. package/es/Concept/Concept.js +69 -0
  8. package/es/ContactBlock/ContactBlock.js +17 -17
  9. package/es/ContentTypeBadge/ContentTypeBadgeNew.js +48 -0
  10. package/es/Embed/AudioEmbed.js +1 -2
  11. package/es/Embed/BrightcoveEmbed.js +13 -25
  12. package/es/Embed/ConceptEmbed.js +57 -301
  13. package/es/Embed/ConceptListEmbed.js +18 -24
  14. package/es/Embed/ContentLinkEmbed.js +10 -10
  15. package/es/Embed/CopyrightEmbed.js +3 -21
  16. package/es/Embed/ExternalEmbed.js +10 -18
  17. package/es/Embed/FootnoteEmbed.js +11 -8
  18. package/es/Embed/GlossEmbed.js +68 -0
  19. package/es/Embed/H5pEmbed.js +19 -19
  20. package/es/Embed/IframeEmbed.js +9 -6
  21. package/es/Embed/InlineTriggerButton.js +70 -0
  22. package/es/Embed/UnknownEmbed.js +9 -9
  23. package/es/Embed/UuDisclaimerEmbed.js +14 -25
  24. package/es/Embed/index.js +1 -3
  25. package/es/ErrorMessage/ErrorMessage.js +41 -22
  26. package/es/ErrorMessage/ErrorResourceAccessDenied.js +8 -6
  27. package/es/FactBox/FactBox.js +118 -47
  28. package/es/FileList/PdfFile.js +23 -5
  29. package/es/Gloss/Gloss.js +116 -86
  30. package/es/Gloss/GlossExample.js +49 -51
  31. package/es/LicenseByline/EmbedByline.js +143 -33
  32. package/es/LicenseByline/LicenseLink.js +16 -9
  33. package/es/LicenseByline/index.js +2 -2
  34. package/es/LinkBlock/LinkBlock.js +61 -33
  35. package/es/LinkBlock/LinkBlockSection.js +9 -6
  36. package/es/Logo/Logo.js +1 -30
  37. package/es/RelatedArticleList/RelatedArticleList.js +70 -87
  38. package/es/ResourceBox/ResourceBox.js +65 -37
  39. package/es/TagSelector/TagSelector.js +124 -131
  40. package/es/i18n/index.js +2 -1
  41. package/es/i18n/useComponentTranslations.js +83 -0
  42. package/es/index.js +4 -12
  43. package/es/locale/messages-en.js +30 -4
  44. package/es/locale/messages-nb.js +30 -4
  45. package/es/locale/messages-nn.js +30 -4
  46. package/es/locale/messages-se.js +30 -4
  47. package/es/locale/messages-sma.js +30 -4
  48. package/es/model/ContentType.js +3 -0
  49. package/es/styles.css +597 -0
  50. package/lib/Article/ArticleByline.js +8 -8
  51. package/lib/Article/ArticleParagraph.js +12 -14
  52. package/lib/AudioPlayer/AudioPlayer.js +1 -0
  53. package/lib/CampaignBlock/CampaignBlock.d.ts +2 -2
  54. package/lib/CampaignBlock/CampaignBlock.js +106 -68
  55. package/lib/Concept/Concept.d.ts +18 -0
  56. package/lib/Concept/Concept.js +75 -0
  57. package/lib/ContactBlock/ContactBlock.js +18 -18
  58. package/lib/ContentTypeBadge/ContentTypeBadgeNew.d.ts +17 -0
  59. package/lib/ContentTypeBadge/ContentTypeBadgeNew.js +56 -0
  60. package/lib/Embed/AudioEmbed.js +2 -3
  61. package/lib/Embed/BrightcoveEmbed.d.ts +1 -2
  62. package/lib/Embed/BrightcoveEmbed.js +16 -26
  63. package/lib/Embed/ConceptEmbed.d.ts +15 -21
  64. package/lib/Embed/ConceptEmbed.js +58 -301
  65. package/lib/Embed/ConceptListEmbed.js +21 -26
  66. package/lib/Embed/ContentLinkEmbed.js +10 -11
  67. package/lib/Embed/CopyrightEmbed.js +5 -22
  68. package/lib/Embed/ExternalEmbed.d.ts +1 -2
  69. package/lib/Embed/ExternalEmbed.js +13 -19
  70. package/lib/Embed/FootnoteEmbed.js +11 -9
  71. package/lib/Embed/GlossEmbed.d.ts +13 -0
  72. package/lib/Embed/GlossEmbed.js +76 -0
  73. package/lib/Embed/H5pEmbed.d.ts +1 -2
  74. package/lib/Embed/H5pEmbed.js +21 -19
  75. package/lib/Embed/IframeEmbed.d.ts +1 -2
  76. package/lib/Embed/IframeEmbed.js +11 -8
  77. package/lib/Embed/InlineTriggerButton.d.ts +11 -0
  78. package/lib/Embed/InlineTriggerButton.js +76 -0
  79. package/lib/Embed/UnknownEmbed.js +9 -10
  80. package/lib/Embed/UuDisclaimerEmbed.js +16 -26
  81. package/lib/Embed/index.d.ts +2 -3
  82. package/lib/Embed/index.js +2 -9
  83. package/lib/ErrorMessage/ErrorMessage.js +40 -23
  84. package/lib/ErrorMessage/ErrorResourceAccessDenied.js +7 -6
  85. package/lib/FactBox/FactBox.d.ts +0 -1
  86. package/lib/FactBox/FactBox.js +119 -46
  87. package/lib/FileList/PdfFile.js +23 -5
  88. package/lib/Gloss/Gloss.d.ts +10 -2
  89. package/lib/Gloss/Gloss.js +116 -85
  90. package/lib/Gloss/GlossExample.d.ts +3 -5
  91. package/lib/Gloss/GlossExample.js +49 -52
  92. package/lib/LicenseByline/EmbedByline.d.ts +2 -4
  93. package/lib/LicenseByline/EmbedByline.js +145 -35
  94. package/lib/LicenseByline/LicenseLink.d.ts +2 -2
  95. package/lib/LicenseByline/LicenseLink.js +16 -9
  96. package/lib/LicenseByline/index.d.ts +2 -2
  97. package/lib/LicenseByline/index.js +4 -5
  98. package/lib/LinkBlock/LinkBlock.js +62 -34
  99. package/lib/LinkBlock/LinkBlockSection.js +9 -7
  100. package/lib/Logo/Logo.d.ts +1 -3
  101. package/lib/Logo/Logo.js +2 -30
  102. package/lib/RelatedArticleList/RelatedArticleList.d.ts +4 -4
  103. package/lib/RelatedArticleList/RelatedArticleList.js +74 -90
  104. package/lib/ResourceBox/ResourceBox.js +64 -37
  105. package/lib/TagSelector/TagSelector.d.ts +27 -12
  106. package/lib/TagSelector/TagSelector.js +126 -131
  107. package/lib/i18n/index.d.ts +1 -0
  108. package/lib/i18n/index.js +20 -1
  109. package/lib/i18n/useComponentTranslations.d.ts +14 -0
  110. package/lib/i18n/useComponentTranslations.js +93 -0
  111. package/lib/index.d.ts +5 -15
  112. package/lib/index.js +70 -102
  113. package/lib/locale/messages-en.d.ts +26 -0
  114. package/lib/locale/messages-en.js +30 -4
  115. package/lib/locale/messages-nb.d.ts +26 -0
  116. package/lib/locale/messages-nb.js +30 -4
  117. package/lib/locale/messages-nn.d.ts +26 -0
  118. package/lib/locale/messages-nn.js +30 -4
  119. package/lib/locale/messages-se.d.ts +26 -0
  120. package/lib/locale/messages-se.js +30 -4
  121. package/lib/locale/messages-sma.d.ts +26 -0
  122. package/lib/locale/messages-sma.js +30 -4
  123. package/lib/model/ContentType.d.ts +3 -0
  124. package/lib/model/ContentType.js +4 -1
  125. package/lib/styles.css +597 -0
  126. package/package.json +11 -13
  127. package/src/Article/ArticleByline.tsx +1 -1
  128. package/src/Article/ArticleParagraph.tsx +11 -9
  129. package/src/AudioPlayer/AudioPlayer.tsx +1 -0
  130. package/src/CampaignBlock/CampaignBlock.tsx +92 -55
  131. package/src/Concept/Concept.stories.tsx +142 -0
  132. package/src/Concept/Concept.tsx +73 -0
  133. package/src/ContactBlock/ContactBlock.tsx +1 -1
  134. package/src/ContentTypeBadge/ContentTypeBadgeNew.stories.tsx +70 -0
  135. package/src/ContentTypeBadge/ContentTypeBadgeNew.tsx +69 -0
  136. package/src/Embed/AudioEmbed.tsx +2 -2
  137. package/src/Embed/BrightcoveEmbed.stories.tsx +0 -3
  138. package/src/Embed/BrightcoveEmbed.tsx +18 -20
  139. package/src/Embed/ConceptEmbed.stories.tsx +1 -105
  140. package/src/Embed/ConceptEmbed.tsx +60 -385
  141. package/src/Embed/ConceptListEmbed.tsx +20 -19
  142. package/src/Embed/ContentLinkEmbed.tsx +8 -10
  143. package/src/Embed/CopyrightEmbed.tsx +1 -11
  144. package/src/Embed/ExternalEmbed.tsx +14 -17
  145. package/src/Embed/FootnoteEmbed.stories.tsx +2 -5
  146. package/src/Embed/FootnoteEmbed.tsx +13 -16
  147. package/src/Embed/GlossEmbed.stories.tsx +140 -0
  148. package/src/Embed/GlossEmbed.tsx +64 -0
  149. package/src/Embed/H5pEmbed.tsx +22 -16
  150. package/src/Embed/IframeEmbed.tsx +12 -6
  151. package/src/Embed/InlineTriggerButton.tsx +72 -0
  152. package/src/Embed/UnknownEmbed.tsx +6 -7
  153. package/src/Embed/UuDisclaimerEmbed.stories.tsx +4 -4
  154. package/src/Embed/UuDisclaimerEmbed.tsx +17 -25
  155. package/src/Embed/index.ts +2 -3
  156. package/src/ErrorMessage/ErrorMessage.tsx +40 -29
  157. package/src/ErrorMessage/ErrorResourceAccessDenied.tsx +8 -6
  158. package/src/FactBox/FactBox.tsx +115 -115
  159. package/src/FactBox/Factbox.stories.tsx +43 -27
  160. package/src/FileList/FileList.stories.tsx +6 -1
  161. package/src/FileList/PdfFile.tsx +22 -5
  162. package/src/Gloss/Gloss.stories.tsx +107 -1
  163. package/src/Gloss/Gloss.tsx +143 -156
  164. package/src/Gloss/GlossExample.tsx +51 -77
  165. package/src/LicenseByline/EmbedByline.stories.tsx +9 -4
  166. package/src/LicenseByline/EmbedByline.tsx +139 -53
  167. package/src/LicenseByline/LicenseLink.tsx +15 -15
  168. package/src/LicenseByline/index.tsx +2 -2
  169. package/src/LinkBlock/LinkBlock.stories.tsx +8 -10
  170. package/src/LinkBlock/LinkBlock.tsx +54 -59
  171. package/src/LinkBlock/LinkBlockSection.tsx +9 -12
  172. package/src/Logo/Logo.stories.tsx +0 -1
  173. package/src/Logo/Logo.tsx +2 -30
  174. package/src/RelatedArticleList/RelatedArticleList.tsx +69 -88
  175. package/src/ResourceBox/ResourceBox.tsx +63 -59
  176. package/src/TagSelector/TagSelector.stories.tsx +92 -68
  177. package/src/TagSelector/TagSelector.tsx +161 -126
  178. package/src/i18n/index.ts +5 -0
  179. package/src/i18n/useComponentTranslations.ts +72 -0
  180. package/src/index.ts +23 -19
  181. package/src/locale/messages-en.ts +28 -2
  182. package/src/locale/messages-nb.ts +28 -2
  183. package/src/locale/messages-nn.ts +28 -2
  184. package/src/locale/messages-se.ts +28 -2
  185. package/src/locale/messages-sma.ts +28 -2
  186. package/src/model/ContentType.ts +3 -0
  187. package/es/DefinitionList/DefinitionDescription.js +0 -28
  188. package/es/DefinitionList/DefinitionTerm.js +0 -28
  189. package/es/DefinitionList/index.js +0 -10
  190. package/es/Embed/conceptComponents.js +0 -155
  191. package/es/ExpandableBox/ExpandableBox.js +0 -29
  192. package/es/ExpandableBox/index.js +0 -9
  193. package/es/Figure/Figure.js +0 -73
  194. package/es/Figure/index.js +0 -9
  195. package/es/FramedContent/FramedContent.js +0 -28
  196. package/es/FramedContent/index.js +0 -10
  197. package/es/Image/Image.js +0 -99
  198. package/es/Image/ImageLink.js +0 -39
  199. package/es/Image/index.js +0 -12
  200. package/es/LetterFilter/LetterFilter.js +0 -54
  201. package/es/LetterFilter/alphabet.js +0 -9
  202. package/es/LetterFilter/index.js +0 -10
  203. package/es/LicenseByline/LicenseDescription.js +0 -63
  204. package/es/List/OrderedList.js +0 -41
  205. package/es/List/UnOrderedList.js +0 -28
  206. package/es/List/index.js +0 -10
  207. package/es/Notion/Notion.js +0 -76
  208. package/es/Notion/NotionImage.js +0 -46
  209. package/es/Notion/index.js +0 -9
  210. package/es/Table/Table.js +0 -141
  211. package/es/Table/index.js +0 -11
  212. package/es/TagSelector/Control.js +0 -28
  213. package/es/TagSelector/DropdownIndicator.js +0 -60
  214. package/es/TagSelector/Input.js +0 -22
  215. package/es/TagSelector/Menu.js +0 -27
  216. package/es/TagSelector/MenuList.js +0 -28
  217. package/es/TagSelector/Option.js +0 -60
  218. package/es/TagSelector/SelectContainer.js +0 -27
  219. package/es/TagSelector/ValueButton.js +0 -53
  220. package/es/TagSelector/ariaMessages.js +0 -94
  221. package/es/TagSelector/index.js +0 -10
  222. package/es/TagSelector/types.js +0 -1
  223. package/lib/DefinitionList/DefinitionDescription.d.ts +0 -10
  224. package/lib/DefinitionList/DefinitionDescription.js +0 -35
  225. package/lib/DefinitionList/DefinitionTerm.d.ts +0 -10
  226. package/lib/DefinitionList/DefinitionTerm.js +0 -35
  227. package/lib/DefinitionList/index.d.ts +0 -9
  228. package/lib/DefinitionList/index.js +0 -20
  229. package/lib/Embed/conceptComponents.d.ts +0 -40
  230. package/lib/Embed/conceptComponents.js +0 -163
  231. package/lib/ExpandableBox/ExpandableBox.d.ts +0 -15
  232. package/lib/ExpandableBox/ExpandableBox.js +0 -37
  233. package/lib/ExpandableBox/index.d.ts +0 -8
  234. package/lib/ExpandableBox/index.js +0 -18
  235. package/lib/Figure/Figure.d.ts +0 -16
  236. package/lib/Figure/Figure.js +0 -81
  237. package/lib/Figure/index.d.ts +0 -9
  238. package/lib/Figure/index.js +0 -13
  239. package/lib/FramedContent/FramedContent.d.ts +0 -12
  240. package/lib/FramedContent/FramedContent.js +0 -35
  241. package/lib/FramedContent/index.d.ts +0 -9
  242. package/lib/FramedContent/index.js +0 -16
  243. package/lib/Image/Image.d.ts +0 -38
  244. package/lib/Image/Image.js +0 -105
  245. package/lib/Image/ImageLink.d.ts +0 -18
  246. package/lib/Image/ImageLink.js +0 -44
  247. package/lib/Image/index.d.ts +0 -12
  248. package/lib/Image/index.js +0 -30
  249. package/lib/LetterFilter/LetterFilter.d.ts +0 -14
  250. package/lib/LetterFilter/LetterFilter.js +0 -61
  251. package/lib/LetterFilter/alphabet.d.ts +0 -8
  252. package/lib/LetterFilter/alphabet.js +0 -15
  253. package/lib/LetterFilter/index.d.ts +0 -9
  254. package/lib/LetterFilter/index.js +0 -16
  255. package/lib/LicenseByline/LicenseDescription.d.ts +0 -15
  256. package/lib/LicenseByline/LicenseDescription.js +0 -70
  257. package/lib/List/OrderedList.d.ts +0 -16
  258. package/lib/List/OrderedList.js +0 -48
  259. package/lib/List/UnOrderedList.d.ts +0 -10
  260. package/lib/List/UnOrderedList.js +0 -35
  261. package/lib/List/index.d.ts +0 -9
  262. package/lib/List/index.js +0 -20
  263. package/lib/Notion/Notion.d.ts +0 -20
  264. package/lib/Notion/Notion.js +0 -82
  265. package/lib/Notion/NotionImage.d.ts +0 -13
  266. package/lib/Notion/NotionImage.js +0 -54
  267. package/lib/Notion/index.d.ts +0 -8
  268. package/lib/Notion/index.js +0 -13
  269. package/lib/Table/Table.d.ts +0 -19
  270. package/lib/Table/Table.js +0 -145
  271. package/lib/Table/index.d.ts +0 -10
  272. package/lib/Table/index.js +0 -23
  273. package/lib/TagSelector/Control.d.ts +0 -11
  274. package/lib/TagSelector/Control.js +0 -35
  275. package/lib/TagSelector/DropdownIndicator.d.ts +0 -11
  276. package/lib/TagSelector/DropdownIndicator.js +0 -64
  277. package/lib/TagSelector/Input.d.ts +0 -12
  278. package/lib/TagSelector/Input.js +0 -29
  279. package/lib/TagSelector/Menu.d.ts +0 -12
  280. package/lib/TagSelector/Menu.js +0 -34
  281. package/lib/TagSelector/MenuList.d.ts +0 -16
  282. package/lib/TagSelector/MenuList.js +0 -35
  283. package/lib/TagSelector/Option.d.ts +0 -12
  284. package/lib/TagSelector/Option.js +0 -67
  285. package/lib/TagSelector/SelectContainer.d.ts +0 -11
  286. package/lib/TagSelector/SelectContainer.js +0 -34
  287. package/lib/TagSelector/ValueButton.d.ts +0 -20
  288. package/lib/TagSelector/ValueButton.js +0 -60
  289. package/lib/TagSelector/ariaMessages.d.ts +0 -16
  290. package/lib/TagSelector/ariaMessages.js +0 -101
  291. package/lib/TagSelector/index.d.ts +0 -11
  292. package/lib/TagSelector/index.js +0 -13
  293. package/lib/TagSelector/types.d.ts +0 -11
  294. package/lib/TagSelector/types.js +0 -5
  295. package/src/DefinitionList/DefinitionDescription.tsx +0 -26
  296. package/src/DefinitionList/DefinitionTerm.tsx +0 -26
  297. package/src/DefinitionList/index.tsx +0 -10
  298. package/src/Embed/conceptComponents.tsx +0 -293
  299. package/src/ExpandableBox/ExpandableBox.stories.tsx +0 -41
  300. package/src/ExpandableBox/ExpandableBox.tsx +0 -23
  301. package/src/ExpandableBox/index.ts +0 -9
  302. package/src/Figure/Figure.tsx +0 -167
  303. package/src/Figure/index.ts +0 -11
  304. package/src/FramedContent/FramedContent.stories.tsx +0 -152
  305. package/src/FramedContent/FramedContent.tsx +0 -26
  306. package/src/FramedContent/index.ts +0 -10
  307. package/src/Image/Image.stories.tsx +0 -61
  308. package/src/Image/Image.tsx +0 -147
  309. package/src/Image/ImageLink.tsx +0 -37
  310. package/src/Image/index.ts +0 -14
  311. package/src/LetterFilter/LetterFilter.stories.tsx +0 -29
  312. package/src/LetterFilter/LetterFilter.tsx +0 -78
  313. package/src/LetterFilter/alphabet.ts +0 -39
  314. package/src/LetterFilter/index.ts +0 -11
  315. package/src/LicenseByline/LicenseDescription.tsx +0 -100
  316. package/src/List/OrderedList.stories.tsx +0 -135
  317. package/src/List/OrderedList.tsx +0 -158
  318. package/src/List/UnOrderedList.tsx +0 -43
  319. package/src/List/UnorderedList.stories.tsx +0 -72
  320. package/src/List/index.ts +0 -10
  321. package/src/Notion/Notion.tsx +0 -96
  322. package/src/Notion/NotionImage.tsx +0 -64
  323. package/src/Notion/index.ts +0 -9
  324. package/src/Table/Table.stories.tsx +0 -738
  325. package/src/Table/Table.tsx +0 -284
  326. package/src/Table/index.ts +0 -12
  327. package/src/TagSelector/Control.tsx +0 -34
  328. package/src/TagSelector/DropdownIndicator.tsx +0 -55
  329. package/src/TagSelector/Input.tsx +0 -31
  330. package/src/TagSelector/Menu.tsx +0 -38
  331. package/src/TagSelector/MenuList.tsx +0 -30
  332. package/src/TagSelector/Option.tsx +0 -58
  333. package/src/TagSelector/SelectContainer.tsx +0 -31
  334. package/src/TagSelector/ValueButton.tsx +0 -47
  335. package/src/TagSelector/ariaMessages.ts +0 -96
  336. package/src/TagSelector/index.ts +0 -14
  337. package/src/TagSelector/types.ts +0 -12
@@ -1,158 +0,0 @@
1
- /**
2
- * Copyright (c) 2022-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 { CSSProperties, forwardRef, HTMLAttributes, useMemo } from "react";
10
- import { css } from "@emotion/react";
11
- import styled from "@emotion/styled";
12
- import { fonts, spacing } from "@ndla/core";
13
-
14
- export const LetterCSS = css`
15
- padding-left: ${spacing.medium};
16
- > li {
17
- counter-increment: level1;
18
-
19
- :before {
20
- content: counter(level1, upper-alpha) ".";
21
- }
22
- > ol[data-type="letters"] {
23
- > li {
24
- :before {
25
- content: counter(level1, lower-alpha) ".";
26
- }
27
- > ol[data-type="letters"] {
28
- padding-left: 0;
29
- > li {
30
- padding-left: ${spacing.normal};
31
- :before {
32
- left: ${spacing.small};
33
- position: absolute;
34
- content: counter(level1, lower-roman) ".";
35
- transform: translateX(-100%);
36
- }
37
- > ol[data-type="letters"] {
38
- padding-left: 0;
39
- > li {
40
- padding-left: ${spacing.normal};
41
- :before {
42
- left: ${spacing.small};
43
- position: absolute;
44
- content: counter(level1, lower-roman) ".";
45
- transform: translateX(-100%);
46
- }
47
- }
48
- }
49
- }
50
- }
51
- }
52
- }
53
- }
54
- `;
55
-
56
- export const NumberCSS = css`
57
- padding-left: ${spacing.normal};
58
- > li {
59
- counter-increment: level1;
60
- :before {
61
- content: counter(level1, decimal) ".";
62
- }
63
- > ol:not([data-type="letters"]) {
64
- counter-reset: level2;
65
- &[data-count="true"] {
66
- counter-reset: level2 var(--start, 0);
67
- }
68
- > li {
69
- padding-left: ${spacing.nsmall};
70
- counter-increment: level2;
71
- :before {
72
- content: counter(level1, decimal) "." counter(level2, decimal) ".";
73
- }
74
- > ol:not([data-type="letters"]) {
75
- counter-reset: level3;
76
- &[data-count="true"] {
77
- counter-reset: level3 var(--start, 0);
78
- }
79
- > li {
80
- padding-left: ${spacing.medium};
81
- counter-increment: level3;
82
- :before {
83
- content: counter(level1, decimal) "." counter(level2, decimal) "." counter(level3, decimal) ".";
84
- }
85
- > ol:not([data-type="letters"]) {
86
- counter-reset: level4;
87
- &[data-count="true"] {
88
- counter-reset: level4 var(--start, 0);
89
- }
90
-
91
- > li {
92
- padding-left: ${spacing.large};
93
- counter-increment: level4;
94
- :before {
95
- content: counter(level1, decimal) "." counter(level2, decimal) "." counter(level3, decimal) "."
96
- counter(level4, decimal) ".";
97
- }
98
- }
99
- }
100
- }
101
- }
102
- }
103
- }
104
- }
105
- `;
106
-
107
- const StyledOl = styled.ol`
108
- ${fonts.sizes("18px", "29px")};
109
- padding: 0;
110
- list-style-type: none;
111
- counter-reset: level1;
112
- margin: ${spacing.normal} 0 ${spacing.normal} ${spacing.normal};
113
-
114
- &[data-count="true"] {
115
- counter-reset: level1 var(--start, 0);
116
- }
117
-
118
- > li {
119
- margin-top: ${spacing.nsmall};
120
- padding-top: 0;
121
- position: relative;
122
- ::before {
123
- position: absolute;
124
- left: -${spacing.normal};
125
- }
126
- > ol {
127
- padding-bottom: 0;
128
- margin-left: 0;
129
- }
130
- }
131
-
132
- &:not([data-type="letters"]) {
133
- ${NumberCSS}
134
- }
135
-
136
- &[data-type="letters"] {
137
- ${LetterCSS}
138
- }
139
- `;
140
-
141
- interface Props extends HTMLAttributes<HTMLOListElement> {
142
- type?: "letters";
143
- start?: number;
144
- }
145
-
146
- const OrderedList = forwardRef<HTMLOListElement, Props>(({ type, children, start, ...rest }, ref) => {
147
- const style = useMemo(() => {
148
- return { "--start": start ? start - 1 : undefined } as CSSProperties;
149
- }, [start]);
150
-
151
- return (
152
- <StyledOl data-type={type} data-count={start != null} style={style} ref={ref} {...rest}>
153
- {children}
154
- </StyledOl>
155
- );
156
- });
157
-
158
- export default OrderedList;
@@ -1,43 +0,0 @@
1
- /**
2
- * Copyright (c) 2022-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 { forwardRef, HTMLAttributes } from "react";
10
- import styled from "@emotion/styled";
11
- import { colors, fonts, spacing } from "@ndla/core";
12
-
13
- const StyledUl = styled.ul`
14
- padding-left: ${spacing.nsmall};
15
- margin: ${spacing.normal} 0 ${spacing.normal} ${spacing.normal};
16
- ${fonts.size.text.content};
17
-
18
- ul {
19
- margin: 0;
20
- }
21
-
22
- > li {
23
- ::marker {
24
- color: ${colors.brand.secondary};
25
- }
26
- }
27
- // List item
28
- li {
29
- padding-top: 0;
30
- padding-left: ${spacing.nsmall};
31
- margin-top: ${spacing.nsmall};
32
- }
33
- `;
34
-
35
- const UnOrderedList = forwardRef<HTMLUListElement, HTMLAttributes<HTMLUListElement>>(({ children, ...rest }, ref) => {
36
- return (
37
- <StyledUl ref={ref} {...rest}>
38
- {children}
39
- </StyledUl>
40
- );
41
- });
42
-
43
- export default UnOrderedList;
@@ -1,72 +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 } from "@storybook/react";
10
- import UnOrderedList from "./UnOrderedList";
11
-
12
- export default {
13
- title: "Base styles/UnorderedList",
14
- tags: ["autodocs"],
15
- parameters: {
16
- layout: "fullscreen",
17
- },
18
- component: UnOrderedList,
19
- } as Meta<typeof UnOrderedList>;
20
-
21
- export const Default: StoryFn = () => (
22
- <UnOrderedList>
23
- <li>Listepunkt 1</li>
24
- <li>Listepunkt 2</li>
25
- <li>
26
- Listepunkt 3
27
- <UnOrderedList>
28
- <li>Listepunkt 1</li>
29
- <li>Listepunkt 2</li>
30
- <li>
31
- Listepunkt 3
32
- <UnOrderedList>
33
- <li>Listepunkt 1</li>
34
- <li>Listepunkt 2</li>
35
- <li>
36
- Listepunkt 3
37
- <UnOrderedList>
38
- <li>Listepunkt 1</li>
39
- <li>Listepunkt 2</li>
40
- <li>Listepunkt 3</li>
41
- </UnOrderedList>
42
- </li>
43
- </UnOrderedList>
44
- </li>
45
- </UnOrderedList>
46
- </li>
47
- <li>Listepunkt 4</li>
48
- </UnOrderedList>
49
- );
50
-
51
- export const NoStyle: StoryFn = () => (
52
- <ul>
53
- <li>Listepunkt 1</li>
54
- <li>Listepunkt 2</li>
55
- <li>
56
- Listepunkt 3
57
- <ul>
58
- <li>Listepunkt 1</li>
59
- <li>Listepunkt 2</li>
60
- <li>
61
- Listepunkt 3
62
- <ul>
63
- <li>Listepunkt 1</li>
64
- <li>Listepunkt 2</li>
65
- <li>Listepunkt 3</li>
66
- </ul>
67
- </li>
68
- </ul>
69
- </li>
70
- <li>Listepunkt 4</li>
71
- </ul>
72
- );
package/src/List/index.ts DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Copyright (c) 2022-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 OrderedList } from "./OrderedList";
10
- export { default as UnOrderedList } from "./UnOrderedList";
@@ -1,96 +0,0 @@
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
- import { Fragment, ReactNode } from "react";
9
- import { useTranslation } from "react-i18next";
10
- import styled from "@emotion/styled";
11
- import { breakpoints, fonts, mq, spacing } from "@ndla/core";
12
-
13
- const ContentWrapper = styled.div`
14
- ${mq.range({ until: breakpoints.tabletWide })} {
15
- display: flex;
16
- flex-direction: column-reverse;
17
- }
18
- figure {
19
- margin: 0;
20
- }
21
- `;
22
- const TextWrapper = styled.div<{ hasVisualElement: boolean }>`
23
- width: ${(props) => (props.hasVisualElement ? "75%" : "100%")};
24
-
25
- ${mq.range({ until: breakpoints.tabletWide })} {
26
- width: 100%;
27
- }
28
- font-family: ${fonts.sans};
29
- ${fonts.sizes("18px", "28px")};
30
- ${mq.range({ from: breakpoints.desktop })} {
31
- ul,
32
- ol {
33
- margin: ${spacing.small} 0;
34
- padding: 0 1rem 0 2rem;
35
- }
36
- ol > li {
37
- margin-left: ${spacing.normal};
38
- }
39
- }
40
- `;
41
-
42
- const ClearWrapper = styled.div`
43
- clear: both;
44
- `;
45
-
46
- const LabelsContainer = styled.div`
47
- display: flex;
48
- align-items: center;
49
- ${fonts.sizes("14px", "24px")};
50
- font-family: ${fonts.sans};
51
- margin: ${spacing.small} 0;
52
- `;
53
-
54
- export type NotionProps = {
55
- id: string | number;
56
- labels?: string[];
57
- text: ReactNode;
58
- title: string;
59
- visualElement: ReactNode;
60
- imageElement?: ReactNode;
61
- children?: ReactNode;
62
- lang?: string;
63
- };
64
-
65
- const Notion = ({ id, labels = [], text, title, visualElement, imageElement, children, lang }: NotionProps) => {
66
- const { t } = useTranslation();
67
-
68
- return (
69
- <div>
70
- <ContentWrapper>
71
- {imageElement}
72
- {visualElement}
73
- <TextWrapper hasVisualElement={!!(imageElement || visualElement)} lang={lang}>
74
- <b>{title.trim()}</b>
75
- {text}
76
- {!!labels.length && (
77
- <LabelsContainer>
78
- {t("searchPage.resultType.notionLabels")}
79
- {labels.map((label, i) => (
80
- <Fragment key={`notion-${id}-label-${i + 1}`}>
81
- {" "}
82
- {label}
83
- {i < labels?.length - 1 && <> &#8226;</>}
84
- </Fragment>
85
- ))}
86
- </LabelsContainer>
87
- )}
88
- </TextWrapper>
89
- <ClearWrapper />
90
- </ContentWrapper>
91
- {children}
92
- </div>
93
- );
94
- };
95
-
96
- export default Notion;
@@ -1,64 +0,0 @@
1
- /**
2
- * Copyright (c) 2022-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 styled from "@emotion/styled";
11
- import { animations, breakpoints, colors, mq, spacing } from "@ndla/core";
12
- import { Image } from "@ndla/primitives";
13
- import { Figure } from "../Figure";
14
-
15
- const StyledImageWrapper = styled.div`
16
- overflow: hidden;
17
- width: 260px;
18
- padding-top: ${spacing.small};
19
- ${mq.range({ until: breakpoints.tabletWide })} {
20
- margin: 0 auto;
21
- }
22
- &:hover {
23
- img {
24
- transform: scale(1.1);
25
- opacity: 1.1;
26
- transition-duration: 0.5s;
27
- }
28
- }
29
- `;
30
-
31
- const StyledImage = styled(Image)`
32
- object-fit: cover;
33
- max-height: 162px;
34
- transition: transform ${animations.durations.fast};
35
- ${mq.range({ until: breakpoints.tabletWide })} {
36
- min-width: 260px;
37
- }
38
- `;
39
-
40
- interface Props {
41
- src: string;
42
- alt: string;
43
- }
44
-
45
- const StyledFigure = styled(Figure)`
46
- &:hover {
47
- [data-open-button] {
48
- background: ${colors.white};
49
- svg {
50
- transform: scale(1.2);
51
- }
52
- }
53
- }
54
- `;
55
-
56
- export const NotionImage = ({ src, alt }: Props) => {
57
- return (
58
- <StyledFigure type={"full-column"}>
59
- <StyledImageWrapper>
60
- <StyledImage alt={alt} src={src} />
61
- </StyledImageWrapper>
62
- </StyledFigure>
63
- );
64
- };
@@ -1,9 +0,0 @@
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
- export { default as Notion } from "./Notion";