Exclude search and browse from Angular SSR (#3709)

* [DURACOM-303] prevent possibly long-lasting search and browse calls in SSR

* [DURACOM-303] implement skeleton component for search results

* [DURACOM-303] add skeleton loader for search results and filters

* [DURACOM-303] minor restyle of skeleton for mobile

* [DURACOM-303] fix lint and tests

* [DURACOM-303] adapt tests

* [DURACOM-303] restyle skeleton, add filter badge skeleton

* [DURACOM-303] add loop for filters count

* [DURACOM-303] add grid layout, make SSR enabling configurable, minor restyle of skeletons

* [DURACOM-303] refactor param, add example of configuration

* [DURACOM-303] rename variable, minor code refactor

* [DURACOM-303] add override possibility with input

* [DURACOM-303] fix SSR check on template and on components missing the environment config. Add descriptive comment for skeleton component. Fix JS error on SSR.

* [DURACOM-303] refactor thumbnail's skeleton style
This commit is contained in:
FrancescoMolinaro
2025-01-23 17:07:15 +01:00
committed by Tim Donohue
parent cb8a7cd402
commit 17ecc592f3
38 changed files with 641 additions and 51 deletions

View File

@@ -25,6 +25,14 @@ ssr:
inlineCriticalCss: false
# Path prefixes to enable SSR for. By default these are limited to paths of primary DSpace objects.
paths: [ '/home', '/items/', '/entities/', '/collections/', '/communities/', '/bitstream/', '/bitstreams/', '/handle/' ]
# Whether to enable rendering of Search component on SSR.
# If set to true the component will be included in the HTML returned from the server side rendering.
# If set to false the component will not be included in the HTML returned from the server side rendering.
enableSearchComponent: false,
# Whether to enable rendering of Browse component on SSR.
# If set to true the component will be included in the HTML returned from the server side rendering.
# If set to false the component will not be included in the HTML returned from the server side rendering.
enableBrowseComponent: false,
# The REST API server settings
# NOTE: these settings define which (publicly available) REST API to use. They are usually
@@ -450,6 +458,12 @@ search:
enabled: false
# List of filters to enable in "Advanced Search" dropdown
filter: [ 'title', 'author', 'subject', 'entityType' ]
#
# Number used to render n UI elements called loading skeletons that act as placeholders.
# These elements indicate that some content will be loaded in their stead.
# Since we don't know how many filters will be loaded before we receive a response from the server we use this parameter for the skeletons count.
# e.g. If we set 5 then 5 loading skeletons will be visualized before the actual filters are retrieved.
defaultFiltersCount: 5
# Notify metrics