From 78eae4a62fd0aa58b629257c9f01bcae15025a2e Mon Sep 17 00:00:00 2001 From: Juraj Roka <95219754+jr-rk@users.noreply.github.com> Date: Mon, 29 Sep 2025 15:14:58 +0200 Subject: [PATCH 01/10] First UI changes --- config/config.yml | 60 ++ .../admin-sidebar.component.html | 2 +- .../bitstream-page-routing.module.ts | 7 +- src/app/core/metadata/metadata.service.ts | 2 +- src/app/footer/footer.component.html | 166 ++-- src/app/footer/footer.component.scss | 731 ----------------- src/app/footer/footer.component.spec.ts | 3 +- src/app/footer/footer.component.ts | 3 +- src/app/header/header.component.html | 5 +- src/app/header/header.component.scss | 5 - .../home-news/home-news.component.html | 15 +- src/app/home-page/home-page.component.html | 139 +--- src/app/home-page/home-page.component.scss | 188 ----- src/app/home-page/home-page.component.ts | 280 +------ src/app/home-page/home-page.module.ts | 6 - .../full/full-item-page.component.html | 60 +- .../full/full-item-page.component.ts | 11 +- .../item-page/simple/item-page.component.html | 13 +- .../item-page/simple/item-page.component.scss | 39 - .../simple/item-page.component.spec.ts | 67 +- .../item-page/simple/item-page.component.ts | 86 +- .../publication/publication.component.html | 173 ++-- .../publication/publication.component.scss | 1 - .../publication/publication.component.spec.ts | 25 + .../untyped-item/untyped-item.component.html | 165 ++-- .../untyped-item/untyped-item.component.scss | 2 - .../untyped-item.component.spec.ts | 25 + src/app/login-page/login-page.component.html | 7 +- .../logout-page/logout-page.component.html | 6 +- .../navbar-section.component.html | 2 +- .../navbar-section.component.scss | 7 + src/app/navbar/navbar.component.scss | 99 +-- src/app/navbar/navbar.component.ts | 11 + src/app/navbar/navbar.module.ts | 5 +- .../search-navbar.component.scss | 7 +- .../altmetric-badge.component.ts | 38 + .../auth-nav-menu.component.scss | 6 +- .../dimensions-badge.component.ts | 35 + .../lang-switch/lang-switch.component.scss | 7 +- .../log-in-container.component.spec.ts | 40 - .../shared/log-in/log-in.component.spec.ts | 33 +- .../log-in-password.component.spec.ts | 66 +- .../password/log-in-password.component.ts | 143 +--- .../object-list/object-list.component.html | 43 +- .../shared/search/themed-search.component.ts | 18 +- src/app/shared/shared.module.ts | 6 + src/assets/i18n/cs.json5 | 24 +- src/assets/i18n/en.json5 | 10 +- .../images/LINDAT-CLARIAH-cz-gray_0.svg | 26 - src/assets/images/clarin-logo.png | Bin 10009 -> 0 bytes src/assets/images/clarin-logo.svg | 1 - src/assets/images/clarin.png | Bin 10074 -> 0 bytes src/assets/images/dariah-eu.png | Bin 23385 -> 0 bytes src/assets/images/favicon.png | Bin 0 -> 548 bytes src/assets/images/lindat-logo-new-sm.png | Bin 9769 -> 0 bytes src/assets/images/mendelu-logo.svg | 94 +++ src/styles/_custom_variables.scss | 10 +- .../breadcrumbs/breadcrumbs.component.html | 19 + .../breadcrumbs/breadcrumbs.component.scss | 38 + .../app/breadcrumbs/breadcrumbs.component.ts | 8 +- .../custom/app/footer/footer.component.html | 109 +++ .../custom/app/footer/footer.component.scss | 45 ++ .../custom/app/footer/footer.component.ts | 8 +- .../header-navbar-wrapper.component.html | 3 + .../header-navbar-wrapper.component.scss | 4 + .../header-navbar-wrapper.component.ts | 8 +- .../custom/app/header/header.component.html | 25 + .../custom/app/header/header.component.scss | 27 + .../custom/app/header/header.component.ts | 8 +- .../home-news/home-news.component.scss | 20 + .../home-news/home-news.component.ts | 8 +- .../app/home-page/home-page.component.html | 9 + .../app/home-page/home-page.component.scss | 4 + .../app/home-page/home-page.component.ts | 8 +- .../publication/publication.component.html | 94 +++ .../publication/publication.component.ts | 8 +- .../untyped-item/untyped-item.component.html | 80 ++ .../app/login-page/login-page.component.html | 10 + .../expandable-navbar-section.component.html | 37 + .../expandable-navbar-section.component.scss | 47 ++ .../expandable-navbar-section.component.ts | 8 +- .../custom/app/navbar/navbar.component.html | 33 + .../custom/app/navbar/navbar.component.scss | 69 ++ .../custom/app/navbar/navbar.component.ts | 8 +- .../search-navbar.component.html | 15 + .../search-navbar.component.scss | 32 + .../search-navbar/search-navbar.component.ts | 8 +- .../auth-nav-menu.component.html | 60 ++ .../auth-nav-menu.component.scss | 24 + .../auth-nav-menu/auth-nav-menu.component.ts | 8 +- .../lang-switch/lang-switch.component.html | 17 + .../lang-switch/lang-switch.component.scss | 18 + .../lang-switch/lang-switch.component.ts | 8 +- .../images/favicons/manifest.webmanifest | 19 + .../custom/styles/_custom_variables.scss | 111 +++ src/themes/custom/styles/_global-styles.scss | 151 ++++ .../styles/_theme_css_variable_overrides.scss | 6 + .../_theme_sass_variable_overrides.scss | 59 +- src/themes/custom/styles/theme.scss | 1 + .../header-navbar-wrapper.component.scss | 4 +- .../dspace/app/header/header.component.html | 84 +- .../dspace/app/header/header.component.scss | 748 +----------------- .../home-news/home-news.component.scss | 91 +-- .../dspace/app/navbar/navbar.component.html | 5 +- .../dspace/app/navbar/navbar.component.scss | 28 +- .../_mendelu_sass_variable_overrides.scss | 3 + src/themes/dspace/styles/theme.scss | 1 + src/themes/eager-themes.module.ts | 6 +- 108 files changed, 2033 insertions(+), 3242 deletions(-) create mode 100644 src/app/shared/altmetric-badge/altmetric-badge.component.ts create mode 100644 src/app/shared/dimensions-badge/dimensions-badge.component.ts delete mode 100644 src/assets/images/LINDAT-CLARIAH-cz-gray_0.svg delete mode 100644 src/assets/images/clarin-logo.png delete mode 100644 src/assets/images/clarin-logo.svg delete mode 100644 src/assets/images/clarin.png delete mode 100644 src/assets/images/dariah-eu.png create mode 100644 src/assets/images/favicon.png delete mode 100644 src/assets/images/lindat-logo-new-sm.png create mode 100644 src/assets/images/mendelu-logo.svg create mode 100644 src/themes/custom/assets/images/favicons/manifest.webmanifest create mode 100644 src/themes/custom/styles/_custom_variables.scss create mode 100644 src/themes/dspace/styles/_mendelu_sass_variable_overrides.scss diff --git a/config/config.yml b/config/config.yml index 9257bd2b09d..6c2818a2903 100644 --- a/config/config.yml +++ b/config/config.yml @@ -98,6 +98,66 @@ cache: # This ensures stale pages (older than timeToLive) are never returned from the cache, but some users will wait on SSR. allowStale: true +# Theme Config +themes: + # Add additional themes here. In the case where multiple themes match a route, the first one + # in this list will get priority. It is advisable to always have a theme that matches + # every route as the last one + # + # # A theme with a handle property will match the community, collection or item with the given + # # handle, and all collections and/or items within it + # - name: custom + # handle: 10673/1233 + # + # # A theme with a regex property will match the route using a regular expression. If it + # # matches the route for a community or collection it will also apply to all collections + # # and/or items within it + # - name: custom + # regex: collections\/e8043bc2.* + # + # # A theme with a uuid property will match the community, collection or item with the given + # # ID, and all collections and/or items within it + # - name: custom + # uuid: 0958c910-2037-42a9-81c7-dca80e3892b4 + # + # # The extends property specifies an ancestor theme (by name). Whenever a themed component is not found + # # in the current theme, its ancestor theme(s) will be checked recursively before falling back to default. + # - name: custom-A + # extends: custom-B + # # Any of the matching properties above can be used + # handle: 10673/34 + # + # - name: custom-B + # extends: custom + # handle: 10673/12 + # + # # A theme with only a name will match every route + # name: custom + # + # # This theme will use the default bootstrap styling for DSpace components + # - name: BASE_THEME_NAME + # + - name: custom + headTags: + - tagName: link + attributes: + rel: icon + href: assets/dspace/images/favicons/favicon.ico + sizes: any + - tagName: link + attributes: + rel: icon + href: assets/dspace/images/favicons/favicon.svg + type: image/svg+xml + - tagName: link + attributes: + rel: apple-touch-icon + href: assets/dspace/images/favicons/apple-touch-icon.png + - tagName: link + attributes: + rel: manifest + href: assets/dspace/images/favicons/manifest.webmanifest + #info: # # Whether the end user agreement is required before users may use the repository. # # If enabled, the user will be required to accept the agreement before they can use the repository. diff --git a/src/app/admin/admin-sidebar/admin-sidebar.component.html b/src/app/admin/admin-sidebar/admin-sidebar.component.html index fcb33eb1755..00005511d59 100644 --- a/src/app/admin/admin-sidebar/admin-sidebar.component.html +++ b/src/app/admin/admin-sidebar/admin-sidebar.component.html @@ -15,7 +15,7 @@