@ndla/ui 51.0.0 → 52.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/es/Article/Article.js +12 -12
- package/es/Article/ArticleHeaderWrapper.js +0 -11
- package/es/Article/ArticleNotions.js +6 -6
- package/es/Article/ArticleParagraph.js +25 -0
- package/es/Article/index.js +1 -0
- package/es/AudioPlayer/AudioPlayer.js +13 -13
- package/es/AudioPlayer/Controls.js +22 -38
- package/es/Breadcrumb/Breadcrumb.js +2 -33
- package/es/Breadcrumb/BreadcrumbItem.js +16 -29
- package/es/Breadcrumb/index.js +0 -1
- package/es/CodeBlock/CodeBlock.js +115 -0
- package/es/CodeBlock/codeLanguageOptions.js +84 -0
- package/es/CodeBlock/index.js +10 -0
- package/es/CreatedBy/CreatedBy.js +4 -4
- package/es/Embed/BrightcoveEmbed.js +3 -3
- package/es/Embed/CodeEmbed.js +2 -2
- package/es/Embed/ConceptEmbed.js +37 -33
- package/es/Embed/ExternalEmbed.js +2 -2
- package/es/Embed/IframeEmbed.js +1 -1
- package/es/Embed/ImageEmbed.js +17 -14
- package/es/Embed/RelatedContentEmbed.js +3 -3
- package/es/Embed/UuDisclaimerEmbed.js +4 -3
- package/es/Embed/conceptComponents.js +10 -10
- package/es/Figure/Figure.js +32 -19
- package/es/FrontpageArticle/FrontpageArticle.js +3 -3
- package/es/Gloss/Gloss.js +12 -10
- package/es/Hero/Hero.js +1 -1
- package/es/Image/Image.js +3 -3
- package/es/LanguageSelector/LanguageSelector.js +5 -5
- package/es/Layout/LayoutItem.js +2 -1
- package/es/Layout/OneColumn.js +22 -28
- package/es/Layout/PageContainer.js +21 -17
- package/es/LicenseByline/LicenseLink.js +5 -6
- package/es/Messages/MessageBox.js +9 -7
- package/es/MyNdla/Resource/index.js +1 -2
- package/es/MyNdla/index.js +1 -2
- package/es/Notion/Notion.js +4 -4
- package/es/Resource/BlockResource.js +13 -15
- package/es/Resource/ListResource.js +13 -15
- package/es/Search/ContentTypeResult.js +4 -4
- package/es/Search/SearchResult.js +11 -11
- package/es/Search/SearchResultSleeve.js +16 -16
- package/es/TreeStructure/TreeStructure.js +6 -6
- package/es/all.css +1 -1
- package/es/index.js +5 -19
- package/es/locale/messages-en.js +12 -2
- package/es/locale/messages-nb.js +12 -2
- package/es/locale/messages-nn.js +13 -3
- package/es/locale/messages-se.js +11 -1
- package/es/locale/messages-sma.js +12 -2
- package/es/types.js +0 -9
- package/lib/Article/Article.d.ts +5 -7
- package/lib/Article/Article.js +12 -12
- package/lib/Article/ArticleHeaderWrapper.js +0 -11
- package/lib/Article/ArticleNotions.js +5 -5
- package/lib/Article/ArticleParagraph.d.ts +13 -0
- package/lib/Article/ArticleParagraph.js +32 -0
- package/lib/Article/index.d.ts +1 -0
- package/lib/Article/index.js +7 -0
- package/lib/AudioPlayer/AudioPlayer.js +13 -13
- package/lib/AudioPlayer/Controls.js +21 -37
- package/lib/Breadcrumb/Breadcrumb.d.ts +1 -2
- package/lib/Breadcrumb/Breadcrumb.js +2 -33
- package/lib/Breadcrumb/BreadcrumbItem.js +16 -29
- package/lib/Breadcrumb/index.d.ts +0 -1
- package/lib/Breadcrumb/index.js +0 -7
- package/lib/CodeBlock/CodeBlock.d.ts +18 -0
- package/lib/CodeBlock/CodeBlock.js +121 -0
- package/lib/{Navigation/index.d.ts → CodeBlock/codeLanguageOptions.d.ts} +5 -2
- package/lib/CodeBlock/codeLanguageOptions.js +90 -0
- package/lib/CodeBlock/index.d.ts +9 -0
- package/lib/CodeBlock/index.js +20 -0
- package/lib/CreatedBy/CreatedBy.js +4 -4
- package/lib/Embed/BrightcoveEmbed.js +3 -3
- package/lib/Embed/CodeEmbed.js +2 -2
- package/lib/Embed/ConceptEmbed.d.ts +1 -1
- package/lib/Embed/ConceptEmbed.js +36 -33
- package/lib/Embed/ExternalEmbed.js +2 -2
- package/lib/Embed/IframeEmbed.js +1 -1
- package/lib/Embed/ImageEmbed.js +17 -14
- package/lib/Embed/RelatedContentEmbed.js +3 -3
- package/lib/Embed/UuDisclaimerEmbed.js +4 -3
- package/lib/Embed/conceptComponents.js +10 -10
- package/lib/Figure/Figure.d.ts +2 -5
- package/lib/Figure/Figure.js +32 -23
- package/lib/FrontpageArticle/FrontpageArticle.js +3 -3
- package/lib/Gloss/Gloss.js +12 -10
- package/lib/Hero/Hero.js +1 -1
- package/lib/Image/Image.js +2 -2
- package/lib/LanguageSelector/LanguageSelector.js +5 -5
- package/lib/Layout/LayoutItem.js +2 -1
- package/lib/Layout/OneColumn.d.ts +3 -8
- package/lib/Layout/OneColumn.js +22 -30
- package/lib/Layout/PageContainer.d.ts +3 -7
- package/lib/Layout/PageContainer.js +21 -19
- package/lib/LicenseByline/LicenseLink.js +5 -6
- package/lib/Messages/MessageBox.d.ts +2 -1
- package/lib/Messages/MessageBox.js +9 -7
- package/lib/MyNdla/Resource/index.d.ts +1 -2
- package/lib/MyNdla/Resource/index.js +0 -7
- package/lib/MyNdla/index.d.ts +1 -2
- package/lib/MyNdla/index.js +0 -7
- package/lib/Notion/Notion.js +4 -4
- package/lib/Resource/BlockResource.js +13 -15
- package/lib/Resource/ListResource.js +13 -15
- package/lib/Search/ContentTypeResult.js +4 -4
- package/lib/Search/SearchResult.js +10 -10
- package/lib/Search/SearchResultSleeve.js +16 -16
- package/lib/TreeStructure/TreeStructure.js +6 -6
- package/lib/all.css +1 -1
- package/lib/index.d.ts +4 -19
- package/lib/index.js +17 -229
- package/lib/locale/messages-en.d.ts +10 -0
- package/lib/locale/messages-en.js +12 -2
- package/lib/locale/messages-nb.d.ts +10 -0
- package/lib/locale/messages-nb.js +12 -2
- package/lib/locale/messages-nn.d.ts +10 -0
- package/lib/locale/messages-nn.js +13 -3
- package/lib/locale/messages-se.d.ts +10 -0
- package/lib/locale/messages-se.js +11 -1
- package/lib/locale/messages-sma.d.ts +10 -0
- package/lib/locale/messages-sma.js +12 -2
- package/lib/types.d.ts +0 -51
- package/lib/types.js +1 -10
- package/package.json +16 -21
- package/src/Article/Article.tsx +14 -18
- package/src/Article/ArticleHeaderWrapper.tsx +1 -12
- package/src/Article/ArticleNotions.tsx +3 -3
- package/src/Article/ArticleParagraph.tsx +22 -0
- package/src/Article/component.article.scss +0 -7
- package/src/Article/index.ts +2 -0
- package/src/AudioPlayer/AudioPlayer.tsx +2 -2
- package/src/AudioPlayer/Controls.tsx +5 -5
- package/src/Breadcrumb/Breadcrumb.stories.tsx +0 -4
- package/src/Breadcrumb/Breadcrumb.tsx +1 -38
- package/src/Breadcrumb/BreadcrumbItem.tsx +5 -19
- package/src/Breadcrumb/index.ts +0 -2
- package/src/CodeBlock/CodeBlock.stories.tsx +113 -0
- package/src/CodeBlock/CodeBlock.tsx +228 -0
- package/src/CodeBlock/codeLanguageOptions.ts +115 -0
- package/src/CodeBlock/index.ts +10 -0
- package/src/CreatedBy/CreatedBy.tsx +2 -2
- package/src/Embed/AudioEmbed.stories.tsx +6 -4
- package/src/Embed/BrightcoveEmbed.stories.tsx +6 -4
- package/src/Embed/BrightcoveEmbed.tsx +2 -2
- package/src/Embed/CodeEmbed.tsx +2 -2
- package/src/Embed/ConceptEmbed.stories.tsx +6 -4
- package/src/Embed/ConceptEmbed.tsx +103 -96
- package/src/Embed/ExternalEmbed.stories.tsx +6 -4
- package/src/Embed/ExternalEmbed.tsx +2 -2
- package/src/Embed/H5pEmbed.stories.tsx +6 -4
- package/src/Embed/IframeEmbed.stories.tsx +6 -4
- package/src/Embed/IframeEmbed.tsx +1 -1
- package/src/Embed/ImageEmbed.stories.tsx +6 -4
- package/src/Embed/ImageEmbed.tsx +19 -11
- package/src/Embed/RelatedContentEmbed.stories.tsx +6 -4
- package/src/Embed/RelatedContentEmbed.tsx +3 -3
- package/src/Embed/UuDisclaimerEmbed.stories.tsx +23 -4
- package/src/Embed/UuDisclaimerEmbed.tsx +1 -1
- package/src/Embed/conceptComponents.tsx +1 -0
- package/src/Figure/Figure.tsx +57 -18
- package/src/Footer/Footer.stories.tsx +1 -1
- package/src/FrontpageArticle/FrontpageArticle.tsx +3 -3
- package/src/Gloss/Gloss.tsx +4 -2
- package/src/Hero/Hero.tsx +1 -1
- package/src/Image/Image.tsx +2 -2
- package/src/LanguageSelector/LanguageSelector.tsx +1 -1
- package/src/Layout/LayoutItem.tsx +2 -1
- package/src/Layout/OneColumn.tsx +25 -35
- package/src/Layout/PageContainer.tsx +19 -23
- package/src/LicenseByline/LicenseLink.tsx +1 -2
- package/src/Messages/MessageBox.tsx +3 -2
- package/src/MyNdla/Resource/index.ts +1 -2
- package/src/MyNdla/index.ts +1 -2
- package/src/Notion/Notion.tsx +2 -2
- package/src/Resource/BlockResource.tsx +4 -8
- package/src/Resource/ListResource.tsx +4 -6
- package/src/Search/ContentTypeResult.tsx +4 -4
- package/src/Search/SearchResult.tsx +2 -2
- package/src/Search/SearchResultSleeve.tsx +7 -9
- package/src/Table/Table.stories.tsx +8 -8
- package/src/TreeStructure/TreeStructure.stories.tsx +85 -28
- package/src/TreeStructure/TreeStructure.tsx +1 -1
- package/src/index.ts +5 -46
- package/src/locale/messages-en.ts +14 -1
- package/src/locale/messages-nb.ts +14 -1
- package/src/locale/messages-nn.ts +15 -2
- package/src/locale/messages-se.ts +13 -0
- package/src/locale/messages-sma.ts +14 -1
- package/src/main.scss +0 -2
- package/src/types.ts +0 -62
- package/es/Article/ArticleAccessMessage.js +0 -43
- package/es/Aside/Aside.js +0 -75
- package/es/Aside/index.js +0 -10
- package/es/BannerCard/BannerCard.js +0 -84
- package/es/BannerCard/index.js +0 -10
- package/es/Breadcrumb/HeaderBreadcrumb.js +0 -57
- package/es/CompetenceGoalTab/CompetenceGoalItem.js +0 -42
- package/es/CompetenceGoalTab/CompetenceGoalTab.js +0 -75
- package/es/CompetenceGoalTab/CompetenceItem.js +0 -108
- package/es/CompetenceGoalTab/CoreElementItem.js +0 -44
- package/es/CompetenceGoalTab/SearchButton.js +0 -43
- package/es/CompetenceGoalTab/index.js +0 -10
- package/es/CompetenceGoalTab/styles.js +0 -57
- package/es/Filter/FilterButtons.js +0 -185
- package/es/Filter/FilterCarousel.js +0 -166
- package/es/Filter/ToggleItem.js +0 -68
- package/es/Filter/index.js +0 -10
- package/es/Frontpage/FrontpageAllSubjects.js +0 -254
- package/es/LearningPaths/LearningPathContent.js +0 -25
- package/es/LearningPaths/LearningPathInformation.js +0 -74
- package/es/LearningPaths/LearningPathLastStepNavigation.js +0 -65
- package/es/LearningPaths/LearningPathMenu.js +0 -103
- package/es/LearningPaths/LearningPathMenuAside.js +0 -62
- package/es/LearningPaths/LearningPathMenuContent.js +0 -109
- package/es/LearningPaths/LearningPathMenuIntro.js +0 -72
- package/es/LearningPaths/LearningPathMenuModalWrapper.js +0 -63
- package/es/LearningPaths/LearningPathMobileHeader.js +0 -35
- package/es/LearningPaths/LearningPathMobileStepInfo.js +0 -34
- package/es/LearningPaths/LearningPathSticky.js +0 -74
- package/es/LearningPaths/LearningPathWrapper.js +0 -27
- package/es/LearningPaths/index.js +0 -18
- package/es/MyNdla/Resource/FolderInput.js +0 -94
- package/es/NDLAFilm/AllMoviesAlphabetically.js +0 -127
- package/es/NDLAFilm/FilmContentCard.js +0 -93
- package/es/NDLAFilm/FilmContentCardTags.js +0 -44
- package/es/NDLAFilm/FilmMovieList.js +0 -52
- package/es/NDLAFilm/FilmMovieSearch.js +0 -106
- package/es/NDLAFilm/FilmSlideshow.js +0 -138
- package/es/NDLAFilm/MovieGrid.js +0 -54
- package/es/NDLAFilm/VisualElement.js +0 -48
- package/es/NDLAFilm/filmStyles.js +0 -31
- package/es/NDLAFilm/index.js +0 -14
- package/es/NDLAFilm/isLetter.js +0 -13
- package/es/NDLAFilm/types.js +0 -1
- package/es/Navigation/NavigationBox.js +0 -187
- package/es/Navigation/index.js +0 -10
- package/es/NoContentBox/NoContentBox.js +0 -31
- package/es/NoContentBox/index.js +0 -10
- package/es/Programme/Programme.js +0 -104
- package/es/Programme/ProgrammeSubjects.js +0 -60
- package/es/Programme/index.js +0 -12
- package/es/ResourceGroup/ResourceGroup.js +0 -46
- package/es/ResourceGroup/ResourceItem.js +0 -196
- package/es/ResourceGroup/ResourceList.js +0 -57
- package/es/ResourceGroup/index.js +0 -10
- package/es/ResourcesWrapper/ResourcesTopicTitle.js +0 -160
- package/es/ResourcesWrapper/ResourcesWrapper.js +0 -27
- package/es/ResourcesWrapper/index.js +0 -11
- package/es/SearchTypeResult/ActiveFilterContent.js +0 -53
- package/es/SearchTypeResult/ActiveFilters.js +0 -124
- package/es/SearchTypeResult/PopupFilter.js +0 -133
- package/es/SearchTypeResult/ResultNavigation.js +0 -75
- package/es/SearchTypeResult/SearchFieldHeader.js +0 -103
- package/es/SearchTypeResult/SearchFilterContent.js +0 -59
- package/es/SearchTypeResult/SearchHeader.js +0 -160
- package/es/SearchTypeResult/SearchItem.js +0 -97
- package/es/SearchTypeResult/SearchItemList.js +0 -142
- package/es/SearchTypeResult/SearchItems.js +0 -60
- package/es/SearchTypeResult/SearchSubjectItem.js +0 -62
- package/es/SearchTypeResult/SearchSubjectResult.js +0 -34
- package/es/SearchTypeResult/SearchTypeHeader.js +0 -118
- package/es/SearchTypeResult/SearchTypeResult.js +0 -55
- package/es/SearchTypeResult/SearchViewType.js +0 -90
- package/es/SearchTypeResult/components/ItemContexts.js +0 -122
- package/es/SearchTypeResult/components/ItemResourceHeader.js +0 -96
- package/es/SearchTypeResult/components/ItemTopicHeader.js +0 -66
- package/es/SearchTypeResult/components/SubjectFilters.js +0 -130
- package/es/SearchTypeResult/index.js +0 -14
- package/es/Subject/SubjectBanner.js +0 -30
- package/es/Subject/index.js +0 -9
- package/es/ToolboxPage/ToolboxInfo.js +0 -43
- package/es/ToolboxPage/index.js +0 -10
- package/es/Topic/Loader.js +0 -107
- package/es/Topic/Topic.js +0 -221
- package/es/Topic/index.js +0 -10
- package/es/locale/LocaleProvider.js +0 -38
- package/lib/Article/ArticleAccessMessage.d.ts +0 -12
- package/lib/Article/ArticleAccessMessage.js +0 -50
- package/lib/Aside/Aside.d.ts +0 -15
- package/lib/Aside/Aside.js +0 -80
- package/lib/Aside/index.d.ts +0 -9
- package/lib/Aside/index.js +0 -16
- package/lib/BannerCard/BannerCard.d.ts +0 -29
- package/lib/BannerCard/BannerCard.js +0 -92
- package/lib/BannerCard/index.d.ts +0 -9
- package/lib/BannerCard/index.js +0 -13
- package/lib/Breadcrumb/HeaderBreadcrumb.d.ts +0 -14
- package/lib/Breadcrumb/HeaderBreadcrumb.js +0 -64
- package/lib/CompetenceGoalTab/CompetenceGoalItem.d.ts +0 -10
- package/lib/CompetenceGoalTab/CompetenceGoalItem.js +0 -49
- package/lib/CompetenceGoalTab/CompetenceGoalTab.d.ts +0 -14
- package/lib/CompetenceGoalTab/CompetenceGoalTab.js +0 -82
- package/lib/CompetenceGoalTab/CompetenceItem.d.ts +0 -30
- package/lib/CompetenceGoalTab/CompetenceItem.js +0 -113
- package/lib/CompetenceGoalTab/CoreElementItem.d.ts +0 -10
- package/lib/CompetenceGoalTab/CoreElementItem.js +0 -51
- package/lib/CompetenceGoalTab/SearchButton.d.ts +0 -14
- package/lib/CompetenceGoalTab/SearchButton.js +0 -50
- package/lib/CompetenceGoalTab/index.d.ts +0 -9
- package/lib/CompetenceGoalTab/index.js +0 -16
- package/lib/CompetenceGoalTab/styles.d.ts +0 -28
- package/lib/CompetenceGoalTab/styles.js +0 -62
- package/lib/Filter/FilterButtons.d.ts +0 -16
- package/lib/Filter/FilterButtons.js +0 -192
- package/lib/Filter/FilterCarousel.d.ts +0 -13
- package/lib/Filter/FilterCarousel.js +0 -171
- package/lib/Filter/ToggleItem.d.ts +0 -21
- package/lib/Filter/ToggleItem.js +0 -75
- package/lib/Filter/index.d.ts +0 -9
- package/lib/Filter/index.js +0 -20
- package/lib/Frontpage/FrontpageAllSubjects.d.ts +0 -27
- package/lib/Frontpage/FrontpageAllSubjects.js +0 -259
- package/lib/LearningPaths/LearningPathContent.d.ts +0 -13
- package/lib/LearningPaths/LearningPathContent.js +0 -33
- package/lib/LearningPaths/LearningPathInformation.d.ts +0 -18
- package/lib/LearningPaths/LearningPathInformation.js +0 -80
- package/lib/LearningPaths/LearningPathLastStepNavigation.d.ts +0 -22
- package/lib/LearningPaths/LearningPathLastStepNavigation.js +0 -72
- package/lib/LearningPaths/LearningPathMenu.d.ts +0 -38
- package/lib/LearningPaths/LearningPathMenu.js +0 -110
- package/lib/LearningPaths/LearningPathMenuAside.d.ts +0 -24
- package/lib/LearningPaths/LearningPathMenuAside.js +0 -69
- package/lib/LearningPaths/LearningPathMenuContent.d.ts +0 -22
- package/lib/LearningPaths/LearningPathMenuContent.js +0 -116
- package/lib/LearningPaths/LearningPathMenuIntro.d.ts +0 -17
- package/lib/LearningPaths/LearningPathMenuIntro.js +0 -77
- package/lib/LearningPaths/LearningPathMenuModalWrapper.d.ts +0 -14
- package/lib/LearningPaths/LearningPathMenuModalWrapper.js +0 -70
- package/lib/LearningPaths/LearningPathMobileHeader.d.ts +0 -9
- package/lib/LearningPaths/LearningPathMobileHeader.js +0 -42
- package/lib/LearningPaths/LearningPathMobileStepInfo.d.ts +0 -13
- package/lib/LearningPaths/LearningPathMobileStepInfo.js +0 -41
- package/lib/LearningPaths/LearningPathSticky.d.ts +0 -22
- package/lib/LearningPaths/LearningPathSticky.js +0 -84
- package/lib/LearningPaths/LearningPathWrapper.d.ts +0 -14
- package/lib/LearningPaths/LearningPathWrapper.js +0 -35
- package/lib/LearningPaths/index.d.ts +0 -17
- package/lib/LearningPaths/index.js +0 -74
- package/lib/MyNdla/Resource/FolderInput.d.ts +0 -19
- package/lib/MyNdla/Resource/FolderInput.js +0 -101
- package/lib/NDLAFilm/AllMoviesAlphabetically.d.ts +0 -13
- package/lib/NDLAFilm/AllMoviesAlphabetically.js +0 -134
- package/lib/NDLAFilm/FilmContentCard.d.ts +0 -19
- package/lib/NDLAFilm/FilmContentCard.js +0 -98
- package/lib/NDLAFilm/FilmContentCardTags.d.ts +0 -15
- package/lib/NDLAFilm/FilmContentCardTags.js +0 -51
- package/lib/NDLAFilm/FilmMovieList.d.ts +0 -17
- package/lib/NDLAFilm/FilmMovieList.js +0 -59
- package/lib/NDLAFilm/FilmMovieSearch.d.ts +0 -21
- package/lib/NDLAFilm/FilmMovieSearch.js +0 -113
- package/lib/NDLAFilm/FilmSlideshow.d.ts +0 -13
- package/lib/NDLAFilm/FilmSlideshow.js +0 -143
- package/lib/NDLAFilm/MovieGrid.d.ts +0 -17
- package/lib/NDLAFilm/MovieGrid.js +0 -61
- package/lib/NDLAFilm/VisualElement.d.ts +0 -16
- package/lib/NDLAFilm/VisualElement.js +0 -53
- package/lib/NDLAFilm/filmStyles.d.ts +0 -17
- package/lib/NDLAFilm/filmStyles.js +0 -39
- package/lib/NDLAFilm/index.d.ts +0 -13
- package/lib/NDLAFilm/index.js +0 -41
- package/lib/NDLAFilm/isLetter.d.ts +0 -8
- package/lib/NDLAFilm/isLetter.js +0 -20
- package/lib/NDLAFilm/types.d.ts +0 -22
- package/lib/NDLAFilm/types.js +0 -5
- package/lib/Navigation/NavigationBox.d.ts +0 -30
- package/lib/Navigation/NavigationBox.js +0 -193
- package/lib/Navigation/index.js +0 -13
- package/lib/NoContentBox/NoContentBox.d.ts +0 -14
- package/lib/NoContentBox/NoContentBox.js +0 -38
- package/lib/NoContentBox/index.d.ts +0 -9
- package/lib/NoContentBox/index.js +0 -16
- package/lib/Programme/Programme.d.ts +0 -16
- package/lib/Programme/Programme.js +0 -112
- package/lib/Programme/ProgrammeSubjects.d.ts +0 -26
- package/lib/Programme/ProgrammeSubjects.js +0 -67
- package/lib/Programme/index.d.ts +0 -11
- package/lib/Programme/index.js +0 -23
- package/lib/ResourceGroup/ResourceGroup.d.ts +0 -18
- package/lib/ResourceGroup/ResourceGroup.js +0 -53
- package/lib/ResourceGroup/ResourceItem.d.ts +0 -22
- package/lib/ResourceGroup/ResourceItem.js +0 -203
- package/lib/ResourceGroup/ResourceList.d.ts +0 -19
- package/lib/ResourceGroup/ResourceList.js +0 -64
- package/lib/ResourceGroup/index.d.ts +0 -9
- package/lib/ResourceGroup/index.js +0 -16
- package/lib/ResourcesWrapper/ResourcesTopicTitle.d.ts +0 -20
- package/lib/ResourcesWrapper/ResourcesTopicTitle.js +0 -165
- package/lib/ResourcesWrapper/ResourcesWrapper.d.ts +0 -16
- package/lib/ResourcesWrapper/ResourcesWrapper.js +0 -34
- package/lib/ResourcesWrapper/index.d.ts +0 -10
- package/lib/ResourcesWrapper/index.js +0 -23
- package/lib/SearchTypeResult/ActiveFilterContent.d.ts +0 -23
- package/lib/SearchTypeResult/ActiveFilterContent.js +0 -58
- package/lib/SearchTypeResult/ActiveFilters.d.ts +0 -18
- package/lib/SearchTypeResult/ActiveFilters.js +0 -131
- package/lib/SearchTypeResult/PopupFilter.d.ts +0 -26
- package/lib/SearchTypeResult/PopupFilter.js +0 -138
- package/lib/SearchTypeResult/ResultNavigation.d.ts +0 -18
- package/lib/SearchTypeResult/ResultNavigation.js +0 -82
- package/lib/SearchTypeResult/SearchFieldHeader.d.ts +0 -17
- package/lib/SearchTypeResult/SearchFieldHeader.js +0 -109
- package/lib/SearchTypeResult/SearchFilterContent.d.ts +0 -16
- package/lib/SearchTypeResult/SearchFilterContent.js +0 -64
- package/lib/SearchTypeResult/SearchHeader.d.ts +0 -26
- package/lib/SearchTypeResult/SearchHeader.js +0 -166
- package/lib/SearchTypeResult/SearchItem.d.ts +0 -30
- package/lib/SearchTypeResult/SearchItem.js +0 -104
- package/lib/SearchTypeResult/SearchItemList.d.ts +0 -10
- package/lib/SearchTypeResult/SearchItemList.js +0 -147
- package/lib/SearchTypeResult/SearchItems.d.ts +0 -17
- package/lib/SearchTypeResult/SearchItems.js +0 -65
- package/lib/SearchTypeResult/SearchSubjectItem.d.ts +0 -20
- package/lib/SearchTypeResult/SearchSubjectItem.js +0 -67
- package/lib/SearchTypeResult/SearchSubjectResult.d.ts +0 -13
- package/lib/SearchTypeResult/SearchSubjectResult.js +0 -41
- package/lib/SearchTypeResult/SearchTypeHeader.d.ts +0 -22
- package/lib/SearchTypeResult/SearchTypeHeader.js +0 -123
- package/lib/SearchTypeResult/SearchTypeResult.d.ts +0 -26
- package/lib/SearchTypeResult/SearchTypeResult.js +0 -62
- package/lib/SearchTypeResult/SearchViewType.d.ts +0 -13
- package/lib/SearchTypeResult/SearchViewType.js +0 -95
- package/lib/SearchTypeResult/components/ItemContexts.d.ts +0 -19
- package/lib/SearchTypeResult/components/ItemContexts.js +0 -127
- package/lib/SearchTypeResult/components/ItemResourceHeader.d.ts +0 -16
- package/lib/SearchTypeResult/components/ItemResourceHeader.js +0 -101
- package/lib/SearchTypeResult/components/ItemTopicHeader.d.ts +0 -17
- package/lib/SearchTypeResult/components/ItemTopicHeader.js +0 -71
- package/lib/SearchTypeResult/components/SubjectFilters.d.ts +0 -32
- package/lib/SearchTypeResult/components/SubjectFilters.js +0 -135
- package/lib/SearchTypeResult/index.d.ts +0 -14
- package/lib/SearchTypeResult/index.js +0 -41
- package/lib/Subject/SubjectBanner.d.ts +0 -14
- package/lib/Subject/SubjectBanner.js +0 -37
- package/lib/Subject/index.d.ts +0 -8
- package/lib/Subject/index.js +0 -13
- package/lib/ToolboxPage/ToolboxInfo.d.ts +0 -18
- package/lib/ToolboxPage/ToolboxInfo.js +0 -49
- package/lib/ToolboxPage/index.d.ts +0 -9
- package/lib/ToolboxPage/index.js +0 -13
- package/lib/Topic/Loader.d.ts +0 -9
- package/lib/Topic/Loader.js +0 -114
- package/lib/Topic/Topic.d.ts +0 -34
- package/lib/Topic/Topic.js +0 -228
- package/lib/Topic/index.d.ts +0 -10
- package/lib/Topic/index.js +0 -16
- package/lib/locale/LocaleProvider.d.ts +0 -15
- package/lib/locale/LocaleProvider.js +0 -44
- package/src/Article/ArticleAccessMessage.tsx +0 -44
- package/src/Aside/Aside.tsx +0 -113
- package/src/Aside/index.ts +0 -11
- package/src/BannerCard/BannerCard.tsx +0 -99
- package/src/BannerCard/index.ts +0 -11
- package/src/Breadcrumb/HeaderBreadcrumb.tsx +0 -56
- package/src/CompetenceGoalTab/CompetenceGoalItem.tsx +0 -39
- package/src/CompetenceGoalTab/CompetenceGoalTab.tsx +0 -85
- package/src/CompetenceGoalTab/CompetenceItem.tsx +0 -130
- package/src/CompetenceGoalTab/CoreElementItem.tsx +0 -39
- package/src/CompetenceGoalTab/SearchButton.tsx +0 -50
- package/src/CompetenceGoalTab/index.ts +0 -10
- package/src/CompetenceGoalTab/styles.ts +0 -37
- package/src/Figure/component.figure.scss +0 -60
- package/src/Filter/FilterButtons.tsx +0 -199
- package/src/Filter/FilterCarousel.tsx +0 -172
- package/src/Filter/ToggleItem.tsx +0 -180
- package/src/Filter/index.ts +0 -10
- package/src/Frontpage/FrontpageAllSubjects.tsx +0 -231
- package/src/LearningPaths/LearningPathContent.tsx +0 -33
- package/src/LearningPaths/LearningPathInformation.tsx +0 -82
- package/src/LearningPaths/LearningPathLastStepNavigation.tsx +0 -89
- package/src/LearningPaths/LearningPathMenu.stories.tsx +0 -65
- package/src/LearningPaths/LearningPathMenu.tsx +0 -166
- package/src/LearningPaths/LearningPathMenuAside.tsx +0 -100
- package/src/LearningPaths/LearningPathMenuContent.tsx +0 -277
- package/src/LearningPaths/LearningPathMenuIntro.tsx +0 -126
- package/src/LearningPaths/LearningPathMenuModalWrapper.tsx +0 -71
- package/src/LearningPaths/LearningPathMobileHeader.tsx +0 -37
- package/src/LearningPaths/LearningPathMobileStepInfo.tsx +0 -38
- package/src/LearningPaths/LearningPathSticky.tsx +0 -122
- package/src/LearningPaths/LearningPathWrapper.tsx +0 -36
- package/src/LearningPaths/index.ts +0 -19
- package/src/MyNdla/Resource/FolderInput.stories.tsx +0 -27
- package/src/MyNdla/Resource/FolderInput.tsx +0 -89
- package/src/NDLAFilm/AllMoviesAlphabetically.tsx +0 -160
- package/src/NDLAFilm/FilmContentCard.tsx +0 -138
- package/src/NDLAFilm/FilmContentCardTags.tsx +0 -57
- package/src/NDLAFilm/FilmMovieList.tsx +0 -54
- package/src/NDLAFilm/FilmMovieSearch.tsx +0 -135
- package/src/NDLAFilm/FilmSlideshow.tsx +0 -177
- package/src/NDLAFilm/MovieGrid.tsx +0 -86
- package/src/NDLAFilm/VisualElement.tsx +0 -38
- package/src/NDLAFilm/__tests__/isLetter-test.ts +0 -20
- package/src/NDLAFilm/filmStyles.ts +0 -49
- package/src/NDLAFilm/index.ts +0 -15
- package/src/NDLAFilm/isLetter.ts +0 -13
- package/src/NDLAFilm/types.ts +0 -24
- package/src/Navigation/NavigationBox.tsx +0 -252
- package/src/Navigation/index.ts +0 -11
- package/src/NoContentBox/NoContentBox.tsx +0 -32
- package/src/NoContentBox/index.ts +0 -11
- package/src/Programme/Programme.tsx +0 -101
- package/src/Programme/ProgrammeSubjects.tsx +0 -83
- package/src/Programme/index.ts +0 -13
- package/src/ResourceGroup/ResourceGroup.tsx +0 -65
- package/src/ResourceGroup/ResourceItem.stories.tsx +0 -101
- package/src/ResourceGroup/ResourceItem.tsx +0 -318
- package/src/ResourceGroup/ResourceList.tsx +0 -80
- package/src/ResourceGroup/index.ts +0 -11
- package/src/ResourcesWrapper/ResourcesTopicTitle.tsx +0 -223
- package/src/ResourcesWrapper/ResourcesWrapper.tsx +0 -32
- package/src/ResourcesWrapper/index.ts +0 -13
- package/src/SearchTypeResult/ActiveFilterContent.tsx +0 -55
- package/src/SearchTypeResult/ActiveFilters.tsx +0 -163
- package/src/SearchTypeResult/PopupFilter.tsx +0 -149
- package/src/SearchTypeResult/ResultNavigation.tsx +0 -105
- package/src/SearchTypeResult/SearchFieldHeader.tsx +0 -129
- package/src/SearchTypeResult/SearchFilterContent.tsx +0 -61
- package/src/SearchTypeResult/SearchHeader.tsx +0 -180
- package/src/SearchTypeResult/SearchItem.tsx +0 -144
- package/src/SearchTypeResult/SearchItemList.tsx +0 -161
- package/src/SearchTypeResult/SearchItems.tsx +0 -72
- package/src/SearchTypeResult/SearchSubjectItem.tsx +0 -74
- package/src/SearchTypeResult/SearchSubjectResult.tsx +0 -58
- package/src/SearchTypeResult/SearchTypeHeader.tsx +0 -148
- package/src/SearchTypeResult/SearchTypeResult.tsx +0 -89
- package/src/SearchTypeResult/SearchViewType.tsx +0 -111
- package/src/SearchTypeResult/components/ItemContexts.tsx +0 -131
- package/src/SearchTypeResult/components/ItemResourceHeader.tsx +0 -130
- package/src/SearchTypeResult/components/ItemTopicHeader.tsx +0 -88
- package/src/SearchTypeResult/components/SubjectFilters.tsx +0 -149
- package/src/SearchTypeResult/index.ts +0 -17
- package/src/Subject/SubjectBanner.tsx +0 -39
- package/src/Subject/index.ts +0 -9
- package/src/ToolboxPage/ToolboxInfo.tsx +0 -42
- package/src/ToolboxPage/index.ts +0 -11
- package/src/Topic/Loader.tsx +0 -29
- package/src/Topic/Topic.tsx +0 -348
- package/src/Topic/index.ts +0 -13
- package/src/locale/LocaleProvider.tsx +0 -31
|
@@ -928,6 +928,10 @@ declare const messages: {
|
|
|
928
928
|
private: string;
|
|
929
929
|
shared: string;
|
|
930
930
|
};
|
|
931
|
+
warning: {
|
|
932
|
+
authenticated: string;
|
|
933
|
+
unauthenticated: string;
|
|
934
|
+
};
|
|
931
935
|
button: {
|
|
932
936
|
share: string;
|
|
933
937
|
shareShort: string;
|
|
@@ -936,6 +940,12 @@ declare const messages: {
|
|
|
936
940
|
goTo: string;
|
|
937
941
|
unShare: string;
|
|
938
942
|
shareLink: string;
|
|
943
|
+
saveLink: string;
|
|
944
|
+
};
|
|
945
|
+
save: {
|
|
946
|
+
warning: string;
|
|
947
|
+
header: string;
|
|
948
|
+
save: string;
|
|
939
949
|
};
|
|
940
950
|
previewInformation: string;
|
|
941
951
|
};
|
|
@@ -945,6 +945,10 @@ const messages = {
|
|
|
945
945
|
private: "Når du deler ei mappe, lager du ei lenke som er åpen for alle som har lenka. Du kan endre innholdet eller avslutte delinga når du ønsker det. ",
|
|
946
946
|
shared: "Nå kan du dele denne lenka med elever eller andre lærere. Hvis du gjør endringer i mappa, blir de synlige for alle du har delt lenka med."
|
|
947
947
|
},
|
|
948
|
+
warning: {
|
|
949
|
+
authenticated: "Denne mappen er delt av {{ name }}, og inneholder fagstoff, oppgaver og lenker til tekster fra både NDLA og andre nettsteder.",
|
|
950
|
+
unauthenticated: "Denne mappen er delt av {{ name }}, og inneholder fagstoff, oppgaver og lenker til tekster fra både NDLA og andre nettsteder. Logg inn på Min NDLA for å kopiere mappen eller lagre lenken."
|
|
951
|
+
},
|
|
948
952
|
button: {
|
|
949
953
|
share: "Del mappe",
|
|
950
954
|
shareShort: "Del",
|
|
@@ -952,7 +956,13 @@ const messages = {
|
|
|
952
956
|
previewShort: "Forhåndsvis",
|
|
953
957
|
goTo: "Gå til delt mappe",
|
|
954
958
|
unShare: "Avslutt deling",
|
|
955
|
-
shareLink: "Kopier lenke"
|
|
959
|
+
shareLink: "Kopier lenke",
|
|
960
|
+
saveLink: "Lagre lenken"
|
|
961
|
+
},
|
|
962
|
+
save: {
|
|
963
|
+
warning: "Dette lager en lenke til mappen i Mine mapper. Du kan enkelt finne den igjen ved å gå til Mine mapper i menyen i Min NDLA.",
|
|
964
|
+
header: "Lagre lenke til denne mappen",
|
|
965
|
+
save: "Lagre lenke til delt mappe"
|
|
956
966
|
},
|
|
957
967
|
previewInformation: "Forhåndsvisning av delt mappe. Mappa blir ikke tilgjengelig for andre før du setter den som delt."
|
|
958
968
|
}
|
|
@@ -928,6 +928,10 @@ declare const messages: {
|
|
|
928
928
|
private: string;
|
|
929
929
|
shared: string;
|
|
930
930
|
};
|
|
931
|
+
warning: {
|
|
932
|
+
authenticated: string;
|
|
933
|
+
unauthenticated: string;
|
|
934
|
+
};
|
|
931
935
|
button: {
|
|
932
936
|
share: string;
|
|
933
937
|
shareShort: string;
|
|
@@ -936,6 +940,12 @@ declare const messages: {
|
|
|
936
940
|
goTo: string;
|
|
937
941
|
unShare: string;
|
|
938
942
|
shareLink: string;
|
|
943
|
+
saveLink: string;
|
|
944
|
+
};
|
|
945
|
+
save: {
|
|
946
|
+
warning: string;
|
|
947
|
+
header: string;
|
|
948
|
+
save: string;
|
|
939
949
|
};
|
|
940
950
|
previewInformation: string;
|
|
941
951
|
};
|
|
@@ -283,7 +283,7 @@ const messages = {
|
|
|
283
283
|
resources: "Dette er ikke et komplett læremiddel produsert av NDLA, men ei ressurssamling som vi håper kan være nyttig for deg.",
|
|
284
284
|
subjectOutdated: "Dette faget følger en utgått læreplan.",
|
|
285
285
|
subjectFuture: "Dette faget følger en kommende læreplan.",
|
|
286
|
-
subjectBeta: "Dette faget er
|
|
286
|
+
subjectBeta: "Dette faget er under utvikling. Vi fyller på med ressurser fortløpende.",
|
|
287
287
|
newVersion: "Denne læringsressursen er ikke oppdatert etter gjeldende læreplan. Du finner en oppdatert versjon her: ",
|
|
288
288
|
frontPageBeta: "Kommende fag er tilpassa ny læreplan som gjelder fra neste skoleår. Vi håper likevel at læringsressursene i kommende fag kan være nyttige allerede nå.",
|
|
289
289
|
frontPageExpired: "Utgåtte fag undervises det ikke i lenger, men det kan fortsatt være mulig å ta eksamen i faga som privatist."
|
|
@@ -945,6 +945,10 @@ const messages = {
|
|
|
945
945
|
private: "Når du deler ei mappe, lager du ei lenke som er åpen for alle som har lenka. Du kan endre innholdet eller avslutte delinga når du ønsker det. ",
|
|
946
946
|
shared: "Nå kan du dele denne lenka med elever eller andre lærere. Hvis du gjør endringer i mappa, blir de synlige for alle du har delt lenka med."
|
|
947
947
|
},
|
|
948
|
+
warning: {
|
|
949
|
+
authenticated: "Denne mappen er delt av {{ name }}, og inneholder fagstoff, oppgaver og lenker til tekster fra både NDLA og andre nettsteder.",
|
|
950
|
+
unauthenticated: "Denne mappen er delt av {{ name }}, og inneholder fagstoff, oppgaver og lenker til tekster fra både NDLA og andre nettsteder. Logg inn på Min NDLA for å kopiere mappen eller lagre lenken."
|
|
951
|
+
},
|
|
948
952
|
button: {
|
|
949
953
|
share: "Del mappe",
|
|
950
954
|
shareShort: "Del",
|
|
@@ -952,7 +956,13 @@ const messages = {
|
|
|
952
956
|
previewShort: "Forhåndsvis",
|
|
953
957
|
goTo: "Gå til delt mappe",
|
|
954
958
|
unShare: "Avslutt deling",
|
|
955
|
-
shareLink: "Kopier lenke"
|
|
959
|
+
shareLink: "Kopier lenke",
|
|
960
|
+
saveLink: "Lagre lenken"
|
|
961
|
+
},
|
|
962
|
+
save: {
|
|
963
|
+
warning: "Dette lager en lenke til mappen i Mine mapper. Du kan enkelt finne den igjen ved å gå til Mine mapper i menyen i Min NDLA.",
|
|
964
|
+
header: "Lagre lenke til denne mappen",
|
|
965
|
+
save: "Lagre lenke til delt mappe"
|
|
956
966
|
},
|
|
957
967
|
previewInformation: "Forhåndsvisning av delt mappe. Mappa blir ikke tilgjengelig for andre før du setter den som delt."
|
|
958
968
|
}
|
package/lib/types.d.ts
CHANGED
|
@@ -6,15 +6,6 @@
|
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
8
|
import { ReactNode } from "react";
|
|
9
|
-
declare const locales: readonly ["nb", "nn", "en", "se", "sma"];
|
|
10
|
-
export type Locale = (typeof locales)[number];
|
|
11
|
-
export type Link = {
|
|
12
|
-
text: string;
|
|
13
|
-
to: string;
|
|
14
|
-
};
|
|
15
|
-
export type Messages = {
|
|
16
|
-
closeSearchLabel: string;
|
|
17
|
-
};
|
|
18
9
|
type ResourceTypes = {
|
|
19
10
|
name: string;
|
|
20
11
|
};
|
|
@@ -63,51 +54,9 @@ export interface Article {
|
|
|
63
54
|
copyright?: Copyright;
|
|
64
55
|
published: string;
|
|
65
56
|
}
|
|
66
|
-
export type SearchResult = {
|
|
67
|
-
title: string;
|
|
68
|
-
contentType: string;
|
|
69
|
-
resources: Array<Resource>;
|
|
70
|
-
};
|
|
71
57
|
export interface ContentTypeResultType {
|
|
72
58
|
title?: string;
|
|
73
59
|
contentType?: string;
|
|
74
60
|
resources: Array<Resource>;
|
|
75
61
|
}
|
|
76
|
-
export type subjectProp = {
|
|
77
|
-
text: string;
|
|
78
|
-
url: string;
|
|
79
|
-
yearInfo?: string;
|
|
80
|
-
beta?: boolean;
|
|
81
|
-
};
|
|
82
|
-
export type category = {
|
|
83
|
-
name: string;
|
|
84
|
-
subjects: Array<subjectProp>;
|
|
85
|
-
};
|
|
86
|
-
export type elementRectType = {
|
|
87
|
-
fromX: number;
|
|
88
|
-
fromY: number;
|
|
89
|
-
fromScale: number;
|
|
90
|
-
};
|
|
91
|
-
interface GrepCode {
|
|
92
|
-
id: string;
|
|
93
|
-
title: string;
|
|
94
|
-
}
|
|
95
|
-
export interface CompetenceGoalsItemType extends GrepCode {
|
|
96
|
-
goals: {
|
|
97
|
-
id: string;
|
|
98
|
-
text: string;
|
|
99
|
-
url?: string;
|
|
100
|
-
}[];
|
|
101
|
-
selected?: boolean;
|
|
102
|
-
isOembed?: boolean;
|
|
103
|
-
}
|
|
104
|
-
export interface CoreElementsItemType extends GrepCode {
|
|
105
|
-
text?: string;
|
|
106
|
-
url?: string;
|
|
107
|
-
isOembed?: boolean;
|
|
108
|
-
}
|
|
109
|
-
export type NotionMedia = {
|
|
110
|
-
type: "video" | "other";
|
|
111
|
-
element: ReactNode;
|
|
112
|
-
};
|
|
113
62
|
export {};
|
package/lib/types.js
CHANGED
|
@@ -2,13 +2,4 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
|
-
});
|
|
6
|
-
/**
|
|
7
|
-
* Copyright (c) 2019-present, NDLA.
|
|
8
|
-
*
|
|
9
|
-
* This source code is licensed under the GPLv3 license found in the
|
|
10
|
-
* LICENSE file in the root directory of this source tree.
|
|
11
|
-
*
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
const locales = ["nb", "nn", "en", "se", "sma"];
|
|
5
|
+
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ndla/ui",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "52.0.0",
|
|
4
4
|
"description": "UI component library for NDLA.",
|
|
5
5
|
"license": "GPL-3.0",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -31,24 +31,19 @@
|
|
|
31
31
|
"types"
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@ndla/accordion": "^
|
|
35
|
-
"@ndla/button": "^
|
|
36
|
-
"@ndla/
|
|
37
|
-
"@ndla/
|
|
38
|
-
"@ndla/
|
|
39
|
-
"@ndla/
|
|
40
|
-
"@ndla/
|
|
41
|
-
"@ndla/hooks": "^2.1.6",
|
|
42
|
-
"@ndla/icons": "^6.1.3",
|
|
34
|
+
"@ndla/accordion": "^4.0.0",
|
|
35
|
+
"@ndla/button": "^13.0.0",
|
|
36
|
+
"@ndla/core": "^5.0.0",
|
|
37
|
+
"@ndla/dropdown-menu": "^1.0.37",
|
|
38
|
+
"@ndla/forms": "^8.0.0",
|
|
39
|
+
"@ndla/hooks": "^2.1.7",
|
|
40
|
+
"@ndla/icons": "^6.1.4",
|
|
43
41
|
"@ndla/licenses": "^7.2.6",
|
|
44
|
-
"@ndla/modal": "^
|
|
45
|
-
"@ndla/notion": "^
|
|
46
|
-
"@ndla/safelink": "^5.1.
|
|
47
|
-
"@ndla/
|
|
48
|
-
"@ndla/
|
|
49
|
-
"@ndla/tabs": "^4.0.5",
|
|
50
|
-
"@ndla/tooltip": "^7.0.5",
|
|
51
|
-
"@ndla/typography": "^0.4.19",
|
|
42
|
+
"@ndla/modal": "^6.0.0",
|
|
43
|
+
"@ndla/notion": "^7.0.0",
|
|
44
|
+
"@ndla/safelink": "^5.1.3",
|
|
45
|
+
"@ndla/tooltip": "^8.0.0",
|
|
46
|
+
"@ndla/typography": "^0.4.20",
|
|
52
47
|
"@ndla/util": "^4.0.4",
|
|
53
48
|
"@radix-ui/react-popover": "^1.0.7",
|
|
54
49
|
"@radix-ui/react-slider": "^1.1.2",
|
|
@@ -64,10 +59,10 @@
|
|
|
64
59
|
"peerDependencies": {
|
|
65
60
|
"@emotion/react": "^11.10.4",
|
|
66
61
|
"@emotion/styled": "^11.10.4",
|
|
67
|
-
"i18next": "^23.5
|
|
62
|
+
"i18next": "^23.11.5",
|
|
68
63
|
"react": ">= 16.8.0",
|
|
69
64
|
"react-dom": ">= 16.8.0",
|
|
70
|
-
"react-i18next": "^
|
|
65
|
+
"react-i18next": "^14.1.1",
|
|
71
66
|
"react-router-dom": "> 6.0.0"
|
|
72
67
|
},
|
|
73
68
|
"devDependencies": {
|
|
@@ -82,5 +77,5 @@
|
|
|
82
77
|
"publishConfig": {
|
|
83
78
|
"access": "public"
|
|
84
79
|
},
|
|
85
|
-
"gitHead": "
|
|
80
|
+
"gitHead": "dab99b8c9bf77c2ee7690d348b2ae811af81bd3d"
|
|
86
81
|
}
|
package/src/Article/Article.tsx
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import { ReactNode, useEffect, useRef, useState, forwardRef } from "react";
|
|
9
|
+
import { ReactNode, useEffect, useRef, useState, forwardRef, ComponentPropsWithRef } from "react";
|
|
10
10
|
import BEMHelper from "react-bem-helper";
|
|
11
11
|
import styled from "@emotion/styled";
|
|
12
12
|
|
|
@@ -14,7 +14,6 @@ import { spacing, mq, breakpoints } from "@ndla/core";
|
|
|
14
14
|
import { useIntersectionObserver } from "@ndla/hooks";
|
|
15
15
|
import { Heading, Text } from "@ndla/typography";
|
|
16
16
|
import { resizeObserver } from "@ndla/util";
|
|
17
|
-
import ArticleAccessMessage from "./ArticleAccessMessage";
|
|
18
17
|
import ArticleByline from "./ArticleByline";
|
|
19
18
|
import ArticleHeaderWrapper from "./ArticleHeaderWrapper";
|
|
20
19
|
import ArticleNotions from "./ArticleNotions";
|
|
@@ -27,16 +26,17 @@ const classes = new BEMHelper({
|
|
|
27
26
|
prefix: "c-",
|
|
28
27
|
});
|
|
29
28
|
|
|
30
|
-
|
|
29
|
+
interface ArticleWrapperProps extends ComponentPropsWithRef<"article"> {
|
|
31
30
|
modifier?: string;
|
|
32
|
-
|
|
33
|
-
};
|
|
31
|
+
}
|
|
34
32
|
|
|
35
|
-
export const ArticleWrapper = forwardRef<HTMLElement, ArticleWrapperProps>(
|
|
36
|
-
|
|
37
|
-
{
|
|
38
|
-
|
|
39
|
-
|
|
33
|
+
export const ArticleWrapper = forwardRef<HTMLElement, ArticleWrapperProps>(
|
|
34
|
+
({ children, modifier, className, ...rest }, ref) => (
|
|
35
|
+
<article {...rest} {...classes(undefined, modifier, className)} ref={ref}>
|
|
36
|
+
{children}
|
|
37
|
+
</article>
|
|
38
|
+
),
|
|
39
|
+
);
|
|
40
40
|
|
|
41
41
|
type ArticleTitleProps = {
|
|
42
42
|
icon?: ReactNode;
|
|
@@ -115,7 +115,6 @@ type Props = {
|
|
|
115
115
|
competenceGoals?: ReactNode;
|
|
116
116
|
id: string;
|
|
117
117
|
notions?: ReactNode;
|
|
118
|
-
accessMessage?: string;
|
|
119
118
|
lang?: string;
|
|
120
119
|
};
|
|
121
120
|
|
|
@@ -142,7 +141,6 @@ export const Article = ({
|
|
|
142
141
|
competenceGoals,
|
|
143
142
|
id,
|
|
144
143
|
notions,
|
|
145
|
-
accessMessage,
|
|
146
144
|
heartButton,
|
|
147
145
|
contentTransformed,
|
|
148
146
|
lang,
|
|
@@ -156,12 +154,12 @@ export const Article = ({
|
|
|
156
154
|
});
|
|
157
155
|
const [articlePositionRight, setArticlePositionRight] = useState(0);
|
|
158
156
|
|
|
159
|
-
const showExplainNotions = entry
|
|
157
|
+
const showExplainNotions = !!entry?.isIntersecting;
|
|
160
158
|
|
|
161
159
|
useEffect(() => {
|
|
162
|
-
if (wrapperRef
|
|
160
|
+
if (wrapperRef?.current) {
|
|
163
161
|
const handler = () => {
|
|
164
|
-
if (wrapperRef
|
|
162
|
+
if (wrapperRef?.current) {
|
|
165
163
|
const offset =
|
|
166
164
|
wrapperRef.current.getBoundingClientRect().left + wrapperRef.current.getBoundingClientRect().width;
|
|
167
165
|
setArticlePositionRight(offset);
|
|
@@ -180,10 +178,8 @@ export const Article = ({
|
|
|
180
178
|
|
|
181
179
|
return (
|
|
182
180
|
<div ref={wrapperRef}>
|
|
183
|
-
<ArticleWrapper modifier={modifier} ref={articleRef}>
|
|
181
|
+
<ArticleWrapper modifier={modifier} ref={articleRef} data-ndla-article="">
|
|
184
182
|
<LayoutItem layout="center">
|
|
185
|
-
{accessMessage && <ArticleAccessMessage message={accessMessage} />}
|
|
186
|
-
|
|
187
183
|
{messages.messageBox && (
|
|
188
184
|
<MSGboxWrapper>
|
|
189
185
|
<MessageBox links={messageBoxLinks}>{messages.messageBox}</MessageBox>
|
|
@@ -6,9 +6,8 @@
|
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import { ReactNode
|
|
9
|
+
import { ReactNode } from "react";
|
|
10
10
|
import BEMHelper from "react-bem-helper";
|
|
11
|
-
import { isMobile } from "react-device-detect";
|
|
12
11
|
|
|
13
12
|
const classes = new BEMHelper({
|
|
14
13
|
name: "article",
|
|
@@ -21,16 +20,6 @@ type Props = {
|
|
|
21
20
|
};
|
|
22
21
|
|
|
23
22
|
const ArticleHeaderWrapper = ({ children, competenceGoals }: Props) => {
|
|
24
|
-
useEffect(() => {
|
|
25
|
-
if (isMobile) {
|
|
26
|
-
const heroContentList: NodeListOf<HTMLElement> = document.querySelectorAll(".c-article__header");
|
|
27
|
-
if (heroContentList.length === 1) {
|
|
28
|
-
heroContentList[0].scrollIntoView(true);
|
|
29
|
-
window.scrollBy(0, heroContentList[0].offsetTop - 120); // Adjust for header
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}, []);
|
|
33
|
-
|
|
34
23
|
return (
|
|
35
24
|
<div {...classes("header")}>
|
|
36
25
|
{children}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import { ReactNode } from "react";
|
|
10
10
|
import { useTranslation } from "react-i18next";
|
|
11
11
|
import styled from "@emotion/styled";
|
|
12
|
-
import { breakpoints, colors, fonts, mq, stackOrder } from "@ndla/core";
|
|
12
|
+
import { breakpoints, colors, fonts, misc, mq, spacing, stackOrder } from "@ndla/core";
|
|
13
13
|
import { Explanation, NotionFlip } from "@ndla/icons/common";
|
|
14
14
|
import { ModalHeader, ModalCloseButton, ModalBody, Modal, ModalTitle, ModalTrigger, ModalContent } from "@ndla/modal";
|
|
15
15
|
|
|
@@ -22,11 +22,11 @@ const ArticleNotionsContainer = styled.div`
|
|
|
22
22
|
`;
|
|
23
23
|
|
|
24
24
|
const NotionsTrigger = styled.div`
|
|
25
|
-
padding: 0
|
|
25
|
+
padding: 0 ${spacing.nsmall};
|
|
26
26
|
display: inline-flex;
|
|
27
27
|
align-items: center;
|
|
28
28
|
background-color: ${colors.brand.greyLighter};
|
|
29
|
-
border-radius:
|
|
29
|
+
border-radius: ${misc.borderRadius};
|
|
30
30
|
cursor: pointer;
|
|
31
31
|
|
|
32
32
|
${mq.range({ from: breakpoints.tablet })} {
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2024-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 { ComponentPropsWithoutRef, ReactNode } from "react";
|
|
10
|
+
import styled from "@emotion/styled";
|
|
11
|
+
|
|
12
|
+
interface Props extends ComponentPropsWithoutRef<"p"> {
|
|
13
|
+
children?: ReactNode;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
const StyledParagraph = styled.p`
|
|
17
|
+
&[data-align="center"] {
|
|
18
|
+
text-align: center;
|
|
19
|
+
}
|
|
20
|
+
`;
|
|
21
|
+
|
|
22
|
+
export const ArticleParagraph = (props: Props) => <StyledParagraph {...props} />;
|
|
@@ -91,13 +91,6 @@
|
|
|
91
91
|
margin-top: 0;
|
|
92
92
|
padding: 0;
|
|
93
93
|
padding-left: $spacing--medium;
|
|
94
|
-
figure.c-figure.u-float-full {
|
|
95
|
-
left: 0 !important;
|
|
96
|
-
right: 0 !important;
|
|
97
|
-
padding-left: 0;
|
|
98
|
-
padding-right: 0;
|
|
99
|
-
max-width: 100%;
|
|
100
|
-
}
|
|
101
94
|
}
|
|
102
95
|
|
|
103
96
|
.c-article__header {
|
package/src/Article/index.ts
CHANGED
|
@@ -12,4 +12,6 @@ import ArticleFootNotes from "./ArticleFootNotes";
|
|
|
12
12
|
import ArticleHeaderWrapper from "./ArticleHeaderWrapper";
|
|
13
13
|
|
|
14
14
|
export { ArticleByline, ArticleFootNotes, ArticleHeaderWrapper, ArticleTitle, ArticleIntroduction, ArticleWrapper };
|
|
15
|
+
export { ArticleParagraph } from "./ArticleParagraph";
|
|
16
|
+
|
|
15
17
|
export default Article;
|
|
@@ -120,7 +120,7 @@ const TextVersionHeading = styled(Heading)`
|
|
|
120
120
|
const LinkButton = styled(ButtonV2)`
|
|
121
121
|
box-shadow: none;
|
|
122
122
|
padding-left: 0;
|
|
123
|
-
padding-right:
|
|
123
|
+
padding-right: ${spacing.xxsmall};
|
|
124
124
|
min-height: ${spacing.medium};
|
|
125
125
|
flex: 0 0 auto;
|
|
126
126
|
&:hover,
|
|
@@ -200,7 +200,7 @@ const AudioPlayer = ({ src, title, subtitle, speech, description, img, textVersi
|
|
|
200
200
|
<TextWrapper data-has-image={!!img}>
|
|
201
201
|
<TitleWrapper>
|
|
202
202
|
<div>
|
|
203
|
-
{subtitle
|
|
203
|
+
{subtitle?.url ? <SafeLink to={subtitle.url}>{subtitle.title}</SafeLink> : subtitle?.title}
|
|
204
204
|
<Title element="h3" headingStyle="h4" margin="none" data-has-desc={!!description}>
|
|
205
205
|
{title}
|
|
206
206
|
</Title>
|
|
@@ -12,7 +12,7 @@ import styled from "@emotion/styled";
|
|
|
12
12
|
import { Root as PopoverRoot, PopoverContent, PopoverTrigger, PopoverPortal } from "@radix-ui/react-popover";
|
|
13
13
|
import { Root as SliderRoot, Track, Range, SliderThumb } from "@radix-ui/react-slider";
|
|
14
14
|
import { ButtonV2, IconButtonV2 } from "@ndla/button";
|
|
15
|
-
import { breakpoints, colors, fonts, mq, spacing, stackOrder } from "@ndla/core";
|
|
15
|
+
import { breakpoints, colors, fonts, misc, mq, spacing, stackOrder } from "@ndla/core";
|
|
16
16
|
import { DropdownMenu, DropdownContent, DropdownItem, DropdownTrigger } from "@ndla/dropdown-menu";
|
|
17
17
|
import { Back15, Forward15 } from "@ndla/icons/action";
|
|
18
18
|
import { Play, Pause, VolumeUp } from "@ndla/icons/common";
|
|
@@ -82,11 +82,11 @@ const SpeedValueButton = styled(ButtonV2)`
|
|
|
82
82
|
|
|
83
83
|
const SpeedSelectedMark = styled.span`
|
|
84
84
|
align-self: flex-start;
|
|
85
|
-
border-radius:
|
|
85
|
+
border-radius: ${misc.borderRadiusLarge};
|
|
86
86
|
background: #d1372e;
|
|
87
87
|
width: 6px;
|
|
88
88
|
height: 6px;
|
|
89
|
-
margin:
|
|
89
|
+
margin: ${spacing.xsmall} 0 0 2px;
|
|
90
90
|
`;
|
|
91
91
|
|
|
92
92
|
const Time = styled.div`
|
|
@@ -132,7 +132,7 @@ const StyledThumb = styled(SliderThumb)`
|
|
|
132
132
|
width: 20px;
|
|
133
133
|
height: 20px;
|
|
134
134
|
background: #5cbc80;
|
|
135
|
-
border-radius:
|
|
135
|
+
border-radius: ${misc.borderRadiusLarge};
|
|
136
136
|
outline: none;
|
|
137
137
|
`;
|
|
138
138
|
|
|
@@ -188,7 +188,7 @@ const VolumeSliderHandle = styled(SliderThumb)`
|
|
|
188
188
|
width: 20px;
|
|
189
189
|
height: 20px;
|
|
190
190
|
background: ${colors.brand.primary};
|
|
191
|
-
border-radius:
|
|
191
|
+
border-radius: ${misc.borderRadiusLarge};
|
|
192
192
|
`;
|
|
193
193
|
|
|
194
194
|
const formatTime = (seconds: number) => {
|
|
@@ -50,10 +50,6 @@ export const CollapseLast: StoryObj<typeof Breadcrumb> = {
|
|
|
50
50
|
args: { collapseLast: true },
|
|
51
51
|
};
|
|
52
52
|
|
|
53
|
-
export const AutoCollapse: StoryObj<typeof Breadcrumb> = {
|
|
54
|
-
args: { autoCollapse: true },
|
|
55
|
-
};
|
|
56
|
-
|
|
57
53
|
export const CustomSeparator: StoryObj<typeof Breadcrumb> = {
|
|
58
54
|
args: {
|
|
59
55
|
renderSeparator: (item, totalCount) => (
|
|
@@ -9,12 +9,10 @@
|
|
|
9
9
|
import { ReactNode, useRef } from "react";
|
|
10
10
|
import { useTranslation } from "react-i18next";
|
|
11
11
|
import styled from "@emotion/styled";
|
|
12
|
-
import { useComponentSize, useIsomorphicLayoutEffect } from "@ndla/hooks";
|
|
13
12
|
import BreadcrumbItem, { IndexedBreadcrumbItem, SimpleBreadcrumbItem } from "./BreadcrumbItem";
|
|
14
13
|
|
|
15
14
|
interface Props {
|
|
16
15
|
items: SimpleBreadcrumbItem[];
|
|
17
|
-
autoCollapse?: boolean;
|
|
18
16
|
collapseFirst?: boolean;
|
|
19
17
|
collapseLast?: boolean;
|
|
20
18
|
renderItem?: (item: IndexedBreadcrumbItem, totalCount: number) => ReactNode;
|
|
@@ -31,50 +29,18 @@ const StyledList = styled.ol`
|
|
|
31
29
|
list-style: none;
|
|
32
30
|
`;
|
|
33
31
|
|
|
34
|
-
const Breadcrumb = ({
|
|
35
|
-
items,
|
|
36
|
-
autoCollapse,
|
|
37
|
-
renderItem,
|
|
38
|
-
renderSeparator,
|
|
39
|
-
collapseFirst,
|
|
40
|
-
collapseLast = true,
|
|
41
|
-
}: Props) => {
|
|
32
|
+
const Breadcrumb = ({ items, renderItem, renderSeparator, collapseFirst, collapseLast = true }: Props) => {
|
|
42
33
|
const { t } = useTranslation();
|
|
43
34
|
const olRef = useRef<any>();
|
|
44
35
|
const containerRef = useRef<HTMLDivElement>(null);
|
|
45
36
|
// No idiomatic way of dealing with sets of refs yet
|
|
46
37
|
// See: https://github.com/facebook/react/issues/14072#issuecomment-446777406
|
|
47
|
-
const breadcrumbItemRefs = useRef(new Map()).current;
|
|
48
|
-
const size = useComponentSize(containerRef);
|
|
49
|
-
|
|
50
|
-
useIsomorphicLayoutEffect(() => {
|
|
51
|
-
if (!autoCollapse) {
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
// Create an array of all breadcrumb item refs
|
|
55
|
-
const items = Array.from(breadcrumbItemRefs).map(([key, value]) => value);
|
|
56
|
-
|
|
57
|
-
// Clear max width on all items
|
|
58
|
-
items.forEach((el) => {
|
|
59
|
-
el.setMaxWidth("none");
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
// Set maxWidth on breadcrumb text items iteratively until
|
|
63
|
-
// the ordered list fits on a single line. It's on a single line
|
|
64
|
-
// if the height of the list is less then 70.
|
|
65
|
-
items.forEach((el) => {
|
|
66
|
-
if (olRef.current.offsetHeight > 60) {
|
|
67
|
-
el.setMaxWidth("40px");
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
}, [size, items]);
|
|
71
38
|
|
|
72
39
|
return (
|
|
73
40
|
<BreadcrumbNav ref={containerRef} aria-label={t("breadcrumb.breadcrumb")}>
|
|
74
41
|
<StyledList ref={olRef}>
|
|
75
42
|
{items.map((item, index) => (
|
|
76
43
|
<BreadcrumbItem
|
|
77
|
-
autoCollapse={autoCollapse}
|
|
78
44
|
renderItem={renderItem}
|
|
79
45
|
renderSeparator={renderSeparator}
|
|
80
46
|
ref={(element) => {
|
|
@@ -86,9 +52,6 @@ const Breadcrumb = ({
|
|
|
86
52
|
if (element) {
|
|
87
53
|
element.setMaxWidth("none");
|
|
88
54
|
}
|
|
89
|
-
breadcrumbItemRefs.delete(item.to);
|
|
90
|
-
} else {
|
|
91
|
-
breadcrumbItemRefs.set(item.to, element);
|
|
92
55
|
}
|
|
93
56
|
}}
|
|
94
57
|
key={typeof item.to === "string" ? item.to : item.to.pathname}
|
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
import { useRef, useImperativeHandle, ReactNode, forwardRef } from "react";
|
|
10
|
-
import { css } from "@emotion/react";
|
|
11
10
|
import styled from "@emotion/styled";
|
|
12
11
|
import { mq, spacing, breakpoints } from "@ndla/core";
|
|
13
12
|
import { ChevronRight } from "@ndla/icons/common";
|
|
@@ -38,27 +37,14 @@ const StyledListItem = styled.li<AutoCollapseProps>`
|
|
|
38
37
|
:before {
|
|
39
38
|
display: none;
|
|
40
39
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
css`
|
|
45
|
-
${mq.range({ until: breakpoints.tablet })} {
|
|
46
|
-
display: block;
|
|
47
|
-
}
|
|
48
|
-
`}
|
|
40
|
+
${mq.range({ until: breakpoints.tablet })} {
|
|
41
|
+
display: block;
|
|
42
|
+
}
|
|
49
43
|
`;
|
|
50
44
|
|
|
51
|
-
const CollapseContainer = styled.div
|
|
45
|
+
const CollapseContainer = styled.div`
|
|
52
46
|
display: inline-block;
|
|
53
47
|
color: inherit;
|
|
54
|
-
${({ autoCollapse }) =>
|
|
55
|
-
autoCollapse &&
|
|
56
|
-
css`
|
|
57
|
-
text-overflow: ellipsis;
|
|
58
|
-
white-space: nowrap;
|
|
59
|
-
overflow: hidden;
|
|
60
|
-
display: inline-block;
|
|
61
|
-
`}
|
|
62
48
|
`;
|
|
63
49
|
|
|
64
50
|
const StyledChevron = styled(ChevronRight)`
|
|
@@ -92,7 +78,7 @@ const BreadcrumbItem = forwardRef<any, Props>(
|
|
|
92
78
|
const isLast = index === totalCount - 1;
|
|
93
79
|
return (
|
|
94
80
|
<StyledListItem ref={liRef} autoCollapse={autoCollapse} aria-current={isLast ? "page" : undefined}>
|
|
95
|
-
<CollapseContainer
|
|
81
|
+
<CollapseContainer>
|
|
96
82
|
{renderItem ? (
|
|
97
83
|
renderItem(item, totalCount)
|
|
98
84
|
) : isLast ? (
|
package/src/Breadcrumb/index.ts
CHANGED
|
@@ -10,8 +10,6 @@ import Breadcrumb from "./Breadcrumb";
|
|
|
10
10
|
|
|
11
11
|
export type { SimpleBreadcrumbItem, IndexedBreadcrumbItem } from "./BreadcrumbItem";
|
|
12
12
|
|
|
13
|
-
export { default as HeaderBreadcrumb } from "./HeaderBreadcrumb";
|
|
14
|
-
|
|
15
13
|
export { default as HomeBreadcrumb } from "./HomeBreadcrumb";
|
|
16
14
|
|
|
17
15
|
export default Breadcrumb;
|