Compare commits

...

1974 Commits

Author SHA1 Message Date
Tim Donohue
01cc3ab473 Merge pull request #4724 from im-shubham-vish/fix-9814-backport-8x
[Port dspace-8_x] Fix for #8916 #8917 #8918 to 8.x: The Community Administrator should not be able to view all communities/collections in the create/edit community and collection sections (Previous PR #9814 #4639)
2025-10-02 14:52:43 -05:00
Tim Donohue
17f5024a97 Merge pull request #4743 from DSpace/backport-4733-to-dspace-8_x
[Port dspace-8_x] SSR: avoid sending new response when headers were already sent
2025-10-01 08:48:27 -05:00
Daniel Coelho
1f8bc7bdd4 SSR: avoid sending new response when headeras were already sent (fixes #2315)
(cherry picked from commit 951c5f69d4)
2025-09-30 21:25:50 +00:00
Tim Donohue
a9093aa62b Merge pull request #4731 from alanorth/collection-mapper-trash-icon-8x
[Port dspace-8_x] src/app: use correct icon in item mapper
2025-09-22 16:59:57 -05:00
Alan Orth
c60f80dcfe src/app: use correct icon in item mapper
When adding mappings in the item mapper we should use the save icon
rather than the trash icon!
2025-09-19 16:47:57 +03:00
im-shubham-vish
7d0379283d Backport [#9814] Fix Only show authorized communities/collections in selector to 8x 2025-09-18 11:39:36 +05:30
Tim Donohue
605fda4c1d Merge pull request #4695 from DSpace/dependabot/npm_and_yarn/dspace-8_x/core-js-3.45.1
Bump core-js from 3.44.0 to 3.45.1
2025-09-12 14:07:22 -05:00
Tim Donohue
a940099003 Merge pull request #4697 from DSpace/dependabot/npm_and_yarn/dspace-8_x/babel/runtime-7.28.4
Bump @babel/runtime from 7.28.2 to 7.28.4
2025-09-12 12:32:59 -05:00
Tim Donohue
62f76eb5cf Merge pull request #4698 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-2e0f0fb0cc
Bump sass from 1.89.2 to 1.92.1 in the sass group
2025-09-10 16:59:11 -05:00
Tim Donohue
6a68a3169a Merge pull request #4696 from DSpace/dependabot/npm_and_yarn/dspace-8_x/isbot-5.1.30
Bump isbot from 5.1.29 to 5.1.30
2025-09-10 16:36:42 -05:00
Tim Donohue
1ce5a85491 Merge pull request #4699 from DSpace/dependabot/npm_and_yarn/dspace-8_x/testing-c9201e7a88
Bump cypress-axe from 1.6.0 to 1.7.0 in the testing group
2025-09-10 15:56:07 -05:00
Tim Donohue
dcbbb6c1fb Merge pull request #4718 from DSpace/backport-4634-to-dspace-8_x
[Port dspace-8_x] server.ts: remove port and host fallbacks in run
2025-09-10 15:51:32 -05:00
Tim Donohue
b67a703fea Merge pull request #4715 from DSpace/backport-4636-to-dspace-8_x
[Port dspace-8_x] src/themes/dspace: rework banner image
2025-09-10 14:57:26 -05:00
Alan Orth
ed4f5d4ba5 server.ts: remove port fallback
If a user has messed up their config so much that the fallbacks in
our default configuration interface don't work then we should just
fail here.

(cherry picked from commit 6c09677510)
2025-09-10 19:49:03 +00:00
Alan Orth
517a774bf4 server.ts: remove invalid host fallback
If `environment.ui.host` is Falsy, then we attempt to fall back to
a host value of '/', which is invalid. I think that, if a user has
messed up their config so much that defaults in our configuration
interface don't work, then we should actually fail here.

(cherry picked from commit f622d58917)
2025-09-10 19:49:02 +00:00
Tim Donohue
66f36b958a Merge pull request #4713 from tdonohue/port_4180_to_8x
[Port dspace-8_x] Clean up spacing in input forms
2025-09-10 14:16:41 -05:00
Alan Orth
996023d181 src/themes/dspace: rework banner image
For some reason our version of this image is twice the size of the
original (~860KiB vs 1.6MiB). To make matters worse, the dimensions
of the image are 4777x3166 pixels, but we display it at 2000 pixels
wide.

This regenerates the images based on the original and adjusts the
dimensions to be more appropriate. Generated using ImageMagick 7
on Linux:

$ magick pexels-inspiredimages-132477.jpg -resize 2000x src/themes/dspace/assets/images/banner.jpg
$ magick pexels-inspiredimages-132477.jpg -resize 2000x src/themes/dspace/assets/images/banner.webp
$ magick pexels-inspiredimages-132477.jpg -resize 1200x src/themes/dspace/assets/images/banner-half.jpg
$ magick pexels-inspiredimages-132477.jpg -resize 1200x src/themes/dspace/assets/images/banner-half.webp

See: https://www.pexels.com/photo/clear-water-drops-132477/
(cherry picked from commit d9e8fea5bf)
2025-09-10 19:08:05 +00:00
Alan Orth
e3832352dd [Port dspace-7_x] Clean up spacing in input forms
Manual port of #4136 by @gingyx to DSpace 7.x.
2025-09-10 13:41:10 -05:00
Tim Donohue
6f51e796db Merge pull request #4708 from DSpace/backport-4644-to-dspace-8_x
[Port dspace-8_x] fix: call parent ngOnDestroy in dynamic form control container
2025-09-10 08:52:43 -05:00
Jukka Lipka
36019ce9a5 fix: call parent ngOnDestroy in dynamic form control container
(cherry picked from commit 4d803a58d4)
2025-09-09 21:36:56 +00:00
dependabot[bot]
1cb278cf96 Bump cypress-axe from 1.6.0 to 1.7.0 in the testing group
Bumps the testing group with 1 update: [cypress-axe](https://github.com/component-driven/cypress-axe).


Updates `cypress-axe` from 1.6.0 to 1.7.0
- [Release notes](https://github.com/component-driven/cypress-axe/releases)
- [Commits](https://github.com/component-driven/cypress-axe/compare/v1.6.0...v1.7.0)

---
updated-dependencies:
- dependency-name: cypress-axe
  dependency-version: 1.7.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 22:00:40 +00:00
dependabot[bot]
d771f88f41 Bump sass from 1.89.2 to 1.92.1 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.89.2 to 1.92.1
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.89.2...1.92.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.92.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 22:00:22 +00:00
dependabot[bot]
eefd658ae7 Bump @babel/runtime from 7.28.2 to 7.28.4
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.28.2 to 7.28.4.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.4/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-version: 7.28.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 22:00:17 +00:00
dependabot[bot]
039a613f4b Bump isbot from 5.1.29 to 5.1.30
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.29 to 5.1.30.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.29...v5.1.30)

---
updated-dependencies:
- dependency-name: isbot
  dependency-version: 5.1.30
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 21:58:51 +00:00
dependabot[bot]
8e0811a18f Bump core-js from 3.44.0 to 3.45.1
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.44.0 to 3.45.1.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.45.1/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-version: 3.45.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 21:58:14 +00:00
Art Lowel
f8a7170f3b Merge pull request #4670 from DSpace/backport-4664-to-dspace-8_x
[Port dspace-8_x] Inspect event key characters, not keyCodes on tag keyUp for dynamic tag input
2025-09-04 17:38:10 +02:00
Kim Shepherd
fb66397dd7 Create dynamic tag test events with key chars, not keyCodes
(cherry picked from commit 98fc76d867)
2025-09-04 14:46:13 +00:00
Kim Shepherd
5414421894 Inspect event key characters, not keyCodes on tag keyUp
(cherry picked from commit f313b4a8fd)
2025-09-04 14:46:13 +00:00
Tim Donohue
9c0b8cf7da Merge pull request #4667 from tdonohue/port_4628_to_8x
[Port dspace-8_x] Fix untranslated i18n keys ror api
2025-09-03 16:48:52 -05:00
Jesiel Viana
010a50f026 fix code style 2025-09-03 16:08:03 -05:00
Jesiel Viana
61d35191ff add in pt-BR file and remove form pt-PT 2025-09-03 16:07:45 -05:00
Jesiel Viana
4a67aa6820 add untranslated i18n keys for ROR API 2025-09-03 16:05:34 -05:00
Tim Donohue
6515ec3a46 Merge pull request #4615 from nimabehforouz/translate-8x-fr
Adding the missing French translations (dspace-8_x)
2025-08-28 16:01:01 -05:00
Tim Donohue
9083be5daf Merge pull request #4650 from DSpace/backport-4640-to-dspace-8_x
[Port dspace-8_x] .github/workflows/codescan.yml: use codeql-action v3
2025-08-20 17:16:23 -05:00
Alan Orth
ae42acb516 .github/workflows/codescan.yml: use codeql-action v3
Version 2 was deprecated in January, 2024 after the release of v3.

See: https://github.blog/changelog/2025-01-10-code-scanning-codeql-action-v2-is-now-deprecated/
(cherry picked from commit 3333ee4fbb)
2025-08-20 21:10:53 +00:00
Tim Donohue
ee9955b651 Merge pull request #4630 from DSpace/backport-4550-to-dspace-8_x
[Port dspace-8_x] fix back button navigation after visiting a community or collection page
2025-08-08 12:51:22 -05:00
Jesiel Viana
318ba11bc0 fix back button navigation after visiting a community or collection page
(cherry picked from commit c7c1c0fc17)
2025-08-08 17:08:15 +00:00
Tim Donohue
3f7d4ea874 Merge pull request #4585 from DSpace/dependabot/npm_and_yarn/dspace-8_x/babel/runtime-7.28.2
Bump @babel/runtime from 7.27.6 to 7.28.2
2025-08-01 10:48:20 -05:00
Tim Donohue
721a7ae517 Merge pull request #4613 from DSpace/dependabot/npm_and_yarn/dspace-8_x/webpack-16f7f9f544
Bump the webpack group across 1 directory with 2 updates
2025-08-01 10:00:36 -05:00
dependabot[bot]
0a3ea236e3 Bump the webpack group across 1 directory with 2 updates
Bumps the webpack group with 2 updates in the / directory: [webpack](https://github.com/webpack/webpack) and [webpack-dev-server](https://github.com/webpack/webpack-dev-server).


Updates `webpack` from 5.99.9 to 5.101.0
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.99.9...v5.101.0)

Updates `webpack-dev-server` from 5.2.1 to 5.2.2
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v5.2.1...v5.2.2)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.101.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: webpack
- dependency-name: webpack-dev-server
  dependency-version: 5.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: webpack
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-31 21:26:53 +00:00
Nima Behforouz
b2ab954b16 Updates French translations for 8.x 2025-07-31 11:18:30 -04:00
Tim Donohue
5a5b93461d Merge pull request #4605 from DSpace-Labs/dependabot/npm_and_yarn/babel/helpers-7.27.6
[Dependabot] Bump @babel/helpers from 7.25.6 to 7.27.6
2025-07-30 15:37:48 -05:00
dependabot[bot]
894f45767c Bump @babel/runtime from 7.27.6 to 7.28.2
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.27.6 to 7.28.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.2/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-version: 7.28.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-30 20:35:59 +00:00
Tim Donohue
e3284c6cbd Merge pull request #4604 from DSpace-Labs/dependabot/npm_and_yarn/vite-5.4.19
[Dependabot] Bump vite from 5.4.17 to 5.4.19
2025-07-30 15:32:23 -05:00
Tim Donohue
9f03371010 Merge pull request #4607 from DSpace-Labs/dependabot/npm_and_yarn/webpack-dev-server-5.2.1
[Dependabot] Bump webpack-dev-server from 4.15.2 to 5.2.1
2025-07-30 14:55:19 -05:00
Tim Donohue
065ad99957 Merge pull request #4547 from DSpace/dependabot/npm_and_yarn/dspace-8_x/core-js-3.44.0
Bump core-js from 3.42.0 to 3.44.0
2025-07-30 11:43:28 -05:00
Tim Donohue
355a76cf5d Merge pull request #4602 from DSpace/backport-4344-to-dspace-8_x
[Port dspace-8_x] fix(versioning): Encode summary
2025-07-30 11:02:08 -05:00
dependabot[bot]
7f75ed4a33 Bump webpack-dev-server from 4.15.2 to 5.2.1
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 4.15.2 to 5.2.1.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v4.15.2...v5.2.1)

---
updated-dependencies:
- dependency-name: webpack-dev-server
  dependency-version: 5.2.1
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-30 15:35:57 +00:00
Tim Donohue
138be1c93a Merge pull request #4534 from DSpace/dependabot/npm_and_yarn/dspace-8_x/types/lodash-4.17.20
Bump @types/lodash from 4.17.17 to 4.17.20
2025-07-30 10:09:32 -05:00
Tim Donohue
add79e9c4b Merge pull request #4586 from DSpace/dependabot/npm_and_yarn/dspace-8_x/axios-1.11.0
Bump axios from 1.10.0 to 1.11.0
2025-07-30 10:01:15 -05:00
Jukka Lipka
60b0ffa2cf fix(versioning): encode summary
The reason for creating a new version is now encoded in the URL.

(cherry picked from commit 2dd870ea7e)
2025-07-30 14:21:12 +00:00
Alan Orth
2519bd494f Merge pull request #4595 from DSpace/dependabot/npm_and_yarn/dspace-8_x/isbot-5.1.29 2025-07-29 10:46:14 -07:00
dependabot[bot]
a56921d492 Bump isbot from 5.1.28 to 5.1.29
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.28 to 5.1.29.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.28...v5.1.29)

---
updated-dependencies:
- dependency-name: isbot
  dependency-version: 5.1.29
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-29 14:32:58 +00:00
dependabot[bot]
f8a26e0eda Bump axios from 1.10.0 to 1.11.0
Bumps [axios](https://github.com/axios/axios) from 1.10.0 to 1.11.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.10.0...v1.11.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 07:22:44 +00:00
Tim Donohue
376acb2f96 Merge pull request #4580 from DSpace/backport-4536-to-dspace-8_x
[Port dspace-8_x] Fix empty search query after previous non-empty search
2025-07-24 13:42:03 -05:00
Jesiel Viana
751cf27fe2 fix empty search query after previous non-empty search
(cherry picked from commit cf34198d54)
2025-07-24 17:59:02 +00:00
dependabot[bot]
91c50c0757 Bump @babel/helpers from 7.25.6 to 7.27.6
Bumps [@babel/helpers](https://github.com/babel/babel/tree/HEAD/packages/babel-helpers) from 7.25.6 to 7.27.6.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.6/packages/babel-helpers)

---
updated-dependencies:
- dependency-name: "@babel/helpers"
  dependency-version: 7.27.6
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-23 19:12:54 +00:00
dependabot[bot]
3ea03e1f49 Bump vite from 5.4.17 to 5.4.19
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.17 to 5.4.19.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.19/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.19/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 5.4.19
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-23 19:12:52 +00:00
Tim Donohue
c4aae39315 Merge pull request #4572 from DSpace/backport-4568-to-dspace-8_x
[Port dspace-8_x] Fix current parent order when creating subcommunity
2025-07-23 12:31:31 -05:00
Jesiel Viana
f704695a22 Fix current parent order when creating subcommunity
(cherry picked from commit 44fcc7221b)
2025-07-23 15:42:19 +00:00
Tim Donohue
4680d75f3f Merge tag 'dspace-7.6.5' into dspace-8_x 2025-07-22 16:14:22 -05:00
Tim Donohue
58269e1f67 Merge tag 'dspace-7.6.4' into dspace-8_x 2025-07-22 16:13:42 -05:00
Tim Donohue
9497decf07 Update version tag for release 2025-07-22 15:30:23 -05:00
Tim Donohue
d4edbf2e25 Automatic update to yarn.locak after various dependency updates. This dependency is no longer needed. 2025-07-22 11:26:15 -05:00
Tim Donohue
f80992f1fc Merge pull request #4559 from DSpace/dependabot/npm_and_yarn/dspace-7_x/morgan-1.10.1
Bump morgan from 1.10.0 to 1.10.1
2025-07-22 10:52:57 -05:00
Alan Orth
c19dd00876 Merge pull request #4556 from DSpace/dependabot/npm_and_yarn/dspace-8_x/morgan-1.10.1 2025-07-21 21:32:23 -07:00
Alan Orth
bb3af14b6c Merge pull request #4560 from DSpace/dependabot/npm_and_yarn/dspace-7_x/compression-1.8.1 2025-07-21 21:27:13 -07:00
Alan Orth
3a5f4565a5 Merge pull request #4493 from DSpace/dependabot/npm_and_yarn/dspace-7_x/eslint-036d341c50 2025-07-21 21:07:37 -07:00
Alan Orth
638f503bc7 Merge pull request #4497 from DSpace/dependabot/npm_and_yarn/dspace-8_x/eslint-036d341c50 2025-07-21 21:05:15 -07:00
Alan Orth
fc43e2473d Merge pull request #4457 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-63defccb8e 2025-07-21 18:17:26 -07:00
Alan Orth
6faa0ab8d5 Merge pull request #4555 from DSpace/dependabot/npm_and_yarn/dspace-8_x/compression-1.8.1 2025-07-21 18:13:35 -07:00
dependabot[bot]
16da9855fc Bump compression from 1.8.0 to 1.8.1
---
updated-dependencies:
- dependency-name: compression
  dependency-version: 1.8.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 06:47:30 +00:00
dependabot[bot]
821f16ea1d Bump morgan from 1.10.0 to 1.10.1
---
updated-dependencies:
- dependency-name: morgan
  dependency-version: 1.10.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 06:45:01 +00:00
dependabot[bot]
f9aa4f8ef5 Bump morgan from 1.10.0 to 1.10.1
Bumps [morgan](https://github.com/expressjs/morgan) from 1.10.0 to 1.10.1.
- [Release notes](https://github.com/expressjs/morgan/releases)
- [Changelog](https://github.com/expressjs/morgan/blob/master/HISTORY.md)
- [Commits](https://github.com/expressjs/morgan/compare/1.10.0...1.10.1)

---
updated-dependencies:
- dependency-name: morgan
  dependency-version: 1.10.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 06:08:46 +00:00
dependabot[bot]
b7bda01a05 Bump compression from 1.8.0 to 1.8.1
Bumps [compression](https://github.com/expressjs/compression) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/expressjs/compression/releases)
- [Changelog](https://github.com/expressjs/compression/blob/master/HISTORY.md)
- [Commits](https://github.com/expressjs/compression/compare/1.8.0...v1.8.1)

---
updated-dependencies:
- dependency-name: compression
  dependency-version: 1.8.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 06:06:08 +00:00
dependabot[bot]
f9fb6d06f1 Bump eslint-plugin-import from 2.31.0 to 2.32.0 in the eslint group
Bumps the eslint group with 1 update: [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import).


Updates `eslint-plugin-import` from 2.31.0 to 2.32.0
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.31.0...v2.32.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-version: 2.32.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 05:38:45 +00:00
dependabot[bot]
4fa71b801c Bump sass from 1.89.1 to 1.89.2 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.89.1 to 1.89.2
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.89.1...1.89.2)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.89.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 05:38:29 +00:00
dependabot[bot]
5700850409 Bump eslint-plugin-import from 2.31.0 to 2.32.0 in the eslint group
---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-version: 2.32.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 05:16:10 +00:00
Tim Donohue
cd0a2b88e0 Update version tag for development of next release 2025-07-14 15:34:17 -05:00
Tim Donohue
38e0fe2f5d Update version tag for release 2025-07-14 15:29:43 -05:00
Tim Donohue
7a7e468492 Update version tag for development of next release 2025-07-14 14:10:06 -05:00
Tim Donohue
34fc08766d Update version tag for release 2025-07-14 14:04:48 -05:00
dependabot[bot]
83562273bc Bump core-js from 3.42.0 to 3.44.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.42.0 to 3.44.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.44.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-version: 3.44.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 06:35:06 +00:00
Tim Donohue
13d6acaf76 Sync i18n files to prepare for the 7.6.4 release 2025-07-11 13:43:39 -05:00
Tim Donohue
215dd37c89 Sync i18n files to prepare for 8.2 release. 2025-07-11 13:38:57 -05:00
Tim Donohue
d9c0401bdd Merge pull request #4530 from atmire/w2p-119612_export-item-limit-7_x
[Port dspace-7_x] UI warning for export item limit
2025-07-10 13:25:34 -05:00
Jens Vannerum
5a2702c797 fix missing imports after backport 2025-07-10 10:39:55 +02:00
Tim Donohue
2b9d3a0dc2 Merge pull request #4531 from atmire/w2p-119612_export-item-limit-8_x
[Port dspace-8_x] UI warning for export item limit
2025-07-07 13:07:35 -05:00
dependabot[bot]
ebc656ecd8 Bump @types/lodash from 4.17.17 to 4.17.20
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.17 to 4.17.20.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-version: 4.17.20
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 07:26:21 +00:00
Jens Vannerum
2e26b4a50d 119612: fix spec test
(cherry picked from commit 6232d4e9cf)
2025-07-04 10:28:17 +02:00
Jens Vannerum
df8859d976 119612: aria-label to also include warning message if applicable
(cherry picked from commit 8eaff78737)
2025-07-04 10:28:12 +02:00
Jens Vannerum
c36c8d726e 119612: Check if a warning should be shown on changes to the total elements of the search, default to 500 if no value for the configuration property was returned
(cherry picked from commit e1b773c097)
2025-07-04 10:28:10 +02:00
Jens Vannerum
93200d6b3c 119612: UI warning that only first part of configured items will be exported
(cherry picked from commit b69b21af6c)
2025-07-04 10:27:56 +02:00
Jens Vannerum
dabc3b400b 119612: fix spec test
(cherry picked from commit 6232d4e9cf)
2025-07-04 10:26:25 +02:00
Jens Vannerum
5b19ebe48c 119612: aria-label to also include warning message if applicable
(cherry picked from commit 8eaff78737)
2025-07-04 10:25:51 +02:00
Jens Vannerum
32511b0f50 119612: Check if a warning should be shown on changes to the total elements of the search, default to 500 if no value for the configuration property was returned
(cherry picked from commit e1b773c097)
2025-07-04 10:25:43 +02:00
Jens Vannerum
17e58ae5e3 119612: UI warning that only first part of configured items will be exported
(cherry picked from commit b69b21af6c)
2025-07-04 10:24:36 +02:00
Tim Donohue
aabc0a199e Merge pull request #4436 from TexasDigitalLibrary/dspace-8_x-port-config-default-comcol-tab
[Port dspace-8_x] Make the default tab for browsing communities and collections configurable in DSpace 8
2025-07-03 15:37:41 -05:00
Tim Donohue
0d87a72f41 Merge pull request #4417 from atmire/w2p-131442_backport-4335-to-dspace-7_x
[Port dspace-7_x] Improve accessibility for screen readers
2025-07-03 15:14:03 -05:00
Tim Donohue
a17d58acc5 Merge pull request #4277 from DSpace/backport-3888-to-dspace-7_x
[Port dspace-7_x] Fixed search page still returning stale data after invalidating a request
2025-07-03 14:42:57 -05:00
Tim Donohue
3c99183504 Merge pull request #4415 from atmire/w2p-131442_backport-4335-to-dspace-8_x
[Port dspace-8_x] Improve accessibility for screen readers
2025-07-03 14:21:17 -05:00
Tim Donohue
c3edf911ac Merge pull request #4441 from atmire/w2p-131442_backport-3888-to-dspace-8_x
[Port dspace-8_x] Fixed search page still returning stale data after invalidating a request
2025-07-03 14:06:30 -05:00
Tim Donohue
b815737710 Merge pull request #3820 from atmire/vocabulary-preloadlevel-fix-8_x
[Port dspace-8_x] Vocabulary preloadlevel fix
2025-07-01 17:02:51 -05:00
Tim Donohue
44f2ad7f4f Merge pull request #3821 from atmire/vocabulary-preloadlevel-fix-7_x
[Port dspace-7_x] Vocabulary preloadlevel fix
2025-07-01 17:02:27 -05:00
Tim Donohue
c7f8ed1f42 Merge pull request #4519 from atmire/accessibility-settings-7_x
[Port dspace-7_x] Accessibility settings page SSR Fix
2025-07-01 13:58:20 -05:00
Tim Donohue
524de36043 Merge pull request #3614 from atmire/accessibility-settings-8_x
[Port dspace-8_x] Accessibility settings page
2025-07-01 13:56:05 -05:00
Andreas Awouters
86b4ce2cf9 119602: Fix SSR error by making klaroService optional
KlaroService handles cookies which are not applicable during SSR. By
making the service optional, and handling the case when it is not
available, SSR can do its work without throwing NullInjectorErrors.
2025-07-01 10:06:08 +02:00
Andreas Awouters
c6ef2467bc 119602: Fix SSR error by making klaroService optional
KlaroService handles cookies which are not applicable during SSR. By
making the service optional, and handling the case when it is not
available, SSR can do its work without throwing NullInjectorErrors.
2025-07-01 09:06:40 +02:00
Tim Donohue
2f986bb0a6 Merge pull request #4371 from qultoltd/dspace-8_x
Improve Hungarian translations in DSpace 8.1
2025-06-30 13:46:07 -05:00
Tim Donohue
c07bc3c379 Merge pull request #3615 from atmire/accessibility-settings-7_x
[Port dspace-7_x] Accessibility settings page
2025-06-30 11:03:38 -05:00
Andreas Awouters
9070ad62a4 119602: Port disabling of cookie popup from main
# Conflicts:
#	src/app/footer/footer.component.spec.ts
#	src/app/footer/footer.component.ts
#	src/config/default-app-config.ts
#	src/config/info-config.interface.ts
#	src/environments/environment.test.ts
2025-06-30 15:05:16 +02:00
Andreas Awouters
9e39b01c6c Merge branch 'dspace-8_x' into accessibility-settings-8_x 2025-06-30 13:45:00 +02:00
Andreas Awouters
991dc0a0e5 119602: Open tooltip to left of info icon 2025-06-30 13:44:01 +02:00
Andreas Awouters
31fcfda622 119602: Align accessibility link with other footer links 2025-06-30 13:11:29 +02:00
Andreas Awouters
b44f74a20a 119602: Port disabling of cookie popup from main 2025-06-30 11:54:20 +02:00
Andreas Awouters
50757247ab Merge branch 'dspace-7_x' into accessibility-settings-7_x 2025-06-30 10:37:10 +02:00
Andreas Awouters
1883d93198 119602: Open tooltip to left of info icon 2025-06-30 10:35:47 +02:00
Andreas Awouters
d9ab4bca65 119602: Align accessibility link with other footer links 2025-06-30 10:35:26 +02:00
Alan Orth
edeb2d2e3a Merge pull request #4492 from DSpace/dependabot/npm_and_yarn/dspace-7_x/postcss-bff535204e 2025-06-28 11:57:44 +03:00
Tim Donohue
c2257ebc81 Merge pull request #4449 from 4Science/task/dspace-7_x/DURACOM-291
[Port dspace-7_x] Fix submission section visibility in order to rely on the configured section scope
2025-06-26 16:41:09 -05:00
Tim Donohue
cf2407ba90 Merge pull request #4488 from alexandrevryghem/w2p-117573_remove-observable-function-calls-from-template-7_x
[Port dspace-7_x] Removed observable function calls from template (part 2)
2025-06-26 11:36:11 -05:00
Tim Donohue
1ec2df1017 Merge pull request #4440 from alexandrevryghem/w2p-117573_remove-observable-function-calls-from-template-8_x
[Port dspace-8_x] Removed observable function calls from template (part 2)
2025-06-24 16:49:22 -05:00
Alan Orth
763871a5c0 Merge pull request #4496 from DSpace/dependabot/npm_and_yarn/dspace-8_x/postcss-bff535204e 2025-06-24 22:17:54 +02:00
dependabot[bot]
510c0ae367 Bump postcss from 8.5.5 to 8.5.6 in the postcss group
---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: postcss
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-23 06:44:27 +00:00
dependabot[bot]
e0af01ff43 Bump postcss from 8.5.5 to 8.5.6 in the postcss group
Bumps the postcss group with 1 update: [postcss](https://github.com/postcss/postcss).


Updates `postcss` from 8.5.5 to 8.5.6
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.5...8.5.6)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: postcss
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-23 06:08:24 +00:00
Alexandre Vryghem
7afe49d2b0 117287: Fixed various layout issues
- The unthemed home news didn't stick to the header like the dspace theme
- Impersonate user button has additional margin
- Submission form loading icon is not translatable
- Create resource policy page doesn't have the correct heading

(cherry picked from commit 56e45a9f08)
2025-06-21 01:38:08 +02:00
Alexandre Vryghem
c89ad9f22a 122464: Fixed a memory leak when initComponentInstance is called multiple times
(cherry picked from commit 62f15668b6)
2025-06-21 01:33:21 +02:00
Alexandre Vryghem
391e87a11f Merge branch 'w2p-117573_remove-observable-function-calls-from-template-7.6' 2025-06-21 01:26:12 +02:00
Zoltán Kanász-Nagy
c05586a7ea Merge branch 'DSpace:dspace-8_x' into dspace-8_x 2025-06-17 08:34:29 +02:00
Alan Orth
a864260d00 Merge pull request #4458 from DSpace/dependabot/npm_and_yarn/dspace-7_x/postcss-ff1e1e588d 2025-06-17 09:26:32 +03:00
Alan Orth
33b3f1a8e6 Merge pull request #4459 from DSpace/dependabot/npm_and_yarn/dspace-8_x/postcss-ff1e1e588d 2025-06-17 09:25:28 +03:00
Alan Orth
39ddebede7 Merge pull request #4462 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-63defccb8e 2025-06-17 09:09:14 +03:00
Alan Orth
abfdf63482 Merge pull request #4463 from DSpace/dependabot/npm_and_yarn/dspace-7_x/axios-1.10.0 2025-06-17 07:06:53 +03:00
Alan Orth
e048d3bc7d Merge pull request #4467 from DSpace/dependabot/npm_and_yarn/dspace-8_x/axios-1.10.0 2025-06-17 07:04:17 +03:00
dependabot[bot]
d6cccf1c1d Bump axios from 1.9.0 to 1.10.0
Bumps [axios](https://github.com/axios/axios) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.10.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 05:41:28 +00:00
dependabot[bot]
7f3b3370d9 Bump axios from 1.9.0 to 1.10.0
Bumps [axios](https://github.com/axios/axios) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.10.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 05:40:32 +00:00
dependabot[bot]
5d8785e804 Bump sass from 1.89.1 to 1.89.2 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.89.1 to 1.89.2
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.89.1...1.89.2)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.89.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 05:39:45 +00:00
dependabot[bot]
05d0743c0e Bump postcss from 8.5.4 to 8.5.5 in the postcss group
Bumps the postcss group with 1 update: [postcss](https://github.com/postcss/postcss).


Updates `postcss` from 8.5.4 to 8.5.5
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.4...8.5.5)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: postcss
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 05:39:27 +00:00
dependabot[bot]
d56119793f Bump postcss from 8.5.4 to 8.5.5 in the postcss group
Bumps the postcss group with 1 update: [postcss](https://github.com/postcss/postcss).


Updates `postcss` from 8.5.4 to 8.5.5
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.4...8.5.5)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: postcss
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 05:38:56 +00:00
Tim Donohue
f525461099 Merge pull request #4451 from DSpace/backport-4434-to-dspace-8_x
[Port dspace-8_x] Resolve field instance models using index when filtering errors
2025-06-12 12:47:50 -05:00
Tim Donohue
7677f2941d Merge pull request #4450 from DSpace/backport-4434-to-dspace-7_x
[Port dspace-7_x] Resolve field instance models using index when filtering errors
2025-06-12 12:47:31 -05:00
Kim Shepherd
6b38f5c0ac Resolve field instance models using index when filtering errors
(cherry picked from commit d218e22944)
2025-06-12 16:40:45 +00:00
Kim Shepherd
7ef44c5e35 Resolve field instance models using index when filtering errors
(cherry picked from commit d218e22944)
2025-06-12 16:40:39 +00:00
Giuseppe Digilio
a77f98e29e [DURACOM-291] back porting of fix submission section visibility in order to rely on the configured section scope 2025-06-12 15:53:21 +02:00
Alan Orth
5c66bb9d2b Merge pull request #4442 from DSpace/dependabot/npm_and_yarn/dspace-7_x/babel/runtime-7.27.6
Bump @babel/runtime from 7.27.4 to 7.27.6
2025-06-11 12:23:18 +03:00
Alan Orth
7a5cad9ff7 Merge pull request #4443 from DSpace/dependabot/npm_and_yarn/dspace-8_x/babel/runtime-7.27.6
Bump @babel/runtime from 7.27.4 to 7.27.6
2025-06-11 12:22:43 +03:00
dependabot[bot]
76486e285c Bump @babel/runtime from 7.27.4 to 7.27.6
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.27.4 to 7.27.6.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.6/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-version: 7.27.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-09 05:38:51 +00:00
dependabot[bot]
7cc17a5544 Bump @babel/runtime from 7.27.4 to 7.27.6
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.27.4 to 7.27.6.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.6/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-version: 7.27.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-09 05:32:54 +00:00
Joran De Braekeleer
a1ef2e9e84 Merge remote-tracking branch 'upstream/dspace-8_x' into w2p-131442_backport-3888-to-dspace-8_x 2025-06-06 11:01:53 +02:00
Alexandre Vryghem
84ad762b32 Merge branch 'theme-fixes_contribute-7.6' into dspace-8_x 2025-06-05 19:18:13 +02:00
Alexandre Vryghem
d1fdd6110e 117287: Fixed various layout issues
- The unthemed home news didn't stick to the header like the dspace theme
- Impersonate user button has additional margin
- Submission form loading icon is not translatable
- Create resource policy page doesn't have the correct heading

(cherry picked from commit 56e45a9f08)
2025-06-05 19:17:54 +02:00
Alexandre Vryghem
ea81165fc5 Merge branch 'w2p-117573_remove-observable-function-calls-from-template-7.6' into dspace-8_x 2025-06-05 19:06:20 +02:00
nwoodward
c2c23dfa99 lint fixes 2025-06-05 09:53:38 -05:00
nwoodward
8a3a2026da make the default tab for browsing communities and collections configurable 2025-06-05 09:23:26 -05:00
Alan Orth
b7b1e368d6 Merge pull request #4430 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-d83863101d
Bump sass from 1.89.0 to 1.89.1 in the sass group
2025-06-05 08:54:07 +03:00
Alan Orth
c608ba6ea3 Merge pull request #4431 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-d83863101d
Bump sass from 1.89.0 to 1.89.1 in the sass group
2025-06-05 08:53:47 +03:00
dependabot[bot]
2ad5c98a00 Bump sass from 1.89.0 to 1.89.1 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.89.0 to 1.89.1
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.89.0...1.89.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.89.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-04 13:49:32 +00:00
dependabot[bot]
5e8dd3480f Bump sass from 1.89.0 to 1.89.1 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.89.0 to 1.89.1
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.89.0...1.89.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.89.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-04 13:49:29 +00:00
Tim Donohue
fde7e464b0 Merge pull request #4423 from alanorth/zone.js-dep
Pin zone.js dependency for DSpace 8.x
2025-06-04 08:46:59 -05:00
Alan Orth
2956f4ae67 Merge pull request #4428 from DSpace/backport-4076-to-dspace-8_x
[Port dspace-8_x] fix typo in German translation of bitstream.edit.form.description.hint
2025-06-04 14:06:25 +03:00
Alan Orth
f2131ec757 Merge pull request #4427 from DSpace/backport-4076-to-dspace-7_x
[Port dspace-7_x] fix typo in German translation of bitstream.edit.form.description.hint
2025-06-04 14:05:27 +03:00
Sascha Szott
8143114996 fix typo in German translation of bitstream.edit.form.description.hint
(cherry picked from commit c72af8edb5)
2025-06-04 09:52:33 +00:00
Sascha Szott
c52c7e778a fix typo in German translation of bitstream.edit.form.description.hint
(cherry picked from commit c72af8edb5)
2025-06-04 09:52:26 +00:00
Alan Orth
b870c54c83 Merge pull request #4357 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sanitize-html-2.17.0
Bump sanitize-html from 2.16.0 to 2.17.0
2025-06-04 12:39:34 +03:00
Alan Orth
418bf7d4ea Pin zone.js dependency to ~0.14.0
This is a peer dependency of Angular so we should keep it in sync
to avoid dependency conflicts. DSpace 8.x uses Angular 17.x so we
can pin the same version.

See: https://github.com/angular/angular/blob/17.3.x/packages/core/package.json
2025-06-04 09:34:34 +03:00
Alan Orth
f58ab77d5d Merge pull request #4409 from DSpace/dependabot/npm_and_yarn/dspace-7_x/postcss-3f4fa9ea8d
Bump postcss from 8.5.3 to 8.5.4 in the postcss group
2025-06-03 09:07:50 +03:00
Alan Orth
4855772489 Merge pull request #4404 from DSpace/dependabot/npm_and_yarn/dspace-8_x/postcss-3f4fa9ea8d
Bump postcss from 8.5.3 to 8.5.4 in the postcss group
2025-06-03 09:06:47 +03:00
Alan Orth
406b46ba3f Merge pull request #4410 from DSpace/dependabot/npm_and_yarn/dspace-7_x/babel/runtime-7.27.4
Bump @babel/runtime from 7.27.3 to 7.27.4
2025-06-03 09:03:45 +03:00
Alan Orth
bd6a5db73e Merge pull request #4403 from DSpace/dependabot/npm_and_yarn/dspace-8_x/babel/runtime-7.27.4
Bump @babel/runtime from 7.27.3 to 7.27.4
2025-06-03 09:02:49 +03:00
Alexandre Vryghem
9e8bc95acc 129964: Fixed the header role structure being invalid in the custom theme
- Replaced the menubar role from the parent of all the header buttons like lang switch, auth menu & help toggle with toolbar
- Replaced the remaining `<a>` buttons in the header with `<button>` to make them expandable with space
- Fixed accessibility issues flagged by axe DevTools in the user menu dropdown
2025-06-02 15:27:12 +02:00
Alexandre Vryghem
b6448a7caf 129964: Fixed the header role structure being invalid in the custom theme
- Replaced the menubar role from the parent of all the header buttons like lang switch, auth menu & help toggle with toolbar
- Replaced the remaining `<a>` buttons in the header with `<button>` to make them expandable with space
- Fixed accessibility issues flagged by axe DevTools in the user menu dropdown
2025-06-02 13:55:33 +02:00
Joran De Braekeleer
29a13ef518 Merge remote-tracking branch 'upstream/dspace-8_x' into w2p-131442_backport-4335-to-dspace-8_x 2025-06-02 10:28:06 +02:00
dependabot[bot]
8a1daa5cf9 Bump @babel/runtime from 7.27.3 to 7.27.4
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.27.3 to 7.27.4.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.4/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-version: 7.27.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 06:45:45 +00:00
dependabot[bot]
fa9ddefb59 Bump postcss from 8.5.3 to 8.5.4 in the postcss group
Bumps the postcss group with 1 update: [postcss](https://github.com/postcss/postcss).


Updates `postcss` from 8.5.3 to 8.5.4
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.3...8.5.4)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: postcss
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 06:42:07 +00:00
dependabot[bot]
0e12c5bdec Bump postcss from 8.5.3 to 8.5.4 in the postcss group
Bumps the postcss group with 1 update: [postcss](https://github.com/postcss/postcss).


Updates `postcss` from 8.5.3 to 8.5.4
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.3...8.5.4)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: postcss
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 05:56:45 +00:00
dependabot[bot]
2699e81684 Bump @babel/runtime from 7.27.3 to 7.27.4
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.27.3 to 7.27.4.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.4/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-version: 7.27.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 05:53:14 +00:00
Alan Orth
8a1ca84d91 Merge pull request #4402 from DSpace/backport-2774-to-dspace-7_x
[Port dspace-7_x] German translation improvements in cookie consent dialog
2025-06-01 17:42:12 +03:00
Tim Donohue
06e30050a4 Merge pull request #4384 from atmire/w2p-131441_backport-3065-7.6
[Port dspace-7_x] Made AdminSearchPageComponent themeable
2025-05-30 10:38:39 -05:00
Tim Donohue
46394d4bba Merge pull request #4385 from atmire/w2p-131441_backport-3065-8
[Port dspace-8_x] Made AdminSearchPageComponent themeable
2025-05-30 10:16:56 -05:00
abhinav
3f413af65e fix theming for DS8 2025-05-30 11:58:23 +02:00
Alexandre Vryghem
bb17ce42ed Fixed search facet deadlock
Also fixed minor issue in MetadataService, but this doesn't cause any issues in the current code

(cherry picked from commit 446280b59a)
2025-05-30 11:44:01 +02:00
Tim Donohue
4b7c95a766 Merge pull request #4373 from DSpace/dependabot/npm_and_yarn/dspace-8_x/testing-ff22ddd0c9
Bump ng-mocks from 14.13.4 to 14.13.5 in the testing group
2025-05-29 08:50:26 -05:00
Tim Donohue
ffda0d6521 Merge pull request #4379 from DSpace/dependabot/npm_and_yarn/dspace-7_x/testing-ff22ddd0c9
Bump ng-mocks from 14.13.4 to 14.13.5 in the testing group
2025-05-29 08:49:39 -05:00
Alan Orth
1c6e54909e Merge pull request #4376 from DSpace/dependabot/npm_and_yarn/dspace-8_x/zone.js-0.15.1
Bump zone.js from 0.15.0 to 0.15.1
2025-05-29 08:55:05 +03:00
Sascha Szott
a692a6762d added german translations
(cherry picked from commit 4ca1edfc63)
2025-05-29 05:53:54 +00:00
Sascha Szott
2687ded0df added German translations
(cherry picked from commit f12fae3865)
2025-05-29 05:53:54 +00:00
Sascha Szott
e387be1e10 minor translation improvement: use plural in German translation
(cherry picked from commit 027a5ec5f0)
2025-05-29 05:53:54 +00:00
Alan Orth
aca2b3370a Merge pull request #4393 from DSpace/dependabot/npm_and_yarn/dspace-8_x/babel/runtime-7.27.3
Bump @babel/runtime from 7.27.1 to 7.27.3
2025-05-29 08:42:56 +03:00
Alan Orth
b0e56c4129 Merge pull request #4398 from DSpace/dependabot/npm_and_yarn/dspace-7_x/babel/runtime-7.27.3
Bump @babel/runtime from 7.27.1 to 7.27.3
2025-05-29 08:39:56 +03:00
dependabot[bot]
9a11618d11 Bump sanitize-html from 2.16.0 to 2.17.0
Bumps [sanitize-html](https://github.com/apostrophecms/sanitize-html) from 2.16.0 to 2.17.0.
- [Changelog](https://github.com/apostrophecms/sanitize-html/blob/main/CHANGELOG.md)
- [Commits](https://github.com/apostrophecms/sanitize-html/compare/2.16.0...2.17.0)

---
updated-dependencies:
- dependency-name: sanitize-html
  dependency-version: 2.17.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-28 21:27:11 +00:00
Tim Donohue
cfec1c8b8a Merge pull request #4375 from DSpace/dependabot/npm_and_yarn/dspace-8_x/types/lodash-4.17.17
Bump @types/lodash from 4.17.16 to 4.17.17
2025-05-28 16:10:26 -05:00
Tim Donohue
5b47170b6d Merge pull request #4380 from DSpace/dependabot/npm_and_yarn/dspace-7_x/types/lodash-4.17.17
Bump @types/lodash from 4.17.16 to 4.17.17
2025-05-28 16:10:09 -05:00
Tim Donohue
8208f886f2 Merge pull request #4374 from DSpace/dependabot/npm_and_yarn/dspace-8_x/webpack-51a062295f
Bump webpack from 5.99.8 to 5.99.9 in the webpack group
2025-05-28 15:50:30 -05:00
dependabot[bot]
983551aea8 Bump @babel/runtime from 7.27.1 to 7.27.3
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.27.1 to 7.27.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.3/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-version: 7.27.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-28 18:33:15 +00:00
dependabot[bot]
af29e5e3df Bump webpack from 5.99.8 to 5.99.9 in the webpack group
Bumps the webpack group with 1 update: [webpack](https://github.com/webpack/webpack).


Updates `webpack` from 5.99.8 to 5.99.9
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.99.8...v5.99.9)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.99.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: webpack
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-28 18:12:53 +00:00
dependabot[bot]
5de271ef94 Bump ng-mocks from 14.13.4 to 14.13.5 in the testing group
Bumps the testing group with 1 update: [ng-mocks](https://github.com/help-me-mom/ng-mocks).


Updates `ng-mocks` from 14.13.4 to 14.13.5
- [Release notes](https://github.com/help-me-mom/ng-mocks/releases)
- [Changelog](https://github.com/help-me-mom/ng-mocks/blob/master/CHANGELOG.md)
- [Commits](https://github.com/help-me-mom/ng-mocks/compare/v14.13.4...v14.13.5)

---
updated-dependencies:
- dependency-name: ng-mocks
  dependency-version: 14.13.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-28 18:08:42 +00:00
dependabot[bot]
1727acab33 Bump ng-mocks from 14.13.4 to 14.13.5 in the testing group
Bumps the testing group with 1 update: [ng-mocks](https://github.com/help-me-mom/ng-mocks).


Updates `ng-mocks` from 14.13.4 to 14.13.5
- [Release notes](https://github.com/help-me-mom/ng-mocks/releases)
- [Changelog](https://github.com/help-me-mom/ng-mocks/blob/master/CHANGELOG.md)
- [Commits](https://github.com/help-me-mom/ng-mocks/compare/v14.13.4...v14.13.5)

---
updated-dependencies:
- dependency-name: ng-mocks
  dependency-version: 14.13.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-28 18:08:28 +00:00
dependabot[bot]
fb28098ece Bump @babel/runtime from 7.27.1 to 7.27.3
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.27.1 to 7.27.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.3/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-version: 7.27.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-28 18:07:01 +00:00
Joran De Braekeleer
bf585e77c3 Merge remote-tracking branch 'upstream/dspace-7_x' into w2p-131442_backport-4335-to-dspace-7_x 2025-05-28 18:02:40 +02:00
Tim Donohue
a226502c72 Merge pull request #4387 from atmire/w2p-127655_fix-submission-form-getting-stuck-in-loop_contribute-7.6
[Port dspace-7_x] Fix infinite loading submission forms
2025-05-27 16:43:54 -05:00
Tim Donohue
83d5400c1c Merge pull request #4388 from atmire/backport-4060-submission-form-getting-stuck-in-loop-contribute-8
[Port dspace-8_x] Fix infinite loading submission forms
2025-05-27 16:41:55 -05:00
Tim Donohue
4f79574a76 Merge pull request #4383 from atmire/w2p-130424_impossible-to-add-new-values-for-fields-without-qualifiers_contribute-7.6
[Port dspace-7_x] Fix unqualified metadata field validation in Edit Metadata tab by sorting fields in validation request
2025-05-27 14:55:33 -05:00
Tim Donohue
7c45c78082 Merge pull request #4370 from atmire/w2p-130424_impossible-to-add-new-values-for-fields-without-qualifiers_contribute-8
[Port dspace-8_x] Fix unqualified metadata field validation in Edit Metadata tab by sorting fields in validation request
2025-05-27 14:53:58 -05:00
frabacche
cb0ac0c9e5 fix e2e test 18x aria on <ul> html tag
(cherry picked from commit e6389a73df)
2025-05-26 13:18:46 +02:00
abhinav
c38711d8a9 Merge remote-tracking branch 'alex-upstream/w2p-127655_fix-submission-form-getting-stuck-in-loop_contribute-7.6' into backport-4060-submission-form-getting-stuck-in-loop-contribute-8 2025-05-26 11:44:13 +02:00
abhinav
d3876c7c0a Merge branch 'dspace-7_x' into w2p-127655_fix-submission-form-getting-stuck-in-loop_contribute-7.6 2025-05-26 11:23:24 +02:00
abhinav
b18260f8ae Merge remote-tracking branch 'alex-upstream/w2p-115051_themed-admin-search-page_contribute-7.4' into w2p-131441_backport-3065-8 2025-05-26 11:03:50 +02:00
Alexandre Vryghem
db119e4118 Fixed search facet deadlock
Also fixed minor issue in MetadataService, but this doesn't cause any issues in the current code

(cherry picked from commit 446280b59a)
2025-05-26 10:50:48 +02:00
abhinav
0c9f8c02f6 Merge remote-tracking branch 'alex-upstream/w2p-115051_themed-admin-search-page_contribute-7.4' into w2p-131441_backport-3065-7.6 2025-05-26 10:45:44 +02:00
dependabot[bot]
e42d4228ed Bump @types/lodash from 4.17.16 to 4.17.17
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.16 to 4.17.17.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-version: 4.17.17
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-26 02:53:33 +00:00
dependabot[bot]
97bf3c2b79 Bump zone.js from 0.15.0 to 0.15.1
Bumps [zone.js](https://github.com/angular/angular/tree/HEAD/packages/zone.js) from 0.15.0 to 0.15.1.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/packages/zone.js/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/zone.js-0.15.1/packages/zone.js)

---
updated-dependencies:
- dependency-name: zone.js
  dependency-version: 0.15.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-26 02:21:45 +00:00
dependabot[bot]
cd4de478bc Bump @types/lodash from 4.17.16 to 4.17.17
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.16 to 4.17.17.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-version: 4.17.17
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-26 02:21:21 +00:00
Kanász-Nagy Zoltán
72a3872b51 QREPO-0 adding missing translations and correcting existing ones 2025-05-23 21:29:57 +02:00
abhinav
38812a3e04 Merge branch 'dspace-7_x' into w2p-130424_impossible-to-add-new-values-for-fields-without-qualifiers_contribute-7.6 2025-05-23 18:11:40 +02:00
abhinav
65c47fbdfc Merge remote-tracking branch 'alex-upstream/w2p-130424_impossible-to-add-new-values-for-fields-without-qualifiers_contribute-7.6' into w2p-130424_impossible-to-add-new-values-for-fields-without-qualifiers_contribute-8 2025-05-23 17:59:56 +02:00
Tim Donohue
eb6759817f Merge pull request #4366 from DSpace/backport-4364-to-dspace-8_x
[Port dspace-8_x] Remove stray comma from `config.example.yml` which makes example config invalid
2025-05-22 13:58:53 -05:00
Tim Donohue
1aaa20ec73 Merge pull request #4365 from DSpace/backport-4364-to-dspace-7_x
[Port dspace-7_x] Remove stray comma from `config.example.yml` which makes example config invalid
2025-05-22 13:58:46 -05:00
Tim Donohue
d2cc002af0 Remove stray comma
(cherry picked from commit bcd2081ee3)
2025-05-22 17:05:17 +00:00
Tim Donohue
e7709b8091 Remove stray comma
(cherry picked from commit bcd2081ee3)
2025-05-22 17:05:11 +00:00
Tim Donohue
09182f9cee Merge pull request #4361 from DSpace/backport-4360-to-dspace-8_x
[Port dspace-8_x] Fix and simplify submission section 'enabled' logic
2025-05-21 15:53:05 -05:00
Kim Shepherd
3ee1983426 Fix and simplify submission section 'enabled' logic
Fixes cases where a section needs to be disabled on save/init
because it is empty and non-mandatory

(cherry picked from commit f77dfa37da)
2025-05-21 20:13:11 +00:00
Tim Donohue
ed4dfdad1d Merge pull request #4348 from DSpace/dependabot/npm_and_yarn/dspace-8_x/eslint-1ccb09f07e
Bump eslint-plugin-jsonc from 2.20.0 to 2.20.1 in the eslint group
2025-05-19 11:07:45 -05:00
Tim Donohue
6971ac98c2 Merge pull request #4354 from DSpace/dependabot/npm_and_yarn/dspace-7_x/eslint-1ccb09f07e
Bump eslint-plugin-jsonc from 2.20.0 to 2.20.1 in the eslint group
2025-05-19 11:07:07 -05:00
Tim Donohue
fdeb1d0963 Merge pull request #4349 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-5219375de9
Bump sass from 1.88.0 to 1.89.0 in the sass group
2025-05-19 11:06:13 -05:00
Tim Donohue
280866a58f Merge pull request #4355 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-5219375de9
Bump sass from 1.88.0 to 1.89.0 in the sass group
2025-05-19 11:05:57 -05:00
Tim Donohue
ff95c2303b Merge pull request #4350 from DSpace/dependabot/npm_and_yarn/dspace-8_x/isbot-5.1.28
Bump isbot from 5.1.27 to 5.1.28
2025-05-19 10:23:21 -05:00
Tim Donohue
c8b375d238 Merge pull request #4356 from DSpace/dependabot/npm_and_yarn/dspace-7_x/isbot-5.1.28
Bump isbot from 5.1.27 to 5.1.28
2025-05-19 10:22:32 -05:00
dependabot[bot]
37383acb6b Bump isbot from 5.1.27 to 5.1.28
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.27 to 5.1.28.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.27...v5.1.28)

---
updated-dependencies:
- dependency-name: isbot
  dependency-version: 5.1.28
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-19 03:06:55 +00:00
dependabot[bot]
277eca837e Bump sass from 1.88.0 to 1.89.0 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.88.0 to 1.89.0
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.88.0...1.89.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.89.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-19 03:06:09 +00:00
dependabot[bot]
160f33f98a Bump eslint-plugin-jsonc from 2.20.0 to 2.20.1 in the eslint group
Bumps the eslint group with 1 update: [eslint-plugin-jsonc](https://github.com/ota-meshi/eslint-plugin-jsonc).


Updates `eslint-plugin-jsonc` from 2.20.0 to 2.20.1
- [Release notes](https://github.com/ota-meshi/eslint-plugin-jsonc/releases)
- [Changelog](https://github.com/ota-meshi/eslint-plugin-jsonc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ota-meshi/eslint-plugin-jsonc/compare/v2.20.0...v2.20.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsonc
  dependency-version: 2.20.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: eslint
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-19 03:05:35 +00:00
dependabot[bot]
94097dd636 Bump isbot from 5.1.27 to 5.1.28
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.27 to 5.1.28.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.27...v5.1.28)

---
updated-dependencies:
- dependency-name: isbot
  dependency-version: 5.1.28
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-19 02:34:29 +00:00
dependabot[bot]
5c5aef86c6 Bump sass from 1.88.0 to 1.89.0 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.88.0 to 1.89.0
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.88.0...1.89.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.89.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-19 02:34:10 +00:00
dependabot[bot]
8c38380bbd Bump eslint-plugin-jsonc from 2.20.0 to 2.20.1 in the eslint group
Bumps the eslint group with 1 update: [eslint-plugin-jsonc](https://github.com/ota-meshi/eslint-plugin-jsonc).


Updates `eslint-plugin-jsonc` from 2.20.0 to 2.20.1
- [Release notes](https://github.com/ota-meshi/eslint-plugin-jsonc/releases)
- [Changelog](https://github.com/ota-meshi/eslint-plugin-jsonc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ota-meshi/eslint-plugin-jsonc/compare/v2.20.0...v2.20.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsonc
  dependency-version: 2.20.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: eslint
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-19 02:33:36 +00:00
Tim Donohue
c2246d50fe Merge pull request #4345 from 4Science/task/dspace-8_x/DURACOM-226
[Port dspace-8_x] fix submission footer wrapping on medium screens
2025-05-16 11:41:28 -05:00
Andrea Barbasso
c9338ad362 [DURACOM-226] fix submission footer wrapping on medium screens 2025-05-16 12:48:59 +02:00
Tim Donohue
6e63e8e372 Merge pull request #4343 from DSpace/backport-4341-to-dspace-8_x
[Port dspace-8_x] Use ellipsis for truncatable parts
2025-05-15 15:54:23 -05:00
Tim Donohue
ca92b4cf0e Merge pull request #4342 from DSpace/backport-4341-to-dspace-7_x
[Port dspace-7_x] Use ellipsis for truncatable parts
2025-05-15 15:54:06 -05:00
Andrea Barbasso
3ef7adff79 [CST-19327] use ellipsis for truncatable parts
(cherry picked from commit 6703a07207)
2025-05-15 19:55:50 +00:00
Andrea Barbasso
46b58c369e [CST-19327] use ellipsis for truncatable parts
(cherry picked from commit 6703a07207)
2025-05-15 19:55:45 +00:00
Tim Donohue
c7d5611a4e Merge pull request #4320 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-d0f2b75659
Bump sass from 1.87.0 to 1.88.0 in the sass group
2025-05-14 10:03:01 -05:00
Tim Donohue
a0ebf4af63 Merge pull request #4322 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-d0f2b75659
Bump sass from 1.87.0 to 1.88.0 in the sass group
2025-05-14 10:02:48 -05:00
Alexandre Vryghem
c58b398e43 129964: Restored language button border on focus 2025-05-14 13:49:16 +02:00
Tim Donohue
2428dfeb4b Merge pull request #4337 from DSpace/backport-3373-to-dspace-8_x
[Port dspace-8_x] Adjust the font size of the 'No thumbnails available' text.
2025-05-13 17:34:23 -05:00
Tim Donohue
df2d18b5f1 Merge pull request #4336 from DSpace/backport-3373-to-dspace-7_x
[Port dspace-7_x] Adjust the font size of the 'No thumbnails available' text.
2025-05-13 17:34:16 -05:00
dependabot[bot]
2a5905d7f4 Bump sass from 1.87.0 to 1.88.0 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.87.0 to 1.88.0
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.87.0...1.88.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.88.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-13 22:08:51 +00:00
Tim Donohue
67563e37ff Merge pull request #4321 from DSpace/dependabot/npm_and_yarn/dspace-8_x/webpack-ab0e10ec03
Bump webpack from 5.99.7 to 5.99.8 in the webpack group
2025-05-13 17:05:21 -05:00
DanGastardelli
e579725dfb Adjust thumb text for smaller resolutions
(cherry picked from commit fa723c17a9)
2025-05-13 21:41:26 +00:00
DanGastardelli
490bf758ac Key spacing adjustment
(cherry picked from commit 829d406808)
2025-05-13 21:41:26 +00:00
DanGastardelli
6e9018a01d Adding treatment for the use of the thumb-font-2 class
(cherry picked from commit e06db4cbab)
2025-05-13 21:41:26 +00:00
DanGastardelli
2eed8f13d0 Changed the implementation of changing the text font size when there is no thumbnail.
(cherry picked from commit 3cd5432034)
2025-05-13 21:41:26 +00:00
DanGastardelli
be2bf9897a Adjust the font size of the 'No thumbnails available' text.
(cherry picked from commit c4dfed0e02)
2025-05-13 21:41:26 +00:00
DanGastardelli
1e8c55faf4 Adjust thumb text for smaller resolutions
(cherry picked from commit fa723c17a9)
2025-05-13 21:41:21 +00:00
DanGastardelli
9273c83179 Key spacing adjustment
(cherry picked from commit 829d406808)
2025-05-13 21:41:21 +00:00
DanGastardelli
e06caab25c Adding treatment for the use of the thumb-font-2 class
(cherry picked from commit e06db4cbab)
2025-05-13 21:41:21 +00:00
DanGastardelli
a21db5b887 Changed the implementation of changing the text font size when there is no thumbnail.
(cherry picked from commit 3cd5432034)
2025-05-13 21:41:21 +00:00
DanGastardelli
cae435a5c7 Adjust the font size of the 'No thumbnails available' text.
(cherry picked from commit c4dfed0e02)
2025-05-13 21:41:21 +00:00
Tim Donohue
974e3bf3f3 Merge pull request #4323 from DSpace/dependabot/npm_and_yarn/dspace-7_x/types/sanitize-html-2.16.0
Bump @types/sanitize-html from 2.15.0 to 2.16.0
2025-05-13 14:42:28 -05:00
Tim Donohue
f0ce4b2170 Merge pull request #4314 from oscar-escire/new-dspace-7_x
[Port dspace-7_x] Keyboard 'tab' key navigation improved
2025-05-13 12:08:40 -05:00
Tim Donohue
d6f75af9d3 Merge pull request #4313 from oscar-escire/Issue/4201-DS-8
[Port dspace-8_x] Keyboard 'tab' key navigation improved
2025-05-13 12:02:12 -05:00
Alexandre Vryghem
830be1f15a 129964: Hide duplicate links for keyboard navigators 2025-05-13 18:59:04 +02:00
Alexandre Vryghem
8ff943b084 129964: Made DSO badges more screen-reader friendly
- Added commas between the labels to prevent screen readers from reading it as a sentence
- Added hidden text describing what the badges represent
2025-05-13 18:52:14 +02:00
Tim Donohue
3d7ba529c1 Merge pull request #4333 from tdonohue/port_4326_to_8x
[Port dspace-8_x] Add basic automated tests to ensure common HTTP Return Codes do not break
2025-05-13 11:35:56 -05:00
Tim Donohue
206df7781e Merge pull request #4334 from tdonohue/port_4326_to_7x
[Port dspace-7_x] Add basic automated tests to ensure common HTTP Return Codes do not break
2025-05-13 11:35:48 -05:00
Alexandre Vryghem
545b2ff8a7 130479: Hide no results status when query is empty 2025-05-13 18:30:38 +02:00
wout
163cc75437 130479: using ul > li in recent-item + "Load more ..." to "<a>" element 2025-05-13 18:30:38 +02:00
wout
e9940f4005 130479: add aria-selected to selected language + globe button uses a button element 2025-05-13 18:30:37 +02:00
Tim Donohue
2301a8fd52 Add basic tests to our build to verify correct HTTP return codes for 301, 403, 404 and 500. 2025-05-13 10:59:45 -05:00
Tim Donohue
f9aa721ec8 Merge pull request #4332 from 4Science/task/dspace-7_x/DURACOM-344
[Port dspace-7_x] Remove `ssr.paths` configuration and replace with `ssr.excludePathPatterns` which excludes specific paths from SSR
2025-05-13 10:58:45 -05:00
Tim Donohue
e5047f52ac Add basic tests to our build to verify correct HTTP return codes for 301, 403, 404 and 500. 2025-05-13 09:37:41 -05:00
FrancescoMolinaro
d47baab3a1 [DURACOM-344] fix property name 2025-05-13 16:11:00 +02:00
FrancescoMolinaro
c0e71a0e68 [DURACOM-344] refactor solution to avoid double slashes 2025-05-13 15:41:21 +02:00
FrancescoMolinaro
21ac024423 [DURACOM-344] adapt patterns and example file, fix possible error from YAML 2025-05-13 15:38:42 +02:00
FrancescoMolinaro
ce0f6153b9 [DURACOM-344] Adapt SSR page filtering mechanism to a not allowed list 2025-05-13 15:37:31 +02:00
Tim Donohue
ce44a89f8e Merge pull request #4325 from DSpace/backport-4227-to-dspace-8_x
[Port dspace-8_x] Remove `ssr.paths` configuration and replace with `ssr.excludePathPatterns` which excludes specific paths from SSR
2025-05-12 15:58:45 -05:00
FrancescoMolinaro
5cbec3719b [DURACOM-344] refactor solution to avoid double slashes
(cherry picked from commit c442d35505)
2025-05-12 19:11:55 +00:00
FrancescoMolinaro
d4231e0e3e [DURACOM-344] adapt patterns and example file, fix possible error from YAML
(cherry picked from commit 4c9638150a)
2025-05-12 19:11:55 +00:00
FrancescoMolinaro
4bb7b54be9 [DURACOM-344] Adapt SSR page filtering mechanism to a not allowed list
(cherry picked from commit b1c5460bbb)
2025-05-12 19:11:55 +00:00
dependabot[bot]
cafcee110e Bump @types/sanitize-html from 2.15.0 to 2.16.0
Bumps [@types/sanitize-html](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/sanitize-html) from 2.15.0 to 2.16.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/sanitize-html)

---
updated-dependencies:
- dependency-name: "@types/sanitize-html"
  dependency-version: 2.16.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-12 03:09:54 +00:00
dependabot[bot]
a8fcad7b6a Bump sass from 1.87.0 to 1.88.0 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.87.0 to 1.88.0
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.87.0...1.88.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.88.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-12 03:09:06 +00:00
dependabot[bot]
c6bb829ac2 Bump webpack from 5.99.7 to 5.99.8 in the webpack group
Bumps the webpack group with 1 update: [webpack](https://github.com/webpack/webpack).


Updates `webpack` from 5.99.7 to 5.99.8
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.99.7...v5.99.8)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.99.8
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: webpack
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-12 03:05:11 +00:00
Oscar Chacón
5c446d18f7 fixed accessibility tests on filters 2025-05-09 15:56:13 -06:00
Oscar Chacón
cd0aa134f8 fixed some dynamic params over <a> components 2025-05-09 15:07:55 -06:00
Oscar Chacón
499b49e6bf Merge branch 'dspace-8_x' into Issue/4201-DS-8 2025-05-09 13:35:40 -06:00
Oscar Chacón
9aed649160 improved "tab" navigation in safari 2025-05-09 13:27:29 -06:00
Tim Donohue
d6c8be6983 Merge pull request #4312 from DSpace/backport-3513-to-dspace-8_x
[Port dspace-8_x] Fix navbar wrapping on medium screens
2025-05-09 13:37:59 -05:00
Andrea Barbasso
4a4c01b80b [DSC-1847][DSC-1966] fix navbar ui error
(cherry picked from commit 49b329edb1)
2025-05-09 17:33:37 +00:00
Tim Donohue
40e213f926 Merge pull request #4297 from DSpace/dependabot/npm_and_yarn/dspace-8_x/angular-06b757f997
Bump the angular group with 3 updates
2025-05-08 16:30:29 -05:00
Tim Donohue
fbbf16f387 Merge pull request #4250 from atmire/fix-embargoed-thumbnails_contribute-7.6
[Port dspace-7_x] Show restricted thumbnails to users with access rights
2025-05-08 16:09:07 -05:00
Tim Donohue
d92aeb6d09 Merge pull request #4251 from atmire/fix-embargoed-thumbnails_contribute-8.1
[Port dspace-8_x] Show restricted thumbnails to users with access rights
2025-05-08 16:08:52 -05:00
Tim Donohue
6148a66ab6 Merge pull request #4308 from DSpace/backport-4288-to-dspace-8_x
[Port dspace-8_x] Bitstream upload failure during the workflow editing process when impersonating an editor
2025-05-08 08:43:46 -05:00
Art Lowel
484befafc3 fix lint issues 2025-05-08 12:07:07 +02:00
Art Lowel
12a3b4f846 always use thumbnail component for files not supported by the media viewer, and switch to themed version of thumbnail component 2025-05-08 11:34:45 +02:00
Art Lowel
283b345cdc always use thumbnail component for files not supported by the media viewer, and switch to themed version of thumbnail component 2025-05-08 11:26:14 +02:00
Art Lowel
9e8c0dc262 always use thumbnail component for files not supported by the media viewer, and switch to themed version of thumbnail component 2025-05-08 11:20:44 +02:00
Oscar Chacón
fb6626904a improved "tab" navigation on DSpace 8 2025-05-07 22:19:41 -06:00
Alexandre Vryghem
da6ace1882 130424: Fix validation on the edit metadata tab sometimes wrongly displaying an error message
This only happens when the request that validates the metadata field doesn't return the field with qualifier null on the first page
2025-05-08 01:48:52 +02:00
Tim Donohue
aaa4b910e2 Merge pull request #4307 from DSpace/backport-4288-to-dspace-7_x
[Port dspace-7_x] Bitstream upload failure during the workflow editing process when impersonating an editor
2025-05-07 17:10:02 -05:00
Adamo
577d241379 [DURACOM-312] lint fix
(cherry picked from commit c68e5a181d)
2025-05-07 21:42:20 +00:00
Adamo
0c564cb9c2 [DURACOM-312] set the X-On-Behalf-Of header with impersonatingID in FileUploader.
(cherry picked from commit 727bcdc2cb23ae7fcff1d9ddfa794f872f1d1b8c)
(cherry picked from commit 0574c8ed98)
2025-05-07 21:42:20 +00:00
Adamo
0439d07374 [DURACOM-312] set the newly created impersonatingID filed in UploaderOptions.
(cherry picked from commit c70fe184208805be8657d4373f50f193e2c6e85f)
(cherry picked from commit 70c6af3630)
2025-05-07 21:42:20 +00:00
Adamo
5792c4f32d [DURACOM-312] updated UploaderOptions to include impersonatingID.
(cherry picked from commit 2c79be1456c753665e27b58563e56accc87b0383)
(cherry picked from commit 4b0ab8161f)
2025-05-07 21:42:20 +00:00
Adamo
926abe6241 [DURACOM-312] lint fix
(cherry picked from commit c68e5a181d)
2025-05-07 21:42:14 +00:00
Adamo
97fd42a2e1 [DURACOM-312] set the X-On-Behalf-Of header with impersonatingID in FileUploader.
(cherry picked from commit 727bcdc2cb23ae7fcff1d9ddfa794f872f1d1b8c)
(cherry picked from commit 0574c8ed98)
2025-05-07 21:42:14 +00:00
Adamo
3cff971297 [DURACOM-312] set the newly created impersonatingID filed in UploaderOptions.
(cherry picked from commit c70fe184208805be8657d4373f50f193e2c6e85f)
(cherry picked from commit 70c6af3630)
2025-05-07 21:42:14 +00:00
Adamo
49b27b5bc0 [DURACOM-312] updated UploaderOptions to include impersonatingID.
(cherry picked from commit 2c79be1456c753665e27b58563e56accc87b0383)
(cherry picked from commit 4b0ab8161f)
2025-05-07 21:42:14 +00:00
Tim Donohue
f9f3d186c5 Merge pull request #4305 from 4Science/task/dspace-7_x/DURACOM-326
[Port dspace-7_x] [DURACOM-326] fix possible issue on missing value for eperson patch #4289
2025-05-07 09:19:27 -05:00
FrancescoMolinaro
05e1fc3505 [DURACOM-326] fix possible issue on missing value for eperson patch 2025-05-07 14:36:26 +02:00
Tim Donohue
4fa6a7e7df Merge pull request #4299 from DSpace/dependabot/npm_and_yarn/dspace-8_x/core-js-3.42.0
Bump core-js from 3.41.0 to 3.42.0
2025-05-06 17:07:23 -05:00
Tim Donohue
3635bf40fe Merge pull request #4296 from DSpace/dependabot/npm_and_yarn/dspace-7_x/core-js-3.42.0
Bump core-js from 3.41.0 to 3.42.0
2025-05-06 17:07:06 -05:00
Art Lowel
c222c446b5 don't show the loading animation when src is set to null 2025-05-06 14:59:15 +02:00
Art Lowel
70d1e499c1 don't show the loading animation when src is set to null 2025-05-06 14:58:53 +02:00
Art Lowel
a7bcddf597 fix issue where thumbnail would sometimes keep loading indefinitely 2025-05-06 14:41:50 +02:00
Art Lowel
e40a44c5ac fix issue where thumbnail would sometimes keep loading indefinitely 2025-05-06 14:38:45 +02:00
Alexandre Vryghem
3d32715d25 127655: Fixed getFirstDataDefinition not always returning a correct SubmitDataResponseDefinitionObject, leading to an infinite loading screen
- Also fixed an issue where the collection switcher could accidentally show the old collection name instead of the new one
- Also updated the WorkspaceItemPageResolver & WorkflowItemPageResolver to embed the collection to use fewer requests
2025-05-06 14:15:34 +02:00
dependabot[bot]
1683905053 Bump the angular group with 3 updates
Bumps the angular group with 3 updates: [@angular/ssr](https://github.com/angular/angular-cli), [@angular-devkit/build-angular](https://github.com/angular/angular-cli) and [@angular/cli](https://github.com/angular/angular-cli).


Updates `@angular/ssr` from 17.3.16 to 17.3.17
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/17.3.16...17.3.17)

Updates `@angular-devkit/build-angular` from 17.3.16 to 17.3.17
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/17.3.16...17.3.17)

Updates `@angular/cli` from 17.3.16 to 17.3.17
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/17.3.16...17.3.17)

---
updated-dependencies:
- dependency-name: "@angular/ssr"
  dependency-version: 17.3.17
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular-devkit/build-angular"
  dependency-version: 17.3.17
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/cli"
  dependency-version: 17.3.17
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-06 04:55:01 +00:00
Alan Orth
dbdf84fc15 Merge pull request #4298 from DSpace/dependabot/npm_and_yarn/dspace-8_x/babel/runtime-7.27.1
Bump @babel/runtime from 7.27.0 to 7.27.1
2025-05-06 07:51:42 +03:00
Alan Orth
498fad9e76 Merge pull request #4295 from DSpace/dependabot/npm_and_yarn/dspace-7_x/babel/runtime-7.27.1
Bump @babel/runtime from 7.27.0 to 7.27.1
2025-05-06 07:50:55 +03:00
Alexandre Vryghem
e9061a46b6 117287: Fixed broken pagination on resource policy page 2025-05-06 00:49:01 +02:00
Tim Donohue
25004d3578 Merge pull request #4301 from DSpace/backport-4289-to-dspace-8_x
[Port dspace-8_x] [DURACOM-326] fix possible issue on missing value for eperson patch
2025-05-05 12:17:36 -05:00
FrancescoMolinaro
d02c06d8db [DURACOM-326] fix possible issue on missing value for eperson patch
(cherry picked from commit 7b9cd73ee0)
2025-05-05 16:49:25 +00:00
dependabot[bot]
dd4c736d5e Bump core-js from 3.41.0 to 3.42.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.41.0 to 3.42.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.42.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-version: 3.42.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-05 03:25:25 +00:00
dependabot[bot]
3d95a7138b Bump @babel/runtime from 7.27.0 to 7.27.1
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.27.0 to 7.27.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.1/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-version: 7.27.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-05 03:24:51 +00:00
dependabot[bot]
a1d391576e Bump core-js from 3.41.0 to 3.42.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.41.0 to 3.42.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.42.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-version: 3.42.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-05 02:46:13 +00:00
dependabot[bot]
d985bfa091 Bump @babel/runtime from 7.27.0 to 7.27.1
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.27.0 to 7.27.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.1/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-version: 7.27.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-05 02:45:34 +00:00
Alexandre Vryghem
62f15668b6 122464: Fixed a memory leak when initComponentInstance is called multiple times 2025-05-02 17:11:48 +02:00
Tim Donohue
4eb827c089 Merge pull request #4286 from tdonohue/port_4282_to_7x
[Port dspace-7_x] Fixed Missing Tags in Import Popup from External Sources - 4220
2025-05-01 12:59:42 -05:00
Tim Donohue
d95974a042 Merge pull request #4285 from tdonohue/port_4282_to_8x
[Port dspace-8_x] Fixed Missing Tags in Import Popup from External Sources - 4220
2025-05-01 12:59:33 -05:00
guillermo2519
43db1731ec Fixed Missing Tags in Import Popup from External Sources - 4220 2025-05-01 12:21:29 -05:00
guillermo2519
eeb4009664 Fixed Missing Tags in Import Popup from External Sources - 4220 2025-05-01 12:18:44 -05:00
Tim Donohue
e2b72201b2 Merge pull request #4258 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-f1c32079c7
Bump sass from 1.86.3 to 1.87.0 in the sass group
2025-05-01 10:04:10 -05:00
Tim Donohue
78b230b82f Merge pull request #4263 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-f1c32079c7
Bump sass from 1.86.3 to 1.87.0 in the sass group
2025-05-01 10:03:49 -05:00
Tim Donohue
a1cbc7c83e Merge pull request #4265 from DSpace/dependabot/npm_and_yarn/dspace-8_x/axios-1.9.0
Bump axios from 1.8.4 to 1.9.0
2025-04-30 17:18:33 -05:00
Tim Donohue
34248186e8 Merge pull request #4260 from DSpace/dependabot/npm_and_yarn/dspace-7_x/axios-1.9.0
Bump axios from 1.8.4 to 1.9.0
2025-04-30 17:18:15 -05:00
Tim Donohue
977a6334b6 Merge pull request #4272 from the-library-code/de_language_updates-8_x
German de.json5 additions, fixes and updates (port of https://github.com/DSpace/dspace-angular/pull/3980)
2025-04-30 13:40:35 -05:00
Tim Donohue
9dca838f25 Merge pull request #4281 from atmire/w2p-130484_bitstreams-tables-keep-being-duplicated-7_x
[Port dspace-7_x] Fix bitstream tables being duplicated
2025-04-30 11:26:43 -05:00
kshepherd
ca61d55c03 Merge pull request #4280 from atmire/w2p-130484_bitstreams-tables-keep-being-duplicated-8_x
[Port dspace-8_x] Fix bitstream tables being duplicated
2025-04-30 16:54:49 +02:00
Andreas Awouters
ae23e68d12 130484: Filter new bundles 2025-04-30 15:51:57 +02:00
Andreas Awouters
2b2aebffd9 130484: Filter new bundles 2025-04-30 15:50:47 +02:00
Alexandre Vryghem
dc8b10593c 117287: Removed remaining observable function calls from the HTML templates 2025-04-30 15:37:06 +02:00
Andreas Awouters
501ccfea1b 130484: Correctly update the 'showLoadMoreLink$' observable 2025-04-30 14:15:52 +02:00
Andreas Awouters
02be3e0ad5 130484: Only add bundles when they are missing from the subject 2025-04-30 14:15:03 +02:00
Andreas Awouters
50f7ebf1b9 130484: Correctly update the 'showLoadMoreLink$' observable 2025-04-30 14:08:37 +02:00
Andreas Awouters
7f5000f840 130484: Only add bundles when they are missing from the subject 2025-04-30 13:42:51 +02:00
Alexandre Vryghem
d34dafd838 119276: Added tests to prove that cached stale requests are not emitted
Also cleaned up test class

(cherry picked from commit 58ff240c05)
2025-04-29 18:58:02 +00:00
Alexandre Vryghem
85610d4eb6 119276: Fixed search service first emitting cached stale values instead of waiting for non-stale response
This was problematic for the places that used getFist operators. This is because they only emit data once, and the first value could be the old cached value

(cherry picked from commit edfaee6aab)
2025-04-29 18:58:01 +00:00
Yannick Paulsen
2ee74041a0 Translation and typo corrections 2025-04-29 16:35:38 +02:00
Yannick Paulsen
e2a06f8a73 Translation additions, fixes and updates for German message catalogue
Made with results of the i18n-sync tool against en.json5
2025-04-29 12:08:39 +02:00
Kristof De Langhe
c1bd65e8c6 127655: avoid nullpointer 2025-04-29 10:46:45 +02:00
Kristof De Langhe
0dabc8ed8f 127655: refactor to use buildFromRequestUUID 2025-04-28 17:47:17 +02:00
dependabot[bot]
fce9382260 Bump sass from 1.86.3 to 1.87.0 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.86.3 to 1.87.0
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.86.3...1.87.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.87.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-28 15:32:58 +00:00
Tim Donohue
a4c77ea51e Merge pull request #4264 from DSpace/dependabot/npm_and_yarn/dspace-8_x/webpack-cee3a23860
Bump webpack from 5.99.6 to 5.99.7 in the webpack group
2025-04-28 10:17:09 -05:00
Tim Donohue
ad93c22fb8 Merge pull request #4266 from DSpace/dependabot/npm_and_yarn/dspace-8_x/isbot-5.1.27
Bump isbot from 5.1.26 to 5.1.27
2025-04-28 10:16:32 -05:00
Tim Donohue
da12147043 Merge pull request #4259 from DSpace/dependabot/npm_and_yarn/dspace-7_x/isbot-5.1.27
Bump isbot from 5.1.26 to 5.1.27
2025-04-28 10:16:16 -05:00
Kristof De Langhe
99e8c1044c 127655: Submission get data stale re-request 2025-04-28 15:15:26 +02:00
Kristof De Langhe
287d35cb26 127655: Fix submission infinite loading 2025-04-28 13:04:44 +02:00
dependabot[bot]
7ad05559b7 Bump isbot from 5.1.26 to 5.1.27
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.26 to 5.1.27.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.26...v5.1.27)

---
updated-dependencies:
- dependency-name: isbot
  dependency-version: 5.1.27
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-28 03:04:59 +00:00
dependabot[bot]
4e538447eb Bump axios from 1.8.4 to 1.9.0
Bumps [axios](https://github.com/axios/axios) from 1.8.4 to 1.9.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.8.4...v1.9.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-28 03:04:49 +00:00
dependabot[bot]
783d0add3a Bump webpack from 5.99.6 to 5.99.7 in the webpack group
Bumps the webpack group with 1 update: [webpack](https://github.com/webpack/webpack).


Updates `webpack` from 5.99.6 to 5.99.7
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.99.6...v5.99.7)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.99.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: webpack
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-28 03:04:10 +00:00
dependabot[bot]
15a8008869 Bump axios from 1.8.4 to 1.9.0
Bumps [axios](https://github.com/axios/axios) from 1.8.4 to 1.9.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.8.4...v1.9.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-28 02:45:21 +00:00
dependabot[bot]
e35adee7f8 Bump isbot from 5.1.26 to 5.1.27
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.26 to 5.1.27.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.26...v5.1.27)

---
updated-dependencies:
- dependency-name: isbot
  dependency-version: 5.1.27
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-28 02:45:12 +00:00
dependabot[bot]
ee3154c069 Bump sass from 1.86.3 to 1.87.0 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.86.3 to 1.87.0
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.86.3...1.87.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-version: 1.87.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-28 02:44:10 +00:00
Tim Donohue
b491ed3c27 Merge pull request #4253 from tdonohue/port_4212_to_7x
[Port dspace-7_x] Fix: prevent bitstream format cache issue by disabling cached version
2025-04-25 17:15:38 -05:00
Tim Donohue
d3c1f93215 Merge pull request #4252 from DSpace/backport-4212-to-dspace-8_x
[Port dspace-8_x] Fix: prevent bitstream format cache issue by disabling cached version
2025-04-25 17:15:31 -05:00
Jesiel Viana
b184db7a99 fix unit tests for bitstream-data.service.ts 2025-04-25 16:47:58 -05:00
Jesiel Viana
eac787f1f4 fix: invalidate cache only for the modified bitstream 2025-04-25 16:45:58 -05:00
Jesiel Viana
8dbdb27c67 fix: prevent bitstream format cache issue by disabling cached version 2025-04-25 16:45:43 -05:00
Jesiel Viana
2787baa176 fix unit tests for bitstream-data.service.ts
(cherry picked from commit bb536192c2)
2025-04-25 21:43:03 +00:00
Jesiel Viana
416bfedc66 fix: invalidate cache only for the modified bitstream
(cherry picked from commit 4f48f39f7b)
2025-04-25 21:43:03 +00:00
Jesiel Viana
a7a7fa5511 fix: prevent bitstream format cache issue by disabling cached version
(cherry picked from commit 6001652101)
2025-04-25 21:43:03 +00:00
Tim Donohue
02f30ab331 Merge pull request #4247 from DSpace/backport-4243-to-dspace-7_x
[Port dspace-7_x] Add translation keys for journal submission volume lookup
2025-04-25 12:23:38 -05:00
Tim Donohue
535653fff5 Merge pull request #4248 from DSpace/backport-4243-to-dspace-8_x
[Port dspace-8_x] Add translation keys for journal submission volume lookup
2025-04-25 12:23:29 -05:00
Joran De Braekeleer
7088d78b93 130405: Add translations for journal submission volume lookup
(cherry picked from commit fef16bca14)
2025-04-25 15:31:48 +00:00
Joran De Braekeleer
523c13ff3d 130405: Add translations for journal submission volume lookup
(cherry picked from commit fef16bca14)
2025-04-25 15:31:43 +00:00
Art Lowel
54ed550f4a Merge branch 'w2p-116728_removed-unnecessary-ngvars_contribute-7.6' into fix-embargoed-thumbnails_contribute-8.1 2025-04-25 16:18:21 +02:00
Art Lowel
1ddd248d0e Merge remote-tracking branch 'upstream/dspace-7_x' into fix-embargoed-thumbnails_contribute-7.6 2025-04-25 15:39:20 +02:00
Art Lowel
11f251755b fix issue where thumnails of embargoed bitstreams wouldn't show up for users with access rights 2025-04-25 14:55:52 +02:00
Tim Donohue
05da2056f9 Merge pull request #4245 from DSpace/backport-4234-to-dspace-8_x
[Port dspace-8_x] [DURACOM-350] fix cache issue after mydspace action
2025-04-24 16:24:16 -05:00
FrancescoMolinaro
32a4c4a070 [DURACOM-350] Fix filter skeleton missing update
(cherry picked from commit 7998d2d8b9)
2025-04-24 20:07:24 +00:00
FrancescoMolinaro
67d71e6da4 [DURACOM-350] prevent unnecessary reload
(cherry picked from commit 1b112dd887)
2025-04-24 20:07:24 +00:00
FrancescoMolinaro
44f46a9a8a [DURACOM-350] fix cache issue after mydspace action
(cherry picked from commit e84af6ab91)
2025-04-24 20:07:23 +00:00
Tim Donohue
7b25b1d63c Merge pull request #4233 from atmire/4099-duplicate-view-events_contibute-7.x
[Port to dspace-7_x] Fix for double view events when using dynamic themes
2025-04-23 17:01:35 -05:00
Tim Donohue
208e7791f1 Merge pull request #4232 from atmire/4099-duplicate-view-events_contibute-8.x
[Port to dspace-8_x] Fix for double view events when using dynamic themes
2025-04-23 16:58:17 -05:00
Tim Donohue
d43730a542 Merge pull request #4237 from DSpace/backport-4167-to-dspace-7_x
[Port dspace-7_x] Fix unable to remove data from a submission form field of type "name"
2025-04-23 13:44:34 -05:00
Tim Donohue
1c1b129068 Merge pull request #4238 from DSpace/backport-3968-to-dspace-7_x
[Port dspace-7_x] Fix - previously entered qualdrop value field is deleted when adding a new (emtpy) line with the same(!) qualifier and then deleting it
2025-04-23 12:53:22 -05:00
Tim Donohue
fcef3c6d60 Merge pull request #4239 from DSpace/backport-3968-to-dspace-8_x
[Port dspace-8_x] Fix - previously entered qualdrop value field is deleted when adding a new (emtpy) line with the same(!) qualifier and then deleting it
2025-04-23 12:53:14 -05:00
VictorDuranEscire
564a0f41a7 Fix - Validate value on remove item for submission form only for qualdrop component
(cherry picked from commit 1e73fa626d)
2025-04-23 16:38:44 +00:00
VictorDuranEscire
ae563442e7 Fix - Validate value on remove item for submission form only for qualdrop component
(cherry picked from commit 1e73fa626d)
2025-04-23 16:38:38 +00:00
abhinav
08d56407ff 129621: Add a not empty check
This check is present in the other event handlers above so adding it here as well.

(cherry picked from commit 0b28789e4f)
2025-04-23 16:07:11 +00:00
Tim Donohue
e9a32721af Merge pull request #4167 from atmire/w2p-129621_submission-form-field-type-name-null-issue_contribute-8.1
Fix unable to remove data from a submission form field of type "name"
2025-04-23 11:06:47 -05:00
lotte
eefc502d8c 129694: fixed lint issues 2025-04-22 14:58:06 +02:00
lotte
8bc2c8768f Merge branch 'dspace-7_x' into 4099-duplicate-view-events_contibute-7.x 2025-04-22 12:30:15 +02:00
lotte
a71b3442ae 129694: resolver fix after merge 2025-04-22 12:29:44 +02:00
lotte
494f0fb987 Merge branch 'w2p-129694_4099-PoC-solution-with-resolvers' into 4099-duplicate-view-events_contibute-8.x 2025-04-22 12:14:20 +02:00
lotte
9a0e4ec107 Merge branch '4099-duplicate-view-events_contibute-7.6.3' into 4099-duplicate-view-events_contibute-7.x 2025-04-22 10:43:32 +02:00
Tim Donohue
3a04ea8f79 Merge pull request #4222 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sanitize-html-2.16.0
Bump sanitize-html from 2.15.0 to 2.16.0
2025-04-21 08:58:16 -05:00
Tim Donohue
5e7309986b Merge pull request #4224 from DSpace/dependabot/npm_and_yarn/dspace-8_x/webpack-753b40408c
Bump webpack from 5.99.5 to 5.99.6 in the webpack group
2025-04-21 08:52:08 -05:00
dependabot[bot]
24899229b2 Bump webpack from 5.99.5 to 5.99.6 in the webpack group
Bumps the webpack group with 1 update: [webpack](https://github.com/webpack/webpack).


Updates `webpack` from 5.99.5 to 5.99.6
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.99.5...v5.99.6)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.99.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: webpack
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-21 03:37:03 +00:00
dependabot[bot]
c272e51aeb Bump sanitize-html from 2.15.0 to 2.16.0
Bumps [sanitize-html](https://github.com/apostrophecms/sanitize-html) from 2.15.0 to 2.16.0.
- [Changelog](https://github.com/apostrophecms/sanitize-html/blob/main/CHANGELOG.md)
- [Commits](https://github.com/apostrophecms/sanitize-html/compare/2.15.0...2.16.0)

---
updated-dependencies:
- dependency-name: sanitize-html
  dependency-version: 2.16.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-21 02:50:44 +00:00
kshepherd
c6a1401f34 Merge pull request #4210 from alanorth/eslint-json5-dspace7
[Port dspace-7_x] Update ESLint configuration for json5 files
2025-04-17 00:44:27 +02:00
Tim Donohue
5382315ca5 Merge pull request #4209 from DSpace/backport-2317-to-dspace-8_x
[Port dspace-8_x] Update ESLint configuration for json5 files
2025-04-16 17:07:31 -05:00
Alan Orth
19c680ebf0 .eslintrc.json: use jsonc/no-irregular-whitespace
The eslint-plugin-jsonc documentation recommends turning ESLint's
own no-irregular-whitespace plugin off for JSON files in favor of
its own jsonc/no-irregular-whitespace plugin.

See: https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-irregular-whitespace.html
2025-04-16 23:24:06 +03:00
Alan Orth
9a025f6610 .eslintrc.json: use plugin:jsonc/recommended-with-json5
The eslint-plugin-jsonc has a recommended configuration for json5.

See: https://ota-meshi.github.io/eslint-plugin-jsonc/user-guide/#usage
2025-04-16 23:21:52 +03:00
Alan Orth
a07b7b1f70 .eslintrc.json: remove second eslint-plugin-jsonc
This seems to have been added twice at some point.

(cherry picked from commit 9896eab6ac)
2025-04-16 19:54:49 +00:00
Alan Orth
4c1220df30 .eslintrc.json: use jsonc/no-irregular-whitespace
The eslint-plugin-jsonc documentation recommends turning ESLint's
own no-irregular-whitespace plugin off for JSON files in favor of
its own jsonc/no-irregular-whitespace plugin.

See: https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-irregular-whitespace.html
(cherry picked from commit 5e8571de80)
2025-04-16 19:54:49 +00:00
Alan Orth
8eb98ce914 .eslintrc.json: use plugin:jsonc/recommended-with-json5
The eslint-plugin-jsonc has a recommended configuration for json5.

See: https://ota-meshi.github.io/eslint-plugin-jsonc/user-guide/#usage
(cherry picked from commit 3a05733256)
2025-04-16 19:54:49 +00:00
Tim Donohue
ac940c1bb2 Merge pull request #4026 from DSpace/dependabot/npm_and_yarn/dspace-7_x/postcss-c120d6abdd
Bump postcss from 8.5.1 to 8.5.3 in the postcss group across 1 directory
2025-04-16 11:47:22 -05:00
Tim Donohue
005655a461 Merge pull request #4182 from DSpace/dependabot/npm_and_yarn/dspace-8_x/http-proxy-middleware-2.0.9
Bump http-proxy-middleware from 2.0.7 to 2.0.9
2025-04-15 14:13:45 -05:00
Tim Donohue
1c4f650ef9 Merge pull request #4186 from DSpace/dependabot/npm_and_yarn/dspace-7_x/http-proxy-middleware-2.0.9
Bump http-proxy-middleware from 2.0.7 to 2.0.9
2025-04-15 14:13:24 -05:00
Tim Donohue
6ef781822d Merge pull request #4150 from DSpace/dependabot/npm_and_yarn/dspace-7_x/multi-02a33f2273
Bump sanitize-html and @types/sanitize-html
2025-04-15 14:10:12 -05:00
Tim Donohue
0115edaa07 Merge pull request #4120 from DSpace/dependabot/npm_and_yarn/dspace-7_x/babel/runtime-7.27.0
Bump @babel/runtime from 7.26.7 to 7.27.0
2025-04-15 14:04:37 -05:00
Tim Donohue
e1430cdf0d Merge pull request #4118 from DSpace/dependabot/npm_and_yarn/dspace-8_x/babel/runtime-7.27.0
Bump @babel/runtime from 7.26.7 to 7.27.0
2025-04-15 14:04:19 -05:00
Tim Donohue
faebbbe680 Merge pull request #4197 from tdonohue/port_4189_to_7x
[Port dspace-7_x] Add additional automated server-side rendering (SSR) tests for all Entity Types
2025-04-15 13:14:39 -05:00
Tim Donohue
a20594abfc Merge pull request #4196 from tdonohue/port_4189_to_8x
[Port dspace-8_x] Add additional automated server-side rendering (SSR) tests for all Entity Types
2025-04-15 13:14:27 -05:00
dependabot[bot]
0ff0b5298a Bump http-proxy-middleware from 2.0.7 to 2.0.9
Bumps [http-proxy-middleware](https://github.com/chimurai/http-proxy-middleware) from 2.0.7 to 2.0.9.
- [Release notes](https://github.com/chimurai/http-proxy-middleware/releases)
- [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md)
- [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v2.0.7...v2.0.9)

---
updated-dependencies:
- dependency-name: http-proxy-middleware
  dependency-version: 2.0.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-15 15:09:53 +00:00
dependabot[bot]
6263a39a91 Bump http-proxy-middleware from 2.0.7 to 2.0.9
Bumps [http-proxy-middleware](https://github.com/chimurai/http-proxy-middleware) from 2.0.7 to 2.0.9.
- [Release notes](https://github.com/chimurai/http-proxy-middleware/releases)
- [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md)
- [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v2.0.7...v2.0.9)

---
updated-dependencies:
- dependency-name: http-proxy-middleware
  dependency-version: 2.0.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-15 15:06:41 +00:00
dependabot[bot]
87bb0d4e5a Bump sanitize-html and @types/sanitize-html
Bumps [sanitize-html](https://github.com/apostrophecms/sanitize-html) and [@types/sanitize-html](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/sanitize-html). These dependencies needed to be updated together.

Updates `sanitize-html` from 2.14.0 to 2.15.0
- [Changelog](https://github.com/apostrophecms/sanitize-html/blob/main/CHANGELOG.md)
- [Commits](https://github.com/apostrophecms/sanitize-html/compare/2.14.0...2.15.0)

Updates `@types/sanitize-html` from 2.13.0 to 2.15.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/sanitize-html)

---
updated-dependencies:
- dependency-name: sanitize-html
  dependency-version: 2.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/sanitize-html"
  dependency-version: 2.15.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-15 15:04:44 +00:00
Tim Donohue
eee9897312 Merge pull request #4153 from DSpace/dependabot/npm_and_yarn/dspace-7_x/isbot-5.1.26
Bump isbot from 5.1.25 to 5.1.26
2025-04-15 09:51:13 -05:00
Tim Donohue
b0daab23bb Merge pull request #4152 from DSpace/dependabot/npm_and_yarn/dspace-8_x/isbot-5.1.26
Bump isbot from 5.1.25 to 5.1.26
2025-04-15 09:50:53 -05:00
Tim Donohue
f74ffcee7a Merge pull request #4025 from DSpace/dependabot/npm_and_yarn/dspace-8_x/rxjs-7.8.2
Bump rxjs from 7.8.1 to 7.8.2
2025-04-15 09:49:42 -05:00
Tim Donohue
fdc23a3350 Merge pull request #4028 from DSpace/dependabot/npm_and_yarn/dspace-7_x/rxjs-7.8.2
Bump rxjs from 7.8.1 to 7.8.2
2025-04-15 09:49:12 -05:00
Tim Donohue
c4104be75b Add additional automated SSR tests for Community, Collection, Publication/Item, Person, OrgUnit and all Journal entities 2025-04-15 09:36:33 -05:00
Tim Donohue
17c974fbbd Add additional automated SSR tests for Community, Collection, Publication/Item, Person, OrgUnit and all Journal entities 2025-04-15 09:35:00 -05:00
dependabot[bot]
08a707477c Bump rxjs from 7.8.1 to 7.8.2
Bumps [rxjs](https://github.com/reactivex/rxjs) from 7.8.1 to 7.8.2.
- [Release notes](https://github.com/reactivex/rxjs/releases)
- [Changelog](https://github.com/ReactiveX/rxjs/blob/7.8.2/CHANGELOG.md)
- [Commits](https://github.com/reactivex/rxjs/compare/7.8.1...7.8.2)

---
updated-dependencies:
- dependency-name: rxjs
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-15 10:05:42 +00:00
Tim Donohue
d4efd6a8ef Merge pull request #4176 from DSpace/backport-4143-to-dspace-7_x
[Port dspace-7_x] Fix pagination on the "Select bitstreams" modal of the "Access Control" tab
2025-04-14 11:33:04 -05:00
Tim Donohue
d32d64040a Merge pull request #4177 from atmire/w2p-130081_access-control-bitstreams-pagination-fix-8.x
[Port dspace-8_x] Fix pagination on the "Select bitstreams" modal of the "Access Control" tab
2025-04-14 11:32:22 -05:00
dependabot[bot]
04516fad5a Bump postcss from 8.5.1 to 8.5.3 in the postcss group across 1 directory
Bumps the postcss group with 1 update in the / directory: [postcss](https://github.com/postcss/postcss).


Updates `postcss` from 8.5.1 to 8.5.3
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.1...8.5.3)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: postcss
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-14 03:16:07 +00:00
Tim Donohue
bdf62ab52e Merge pull request #4154 from DSpace/dependabot/npm_and_yarn/dspace-8_x/types/lodash-4.17.16
Bump @types/lodash from 4.17.15 to 4.17.16
2025-04-11 17:14:02 -05:00
Tim Donohue
345a995b51 Merge pull request #4178 from DSpace/backport-4168-to-dspace-8_x
[Port dspace-8_x] Fix export button enabled in bulk access management without selecting step 2
2025-04-11 16:58:36 -05:00
Tim Donohue
9fe2ad988b Merge pull request #4179 from arvoConsultores/DS-4097-dspace8
[Port dspace-8_x] Store the state of the computed filters
2025-04-11 15:55:28 -05:00
Tim Donohue
9f3b941e8e Merge pull request #4151 from DSpace/dependabot/npm_and_yarn/dspace-8_x/webpack-0542bd02c8
Bump webpack from 5.98.0 to 5.99.5 in the webpack group
2025-04-11 15:02:45 -05:00
Sergio Fernández Celorio
dbb8748190 Lint errors 2025-04-11 21:51:39 +02:00
Tim Donohue
28eb709ef5 Merge pull request #4169 from atmire/w29-129641_fix-export-button_contribute-7_x
[Port dspace-7_x] Fix export button enabled in bulk access management without selecting step 2
2025-04-11 14:45:08 -05:00
abhinav
11d09d6033 Fix export button enabled in bulk access management without selecting step 2
(cherry picked from commit 4b3b660354)
2025-04-11 19:43:40 +00:00
Nona Luypaert
9aac463e94 Merge remote-tracking branch 'contributions/w2p-130081_access-control-bitstreams-pagination-fix-7.6' into w2p-130081_access-control-bitstreams-pagination-fix-8.x
Conflicts:
	src/app/shared/access-control-form-container/item-access-control-select-bitstreams-modal/item-access-control-select-bitstreams-modal.component.ts
2025-04-11 21:41:27 +02:00
Sergio Fernández Celorio
881fc4d39f Use take instead unsubscribe 2025-04-11 21:40:17 +02:00
Sergio Fernández Celorio
19e14a3d2a Store the state of the computed filters 2025-04-11 21:39:30 +02:00
Nona Luypaert
cc202b7adb 130081: Fix pagination on 'Select bistreams' modal on 'Access Control' tab
(cherry picked from commit c03bbb01a2)
2025-04-11 18:55:22 +00:00
Tim Donohue
f5df726a18 Merge pull request #4121 from arvoConsultores/DS-4097
Store the state of the computed filters
2025-04-11 11:28:51 -05:00
Tim Donohue
077467efa2 Merge pull request #4111 from DSpace/dependabot/npm_and_yarn/dspace-7_x/axios-1.8.4
Bump axios from 1.7.9 to 1.8.4
2025-04-11 06:53:08 -05:00
Sergio Fernández Celorio
dc3e842747 No need to subscribe anymore to the router events 2025-04-11 11:39:41 +02:00
Tim Donohue
60f1007915 Merge pull request #4113 from DSpace/dependabot/npm_and_yarn/dspace-8_x/axios-1.8.4
Bump axios from 1.7.9 to 1.8.4
2025-04-10 17:15:55 -05:00
dependabot[bot]
828648aa7e Bump axios from 1.7.9 to 1.8.4
Bumps [axios](https://github.com/axios/axios) from 1.7.9 to 1.8.4.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.7.9...v1.8.4)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-10 21:56:43 +00:00
Tim Donohue
7063c49072 Merge pull request #4065 from DSpace/dependabot/npm_and_yarn/dspace-7_x/testing-64070fe020
Bump the testing group with 2 updates
2025-04-10 16:53:53 -05:00
dependabot[bot]
036fd1c871 Bump the testing group with 2 updates
Bumps the testing group with 2 updates: [axe-core](https://github.com/dequelabs/axe-core) and [ng-mocks](https://github.com/help-me-mom/ng-mocks).


Updates `axe-core` from 4.10.2 to 4.10.3
- [Release notes](https://github.com/dequelabs/axe-core/releases)
- [Changelog](https://github.com/dequelabs/axe-core/blob/v4.10.3/CHANGELOG.md)
- [Commits](https://github.com/dequelabs/axe-core/compare/v4.10.2...v4.10.3)

Updates `ng-mocks` from 14.13.2 to 14.13.3
- [Release notes](https://github.com/help-me-mom/ng-mocks/releases)
- [Changelog](https://github.com/help-me-mom/ng-mocks/blob/master/CHANGELOG.md)
- [Commits](https://github.com/help-me-mom/ng-mocks/compare/v14.13.2...v14.13.3)

---
updated-dependencies:
- dependency-name: axe-core
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: testing
- dependency-name: ng-mocks
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-10 19:27:52 +00:00
dependabot[bot]
e9a1da5bb8 Bump webpack from 5.98.0 to 5.99.5 in the webpack group
Bumps the webpack group with 1 update: [webpack](https://github.com/webpack/webpack).


Updates `webpack` from 5.98.0 to 5.99.5
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.98.0...v5.99.5)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.99.5
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: webpack
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-10 15:59:03 +00:00
Tim Donohue
847a74eac2 Merge pull request #4149 from DSpace/dependabot/npm_and_yarn/dspace-8_x/testing-d0d6209c31
Bump the testing group with 2 updates
2025-04-10 10:55:45 -05:00
Tim Donohue
22db6745b8 Merge pull request #4148 from DSpace/dependabot/npm_and_yarn/dspace-7_x/eslint-7904436953
Bump eslint-plugin-jsonc from 2.19.1 to 2.20.0 in the eslint group
2025-04-10 10:55:12 -05:00
Tim Donohue
275e848aa9 Merge pull request #4147 from DSpace/dependabot/npm_and_yarn/dspace-8_x/eslint-7904436953
Bump eslint-plugin-jsonc from 2.19.1 to 2.20.0 in the eslint group
2025-04-10 10:54:49 -05:00
Sergio Fernández Celorio
4f42c1e95f Use take instead unsubscribe 2025-04-10 17:34:36 +02:00
dependabot[bot]
5bade1b73e Bump @types/lodash from 4.17.15 to 4.17.16
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.15 to 4.17.16.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-version: 4.17.16
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-09 22:27:30 +00:00
dependabot[bot]
b37a7a1456 Bump isbot from 5.1.25 to 5.1.26
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.25 to 5.1.26.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.25...v5.1.26)

---
updated-dependencies:
- dependency-name: isbot
  dependency-version: 5.1.26
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-09 22:27:19 +00:00
dependabot[bot]
d2a9894e64 Bump isbot from 5.1.25 to 5.1.26
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.25 to 5.1.26.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.25...v5.1.26)

---
updated-dependencies:
- dependency-name: isbot
  dependency-version: 5.1.26
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-09 22:27:16 +00:00
dependabot[bot]
fe7773d915 Bump the testing group with 2 updates
Bumps the testing group with 2 updates: [axe-core](https://github.com/dequelabs/axe-core) and [ng-mocks](https://github.com/help-me-mom/ng-mocks).


Updates `axe-core` from 4.10.2 to 4.10.3
- [Release notes](https://github.com/dequelabs/axe-core/releases)
- [Changelog](https://github.com/dequelabs/axe-core/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/dequelabs/axe-core/compare/v4.10.2...v4.10.3)

Updates `ng-mocks` from 14.13.2 to 14.13.4
- [Release notes](https://github.com/help-me-mom/ng-mocks/releases)
- [Changelog](https://github.com/help-me-mom/ng-mocks/blob/master/CHANGELOG.md)
- [Commits](https://github.com/help-me-mom/ng-mocks/compare/v14.13.2...v14.13.4)

---
updated-dependencies:
- dependency-name: axe-core
  dependency-version: 4.10.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: testing
- dependency-name: ng-mocks
  dependency-version: 14.13.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-09 22:26:47 +00:00
dependabot[bot]
33146603df Bump eslint-plugin-jsonc from 2.19.1 to 2.20.0 in the eslint group
Bumps the eslint group with 1 update: [eslint-plugin-jsonc](https://github.com/ota-meshi/eslint-plugin-jsonc).


Updates `eslint-plugin-jsonc` from 2.19.1 to 2.20.0
- [Release notes](https://github.com/ota-meshi/eslint-plugin-jsonc/releases)
- [Changelog](https://github.com/ota-meshi/eslint-plugin-jsonc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ota-meshi/eslint-plugin-jsonc/compare/v2.19.1...v2.20.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsonc
  dependency-version: 2.20.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-09 22:26:28 +00:00
dependabot[bot]
0e9de91280 Bump eslint-plugin-jsonc from 2.19.1 to 2.20.0 in the eslint group
Bumps the eslint group with 1 update: [eslint-plugin-jsonc](https://github.com/ota-meshi/eslint-plugin-jsonc).


Updates `eslint-plugin-jsonc` from 2.19.1 to 2.20.0
- [Release notes](https://github.com/ota-meshi/eslint-plugin-jsonc/releases)
- [Changelog](https://github.com/ota-meshi/eslint-plugin-jsonc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ota-meshi/eslint-plugin-jsonc/compare/v2.19.1...v2.20.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsonc
  dependency-version: 2.20.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-09 22:26:17 +00:00
Tim Donohue
d3a97d9d15 Merge pull request #4007 from DSpace/dependabot/npm_and_yarn/dspace-7_x/compression-1.8.0
Bump compression from 1.7.5 to 1.8.0
2025-04-09 17:16:35 -05:00
Tim Donohue
437234b2ac Merge pull request #4003 from DSpace/dependabot/npm_and_yarn/dspace-8_x/compression-1.8.0
Bump compression from 1.7.5 to 1.8.0
2025-04-09 17:16:07 -05:00
dependabot[bot]
7e41f75666 Bump @babel/runtime from 7.26.7 to 7.27.0
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.26.7 to 7.27.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.0/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-09 22:13:34 +00:00
Tim Donohue
6fd6313608 Merge pull request #3998 from DSpace/dependabot/npm_and_yarn/dspace-8_x/angular-969bc97dc4
Bump the angular group with 3 updates
2025-04-09 17:04:36 -05:00
Tim Donohue
2a1c762e73 Merge pull request #4049 from DSpace/dependabot/npm_and_yarn/dspace-7_x/types/lodash-4.17.16
Bump @types/lodash from 4.17.15 to 4.17.16
2025-04-09 16:49:42 -05:00
Tim Donohue
c94279edc0 Merge pull request #4051 from DSpace/dependabot/npm_and_yarn/dspace-7_x/core-js-3.41.0
Bump core-js from 3.40.0 to 3.41.0
2025-04-09 16:31:36 -05:00
Tim Donohue
120e767f51 Merge pull request #4047 from DSpace/dependabot/npm_and_yarn/dspace-8_x/core-js-3.41.0
Bump core-js from 3.40.0 to 3.41.0
2025-04-09 16:31:16 -05:00
Tim Donohue
878b2dba4a Merge pull request #4050 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-b0ce3413d9
Bump sass from 1.84.0 to 1.85.1 in the sass group across 1 directory
2025-04-09 16:16:14 -05:00
Tim Donohue
72c630af47 Merge pull request #4045 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-b0ce3413d9
Bump sass from 1.84.0 to 1.85.1 in the sass group across 1 directory
2025-04-09 16:15:32 -05:00
dependabot[bot]
0c0081581a Bump the angular group with 3 updates
Bumps the angular group with 3 updates: [@angular/ssr](https://github.com/angular/angular-cli), [@angular-devkit/build-angular](https://github.com/angular/angular-cli) and [@angular/cli](https://github.com/angular/angular-cli).


Updates `@angular/ssr` from 17.3.11 to 17.3.12
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/17.3.11...17.3.12)

Updates `@angular-devkit/build-angular` from 17.3.11 to 17.3.12
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/17.3.11...17.3.12)

Updates `@angular/cli` from 17.3.11 to 17.3.12
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/17.3.11...17.3.12)

---
updated-dependencies:
- dependency-name: "@angular/ssr"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular-devkit/build-angular"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-09 20:59:59 +00:00
Tim Donohue
4a337beeb8 Merge pull request #4001 from DSpace/dependabot/npm_and_yarn/dspace-8_x/webpack-a5e48b3f33
Bump webpack from 5.97.1 to 5.98.0 in the webpack group
2025-04-09 15:14:23 -05:00
Tim Donohue
03703a69c5 Merge pull request #4114 from DSpace/dependabot/npm_and_yarn/dspace-8_x/isbot-5.1.25
Bump isbot from 5.1.22 to 5.1.25
2025-04-09 12:32:05 -05:00
Tim Donohue
2eca99379f Merge pull request #4112 from DSpace/dependabot/npm_and_yarn/dspace-7_x/isbot-5.1.25
Bump isbot from 5.1.22 to 5.1.25
2025-04-09 12:30:57 -05:00
Tim Donohue
442668d866 Merge pull request #4144 from DSpace/backport-4075-to-dspace-8_x
[Port dspace-8_x] Adding missing french labels
2025-04-09 09:36:13 -05:00
Pierre Lasou
42b3773919 Fix lint errors
(cherry picked from commit c2b702427c)
2025-04-09 14:35:04 +00:00
Pierre Lasou
4670496695 Adding missing french labels
Addition of french translations for Duplicate detection, ROR and Advanced search features.

(cherry picked from commit 9b7ccd9dfe)
2025-04-09 14:35:04 +00:00
Nona Luypaert
c03bbb01a2 130081: Fix pagination on 'Select bistreams' modal on 'Access Control' tab 2025-04-09 12:03:11 +02:00
lotte
8a4405c473 Merge branch 'backport-4099-duplicate-view-events-7.6' into 4099-duplicate-view-events_contibute-7.6.3 2025-04-07 10:43:09 +02:00
dependabot[bot]
0d2e49b12c Bump sass from 1.84.0 to 1.85.1 in the sass group across 1 directory
Bumps the sass group with 1 update in the / directory: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.84.0 to 1.85.1
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.84.0...1.85.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 03:06:35 +00:00
dependabot[bot]
1b2a0e19ad Bump sass from 1.84.0 to 1.85.1 in the sass group across 1 directory
Bumps the sass group with 1 update in the / directory: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.84.0 to 1.85.1
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.84.0...1.85.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 02:50:27 +00:00
dependabot[bot]
8b82bb5a7a Bump webpack from 5.97.1 to 5.98.0 in the webpack group
Bumps the webpack group with 1 update: [webpack](https://github.com/webpack/webpack).


Updates `webpack` from 5.97.1 to 5.98.0
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.97.1...v5.98.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: webpack
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 02:50:22 +00:00
Tim Donohue
7099d42767 Merge pull request #4130 from tdonohue/add_release_notes_8x
[Port dspace-8_x] Add note with link to Release Notes on homepage
2025-04-04 11:40:16 -05:00
Tim Donohue
1ea30ecb0a Add note with link to Release Notes on homepage 2025-04-04 11:08:52 -05:00
lotte
edd5496a4d 129694: Fixed lint issues 2025-04-04 15:11:02 +02:00
lotte
01becae7d0 129694: backported view tracker resolver 2025-04-04 13:31:49 +02:00
Tim Donohue
eef6bbe134 Merge pull request #3983 from atmire/no-platform-specific-code-in-abstract-services-7_x
No platform specific code in abstract services 7_x
2025-04-03 12:11:45 -05:00
Tim Donohue
8ad50df607 Merge pull request #3982 from atmire/no-platform-specific-code-in-abstract-services-8_x
No platform specific code in abstract services 8_x
2025-04-03 12:10:40 -05:00
lotte
ff5f23017a 129694: PoC #4099 solution with resolvers 2025-04-02 14:49:23 +02:00
Sergio Fernández Celorio
7dd6ab79ff Store the state of the computed filters 2025-03-31 09:14:32 +02:00
dependabot[bot]
ecc03343b7 Bump @babel/runtime from 7.26.7 to 7.27.0
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.26.7 to 7.27.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.0/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 02:43:43 +00:00
abhinav
0b28789e4f 129621: Add a not empty check
This check is present in the other event handlers above so adding it here as well.
2025-03-27 19:16:40 +01:00
lotte
f3065bcbfc 129694: PoC #4099 solution with resolvers 2025-03-26 18:11:17 +01:00
abhinav
fa6b8cc21d 129641: Fix Export button is enabled wrongly
This fixes the export button being enabled when the second step is not active in bulk access edit. The tests have been updated accordingly
2025-03-26 15:47:17 +01:00
dependabot[bot]
e5f41d9a31 Bump isbot from 5.1.22 to 5.1.25
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.22 to 5.1.25.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.22...v5.1.25)

---
updated-dependencies:
- dependency-name: isbot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-24 03:02:53 +00:00
dependabot[bot]
edac96a064 Bump axios from 1.7.9 to 1.8.4
Bumps [axios](https://github.com/axios/axios) from 1.7.9 to 1.8.4.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.7.9...v1.8.4)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-24 03:02:29 +00:00
dependabot[bot]
6c11621d91 Bump isbot from 5.1.22 to 5.1.25
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.22 to 5.1.25.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.22...v5.1.25)

---
updated-dependencies:
- dependency-name: isbot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-24 02:47:30 +00:00
Tim Donohue
70e6e515a2 Merge pull request #4037 from amgciadev/port-10053-b
[Port dspace-8_x] #10053: Add support for PCI Endorsement workflow
2025-03-17 10:46:16 -05:00
Alan Orth
d65ff20777 Merge pull request #4077 from arvoConsultores/DS-4053
Filters disappeared on reload
2025-03-14 16:23:57 +03:00
ana
c2528a9c1f Filters disappeared on reload 2025-03-13 09:51:17 +01:00
Andreas Awouters
3ad99804d1 Merge branch 'accessibility-settings-7.6' into accessibility-settings-7_x 2025-03-07 13:40:49 +01:00
Andreas Awouters
a8ac4f21ba Merge branch 'accessibility-settings-7.6' into accessibility-settings-8_x
# Conflicts:
#	src/app/accessibility/accessibility-settings.service.ts
2025-03-07 13:16:36 +01:00
Andreas Awouters
122d31b11b 119602: Make KlaroService optional in AccSettingsService 2025-03-07 12:58:31 +01:00
Andreas Awouters
7ab598d571 119602: Reorder footer links 2025-03-07 10:03:57 +01:00
Andreas Awouters
bd06eded8c 119602: Fix small accessibility settings typo 2025-03-07 10:02:57 +01:00
DSpace Bot
682fd99ebb [Port dspace-8_x] remove custom theme dependency in base component SuggestionListElementComponent (#4059)
* remove custom theme dependency

(cherry picked from commit 0c63c1720e)

* remove custom theme component

(cherry picked from commit 469164f00b)

* remove obsolete constructor

(cherry picked from commit b54638c863)

* fix lint error

(cherry picked from commit b0407fecc0)

* fix lint error

(cherry picked from commit c6d83ec600)

---------

Co-authored-by: Sascha Szott <szott@gmx.de>
2025-03-06 11:21:39 -06:00
Tim Donohue
c20526aa8b Merge pull request #4036 from alanorth/8x-citation-doi-tag
[Port dspace-8_x] Add citation_doi tag to head meta
2025-03-06 10:12:32 -06:00
kshepherd
99840ba3bc Merge pull request #4034 from alanorth/7_x-citation-doi
Add citation_doi tag to head meta
2025-03-06 13:43:08 +01:00
Alan Orth
9633fa875c Merge pull request #4054 from DSpace/backport-3957-to-dspace-8_x
[Port dspace-8_x] fixed deprecated import of TransferState
2025-03-06 08:54:08 +03:00
Sascha Szott
08ec6e000e fixed deprecated import of TransferState
(cherry picked from commit 4d85639f31)
2025-03-06 05:23:53 +00:00
Alan Orth
be3e6ef7bd src/app/core: remove unnecessary comment
Remove commented out this.setCitationDOITag() since it is not used
and we use camel case with this.setCitationDoiTag() now anyway.
2025-03-05 17:00:39 +03:00
Alan Orth
c0402bd540 src/app/core: add citation_doi tag to head meta
This is used by harvesters like Altmetric and was present in DSpace
version 6 and previous.
2025-03-05 17:00:38 +03:00
Alan Orth
204556de20 src/app/core: remove unnecessary comment
Remove commented out this.setCitationDOITag() since it is not used
and we use camel case with this.setCitationDoiTag() now anyway.
2025-03-05 16:40:14 +03:00
Alan Orth
8d7b4cd101 src/app/core: add citation_doi tag to head meta
This is used by harvesters like Altmetric and was present in DSpace
version 6 and previous.
2025-03-05 16:40:12 +03:00
dependabot[bot]
ac5c5c8a14 Bump core-js from 3.40.0 to 3.41.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.40.0 to 3.41.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.41.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 03:10:19 +00:00
dependabot[bot]
008fe0151b Bump @types/lodash from 4.17.15 to 4.17.16
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.15 to 4.17.16.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 03:10:07 +00:00
dependabot[bot]
a5357c7083 Bump core-js from 3.40.0 to 3.41.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.40.0 to 3.41.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.41.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 02:34:46 +00:00
Agustina Martinez
1b0e9927a8 Change label quality-assurance.event.table.event.message.serviceUrl to generic "Actor" 2025-02-27 13:36:16 +00:00
Agustina Martinez
a1037d8b0e Port #10053: Notify PCI endorsement support (DSpace 8.x) 2025-02-26 08:32:22 +00:00
Tim Donohue
e2bea80d3f Merge pull request #4032 from DSpace/backport-4020-to-dspace-8_x
[Port dspace-8_x] Changes to fr.json5 following version 8.1
2025-02-24 15:07:26 -06:00
Pierre Lasou
3364e6e2cb Addtion to the fr.json5 following version 8.1
Adding and changing parameters after upgrading to 8.1.

(cherry picked from commit 0437ec4c3f)
2025-02-24 21:06:54 +00:00
dependabot[bot]
44f28ecf43 Bump rxjs from 7.8.1 to 7.8.2
Bumps [rxjs](https://github.com/reactivex/rxjs) from 7.8.1 to 7.8.2.
- [Release notes](https://github.com/reactivex/rxjs/releases)
- [Changelog](https://github.com/ReactiveX/rxjs/blob/7.8.2/CHANGELOG.md)
- [Commits](https://github.com/reactivex/rxjs/compare/7.8.1...7.8.2)

---
updated-dependencies:
- dependency-name: rxjs
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-24 02:21:03 +00:00
Andreas Awouters
957d4bc770 119602: Fix tests after merge 2025-02-21 13:58:54 +01:00
Andreas Awouters
a5f68a3626 Merge branch 'dspace-8_x' into accessibility-settings-8_x 2025-02-21 13:40:53 +01:00
Andreas Awouters
da5a4f3a0d Merge branch 'accessibility-settings-7.6' into accessibility-settings-8_x
# Conflicts:
#	src/app/accessibility/accessibility-settings.service.spec.ts
#	src/app/accessibility/accessibility-settings.service.ts
#	src/app/info/accessibility-settings/accessibility-settings.component.spec.ts
#	src/app/info/accessibility-settings/accessibility-settings.component.ts
#	src/app/shared/cookies/klaro-configuration.ts
2025-02-21 13:38:29 +01:00
Andreas Awouters
f8bcce43b5 119602: Fix tests after merge 2025-02-21 13:19:01 +01:00
Andreas Awouters
e75052bbcf Merge branch 'dspace-7_x' into accessibility-settings-7_x
# Conflicts:
#	config/config.example.yml
#	src/config/app-config.interface.ts
#	src/config/default-app-config.ts
#	src/environments/environment.test.ts
2025-02-21 13:01:18 +01:00
Andreas Awouters
3340192382 Merge branch 'accessibility-settings-7.6' into accessibility-settings-7_x 2025-02-21 12:58:42 +01:00
Andreas Awouters
dcd32c48c3 119602: Rework settings validation 2025-02-21 12:53:44 +01:00
Andreas Awouters
cd825ac0da 119602: Inject AppConfig instead of using environment directly 2025-02-21 10:51:30 +01:00
Andreas Awouters
ca80812d0a 119602: Add additional accessibility-settings.component test 2025-02-21 10:27:44 +01:00
Andreas Awouters
4a74a3ac99 119602: Fix existing accessibility-settings.component tests 2025-02-21 10:10:35 +01:00
Andreas Awouters
62904747fc 119602: Add accessibility-settings.service tests for cookie functionality 2025-02-21 10:03:43 +01:00
Andreas Awouters
4c30e2d0be 119602: Fix existing accessibility-settings.service tests 2025-02-21 09:56:00 +01:00
Andreas Awouters
d05096c015 119602: Add KlaroServiceStub 2025-02-21 09:16:41 +01:00
Andreas Awouters
b837f63b7c 119602: Add 'Accessibility Settings' Klaro option & respect user choice 2025-02-18 10:22:59 +01:00
Andreas Awouters
e838873235 119602: Set default value as actual value instead of placeholder 2025-02-17 13:37:07 +01:00
dependabot[bot]
e9fa2812a0 Bump compression from 1.7.5 to 1.8.0
Bumps [compression](https://github.com/expressjs/compression) from 1.7.5 to 1.8.0.
- [Release notes](https://github.com/expressjs/compression/releases)
- [Changelog](https://github.com/expressjs/compression/blob/master/HISTORY.md)
- [Commits](https://github.com/expressjs/compression/compare/1.7.5...1.8.0)

---
updated-dependencies:
- dependency-name: compression
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-17 02:52:11 +00:00
dependabot[bot]
bb6ddcbeab Bump compression from 1.7.5 to 1.8.0
Bumps [compression](https://github.com/expressjs/compression) from 1.7.5 to 1.8.0.
- [Release notes](https://github.com/expressjs/compression/releases)
- [Changelog](https://github.com/expressjs/compression/blob/master/HISTORY.md)
- [Commits](https://github.com/expressjs/compression/compare/1.7.5...1.8.0)

---
updated-dependencies:
- dependency-name: compression
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-17 02:21:14 +00:00
Tim Donohue
885c52ed34 Merge pull request #3996 from DSpace/backport-3673-to-dspace-7_x
[Port dspace-7_x] Update fr.json5
2025-02-14 14:49:32 -06:00
Carolyn Sullivan
9b0669f76c Update fr.json5
Ajouté les corrections faites par Pierre Lasou :)

(cherry picked from commit e32d9feaf5)
2025-02-14 16:29:44 +00:00
Carolyn Sullivan
3daa110116 Update fr.json5
Ajouté des traductions/noté quelques étiquettes sans traductions

(cherry picked from commit 477ca5e712)
2025-02-14 16:29:44 +00:00
Tim Donohue
8f7e9aac5b Merge pull request #3673 from Peredwel/patch-1
Update fr.json5
2025-02-14 10:29:04 -06:00
Tim Donohue
d9c6856d9c Merge pull request #3990 from DSpace/backport-3960-to-dspace-7_x
[Port dspace-7_x] Update fr.json5 to add identifiers deposit's step translations in french
2025-02-14 10:26:03 -06:00
Tim Donohue
3908253fca Merge pull request #3991 from DSpace/backport-3960-to-dspace-8_x
[Port dspace-8_x] Update fr.json5 to add identifiers deposit's step translations in french
2025-02-14 10:25:57 -06:00
Carolyn Sullivan
e32d9feaf5 Update fr.json5
Ajouté les corrections faites par Pierre Lasou :)
2025-02-14 09:53:21 -05:00
Pierre Lasou
b2af22014d Update fr.json5
(cherry picked from commit f721028d81)
2025-02-14 14:43:44 +00:00
Pierre Lasou
3372110839 Update fr.json5
(cherry picked from commit f721028d81)
2025-02-14 14:43:40 +00:00
Andreas Awouters
dc8590a69a Merge branch 'no-platform-specific-code-in-abstract-services-7.6' into dspace-8_x
# Conflicts:
#	src/app/core/auth/auth.service.ts
#	src/app/core/auth/server-auth.service.ts
#	src/app/core/services/cookie.service.ts
#	src/app/core/services/server-cookie.service.ts
2025-02-13 14:29:32 +01:00
Andreas Awouters
ddd7c323ab Merge branch 'no-platform-specific-code-in-abstract-services-7.6' into no-platform-specific-code-in-abstract-services-7_x 2025-02-13 13:31:21 +01:00
Andreas Awouters
961bb11b59 125969: Fix auth service tests 2025-02-13 13:15:24 +01:00
Andreas Awouters
f82426b1dc 125969: Get rid of REQUEST and RESPONSE imports in AuthService 2025-02-13 13:15:24 +01:00
Andreas Awouters
8b90d999ac 125969: Move constructor to server-cookie.service
This makes it possible to remove the REQUEST import from
cookie.service.ts which solves a typescript issue.
2025-02-13 13:15:24 +01:00
Tim Donohue
e898216844 Merge pull request #3977 from DSpace/backport-3976-to-dspace-8_x
[Port dspace-8_x] Added missing line to enable access to Content Reports
2025-02-11 16:19:45 -06:00
Jean-François Morin
3d9774a86a Added missing line for Content Reports section
(cherry picked from commit a33afbef2b)
2025-02-11 20:19:24 +00:00
Andreas Awouters
80948d98f0 119602: Force minimum time out 2025-02-11 09:33:03 +01:00
Tim Donohue
6446a52e46 Merge pull request #3969 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-fd5fd03206
Bump sass from 1.83.4 to 1.84.0 in the sass group
2025-02-10 15:37:11 -06:00
Tim Donohue
72e0f48267 Merge pull request #3971 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-fd5fd03206
Bump sass from 1.83.4 to 1.84.0 in the sass group
2025-02-10 15:36:52 -06:00
Tim Donohue
733cbb4a27 Merge pull request #3902 from DSpace/dependabot/npm_and_yarn/dspace-8_x/babel/runtime-7.26.7
Bump @babel/runtime from 7.26.0 to 7.26.7
2025-02-10 15:24:41 -06:00
Tim Donohue
e58a66f849 Merge pull request #3904 from DSpace/dependabot/npm_and_yarn/dspace-7_x/babel/runtime-7.26.7
Bump @babel/runtime from 7.26.0 to 7.26.7
2025-02-10 15:24:24 -06:00
Tim Donohue
3555dccdfd Merge pull request #3901 from DSpace/dependabot/npm_and_yarn/dspace-8_x/eslint-82f73a5bca
Bump eslint-plugin-jsonc from 2.18.2 to 2.19.1 in the eslint group
2025-02-10 12:08:54 -06:00
Tim Donohue
1167f8a414 Merge pull request #3903 from DSpace/dependabot/npm_and_yarn/dspace-7_x/eslint-82f73a5bca
Bump eslint-plugin-jsonc from 2.18.2 to 2.19.1 in the eslint group
2025-02-10 12:08:30 -06:00
Tim Donohue
eee851f001 Merge pull request #3941 from DSpace/dependabot/npm_and_yarn/dspace-7_x/types/lodash-4.17.15
Bump @types/lodash from 4.17.14 to 4.17.15
2025-02-10 09:38:57 -06:00
Tim Donohue
6a5d7afcbf Merge pull request #3944 from DSpace/dependabot/npm_and_yarn/dspace-8_x/types/lodash-4.17.15
Bump @types/lodash from 4.17.14 to 4.17.15
2025-02-10 09:38:37 -06:00
Tim Donohue
b18ff86894 Merge pull request #3942 from DSpace/dependabot/npm_and_yarn/dspace-7_x/isbot-5.1.22
Bump isbot from 5.1.21 to 5.1.22
2025-02-10 09:36:29 -06:00
Tim Donohue
e90759d74b Merge pull request #3945 from DSpace/dependabot/npm_and_yarn/dspace-8_x/isbot-5.1.22
Bump isbot from 5.1.21 to 5.1.22
2025-02-10 09:36:10 -06:00
Tim Donohue
fa6120c42f Merge pull request #3943 from DSpace/dependabot/npm_and_yarn/dspace-8_x/testing-206d00ed14
Bump cypress-axe from 1.5.0 to 1.6.0 in the testing group
2025-02-10 09:34:00 -06:00
Tim Donohue
e811083339 Merge pull request #3940 from DSpace/dependabot/npm_and_yarn/dspace-7_x/testing-206d00ed14
Bump cypress-axe from 1.5.0 to 1.6.0 in the testing group
2025-02-10 09:33:34 -06:00
dependabot[bot]
7d046d404c Bump sass from 1.83.4 to 1.84.0 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.83.4 to 1.84.0
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.83.4...1.84.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-10 03:12:07 +00:00
dependabot[bot]
cd810c52e9 Bump eslint-plugin-jsonc from 2.18.2 to 2.19.1 in the eslint group
Bumps the eslint group with 1 update: [eslint-plugin-jsonc](https://github.com/ota-meshi/eslint-plugin-jsonc).


Updates `eslint-plugin-jsonc` from 2.18.2 to 2.19.1
- [Release notes](https://github.com/ota-meshi/eslint-plugin-jsonc/releases)
- [Changelog](https://github.com/ota-meshi/eslint-plugin-jsonc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ota-meshi/eslint-plugin-jsonc/compare/v2.18.2...v2.19.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsonc
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-10 03:11:43 +00:00
dependabot[bot]
4430d48452 Bump cypress-axe from 1.5.0 to 1.6.0 in the testing group
Bumps the testing group with 1 update: [cypress-axe](https://github.com/component-driven/cypress-axe).


Updates `cypress-axe` from 1.5.0 to 1.6.0
- [Release notes](https://github.com/component-driven/cypress-axe/releases)
- [Commits](https://github.com/component-driven/cypress-axe/compare/v1.5.0...v1.6.0)

---
updated-dependencies:
- dependency-name: cypress-axe
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-10 03:11:41 +00:00
dependabot[bot]
e0590109c1 Bump sass from 1.83.4 to 1.84.0 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.83.4 to 1.84.0
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.83.4...1.84.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-10 02:18:27 +00:00
dependabot[bot]
ed1aa37100 Bump cypress-axe from 1.5.0 to 1.6.0 in the testing group
Bumps the testing group with 1 update: [cypress-axe](https://github.com/component-driven/cypress-axe).


Updates `cypress-axe` from 1.5.0 to 1.6.0
- [Release notes](https://github.com/component-driven/cypress-axe/releases)
- [Commits](https://github.com/component-driven/cypress-axe/compare/v1.5.0...v1.6.0)

---
updated-dependencies:
- dependency-name: cypress-axe
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-10 02:18:04 +00:00
dependabot[bot]
601850cb6a Bump eslint-plugin-jsonc from 2.18.2 to 2.19.1 in the eslint group
Bumps the eslint group with 1 update: [eslint-plugin-jsonc](https://github.com/ota-meshi/eslint-plugin-jsonc).


Updates `eslint-plugin-jsonc` from 2.18.2 to 2.19.1
- [Release notes](https://github.com/ota-meshi/eslint-plugin-jsonc/releases)
- [Changelog](https://github.com/ota-meshi/eslint-plugin-jsonc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ota-meshi/eslint-plugin-jsonc/compare/v2.18.2...v2.19.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsonc
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-10 02:18:00 +00:00
Tim Donohue
0d39406f60 Merge tag 'dspace-7.6.3' into dspace-8_x 2025-02-07 14:06:56 -06:00
Tim Donohue
7949330071 Update version tag for development of next release 2025-02-07 12:24:44 -06:00
Tim Donohue
b9ff51d51c Update version tag for release 2025-02-07 12:18:51 -06:00
Tim Donohue
ebe26a7eb0 Update version tag for development of next release 2025-02-07 11:21:57 -06:00
Tim Donohue
6eb5eec050 Update version tag for release 2025-02-07 11:17:42 -06:00
Tim Donohue
3ea3327448 Merge pull request #3967 from DSpace/backport-3966-to-dspace-8_x
[Port dspace-8_x] Move `enablePerformanceProfiler` option to last in list in `config.example.yml`
2025-02-07 09:37:06 -06:00
Tim Donohue
2108219711 Move performanceprofiler option to last in list
(cherry picked from commit a37bb6ade1)
2025-02-07 15:35:01 +00:00
Tim Donohue
1956e25a83 Merge pull request #3962 from 4Science/task/dspace-7_x/DURACOM-288
[Port dspace-7_x] Provide a setting to use a different REST url during SSR execution
2025-02-07 09:33:23 -06:00
Andreas Awouters
59cb19ae80 119602: Restructure labels 2025-02-07 14:54:24 +01:00
Giuseppe Digilio
2e28a51b02 [DURACOM-288] fix tests 2025-02-07 09:00:10 +01:00
Tim Donohue
7fab9633ea Merge pull request #3965 from tdonohue/port_2827_to_7x
[Port dspace-7_x] use translation service to determine placeholder values of date picker
2025-02-06 16:33:33 -06:00
Tim Donohue
96c2310b26 Merge pull request #3964 from tdonohue/port_2827_to_8x
[Port dspace-8_x] use translation service to determine placeholder values of date picker
2025-02-06 16:32:55 -06:00
Sascha Szott
7584b9e1c3 use translation service to determine placeholder values of date picker (#2827)
* use translation service to determine placeholder values

* added translation of date-picker placeholder values

* added German translations of date-picker placeholder values

* fix lint warning: added missing comma

* fix lint warning: removed trailing spaces

* fixed broken tests

* fixed lint warning

* try to mock TranslateService correctly

* remove TranslateService mock

* removed imports

* fixed lint warnings

* fixed lint warnings

* fixed lint warning

* fixed lint warning

* fixed lint error

* fixed lint errors

* removed TestComponent

* added imports

* removed declarations

* fixed lint error

* fix lint error (invalid sorting)

* finally fixing lint error

* use translation pipe directly in template

* move translation of placeholders into HTML template

* remove TranslateService dependency
2025-02-06 15:18:41 -06:00
Sascha Szott
c6deb2271d use translation service to determine placeholder values of date picker (#2827)
* use translation service to determine placeholder values

* added translation of date-picker placeholder values

* added German translations of date-picker placeholder values

* fix lint warning: added missing comma

* fix lint warning: removed trailing spaces

* fixed broken tests

* fixed lint warning

* try to mock TranslateService correctly

* remove TranslateService mock

* removed imports

* fixed lint warnings

* fixed lint warnings

* fixed lint warning

* fixed lint warning

* fixed lint error

* fixed lint errors

* removed TestComponent

* added imports

* removed declarations

* fixed lint error

* fix lint error (invalid sorting)

* finally fixing lint error

* use translation pipe directly in template

* move translation of placeholders into HTML template

* remove TranslateService dependency
2025-02-06 15:06:28 -06:00
Vincenzo Mecca
7660dd8d95 [DURACOM-288] Fixes undefined request in thumbnail 2025-02-06 17:27:54 +01:00
Giuseppe Digilio
6f4c3860a3 [DURACOM-288] Add convention SSR REST environment variable 2025-02-06 17:27:39 +01:00
Giuseppe Digilio
d73885137a [DURACOM-288] Change properties description 2025-02-06 17:27:27 +01:00
Giuseppe Digilio
290c24b448 [DURACOM-288] Enable URL replacement by default 2025-02-06 17:26:41 +01:00
Giuseppe Digilio
21dac408ee [DURACOM-288] Add unit test to test SSR url replace 2025-02-06 17:26:30 +01:00
Giuseppe Digilio
d118496075 [DURACOM-288] Add missing settings to config.example.yml 2025-02-06 17:26:16 +01:00
Giuseppe Digilio
cb5deb644e [DURACOM-288] Refactoring configuration to transfer state 2025-02-06 17:25:26 +01:00
Yury Bondarenko
f9d8e4e0b7 Add configuration to toggle replace/transfer 2025-02-06 17:19:44 +01:00
Giuseppe Digilio
a3ffda3bf8 [DURACOM-288] Additional test for thumbnail component 2025-02-06 17:18:28 +01:00
Giuseppe Digilio
8ca668159e [DURACOM-288] Provide a setting to use a different REST url during SSR execution
# Conflicts:
#	src/app/app.config.ts
#	src/app/core/services/server-hard-redirect.service.spec.ts
#	src/app/core/services/server-hard-redirect.service.ts
#	src/app/thumbnail/thumbnail.component.ts
#	src/modules/app/browser-init.service.ts
#	src/modules/app/server-init.service.ts
2025-02-06 17:15:42 +01:00
Tim Donohue
59e6c4abf5 Merge pull request #3953 from 4Science/task/dspace-8_x/DURACOM-288
[Port dspace-8_x] Provide a setting to use a different REST url during SSR execution
2025-02-06 10:12:07 -06:00
Tim Donohue
173f1d4335 Merge pull request #3959 from DSpace/backport-3955-to-dspace-8_x
[Port dspace-8_x] Synchronized standalone imports in custom theme
2025-02-05 15:54:48 -06:00
Alexandre Vryghem
b504af6f19 126015: Sync standalone imports in custom theme
(cherry picked from commit fddc4936e8)
2025-02-05 21:00:49 +00:00
Tim Donohue
677c77e9ee Merge pull request #3954 from DSpace/backport-3948-to-dspace-8_x
[Port dspace-8_x] Avoid retrieving user suggestions if Researcher profiles are disabled
2025-02-04 14:55:26 -06:00
Toni Prieto
402cb7e031 Avoid retrieving user suggestions if Researcher profiles are disabled
(cherry picked from commit 72919cd867)
2025-02-04 20:09:43 +00:00
Vincenzo Mecca
4b61ba4d86 [DURACOM-288] Fixes undefined request in thumbnail 2025-02-04 17:58:16 +01:00
Giuseppe Digilio
e6dbfe4b1b [DURACOM-288] Add convention SSR REST environment variable 2025-02-04 17:54:22 +01:00
Giuseppe Digilio
f3534537ea [DURACOM-288] Change properties description 2025-02-04 17:54:18 +01:00
Giuseppe Digilio
d52a09406d [DURACOM-288] Enable URL replacement by default 2025-02-04 17:53:47 +01:00
Giuseppe Digilio
deb752c06e [DURACOM-288] Add unit test to test SSR url replace 2025-02-04 17:53:18 +01:00
Giuseppe Digilio
9bf1fbd219 [DURACOM-288] Add missing settings to config.example.yml 2025-02-04 17:53:12 +01:00
Giuseppe Digilio
1a3fe013bb [DURACOM-288] Refactoring configuration to transfer state 2025-02-04 17:53:05 +01:00
Yury Bondarenko
a78a910718 Add configuration to toggle replace/transfer 2025-02-04 17:51:56 +01:00
Giuseppe Digilio
31ed56936c [DURACOM-288] Additional test for thumbnail component 2025-02-04 17:51:52 +01:00
Giuseppe Digilio
8562ddb14b [DURACOM-288] Provide a setting to use a different REST url during SSR execution 2025-02-04 17:51:48 +01:00
kshepherd
051ee006f8 Merge pull request #3947 from DSpace/backport-3935-to-dspace-8_x
[Port dspace-8_x] Ensure `/reload/` (hard reload) path is included in SSR paths.
2025-02-03 12:45:35 +01:00
kshepherd
95064122d0 Merge pull request #3946 from DSpace/backport-3935-to-dspace-7_x
[Port dspace-7_x] Ensure `/reload/` (hard reload) path is included in SSR paths.
2025-02-03 12:44:36 +01:00
Tim Donohue
04695b2520 Ensure "/reload/" (hard reload) path is included in SSR paths.
(cherry picked from commit 83d24f8c21)
2025-02-03 11:11:09 +00:00
Tim Donohue
d92424e2f4 Ensure "/reload/" (hard reload) path is included in SSR paths.
(cherry picked from commit 83d24f8c21)
2025-02-03 11:11:04 +00:00
dependabot[bot]
5b3c7cec88 Bump isbot from 5.1.21 to 5.1.22
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.21 to 5.1.22.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.21...v5.1.22)

---
updated-dependencies:
- dependency-name: isbot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-03 03:11:28 +00:00
dependabot[bot]
b8fcc27504 Bump @types/lodash from 4.17.14 to 4.17.15
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.14 to 4.17.15.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-03 03:10:53 +00:00
dependabot[bot]
45cc177cab Bump isbot from 5.1.21 to 5.1.22
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.21 to 5.1.22.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.21...v5.1.22)

---
updated-dependencies:
- dependency-name: isbot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-03 03:04:40 +00:00
dependabot[bot]
59b39f12d6 Bump @types/lodash from 4.17.14 to 4.17.15
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.14 to 4.17.15.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-03 03:03:49 +00:00
Tim Donohue
636fba40f7 Merge pull request #3932 from 4Science/task/dspace-7_x/CST-15595
[Port dspace-7_x] Make submission reorder buttons keyboard accessible
2025-01-31 10:38:45 -06:00
Andrea Barbasso
f8123fbbfd Merge branch 'dspace-7_x' into task/dspace-7_x/CST-15595
# Conflicts:
#	src/assets/i18n/en.json5
2025-01-31 15:09:03 +01:00
Andrea Barbasso
8313b9a929 [CST-15595] add keyboard drag and drop functionality 2025-01-31 15:05:36 +01:00
Tim Donohue
51aa5fb61c Merge pull request #3926 from Andrea-Guevara/AccessibilityInSearchFilterDspace7
[Port dspace-7_x] Accessibility when selecting a search filter
2025-01-31 06:54:15 -06:00
Tim Donohue
a5378e0cf5 Add missing UUIDService to test to fix "No provider for UUIDService" errors 2025-01-30 16:55:28 -06:00
Tim Donohue
0abbf80c1d Merge pull request #3929 from DSpace/backport-3912-to-dspace-7_x
[Port dspace-7_x] Fix auth in UI with LDAP if password authentication is disabled
2025-01-30 16:39:41 -06:00
Tim Donohue
04e34145aa Merge pull request #3930 from DSpace/backport-3912-to-dspace-8_x
[Port dspace-8_x] Fix auth in UI with LDAP if password authentication is disabled
2025-01-30 16:39:31 -06:00
Miika Nurminen
33d2a43838 Ensure that password authentication dialog is shown even if only ldap auth method is present
(cherry picked from commit 83d86d7b68)
2025-01-30 22:12:16 +00:00
Miika Nurminen
d4536ffbf4 Ensure that password authentication dialog is shown even if only ldap auth method is present
(cherry picked from commit 83d86d7b68)
2025-01-30 22:12:12 +00:00
Tim Donohue
6b73c75205 Merge pull request #3925 from 4Science/task/dspace-7_X/DURACOM-304
[Port dspace-7_x] Prevent request with page size of 9999
2025-01-30 12:25:52 -06:00
Tim Donohue
f01e49f05f Merge pull request #3924 from alexandrevryghem/made-expandable-navbar-section-more-accessible-7_x
[Port dspace-7_x] Made expandable navbar section more keyboard accessible
2025-01-30 11:58:31 -06:00
Tim Donohue
64c6c19618 Merge pull request #3927 from tdonohue/port_3372_to_8x
[Port dspace-8_x] Make submission reorder buttons keyboard accessible
2025-01-30 11:50:57 -06:00
AndreaBarbasso
0878eafaf3 Make reorder buttons keyboard accessible (#3372)
* [CST-15595] add keyboard drag and drop functionality

* [CST-15595] add aria live messages

* [CST-15595] fix e2e tests

* [CST-15595] fix unit tests

* [CST-15595] improve drag and drop keyboard functionality

* [CST-15595] add keydown.enter for keyboard drag and drop

---------

Co-authored-by: Andrea Barbasso <´andrea.barbasso@4science.com´>
2025-01-30 11:12:41 -06:00
root
073b2b0acd Accessibility when selecting a search filter v7 2025-01-30 09:27:55 -03:00
FrancescoMolinaro
d155d778ee [DURACOM-304] fix tests and lint 2025-01-30 12:32:58 +01:00
FrancescoMolinaro
50e440bcf5 [DURACOM-304] remove br 2025-01-30 12:15:54 +01:00
FrancescoMolinaro
af39526d77 [DURACOM-304] refactor, fix dynamic-list.component loading 2025-01-30 12:15:41 +01:00
FrancescoMolinaro
f77ce869f8 [DURACOM-304] remove control flow 2025-01-30 12:14:07 +01:00
FrancescoMolinaro
bc06839926 [DURACOM-304] improve loading logic for cc-licenses section and dynamic-list 2025-01-30 12:13:52 +01:00
FrancescoMolinaro
a3ebfc0f36 [DURACOM-304] fix missing import 2025-01-30 12:02:29 +01:00
FrancescoMolinaro
362364136d [DURACOM-304] add support for findAll method in dynamic-scrollable-dropdown.component.ts 2025-01-30 12:02:12 +01:00
FrancescoMolinaro
b892b13529 [DURACOM-304] adapt call to bitstream service 2025-01-30 11:53:31 +01:00
Alisa Ismailati
b220e20053 [DURACOM-304] other fix related to accessibility 2025-01-30 11:52:47 +01:00
Alisa Ismailati
eaff0b1397 [DURACOM-304] Refactor of bundle-data.service.ts by removing page size of 9999 2025-01-30 11:52:31 +01:00
Alisa Ismailati
0108f525ba [DURACOM-304] fix accessibility issue on scripts-select 2025-01-30 11:47:42 +01:00
Alisa Ismailati
3f5de295a7 [DURACOM-304] test fix 2025-01-30 11:47:27 +01:00
Alisa Ismailati
62924cc5e0 [DURACOM-304] Refactored submission-section-cc-licenses.component.ts by removing page size of 9999 2025-01-30 11:47:00 +01:00
Alisa Ismailati
8453b667cb [DURACOM-304] removed unneeded selectAll method (dynamic-lookup-relation-search-tab.component) 2025-01-30 11:41:12 +01:00
Alisa Ismailati
3922130434 [DURACOM-304] Refactored relationship-type-data.service.ts by removing page size of 9999 2025-01-30 11:39:15 +01:00
Alisa Ismailati
c3b265d213 [DURACOM-304] Refactored dynamic-list.component.ts by removing page size of 9999 2025-01-30 11:38:14 +01:00
Alisa Ismailati
2b58377830 [DURACOM-304] Refactored scripts-select.component by using infinite scroll instead of page size 9999 2025-01-30 11:37:03 +01:00
Alisa Ismailati
4536d9c74d [DURACOM-304] Refactored edit-bitstream-page.component by removing page size of 9999 2025-01-30 11:34:39 +01:00
Alisa Ismailati
a3b7125ef9 [DURACOM-304] Refactored item-bitstreams.component by removing page size of 9999 2025-01-30 11:30:45 +01:00
Alexandre Vryghem
6f9c55d250 116404: Prevent the opening from the modal using mouse interactions from automatically focussing on the first element
(cherry picked from commit 82ed3aadff)
2025-01-30 00:52:16 +01:00
Alexandre Vryghem
9c6fb1794f 116404: Replaced ViewChild logic with a CSS selector
This change avoids triggering an additional change detection cycle

(cherry picked from commit f7bb83013a)
2025-01-30 00:52:16 +01:00
Alexandre Vryghem
0f27ae1125 116404: Close modal on escape
(cherry picked from commit 84df67c00b)
2025-01-30 00:52:16 +01:00
Alexandre Vryghem
73285284ce 116404: Apply focus on first item
(cherry picked from commit 2152bab717)
2025-01-30 00:52:16 +01:00
Alexandre Vryghem
53186988f5 116404: Added navigation with arrow keys in navbar & collapsed the expandable menu when hovering outside of it
(cherry picked from commit 05232cdf2b)
2025-01-30 00:52:16 +01:00
Tim Donohue
4d41d5f834 Merge pull request #3923 from DSpace/backport-3920-to-dspace-8_x
[Port dspace-8_x] Fix YAML syntax in config.example.yml
2025-01-29 17:04:18 -06:00
Alexandre Vryghem
8f9236f06d 116404: Don't navigate in the expandable navbar section with tab
Had to move the @slide animation to prevent focus being lost when tabbing in the expandable section

(cherry picked from commit c08c2721ac)
2025-01-30 00:03:55 +01:00
Alexandre Vryghem
470ad80741 116404: Fixed expandable navbar section loosing focus on expand through keyboard
(cherry picked from commit 2547b1218f)
2025-01-30 00:03:10 +01:00
Tim Donohue
5eee80c308 Merge pull request #3919 from DSpace/backport-3581-to-dspace-8_x
[Port dspace-8_x] Made expandable navbar section more keyboard accessible
2025-01-29 16:40:22 -06:00
Tim Donohue
c3f17b9754 Merge pull request #3921 from tdonohue/config_syntax_7x
[Port dspace-7_x] Fix YAML syntax and revert section name to "universal"
2025-01-29 16:39:06 -06:00
Tim Donohue
ea38669710 Fix syntax in config.example.yml
(cherry picked from commit cafe88a3b8)
2025-01-29 22:38:50 +00:00
Tim Donohue
e296295df5 Fix YAML syntax and revert section name to "universal" as that's the name in 7.x 2025-01-29 15:57:55 -06:00
Alexandre Vryghem
7de6aa0e24 116404: Prevent the opening from the modal using mouse interactions from automatically focussing on the first element
(cherry picked from commit 82ed3aadff)
2025-01-29 19:56:53 +00:00
Alexandre Vryghem
a984957af9 116404: Replaced ViewChild logic with a CSS selector
This change avoids triggering an additional change detection cycle

(cherry picked from commit f7bb83013a)
2025-01-29 19:56:53 +00:00
Alexandre Vryghem
daf2f50b00 116404: Close modal on escape
(cherry picked from commit 84df67c00b)
2025-01-29 19:56:53 +00:00
Alexandre Vryghem
eb93041c5b 116404: Apply focus on first item
(cherry picked from commit 2152bab717)
2025-01-29 19:56:53 +00:00
Alexandre Vryghem
b9b1d3fd8d 116404: Added navigation with arrow keys in navbar & collapsed the expandable menu when hovering outside of it
(cherry picked from commit 05232cdf2b)
2025-01-29 19:56:53 +00:00
Alexandre Vryghem
17e03330d0 116404: Don't navigate in the expandable navbar section with tab
Had to move the @slide animation to prevent focus being lost when tabbing in the expandable section

(cherry picked from commit c08c2721ac)
2025-01-29 19:56:53 +00:00
Alexandre Vryghem
ed27231769 116404: Fixed expandable navbar section loosing focus on expand through keyboard
(cherry picked from commit 2547b1218f)
2025-01-29 19:56:53 +00:00
Tim Donohue
bb977dcd49 Merge pull request #3918 from tdonohue/port_3385_to_8x
[Port dspace-8_x] Accessibility when selecting a search filter
2025-01-29 12:07:09 -06:00
Andrea-Guevara
b27659d958 Accessibility when selecting a search filter (#3385)
* Creation of a new method so that when a filter is selected a page reload message is announced to the user

* Correcting import formatting errors

* New attempt - Correcting import formatting errors

* New import fix

* New import fix

* Returning to the order of imports more like the original

* Correcting import order errors

* Resolving conflicts

* lint fixes

* Code refactoring

---------

Co-authored-by: root <root@TI-03.OHB.LOCAL>
Co-authored-by: nwoodward <woodward.nicholas@gmail.com>
2025-01-29 11:01:23 -06:00
Tim Donohue
795f300158 Merge pull request #3913 from alexandrevryghem/w2p-122357_browse-performance-fixes_contribute-7_x
[Port dspace-7_x] Browse performance fixes
2025-01-29 10:02:28 -06:00
Tim Donohue
df3e00f985 Merge pull request #3914 from alexandrevryghem/w2p-122357_browse-performance-fixes_contribute-8_x
[Port dspace-8_x] Browse performance fixes
2025-01-29 09:41:45 -06:00
Tim Donohue
38d5f87d3e Merge pull request #3916 from tdonohue/port_3818_to_7x
[Port dspace-7_x] Changing metadata in a user profile without specifying a password brings up a success and an error panel
2025-01-29 06:48:54 -06:00
VictorDuranEscire
5a5c1f18e3 Changing metadata in a user profile without specifying a password brings up a success and an error panel (#3818)
* Agregar validador para mostrar mensaje de error solo si se escribe la contraseña actual

* Agregar validador para mostrar mensaje de error solo si se escribe la contraseña actual

* Set constant variable for valid current password in profile page
2025-01-28 17:26:43 -06:00
Alexandre Vryghem
da9d848fe2 Merge branch 'w2p-122357_prevent-request-urls-from-being-fired-multiple-times-7.4' into dspace-8_x 2025-01-29 00:23:05 +01:00
Alexandre Vryghem
d1c8d362bd Merge branch 'refactor-comcol-pages_contribute-7.6' into dspace-8_x
# Conflicts:
#	src/app/browse-by/browse-by-date/browse-by-date.component.ts
#	src/app/browse-by/browse-by-metadata/browse-by-metadata.component.ts
#	src/app/browse-by/browse-by-routing.module.ts
#	src/app/browse-by/browse-by-title/browse-by-title.component.ts
2025-01-29 00:14:58 +01:00
VictorDuranEscire
47159fe15b Changing metadata in a user profile without specifying a password brings up a success and an error panel (#3818)
* Agregar validador para mostrar mensaje de error solo si se escribe la contraseña actual

* Agregar validador para mostrar mensaje de error solo si se escribe la contraseña actual

* Set constant variable for valid current password in profile page
2025-01-28 17:07:00 -06:00
Alexandre Vryghem
bb3d2bb483 122357: Reduced the amount of times the browse observables are fired again
(cherry picked from commit 0570542b1e)
2025-01-28 23:48:07 +01:00
Alexandre Vryghem
8c92364d43 122357: Ensure the request href$ observable aren't triggered multiple times
(cherry picked from commit 3ecdfe422d)
2025-01-28 23:38:23 +01:00
Tim Donohue
1cc4756ee2 Merge pull request #3270 from atmire/w2p-117544_support-for-disabled-elements-for-screen-readers-7.x
[Port dspace-7_x] support for disabled buttons for screen readers
2025-01-28 16:36:24 -06:00
Tim Donohue
05239743ac Merge pull request #3269 from atmire/w2p-117544_support-for-disabled-elements-for-screen-readers-8.0
[Port dspace-8_x] support for disabled elements for screen readers
2025-01-28 16:19:21 -06:00
Tim Donohue
0efa4a6174 Merge pull request #3910 from DSpace/backport-3909-to-dspace-8_x
[Port dspace-8_x] removal of duplicate keys in en.json5 and de.json5
2025-01-28 09:45:34 -06:00
Sascha Szott
17a868a2c4 remove duplicate key
(cherry picked from commit baf3886115)
2025-01-28 15:10:47 +00:00
Sascha Szott
ac3fc1dc32 remove duplicate key
(cherry picked from commit 262723b0ca)
2025-01-28 15:10:47 +00:00
Tim Donohue
08bda53a2e Merge pull request #3907 from 4Science/task/dspace-7_x/DURACOM-303
[Port dspace-7_x] Exclude search and browse from Angular SSR
2025-01-27 10:25:50 -06:00
Jens Vannerum
cd2f8abd2d 117544: fix issues latest 7.x merge 2025-01-27 10:23:49 +01:00
Jens Vannerum
e9e3d86aab 117544: use directive after latest 8.x merge 2025-01-27 10:22:17 +01:00
FrancescoMolinaro
8a4f24fc31 [DURACOM-303] adapt tests dependencies and template variable 2025-01-27 09:34:42 +01:00
dependabot[bot]
868b021118 Bump @babel/runtime from 7.26.0 to 7.26.7
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.26.0 to 7.26.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.7/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-27 02:35:56 +00:00
dependabot[bot]
cfcbef2ec1 Bump @babel/runtime from 7.26.0 to 7.26.7
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.26.0 to 7.26.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.7/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-27 02:32:59 +00:00
Tim Donohue
daaa642bfe Merge pull request #3857 from DSpace/dependabot/npm_and_yarn/dspace-8_x/mirador-3.4.3
Bump mirador from 3.4.2 to 3.4.3
2025-01-24 16:19:53 -06:00
Tim Donohue
c7d8949c82 Merge pull request #3861 from DSpace/dependabot/npm_and_yarn/dspace-7_x/mirador-3.4.3
Bump mirador from 3.4.2 to 3.4.3
2025-01-24 16:19:29 -06:00
Tim Donohue
0c9c876e3d Merge pull request #3900 from DSpace/backport-3212-to-dspace-8_x
[Port dspace-8_x] Fix truncatable-part keyboard accessibility
2025-01-24 13:48:33 -06:00
Tim Donohue
7f1ae419af Merge pull request #3899 from DSpace/backport-3212-to-dspace-7_x
[Port dspace-7_x] Fix truncatable-part keyboard accessibility
2025-01-24 13:48:27 -06:00
Tim Donohue
1c786744ee Merge pull request #3897 from DSpace/backport-3413-to-dspace-8_x
[Port dspace-8_x] Improve descriptive labels for show/hide x more buttons for related items (Item/Entity Homepage)
2025-01-24 12:52:13 -06:00
Tim Donohue
30d57174e6 Merge pull request #3896 from DSpace/backport-3413-to-dspace-7_x
[Port dspace-7_x] Improve descriptive labels for show/hide x more buttons for related items (Item/Entity Homepage)
2025-01-24 12:52:04 -06:00
Tim Donohue
42aa95344a Merge pull request #3894 from DSpace-Labs/dependabot/npm_and_yarn/cross-spawn-7.0.6
Bump cross-spawn from 7.0.3 to 7.0.6
2025-01-24 12:29:18 -06:00
Tim Donohue
c155a60a7e Merge pull request #3895 from DSpace-Labs/dependabot/npm_and_yarn/cross-spawn-7.0.6
Bump cross-spawn from 7.0.3 to 7.0.6
2025-01-24 12:29:05 -06:00
autavares-dev
b584d3fee0 Fix truncatable-part keyboard accessibility
(cherry picked from commit 6cb4faa8d3)
2025-01-24 18:26:46 +00:00
autavares-dev
5d6bf0bb33 Fix truncatable-part keyboard accessibility
(cherry picked from commit 6cb4faa8d3)
2025-01-24 18:26:41 +00:00
Alisa Ismailati
7d59615b7e [CST-17153] improve descriptive labels for show/hide more buttons on related items lists
(cherry picked from commit 7cd82e542b)
2025-01-24 18:05:37 +00:00
Alisa Ismailati
147564b114 [CST-17153] improve descriptive labels for show/hide more buttons on related items lists
(cherry picked from commit 7cd82e542b)
2025-01-24 18:05:32 +00:00
dependabot[bot]
22b0f4805a Bump cross-spawn from 7.0.3 to 7.0.6
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from 7.0.3 to 7.0.6.
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.6)

---
updated-dependencies:
- dependency-name: cross-spawn
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-24 17:43:10 +00:00
dependabot[bot]
ecd2faea4a Bump cross-spawn from 7.0.3 to 7.0.6
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from 7.0.3 to 7.0.6.
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.6)

---
updated-dependencies:
- dependency-name: cross-spawn
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-24 17:43:00 +00:00
FrancescoMolinaro
990f00b129 [DURACOM-303] adapt solution to older version of angular 2025-01-24 18:26:28 +01:00
FrancescoMolinaro
483b97d9c1 [DURACOM-303] refactor thumbnail's skeleton style 2025-01-24 17:41:56 +01:00
FrancescoMolinaro
171a971572 [DURACOM-303] resolve conflicts 2025-01-24 17:41:38 +01:00
FrancescoMolinaro
8a4e8f6045 [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. 2025-01-24 17:41:28 +01:00
FrancescoMolinaro
32364e4f68 [DURACOM-303] add override possibility with input 2025-01-24 17:38:26 +01:00
FrancescoMolinaro
311f648c3f [DURACOM-303] rename variable, minor code refactor 2025-01-24 17:35:36 +01:00
FrancescoMolinaro
2c28f75263 [DURACOM-303] refactor param, add example of configuration 2025-01-24 17:32:31 +01:00
FrancescoMolinaro
53335658e0 [DURACOM-303] adapt interface for ssr 2025-01-24 17:29:37 +01:00
FrancescoMolinaro
9467838066 [DURACOM-303] add grid layout, make SSR enabling configurable, minor restyle of skeletons 2025-01-24 17:29:19 +01:00
FrancescoMolinaro
99656f1357 [DURACOM-303] add loop for filters count 2025-01-24 17:16:20 +01:00
FrancescoMolinaro
8ee05f4352 [DURACOM-303] fix missing url link 2025-01-24 17:11:13 +01:00
FrancescoMolinaro
6756a78ba0 [DURACOM-303] restyle skeleton, add filter badge skeleton 2025-01-24 17:10:20 +01:00
FrancescoMolinaro
b482b58d53 [DURACOM-303] adapt tests 2025-01-24 17:08:39 +01:00
FrancescoMolinaro
312a2a7f58 [DURACOM-303] fix lint and tests 2025-01-24 17:07:27 +01:00
FrancescoMolinaro
d6f0f02c1a [DURACOM-303] minor restyle of skeleton for mobile 2025-01-24 17:05:26 +01:00
FrancescoMolinaro
61eb14783e [DURACOM-303] resolve conflicts 2025-01-24 17:03:47 +01:00
FrancescoMolinaro
126f3c71f4 [DURACOM-303] add skeleton loader for search results and filters 2025-01-24 17:03:29 +01:00
DSpace Bot
6cd092671f [Port dspace-7_x] Improving the color contrast of home news content (#3890)
* Improving the color contrast of home news content

(cherry picked from commit 2290b871f7)

* Improved color contrast

(cherry picked from commit 62b6677e04)

* Adjusting font color changes

(cherry picked from commit be335415fd)

---------

Co-authored-by: root <root@TI-03.OHB.LOCAL>
2025-01-24 09:58:41 -06:00
DSpace Bot
31411e9afa [Port dspace-8_x] Improving the color contrast of home news content (#3891)
* Improving the color contrast of home news content

(cherry picked from commit 2290b871f7)

* Improved color contrast

(cherry picked from commit 62b6677e04)

* Adjusting font color changes

(cherry picked from commit be335415fd)

---------

Co-authored-by: root <root@TI-03.OHB.LOCAL>
2025-01-24 09:58:29 -06:00
FrancescoMolinaro
39c5de6e18 [DURACOM-303] implement skeleton component for search results 2025-01-24 16:54:23 +01:00
FrancescoMolinaro
5868a3198f [DURACOM-303] fix missing imports 2025-01-24 16:49:25 +01:00
FrancescoMolinaro
c5fd4426cd [DURACOM-303] prevent possibly long-lasting search and browse calls in SSR 2025-01-24 16:44:39 +01:00
Jens Vannerum
ea715ba9f5 Merge remote-tracking branch 'origin/dspace-7_x' into w2p-117544_support-for-disabled-elements-for-screen-readers-7.x 2025-01-24 10:17:33 +01:00
Jens Vannerum
6182e222d3 Merge remote-tracking branch 'origin/dspace-8_x' into w2p-117544_support-for-disabled-elements-for-screen-readers-8.0 2025-01-24 10:14:41 +01:00
Tim Donohue
f097652594 Merge pull request #3865 from DSpace/dependabot/npm_and_yarn/dspace-7_x/jsonschema-1.5.0
Bump jsonschema from 1.4.1 to 1.5.0
2025-01-23 16:50:21 -06:00
Tim Donohue
905502d988 Merge pull request #3855 from DSpace/dependabot/npm_and_yarn/dspace-8_x/isbot-5.1.21
Bump isbot from 5.1.17 to 5.1.21
2025-01-23 16:04:35 -06:00
Tim Donohue
4a9ece0f82 Merge pull request #3837 from DSpace/dependabot/npm_and_yarn/dspace-8_x/core-js-3.40.0
Bump core-js from 3.39.0 to 3.40.0
2025-01-23 16:02:29 -06:00
Tim Donohue
cecf87364e Merge pull request #3864 from DSpace/dependabot/npm_and_yarn/dspace-7_x/core-js-3.40.0
Bump core-js from 3.39.0 to 3.40.0
2025-01-23 16:02:02 -06:00
Tim Donohue
a950b9c9a2 Merge pull request #3852 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-d300448e1c
Bump sass from 1.83.1 to 1.83.4 in the sass group
2025-01-23 15:12:17 -06:00
Tim Donohue
afa0a9017f Merge pull request #3858 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-d300448e1c
Bump sass from 1.83.1 to 1.83.4 in the sass group
2025-01-23 15:12:00 -06:00
Tim Donohue
7638511762 Merge pull request #3856 from DSpace/dependabot/npm_and_yarn/dspace-7_x/postcss-3a92966d17
Bump postcss from 8.4.49 to 8.5.1 in the postcss group
2025-01-23 14:49:30 -06:00
Tim Donohue
5b9b468079 Merge pull request #3851 from DSpace/dependabot/npm_and_yarn/dspace-8_x/postcss-3a92966d17
Bump postcss from 8.4.49 to 8.5.1 in the postcss group
2025-01-23 14:49:08 -06:00
Tim Donohue
2d7c0cc3dd Merge pull request #3887 from tdonohue/port_3694_to_8x
[Port dspace-8_x] Prevent request with page size of 9999 (#3694)
2025-01-23 14:30:59 -06:00
Alexandre Vryghem
58ff240c05 119276: Added tests to prove that cached stale requests are not emitted
Also cleaned up test class
2025-01-23 20:48:19 +01:00
FrancescoMolinaro
ff304f3314 Prevent request with page size of 9999 (#3694)
* [DURACOM-304] Refactored item-bitstreams.component by removing page size of 9999

* [DURACOM-304] Refactored edit-bitstream-page.component by removing page size of 9999

* [DURACOM-304] Refactored scripts-select.component by using infinite scroll instead of page size 9999

* [DURACOM-304] Refactored dynamic-list.component.ts by removing page size of 9999

* [DURACOM-304] Refactored relationship-type-data.service.ts by removing page size of 9999

* [DURACOM-304] removed unneeded selectAll method (dynamic-lookup-relation-search-tab.component)

* [DURACOM-304] Refactored submission-section-cc-licenses.component.ts by removing page size of 9999

* [DURACOM-304] lint fix

* [DURACOM-304] test fix

* [DURACOM-304] fix accessibility issue on scripts-select

* [DURACOM-304] Refactor of bundle-data.service.ts by removing page size of 9999

* [DURACOM-304] other fix related to accessibility

* [DURACOM-304] lint fix

* [DURACOM-304] resolve conflicts

* [DURACOM-304] fix lint

* [DURACOM-304] add support for findAll method in dynamic-scrollable-dropdown.component.ts

* [DURACOM-304] refactor to use lazy data provider

* [DURACOM-304] improve loading logic for cc-licenses section and dynamic-list

* [DURACOM-304] refactor, fix dynamic-list.component loading

* [DURACOM-304] remove br

---------

Co-authored-by: Alisa Ismailati <alisa.ismailati@4science.com>
2025-01-23 13:44:53 -06:00
dependabot[bot]
2e685b9e05 Bump postcss from 8.4.49 to 8.5.1 in the postcss group
Bumps the postcss group with 1 update: [postcss](https://github.com/postcss/postcss).


Updates `postcss` from 8.4.49 to 8.5.1
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.49...8.5.1)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: postcss
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-23 17:19:37 +00:00
Tim Donohue
31336efad2 Merge pull request #3860 from DSpace/dependabot/npm_and_yarn/dspace-7_x/types/lodash-4.17.14
Bump @types/lodash from 4.17.13 to 4.17.14
2025-01-23 11:11:53 -06:00
Tim Donohue
204062c779 Merge pull request #3836 from DSpace/dependabot/npm_and_yarn/dspace-8_x/testing-905b8585bc
Bump ng-mocks from 14.13.1 to 14.13.2 in the testing group
2025-01-23 11:11:03 -06:00
FrancescoMolinaro
6a1e1bfa8b 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
2025-01-23 10:07:15 -06:00
dependabot[bot]
e24e72c3bb Bump mirador from 3.4.2 to 3.4.3
Bumps [mirador](https://github.com/ProjectMirador/mirador) from 3.4.2 to 3.4.3.
- [Release notes](https://github.com/ProjectMirador/mirador/releases)
- [Commits](https://github.com/ProjectMirador/mirador/compare/v3.4.2...v3.4.3)

---
updated-dependencies:
- dependency-name: mirador
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-23 14:45:40 +00:00
dependabot[bot]
bef9ff1ee0 Bump isbot from 5.1.17 to 5.1.21
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.17 to 5.1.21.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.17...v5.1.21)

---
updated-dependencies:
- dependency-name: isbot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-23 14:45:23 +00:00
Tim Donohue
d23483d26c Merge pull request #3885 from tdonohue/port_3876_to_8x
[Port dspace-8_x] Fix redirect URLs of bitstreams with spaces in filename (new test ONLY)
2025-01-23 08:41:47 -06:00
Andreas Awouters
f4fb0b312d Merge remote-tracking branch 'dspace/dspace-8_x' into accessibility-settings-8_x
# Conflicts:
#	src/app/profile-page/profile-page.component.html
#	src/app/profile-page/profile-page.component.ts
#	src/app/shared/notifications/notifications-board/notifications-board.component.spec.ts
#	src/app/shared/notifications/notifications-board/notifications-board.component.ts
#	src/themes/custom/app/profile-page/profile-page.component.ts
2025-01-23 09:38:01 +01:00
dependabot[bot]
d9269c7d28 Bump sass from 1.83.1 to 1.83.4 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.83.1 to 1.83.4
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.83.1...1.83.4)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-22 23:47:29 +00:00
dependabot[bot]
fc2d3f0a23 Bump sass from 1.83.1 to 1.83.4 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.83.1 to 1.83.4
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.83.1...1.83.4)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-22 23:47:29 +00:00
dependabot[bot]
6cb3e8bbfb Bump postcss from 8.4.49 to 8.5.1 in the postcss group
Bumps the postcss group with 1 update: [postcss](https://github.com/postcss/postcss).


Updates `postcss` from 8.4.49 to 8.5.1
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.49...8.5.1)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: postcss
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-22 23:47:21 +00:00
Mohana Sarmiento
19db3faf65 Add unit test 2025-01-22 16:38:58 -06:00
dependabot[bot]
2d0d9bb9db Bump ng-mocks from 14.13.1 to 14.13.2 in the testing group
Bumps the testing group with 1 update: [ng-mocks](https://github.com/help-me-mom/ng-mocks).


Updates `ng-mocks` from 14.13.1 to 14.13.2
- [Release notes](https://github.com/help-me-mom/ng-mocks/releases)
- [Changelog](https://github.com/help-me-mom/ng-mocks/blob/master/CHANGELOG.md)
- [Commits](https://github.com/help-me-mom/ng-mocks/compare/v14.13.1...v14.13.2)

---
updated-dependencies:
- dependency-name: ng-mocks
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-22 22:38:19 +00:00
dependabot[bot]
2904ca28a1 Bump core-js from 3.39.0 to 3.40.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.39.0 to 3.40.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.40.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-22 22:38:17 +00:00
Tim Donohue
00ff0cc7e4 Merge pull request #3876 from scholarsportal/fix-bitsream-filename-encoding-url-dspace-7_x
Fix redirect URLs of bitstreams with spaces in filename
2025-01-22 16:04:49 -06:00
Tim Donohue
81fa0ba446 Merge pull request #3346 from 4Science/task/dspace-7_x/CST-14904
[Port dspace-7_x] Add orcid icon with tooltip
2025-01-22 12:39:51 -06:00
Tim Donohue
2a5d779598 Merge pull request #3345 from 4Science/task/dspace-8_x/CST-15077
[Port dspace-8_x] Add orcid icon with tooltip
2025-01-22 12:39:13 -06:00
Tim Donohue
5342653b99 Merge pull request #3879 from alanorth/angular-ssr-sitemap-dspace7
[Post dspace-7_x] Restrict Angular SSR to paths in the sitemap
2025-01-22 10:21:10 -06:00
Tim Donohue
7f1a21b4ae Merge pull request #3877 from DSpace/backport-3682-to-dspace-8_x
[Port dspace-8_x] Restrict Angular SSR to paths in the sitemap
2025-01-22 10:20:39 -06:00
Andreas Awouters
9052509fd2 Merge branch 'accessibility-settings-7.6' into accessibility-settings-8_x
# Conflicts:
#	src/app/accessibility/accessibility-settings.service.spec.ts
2025-01-22 16:08:24 +01:00
Andreas Awouters
d4b0cf21d3 Merge remote-tracking branch 'dspace/dspace-7_x' into accessibility-settings-7_x
# Conflicts:
#	src/app/profile-page/profile-page.component.html
#	src/app/shared/notifications/notifications-board/notifications-board.component.spec.ts
#	src/app/shared/notifications/notifications-board/notifications-board.component.ts
2025-01-22 15:56:10 +01:00
Tim Donohue
88fb275017 Merge pull request #3878 from DSpace/backport-3875-to-dspace-7_x
[Port dspace-7_x] Stabilize e2e tests that use admin sidebar menu
2025-01-22 08:55:54 -06:00
Andreas Awouters
d9614b9a1b Merge branch 'accessibility-settings-7.6' into accessibility-settings-7_x 2025-01-22 15:50:41 +01:00
Andreas Awouters
b55a318676 119602: Reset notificationTimeOut when left on 0 2025-01-22 15:47:13 +01:00
Alan Orth
b839252ed7 Restrict SSR to paths in the sitemap
Because Angular SSR is not very efficient, after discussion with
the Google Scholar team we realized a compromise would be to only
use SSR for pages in the DSpace sitemap (and the home page).
2025-01-22 11:02:35 +03:00
Tim Donohue
e3f13f8c54 Ensure admin menu e2e tests hover over admin menu before clicking on it. Attempt to stabilize tests which open this menu.
(cherry picked from commit e9cd0f4c64)
2025-01-21 23:12:01 +00:00
Tim Donohue
a6171bba41 Merge pull request #3875 from tdonohue/fix_admin_e2e_tests
Stabilize e2e tests that use admin sidebar menu
2025-01-21 16:58:50 -06:00
Alan Orth
026703d170 Restrict SSR to paths in the sitemap
Because Angular SSR is not very efficient, after discussion with
the Google Scholar team we realized a compromise would be to only
use SSR for pages in the DSpace sitemap (and the home page).

(cherry picked from commit 5b3b3bfb9c)
2025-01-21 22:38:01 +00:00
Mohana Sarmiento
2bd53d822a Add unit test 2025-01-21 16:26:01 -05:00
Tim Donohue
ad74ce6049 Merge pull request #3874 from DSpace/backport-3872-to-dspace-8_x
[Port dspace-8_x] SCSS cleanup: remove duplicated line
2025-01-21 15:12:34 -06:00
Tim Donohue
b11543c3a5 Merge pull request #3873 from DSpace/backport-3872-to-dspace-7_x
[Port dspace-7_x] SCSS cleanup: remove duplicated line
2025-01-21 14:46:03 -06:00
Tim Donohue
e9cd0f4c64 Ensure admin menu e2e tests hover over admin menu before clicking on it. Attempt to stabilize tests which open this menu. 2025-01-21 14:25:12 -06:00
Sascha Szott
351c4decef remove duplicated line
(cherry picked from commit 5d04e44ff3)
2025-01-21 19:37:23 +00:00
Sascha Szott
6035d9e925 remove duplicated line
(cherry picked from commit 5d04e44ff3)
2025-01-21 19:37:19 +00:00
Mohana Sarmiento
74d6dbb454 Fix double encoding of bitstream filenames in URL 2025-01-20 18:13:35 -05:00
Andrea Barbasso
d0b6571954 [CST-14904] improve orcid logo image alt 2025-01-20 15:31:31 +01:00
Andrea Barbasso
44b900f5db [CST-15077] improve orcid logo image alt 2025-01-20 15:27:32 +01:00
dependabot[bot]
39ddc5cbcd Bump jsonschema from 1.4.1 to 1.5.0
Bumps [jsonschema](https://github.com/tdegrunt/jsonschema) from 1.4.1 to 1.5.0.
- [Commits](https://github.com/tdegrunt/jsonschema/commits)

---
updated-dependencies:
- dependency-name: jsonschema
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-17 22:58:28 +00:00
dependabot[bot]
9bc65b99a6 Bump core-js from 3.39.0 to 3.40.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.39.0 to 3.40.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.40.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-17 22:58:20 +00:00
dependabot[bot]
9741ce3e69 Bump mirador from 3.4.2 to 3.4.3
Bumps [mirador](https://github.com/ProjectMirador/mirador) from 3.4.2 to 3.4.3.
- [Release notes](https://github.com/ProjectMirador/mirador/releases)
- [Commits](https://github.com/ProjectMirador/mirador/compare/v3.4.2...v3.4.3)

---
updated-dependencies:
- dependency-name: mirador
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-17 22:57:54 +00:00
dependabot[bot]
7472be0098 Bump @types/lodash from 4.17.13 to 4.17.14
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.13 to 4.17.14.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-17 22:57:43 +00:00
Tim Donohue
9e2699cadd Merge pull request #3839 from DSpace/dependabot/npm_and_yarn/dspace-8_x/jsonschema-1.5.0
Bump jsonschema from 1.4.1 to 1.5.0
2025-01-17 16:49:38 -06:00
Tim Donohue
f3df3cc96c Merge pull request #3830 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sanitize-html-2.14.0
Bump sanitize-html from 2.13.1 to 2.14.0
2025-01-17 16:29:44 -06:00
Tim Donohue
8ef53178db Merge pull request #3831 from DSpace/dependabot/npm_and_yarn/dspace-7_x/isbot-5.1.21
Bump isbot from 5.1.17 to 5.1.21
2025-01-17 12:04:19 -06:00
Tim Donohue
c0ed0da8f3 Merge pull request #3838 from DSpace/dependabot/npm_and_yarn/dspace-8_x/types/lodash-4.17.14
Bump @types/lodash from 4.17.13 to 4.17.14
2025-01-17 12:03:17 -06:00
Tim Donohue
6ca8ac51b2 Merge pull request #3848 from DSpace/backport-3845-to-dspace-8_x
[Port dspace-8_x] Fix issue where scoped browse by would not inititialze correct component
2025-01-17 11:13:46 -06:00
Tim Donohue
395a5b2cb1 Merge pull request #3828 from DSpace/dependabot/npm_and_yarn/dspace-7_x/testing-752a8f7b41
Bump the testing group across 1 directory with 2 updates
2025-01-17 10:40:14 -06:00
Jens Vannerum
f0ea13288a 124382: fix issue where scoped browse by would not init correct components
(cherry picked from commit 32fae27c7a)
2025-01-17 15:12:08 +00:00
Alexandre Vryghem
0570542b1e 122357: Reduced the amount of times the browse observables are fired again 2025-01-17 00:38:37 +01:00
dependabot[bot]
ce5ab70fd4 Bump isbot from 5.1.17 to 5.1.21
Bumps [isbot](https://github.com/omrilotan/isbot) from 5.1.17 to 5.1.21.
- [Changelog](https://github.com/omrilotan/isbot/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omrilotan/isbot/compare/v5.1.17...v5.1.21)

---
updated-dependencies:
- dependency-name: isbot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-15 23:48:52 +00:00
dependabot[bot]
2abdf122b4 Bump sanitize-html from 2.13.1 to 2.14.0
Bumps [sanitize-html](https://github.com/apostrophecms/sanitize-html) from 2.13.1 to 2.14.0.
- [Changelog](https://github.com/apostrophecms/sanitize-html/blob/main/CHANGELOG.md)
- [Commits](https://github.com/apostrophecms/sanitize-html/compare/2.13.1...2.14.0)

---
updated-dependencies:
- dependency-name: sanitize-html
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-15 23:46:54 +00:00
dependabot[bot]
9f9ca860e0 Bump @types/lodash from 4.17.13 to 4.17.14
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.13 to 4.17.14.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-15 23:44:13 +00:00
dependabot[bot]
31c9b854c6 Bump the testing group across 1 directory with 2 updates
Bumps the testing group with 2 updates in the / directory: [cypress](https://github.com/cypress-io/cypress) and [ng-mocks](https://github.com/help-me-mom/ng-mocks).


Updates `cypress` from 13.15.1 to 13.17.0
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/cypress/compare/v13.15.1...v13.17.0)

Updates `ng-mocks` from 14.13.1 to 14.13.2
- [Release notes](https://github.com/help-me-mom/ng-mocks/releases)
- [Changelog](https://github.com/help-me-mom/ng-mocks/blob/master/CHANGELOG.md)
- [Commits](https://github.com/help-me-mom/ng-mocks/compare/v14.13.1...v14.13.2)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: testing
- dependency-name: ng-mocks
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-15 22:54:06 +00:00
Tim Donohue
75e45d4c15 Merge pull request #3774 from DSpace/dependabot/npm_and_yarn/dspace-7_x/mirador-3.4.2
Bump mirador from 3.3.0 to 3.4.2
2025-01-15 16:47:00 -06:00
Tim Donohue
64baa6ed7e Merge pull request #3780 from DSpace/dependabot/npm_and_yarn/dspace-8_x/mirador-3.4.2
Bump mirador from 3.3.0 to 3.4.2
2025-01-15 16:46:22 -06:00
Tim Donohue
d88c8ef986 Merge pull request #3669 from DSpace/dependabot/npm_and_yarn/dspace-7_x/eslint-6ac3f070f3
Bump eslint-plugin-jsonc from 2.16.0 to 2.18.2 in the eslint group across 1 directory
2025-01-15 15:56:34 -06:00
Tim Donohue
fab441aacb Merge pull request #3666 from DSpace/dependabot/npm_and_yarn/dspace-8_x/eslint-6ac3f070f3
Bump eslint-plugin-jsonc from 2.16.0 to 2.18.2 in the eslint group across 1 directory
2025-01-15 15:56:07 -06:00
Tim Donohue
f07a62b8b6 Merge pull request #3799 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-fc80c07a3c
Bump sass from 1.80.6 to 1.83.1 in the sass group across 1 directory
2025-01-15 15:53:30 -06:00
Tim Donohue
a6a44fd0b7 Merge pull request #3800 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-fc80c07a3c
Bump sass from 1.80.6 to 1.83.1 in the sass group across 1 directory
2025-01-15 15:52:57 -06:00
Tim Donohue
2b96983f9d Merge pull request #3775 from DSpace/dependabot/npm_and_yarn/dspace-7_x/fortawesome/fontawesome-free-6.7.2
Bump @fortawesome/fontawesome-free from 6.6.0 to 6.7.2
2025-01-15 15:12:53 -06:00
Tim Donohue
7eabaa79b4 Merge pull request #3778 from DSpace/dependabot/npm_and_yarn/dspace-8_x/fortawesome/fontawesome-free-6.7.2
Bump @fortawesome/fontawesome-free from 6.6.0 to 6.7.2
2025-01-15 15:12:25 -06:00
Tim Donohue
c8b2642f57 Merge pull request #3829 from DSpace/dependabot/npm_and_yarn/dspace-7_x/express-4.21.2
Bump express from 4.21.1 to 4.21.2
2025-01-15 15:00:29 -06:00
Tim Donohue
de89bb20af Merge pull request #3732 from DSpace/dependabot/npm_and_yarn/dspace-8_x/express-4.21.2
Bump express from 4.21.1 to 4.21.2
2025-01-15 15:00:00 -06:00
dependabot[bot]
fd166fe79a Bump eslint-plugin-jsonc in the eslint group across 1 directory
Bumps the eslint group with 1 update in the / directory: [eslint-plugin-jsonc](https://github.com/ota-meshi/eslint-plugin-jsonc).


Updates `eslint-plugin-jsonc` from 2.16.0 to 2.18.2
- [Release notes](https://github.com/ota-meshi/eslint-plugin-jsonc/releases)
- [Changelog](https://github.com/ota-meshi/eslint-plugin-jsonc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ota-meshi/eslint-plugin-jsonc/compare/v2.16.0...v2.18.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsonc
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-15 19:51:07 +00:00
dependabot[bot]
e4bb42bb30 Bump eslint-plugin-jsonc in the eslint group across 1 directory
Bumps the eslint group with 1 update in the / directory: [eslint-plugin-jsonc](https://github.com/ota-meshi/eslint-plugin-jsonc).


Updates `eslint-plugin-jsonc` from 2.16.0 to 2.18.2
- [Release notes](https://github.com/ota-meshi/eslint-plugin-jsonc/releases)
- [Changelog](https://github.com/ota-meshi/eslint-plugin-jsonc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ota-meshi/eslint-plugin-jsonc/compare/v2.16.0...v2.18.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsonc
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-15 19:49:39 +00:00
Tim Donohue
6446911441 Merge pull request #3844 from tdonohue/port_3842_to_7x
[Port dspace-7_x] Attempt to stabilize a few randomly failing e2e tests
2025-01-15 13:45:19 -06:00
Tim Donohue
8a6fc090b8 Merge pull request #3843 from tdonohue/port_3842_to_8x
[Port dspace-8_x] Attempt to stabilize a few randomly failing e2e tests
2025-01-15 13:45:09 -06:00
Tim Donohue
dde029df7f Ensure Item Edit page tab is visible before & after clicking it. 2025-01-15 13:04:32 -06:00
Tim Donohue
b0924b5d98 Ensure Admin sidebar link is visible before clicking links 2025-01-15 13:04:32 -06:00
Tim Donohue
9e1ce916f6 Ensure Item Edit page tab is visible before & after clicking it. 2025-01-15 13:01:58 -06:00
Tim Donohue
ecceaf9ee1 Ensure Admin sidebar link is visible before clicking links 2025-01-15 13:01:58 -06:00
Tim Donohue
fcf3370d66 Merge pull request #3727 from DSpace/dependabot/npm_and_yarn/dspace-7_x/axios-1.7.9
Bump axios from 1.7.7 to 1.7.9
2025-01-14 17:02:24 -06:00
Tim Donohue
a01ca48c87 Merge pull request #3733 from DSpace/dependabot/npm_and_yarn/dspace-8_x/axios-1.7.9
Bump axios from 1.7.7 to 1.7.9
2025-01-14 17:01:47 -06:00
Tim Donohue
813e965938 Merge pull request #3702 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sortablejs-1.15.6
Bump sortablejs from 1.15.3 to 1.15.6
2025-01-14 16:53:20 -06:00
dependabot[bot]
ed660cb8f7 Bump jsonschema from 1.4.1 to 1.5.0
Bumps [jsonschema](https://github.com/tdegrunt/jsonschema) from 1.4.1 to 1.5.0.
- [Commits](https://github.com/tdegrunt/jsonschema/commits)

---
updated-dependencies:
- dependency-name: jsonschema
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-13 03:49:07 +00:00
dependabot[bot]
fb3a10250d Bump sass from 1.80.6 to 1.83.1 in the sass group across 1 directory
Bumps the sass group with 1 update in the / directory: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.80.6 to 1.83.1
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.80.6...1.83.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-13 03:47:21 +00:00
dependabot[bot]
3c16537fe4 Bump express from 4.21.1 to 4.21.2
Bumps [express](https://github.com/expressjs/express) from 4.21.1 to 4.21.2.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/4.21.2/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.21.1...4.21.2)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-13 02:39:41 +00:00
dependabot[bot]
a57fd1a069 Bump sass from 1.80.6 to 1.83.1 in the sass group across 1 directory
Bumps the sass group with 1 update in the / directory: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.80.6 to 1.83.1
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.80.6...1.83.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-13 02:39:03 +00:00
Tim Donohue
1c4ffe58fd Merge pull request #3825 from tdonohue/port_3105_to_8x
[Port dspace-8_x] Fix for User profile (/profile): only 20 group memberships shown instead of all
2025-01-10 17:07:37 -06:00
Tim Donohue
6f5864d106 Merge pull request #3826 from tdonohue/port_3105_to_7x
[Port dspace-7_x] Fix for User profile (/profile): only 20 group memberships shown instead of all
2025-01-10 17:07:33 -06:00
Tim Donohue
99f2ecd86b Merge pull request #3823 from tdonohue/port_3096_to_8x
[Port dspace-8_x] Change - Metadata field selector, add infinite scroll for data paginated
2025-01-10 16:23:37 -06:00
Tim Donohue
fbe4ce5829 Merge pull request #3824 from tdonohue/port_3096_to_7x
[Port dspace-7_x] Change - Metadata field selector, add infinite scroll for data paginated
2025-01-10 16:23:13 -06:00
VictorHugoDuranS
112bed787a Fix for User profile (/profile): only 20 group memberships shown instead of all (#3105)
* Add - groups paginated on profile page

* Add - groups paginated on profile page

* Add - groups paginated on profile page

* Add - groups paginated on profile page

* Fix UPDATE - Add pagination message error and loader

* Update BRANCH

* Fix - LINT ERRORS

* Fix: Error declaring variable for group pagination

* Fix: Remove unnecessary translations for paging groups

* Fix: Lint erros

* Fix: Remove unnecessary translations

---------

Co-authored-by: VictorDuranEscire <victor@escire.lat>
2025-01-10 15:53:09 -06:00
VictorHugoDuranS
8712504376 Fix for User profile (/profile): only 20 group memberships shown instead of all (#3105)
* Add - groups paginated on profile page

* Add - groups paginated on profile page

* Add - groups paginated on profile page

* Add - groups paginated on profile page

* Fix UPDATE - Add pagination message error and loader

* Update BRANCH

* Fix - LINT ERRORS

* Fix: Error declaring variable for group pagination

* Fix: Remove unnecessary translations for paging groups

* Fix: Lint erros

* Fix: Remove unnecessary translations

---------

Co-authored-by: VictorDuranEscire <victor@escire.lat>
2025-01-10 15:43:49 -06:00
VictorHugoDuranS
05d5a0816d Change - Metadata field selector, add infinite scroll for data paginated (#3096)
* Change - Metadata field selector add infinite scroll for data paginated

* Update change on new BRANCH

* Fix - LINT ERRORS

* Fix - LINT ERRORS
2025-01-10 15:42:33 -06:00
VictorHugoDuranS
eaa239c764 Change - Metadata field selector, add infinite scroll for data paginated (#3096)
* Change - Metadata field selector add infinite scroll for data paginated

* Update change on new BRANCH

* Fix - LINT ERRORS

* Fix - LINT ERRORS
2025-01-10 15:18:51 -06:00
Tim Donohue
fcc148f546 Merge pull request #3822 from DSpace/backport-3608-to-dspace-8_x
[Port dspace-8_x] Add button to allow free-text editing in the dropdown field of Edit Item
2025-01-10 14:40:38 -06:00
Toni Prieto
08257cb9f2 Allow free-text editing for hierarchical vocabulary fields as well
(cherry picked from commit 67f9623cf4)
2025-01-10 19:21:27 +00:00
Toni Prieto
496ce64505 Add button to enable free-text editing in dropdown fields during item edition and fix error when clicking "Clear selection" option
(cherry picked from commit 28c8550ef5)
2025-01-10 19:21:27 +00:00
Tim Donohue
80f6cd5b4e Merge pull request #3816 from toniprieto/translate-ca-8x
[Port dspace-8_x] Update catalan translation
2025-01-09 16:57:55 -06:00
Tim Donohue
76ca7717ac Merge pull request #3815 from toniprieto/translate-es-8x
[Port dspace-8_x] Update spanish translation
2025-01-09 16:57:01 -06:00
Toni Prieto
eb51b7986d Update ca.json5 2025-01-09 20:14:00 +01:00
Toni Prieto
1c48188200 Update es.json5 2025-01-09 20:02:39 +01:00
Alexandre Vryghem
3ecdfe422d 122357: Ensure the request href$ observable aren't triggered multiple times 2025-01-09 18:47:14 +01:00
Tim Donohue
bfe927e65a Merge pull request #3811 from tdonohue/port_3701_to_8x
[Port dspace-8_x] Reduce browse definition requests on simple item page (#3701)
2025-01-08 07:43:29 -06:00
Alan Orth
58e9a60812 Merge pull request #3812 from tdonohue/port_3701_to_7x 2025-01-08 10:20:58 +03:00
Koen Pauwels
76539dd8a1 Reduce browse definition requests on simple item page (#3701)
* 121561 Reduce the number of browse definition requests on Item pages by reusing the navbar request for all browse indexes

* Fix test issues.

---------

Co-authored-by: Koen Pauwels <koen.pauwels@atmire.com>
2025-01-07 17:00:53 -06:00
Tim Donohue
d0a8448de6 Merge pull request #3668 from DSpace/dependabot/npm_and_yarn/dspace-7_x/postcss-65f8102df2
Bump postcss from 8.4.47 to 8.4.49 in the postcss group across 1 directory
2025-01-07 16:18:38 -06:00
Tim Donohue
e8f0c20beb Merge pull request #3665 from DSpace/dependabot/npm_and_yarn/dspace-8_x/postcss-65f8102df2
Bump postcss from 8.4.47 to 8.4.49 in the postcss group across 1 directory
2025-01-07 16:18:18 -06:00
Tim Donohue
b8509d8f74 Merge pull request #3779 from DSpace/dependabot/npm_and_yarn/dspace-8_x/testing-4e904f02fc
Bump cypress from 13.16.0 to 13.17.0 in the testing group across 1 directory
2025-01-07 16:03:36 -06:00
Tim Donohue
e07c2514fe Merge pull request #3777 from DSpace/dependabot/npm_and_yarn/dspace-8_x/webpack-2095da29ad
Bump webpack from 5.96.1 to 5.97.1 in the webpack group
2025-01-07 16:01:53 -06:00
Koen Pauwels
0120896135 Reduce browse definition requests on simple item page (#3701)
* 121561 Reduce the number of browse definition requests on Item pages by reusing the navbar request for all browse indexes

* Fix test issues.

---------

Co-authored-by: Koen Pauwels <koen.pauwels@atmire.com>
2025-01-07 15:36:20 -06:00
Tim Donohue
9fce33f514 Merge pull request #3805 from DSpace/backport-3719-to-dspace-7_x
[Port dspace-7_x] Remove nested span elements with duplicate content of parent elements
2025-01-07 10:46:04 -06:00
Tim Donohue
9284763fe2 Merge pull request #3806 from DSpace/backport-3719-to-dspace-8_x
[Port dspace-8_x] Remove nested span elements with duplicate content of parent elements
2025-01-07 10:45:54 -06:00
Sascha Szott
25de1e48f3 fix indentation
(cherry picked from commit dbd67f056e)
2025-01-07 15:09:01 +00:00
Sascha Szott
05dce42f87 remove nested span element
(cherry picked from commit acb7c9bd33)
2025-01-07 15:09:01 +00:00
Sascha Szott
2029156e49 fix nested span element
(cherry picked from commit 97b5e0cc92)
2025-01-07 15:09:01 +00:00
Sascha Szott
00a514b969 fix nested span element
(cherry picked from commit e9a28c6d3d)
2025-01-07 15:09:01 +00:00
Sascha Szott
1322d0ad69 fix nested span element
(cherry picked from commit 2e174cd9e6)
2025-01-07 15:09:01 +00:00
Sascha Szott
483214d8e2 fix nested span element
(cherry picked from commit 15d3f257b3)
2025-01-07 15:09:01 +00:00
Sascha Szott
e41e8b2847 fix nested span element
(cherry picked from commit 8509096c32)
2025-01-07 15:09:01 +00:00
Sascha Szott
43d4e97695 fix nested span element
(cherry picked from commit 84878ede67)
2025-01-07 15:09:01 +00:00
Sascha Szott
5f32b643b3 fix nested span element in templates
(cherry picked from commit 394ecea118)
2025-01-07 15:09:01 +00:00
Sascha Szott
04123f92aa fix indentation
(cherry picked from commit dbd67f056e)
2025-01-07 15:08:57 +00:00
Sascha Szott
7538f49a36 remove nested span element
(cherry picked from commit acb7c9bd33)
2025-01-07 15:08:57 +00:00
Sascha Szott
60586f6c33 fix nested span element
(cherry picked from commit 97b5e0cc92)
2025-01-07 15:08:57 +00:00
Sascha Szott
86a6897861 fix nested span element
(cherry picked from commit e9a28c6d3d)
2025-01-07 15:08:57 +00:00
Sascha Szott
68372b2cb8 fix nested span element
(cherry picked from commit 2e174cd9e6)
2025-01-07 15:08:57 +00:00
Sascha Szott
cefeb6a1d6 fix nested span element
(cherry picked from commit 15d3f257b3)
2025-01-07 15:08:57 +00:00
Sascha Szott
9c859b1fdc fix nested span element
(cherry picked from commit 8509096c32)
2025-01-07 15:08:57 +00:00
Sascha Szott
fbaa5068af fix nested span element
(cherry picked from commit 84878ede67)
2025-01-07 15:08:56 +00:00
Sascha Szott
8515de3d10 fix nested span element in templates
(cherry picked from commit 394ecea118)
2025-01-07 15:08:56 +00:00
dependabot[bot]
da3af31ac2 Bump express from 4.21.1 to 4.21.2
Bumps [express](https://github.com/expressjs/express) from 4.21.1 to 4.21.2.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/4.21.2/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.21.1...4.21.2)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-06 23:20:49 +00:00
Tim Donohue
34ee111133 Merge pull request #3636 from DSpace/dependabot/npm_and_yarn/dspace-8_x/express-static-gzip-2.2.0
Bump express-static-gzip from 2.1.8 to 2.2.0
2025-01-06 17:00:48 -06:00
Tim Donohue
96cdab8d6a Merge pull request #3640 from DSpace/dependabot/npm_and_yarn/dspace-7_x/express-static-gzip-2.2.0
Bump express-static-gzip from 2.1.8 to 2.2.0
2025-01-06 17:00:32 -06:00
Tim Donohue
ebc7799404 Merge pull request #3795 from alexandrevryghem/w2p-122005_fixed-dropdown-values-resetting-on-enter_contribute-7_x
[Port dspace-7_x] Fixed dropdown/lookup & lookup-name fields being reset when hitting enter
2025-01-06 16:24:11 -06:00
Tim Donohue
6fe351aa2c Merge pull request #3796 from alexandrevryghem/w2p-122005_fixed-dropdown-values-resetting-on-enter_contribute-8_x
[Port dspace-8_x] Fixed dropdown/lookup & lookup-name fields being reset when hitting enter
2025-01-06 16:24:02 -06:00
Alexandre Vryghem
d3d86f4f2d 119799: Prevent the lookup/lookup-name fields from resetting when hitting the enter key in another input field
(cherry picked from commit c8694e1a87)
2025-01-06 22:38:58 +01:00
Alexandre Vryghem
c925424ced 119799: Prevent the lookup/lookup-name fields from resetting when hitting the enter key in another input field
(cherry picked from commit c8694e1a87)
2025-01-06 22:31:54 +01:00
Tim Donohue
202cfe427b Merge pull request #3802 from DSpace/backport-3772-to-dspace-8_x
[Port dspace-8_x] add German translation of process view related keys
2025-01-06 14:04:01 -06:00
Tim Donohue
aa93989f4b Merge pull request #3803 from DSpace/backport-3142-to-dspace-8_x
[Port dspace-8_x] Add support for non repeatable relationships
2025-01-06 14:03:28 -06:00
Yana De Pauw
48f7e51695 115284: Add tests for isRepeatable
(cherry picked from commit 161daffcc0)
2025-01-06 18:04:33 +00:00
Yana De Pauw
e4a464d44f 115284: Add repeatable based on relationship max cardinality
(cherry picked from commit 105547598f)
2025-01-06 18:04:33 +00:00
Tim Donohue
a078932857 Merge pull request #3143 from atmire/w2p-115284_add-support-for-non-repeatable-relationships_dspace-7-x
[Port dspace-7_x] Add support for non repeatable relationships
2025-01-06 11:59:13 -06:00
Sascha Szott
dda5ee1123 add German translation of process view related keys
(cherry picked from commit 85a120da62)
2025-01-06 16:49:36 +00:00
Tim Donohue
2d58de86bd Merge pull request #3801 from tdonohue/port_3192_to_8x
[Port dspace-8_x] Spanish translation keys
2025-01-06 10:28:43 -06:00
Tim Donohue
da6447aefd Port of 3192 by @Andrea-Guevara 2025-01-06 09:45:39 -06:00
Tim Donohue
7140e6e716 Merge pull request #3793 from alanorth/node-version-readme-8x
[Port dspace-8_x] README.md: update Node.js and NPM versions
2025-01-06 09:16:32 -06:00
Tim Donohue
0b6effe4aa Merge pull request #3791 from DSpace/backport-3737-to-dspace-8_x
[Port dspace-8_x] Fixes typo for 'descrption'
2025-01-06 09:13:23 -06:00
Tim Donohue
15e0fd4636 Merge pull request #3790 from DSpace/backport-3718-to-dspace-8_x
[Port dspace-8_x] fix selector in OrgUnitSearchResultListSubmissionElementComponent compontent
2025-01-06 09:01:41 -06:00
Tim Donohue
a1b7c8d9c5 Merge pull request #3789 from DSpace/backport-3718-to-dspace-7_x
[Port dspace-7_x] fix selector in OrgUnitSearchResultListSubmissionElementComponent compontent
2025-01-06 09:00:57 -06:00
dependabot[bot]
894448e3dc Bump postcss in the postcss group across 1 directory
Bumps the postcss group with 1 update in the / directory: [postcss](https://github.com/postcss/postcss).


Updates `postcss` from 8.4.47 to 8.4.49
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.47...8.4.49)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: postcss
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-06 03:04:09 +00:00
Alexandre Vryghem
636c85ae59 Merge branch 'w2p-122005_fixed-dropdown-values-resetting-on-enter_contribute-7.6' into dspace-8_x 2025-01-03 17:30:53 +01:00
Alexandre Vryghem
b25294c872 Merge branch 'w2p-122005_fixed-dropdown-values-resetting-on-enter_contribute-7.6' into dspace-7_x
# Conflicts:
#	src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.html
2025-01-03 17:08:46 +01:00
Alan Orth
f993ced1b7 README.md: update Node.js and NPM versions
Angular 17.x needs Node.js 18.x or 20.x, which come with NPM v10.

See: https://angular.dev/reference/versions
See: https://nodejs.org/en/about/previous-releases#looking-for-latest-release-of-a-version-branch
2025-01-03 10:30:30 +03:00
nwoodward
323370ee04 fixed typo in descrption
(cherry picked from commit c67dc4d8e4)
2025-01-03 06:07:00 +00:00
Sascha Szott
d61d223d56 fix value of selector in component annotation
(cherry picked from commit 71de4b600b)
2025-01-03 06:01:08 +00:00
Sascha Szott
ecf3298345 fix value of selector in component annotation
(cherry picked from commit 71de4b600b)
2025-01-03 06:01:04 +00:00
Andreas Awouters
64fa1e455e Merge branch 'w2p-122839_vocabulary-preloadlevel-fix' into vocabulary-preloadlevel-fix-8_x
# Conflicts:
#	src/app/shared/form/vocabulary-treeview/vocabulary-treeview.component.spec.ts
#	src/app/shared/form/vocabulary-treeview/vocabulary-treeview.component.ts
2025-01-02 16:16:49 +01:00
Andreas Awouters
18819b76a8 Merge branch 'w2p-122839_vocabulary-preloadlevel-fix' into vocabulary-preloadlevel-fix-7_x
# Conflicts:
#	src/app/shared/form/vocabulary-treeview/vocabulary-treeview.component.ts
2025-01-02 15:12:50 +01:00
Andreas Awouters
4ffde928d4 122839: Fix vocabulary-treeview component tests 2025-01-02 14:42:17 +01:00
Andreas Awouters
9406f7b085 122839: Retrieve preloadLevel from vocabulary before creating tree 2025-01-02 12:04:40 +01:00
jensvannerum
33fdee554e [Port dspace-7_x] Get rid of unnecessary and failing REST requests when navigating between different browse indexes (#3788)
Co-authored-by: Koen Pauwels <koen.pauwels@atmire.com>
Co-authored-by: Jens Vannerum <jens.vannerum@atmire.com>
2025-01-01 12:50:30 +03:00
Andreas Awouters
cee9d0422b 122839: Load nodes up to defined preloadLevel 2024-12-24 15:17:27 +01:00
dependabot[bot]
3f8ef9be9d Bump mirador from 3.3.0 to 3.4.2
Bumps [mirador](https://github.com/ProjectMirador/mirador) from 3.3.0 to 3.4.2.
- [Release notes](https://github.com/ProjectMirador/mirador/releases)
- [Commits](https://github.com/ProjectMirador/mirador/compare/v3.3.0...v3.4.2)

---
updated-dependencies:
- dependency-name: mirador
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-23 03:01:29 +00:00
dependabot[bot]
d4d36f0105 Bump postcss in the postcss group across 1 directory
Bumps the postcss group with 1 update in the / directory: [postcss](https://github.com/postcss/postcss).


Updates `postcss` from 8.4.47 to 8.4.49
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.47...8.4.49)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: postcss
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-23 03:00:49 +00:00
dependabot[bot]
c67861692a Bump cypress in the testing group across 1 directory
Bumps the testing group with 1 update in the / directory: [cypress](https://github.com/cypress-io/cypress).


Updates `cypress` from 13.16.0 to 13.17.0
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/cypress/compare/v13.16.0...v13.17.0)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-23 03:00:28 +00:00
dependabot[bot]
4223abd601 Bump @fortawesome/fontawesome-free from 6.6.0 to 6.7.2
Bumps [@fortawesome/fontawesome-free](https://github.com/FortAwesome/Font-Awesome) from 6.6.0 to 6.7.2.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/6.x/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/compare/6.6.0...6.7.2)

---
updated-dependencies:
- dependency-name: "@fortawesome/fontawesome-free"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-23 03:00:27 +00:00
dependabot[bot]
36701bcf20 Bump webpack from 5.96.1 to 5.97.1 in the webpack group
Bumps the webpack group with 1 update: [webpack](https://github.com/webpack/webpack).


Updates `webpack` from 5.96.1 to 5.97.1
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.96.1...v5.97.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: webpack
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-23 03:00:12 +00:00
dependabot[bot]
5c8eabddab Bump @fortawesome/fontawesome-free from 6.6.0 to 6.7.2
Bumps [@fortawesome/fontawesome-free](https://github.com/FortAwesome/Font-Awesome) from 6.6.0 to 6.7.2.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/6.x/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/compare/6.6.0...6.7.2)

---
updated-dependencies:
- dependency-name: "@fortawesome/fontawesome-free"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-23 02:28:53 +00:00
dependabot[bot]
a18225aa4d Bump mirador from 3.3.0 to 3.4.2
Bumps [mirador](https://github.com/ProjectMirador/mirador) from 3.3.0 to 3.4.2.
- [Release notes](https://github.com/ProjectMirador/mirador/releases)
- [Commits](https://github.com/ProjectMirador/mirador/compare/v3.3.0...v3.4.2)

---
updated-dependencies:
- dependency-name: mirador
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-23 02:28:39 +00:00
Tim Donohue
587df79f3a Merge pull request #3771 from DSpace/backport-3679-to-dspace-8_x
[Port dspace-8_x] #3678, #3217 - Fix ordering and changing values of repeatable inputs in submission form
2024-12-19 17:03:11 -06:00
Tim Donohue
d578222f8f Merge pull request #3770 from DSpace/backport-3679-to-dspace-7_x
[Port dspace-7_x] #3678, #3217 - Fix ordering and changing values of repeatable inputs in submission form
2024-12-19 16:58:03 -06:00
Tim Donohue
6ce17e06c4 Merge pull request #3714 from qultoltd/dspace-8_x
Updating Hungarian translations for DSpace 8.0
2024-12-19 16:56:01 -06:00
Andrea Barbasso
bb608d919f [DURACOM-297] fix changing values in submission form after ordering
(cherry picked from commit 1c9272107c)
2024-12-19 22:25:54 +00:00
Andrea Barbasso
abc3c41c63 [DURACOM-297] fix changing values in submission form after ordering
(cherry picked from commit 1c9272107c)
2024-12-19 22:25:50 +00:00
Tim Donohue
6bcac36c14 Merge pull request #3654 from 4Science/task/dspace-8_x/DURACOM-302_2
#3624 - Fix Multi-Row Drag-and-Drop Issue for Chips in Item Submission Form
2024-12-19 16:24:43 -06:00
Tim Donohue
a8e658a399 Merge pull request #3768 from tdonohue/port_3367_to_7x
[Port dspace-7_x] Accessibility in vocabulary treeview
2024-12-19 14:31:25 -06:00
Tim Donohue
76a02b296f Merge pull request #3765 from DSpace/backport-3322-to-dspace-8_x
[Port dspace-8_x] fix #3241: Configuring the URI link target
2024-12-19 14:31:11 -06:00
Tim Donohue
fa1ce5b7af Merge pull request #3767 from DSpace/backport-3367-to-dspace-8_x
[Port dspace-8_x] Accessibility in vocabulary treeview
2024-12-19 14:30:24 -06:00
Tim Donohue
81522586dd Merge pull request #3766 from tdonohue/port_3322_to_7x
[Port dspace-7_x] fix #3241: Configuring the URI link target
2024-12-19 12:26:22 -06:00
andreaNeki
a8ff6a41e0 Trying to correct an error in the focus implementation 2024-12-19 12:18:08 -06:00
andreaNeki
75260b00d9 Ensuring that the message “There were no items to show” is announced to the screen reader when necessary 2024-12-19 12:17:53 -06:00
andreaNeki
14680b013e Adding focus to the input after the reset button is clicked 2024-12-19 12:15:47 -06:00
andreaNeki
b601405e56 Adding the aria-label attribute to buttons 2024-12-19 12:14:10 -06:00
andreaNeki
5d410b7c53 Trying to correct an error in the focus implementation
(cherry picked from commit 73d39abfe5)
2024-12-19 18:09:22 +00:00
andreaNeki
8e25c178eb Ensuring that the message “There were no items to show” is announced to the screen reader when necessary
(cherry picked from commit 3658ad1ec0)
2024-12-19 18:09:22 +00:00
andreaNeki
e173153e7d Adding focus to the input after the reset button is clicked
(cherry picked from commit e54b1ce274)
2024-12-19 18:09:22 +00:00
andreaNeki
6425ec7d5e Adding the aria-label attribute to buttons
(cherry picked from commit 9565f9b9ee)
2024-12-19 18:09:21 +00:00
root
c6ef2f1bd0 Addition of unit tests for the getLinkAttributes() method 2024-12-19 11:50:28 -06:00
igorbaptist4
2a1ef02d75 fix identation 2024-12-19 11:50:21 -06:00
igorbaptist4
25ab69ff21 Configuring the URI link target 2024-12-19 11:50:07 -06:00
root
8a778f6c3d Addition of unit tests for the getLinkAttributes() method
(cherry picked from commit 8572bfb1b1)
2024-12-19 17:44:43 +00:00
igorbaptist4
f8431dbdd7 fix identation
(cherry picked from commit d7869f408e)
2024-12-19 17:44:42 +00:00
igorbaptist4
5173b28b5a Configuring the URI link target
(cherry picked from commit 0ef2db146b)
2024-12-19 17:44:42 +00:00
Tim Donohue
60ff9a9c79 Merge pull request #3764 from DSpace/backport-3753-to-dspace-8_x
[Port dspace-8_x] Get rid of unnecessary and failing REST requests when navigating between different browse indexes
2024-12-19 10:34:49 -06:00
Koen Pauwels
a938a4f44c 121787: Get rid of multiple unnecessary requests on browse by pages
(cherry picked from commit a105bcd6f4)
2024-12-19 12:57:41 +00:00
Tim Donohue
5188e5d7fe Merge pull request #3602 from DSpace/dependabot/npm_and_yarn/dspace-8_x/core-js-3.39.0
Bump core-js from 3.38.1 to 3.39.0
2024-12-18 16:52:51 -06:00
Tim Donohue
eb3db9ceb6 Merge pull request #3597 from DSpace/dependabot/npm_and_yarn/dspace-7_x/core-js-3.39.0
Bump core-js from 3.38.1 to 3.39.0
2024-12-18 16:52:22 -06:00
DSpace Bot
819e693cfc [Port dspace-8_x] Fix issue with submission sections visibility (#3761)
* Removing position-fixed bootstrap class so that navbar links are available again

(cherry picked from commit 351abaa5c2)
(cherry picked from commit 5c4df8765e)

* A new approach so that the elements of the ds-file-dropzone-no-uploader component don't overlap the navbar and make it inaccessible

(cherry picked from commit 2c259f5ae9)
(cherry picked from commit ee5af8f7d1)

* [DURACOM-291] fix submission section visibility in order to rely on the configured section scope

(cherry picked from commit 8e8979a27a)

* Removing position-fixed bootstrap class so that navbar links are available again

(cherry picked from commit 351abaa5c2)
(cherry picked from commit 3ecec3af51)

* A new approach so that the elements of the ds-file-dropzone-no-uploader component don't overlap the navbar and make it inaccessible

(cherry picked from commit 2c259f5ae9)
(cherry picked from commit 25e2c763be)

---------

Co-authored-by: root <root@TI-03.OHB.LOCAL>
Co-authored-by: Giuseppe Digilio <giuseppe.digilio@4science.com>
2024-12-18 15:57:30 -06:00
Tim Donohue
84c0371aab Merge pull request #3763 from tdonohue/port_3264_to_7x
[Port dspace-7_x] More accessible file download link for users who use a screen reader
2024-12-18 15:55:48 -06:00
Tim Donohue
6380f132af Merge pull request #3762 from tdonohue/port_3264_to_8x
[Port dspace-8_x] More accessible file download link for users who use a screen reader
2024-12-18 15:55:34 -06:00
Andrea-Guevara
4bf4e18389 More accessible file download link for users who use a screen reader (#3264)
* More accessible file download link for users who use a screen reader

* Refactoring implementation - More accessible file download link for users who use a screen reader

* Fixing import error

* Solving the spaces error

* Solving the spaces error

* Solving the spaces error in file pt-BR.json5

---------

Co-authored-by: andreaNeki <root@TI-03.OHB.LOCAL>
2024-12-18 14:48:08 -06:00
Andrea-Guevara
beef2aca17 More accessible file download link for users who use a screen reader (#3264)
* More accessible file download link for users who use a screen reader

* Refactoring implementation - More accessible file download link for users who use a screen reader

* Fixing import error

* Solving the spaces error

* Solving the spaces error

* Solving the spaces error in file pt-BR.json5

---------

Co-authored-by: andreaNeki <root@TI-03.OHB.LOCAL>
2024-12-18 14:30:34 -06:00
DSpace Bot
3bd84a66f2 [CST-15590] Close user profile menu after menu entry is selected (#3760)
(cherry picked from commit fa0ec0bf0c)

Co-authored-by: Alisa Ismailati <alisa.ismailati@4science.com>
2024-12-18 14:17:07 -06:00
Tim Donohue
e842c06f94 Merge pull request #3465 from atmire/item-edit-bitstreams-table-8_x
[Port dspace-8_x] Edit Item, Bitstreams tab: Accessibility improvements
2024-12-18 11:36:44 -06:00
Tim Donohue
2ff5350302 Merge pull request #3716 from alexandrevryghem/w2p-120109_fix-findByHref-and-findListByHref-skipping-their-response_contribute-7_x
[Port dspace-7_x] Fix infinite loading on item pages and optimize menu resolver usage
2024-12-18 11:17:35 -06:00
Tim Donohue
36dd4762ed Merge pull request #3466 from atmire/item-edit-bitstreams-table-7_x
[Port dspace-7_x] Edit Item, Bitstreams tab: Accessibility improvements
2024-12-18 10:49:01 -06:00
Tim Donohue
655558538c Merge pull request #3721 from alexandrevryghem/w2p-117573_remove-observable-function-calls-from-template_contribute-7_x
[Port dspace-7_x] Removed observable function calls from template (part 1)
2024-12-18 10:38:54 -06:00
Tim Donohue
df79a99b99 Merge pull request #3738 from alexandrevryghem/w2p-117573_remove-observable-function-calls-from-template_contribute-8_x
[Port dspace-8_x] Removed observable function calls from template (part 1)
2024-12-18 08:59:34 -06:00
Tim Donohue
12fc5aff71 Merge pull request #3756 from tdonohue/port_3754_to_7x
[Port dspace-7_x][GitHub Actions][Docker] Update Docker scripts & GitHub Actions to use ghcr.io instead of docker.io
2024-12-16 17:26:51 -06:00
Tim Donohue
57b96a378a Merge pull request #3755 from tdonohue/port_3754_to_8x
[Port dspace-8_x][GitHub Actions][Docker] Update Docker scripts & GitHub Actions to use ghcr.io instead of docker.io
2024-12-16 17:00:24 -06:00
Tim Donohue
cd500007b6 Login to GHCR in order to have access to private Docker images for e2e tests. 2024-12-16 16:31:17 -06:00
Tim Donohue
686b61915a Update GitHub Actions for Docker & normal build to use GitHub Container Registry 2024-12-16 16:31:11 -06:00
Tim Donohue
996c877412 Allow for other Docker registries to be used with all Docker compose scripts 2024-12-16 16:30:53 -06:00
Tim Donohue
c9d6c95563 Use fully qualified image names in Dockerfiles. Minor syntax fixes to ENV variables 2024-12-16 16:24:14 -06:00
Tim Donohue
c9800e7bff Login to GHCR in order to have access to private Docker images for e2e tests. 2024-12-16 16:20:02 -06:00
Tim Donohue
ffda455d4f Update GitHub Actions for Docker & normal build to use GitHub Container Registry 2024-12-16 16:19:53 -06:00
Tim Donohue
a027bb2d5d Allow for other Docker registries to be used with all Docker compose scripts 2024-12-16 16:19:42 -06:00
Tim Donohue
969eef9150 Use fully qualified image names in Dockerfiles. Minor syntax fixes to ENV variables 2024-12-16 16:15:10 -06:00
Andreas Awouters
d5221fbf2f Merge branch 'item-edit-bitstreams-table-7.6' into item-edit-bitstreams-table-8_x 2024-12-11 11:49:08 +01:00
Andreas Awouters
bee8bde87f Merge branch 'item-edit-bitstreams-table-7.6' into item-edit-bitstreams-table-7_x 2024-12-11 11:22:56 +01:00
Andreas Awouters
5a88cedc22 118223: Remove console.log 2024-12-11 11:17:01 +01:00
Andreas Awouters
fe4dcf0b24 Merge branch 'accessibility-settings-7.6' into accessibility-settings-8_x
# Conflicts:
#	src/app/accessibility/accessibility-settings.service.spec.ts
#	src/app/accessibility/accessibility-settings.service.ts
#	src/app/info/accessibility-settings/accessibility-settings.component.spec.ts
#	src/app/info/accessibility-settings/accessibility-settings.component.ts
#	src/app/info/info.module.ts
#	src/app/shared/live-region/live-region.service.ts
#	src/app/shared/notifications/notifications-board/notifications-board.component.ts
2024-12-11 10:35:25 +01:00
Andreas Awouters
442b4ea284 Merge branch 'accessibility-settings-7.6' into accessibility-settings-7_x 2024-12-11 10:12:14 +01:00
Andreas Awouters
c71c6667e0 119602: Improve notification hiding toggle useability 2024-12-11 10:10:16 +01:00
Andreas Awouters
010b2f9693 119602: Improve types & docs 2024-12-11 09:35:01 +01:00
Alexandre Vryghem
edfaee6aab 119276: Fixed search service first emitting cached stale values instead of waiting for non-stale response
This was problematic for the places that used getFist operators. This is because they only emit data once, and the first value could be the old cached value
2024-12-10 13:54:57 +01:00
Alexandre Vryghem
5ff475046f 119915: Restored functionality to hide the research profile section on the profile page
(cherry picked from commit ded0079f24)
2024-12-09 23:57:32 +01:00
Alexandre Vryghem
d740b5df6b 117287: Prevent /api/eperson/epersons/undefined from being fired on the create ePerson page
(cherry picked from commit 0cb5b76159)
2024-12-09 23:57:23 +01:00
Alexandre Vryghem
5dcc90c1cd 117287: Fixed UI freezing on withdrawn item pages
(cherry picked from commit 976ac7604b)
2024-12-09 23:57:16 +01:00
Alexandre Vryghem
f0e9948992 Merge branch 'w2p-117573_remove-observable-function-calls-from-template-7.6' into dspace-8_x 2024-12-09 22:58:25 +01:00
dependabot[bot]
838ffc5b6d Bump axios from 1.7.7 to 1.7.9
Bumps [axios](https://github.com/axios/axios) from 1.7.7 to 1.7.9.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.7.7...v1.7.9)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-09 02:55:53 +00:00
dependabot[bot]
297fc01892 Bump axios from 1.7.7 to 1.7.9
Bumps [axios](https://github.com/axios/axios) from 1.7.7 to 1.7.9.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.7.7...v1.7.9)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-09 02:29:01 +00:00
Alexandre Vryghem
f9e67dc513 Merge branch 'w2p-117573_remove-observable-function-calls-from-template-7.6' into w2p-117573_remove-observable-function-calls-from-template_contribute-7_x 2024-12-06 18:09:13 +01:00
Alexandre Vryghem
5ee721f2c4 117287: Embed the communities/collections on the EPerson groups 2024-12-06 18:08:57 +01:00
Alexandre Vryghem
830ada37f5 119915: Restored functionality to hide the research profile section on the profile page
(cherry picked from commit ded0079f24)
2024-12-06 17:18:29 +01:00
Alexandre Vryghem
b5a8b56473 117287: Prevent /api/eperson/epersons/undefined from being fired on the create ePerson page
(cherry picked from commit 0cb5b76159)
2024-12-06 17:18:13 +01:00
Alexandre Vryghem
2a72fac646 Merge branch 'w2p-117573_remove-observable-function-calls-from-template-7.6' into dspace-7_x
# Conflicts:
#	src/app/access-control/epeople-registry/epeople-registry.component.html
#	src/app/access-control/epeople-registry/epeople-registry.component.ts
#	src/app/access-control/epeople-registry/eperson-form/eperson-form.component.html
#	src/app/access-control/epeople-registry/eperson-form/eperson-form.component.spec.ts
#	src/app/access-control/epeople-registry/eperson-form/eperson-form.component.ts
#	src/app/access-control/group-registry/group-form/group-form.component.html
#	src/app/access-control/group-registry/group-form/group-form.component.ts
#	src/app/admin/admin-registries/bitstream-formats/bitstream-formats.component.html
#	src/app/admin/admin-registries/bitstream-formats/bitstream-formats.component.spec.ts
#	src/app/admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.ts
#	src/app/admin/admin-registries/metadata-schema/metadata-schema.component.html
#	src/app/admin/admin-registries/metadata-schema/metadata-schema.component.ts
#	src/app/shared/pagination/pagination.component.ts
2024-12-06 17:14:51 +01:00
Alexandre Vryghem
6988df519e Merge branch 'w2p-120109_fix-findByHref-and-findListByHref-skipping-their-response_contribute-7.6' into dspace-7_x
# Conflicts:
#	src/app/core/data/base/base-data.service.spec.ts
#	src/app/core/data/base/base-data.service.ts
#	src/app/item-page/edit-item-page/abstract-item-update/abstract-item-update.component.ts
2024-12-05 23:49:13 +01:00
Tim Donohue
50885676d8 Merge pull request #3715 from DSpace/backport-3677-to-dspace-8_x
[Port dspace-8_x] Fix infinite loading on item pages and optimize menu resolver usage
2024-12-05 16:48:52 -06:00
Alexandre Vryghem
ce17d23c08 120109: Updated the route configuration to only resolve the dsoEditMenuResolver on pages who use the DsoEditMenuComponent
(cherry picked from commit 5c9f494f76)
2024-12-05 23:27:55 +01:00
Alexandre Vryghem
91acc957b1 120109: Fixed "no elements in sequence" sometimes being thrown on the item bitstream & relationship tabs
(cherry picked from commit decacec404)
2024-12-05 23:27:54 +01:00
Alexandre Vryghem
987ea5104a 120109: Fixed BaseDataService not emitting when the request is too fast and the ResponsePending are not emitted
(cherry picked from commit 0f4d71eb58)
2024-12-05 23:27:54 +01:00
Alexandre Vryghem
970544c130 120109: Updated the route configuration to only resolve the dsoEditMenuResolver on pages who use the DsoEditMenuComponent
(cherry picked from commit 5c9f494f76)
2024-12-05 20:49:21 +00:00
Alexandre Vryghem
c9ba47b9af 120109: Fixed "no elements in sequence" sometimes being thrown on the item bitstream & relationship tabs
(cherry picked from commit decacec404)
2024-12-05 20:49:21 +00:00
Alexandre Vryghem
9c843b62d4 120109: Fixed BaseDataService not emitting when the request is too fast and the ResponsePending are not emitted
(cherry picked from commit 0f4d71eb58)
2024-12-05 20:49:21 +00:00
Kanász-Nagy Zoltán
b86d0a083a QREPO-0 withdraw & reinstate related translations 2024-12-05 03:33:18 +01:00
Kanász-Nagy Zoltán
964c085ee2 QREPO-0 adding translations for mapping item to other collections 2024-12-05 02:53:15 +01:00
Kanász-Nagy Zoltán
907a16ca09 QREPO-0 updating registration and forgot password related translations 2024-12-05 00:03:45 +01:00
Kanász-Nagy Zoltán
97cda8f752 QREPO-0 updating Hungarian translations for DSpace 8.0 2024-12-04 23:46:15 +01:00
Tim Donohue
135c085024 Merge pull request #3710 from DSpace/backport-3693-to-dspace-7_x
[Port dspace-7_x] Removed unauthorized metadata-export-search request on search page
2024-12-04 11:10:21 -06:00
Tim Donohue
f47bf4665e Merge pull request #3711 from tdonohue/port_3693_to_8x
[Port dspace-8_x] Removed unauthorized metadata-export-search request on search page
2024-12-04 10:35:14 -06:00
Alexandre Vryghem
ed4e794d46 119799: Prevent submission from updating the dropdown values when hitting enter in another input form (onsubmit) 2024-12-04 17:16:14 +01:00
Alexandre Vryghem
0c81a79d0c 121534: Removed unauthorized metadata-export-search request on search page for non-admins 2024-12-03 12:26:09 -06:00
Alexandre Vryghem
4fcae182b1 120256: Ensure searchOptions$ is a SearchOptions and not a plain object 2024-12-03 12:19:24 -06:00
Alexandre Vryghem
80e938b1f2 121534: Removed unauthorized metadata-export-search request on search page for non-admins
(cherry picked from commit 70b855e785)
2024-12-03 18:16:02 +00:00
Alexandre Vryghem
c9df52cba2 120256: Ensure searchOptions$ is a SearchOptions and not a plain object
(cherry picked from commit e4daf2b825)
2024-12-03 18:16:02 +00:00
Tim Donohue
e975585350 Merge pull request #3182 from 4Science/task/dspace-7_x/CST-14903
[Port dspace-7_x] Orcid Authorization / Synchronization Page Fixes
2024-12-02 09:38:55 -06:00
Tim Donohue
30718cb810 Merge pull request #3216 from 4Science/task/dspace-8_x/CST-14903
[Port dspace-8_x] Orcid Authorization / Synchronization Page Fixes
2024-12-02 09:37:32 -06:00
Tim Donohue
686f2848e9 Merge pull request #3691 from DSpace/dependabot/npm_and_yarn/dspace-8_x/testing-8ac0a25ce2
Bump cypress from 13.15.1 to 13.16.0 in the testing group across 1 directory
2024-12-02 08:57:40 -06:00
dependabot[bot]
e4b25585b8 Bump cypress in the testing group across 1 directory
Bumps the testing group with 1 update in the / directory: [cypress](https://github.com/cypress-io/cypress).


Updates `cypress` from 13.15.1 to 13.16.0
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/cypress/compare/v13.15.1...v13.16.0)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-02 03:07:28 +00:00
dependabot[bot]
7eeeab4c26 Bump sortablejs from 1.15.3 to 1.15.6
Bumps [sortablejs](https://github.com/SortableJS/Sortable) from 1.15.3 to 1.15.6.
- [Release notes](https://github.com/SortableJS/Sortable/releases)
- [Commits](https://github.com/SortableJS/Sortable/compare/1.15.3...1.15.6)

---
updated-dependencies:
- dependency-name: sortablejs
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-02 02:38:03 +00:00
Alan Orth
a53df4fed4 Merge pull request #3696 from 4Science/backport-3308-to-dspace-7_x 2024-11-29 13:58:04 +03:00
Andreas Awouters
cdec4880d2 119602: Compare notifications by id to correctly update store 2024-11-29 10:44:44 +01:00
Alexandre Vryghem
8849f140fb 117287: Removed method calls returning observables from ItemDetailPreviewComponent 2024-11-28 23:47:29 +01:00
Alan Orth
4228362ff3 Merge pull request #3695 from DSpace/backport-3308-to-dspace-8_x 2024-11-28 22:31:25 +03:00
Simone Ramundi
c743387a26 [DURACOM-296] Enabled 'admin-div' only for Site Administrator 2024-11-28 12:36:55 +01:00
Simone Ramundi
683109758b [DURACOM-296] Enabled 'admin-div' only for Site Administrator
(cherry picked from commit 4d5910981a)
2024-11-28 07:57:07 +00:00
Andreas Awouters
c38352ed22 119602: Update doc comments 2024-11-25 10:29:16 +01:00
Andreas Awouters
deb4a63c88 119602: Add additional accessibilitySettingsComponent tests 2024-11-25 10:12:39 +01:00
Andreas Awouters
ec016e80fb 119602: Update AccessibilitySettingsService stub 2024-11-25 10:00:04 +01:00
Andreas Awouters
ced163a25f 119602: Remove obsolete tests 2024-11-25 09:58:50 +01:00
Andreas Awouters
5a28e66b2f 119602: Move hints to contextHelp 2024-11-25 09:44:27 +01:00
Tim Donohue
35a25b372d Merge pull request #3685 from tdonohue/port_3683_to_7x
[Port dspace-7_x] Fix incorrect example in `config.example.yml`
2024-11-22 11:51:30 -06:00
Tim Donohue
10a4a2eec6 Merge pull request #3684 from DSpace/backport-3683-to-dspace-8_x
[Port dspace-8_x] Fix incorrect example in `config.example.yml`
2024-11-22 11:51:21 -06:00
Tim Donohue
62b31ea8c5 Fix incorrect example. The setting category is called "ssr" and not "universal" 2024-11-22 11:19:08 -06:00
Tim Donohue
7b9f1dcc69 Fix incorrect example. The setting category is called "ssr" and not "universal"
(cherry picked from commit 138c007f28)
2024-11-22 17:17:08 +00:00
Andreas Awouters
9ac92e0196 119602: Add unit after input fields 2024-11-22 16:09:12 +01:00
Andreas Awouters
287d028331 119602: Make input boxes smaller 2024-11-22 16:03:52 +01:00
Andreas Awouters
cae13942e2 119602: Allow resetting accessibility settings 2024-11-22 15:54:21 +01:00
Andreas Awouters
b16cec631d 119602: Add automatic notification hiding toggle 2024-11-22 13:56:39 +01:00
Andreas Awouters
dc8a699e94 119602: Rework convertion & form format 2024-11-22 11:55:05 +01:00
Tim Donohue
3a18805e93 Merge pull request #3681 from dheles/8_x-dc-fix
Update docker files for 8_x
2024-11-21 14:28:15 -06:00
Drew Heles
fbef294fb4 Update docker files for 8_x 2024-11-21 14:03:50 -05:00
Carolyn Sullivan
477ca5e712 Update fr.json5
Ajouté des traductions/noté quelques étiquettes sans traductions
2024-11-18 15:21:25 -05:00
Tim Donohue
12804f800b Merge pull request #3672 from DSpace/backport-3671-to-dspace-8_x
[Port dspace-8_x] Fixes the display of the System Wide Alert
2024-11-18 11:46:34 -06:00
Alisa Ismailati
21fa85c31d [DURACOM-305] Fixes the deserialization of the SystemWideAlert
(cherry picked from commit 628ec2b6ba)
2024-11-18 17:01:24 +00:00
Tim Donohue
b54e54da30 Merge pull request #3660 from alexandrevryghem/w2p-107155_Performance-re-request-embeds_contribute-7_x
[Port dspace-7_x] Added support for caching embedded objects without a self link & null responses
2024-11-18 10:26:38 -06:00
Tim Donohue
0c13fc883c Merge pull request #3661 from alexandrevryghem/w2p-107155_Performance-re-request-embeds_contribute-8_x
[Port dspace-8_x] Added support for caching embedded objects without a self link & null responses
2024-11-18 10:07:13 -06:00
Andreas Awouters
fdfa6e2c06 119602: Update values after converters implementation 2024-11-18 14:26:48 +01:00
Andreas Awouters
ecb00a95a0 119602: Implement converting of accessibility settings values 2024-11-18 13:50:46 +01:00
Andreas Awouters
fe90d39943 119602: Add placeholder in form 2024-11-18 11:36:10 +01:00
Alexandre Vryghem
e2615a798e Fixed flaky item-edit tests
This simply restores the accidental changes made during this cherry-pick: 3df66e0257
2024-11-17 02:33:53 +01:00
Alexandre Vryghem
ec6aff411a 118944: Fix hasDraftVersion$ not working for embedded payloads with no content
(cherry picked from commit 704cc06f16)
2024-11-17 01:06:36 +01:00
Alexandre Vryghem
01fcbd7063 Merge remote-tracking branch 'contributions/w2p-107155_Performance-re-request-embeds-7.6' into w2p-107155_Performance-re-request-embeds_contribute-8_x 2024-11-17 01:02:49 +01:00
Alexandre Vryghem
ff42b65fc9 118944: Fix hasDraftVersion$ not working for embedded payloads with no content
(cherry picked from commit 704cc06f16)
2024-11-16 22:24:02 +01:00
Alexandre Vryghem
1e5eff918d Merge remote-tracking branch 'contributions/w2p-107155_Performance-re-request-embeds-7.6' into w2p-107155_Performance-re-request-embeds_contribute-7_x
# Conflicts:
#	src/app/core/browse/browse.service.ts
#	src/app/item-page/edit-item-page/item-relationships/edit-relationship-list/edit-relationship-list.component.spec.ts
2024-11-16 22:16:52 +01:00
Tim Donohue
e55b78ba2d Merge pull request #3659 from DSpace/backport-3656-to-dspace-8_x
[Port dspace-8_x] #3655 - Fixes Spacing Issue Between Email Label and Email Address on Profile Setup Form
2024-11-15 17:12:35 -06:00
Tim Donohue
e59674b5ac Merge pull request #3658 from DSpace/backport-3656-to-dspace-7_x
[Port dspace-7_x] #3655 - Fixes Spacing Issue Between Email Label and Email Address on Profile Setup Form
2024-11-15 17:12:29 -06:00
Simone Ramundi
f6e30b0b63 [DURACOM-300] Fixed space in registration form
(cherry picked from commit 2b104183f7)
2024-11-15 22:34:43 +00:00
Simone Ramundi
5a1522deac [DURACOM-300] Fixed space in registration form
(cherry picked from commit 2b104183f7)
2024-11-15 22:34:39 +00:00
Simone Ramundi
23d8730d5b [DURACOM-302_2] Manual porting of 'DSC-2002' 2024-11-14 17:44:56 +01:00
Tim Donohue
a5dff6df87 Merge pull request #3651 from tdonohue/port_3225_to_7x
[Port dspace-7_x] Fixed headings by their rank
2024-11-13 15:04:03 -06:00
Tim Donohue
9e28099351 Merge pull request #3653 from DSpace/backport-3649-to-dspace-8_x
[Port dspace-8_x] French translations for subscriptions feature
2024-11-13 14:30:15 -06:00
Tim Donohue
790fa26953 Merge pull request #3652 from DSpace/backport-3649-to-dspace-7_x
[Port dspace-7_x] French translations for subscriptions feature
2024-11-13 14:29:58 -06:00
Tim Donohue
1c80697d29 Merge pull request #3650 from tdonohue/port_3225_to_8x
[Port dspace-8_x] Fixed headings by their rank
2024-11-13 13:54:45 -06:00
Pierre Lasou
e345dfd637 French translations for subscriptions feature
Includes all french labels for subcriptions, plus 2 or 3 other missing things.

(cherry picked from commit 2c16162948)
2024-11-13 19:51:43 +00:00
Pierre Lasou
b2f9743f9f French translations for subscriptions feature
Includes all french labels for subcriptions, plus 2 or 3 other missing things.

(cherry picked from commit 2c16162948)
2024-11-13 19:51:37 +00:00
Alisa Ismailati
66dedc5b2e [CST-15591] Fixed headings by their rank 2024-11-13 11:40:48 -06:00
Alisa Ismailati
844a605b5e [CST-15591] Fixed headings by their rank 2024-11-13 11:30:42 -06:00
Tim Donohue
07bbb003bb Merge pull request #3647 from DSpace/backport-3646-to-dspace-8_x
[Port dspace-8_x] Fixed authorization tab not loading in dev mode
2024-11-12 10:34:49 -06:00
Alexandre Vryghem
aae373ef22 120150: Fixed authorization tab not loading in dev mode
(cherry picked from commit c062d95354)
2024-11-12 15:58:22 +00:00
Tim Donohue
bba9f9c980 Merge pull request #3645 from DSpace/backport-3644-to-dspace-8_x
[Port dspace-8_x] French translations for COAR Notify  LDN Service
2024-11-11 15:15:42 -06:00
Pierre Lasou
9e19e8d859 Fixes lint error Trailing spaces
(cherry picked from commit 60dfe056dd)
2024-11-11 20:24:00 +00:00
Pierre Lasou
898b5fa634 French translations for COAR Notify LDN Service
Contains all translations in french for new DSpace 8 COAR Notify module.

(cherry picked from commit 20263073c6)
2024-11-11 20:24:00 +00:00
Tim Donohue
a6c2b2c026 Merge pull request #3643 from DSpace/backport-3222-to-dspace-8_x
[Port dspace-8_x] Updated `cs` messages following the lindat v5 and clarin-dspace v7 instance
2024-11-11 10:40:28 -06:00
Tim Donohue
6330516630 Merge pull request #3642 from DSpace/backport-3222-to-dspace-7_x
[Port dspace-7_x] Updated `cs` messages following the lindat v5 and clarin-dspace v7 instance
2024-11-11 10:40:20 -06:00
milanmajchrak
e7da6e42f7 Updated supervised by messages following NTK suggestions
(cherry picked from commit d819cf4396)
2024-11-11 15:31:35 +00:00
milanmajchrak
15afbc2dc9 Updated messages for the 'supervised' and 'claim' sentenses
(cherry picked from commit 1aef6ce1d6)
2024-11-11 15:31:35 +00:00
milanmajchrak
71627d8abf Fixed small cs localization mistakes
(cherry picked from commit 680d6c9416)
2024-11-11 15:31:35 +00:00
milanmajchrak
5049b13d22 Updated cs localization for subcommunities and subcollections
(cherry picked from commit 9badd4a4b6)
2024-11-11 15:31:35 +00:00
milanmajchrak
301eb9017c Fixed messages following the PR from the UFAL - f18d45ce23
(cherry picked from commit 5e5c627b8b)
2024-11-11 15:31:35 +00:00
milanmajchrak
ca8981611a Updated cs messages following review requirements
(cherry picked from commit 813d644b32)
2024-11-11 15:31:34 +00:00
milanmajchrak
c357ac93f3 Fixed linting error.
(cherry picked from commit 7e864d27b4)
2024-11-11 15:31:34 +00:00
milanmajchrak
757574080c Updated some messages following the lindat v5 and clarin-dspace v7 instance.
(cherry picked from commit b10563ea53)
2024-11-11 15:31:34 +00:00
milanmajchrak
bd638f0356 Updated supervised by messages following NTK suggestions
(cherry picked from commit d819cf4396)
2024-11-11 15:31:30 +00:00
milanmajchrak
b11efbbf0c Updated messages for the 'supervised' and 'claim' sentenses
(cherry picked from commit 1aef6ce1d6)
2024-11-11 15:31:30 +00:00
milanmajchrak
68b6cc9bd4 Fixed small cs localization mistakes
(cherry picked from commit 680d6c9416)
2024-11-11 15:31:30 +00:00
milanmajchrak
d586a8450d Updated cs localization for subcommunities and subcollections
(cherry picked from commit 9badd4a4b6)
2024-11-11 15:31:30 +00:00
milanmajchrak
33bc8ba1a3 Fixed messages following the PR from the UFAL - f18d45ce23
(cherry picked from commit 5e5c627b8b)
2024-11-11 15:31:30 +00:00
milanmajchrak
865268e820 Updated cs messages following review requirements
(cherry picked from commit 813d644b32)
2024-11-11 15:31:30 +00:00
milanmajchrak
e5ea435cbe Fixed linting error.
(cherry picked from commit 7e864d27b4)
2024-11-11 15:31:30 +00:00
milanmajchrak
6b32d04aec Updated some messages following the lindat v5 and clarin-dspace v7 instance.
(cherry picked from commit b10563ea53)
2024-11-11 15:31:30 +00:00
dependabot[bot]
06783364c4 Bump express-static-gzip from 2.1.8 to 2.2.0
Bumps [express-static-gzip](https://github.com/tkoenig89/express-static-gzip) from 2.1.8 to 2.2.0.
- [Release notes](https://github.com/tkoenig89/express-static-gzip/releases)
- [Commits](https://github.com/tkoenig89/express-static-gzip/compare/v2.1.8...v2.2.0)

---
updated-dependencies:
- dependency-name: express-static-gzip
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-11 03:15:03 +00:00
dependabot[bot]
d50af8afb6 Bump express-static-gzip from 2.1.8 to 2.2.0
Bumps [express-static-gzip](https://github.com/tkoenig89/express-static-gzip) from 2.1.8 to 2.2.0.
- [Release notes](https://github.com/tkoenig89/express-static-gzip/releases)
- [Commits](https://github.com/tkoenig89/express-static-gzip/compare/v2.1.8...v2.2.0)

---
updated-dependencies:
- dependency-name: express-static-gzip
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-11 02:34:27 +00:00
Tim Donohue
a812e6ae27 Merge pull request #3594 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-8323b2791b
Bump sass from 1.80.4 to 1.80.6 in the sass group
2024-11-08 16:05:14 -06:00
Tim Donohue
100dd467b9 Merge pull request #3598 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-8323b2791b
Bump sass from 1.80.4 to 1.80.6 in the sass group
2024-11-08 16:03:46 -06:00
Tim Donohue
841caec3e6 Merge pull request #3627 from tdonohue/port_3328_to_7x
[Port dspace-7_x] Klaro Accessibility cookie settings
2024-11-08 16:01:49 -06:00
Tim Donohue
9715eaba36 Merge pull request #3626 from DSpace/backport-3625-to-dspace-7_x
[Port dspace-7_x] Fix Klaro translations by forcing Klaro to use a zy language code that DSpace will translate
2024-11-08 16:01:40 -06:00
dependabot[bot]
bc50efec5e Bump core-js from 3.38.1 to 3.39.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.38.1 to 3.39.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.39.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-08 20:35:42 +00:00
dependabot[bot]
59ab2aa356 Bump core-js from 3.38.1 to 3.39.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.38.1 to 3.39.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.39.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-08 20:34:18 +00:00
Tim Donohue
25fd1a9d76 Merge pull request #3595 from DSpace/dependabot/npm_and_yarn/dspace-7_x/compression-1.7.5
Bump compression from 1.7.4 to 1.7.5
2024-11-08 14:33:17 -06:00
Tim Donohue
783ff99163 Merge pull request #3600 from DSpace/dependabot/npm_and_yarn/dspace-8_x/compression-1.7.5
Bump compression from 1.7.4 to 1.7.5
2024-11-08 14:32:34 -06:00
dependabot[bot]
cdeb0473da Bump sass from 1.80.4 to 1.80.6 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.80.4 to 1.80.6
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.80.4...1.80.6)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-08 20:30:30 +00:00
Tim Donohue
3e478a44b7 Merge pull request #3599 from DSpace/dependabot/npm_and_yarn/dspace-8_x/webpack-835be9230a
Bump webpack from 5.95.0 to 5.96.1 in the webpack group
2024-11-08 14:28:38 -06:00
andreaNeki
64628f7e0d DSpace#2668 - Adding and changing classes in global scss to make cookie settings more accessible 2024-11-08 14:21:54 -06:00
Tim Donohue
65a4099ac1 Merge pull request #3328 from Andrea-Guevara/AccessibilityCookieSettings
[8.x] Accessibility cookie settings
2024-11-08 14:18:10 -06:00
Tim Donohue
4353c57cd0 Fix Klaro translations by forcing Klaro to use a 'zy' language key which DSpace will translate
(cherry picked from commit 6076423907)
2024-11-08 20:13:18 +00:00
Tim Donohue
9add368161 Merge pull request #3625 from tdonohue/fix_klaro_translations_8x
Fix Klaro translations by forcing Klaro to use a zy language code that DSpace will translate
2024-11-08 14:12:58 -06:00
Tim Donohue
6076423907 Fix Klaro translations by forcing Klaro to use a 'zy' language key which DSpace will translate 2024-11-08 13:29:18 -06:00
Tim Donohue
ce010725ac Merge pull request #3596 from DSpace/dependabot/npm_and_yarn/dspace-7_x/types/lodash-4.17.13
Bump @types/lodash from 4.17.12 to 4.17.13
2024-11-08 10:56:45 -06:00
Tim Donohue
7b4d5f9aad Merge pull request #3621 from DSpace/backport-3619-to-dspace-7_x
[Port dspace-7_x] BitstreamAuthorizationsComponent: update selector and comment to correctly describe component's purpose
2024-11-07 14:53:05 -06:00
Tim Donohue
8a6db0dff0 Merge pull request #3622 from DSpace/backport-3619-to-dspace-8_x
[Port dspace-8_x] BitstreamAuthorizationsComponent: update selector and comment to correctly describe component's purpose
2024-11-07 14:52:54 -06:00
Sascha Szott
fb57b72eca fix invalid selector
(cherry picked from commit 752951ce3b)
2024-11-07 20:12:33 +00:00
Sascha Szott
62a1443b75 update comment to correctly describe component's purpose
(cherry picked from commit 33dddc697f)
2024-11-07 20:12:32 +00:00
Sascha Szott
9f879d3850 fix invalid selector
(cherry picked from commit 752951ce3b)
2024-11-07 20:12:29 +00:00
Sascha Szott
87f5b50201 update comment to correctly describe component's purpose
(cherry picked from commit 33dddc697f)
2024-11-07 20:12:29 +00:00
Andreas Awouters
bb7f0cd3a5 119602: Improve profile page link accessibility 2024-11-07 10:18:11 +01:00
Andreas Awouters
6319c9b300 Merge branch 'accessibility-settings-7.6' into accessibility-settings-8_x
# Conflicts:
#	src/app/core/auth/auth.service.ts
#	src/app/info/info-routing-paths.ts
#	src/app/info/info-routing.module.ts
#	src/app/info/info.module.ts
#	src/app/shared/live-region/live-region.service.spec.ts
#	src/app/shared/live-region/live-region.service.ts
#	src/app/shared/notifications/notifications-board/notifications-board.component.spec.ts
#	src/app/shared/notifications/notifications-board/notifications-board.component.ts
#	src/config/app-config.interface.ts
#	src/config/default-app-config.ts
2024-11-06 13:11:17 +01:00
Andreas Awouters
3c92acb770 Merge branch 'accessibility-settings-7.6' into accessibility-settings-7_x 2024-11-06 10:59:32 +01:00
Andreas Awouters
04515591e2 119602: Add link to AccessibilitySettings on profile page 2024-11-06 10:53:41 +01:00
Andreas Awouters
37455a8b6c 119602: Make AccessibilitySettings cookie expiration configurable 2024-11-06 10:53:41 +01:00
Andreas Awouters
82fd9539b7 119602: Add AccessibilitySettingsComponent tests 2024-11-06 10:53:41 +01:00
Andreas Awouters
52eabec70d 119602: Add AccessibilitySettingsService tests 2024-11-06 10:53:41 +01:00
Andreas Awouters
cad086c945 119602: Add AccessibilitySettingsService stub & fix live-region test 2024-11-06 10:53:41 +01:00
Andreas Awouters
6a49df59af 119602: Integrate accessibility settings into notifications-board 2024-11-06 10:53:41 +01:00
Andreas Awouters
d224a2c47d 119602: Integrate accessibility settings into live-region 2024-11-06 09:58:19 +01:00
Andreas Awouters
b72ce73931 119602: Add Accessibility Settings page 2024-11-06 09:58:19 +01:00
Andreas Awouters
8f708d0e28 119602: Add AccessibilitySettingsService 2024-11-06 09:58:19 +01:00
Tim Donohue
642816be04 Merge pull request #3610 from DSpace/backport-3590-to-dspace-8_x
[Port dspace-8_x] Complete tag translations in french for ORCID and Researcher Profile
2024-11-04 15:15:51 -06:00
Tim Donohue
38c7988274 Merge pull request #3609 from DSpace/backport-3590-to-dspace-7_x
[Port dspace-7_x] Complete tag translations in french for ORCID and Researcher Profile
2024-11-04 15:15:41 -06:00
Pierre Lasou
fe8f79b750 Correction of 2 lint errors due to spacing.
(cherry picked from commit 23dd7903ba)
2024-11-04 20:22:52 +00:00
Pierre Lasou
07e4e0cabb Correct small alignment errors
(cherry picked from commit fde2db85e7)
2024-11-04 20:22:52 +00:00
Pierre Lasou
73e0c1ffcf Complete tag translation in french for ORCID
Contains all french translations for ORCID and Researcher Profile.

(cherry picked from commit ac720033dc)
2024-11-04 20:22:52 +00:00
Pierre Lasou
9c3363d465 Correction of 2 lint errors due to spacing.
(cherry picked from commit 23dd7903ba)
2024-11-04 20:22:48 +00:00
Pierre Lasou
33262795ba Correct small alignment errors
(cherry picked from commit fde2db85e7)
2024-11-04 20:22:48 +00:00
Pierre Lasou
2aaa32ae5f Complete tag translation in french for ORCID
Contains all french translations for ORCID and Researcher Profile.

(cherry picked from commit ac720033dc)
2024-11-04 20:22:48 +00:00
Tim Donohue
9ba00d6f20 Merge pull request #3601 from DSpace/dependabot/npm_and_yarn/dspace-8_x/types/lodash-4.17.13
Bump @types/lodash from 4.17.12 to 4.17.13
2024-11-04 09:05:00 -06:00
dependabot[bot]
76b7340589 Bump @types/lodash from 4.17.12 to 4.17.13
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.12 to 4.17.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 02:57:55 +00:00
dependabot[bot]
1484464232 Bump compression from 1.7.4 to 1.7.5
Bumps [compression](https://github.com/expressjs/compression) from 1.7.4 to 1.7.5.
- [Release notes](https://github.com/expressjs/compression/releases)
- [Changelog](https://github.com/expressjs/compression/blob/master/HISTORY.md)
- [Commits](https://github.com/expressjs/compression/compare/1.7.4...1.7.5)

---
updated-dependencies:
- dependency-name: compression
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 02:57:37 +00:00
dependabot[bot]
64e65a6e8c Bump webpack from 5.95.0 to 5.96.1 in the webpack group
Bumps the webpack group with 1 update: [webpack](https://github.com/webpack/webpack).


Updates `webpack` from 5.95.0 to 5.96.1
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.95.0...v5.96.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: webpack
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 02:56:51 +00:00
dependabot[bot]
1b77530a31 Bump @types/lodash from 4.17.12 to 4.17.13
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.12 to 4.17.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 02:47:05 +00:00
dependabot[bot]
2eb120909b Bump compression from 1.7.4 to 1.7.5
Bumps [compression](https://github.com/expressjs/compression) from 1.7.4 to 1.7.5.
- [Release notes](https://github.com/expressjs/compression/releases)
- [Changelog](https://github.com/expressjs/compression/blob/master/HISTORY.md)
- [Commits](https://github.com/expressjs/compression/compare/1.7.4...1.7.5)

---
updated-dependencies:
- dependency-name: compression
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 02:46:50 +00:00
dependabot[bot]
26f4d1d329 Bump sass from 1.80.4 to 1.80.6 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.80.4 to 1.80.6
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.80.4...1.80.6)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 02:46:18 +00:00
Tim Donohue
51c13b6fc8 Merge pull request #3593 from DSpace/backport-3272-to-dspace-8_x
[Port dspace-8_x] Improving accessibility on the new user registration page
2024-11-01 12:17:18 -05:00
Tim Donohue
9d4eeb9c9f Merge pull request #3592 from DSpace/backport-3272-to-dspace-7_x
[Port dspace-7_x] Improving accessibility on the new user registration page
2024-11-01 12:17:11 -05:00
andreaNeki
ebc7a7548e Adjusting spaces in ts
(cherry picked from commit 009da08177)
2024-11-01 14:37:54 +00:00
andreaNeki
45b6f251f3 Simplifying the implementation of dynamic aria-describedby
(cherry picked from commit fa6e85d6db)
2024-11-01 14:37:54 +00:00
andreaNeki
67cd8a989b Resolving a wrongly declared variable error
(cherry picked from commit 7b72a5f0c2)
2024-11-01 14:37:54 +00:00
andreaNeki
c71e7139ca Dynamic aria-describedby attribute
(cherry picked from commit e629d9edf0)
2024-11-01 14:37:54 +00:00
andreaNeki
58612ce227 Code refactoring - Accessibility on the new user registration and forgotten password forms
(cherry picked from commit f00eae6760)
2024-11-01 14:37:54 +00:00
andreaNeki
b041601006 Improving accessibility on the new user registration page
(cherry picked from commit 0eb2d5ce58)
2024-11-01 14:37:53 +00:00
andreaNeki
1011468273 Adjusting spaces in ts
(cherry picked from commit 009da08177)
2024-11-01 14:37:49 +00:00
andreaNeki
1fad3cffc7 Simplifying the implementation of dynamic aria-describedby
(cherry picked from commit fa6e85d6db)
2024-11-01 14:37:49 +00:00
andreaNeki
c330e83095 Resolving a wrongly declared variable error
(cherry picked from commit 7b72a5f0c2)
2024-11-01 14:37:49 +00:00
andreaNeki
3b3fa4f643 Dynamic aria-describedby attribute
(cherry picked from commit e629d9edf0)
2024-11-01 14:37:49 +00:00
andreaNeki
a6b45f777c Code refactoring - Accessibility on the new user registration and forgotten password forms
(cherry picked from commit f00eae6760)
2024-11-01 14:37:49 +00:00
andreaNeki
585bbec5d5 Improving accessibility on the new user registration page
(cherry picked from commit 0eb2d5ce58)
2024-11-01 14:37:49 +00:00
Tim Donohue
303d59e699 Merge pull request #3589 from DSpace/backport-3587-to-dspace-8_x
[Port dspace-8_x] Update fr.json5
2024-10-30 15:01:52 -05:00
Nima Behforouz
3b8a075049 Update fr.json5
Translation updates to fr.json5 file regarding the Access Control sections.

(cherry picked from commit 8d00d435c4)
2024-10-30 20:01:22 +00:00
Tim Donohue
b52528d449 Merge pull request #3588 from DSpace/backport-3378-to-dspace-8_x
[Port dspace-8_x] Changing the bitstream title in the submission form to use the view c…
2024-10-30 11:43:57 -05:00
DanGastardelli
7e827165e9 Import order adjustment
(cherry picked from commit 2643a459b6)
2024-10-30 15:52:00 +00:00
DanGastardelli
fccfc93a10 Import order adjustment
(cherry picked from commit eeaac8965b)
2024-10-30 15:52:00 +00:00
DanGastardelli
784f5c1808 Fix last commit
(cherry picked from commit 62006c00ca)
2024-10-30 15:52:00 +00:00
DanGastardelli
10f11a55ff Adjusting spacing
(cherry picked from commit 762bc8ce8c)
2024-10-30 15:52:00 +00:00
DanGastardelli
3104264cd4 Adjusting spacing and good rules
(cherry picked from commit df24a63a46)
2024-10-30 15:52:00 +00:00
DanGastardelli
8dd132d7a7 Changing the bitstream title in the submission form to use the view component title, avoiding disappearance with changes to the form
(cherry picked from commit fec4aa6df1)
2024-10-30 15:52:00 +00:00
Alexandre Vryghem
59e5f71a73 117287: Fixed group form not working correctly anymore when switching between different groups
Also fixed edit ePerson not showing the group names
2024-10-29 18:21:34 +01:00
Tim Donohue
1cafe15d0d Merge pull request #3582 from DSpace/dependabot/npm_and_yarn/dspace-8_x/zone.js-0.15.0
Bump zone.js from 0.14.10 to 0.15.0
2024-10-28 16:27:36 -05:00
dependabot[bot]
6763df88bc Bump zone.js from 0.14.10 to 0.15.0
Bumps [zone.js](https://github.com/angular/angular/tree/HEAD/packages/zone.js) from 0.14.10 to 0.15.0.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/packages/zone.js/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/zone.js-0.15.0/packages/zone.js)

---
updated-dependencies:
- dependency-name: zone.js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-28 03:16:28 +00:00
Tim Donohue
0a005c2d95 Merge pull request #3579 from DSpace-Labs/dependabot/npm_and_yarn/dompurify-2.5.7
Bump dompurify from 2.4.5 to 2.5.7
2024-10-25 17:06:40 -05:00
Tim Donohue
dda9c6ec09 Merge pull request #3580 from DSpace-Labs/dependabot/npm_and_yarn/tough-cookie-4.1.4
Bump tough-cookie from 4.1.2 to 4.1.4
2024-10-25 17:06:04 -05:00
Tim Donohue
5b8cc3c9da Merge pull request #3577 from DSpace/dependabot/npm_and_yarn/dspace-7_x/testing-bd64cd6aac
Bump the testing group across 1 directory with 2 updates
2024-10-25 16:26:47 -05:00
Tim Donohue
d9cd649aea Merge pull request #3558 from DSpace/dependabot/npm_and_yarn/dspace-8_x/angular-843071ab45
Bump the angular group with 3 updates
2024-10-25 16:26:13 -05:00
dependabot[bot]
45fb5aa611 Bump dompurify from 2.4.5 to 2.5.7
Bumps [dompurify](https://github.com/cure53/DOMPurify) from 2.4.5 to 2.5.7.
- [Release notes](https://github.com/cure53/DOMPurify/releases)
- [Commits](https://github.com/cure53/DOMPurify/compare/2.4.5...2.5.7)

---
updated-dependencies:
- dependency-name: dompurify
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-25 21:00:31 +00:00
dependabot[bot]
161fcb8e83 Bump the angular group with 3 updates
Bumps the angular group with 3 updates: [@angular/ssr](https://github.com/angular/angular-cli), [@angular-devkit/build-angular](https://github.com/angular/angular-cli) and [@angular/cli](https://github.com/angular/angular-cli).


Updates `@angular/ssr` from 17.3.10 to 17.3.11
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/17.3.10...17.3.11)

Updates `@angular-devkit/build-angular` from 17.3.10 to 17.3.11
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/17.3.10...17.3.11)

Updates `@angular/cli` from 17.3.10 to 17.3.11
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/17.3.10...17.3.11)

---
updated-dependencies:
- dependency-name: "@angular/ssr"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular-devkit/build-angular"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-25 20:21:44 +00:00
Tim Donohue
fada1281a6 Merge pull request #3563 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-bcfd08c0da
Bump sass from 1.80.3 to 1.80.4 in the sass group
2024-10-25 15:15:19 -05:00
Tim Donohue
6c7371e97f Merge pull request #3568 from DSpace/dependabot/npm_and_yarn/dspace-8_x/babel/runtime-7.26.0
Bump @babel/runtime from 7.25.9 to 7.26.0
2024-10-25 15:14:44 -05:00
Tim Donohue
96b60064db Merge pull request #3576 from DSpace/dependabot/npm_and_yarn/dspace-8_x/testing-bd64cd6aac
Bump the testing group across 1 directory with 2 updates
2024-10-25 15:12:52 -05:00
dependabot[bot]
6f360a6a2d Bump the testing group across 1 directory with 2 updates
Bumps the testing group with 2 updates in the / directory: [axe-core](https://github.com/dequelabs/axe-core) and [cypress](https://github.com/cypress-io/cypress).


Updates `axe-core` from 4.7.2 to 4.10.2
- [Release notes](https://github.com/dequelabs/axe-core/releases)
- [Changelog](https://github.com/dequelabs/axe-core/blob/v4.10.2/CHANGELOG.md)
- [Commits](https://github.com/dequelabs/axe-core/compare/v4.7.2...v4.10.2)

Updates `cypress` from 13.15.0 to 13.15.1
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/cypress/compare/v13.15.0...v13.15.1)

---
updated-dependencies:
- dependency-name: axe-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: testing
- dependency-name: cypress
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-25 20:05:40 +00:00
dependabot[bot]
4a394a2a38 Bump tough-cookie from 4.1.2 to 4.1.4
Bumps [tough-cookie](https://github.com/salesforce/tough-cookie) from 4.1.2 to 4.1.4.
- [Release notes](https://github.com/salesforce/tough-cookie/releases)
- [Changelog](https://github.com/salesforce/tough-cookie/blob/master/CHANGELOG.md)
- [Commits](https://github.com/salesforce/tough-cookie/compare/v4.1.2...v4.1.4)

---
updated-dependencies:
- dependency-name: tough-cookie
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-25 20:04:27 +00:00
Tim Donohue
da9e856369 Merge pull request #3574 from tdonohue/remove_unused_deps_7x
[Port dspace-7_x] Remove unused dependencies (& additional Mirador dependency cleanup)
2024-10-25 15:02:00 -05:00
dependabot[bot]
ed410d7e95 Bump the testing group across 1 directory with 2 updates
Bumps the testing group with 2 updates in the / directory: [axe-core](https://github.com/dequelabs/axe-core) and [cypress](https://github.com/cypress-io/cypress).


Updates `axe-core` from 4.10.0 to 4.10.2
- [Release notes](https://github.com/dequelabs/axe-core/releases)
- [Changelog](https://github.com/dequelabs/axe-core/blob/v4.10.2/CHANGELOG.md)
- [Commits](https://github.com/dequelabs/axe-core/compare/v4.10.0...v4.10.2)

Updates `cypress` from 13.15.0 to 13.15.1
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/cypress/compare/v13.15.0...v13.15.1)

---
updated-dependencies:
- dependency-name: axe-core
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: testing
- dependency-name: cypress
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: testing
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-25 19:14:02 +00:00
dependabot[bot]
40ee2af8ef Bump sass from 1.80.3 to 1.80.4 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.80.3 to 1.80.4
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.80.3...1.80.4)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-25 19:13:40 +00:00
dependabot[bot]
d3e9f87432 Bump @babel/runtime from 7.25.9 to 7.26.0
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.25.9 to 7.26.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.0/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-25 19:13:35 +00:00
Tim Donohue
18736d847f Merge pull request #3573 from tdonohue/remove_unused_deps_8x
[Port dspace-8_x] Remove unused dependencies (& additional Mirador dependency cleanup)
2024-10-25 14:11:55 -05:00
Tim Donohue
eedaa2c120 Move ng-mocks to dev dependencies 2024-10-25 14:07:34 -05:00
Tim Donohue
d4e6aa8660 Move @material-ui depedencies & other mirador dependencies to dev dependencies. Only needed to avoid yarn install warnings 2024-10-25 14:07:34 -05:00
Tim Donohue
4d365936f2 Remove unused dependencies listed in "resolutions" 2024-10-25 14:07:34 -05:00
Tim Donohue
6655dec1ec Remove "analyze" command and webpack-bundle-analyzer dev dependency 2024-10-25 14:07:34 -05:00
Tim Donohue
99d421caec Remove unused rxjs-spy dev dependency 2024-10-25 14:07:34 -05:00
Tim Donohue
8d33d52174 Move @types/grecaptcha to dev dependencies 2024-10-25 14:01:27 -05:00
Tim Donohue
6a7c19ae4b Merge pull request #3565 from DSpace/dependabot/npm_and_yarn/dspace-7_x/babel/runtime-7.26.0
Bump @babel/runtime from 7.25.9 to 7.26.0
2024-10-25 13:59:38 -05:00
Tim Donohue
fc9eb1157b Merge pull request #3561 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-bcfd08c0da
Bump sass from 1.80.3 to 1.80.4 in the sass group
2024-10-25 13:50:19 -05:00
Tim Donohue
913c2cb44b Move ng-mocks to dev dependencies 2024-10-25 12:43:43 -05:00
Tim Donohue
44889b1c6f Move @material-ui depedencies & other mirador dependencies to dev dependencies. Only needed to avoid yarn install warnings 2024-10-25 10:20:19 -05:00
dependabot[bot]
c83b6ff036 Bump @babel/runtime from 7.25.9 to 7.26.0
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.25.9 to 7.26.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.0/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-25 13:34:55 +00:00
dependabot[bot]
e93e66d3e4 Bump sass from 1.80.3 to 1.80.4 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.80.3 to 1.80.4
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.80.3...1.80.4)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-25 13:34:03 +00:00
Tim Donohue
19dcc1d47e Remove unused dependencies listed in "resolutions" 2024-10-24 17:06:32 -05:00
Tim Donohue
148cbce5d1 Remove "analyze" command and webpack-bundle-analyzer dev dependency 2024-10-24 17:06:32 -05:00
Tim Donohue
a23c0ee237 Remove unused rxjs-spy dev dependency 2024-10-24 17:06:31 -05:00
Tim Donohue
234aae4d77 Remove unused browser-sync 2024-10-24 15:04:27 -05:00
Tim Donohue
453dee618b Remove unused angular-idle-preload 2024-10-24 15:03:32 -05:00
Tim Donohue
7a1432a0a2 Move @types/grecaptcha to dev dependencies 2024-10-24 15:02:49 -05:00
Tim Donohue
22e911cab2 Merge pull request #3551 from tdonohue/update_http-proxy-middleware_8x
[Port dspace-8_x] Bump http-proxy-middleware from 1.0.5 to 2.0.7
2024-10-24 11:21:26 -05:00
kshepherd
882d09ad8e Merge pull request #3548 from tdonohue/remove_unused_postcss_deps_8x
[Port dspace-8_x] Remove unused PostCSS plugins
2024-10-24 16:06:02 +02:00
kshepherd
9905693d73 Merge pull request #3555 from DSpace/backport-3524-to-dspace-8_x
[Port dspace-8_x] Aligning the browse button
2024-10-24 15:28:43 +02:00
kshepherd
ef11340280 Merge pull request #3554 from DSpace/backport-3524-to-dspace-7_x
[Port dspace-7_x] Aligning the browse button
2024-10-24 15:28:14 +02:00
andreaNeki
1c8c5de570 Issue 3426 - Aligning the browse button
(cherry picked from commit ddafda33b8)
2024-10-24 11:46:00 +00:00
andreaNeki
d4bb79ca18 Issue 3426 - Aligning the browse button
(cherry picked from commit ddafda33b8)
2024-10-24 11:45:55 +00:00
Alan Orth
40e805f90f Merge pull request #3552 from tdonohue/update_http-proxy-middleware_7x 2024-10-24 08:44:25 +03:00
Alan Orth
a719a2337a Merge pull request #3549 from tdonohue/remove_unused_postcss_deps_7x 2024-10-24 08:41:56 +03:00
Tim Donohue
26f6dc562b Bump http-proxy-middleware from 1.0.5 to 2.0.7 2024-10-23 15:09:27 -05:00
Tim Donohue
0ed8c05e1c Bump http-proxy-middleware from 1.0.5 to 2.0.7 2024-10-23 15:05:01 -05:00
Tim Donohue
3deef34f5b Merge pull request #3545 from DSpace/backport-3481-to-dspace-7_x
[Port dspace-7_x] Fix code scanning alert no. 6: Incomplete string escaping or encoding
2024-10-23 14:33:08 -05:00
Tim Donohue
425078dc4e Remove unused postcss-responsive-type 2024-10-23 14:13:33 -05:00
Tim Donohue
5c877f56e9 Remove unused/unmaintained postcss-apply 2024-10-23 14:11:53 -05:00
Tim Donohue
e7ff564608 Remove unused postcss-responsive-type 2024-10-23 13:56:46 -05:00
Tim Donohue
04410485a5 Remove unused/unmaintained postcss-apply 2024-10-23 13:55:36 -05:00
Tim Donohue
930d8ef8e0 Merge pull request #3546 from DSpace/backport-3481-to-dspace-8_x
[Port dspace-8_x] Fix code scanning alert no. 6: Incomplete string escaping or encoding
2024-10-23 13:15:39 -05:00
Tim Donohue
bb84d86cf5 Fix code scanning alert no. 6: Incomplete string escaping or encoding
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
(cherry picked from commit 372444c50a)
2024-10-23 17:25:18 +00:00
Tim Donohue
9486ab5fa1 Fix code scanning alert no. 6: Incomplete string escaping or encoding
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
(cherry picked from commit 372444c50a)
2024-10-23 17:25:14 +00:00
Tim Donohue
7c6ecf8e9e Merge pull request #3530 from DSpace/dependabot/npm_and_yarn/dspace-7_x/reflect-metadata-0.2.2
Bump reflect-metadata from 0.1.13 to 0.2.2
2024-10-23 11:37:24 -05:00
Tim Donohue
6198314a37 Merge pull request #3535 from DSpace/dependabot/npm_and_yarn/dspace-8_x/babel/runtime-7.25.9
Bump @babel/runtime from 7.25.7 to 7.25.9
2024-10-23 10:59:19 -05:00
Tim Donohue
ee36bab60b Merge pull request #3531 from DSpace/dependabot/npm_and_yarn/dspace-7_x/babel/runtime-7.25.9
Bump @babel/runtime from 7.21.0 to 7.25.9
2024-10-23 10:12:06 -05:00
Tim Donohue
89569d7989 Merge pull request #3533 from DSpace/dependabot/npm_and_yarn/dspace-8_x/typescript-5.4.5
Bump typescript from 5.3.3 to 5.4.5
2024-10-23 09:59:08 -05:00
dependabot[bot]
207e2ac9ae Bump typescript from 5.3.3 to 5.4.5
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.3.3 to 5.4.5.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.3.3...v5.4.5)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-23 14:08:36 +00:00
Tim Donohue
09201b0d51 Merge pull request #3537 from DSpace/dependabot/npm_and_yarn/dspace-8_x/types/lodash-4.17.12
Bump @types/lodash from 4.17.10 to 4.17.12
2024-10-23 09:06:44 -05:00
Andreas Awouters
1a816228e8 118223: Add 'loading' overlay while bitstream is moving 2024-10-23 13:59:23 +02:00
Alan Orth
ccf6f36ade Merge pull request #3526 from DSpace/dependabot/npm_and_yarn/dspace-7_x/angulartics2-12.2.1 2024-10-23 09:39:21 +03:00
dependabot[bot]
5cb22bb1d0 Bump reflect-metadata from 0.1.13 to 0.2.2
Bumps [reflect-metadata](https://github.com/rbuckton/reflect-metadata) from 0.1.13 to 0.2.2.
- [Release notes](https://github.com/rbuckton/reflect-metadata/releases)
- [Changelog](https://github.com/rbuckton/reflect-metadata/blob/main/tsconfig-release.json)
- [Commits](https://github.com/rbuckton/reflect-metadata/commits)

---
updated-dependencies:
- dependency-name: reflect-metadata
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 21:58:01 +00:00
Tim Donohue
b237c7f5cb Merge pull request #3525 from DSpace/dependabot/npm_and_yarn/dspace-7_x/multi-c55d84953a
Bump sanitize-html and @types/sanitize-html
2024-10-22 16:56:11 -05:00
Tim Donohue
30c3e3db0c Merge pull request #3532 from DSpace/dependabot/npm_and_yarn/dspace-7_x/zone.js-0.13.3
Bump zone.js from 0.11.8 to 0.13.3
2024-10-22 16:55:24 -05:00
Tim Donohue
39cdd1692a Merge pull request #3528 from DSpace/dependabot/npm_and_yarn/dspace-7_x/webpack-dev-server-4.15.2
Bump webpack-dev-server from 4.13.3 to 4.15.2
2024-10-22 16:51:38 -05:00
dependabot[bot]
a9febec691 Bump @types/lodash from 4.17.10 to 4.17.12
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.10 to 4.17.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 21:33:31 +00:00
dependabot[bot]
cddee3e1db Bump @babel/runtime from 7.25.7 to 7.25.9
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.25.7 to 7.25.9.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.25.9/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 21:33:14 +00:00
dependabot[bot]
603e46283f Bump angulartics2 from 12.2.0 to 12.2.1
Bumps [angulartics2](https://github.com/angulartics/angulartics2) from 12.2.0 to 12.2.1.
- [Release notes](https://github.com/angulartics/angulartics2/releases)
- [Commits](https://github.com/angulartics/angulartics2/compare/v12.2.0...v12.2.1)

---
updated-dependencies:
- dependency-name: angulartics2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 19:31:16 +00:00
Tim Donohue
c17adef242 Merge pull request #3523 from DSpace/dependabot/npm_and_yarn/dspace-7_x/axios-1.7.7
Bump axios from 1.7.5 to 1.7.7
2024-10-22 14:29:41 -05:00
Tim Donohue
bacd484832 Merge pull request #3515 from DSpace/dependabot/npm_and_yarn/dspace-7_x/ng-mocks-14.13.1
Bump ng-mocks from 14.10.0 to 14.13.1
2024-10-22 14:21:04 -05:00
dependabot[bot]
7eb0a47fca Bump zone.js from 0.11.8 to 0.13.3
Bumps [zone.js](https://github.com/angular/angular/tree/HEAD/packages/zone.js) from 0.11.8 to 0.13.3.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/packages/zone.js/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/zone.js-0.13.3/packages/zone.js)

---
updated-dependencies:
- dependency-name: zone.js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 19:20:58 +00:00
dependabot[bot]
cfa6d50583 Bump @babel/runtime from 7.21.0 to 7.25.9
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.21.0 to 7.25.9.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.25.9/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 19:20:30 +00:00
dependabot[bot]
47db669191 Bump webpack-dev-server from 4.13.3 to 4.15.2
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 4.13.3 to 4.15.2.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/v4.15.2/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v4.13.3...v4.15.2)

---
updated-dependencies:
- dependency-name: webpack-dev-server
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 19:19:40 +00:00
dependabot[bot]
ab60ad2072 Bump sanitize-html and @types/sanitize-html
Bumps [sanitize-html](https://github.com/apostrophecms/sanitize-html) and [@types/sanitize-html](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/sanitize-html). These dependencies needed to be updated together.

Updates `sanitize-html` from 2.12.1 to 2.13.1
- [Changelog](https://github.com/apostrophecms/sanitize-html/blob/main/CHANGELOG.md)
- [Commits](https://github.com/apostrophecms/sanitize-html/compare/2.12.1...2.13.1)

Updates `@types/sanitize-html` from 2.9.0 to 2.13.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/sanitize-html)

---
updated-dependencies:
- dependency-name: sanitize-html
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/sanitize-html"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 19:18:46 +00:00
Tim Donohue
081c573653 Merge pull request #3521 from DSpace/dependabot/npm_and_yarn/dspace-7_x/date-fns-2.30.0
Bump date-fns from 2.29.3 to 2.30.0
2024-10-22 13:48:32 -05:00
Tim Donohue
e22ed77527 Merge pull request #3520 from DSpace/dependabot/npm_and_yarn/dspace-7_x/webpack-bundle-analyzer-4.10.2
Bump webpack-bundle-analyzer from 4.8.0 to 4.10.2
2024-10-22 13:31:32 -05:00
Tim Donohue
4eca7c062c Merge pull request #3514 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sortablejs-1.15.3
Bump sortablejs from 1.15.0 to 1.15.3
2024-10-22 13:30:29 -05:00
Tim Donohue
bef3d37802 Merge pull request #3517 from DSpace/dependabot/npm_and_yarn/dspace-7_x/types/express-4.17.21
Bump @types/express from 4.17.17 to 4.17.21
2024-10-22 13:18:47 -05:00
Tim Donohue
2ab52dad8e Merge pull request #3522 from DSpace/dependabot/npm_and_yarn/dspace-7_x/types/deep-freeze-0.1.5
Bump @types/deep-freeze from 0.1.2 to 0.1.5
2024-10-22 13:17:41 -05:00
Tim Donohue
6bd66910a9 Merge pull request #3518 from DSpace/dependabot/npm_and_yarn/dspace-7_x/fortawesome/fontawesome-free-6.6.0
Bump @fortawesome/fontawesome-free from 6.4.0 to 6.6.0
2024-10-22 13:16:03 -05:00
Tim Donohue
51e9acf9ff Merge pull request #3430 from DSpace/dependabot/npm_and_yarn/dspace-8_x/webpack-5.95.0
Bump webpack from 5.94.0 to 5.95.0
2024-10-22 13:13:58 -05:00
dependabot[bot]
cfecf0ff62 Bump ng-mocks from 14.10.0 to 14.13.1
Bumps [ng-mocks](https://github.com/help-me-mom/ng-mocks) from 14.10.0 to 14.13.1.
- [Release notes](https://github.com/help-me-mom/ng-mocks/releases)
- [Changelog](https://github.com/help-me-mom/ng-mocks/blob/master/CHANGELOG.md)
- [Commits](https://github.com/help-me-mom/ng-mocks/compare/v14.10.0...v14.13.1)

---
updated-dependencies:
- dependency-name: ng-mocks
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 17:16:48 +00:00
Tim Donohue
1bea5f8e6c Merge pull request #3519 from DSpace/dependabot/npm_and_yarn/dspace-7_x/mirador-share-plugin-0.16.0
Bump mirador-share-plugin from 0.11.0 to 0.16.0
2024-10-22 12:14:27 -05:00
Tim Donohue
c55ad832c7 Merge pull request #3490 from DSpace/dependabot/npm_and_yarn/dspace-8_x/mirador-share-plugin-0.16.0
Bump mirador-share-plugin from 0.11.0 to 0.16.0
2024-10-22 12:13:11 -05:00
Tim Donohue
d634903d0d Remove unnecessary @ts-expect-error, as the bug they are expecting is fixed in webpack 5.95.0. 2024-10-22 11:35:09 -05:00
dependabot[bot]
7ee4fd5b06 Bump axios from 1.7.5 to 1.7.7
Bumps [axios](https://github.com/axios/axios) from 1.7.5 to 1.7.7.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.7.5...v1.7.7)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 16:24:48 +00:00
dependabot[bot]
b90f8e1b49 Bump @types/deep-freeze from 0.1.2 to 0.1.5
Bumps [@types/deep-freeze](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/deep-freeze) from 0.1.2 to 0.1.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/deep-freeze)

---
updated-dependencies:
- dependency-name: "@types/deep-freeze"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 16:24:35 +00:00
dependabot[bot]
2a92215d82 Bump date-fns from 2.29.3 to 2.30.0
Bumps [date-fns](https://github.com/date-fns/date-fns) from 2.29.3 to 2.30.0.
- [Release notes](https://github.com/date-fns/date-fns/releases)
- [Changelog](https://github.com/date-fns/date-fns/blob/main/CHANGELOG.md)
- [Commits](https://github.com/date-fns/date-fns/compare/v2.29.3...v2.30.0)

---
updated-dependencies:
- dependency-name: date-fns
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 16:24:25 +00:00
dependabot[bot]
d03b3c3a48 Bump webpack-bundle-analyzer from 4.8.0 to 4.10.2
Bumps [webpack-bundle-analyzer](https://github.com/webpack-contrib/webpack-bundle-analyzer) from 4.8.0 to 4.10.2.
- [Changelog](https://github.com/webpack-contrib/webpack-bundle-analyzer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/webpack-bundle-analyzer/compare/v4.8.0...v4.10.2)

---
updated-dependencies:
- dependency-name: webpack-bundle-analyzer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 16:24:02 +00:00
dependabot[bot]
5ac126250e Bump mirador-share-plugin from 0.11.0 to 0.16.0
Bumps [mirador-share-plugin]() from 0.11.0 to 0.16.0.

---
updated-dependencies:
- dependency-name: mirador-share-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 16:23:38 +00:00
dependabot[bot]
a1919a7a1f Bump @fortawesome/fontawesome-free from 6.4.0 to 6.6.0
Bumps [@fortawesome/fontawesome-free](https://github.com/FortAwesome/Font-Awesome) from 6.4.0 to 6.6.0.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/6.x/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/compare/6.4.0...6.6.0)

---
updated-dependencies:
- dependency-name: "@fortawesome/fontawesome-free"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 16:23:20 +00:00
dependabot[bot]
dfae913dea Bump @types/express from 4.17.17 to 4.17.21
Bumps [@types/express](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/express) from 4.17.17 to 4.17.21.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/express)

---
updated-dependencies:
- dependency-name: "@types/express"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 16:22:59 +00:00
dependabot[bot]
627d8097ac Bump sortablejs from 1.15.0 to 1.15.3
Bumps [sortablejs](https://github.com/SortableJS/Sortable) from 1.15.0 to 1.15.3.
- [Release notes](https://github.com/SortableJS/Sortable/releases)
- [Commits](https://github.com/SortableJS/Sortable/compare/1.15.0...1.15.3)

---
updated-dependencies:
- dependency-name: sortablejs
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-22 16:21:46 +00:00
Tim Donohue
c5c9abebde Merge pull request #3509 from tdonohue/remove_unused_deps
Remove unused dependencies (sortablejs, sanitize-html, webfontloader)
2024-10-22 08:54:44 -05:00
Alan Orth
8dc777fc46 Merge pull request #3510 from tdonohue/remove_unused_deps_7x 2024-10-22 11:36:11 +03:00
Tim Donohue
e7430b9c1a Remove unused webfontloader 2024-10-21 17:01:49 -05:00
Tim Donohue
d9080d1427 Remove unused webfontloader 2024-10-21 16:37:57 -05:00
Tim Donohue
a561879eb4 Remove unused sanitize-html 2024-10-21 16:31:07 -05:00
Tim Donohue
3053e401b6 Remove sortablejs which is unused 2024-10-21 16:29:55 -05:00
Tim Donohue
264bc289aa Merge pull request #3483 from DSpace/dependabot/npm_and_yarn/dspace-8_x/eslint-9cef52ea48
Bump eslint-plugin-import from 2.30.0 to 2.31.0 in the eslint group
2024-10-21 16:19:12 -05:00
Tim Donohue
4543285a9d Merge pull request #3499 from DSpace/dependabot/npm_and_yarn/dspace-7_x/markdown-it-13.0.2
Bump markdown-it from 13.0.1 to 13.0.2
2024-10-21 16:08:59 -05:00
Tim Donohue
4b9ea2f084 Merge pull request #3501 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-25e7b4912b
Bump sass from 1.80.2 to 1.80.3 in the sass group
2024-10-21 15:54:00 -05:00
Tim Donohue
86ea2dc5cb Merge pull request #3498 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-25e7b4912b
Bump sass from 1.80.2 to 1.80.3 in the sass group
2024-10-21 15:53:18 -05:00
Tim Donohue
43d4122bc5 Merge pull request #3485 from DSpace/dependabot/npm_and_yarn/dspace-7_x/eslint-dda39ca691
Bump the eslint group with 5 updates
2024-10-21 15:01:17 -05:00
Tim Donohue
e87da70191 Merge pull request #3492 from DSpace/dependabot/npm_and_yarn/dspace-7_x/types/ejs-3.1.5
Bump @types/ejs from 3.1.2 to 3.1.5
2024-10-21 14:51:41 -05:00
Tim Donohue
4f24f2d12f Merge pull request #3495 from DSpace/dependabot/npm_and_yarn/dspace-7_x/types/grecaptcha-3.0.9
Bump @types/grecaptcha from 3.0.4 to 3.0.9
2024-10-21 14:50:33 -05:00
dependabot[bot]
24b7d38fe9 Bump webpack from 5.94.0 to 5.95.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.94.0 to 5.95.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.94.0...v5.95.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-21 19:47:25 +00:00
Tim Donohue
d32d12b3e9 Merge pull request #3497 from DSpace/dependabot/npm_and_yarn/dspace-8_x/postcss-8.4.47
Bump postcss from 8.4.45 to 8.4.47
2024-10-21 14:45:58 -05:00
Tim Donohue
44fdc49e26 Merge pull request #3496 from DSpace/dependabot/npm_and_yarn/dspace-7_x/postcss-8.4.47
Bump postcss from 8.4.38 to 8.4.47
2024-10-21 14:45:04 -05:00
Tim Donohue
bc5b969c4c Merge pull request #3493 from DSpace/dependabot/npm_and_yarn/dspace-8_x/ngtools/webpack-16.2.16
Bump @ngtools/webpack from 16.2.15 to 16.2.16
2024-10-21 14:42:40 -05:00
Tim Donohue
600474a092 Merge pull request #3487 from DSpace/dependabot/npm_and_yarn/dspace-8_x/express-static-gzip-2.1.8
Bump express-static-gzip from 2.1.7 to 2.1.8
2024-10-21 14:41:21 -05:00
dependabot[bot]
610bd32869 Bump the eslint group with 5 updates
Bumps the eslint group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `5.59.1` | `5.62.0` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `5.59.1` | `5.62.0` |
| [eslint-plugin-deprecation](https://github.com/gund/eslint-plugin-deprecation) | `1.4.1` | `1.5.0` |
| [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) | `2.27.5` | `2.31.0` |
| [eslint-plugin-jsonc](https://github.com/ota-meshi/eslint-plugin-jsonc) | `2.6.0` | `2.16.0` |


Updates `@typescript-eslint/eslint-plugin` from 5.59.1 to 5.62.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.62.0/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 5.59.1 to 5.62.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.62.0/packages/parser)

Updates `eslint-plugin-deprecation` from 1.4.1 to 1.5.0
- [Release notes](https://github.com/gund/eslint-plugin-deprecation/releases)
- [Changelog](https://github.com/gund/eslint-plugin-deprecation/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gund/eslint-plugin-deprecation/compare/v1.4.1...v1.5.0)

Updates `eslint-plugin-import` from 2.27.5 to 2.31.0
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.27.5...v2.31.0)

Updates `eslint-plugin-jsonc` from 2.6.0 to 2.16.0
- [Release notes](https://github.com/ota-meshi/eslint-plugin-jsonc/releases)
- [Changelog](https://github.com/ota-meshi/eslint-plugin-jsonc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ota-meshi/eslint-plugin-jsonc/compare/v2.6.0...v2.16.0)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
- dependency-name: eslint-plugin-deprecation
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
- dependency-name: eslint-plugin-jsonc
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-21 19:22:59 +00:00
dependabot[bot]
059da40c64 Bump markdown-it from 13.0.1 to 13.0.2
Bumps [markdown-it](https://github.com/markdown-it/markdown-it) from 13.0.1 to 13.0.2.
- [Changelog](https://github.com/markdown-it/markdown-it/blob/master/CHANGELOG.md)
- [Commits](https://github.com/markdown-it/markdown-it/compare/13.0.1...13.0.2)

---
updated-dependencies:
- dependency-name: markdown-it
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-21 19:18:12 +00:00
dependabot[bot]
6f7c64e8ca Bump sass from 1.80.2 to 1.80.3 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.80.2 to 1.80.3
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.80.2...1.80.3)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-21 19:18:08 +00:00
Tim Donohue
1b99ffbf58 Merge pull request #3435 from DSpace/dependabot/npm_and_yarn/dspace-7_x/klaro-0.7.21
Bump klaro from 0.7.18 to 0.7.21
2024-10-21 14:16:06 -05:00
Tim Donohue
36195a9ed1 Merge pull request #3500 from DSpace/dependabot/npm_and_yarn/dspace-7_x/types/lodash-4.17.12
Bump @types/lodash from 4.14.194 to 4.17.12
2024-10-21 14:14:45 -05:00
Tim Donohue
03bf6a9fc3 Merge pull request #3486 from DSpace/dependabot/npm_and_yarn/dspace-8_x/pem-1.14.8
Bump pem from 1.14.7 to 1.14.8
2024-10-21 14:12:21 -05:00
Tim Donohue
d784a28ddb Merge pull request #3489 from DSpace/dependabot/npm_and_yarn/dspace-7_x/pem-1.14.8
Bump pem from 1.14.7 to 1.14.8
2024-10-21 14:11:47 -05:00
dependabot[bot]
7e97dbbe81 Bump eslint-plugin-import from 2.30.0 to 2.31.0 in the eslint group
Bumps the eslint group with 1 update: [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import).


Updates `eslint-plugin-import` from 2.30.0 to 2.31.0
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.30.0...v2.31.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: eslint
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-21 19:06:30 +00:00
dependabot[bot]
7f85a1eaa1 Bump sass from 1.80.2 to 1.80.3 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.80.2 to 1.80.3
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.80.2...1.80.3)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-21 19:04:30 +00:00
Tim Donohue
a145851330 Merge pull request #3508 from DSpace/backport-3209-to-dspace-8_x
[Port dspace-8_x] Update pt-PT.json5
2024-10-21 13:49:15 -05:00
Ricardo Saraiva
7cfbeb241b Update pt-PT.json5
Lint errors review.

(cherry picked from commit 43071da3eb)
2024-10-21 18:48:41 +00:00
Ricardo Saraiva
74c0c3ad37 Update pt-PT.json5
Extensive revision of i18n pt-PT with the news translation strings introduced by DSpace v8.0 and other improvements > last updated 18th of july 2024.

(cherry picked from commit 2c20833410)
2024-10-21 18:48:41 +00:00
dependabot[bot]
e1619e6a6b Bump @types/lodash from 4.14.194 to 4.17.12
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.14.194 to 4.17.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-21 02:31:33 +00:00
Tim Donohue
c9996564c8 Merge pull request #3484 from DSpace/dependabot/npm_and_yarn/dspace-8_x/sass-7fd8873515
Bump sass from 1.62.1 to 1.80.2 in the sass group
2024-10-18 16:54:41 -05:00
dependabot[bot]
e3be0cd794 Bump postcss from 8.4.38 to 8.4.47
Bumps [postcss](https://github.com/postcss/postcss) from 8.4.38 to 8.4.47.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.38...8.4.47)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 21:54:22 +00:00
dependabot[bot]
ac3bccc67d Bump klaro from 0.7.18 to 0.7.21
Bumps [klaro](https://github.com/kiprotect/klaro) from 0.7.18 to 0.7.21.
- [Changelog](https://github.com/klaro-org/klaro-js/blob/master/releases.json)
- [Commits](https://github.com/kiprotect/klaro/compare/v0.7.18...v0.7.21)

---
updated-dependencies:
- dependency-name: klaro
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 21:53:59 +00:00
Tim Donohue
b2d46190cb Merge pull request #3488 from DSpace/dependabot/npm_and_yarn/dspace-7_x/sass-7fd8873515
Bump sass from 1.62.0 to 1.80.2 in the sass group
2024-10-18 16:52:20 -05:00
Tim Donohue
532da9d21f Merge pull request #3440 from DSpace/dependabot/npm_and_yarn/dspace-7_x/karma-6.4.4
Bump karma from 6.4.2 to 6.4.4
2024-10-18 15:53:22 -05:00
dependabot[bot]
5abba52204 Bump postcss from 8.4.45 to 8.4.47
Bumps [postcss](https://github.com/postcss/postcss) from 8.4.45 to 8.4.47.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.45...8.4.47)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 20:19:38 +00:00
dependabot[bot]
dc73f85458 Bump @types/grecaptcha from 3.0.4 to 3.0.9
Bumps [@types/grecaptcha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/grecaptcha) from 3.0.4 to 3.0.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/grecaptcha)

---
updated-dependencies:
- dependency-name: "@types/grecaptcha"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 20:19:21 +00:00
dependabot[bot]
e5748dd7a4 Bump @ngtools/webpack from 16.2.15 to 16.2.16
Bumps [@ngtools/webpack](https://github.com/angular/angular-cli) from 16.2.15 to 16.2.16.
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/16.2.15...16.2.16)

---
updated-dependencies:
- dependency-name: "@ngtools/webpack"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 20:19:02 +00:00
dependabot[bot]
ac1adefeec Bump @types/ejs from 3.1.2 to 3.1.5
Bumps [@types/ejs](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ejs) from 3.1.2 to 3.1.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ejs)

---
updated-dependencies:
- dependency-name: "@types/ejs"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 20:19:00 +00:00
dependabot[bot]
6fd8d4eef4 Bump mirador-share-plugin from 0.11.0 to 0.16.0
Bumps [mirador-share-plugin]() from 0.11.0 to 0.16.0.

---
updated-dependencies:
- dependency-name: mirador-share-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 20:18:37 +00:00
dependabot[bot]
6eb407ff3b Bump pem from 1.14.7 to 1.14.8
Bumps [pem](https://github.com/Dexus/pem) from 1.14.7 to 1.14.8.
- [Release notes](https://github.com/Dexus/pem/releases)
- [Changelog](https://github.com/Dexus/pem/blob/master/HISTORY.md)
- [Commits](https://github.com/Dexus/pem/compare/v1.14.7...v1.14.8)

---
updated-dependencies:
- dependency-name: pem
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 20:18:37 +00:00
dependabot[bot]
43f7586564 Bump express-static-gzip from 2.1.7 to 2.1.8
Bumps [express-static-gzip](https://github.com/tkoenig89/express-static-gzip) from 2.1.7 to 2.1.8.
- [Release notes](https://github.com/tkoenig89/express-static-gzip/releases)
- [Commits](https://github.com/tkoenig89/express-static-gzip/compare/v2.1.7...v2.1.8)

---
updated-dependencies:
- dependency-name: express-static-gzip
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 20:18:26 +00:00
dependabot[bot]
2c152e632b Bump sass from 1.62.0 to 1.80.2 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.62.0 to 1.80.2
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.62.0...1.80.2)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 20:18:26 +00:00
dependabot[bot]
98ad7a84d5 Bump pem from 1.14.7 to 1.14.8
Bumps [pem](https://github.com/Dexus/pem) from 1.14.7 to 1.14.8.
- [Release notes](https://github.com/Dexus/pem/releases)
- [Changelog](https://github.com/Dexus/pem/blob/master/HISTORY.md)
- [Commits](https://github.com/Dexus/pem/compare/v1.14.7...v1.14.8)

---
updated-dependencies:
- dependency-name: pem
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 20:18:13 +00:00
dependabot[bot]
9a686b36f1 Bump sass from 1.62.1 to 1.80.2 in the sass group
Bumps the sass group with 1 update: [sass](https://github.com/sass/dart-sass).


Updates `sass` from 1.62.1 to 1.80.2
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.62.1...1.80.2)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: sass
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 20:18:01 +00:00
dependabot[bot]
047b4629bf Bump karma from 6.4.2 to 6.4.4
Bumps [karma](https://github.com/karma-runner/karma) from 6.4.2 to 6.4.4.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.4.2...v6.4.4)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-18 19:35:07 +00:00
Tim Donohue
1244f23522 Merge pull request #3471 from tdonohue/flakey_item_page_tests
[dspace-7_x] Fix flakey Item page accessibility tests by waiting for pages to fuly load
2024-10-18 14:33:12 -05:00
Tim Donohue
5275f8d13f Fix flakey Item page accessibility tests by waiting for pages to fully load. 2024-10-18 14:01:19 -05:00
Tim Donohue
c3eaf8bd6f Merge pull request #3442 from DSpace/dependabot/npm_and_yarn/dspace-7_x/nouislider-15.8.1
Bump nouislider from 15.7.1 to 15.8.1
2024-10-18 12:25:34 -05:00
Tim Donohue
53c6e89486 Merge pull request #3443 from DSpace/dependabot/npm_and_yarn/dspace-7_x/core-js-3.38.1
Bump core-js from 3.30.1 to 3.38.1
2024-10-18 12:14:46 -05:00
Tim Donohue
1bfd68bd34 Merge pull request #3444 from DSpace/dependabot/npm_and_yarn/dspace-7_x/types/node-14.18.63
Bump @types/node from 14.18.42 to 14.18.63
2024-10-18 11:56:38 -05:00
Tim Donohue
9410114be3 Merge pull request #3432 from DSpace/dependabot/npm_and_yarn/dspace-7_x/angular-99dae2292d
Bump the angular group with 15 updates
2024-10-18 11:53:53 -05:00
Tim Donohue
3741c08230 Merge pull request #3429 from DSpace/dependabot/npm_and_yarn/dspace-8_x/types/deep-freeze-0.1.5
Bump @types/deep-freeze from 0.1.2 to 0.1.5
2024-10-17 16:55:12 -05:00
Tim Donohue
dc6dd9e056 Merge pull request #3428 from DSpace/dependabot/npm_and_yarn/dspace-8_x/types/lodash-4.17.10
Bump @types/lodash from 4.17.7 to 4.17.10
2024-10-17 16:54:32 -05:00
Tim Donohue
5a3b0c6d78 Merge pull request #3446 from DSpace/dependabot/npm_and_yarn/dspace-7_x/express-static-gzip-2.1.8
Bump express-static-gzip from 2.1.7 to 2.1.8
2024-10-17 16:51:22 -05:00
Tim Donohue
83dcc618e0 Merge pull request #3439 from DSpace/dependabot/npm_and_yarn/dspace-8_x/babel/runtime-7.25.7
Bump @babel/runtime from 7.21.0 to 7.25.7
2024-10-17 16:10:24 -05:00
dependabot[bot]
3459bf68cb Bump the angular group with 15 updates
Bumps the angular group with 15 updates:

| Package | From | To |
| --- | --- | --- |
| [@angular/animations](https://github.com/angular/angular/tree/HEAD/packages/animations) | `15.2.8` | `15.2.10` |
| [@angular/cdk](https://github.com/angular/components) | `15.2.8` | `15.2.9` |
| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `15.2.8` | `15.2.10` |
| [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `15.2.8` | `15.2.10` |
| [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `15.2.8` | `15.2.10` |
| [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `15.2.8` | `15.2.10` |
| [@angular/localize](https://github.com/angular/angular) | `15.2.8` | `15.2.10` |
| [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `15.2.8` | `15.2.10` |
| [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) | `15.2.8` | `15.2.10` |
| [@angular/platform-server](https://github.com/angular/angular/tree/HEAD/packages/platform-server) | `15.2.8` | `15.2.10` |
| [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) | `15.2.8` | `15.2.10` |
| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `15.2.6` | `15.2.11` |
| [@angular/cli](https://github.com/angular/angular-cli) | `16.2.12` | `16.2.16` |
| [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `15.2.8` | `15.2.10` |
| [@angular/language-service](https://github.com/angular/angular/tree/HEAD/packages/language-service) | `15.2.8` | `15.2.10` |


Updates `@angular/animations` from 15.2.8 to 15.2.10
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/15.2.10/packages/animations)

Updates `@angular/cdk` from 15.2.8 to 15.2.9
- [Release notes](https://github.com/angular/components/releases)
- [Changelog](https://github.com/angular/components/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/components/compare/15.2.8...15.2.9)

Updates `@angular/common` from 15.2.8 to 15.2.10
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/15.2.10/packages/common)

Updates `@angular/compiler` from 15.2.8 to 15.2.10
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/15.2.10/packages/compiler)

Updates `@angular/core` from 15.2.8 to 15.2.10
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/15.2.10/packages/core)

Updates `@angular/forms` from 15.2.8 to 15.2.10
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/15.2.10/packages/forms)

Updates `@angular/localize` from 15.2.8 to 15.2.10
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/compare/15.2.8...15.2.10)

Updates `@angular/platform-browser` from 15.2.8 to 15.2.10
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/15.2.10/packages/platform-browser)

Updates `@angular/platform-browser-dynamic` from 15.2.8 to 15.2.10
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/15.2.10/packages/platform-browser-dynamic)

Updates `@angular/platform-server` from 15.2.8 to 15.2.10
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/15.2.10/packages/platform-server)

Updates `@angular/router` from 15.2.8 to 15.2.10
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/15.2.10/packages/router)

Updates `@angular-devkit/build-angular` from 15.2.6 to 15.2.11
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/15.2.6...15.2.11)

Updates `@angular/cli` from 16.2.12 to 16.2.16
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/16.2.12...16.2.16)

Updates `@angular/compiler-cli` from 15.2.8 to 15.2.10
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/15.2.10/packages/compiler-cli)

Updates `@angular/language-service` from 15.2.8 to 15.2.10
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/15.2.10/packages/language-service)

---
updated-dependencies:
- dependency-name: "@angular/animations"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/cdk"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/common"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/compiler"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/forms"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/localize"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/platform-browser"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/platform-browser-dynamic"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/platform-server"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/router"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular-devkit/build-angular"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/compiler-cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/language-service"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-17 19:59:07 +00:00
dependabot[bot]
ab7bded221 Bump express-static-gzip from 2.1.7 to 2.1.8
Bumps [express-static-gzip](https://github.com/tkoenig89/express-static-gzip) from 2.1.7 to 2.1.8.
- [Release notes](https://github.com/tkoenig89/express-static-gzip/releases)
- [Commits](https://github.com/tkoenig89/express-static-gzip/compare/v2.1.7...v2.1.8)

---
updated-dependencies:
- dependency-name: express-static-gzip
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-17 19:56:44 +00:00
Tim Donohue
14a6894540 Merge pull request #3468 from tdonohue/port_3461_to_7x
[Port dspace-7_x] Add basic e2e testing for i18n
2024-10-17 14:55:04 -05:00
dependabot[bot]
bcb70d54dd Bump @babel/runtime from 7.21.0 to 7.25.7
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.21.0 to 7.25.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.25.7/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-17 19:52:32 +00:00
Tim Donohue
92b695e6ba Merge pull request #3436 from DSpace/dependabot/npm_and_yarn/dspace-8_x/reflect-metadata-0.2.2
Bump reflect-metadata from 0.1.14 to 0.2.2
2024-10-17 14:50:40 -05:00
Tim Donohue
946a3afde8 Add basic e2e testing for i18n 2024-10-17 14:25:59 -05:00
Tim Donohue
68348a5fff Merge pull request #3467 from DSpace/backport-3461-to-dspace-8_x
[Port dspace-8_x] Add basic e2e testing for i18n
2024-10-17 14:23:27 -05:00
Tim Donohue
b29a12dce3 Add basic e2e testing for i18n
(cherry picked from commit a74cd848fe)
2024-10-17 15:47:26 +00:00
Andreas Awouters
1babb96a1c Merge branch 'item-edit-bitstreams-table-7.6' into item-edit-bitstreams-table-8_x
# Conflicts:
#	src/app/item-page/edit-item-page/edit-item-page.module.ts
#	src/app/item-page/edit-item-page/item-bitstreams/item-bitstreams.component.spec.ts
#	src/app/item-page/edit-item-page/item-bitstreams/item-bitstreams.component.ts
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.html
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.spec.ts
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.ts
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/paginated-drag-and-drop-bitstream-list/paginated-drag-and-drop-bitstream-list.component.html
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/paginated-drag-and-drop-bitstream-list/paginated-drag-and-drop-bitstream-list.component.spec.ts
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/paginated-drag-and-drop-bitstream-list/paginated-drag-and-drop-bitstream-list.component.ts
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-drag-handle/item-edit-bitstream-drag-handle.component.ts
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream/item-edit-bitstream.component.html
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream/item-edit-bitstream.component.spec.ts
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream/item-edit-bitstream.component.ts
#	src/app/shared/notifications/models/notification-options.model.ts
#	src/app/shared/notifications/notifications-board/notifications-board.component.spec.ts
#	src/app/shared/notifications/notifications-board/notifications-board.component.ts
#	src/app/shared/pagination-drag-and-drop/abstract-paginated-drag-and-drop-list.component.spec.ts
#	src/app/shared/pagination-drag-and-drop/abstract-paginated-drag-and-drop-list.component.ts
2024-10-17 12:45:27 +02:00
Andreas Awouters
b0900d5aa9 Merge branch 'item-edit-bitstreams-table-7.6' into item-edit-bitstreams-table-7_x
# Conflicts:
#	src/app/item-page/edit-item-page/item-bitstreams/item-bitstreams.component.ts
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.html
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/paginated-drag-and-drop-bitstream-list/paginated-drag-and-drop-bitstream-list.component.html
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream/item-edit-bitstream.component.html
#	src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream/item-edit-bitstream.component.spec.ts
2024-10-17 09:11:47 +02:00
Andreas Awouters
6644714bb7 119176: clear viewContainerRef on destroy 2024-10-17 08:26:39 +02:00
Andreas Awouters
93f9341387 119176: Add aria-labels to buttons 2024-10-17 08:26:39 +02:00
Andreas Awouters
5bb6f6d34c 119176: Announce notification content in live region 2024-10-17 08:26:39 +02:00
Andreas Awouters
8d93f22767 119176: Make table horizontally scrollable
For most screen sizes, the ResponsiveTableSizes is enough to resize the
table columns. On very small screens, or when zoomed in a lot, even the
smallest column sizes are too big. To make it possible to view the
rest of the content even in these situations, the ability to scroll
horizontally is added.
2024-10-17 08:26:39 +02:00
Andreas Awouters
2b1b9d83d7 118223: Include selection action with selection 2024-10-17 08:26:39 +02:00
Andreas Awouters
7fb4755aba 118223: Add item-edit-bitstream-bundle component tests 2024-10-17 08:26:39 +02:00
Andreas Awouters
e8379db987 118223: Add item-bitstreams component tests 2024-10-17 08:26:39 +02:00
Andreas Awouters
0bdb5742e0 118223: Remove unused item-edit-bitstream component 2024-10-17 08:26:39 +02:00
Andreas Awouters
1dcc5d1ec5 118223: Add ItemBitstreams service tests 2024-10-17 08:26:39 +02:00
Andreas Awouters
b158c5c2a2 118223: Move drag tooltip to center of pagination numbers 2024-10-17 08:26:39 +02:00
Andreas Awouters
0920a21876 118223: Stop sending success notificiations on every move 2024-10-17 08:26:39 +02:00
Andreas Awouters
2e1b1489b6 118223: Stop space from scrolling down page 2024-10-17 08:26:39 +02:00
Andreas Awouters
181ea6d7c9 118223: Implement bitstream reordering with keyboard 2024-10-17 08:26:39 +02:00
Andreas Awouters
1f909dc6ea 118223: Add instructive alert to item-bitstreams edit page 2024-10-17 08:26:39 +02:00
Andreas Awouters
d674bcc390 118220: Integrate live-region component into item-edit-bitsream page 2024-10-17 08:26:39 +02:00
dependabot[bot]
e181e854cc Bump @types/node from 14.18.42 to 14.18.63
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.18.42 to 14.18.63.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-16 21:47:00 +00:00
dependabot[bot]
ad8dd8b648 Bump core-js from 3.30.1 to 3.38.1
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.30.1 to 3.38.1.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.38.1/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-16 21:45:45 +00:00
dependabot[bot]
dfe2d4580e Bump nouislider from 15.7.1 to 15.8.1
Bumps [nouislider](https://github.com/leongersen/noUiSlider) from 15.7.1 to 15.8.1.
- [Release notes](https://github.com/leongersen/noUiSlider/releases)
- [Changelog](https://github.com/leongersen/noUiSlider/blob/master/CHANGELOG.MD)
- [Commits](https://github.com/leongersen/noUiSlider/compare/15.7.1...15.8.1)

---
updated-dependencies:
- dependency-name: nouislider
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-16 21:43:58 +00:00
Tim Donohue
7f1e267b2d Merge pull request #3460 from tdonohue/fix_collection_e2e_test
[dspace-7_x] Fix Collection Page e2e test. Wait on Recent Submissions
2024-10-16 16:39:11 -05:00
Tim Donohue
8c88f7052a Wait on viewevent to trigger before checking Collection Page in e2e tests. This ensures Collection page is fully loaded because viewevent triggers upon loading. 2024-10-16 16:08:39 -05:00
Tim Donohue
e9db8d821e Merge pull request #3427 from DSpace/dependabot/npm_and_yarn/dspace-8_x/angular-1a23ed9475
Bump the angular group with 10 updates
2024-10-16 11:52:19 -05:00
dependabot[bot]
1321b7b8a9 Bump reflect-metadata from 0.1.14 to 0.2.2
Bumps [reflect-metadata](https://github.com/rbuckton/reflect-metadata) from 0.1.14 to 0.2.2.
- [Release notes](https://github.com/rbuckton/reflect-metadata/releases)
- [Changelog](https://github.com/rbuckton/reflect-metadata/blob/main/tsconfig-release.json)
- [Commits](https://github.com/rbuckton/reflect-metadata/commits)

---
updated-dependencies:
- dependency-name: reflect-metadata
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-15 13:59:10 +00:00
dependabot[bot]
3352a966f3 Bump @types/deep-freeze from 0.1.2 to 0.1.5
Bumps [@types/deep-freeze](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/deep-freeze) from 0.1.2 to 0.1.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/deep-freeze)

---
updated-dependencies:
- dependency-name: "@types/deep-freeze"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-15 13:57:49 +00:00
dependabot[bot]
e6ce751279 Bump @types/lodash from 4.17.7 to 4.17.10
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.7 to 4.17.10.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-15 13:57:36 +00:00
dependabot[bot]
dac4d4a713 Bump the angular group with 10 updates
Bumps the angular group with 10 updates:

| Package | From | To |
| --- | --- | --- |
| [@angular/localize](https://github.com/angular/angular) | `17.3.11` | `17.3.12` |
| [@angular/ssr](https://github.com/angular/angular-cli) | `17.3.9` | `17.3.10` |
| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `17.3.9` | `17.3.10` |
| [@angular-eslint/builder](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/builder) | `17.2.1` | `17.5.3` |
| [@angular-eslint/bundled-angular-compiler](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/bundled-angular-compiler) | `17.2.1` | `17.5.3` |
| [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin) | `17.2.1` | `17.5.3` |
| [@angular-eslint/eslint-plugin-template](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin-template) | `17.2.1` | `17.5.3` |
| [@angular-eslint/schematics](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/schematics) | `17.2.1` | `17.5.3` |
| [@angular-eslint/template-parser](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/template-parser) | `17.2.1` | `17.5.3` |
| [@angular/cli](https://github.com/angular/angular-cli) | `17.3.9` | `17.3.10` |


Updates `@angular/localize` from 17.3.11 to 17.3.12
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/compare/17.3.11...17.3.12)

Updates `@angular/ssr` from 17.3.9 to 17.3.10
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/17.3.9...17.3.10)

Updates `@angular-devkit/build-angular` from 17.3.9 to 17.3.10
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/17.3.9...17.3.10)

Updates `@angular-eslint/builder` from 17.2.1 to 17.5.3
- [Release notes](https://github.com/angular-eslint/angular-eslint/releases)
- [Changelog](https://github.com/angular-eslint/angular-eslint/blob/main/packages/builder/CHANGELOG.md)
- [Commits](https://github.com/angular-eslint/angular-eslint/commits/HEAD/packages/builder)

Updates `@angular-eslint/bundled-angular-compiler` from 17.2.1 to 17.5.3
- [Release notes](https://github.com/angular-eslint/angular-eslint/releases)
- [Changelog](https://github.com/angular-eslint/angular-eslint/blob/main/packages/bundled-angular-compiler/CHANGELOG.md)
- [Commits](https://github.com/angular-eslint/angular-eslint/commits/HEAD/packages/bundled-angular-compiler)

Updates `@angular-eslint/eslint-plugin` from 17.2.1 to 17.5.3
- [Release notes](https://github.com/angular-eslint/angular-eslint/releases)
- [Changelog](https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/angular-eslint/angular-eslint/commits/HEAD/packages/eslint-plugin)

Updates `@angular-eslint/eslint-plugin-template` from 17.2.1 to 17.5.3
- [Release notes](https://github.com/angular-eslint/angular-eslint/releases)
- [Changelog](https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin-template/CHANGELOG.md)
- [Commits](https://github.com/angular-eslint/angular-eslint/commits/HEAD/packages/eslint-plugin-template)

Updates `@angular-eslint/schematics` from 17.2.1 to 17.5.3
- [Release notes](https://github.com/angular-eslint/angular-eslint/releases)
- [Changelog](https://github.com/angular-eslint/angular-eslint/blob/main/packages/schematics/CHANGELOG.md)
- [Commits](https://github.com/angular-eslint/angular-eslint/commits/HEAD/packages/schematics)

Updates `@angular-eslint/template-parser` from 17.2.1 to 17.5.3
- [Release notes](https://github.com/angular-eslint/angular-eslint/releases)
- [Changelog](https://github.com/angular-eslint/angular-eslint/blob/main/packages/template-parser/CHANGELOG.md)
- [Commits](https://github.com/angular-eslint/angular-eslint/commits/HEAD/packages/template-parser)

Updates `@angular/cli` from 17.3.9 to 17.3.10
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/17.3.9...17.3.10)

---
updated-dependencies:
- dependency-name: "@angular/localize"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular/ssr"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular-devkit/build-angular"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular
- dependency-name: "@angular-eslint/builder"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: angular
- dependency-name: "@angular-eslint/bundled-angular-compiler"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: angular
- dependency-name: "@angular-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: angular
- dependency-name: "@angular-eslint/eslint-plugin-template"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: angular
- dependency-name: "@angular-eslint/schematics"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: angular
- dependency-name: "@angular-eslint/template-parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: angular
- dependency-name: "@angular/cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-15 13:57:17 +00:00
Tim Donohue
f749ade52c Merge pull request #3422 from DSpace/backport-3176-to-dspace-7_x
[Port dspace-7_x] Add German translations (metadata import)
2024-10-14 17:02:02 -05:00
Tim Donohue
03147f5bdd Merge pull request #3423 from DSpace/backport-3176-to-dspace-8_x
[Port dspace-8_x] Add German translations (metadata import)
2024-10-14 17:01:52 -05:00
Tim Donohue
a759fc58de Merge pull request #3421 from DSpace/backport-3144-to-dspace-8_x
[Port dspace-8_x] Update Arabic Translation
2024-10-14 17:01:38 -05:00
Sascha Szott
26e02639d0 add missing German translations
(cherry picked from commit 2af168bd54)
2024-10-14 22:01:08 +00:00
Sascha Szott
533da6624f add missing German translations
(cherry picked from commit 2af168bd54)
2024-10-14 22:01:05 +00:00
Mohamed Ali
aee7f0f899 Update Arabic Translation
Update Arabic Translation

Update  ar.json5 translation

(cherry picked from commit f5f40c3dc7)
2024-10-14 21:48:50 +00:00
Tim Donohue
0bf1521d56 Merge pull request #3417 from DSpace-Labs/dependabot/npm_and_yarn/body-parser-1.20.3
[dspace-8_x] Bump body-parser from 1.20.2 to 1.20.3
2024-10-14 09:09:25 -05:00
dependabot[bot]
0657517915 Bump body-parser from 1.20.2 to 1.20.3
Bumps [body-parser](https://github.com/expressjs/body-parser) from 1.20.2 to 1.20.3.
- [Release notes](https://github.com/expressjs/body-parser/releases)
- [Changelog](https://github.com/expressjs/body-parser/blob/master/HISTORY.md)
- [Commits](https://github.com/expressjs/body-parser/compare/1.20.2...1.20.3)

---
updated-dependencies:
- dependency-name: body-parser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-11 20:14:58 +00:00
Tim Donohue
f7063d4eaf Merge pull request #3411 from alexandrevryghem/w2p-119207_fix-browse-startwith-options-not-loading_contribute-7_x
Fix browse by date's year dropdown being empty on DSpace 7.6.2+
2024-10-11 15:03:16 -05:00
Tim Donohue
3db6aba02b Merge pull request #3412 from alexandrevryghem/w2p-117287_fix-item-version-performance-issues_contribute-8_x
[Port dspace-8_x] Fixed Edit Item's Version History crashing
2024-10-11 14:14:47 -05:00
Alexandre Vryghem
4de3c58e06 119207: Reinitialize the BrowseByComponent's objectInjector when startsWithOptions don't exist yet OnInit 2024-10-11 16:23:46 +02:00
Alexandre Vryghem
b709ee0300 118944: Embed the accessStatus link on collection, browse, recent item submissions & the item page related items & delete tab when enabled 2024-10-11 15:08:31 +02:00
Alexandre Vryghem
4af88997e8 Merge branch 'w2p-107155_Performance-re-request-embeds-7.4' into w2p-107155_Performance-re-request-embeds-7.6 2024-10-11 11:02:50 +02:00
Andrea Barbasso
5619d6bc4c [DURACOM-248] set function call result in a class attribute
(cherry picked from commit 87cff6c907)
2024-10-11 00:50:59 +02:00
Alexandre Vryghem
e30bfffbf0 117287: Simplified the if conditions on the edit/save/discard buttons on item versions
(cherry picked from commit 04bbaf9cb9)
2024-10-11 00:28:43 +02:00
Alexandre Vryghem
db4ea14289 Merge branch 'w2p-117287_fix-item-version-performance-issues_contribute-7.6' into dspace-8_x
# Conflicts:
#	src/app/item-page/versions/item-versions.component.html
#	src/app/item-page/versions/item-versions.component.ts
2024-10-11 00:14:59 +02:00
Tim Donohue
e74dc22077 Merge pull request #3405 from 4Science/task/backport-3213-to-dspace-7_x
[Port dspace-7_x] Implement e2e accessibility tests for pages in DSpace User Interface
2024-10-10 13:20:34 -05:00
Tim Donohue
673c758fc8 Merge pull request #3410 from tdonohue/port_3407_to_8x
[Port dspace-8_x] Bump cookie, cookie-parser and socket.io
2024-10-10 13:13:56 -05:00
Tim Donohue
7884de94e0 Merge pull request #3409 from tdonohue/port_3407_to_7x
[Port dspace-7_x] Bump cookie, cookie-parser and socket.io
2024-10-10 13:13:51 -05:00
Tim Donohue
8fee4e348c Bump cookie, cookie-parser and socket.io 2024-10-10 11:50:08 -05:00
Tim Donohue
169ae41d49 Bump cookie, cookie-parser and socket.io 2024-10-10 11:17:17 -05:00
FrancescoMolinaro
6388613948 revert adding interceptor as not reliable on remote test 2024-10-10 18:00:35 +02:00
Tim Donohue
34a4f5b597 Merge pull request #3368 from alexandrevryghem/w2p-117287_fix-item-version-performance-issues_contribute-7_x
[Port dspace-7_x] Fixed Edit Item's Version History crashing
2024-10-10 10:46:07 -05:00
FrancescoMolinaro
7cf7749367 correct intercept to dso resolved for route 2024-10-10 17:32:46 +02:00
Tim Donohue
adcc6f564d Merge pull request #3404 from tdonohue/port_3343_to_7x
[Port dspace-7_x] Bump send, express and serve-static
2024-10-10 10:08:37 -05:00
Tim Donohue
e9d6a6c35c Merge pull request #3403 from tdonohue/port_3343_to_8x
[Port dspace-8_x] Bump send, express, browser-sync and serve-static
2024-10-10 10:08:29 -05:00
FrancescoMolinaro
ba2570b83b Add interceptor for collection page to avoid timeout 2024-10-10 16:18:01 +02:00
FrancescoMolinaro
7ac14daf46 remove interceptors 2024-10-10 15:42:47 +02:00
FrancescoMolinaro
caed26d191 resolve differences with version 8 2024-10-10 14:32:20 +02:00
FrancescoMolinaro
5c0c559685 [CST-15592] remove interceptor for edit group 2024-10-10 12:28:48 +02:00
FrancescoMolinaro
9079a968f0 [CST-15592] add interceptor for edit group, fix landmark-unique accessibility issue in pagination component 2024-10-10 12:28:41 +02:00
FrancescoMolinaro
3df66e0257 [CST-15592] add interceptor for item edit page 2024-10-10 12:28:33 +02:00
FrancescoMolinaro
be36175bb8 [CST-15592] add interceptor to prevent sudden timeout failure 2024-10-10 12:27:48 +02:00
FrancescoMolinaro
d0265eb3f6 [CST-15592] refine health page tests 2024-10-10 12:27:41 +02:00
FrancescoMolinaro
5479cc6274 [CST-15592] change health page test target for second tab 2024-10-10 12:27:31 +02:00
FrancescoMolinaro
db891f2f16 [CST-15592] improve tests, add attributes for testing, fix wrong references 2024-10-10 12:27:22 +02:00
FrancescoMolinaro
543cc42bf3 [CST-15592] add accessibility tests for:
Admin Add New Modals
Admin Edit Modals
Admin Export Modals
Admin Workflow Page
End User Agreement
Feedback
Profile Page
System Wide Alert
2024-10-10 12:27:09 +02:00
FrancescoMolinaro
2ad9a44b99 [CST-15592] add accessibility tests for:
Admin Curation Task
Bitstream Format
Health Page
Metadata Schema
2024-10-10 12:27:02 +02:00
FrancescoMolinaro
ecd2275e1b [CST-15592] add accessibility tests for:
Admin Notifications Publication Claim
Admin Search Page
Bulk Access
Create Group
Metadata Registry
2024-10-10 12:26:54 +02:00
FrancescoMolinaro
f904c0f67d [CST-15592] add accessibility tests for:
Edit Eperson
Edit Group
Create EPerson
Epeople Registry
Groups Registry
2024-10-10 12:26:47 +02:00
FrancescoMolinaro
64855c9cf8 [CST-15592] add accessibility tests for following pages:
Metadata Import
Batch Import
Processes Overview
New Process
Quality Assurance Sources
2024-10-10 12:26:36 +02:00
Tim Donohue
9a7b242827 Bump send, express and serve-static 2024-10-09 16:55:38 -05:00
Tim Donohue
cfc3269e5d Bump send, express, browser-sync and serve-static 2024-10-09 16:41:41 -05:00
Tim Donohue
e46c801554 Merge pull request #3402 from tdonohue/port_3400_to_7x
[Port dspace-7_x] Fixed #3399 - minor typo
2024-10-09 15:55:32 -05:00
Tim Donohue
ab7d6d44fc Merge pull request #3401 from DSpace/backport-3400-to-dspace-8_x
[Port dspace-8_x] Fixed #3399 - minor typo
2024-10-09 14:20:34 -05:00
Arta Seyedian
7be3f1fada Fixed #3399 - minor typo 2024-10-09 14:01:14 -05:00
Arta Seyedian
46f1d3677d Fixed #3399 - minor typo
(cherry picked from commit c6a3794a76)
2024-10-09 18:53:20 +00:00
Tim Donohue
144b455eae Merge pull request #3398 from tdonohue/port_3315_to_7x
[Port dspace-7_x] Upgrade to Cypress 13.15.0
2024-10-09 13:03:19 -05:00
Tim Donohue
bd8659ac11 Test stability fixes. Ensure Item Edit tests wait on tabs to load by testing if tab is active. Fix small bug in login-modal test. 2024-10-09 12:08:11 -05:00
Tim Donohue
5636db84a8 Simplify login CSS selectors 2024-10-09 12:00:02 -05:00
Tim Donohue
5621b84284 Minor changes to login-modal.cy.ts to cleanup CSS selectors 2024-10-09 11:58:55 -05:00
Tim Donohue
35cc7a8096 Ensure Cypress still creates videos in GitHub Actions 2024-10-09 11:56:46 -05:00
Tim Donohue
a4e2c47c51 Bump cypress-axe to 1.5.0 2024-10-09 11:56:11 -05:00
Tim Donohue
7a60cd9aaf Bump to Cypress 13.15.0 2024-10-09 11:55:32 -05:00
Tim Donohue
2a98199471 Merge pull request #3397 from tdonohue/port_3315_to_8x
[Port dspace-8_x] Upgrade to Cypress 13.15.0
2024-10-09 11:51:10 -05:00
Tim Donohue
28fc092410 Test stability fixes. Ensure Item Edit tests wait on tabs to load by testing if tab is active. Fix small bug in login-modal test. 2024-10-09 11:19:57 -05:00
Tim Donohue
976ed6bb0a Simplify login CSS selectors 2024-10-09 11:19:49 -05:00
Tim Donohue
86f21de0a6 Minor changes to login-modal.cy.ts to cleanup CSS selectors 2024-10-09 11:19:42 -05:00
Tim Donohue
b262a3d0f2 Ensure Cypress still creates videos in GitHub Actions 2024-10-09 11:19:35 -05:00
Tim Donohue
d9167262dd Bump cypress-axe to 1.5.0 2024-10-09 11:19:14 -05:00
Tim Donohue
68608a1a8c Bump to Cypress 13.15.0 2024-10-09 11:18:25 -05:00
Tim Donohue
a7b822ffce Merge pull request #3396 from tdonohue/port_3395_to_8x
[Port dspace-8_x] Bump rollup from 4.21.2 to 4.24.0
2024-10-09 11:04:40 -05:00
Tim Donohue
389e6bc28c Merge pull request #3394 from DSpace/backport-3213-to-dspace-8_x
[Port dspace-8_x] Implement e2e accessibility tests for pages in DSpace User Interface
2024-10-09 10:36:47 -05:00
Tim Donohue
6671c776b3 Bump rollup from 4.21.2 to 4.24.0 2024-10-09 10:33:39 -05:00
FrancescoMolinaro
70a38ea0fb [CST-15592] remove interceptor for edit group
(cherry picked from commit 9e985cf2d4)
2024-10-09 14:21:11 +00:00
FrancescoMolinaro
6f6a4994ba [CST-15592] add interceptor for edit group, fix landmark-unique accessibility issue in pagination component
(cherry picked from commit 2b466bb382)
2024-10-09 14:21:11 +00:00
FrancescoMolinaro
a1bbd32315 [CST-15592] add interceptor for item edit page
(cherry picked from commit 55ab43f132)
2024-10-09 14:21:11 +00:00
FrancescoMolinaro
7a03713783 [CST-15592] add interceptor to prevent sudden timeout failure
(cherry picked from commit 0e5b924f42)
2024-10-09 14:21:11 +00:00
FrancescoMolinaro
dfd698c914 [CST-15592] refine health page tests
(cherry picked from commit f131ae2f6b)
2024-10-09 14:21:11 +00:00
FrancescoMolinaro
a80b324f1f [CST-15592] change health page test target for second tab
(cherry picked from commit 2369b27178)
2024-10-09 14:21:11 +00:00
FrancescoMolinaro
75981cf46e [CST-15592] improve tests, add attributes for testing, fix wrong references
(cherry picked from commit 69f618e856)
2024-10-09 14:21:11 +00:00
FrancescoMolinaro
48d74ee2cd [CST-15592] add accessibility tests for:
Admin Add New Modals
Admin Edit Modals
Admin Export Modals
Admin Workflow Page
End User Agreement
Feedback
Profile Page
System Wide Alert

(cherry picked from commit 4cd55d6669)
2024-10-09 14:21:11 +00:00
FrancescoMolinaro
bae0442ede [CST-15592] add accessibility tests for:
Admin Curation Task
Bitstream Format
Health Page
Metadata Schema

(cherry picked from commit d12d0faf09)
2024-10-09 14:21:11 +00:00
FrancescoMolinaro
5e9cca1399 [CST-15592] add accessibility tests for:
Admin Notifications Publication Claim
Admin Search Page
Bulk Access
Create Group
Metadata Registry

(cherry picked from commit 85e486438a)
2024-10-09 14:21:11 +00:00
FrancescoMolinaro
c3273c8d5e [CST-15592] add accessibility tests for:
Edit Eperson
Edit Group
Create EPerson
Epeople Registry
Groups Registry

(cherry picked from commit a0e3c41be6)
2024-10-09 14:21:11 +00:00
FrancescoMolinaro
cd6fda20be [CST-15592] add accessibility tests for following pages:
Metadata Import
Batch Import
Processes Overview
New Process
Quality Assurance Sources

(cherry picked from commit e6a7fb852a)
2024-10-09 14:21:11 +00:00
Tim Donohue
cf877f44d8 Merge pull request #3392 from tdonohue/port_3221_to_8x
[Port dspace-8_x] Removed unnecessary *ngVars from ThumbnailComponent
2024-10-08 16:55:49 -05:00
Tim Donohue
2f94f49c06 Merge pull request #3391 from DSpace/backport-3221-to-dspace-7_x
[Port dspace-7_x] Removed unnecessary *ngVars from ThumbnailComponent
2024-10-08 16:55:35 -05:00
Alexandre Vryghem
64596c306e 116728: Removed unnecessary *ngVars from the ThumbnailComponent 2024-10-08 15:12:54 -05:00
Alexandre Vryghem
3306d0d699 116728: Removed unnecessary *ngVars from the ThumbnailComponent
(cherry picked from commit d31e17894c)
2024-10-08 20:08:09 +00:00
Tim Donohue
7f1ddcc41c Merge pull request #3388 from DSpace/backport-3386-to-dspace-8_x
[Port dspace-8_x] Update fr.json5 to add capitalization
2024-10-04 10:19:00 -05:00
Tim Donohue
bf9590c1e6 Merge pull request #3387 from DSpace/backport-3386-to-dspace-7_x
[Port dspace-7_x] Update fr.json5 to add capitalization
2024-10-04 10:18:54 -05:00
Julia
884238bc12 Update fr.json5 to add capitalization
(cherry picked from commit c5b395802c)
2024-10-04 15:18:10 +00:00
Julia
e2a84b2145 Update fr.json5 to add capitalization
(cherry picked from commit c5b395802c)
2024-10-04 15:18:06 +00:00
Tim Donohue
3e01912eb2 Merge pull request #3382 from tdonohue/port_3148_to_7x
[Port dspace-7_x] Accessibility of the status page
2024-10-02 17:07:06 -05:00
Tim Donohue
48f70f42ed Merge pull request #3381 from DSpace/backport-3148-to-dspace-8_x
[Port dspace-8_x] Accessibility of the status page
2024-10-02 17:07:00 -05:00
Tim Donohue
4bd6071071 Squashed commit of changes in #3148 from @Andrea-Guevara
Co-authored-by: @Andrea-Guevara
2024-10-02 17:02:12 -05:00
andreaNeki
aa9d2490d1 Adjusting bold text on labels
(cherry picked from commit 4aed1b6056)
2024-10-02 21:49:18 +00:00
andreaNeki
8cc999e81e Edit item - making page content more responsive and accessible
(cherry picked from commit f975e1da89)
2024-10-02 21:49:18 +00:00
root
dadba96975 Issue-1190/PR-3148 Removing 100% height from the column containing the button text and leaving it automatic
(cherry picked from commit 3800021ed3)
2024-10-02 21:49:17 +00:00
root
57d3a3a769 Issue-1190/PR-3148 Improve the space between the text and the button
(cherry picked from commit 5f4a049fdd)
2024-10-02 21:49:17 +00:00
root
01d09810ba Resolution of issue #1190 - Improving the accessibility of the status page using the item-operation component
(cherry picked from commit e06b67fd73)
2024-10-02 21:49:17 +00:00
Yana De Pauw
876d94e124 115284: Add tests for isRepeatable 2024-10-02 10:03:53 +02:00
Tim Donohue
5887d03504 Merge pull request #3377 from DSpace/backport-3375-to-dspace-8_x
[Port dspace-8_x] Always sanitize HTML passed to dsMarkdown even if markdown rendering is disabled
2024-10-01 11:19:41 -05:00
Kim Shepherd
85f1ba2176 Always sanitize HTML in dsMarkdown even if markdown disabled
Instead of setting innerHTML directly to value, sanitize
the value, even if not passing to renderMarkdown/Mathjax

(cherry picked from commit 8fb4772b6c)
2024-10-01 14:52:34 +00:00
Andreas Awouters
a207fb51e9 118219: Remove unused paginated-drag-and-drop components 2024-10-01 10:37:39 +02:00
Andreas Awouters
8a16597b69 118219: Fix tests 2024-10-01 10:37:39 +02:00
Andreas Awouters
6a2c7d09d6 118219: Add dragging tooltip explaining how to drag to other page 2024-10-01 10:37:39 +02:00
Andreas Awouters
eadbcdbe14 118219: Store result of drag & dropping bitstream 2024-10-01 10:37:39 +02:00
Andreas Awouters
be99cc5c23 118219: Allow dragging of table rows 2024-10-01 10:37:39 +02:00
Andreas Awouters
a230eee76d 117803: Add negative top-margin to subsequent tables 2024-10-01 10:37:39 +02:00
Andreas Awouters
6a8095d456 117803: Change pagination settings styling 2024-10-01 10:37:39 +02:00
Andreas Awouters
79f3a3116e 117803: Set header border to background color 2024-10-01 10:37:39 +02:00
Andreas Awouters
8481604b1e 117803: Fix table & pagination margin 2024-10-01 10:37:39 +02:00
Andreas Awouters
cc5b841a65 117803: Only visually hide header rows 2024-10-01 10:37:39 +02:00
Andreas Awouters
d8b426d745 117803: Add ItemBitsreamsService tests 2024-10-01 10:37:39 +02:00
Andreas Awouters
3f4bf7ce0f 117803: Fix existing tests 2024-10-01 10:37:39 +02:00
Andreas Awouters
374a9ae14e 117803: Add item-bitstream service 2024-10-01 10:37:39 +02:00
Andreas Awouters
d85124c121 117803: Fix deleted bitstreams not being removed from list 2024-10-01 10:37:39 +02:00
Andreas Awouters
1773a75e98 117803: Allow changing page size of Bitstream list 2024-10-01 10:37:39 +02:00
Andreas Awouters
a11bfc80ad 117803: Hide table headers for subsequent bundle tables 2024-10-01 10:37:39 +02:00
Andreas Awouters
cf54af2c22 117803: Refactor Item Edit Bitstreams page to use HTML Table elements 2024-10-01 10:37:39 +02:00
Andrea Barbasso
a8e5b26744 Merge remote-tracking branch 'lyrasis/dspace-7_x' into task/dspace-7_x/CST-14904
# Conflicts:
#	src/app/shared/shared.module.ts
2024-10-01 09:27:53 +02:00
Tim Donohue
6c0514ab48 Merge pull request #3371 from atmire/live-region-7_x
[Port dspace-7_x] Live region
2024-09-30 16:41:06 -05:00
Tim Donohue
80c953fb81 Merge pull request #3370 from atmire/live-region-8.0
[Port dspace-8_x] Live region
2024-09-30 16:38:04 -05:00
Andreas Awouters
bc84bc867b Merge branch 'live-region-7.6' into live-region-7_x
# Conflicts:
#	config/config.example.yml
#	src/app/shared/shared.module.ts
2024-09-30 09:09:44 +02:00
Alexandre Vryghem
98c49231b4 Merge branch 'w2p-117287_fix-item-version-performance-issues_contribute-7.6' into w2p-117287_fix-item-version-performance-issues_contribute-7_x
# Conflicts:
#	src/app/item-page/versions/item-versions.component.html
2024-09-29 00:19:11 +02:00
Andreas Awouters
dcf03fbe07 Merge branch 'live-region-7.6' into live-region-8.0
# Conflicts:
#	src/app/shared/live-region/live-region.component.ts
#	src/app/shared/live-region/live-region.service.spec.ts
2024-09-27 10:10:07 +02:00
Andreas Awouters
751d689ff6 118220: Add additional TypeDocs 2024-09-27 10:02:26 +02:00
Tim Donohue
dfa74e0505 Merge pull request #3365 from DSpace/backport-3153-to-dspace-8_x
[Port dspace-8_x] Fix to Mobile navbar hamburger menu for base (custom) theme
2024-09-26 16:13:10 -05:00
Tim Donohue
cf5ac335ca Merge pull request #3364 from DSpace/backport-3153-to-dspace-7_x
[Port dspace-7_x] Fix to Mobile navbar hamburger menu for base (custom) theme
2024-09-26 16:13:04 -05:00
Elvi Nemiz
0cff856bf5 Fix to Mobile navbar hamburger menu for base (custom) theme
https://github.com/DSpace/dspace-angular/pull/2444 only fixes the DSpace theme, not the base (and custom) theme.
(cherry picked from commit a3b6aef66a)
2024-09-26 18:22:15 +00:00
Elvi Nemiz
fe7d2a8a7e Fix to Mobile navbar hamburger menu for base (custom) theme
https://github.com/DSpace/dspace-angular/pull/2444 only fixes the DSpace theme, not the base (and custom) theme.
(cherry picked from commit a3b6aef66a)
2024-09-26 18:22:10 +00:00
Tim Donohue
531968cf1a Merge pull request #3363 from DSpace/backport-3340-to-dspace-8_x
[Port dspace-8_x] DS-3330: Updated en.json5 to fixed typo for 'occurred'
2024-09-26 12:04:13 -05:00
Tim Donohue
5ffd405ba6 Merge pull request #3362 from DSpace/backport-3340-to-dspace-7_x
[Port dspace-7_x] DS-3330: Updated en.json5 to fixed typo for 'occurred'
2024-09-26 12:04:02 -05:00
Julia
c2e9d5453a Update en.json5 - fixed typo for occurred
(cherry picked from commit ed5ac47f88)
2024-09-26 16:57:13 +00:00
Julia
edc738ae39 Update en.json5 - fixed typo for occurred
(cherry picked from commit ed5ac47f88)
2024-09-26 16:57:08 +00:00
Tim Donohue
46b241eda5 Merge pull request #3354 from alanorth/update-isbot-7x
[Port dspace-7_x] updates isbot dependency to newest version
2024-09-26 11:14:38 -05:00
Pascal-Nicolas Becker
f244d388be Merge pull request #3359 from DSpace/backport-3149-to-dspace-7_x
[Port dspace-7_x] missing German translations (500 error)
2024-09-26 17:54:02 +02:00
Tim Donohue
59fd32ac68 Merge pull request #3360 from DSpace/backport-3175-to-dspace-7_x
[Port dspace-7_x] minor change: added missing periods in German translations
2024-09-26 10:52:54 -05:00
Tim Donohue
2a145cdc4a Merge pull request #3361 from DSpace/backport-3175-to-dspace-8_x
[Port dspace-8_x] minor change: added missing periods in German translations
2024-09-26 10:52:39 -05:00
Sascha Szott
6b081ee470 minor change: added missing periods in German translations
(cherry picked from commit e26ab86dd3)
2024-09-26 14:45:36 +00:00
Sascha Szott
48ec0cdc34 minor change: added missing periods in German translations
(cherry picked from commit e26ab86dd3)
2024-09-26 14:45:31 +00:00
Sascha Szott
aed97c9dcc added missing German translations (500 error)
(cherry picked from commit 5f6b6ef984)
2024-09-26 14:43:28 +00:00
kshepherd
26dcb6b8b0 Merge pull request #3352 from alexandrevryghem/w2p-110615_minor-accessibility-fixes_contribute-7_x
[Port dspace-7_x] Minor accessibility fixes
2024-09-26 11:29:24 +02:00
kshepherd
7a63ef2ea5 Merge pull request #3353 from alexandrevryghem/w2p-110615_minor-accessibility-fixes_contribute-8_x
[Port dspace-8_x] Minor accessibility fixes
2024-09-26 11:28:36 +02:00
Jens Vannerum
8a5181a9a3 documentation file 2024-09-25 14:55:37 +02:00
Andreas Awouters
c1fa52ee64 118220: Store messages with ID so clears can be targeted 2024-09-25 09:50:33 +02:00
Alan Orth
29c1b51073 .github/workflows/build.yml: use Node.js v18 and v20
Node.js v16 LTS is end of life since October, 2023.

See: https://nodejs.org/en/about/previous-releases
2024-09-25 08:34:04 +03:00
Alan Orth
35946dcf7c Update isbot dependency
Note that the minimum supported Node.js version is now v18, as v16
is now end of life.
2024-09-25 08:17:03 +03:00
Alan Orth
a0c4ff4509 Merge pull request #3348 from TexasDigitalLibrary/update-isbot-dspace-8_x 2024-09-25 08:10:04 +03:00
Alexandre Vryghem
c933e87707 Merge branch 'w2p-110615_minor-accessibibity-fixes_contribute-7.6' into w2p-110615_minor-accessibility-fixes_contribute-8_x
# Conflicts:
#	src/app/item-page/simple/related-entities/tabbed-related-entities-search/tabbed-related-entities-search.component.html
#	src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.html
#	src/app/shared/form/vocabulary-treeview/vocabulary-treeview.component.html
2024-09-24 22:30:50 +02:00
Alexandre Vryghem
f49bdcd8c8 Merge branch 'w2p-110615_minor-accessibibity-fixes_contribute-7.6' into w2p-110615_minor-accessibility-fixes_contribute-7_x
# Conflicts:
#	src/app/item-page/simple/related-entities/tabbed-related-entities-search/tabbed-related-entities-search.component.html
#	src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.html
#	src/app/shared/form/vocabulary-treeview/vocabulary-treeview.component.html
2024-09-24 22:03:46 +02:00
nwoodward
e45b6af26d updates isbot dependency to newest version 2024-09-24 09:46:58 -05:00
Andrea Barbasso
cd51baa5f1 [CST-14904] add orcid icon with tooltip 2024-09-24 12:04:22 +02:00
Andrea Barbasso
e6a02bcbea [CST-15077] add orcid icon with tooltip 2024-09-24 11:00:57 +02:00
Jens Vannerum
2380d4e751 fix bug in lint rule, add docs for rule and update name so it's clear this is only for buttons currently 2024-09-20 16:45:05 +02:00
Andreas Awouters
2249464abf Merge branch 'live-region-7.6' into live-region-8.0
# Conflicts:
#	config/config.example.yml
#	src/app/shared/shared.module.ts
#	src/config/app-config.interface.ts
#	src/config/default-app-config.ts
#	src/environments/environment.test.ts
2024-09-20 14:03:19 +02:00
Andreas Awouters
35d29c8425 118220: Add LiveRegion to RootComponent 2024-09-20 13:31:45 +02:00
Andreas Awouters
e987c35450 118220: Add liveRegionComponent & Service tests 2024-09-20 13:31:45 +02:00
Andreas Awouters
83a44ba924 118220: Add live-region service and component 2024-09-20 13:31:44 +02:00
Jens Vannerum
7ade453218 lint rule with autofix to disallow the disabled input on button elements 2024-09-18 13:07:56 +02:00
Jens Vannerum
4a7ebeea16 117544: fix remaining bug 2024-09-16 16:10:36 +02:00
Jens Vannerum
d3e87c68fd 117544: fix remaining bug 2024-09-16 16:10:00 +02:00
Jens Vannerum
f65d6c5775 117544: rename directive to be clear it should currently only be used for buttons 2024-09-16 14:27:37 +02:00
Jens Vannerum
685e6d83c5 117544: PR feedback
- added typedocs
- changed directive to only be present for buttons
- various other small fixes
2024-09-16 14:24:51 +02:00
Jens Vannerum
eb5aadaf8a 117544: linting 2024-09-16 14:19:14 +02:00
Jens Vannerum
aec970f9d1 117544: rename directive to be clear it should currently only be used for buttons 2024-09-16 14:18:26 +02:00
Jens Vannerum
e7d050d3eb 117544: PR feedback
- added typedocs
- changed directive to only be present for buttons
- various other small fixes
2024-09-16 14:13:20 +02:00
andreaNeki
74c52bc5ab DSpace#2668 - Adding and changing classes in global scss to make cookie settings more accessible 2024-09-13 16:34:16 -03:00
Tim Donohue
593e67fe72 Merge pull request #3326 from tdonohue/port_3318_to_7x
[Port dspace-7_x] Bump Express to v4.20.0
2024-09-11 16:58:35 -05:00
Tim Donohue
f7706760cd Bump Express to v4.20.0 2024-09-11 16:30:40 -05:00
Tim Donohue
a0cd26ef54 Merge pull request #3324 from tdonohue/port_3318_to_8x
[Port dspace-8_x]  Bump body-parser and express
2024-09-11 15:48:45 -05:00
Tim Donohue
8cda55a92e Bump Express to v4.20.0 2024-09-11 14:24:01 -05:00
Tim Donohue
93659a1be3 Merge pull request #3311 from alanorth/dspace8-yarn-upgrade
yarn.lock: run yarn upgrade
2024-09-11 10:32:42 -05:00
Alan Orth
81675b7a3a package.json: Use eslint-plugin-unused-imports v3.x.x
According to the docs we should be using v3.x.x:

> * Version 3.x.x is for eslint 8 with @typescript-eslint/eslint-plugin 6 - 7
> * Version 2.x.x is for eslint 8 with @typescript-eslint/eslint-plugin 5

This fixes a lint error.

See: https://www.npmjs.com/package/eslint-plugin-unused-imports
2024-09-10 10:16:26 +03:00
Alan Orth
3626cdf699 lint/src/util: fix TS2314
Fix error in lint:

> lint/src/util/structure.ts:16:20 - error TS2314: Generic type 'RuleMetaData<MessageIds, Options>' requires 2 type argument(s).
>
> 16 export type Meta = RuleMetaData<string>;
2024-09-09 08:07:54 +03:00
Alan Orth
3e0404c817 yarn.lock: run yarn upgrade 2024-09-09 08:07:28 +03:00
Tim Donohue
d959a28d0b Merge pull request #3305 from DSpace/backport-3011-to-dspace-8_x
[Port dspace-8_x] Fixed page and admin menu for Shibboleth auth
2024-09-05 16:38:06 -05:00
Tim Donohue
350cbea6d5 Merge pull request #3306 from tdonohue/port_3011_to_7x
[Port dspace-7_x] Fixed page and admin menu for Shibboleth auth
2024-09-05 16:37:58 -05:00
Michael Spalti
98d9f639f7 Updated browser init to update cache after external auth. 2024-09-05 16:06:42 -05:00
Michael Spalti
9d98d1a9aa Updated browser init to update cache after external auth.
(cherry picked from commit 4a236906eb)
2024-09-05 20:55:05 +00:00
Alexandre Vryghem
f03ed89687 117287: Removed method calls returning observables from the metadata schema registry 2024-09-05 20:09:03 +02:00
Alexandre Vryghem
c74c178533 117287: Removed method calls returning observables from the metadata registry 2024-09-05 19:38:18 +02:00
Tim Donohue
36f07604ae Merge pull request #3302 from tdonohue/port_3284_to_7x
[Port dspace-7_x] Bump micromatch to 4.0.8
2024-09-05 08:41:02 -05:00
Tim Donohue
257850001d Merge pull request #3301 from DSpace/backport-3284-to-dspace-8_x
[Port dspace-8_x] Bump micromatch from 4.0.5 to 4.0.8
2024-09-05 08:40:52 -05:00
Alexandre Vryghem
b55686e187 117287: Removed method calls returning observables from the pagination component 2024-09-05 01:09:05 +02:00
Alexandre Vryghem
680ed3bccf 117287: Removed method calls returning observables from the Group form 2024-09-05 01:09:04 +02:00
Tim Donohue
4ee1c83073 Bump micromatch to 4.0.8 2024-09-04 17:02:50 -05:00
dependabot[bot]
5ddfca71a1 Bump micromatch from 4.0.5 to 4.0.8
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.5 to 4.0.8.
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/micromatch/compare/4.0.5...4.0.8)

---
updated-dependencies:
- dependency-name: micromatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit aca752a01e)
2024-09-04 21:52:00 +00:00
Tim Donohue
9dec50ee1e Merge pull request #3298 from DSpace/backport-3289-to-dspace-8_x
[Port dspace-8_x] Ignore some paths from file watcher
2024-09-04 11:29:51 -05:00
Tim Donohue
e73139d977 Merge pull request #3297 from DSpace/backport-3289-to-dspace-7_x
[Port dspace-7_x] Ignore some paths from file watcher
2024-09-04 11:29:41 -05:00
Kim Shepherd
91b8829ee4 Ignore some paths from file watcher
Watching all these directories can cause systems to exceed
maximum watched files / inotify limits, especially in dev
mode with IDEs etc also watching files.

(cherry picked from commit 8152d39ad0)
2024-09-04 15:47:16 +00:00
Kim Shepherd
fa95f56be0 Ignore some paths from file watcher
Watching all these directories can cause systems to exceed
maximum watched files / inotify limits, especially in dev
mode with IDEs etc also watching files.

(cherry picked from commit 8152d39ad0)
2024-09-04 15:47:12 +00:00
Tim Donohue
8d459e7c9f Merge pull request #3293 from DSpace/backport-3283-to-dspace-8_x
[Port dspace-8_x] Bump webpack from 5.90.3 to 5.94.0
2024-09-03 17:06:24 -05:00
Alexandre Vryghem
e561d1a469 Remove webpack@5.90.3 since it causes issues with the tests
This automatically removed some old eslint dependencies, which caused some conflicts in the custom linting plugin

(cherry picked from commit 5f922c06e0)
2024-09-03 21:38:00 +00:00
Alexandre Vryghem
4e05a5c310 Temporarily ignore type errors from EnvironmentPlugin since type matching is currently too strict
(cherry picked from commit 7dea5f7d98)
2024-09-03 21:38:00 +00:00
dependabot[bot]
ea3970cfb5 Bump webpack from 5.90.3 to 5.94.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.90.3 to 5.94.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.90.3...v5.94.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit 81b89f5d0c)
2024-09-03 21:38:00 +00:00
Alexandre Vryghem
d3019e4006 117287: Removed method calls returning observables from the Registry Formats page 2024-09-03 18:44:49 +02:00
Alexandre Vryghem
70f0af6611 117287: Removed method calls returning observables from the EPerson form 2024-09-03 11:36:04 +02:00
Tim Donohue
9aa63d063d Merge pull request #3282 from DSpace/backport-3273-to-dspace-8_x
[Port dspace-8_x] Bump axios from 1.6.7 to 1.7.4
2024-08-30 13:27:10 -05:00
Tim Donohue
ef4496fd21 Merge pull request #3285 from tdonohue/port_3273_to_7x
[Port dspace-7_x] Bump axios from 1.6.7 to 1.7.4
2024-08-30 13:27:05 -05:00
Tim Donohue
dc3bf37521 Bump axios from 1.6.7 to 1.7.4 2024-08-30 12:05:04 -05:00
dependabot[bot]
4c05c0ca64 Bump axios from 1.6.7 to 1.7.4
Bumps [axios](https://github.com/axios/axios) from 1.6.7 to 1.7.4.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.6.7...v1.7.4)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit b22ba6f3ef)
2024-08-30 16:59:54 +00:00
Tim Donohue
5b20be26fd Merge pull request #3281 from DSpace/backport-3035-to-dspace-8_x
[Port dspace-8_x] Set color black on filter section for mobile
2024-08-29 15:55:09 -05:00
Victor Hugo Duran Santiago
078dcbb707 Set color black on filter section for mobile
(cherry picked from commit 36c95db7bf)
2024-08-29 19:59:46 +00:00
Tim Donohue
b00470aca0 Merge pull request #3035 from VictorHugoDuranS/dspace_7_2682
Set color black on filter section for mobile
2024-08-29 14:59:23 -05:00
Tim Donohue
c9ecc560ee Merge pull request #3278 from DSpace/backport-3277-to-dspace-7_x
[Port dspace-7_x] Typo in German translation
2024-08-29 13:29:54 -05:00
Tim Donohue
a06c925b8a Merge pull request #3279 from DSpace/backport-3277-to-dspace-8_x
[Port dspace-8_x] Typo in German translation
2024-08-29 13:29:48 -05:00
Vlad Novski
5e4b78f4bb fix[i18n]: typo in German translation
(cherry picked from commit 3b4e0d51cd)
2024-08-29 18:29:20 +00:00
Vlad Novski
d697d0f7a7 fix[i18n]: typo in German translation
(cherry picked from commit 3b4e0d51cd)
2024-08-29 18:29:16 +00:00
Jens Vannerum
0945021378 117544: resolve conflicts after merging in latest 7.x branch 2024-08-27 12:30:18 +02:00
Jens Vannerum
b5d301e53c Merge branch 'w2p-117544_support-for-disabled-elements-for-screen-readers-7.6' into w2p-117544_support-for-disabled-elements-for-screen-readers-7.x 2024-08-27 11:34:57 +02:00
Jens Vannerum
a1f17dcf31 Merge remote-tracking branch 'upstream/dspace-8_x' into w2p-117544_support-for-disabled-elements-for-screen-readers-8.0 2024-08-27 11:23:37 +02:00
Jens Vannerum
b6df0c9a5c 117544: port to 8.0 standard after merge 2024-08-27 10:47:05 +02:00
Jens Vannerum
b2a155386d Merge branch 'w2p-117544_support-for-disabled-elements-for-screen-readers-7.6' into w2p-117544_support-for-disabled-elements-for-screen-readers-8.0 2024-08-26 13:38:55 +02:00
Jens Vannerum
2d48cc0f69 117544: add spec for directive 2024-08-26 10:46:45 +02:00
Jens Vannerum
4527349dcf 117544: alter specs to match new logic 2024-08-26 10:46:45 +02:00
Jens Vannerum
43745d830b 117544: replace all disabled states with our dsDisabled directive 2024-08-23 14:52:16 +02:00
Jens Vannerum
63c76644c1 117544: First implementation of an aria friendly disabled state 2024-08-23 14:10:58 +02:00
Alexandre Vryghem
d09f5297a1 117287: Removed method calls returning observables from the item versions overview 2024-08-14 22:46:14 +02:00
Alexandre Vryghem
54d99a84c9 110615: Added missing vocabulary search input label 2024-08-13 12:05:16 +02:00
Alexandre Vryghem
655813a8af Merge branch 'refs/heads/w2p-110615_minor-accessibibity-fixes_contribute-7.2' into w2p-110615_minor-accessibibity-fixes_contribute-7.6
# Conflicts:
#	src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.html
2024-08-13 11:48:45 +02:00
Alexandre Vryghem
a0515c4121 110615: Fixed related entities ay11 tab issue & removed potential duplicate ID issue by removing the unused #browseDropdown ID 2024-08-13 11:43:36 +02:00
Tim Donohue
fd2bc90ae2 Merge pull request #3245 from alanorth/backport-3236-to-dspace-7_x
[Port dspace-7_x] #3094 - Update date slider to prevent automatic page reloads
2024-08-09 09:31:21 -05:00
Tim Donohue
0946958ebc Merge pull request #3246 from DSpace/backport-3243-to-dspace-8_x
[Port dspace-8_x] Fix lint error regarding missing interface
2024-08-09 09:12:06 -05:00
Tim Donohue
9d7aa07c1d Fix lint error regarding missing interface
(cherry picked from commit ad6a9438de)
2024-08-09 13:59:01 +00:00
Tim Donohue
c4b1956a26 Merge pull request #3242 from DSpace/backport-3048-to-dspace-8_x
[Port dspace-8_x] add import of missing Angular interfaces (squashed version)
2024-08-09 08:58:34 -05:00
Alan Orth
288c75851e src/app/shared/search: date slider accessibility
Update date slider to prevent automatic page reloads.
2024-08-08 23:17:22 -07:00
Alan Orth
52f80faf00 Merge pull request #3244 from DSpace/backport-3236-to-dspace-8_x 2024-08-08 23:14:46 -07:00
Simone Ramundi
174aa0e50f [CST-15589] Updated slider implementation in template
(cherry picked from commit 56ba23fc3d)
2024-08-09 03:27:37 +00:00
Simone Ramundi
690b934e18 [CST-15589] Updated slider implementation in SearchRangeFilterComponent
(cherry picked from commit 6c2d541b89)
2024-08-09 03:27:37 +00:00
Sascha Szott
93d10aaf2f add missing imports of Angular lifecycle interfaces
(cherry picked from commit 2d9ad8e5cf)
2024-08-08 21:34:05 +00:00
Sascha Szott
8075734744 add missing comma
(cherry picked from commit 3cedeffec9)
2024-08-08 21:34:05 +00:00
Sascha Szott
06556df0a9 add lint rule (use-lifecycle-interface)
(cherry picked from commit cc975bb0b5)
2024-08-08 21:34:05 +00:00
Sascha Szott
85a3578458 added missing interfaces
(cherry picked from commit 96748b9bac)
2024-08-08 21:34:05 +00:00
Tim Donohue
d5a375ee65 Merge pull request #3240 from tdonohue/port_3235_to_7x
[Port dspace-7_x] Missing translations in de.json5 (translation key prefix workspace-item)
2024-08-07 14:22:23 -05:00
Tim Donohue
19f688185d Merge pull request #3239 from tdonohue/port_3235_to_8x
[Port dspace-8_x] Missing translations in de.json5 (translation key prefix workspace-item)
2024-08-07 14:22:18 -05:00
Sascha Szott
5101677d9a fix space issue 2024-08-07 14:21:03 -05:00
Sascha Szott
9135c6318d added missing translations in de.json5 (prefix workspace-item) 2024-08-07 14:21:00 -05:00
Sascha Szott
e630f85f26 fix space issue 2024-08-07 14:19:33 -05:00
Sascha Szott
2e53204820 added missing translations in de.json5 (prefix workspace-item) 2024-08-07 14:19:27 -05:00
Tim Donohue
69c4686e04 Merge pull request #3238 from DSpace/backport-3234-to-dspace-8_x
[Port dspace-8_x] WorkspaceitemsEditPageModule: remove duplicated delete route
2024-08-07 14:15:42 -05:00
Sascha Szott
d7270de2b9 remove duplicated delete route
(cherry picked from commit cddceadea1)
2024-08-07 19:15:07 +00:00
kshepherd
1858671a21 Merge pull request #3232 from DSpace/backport-3230-to-dspace-8_x
[Port dspace-8_x] Improving the file browser for importing metadata
2024-08-04 10:56:04 +02:00
root
e7db991c7a Improving the file browser for importing metadata
(cherry picked from commit ce2abfe584)
2024-08-03 15:31:40 +00:00
kshepherd
8553c277ec Merge pull request #3229 from DSpace/backport-3220-to-dspace-8_x
[Port dspace-8_x] Enabling navbar links in import section
2024-08-01 16:18:19 +02:00
root
30584c8bee A new approach so that the elements of the ds-file-dropzone-no-uploader component don't overlap the navbar and make it inaccessible
(cherry picked from commit 2c259f5ae9)
2024-08-01 13:46:58 +00:00
root
54abc3d5d5 Removing position-fixed bootstrap class so that navbar links are available again
(cherry picked from commit 351abaa5c2)
2024-08-01 13:46:58 +00:00
Alexandre Vryghem
d31e17894c 116728: Removed unnecessary *ngVars from the ThumbnailComponent 2024-07-26 14:50:34 +02:00
kshepherd
d4239833d5 Merge pull request #3218 from DSpace/backport-3112-to-dspace-8_x
[Port dspace-8_x] [#3111] fix markdown rendering applying before mathjax rendering
2024-07-25 15:14:46 +02:00
Andrea Barbasso
3c665a736d [DURACOM-273] fix markdown rendering applying before mathjax rendering
(cherry picked from commit 66e1a2488b)
2024-07-25 12:42:45 +00:00
Vincenzo Mecca
1a498f8104 [CST-14903] Orcid Synchronization improvements
feat:
- Introduces reactive states derived from item inside orcid-sync page
- Removes unnecessary navigation
ref:
- Introduces catchError operator and handles failures with error messages
2024-07-25 10:09:51 +02:00
Tim Donohue
11fad8d3ce Merge pull request #3190 from DSpace/backport-3186-to-dspace-7_x
[Port dspace-7_x] Docker build: fix FromAsCasing warning
2024-07-17 16:33:28 -05:00
Tim Donohue
02e1e28ed2 Merge pull request #3191 from DSpace/backport-3186-to-dspace-8_x
[Port dspace-8_x] Docker build: fix FromAsCasing warning
2024-07-17 16:33:19 -05:00
Sascha Szott
c7489d123e fix FromAsCasing warning
(cherry picked from commit f4fe2b8632)
2024-07-17 16:33:39 +00:00
Sascha Szott
f7f279c5ed fix FromAsCasing warning
(cherry picked from commit f4fe2b8632)
2024-07-17 16:33:36 +00:00
Tim Donohue
35b83cc168 Merge pull request #3187 from tdonohue/port_3172_to_7x
[Port dspace-7_x] Minor fix in french translation file
2024-07-17 11:19:35 -05:00
Tim Donohue
4fca4de1e1 Merge pull request #3188 from tdonohue/port_3172_to_8x
[Port dspace-8_x] Minor fix in french translation file
2024-07-17 11:19:25 -05:00
Emmanuel
73279f43c2 Fix a french translation for consistency 2024-07-17 10:38:16 -05:00
Emmanuel Pastor
8af91b28ec Fix a french translation for consistency 2024-07-17 10:38:12 -05:00
Emmanuel
73b5d776da Fix a french translation for consistency 2024-07-17 10:36:08 -05:00
Emmanuel Pastor
b08b6cca8c Fix a french translation for consistency 2024-07-17 10:36:03 -05:00
Tim Donohue
6c5b2c478a Merge pull request #3180 from DSpace/backport-3166-to-dspace-8_x
[Port dspace-8_x] fixes image path for dspace-postgres-pgcrypto
2024-07-10 17:21:04 -05:00
Bridget Almas
4bb6012cc1 fixes error in image command for dspace-postgres-pgcrypto
(cherry picked from commit 7e600bef57)
2024-07-10 21:35:14 +00:00
Tim Donohue
e2c886c9a4 Merge pull request #3177 from DSpace/backport-3155-to-dspace-7_x
[Port dspace-7_x] Accessibility on the Edit metadata tab
2024-07-10 16:26:09 -05:00
Tim Donohue
c616c2b0ab Merge pull request #3179 from tdonohue/port_3146_to_8x
[Port dspace-8_x] Fixed bug when declining Google ReCaptcha cookie preferences
2024-07-10 16:24:41 -05:00
lotte
1bd8db517f 116132: Fixed cookie issue 2024-07-10 15:29:45 -05:00
Tim Donohue
27ba5bf131 Merge pull request #3178 from DSpace/backport-3155-to-dspace-8_x
[Port dspace-8_x] Accessibility on the Edit metadata tab
2024-07-10 15:26:13 -05:00
Tim Donohue
b00ce65e8b Merge pull request #3147 from atmire/w2p-116132_fixed-cookie-issues_contribute-7.6
[Port dspace-7_x] Fixed bug when declining Google ReCaptcha cookie preferences
2024-07-10 15:22:24 -05:00
root
b0431f3abe Resolution of issue #1193 - Addition of the aria-label attribute to the add, save, discard and undo buttons on the metadata editing page
(cherry picked from commit 4e783e76d1)
2024-07-10 19:53:22 +00:00
root
bdea9a6d71 Resolution of issue #1193 - Addition of the aria-label attribute to the add, save, discard and undo buttons on the metadata editing page
(cherry picked from commit 4e783e76d1)
2024-07-10 19:53:17 +00:00
Vincenzo Mecca
bb770ba65b [CST-14903] Orcid Synchronization improvements
feat:
 - Introduces reactive states derived from item inside orcid-sync page
 - Removes unnecessary navigation
ref:
  - Introduces catchError operator and handles failures with error messages
2024-07-10 11:42:07 +02:00
Tim Donohue
115cdd6090 Merge tag 'dspace-7.6.2' into dspace-8_x 2024-07-09 15:04:29 -05:00
Tim Donohue
1d8d3b3c27 Update version tag for development of next release 2024-07-09 14:34:17 -05:00
Tim Donohue
c5448fe252 Update version tag for release 2024-07-09 14:28:46 -05:00
Tim Donohue
a94cbe17c1 Merge pull request #3160 from DSpace/backport-3158-to-dspace-8_x
[Port dspace-8_x] Docker compose syntax changes
2024-07-03 14:06:35 -05:00
Pierre Lasou
ca6bde3048 Update docker command syntax docker-compose-rest.yml
(cherry picked from commit da8a73ba0b)
2024-07-03 18:55:43 +00:00
Pierre Lasou
1baa5cec26 Update Docker Angular README.md
Change the docker-compose syntax to V2 syntax docker compose

(cherry picked from commit 5e3d0fbdef)
2024-07-03 18:55:43 +00:00
Tim Donohue
6610ccc8c1 Merge pull request #3157 from DSpace/backport-3152-to-dspace-8_x
[Port dspace-8_x] Forward client's user-agent instead of Node's
2024-07-03 13:51:46 -05:00
Alan Orth
e5e3d59b3e src/app/core: forward client user-agent
Forward the client's user-agent instead of sending Node's.

(cherry picked from commit 5b2966cf48)
2024-07-03 05:54:48 +00:00
Alan Orth
a705067aed Merge pull request #3152 from alanorth/client-user-agent
Forward client's user-agent instead of Node's
2024-07-03 08:54:24 +03:00
Tim Donohue
28bd6a5fe6 Merge pull request #3063 from tdonohue/port_new_csrf_fixes_to_7x
[Port dspace-7_x] Ensures CSRF token is initialized prior to first modifying (non-GET) request
2024-07-01 11:35:51 -05:00
Alan Orth
5b2966cf48 src/app/core: forward client user-agent
Forward the client's user-agent instead of sending Node's.
2024-06-28 07:58:15 +03:00
Yana De Pauw
a5595015e6 Merge remote-tracking branch 'upstream/dspace-7_x' into w2p-115284_add-support-for-non-repeatable-relaationships_dspace-7-x 2024-06-26 08:38:48 +02:00
Yana De Pauw
a23cdfbc2b 115284: Add repeatable based on relationship max cardinality 2024-06-26 08:32:43 +02:00
lotte
087c203f72 116132: Fixed cookie issue 2024-06-25 18:28:56 +02:00
Tim Donohue
a62397673e Update version tag for development of next release 2024-06-21 15:00:29 -05:00
Tim Donohue
735a3af254 Merge pull request #3139 from tdonohue/port_3138_to_7x
[Port dspace-7_x] Fix error which prevent submitter to deposit a new item
2024-06-20 14:37:34 -05:00
Giuseppe Digilio
3036e72c4c [DURACOM-282] fix issue with submission edit page when providing a not existing workspaceitem 2024-06-20 11:35:53 -05:00
Giuseppe Digilio
4eacdfb113 [DURACOM-282] fix issue with removing duplicated json patch operations, which in some case changed the order in the queue 2024-06-20 11:24:51 -05:00
Tim Donohue
fbb97167d6 Merge pull request #3135 from tdonohue/port_3029_to_7x
[Port dspace-7_x] src/assets/i18n: CrossRef → Crossref
2024-06-20 07:00:03 -05:00
Alan Orth
2d881c9621 src/assets/i18n: CrossRef → Crossref
As part of a rebranding in 2015 Crossref started stylizing their
name as "Crossref" instead of "CrossRef".

See: https://www.crossref.org/blog/the-logo-has-landed/
2024-06-18 15:41:31 -05:00
Tim Donohue
31508ed5eb Merge pull request #3121 from alexandrevryghem/w2p-113560_edit-item-add-relationships-one-by-one_contribute-7_x
Remove Bitstreams on edit-item-page doesn't work
2024-06-18 12:12:09 -05:00
Tim Donohue
3895d26d0b Merge pull request #3133 from tdonohue/port_3129_to_7x
[Port dspace-7_x] Bump ws from 7.5.9 to 7.5.10
2024-06-17 17:14:06 -05:00
Tim Donohue
e9b39ff106 Merge pull request #3131 from tdonohue/port_3125_to_7x
[Port dspace-7_x] Bump postcss to 8.4.38
2024-06-17 16:49:42 -05:00
Tim Donohue
8615c70ccc Bump ws from 7.5.9 to 7.5.10 2024-06-17 16:21:54 -05:00
Tim Donohue
93f1ae0b49 Merge pull request #3130 from tdonohue/port_3124_to_7x
Bump express from 4.18.2 to 4.19.2
2024-06-17 15:11:52 -05:00
Tim Donohue
8990a2d132 Bump postcss to 8.4.38 2024-06-17 15:03:05 -05:00
Tim Donohue
f4eb8876c2 Bump express from 4.18.2 to 4.19.2 2024-06-17 14:37:28 -05:00
Tim Donohue
eb7a93a12f Merge pull request #3128 from tdonohue/port_2915_to_7x
[Port dspace-7_x] Bump tar to 6.2.1
2024-06-17 14:21:25 -05:00
Tim Donohue
69eedf4015 Bump tar to 6.2.1 2024-06-17 13:04:59 -05:00
Tim Donohue
ff31c302e2 Merge pull request #3126 from tdonohue/port_3123_to_7x
[Port dspace-7_x] Bump braces from 3.0.2 to 3.0.3
2024-06-17 12:34:21 -05:00
Tim Donohue
7b554a48f9 Bump braces from 3.0.2 to 3.0.3 2024-06-17 10:41:08 -05:00
Tim Donohue
c088ccb32e Merge pull request #3119 from tdonohue/port_3067_to_7x
[Port dspace-7_x] Fix "Browse by Author" remaining serious accessibility issues
2024-06-17 09:27:26 -05:00
Alexandre Vryghem
1990120fa0 Merge branch 'refs/heads/w2p-113560_edit-item-add-relationships-one-by-one_contribute-7.6' into w2p-113560_edit-item-add-relationships-one-by-one_contribute-7_x 2024-06-14 23:07:12 +02:00
Alexandre Vryghem
1444271e69 115046: Fixed edit item bitstream tab buttons not updating correctly & removed method calls retuning observables in edit collection's content source tab 2024-06-14 23:03:56 +02:00
Tim Donohue
09bf25a233 Merge pull request #3039 from VictorHugoDuranS/dspace-7_2668
Fix - Change color Contrast in cookie settings box
2024-06-14 15:31:33 -05:00
Tim Donohue
9580b29491 Merge pull request #3118 from DSpace/backport-3099-to-dspace-7_x
[Port dspace-7_x] Improving accessibility of the ds-loading component
2024-06-14 15:13:31 -05:00
Tim Donohue
5fe6dfb949 Merge pull request #3117 from DSpace/backport-3115-to-dspace-7_x
[Port dspace-7_x] Fixes: Site hangs when selecting items via keyboard from the hamburger menu
2024-06-14 15:05:43 -05:00
root
ebb846f2a9 Correcting a formatting error 2024-06-14 15:02:36 -05:00
root
983e955398 DSpace #1176 - Browse by Author serious issues 2024-06-14 15:02:13 -05:00
root
36266dffef Melhorando acessibilidade do componente ds-loading
(cherry picked from commit e96d64a622)
2024-06-14 19:09:15 +00:00
Eike Martin Löhden
53fb9f85fc Change key-listener to keydown in order to work on chrome browsers.
(cherry picked from commit a4e9a9a4b8)
2024-06-14 18:56:25 +00:00
Tim Donohue
16210365be Merge pull request #3109 from alexandrevryghem/w2p-113560_edit-item-add-relationships-one-by-one_contribute-7_x
[Port dspace-7_x] Fixed caching & same entity type relationship with different left/rightwardtype bugs on edit item relationships
2024-06-11 14:43:12 -05:00
Alexandre Vryghem
a0260f5267 Merge branch 'w2p-113560_edit-item-add-relationships-one-by-one_contribute-7.6' into w2p-113560_edit-item-add-relationships-one-by-one_contribute-7_x 2024-06-10 16:54:08 +02:00
Tim Donohue
2d28dfc6e6 Merge pull request #3107 from tdonohue/port_3098_to_7x
[Port dspace-7_x] Fixed item edit relationships with same type name but different entities all being shown under same label
2024-06-10 09:32:40 -05:00
Alexandre Vryghem
31ab05f4fe 115434: Passed relatedEntityType parameter to byLabel endpoint 2024-06-07 15:16:41 -05:00
Alexandre Vryghem
813db7cc9f 115046: Fixed same type entity relationships with same leftward/rightward type displaying twice 2024-06-07 14:55:41 +02:00
Tim Donohue
0d3db9f19d Merge pull request #3103 from alexandrevryghem/w2p-113901_edit-item-relationships-does-not-display-tilted-relationships_contribute-7_x
[Port dspace-7_x] Fixed edit item relationships tab not displaying tilted relationships
2024-06-06 09:21:14 -05:00
Alexandre Vryghem
1f4700cb91 Merge remote-tracking branch 'refs/remotes/alex/w2p-113901_edit-item-relationships-does-not-display-tilted-relationships' into dspace-7_x
# Conflicts:
#	src/app/item-page/edit-item-page/item-relationships/edit-relationship-list/edit-relationship-list.component.ts
2024-06-05 23:42:34 +02:00
Tim Donohue
27c57d6f4e Merge pull request #3102 from tdonohue/port_2953_to_7x
[Port dspace-7_x] Avoid metadata representation element is rendered twice when checking the browse configuration
2024-06-05 15:52:56 -05:00
Giuseppe Digilio
3f7e273597 Avoid metadata representation element is rendered twice when checking the browse configuration 2024-06-05 15:25:12 -05:00
Alexandre Vryghem
6d1e6f90fc 115046: Fixed issue where relationsToItems would never emit when an empty array was passed to it 2024-06-03 15:03:47 +02:00
Alexandre Vryghem
8ee375016f 115046: Fixed loading animation not resetting hen closing modal 2024-06-03 14:55:53 +02:00
Alexandre Vryghem
f1706e24c2 115046: Fixed related item not invalidating on relationship deletion & automatically invalidate the isSelected value after updating relationship on item 2024-06-03 14:55:53 +02:00
Yana De Pauw
33b59c739d 115284: Fix issue with same type relationships 2024-06-03 11:20:21 +02:00
Giuseppe Digilio
2d81a487d3 [DURACOM-247] Move check for initialized token to request effects 2024-05-31 12:13:05 -05:00
Tim Donohue
df8f0db784 Update build script to use "docker compose" instead of "docker-compose". Fixes random failures starting e2e test backend via Docker 2024-05-31 12:13:05 -05:00
Tim Donohue
950038e6df Fix tests. Add XSRFService to all specs which need it to be initialized 2024-05-31 12:13:01 -05:00
Tim Donohue
769210bef2 Update code to use GET request. Cleanup lint errors & add in basic TypeDocs 2024-05-31 12:12:02 -05:00
Art Lowel
7d5e499f21 make a call to ensure a correct XSRF token before performing any non-GET requests 2024-05-31 12:12:02 -05:00
Tim Donohue
cbee67cd4b Merge pull request #3059 from alexandrevryghem/w2p-113560_edit-item-add-relationships-one-by-one_contribute-7_x
[Port dspace-7_x] Fixed creation & deletion of relationships not working correctly & added same entity type relationship support
2024-05-31 12:09:50 -05:00
Tim Donohue
5580c81ff7 Merge pull request #3095 from tdonohue/port_2761_to_7x
[Port dspace-7_x] Fix caching issues for versioning
2024-05-31 11:45:18 -05:00
Yury Bondarenko
73be8a972c Always wait for correct draft status, fix spelling 2024-05-30 17:00:51 -05:00
Yury Bondarenko
5f5f6da067 Clean up VersionHistoryDataService changes 2024-05-30 16:57:26 -05:00
Yury Bondarenko
be817b0ab6 Fix cache invalidation for versioning 2024-05-30 16:57:14 -05:00
Alexandre Vryghem
bedfe02f65 Merge branch 'w2p-113560_edit-item-add-relationships-one-by-one_contribute-7.6' into w2p-113560_edit-item-add-relationships-one-by-one_contribute-7_x 2024-05-30 23:17:15 +02:00
Alexandre Vryghem
227d47154c 115046: Fixed issue where store operations would sometimes be performed in incorrect order 2024-05-30 23:12:03 +02:00
Alexandre Vryghem
4a70382072 115046: Fixed incorrect name variant being saved in the store when marking relationship ready for deletion 2024-05-30 23:12:02 +02:00
Alexandre Vryghem
c687d3ff5d 115046: Fixed performance issues in virtual metadata popup 2024-05-30 23:12:02 +02:00
Tim Donohue
491a61b8b1 Merge pull request #3088 from DSpace/backport-3080-to-dspace-7_x
[Port dspace-7_x] Fixed page size change and sorting not working on comcol pages
2024-05-29 16:55:00 -05:00
Tim Donohue
8c6df7ac8e Merge pull request #3089 from DSpace/backport-3079-to-dspace-7_x
[Port dspace-7_x] Fixed delete item page freezing when having relationships
2024-05-29 16:54:40 -05:00
Tim Donohue
8c35ca86c8 Merge pull request #3064 from alexandrevryghem/minor-ui-improvements_contribute-7_x
[Port dspace-7_x] Fixed item-edit.cy.ts regularly failing & minor UI improvements
2024-05-29 16:36:20 -05:00
Alexandre Vryghem
7993020463 115427: Fixed delete item not redirecting when having some virtual metadata that needs to be copied
(cherry picked from commit b8d9c650f5)
2024-05-29 20:51:02 +00:00
Alexandre Vryghem
8b3010be0c 115427: Fixed edit item pages not redirecting to 404 with invalid id
(cherry picked from commit 249cac4f27)
2024-05-29 20:51:01 +00:00
Alexandre Vryghem
2843659416 115427: Fixed delete item page freezing when it has relationships
(cherry picked from commit e6086e16ea)
2024-05-29 20:51:01 +00:00
Alexandre Vryghem
a77d80946b 115428: Fixed EventEmitter being triggered multiple times because its name was the same as a standard DOM event
(cherry picked from commit 4d89a11943)
2024-05-29 20:35:49 +00:00
Tim Donohue
a3a298f51e Merge pull request #3087 from DSpace/backport-3062-to-dspace-7_x
[Port dspace-7_x] Made legacy bitstream URLs redirect with 301 status code
2024-05-29 15:00:44 -05:00
Alexandre Vryghem
c332600633 114624: Made the legacyBitstreamURLRedirectGuard return false for valid bitstream urls in combination with a HardRedirectService#redirect, this will make ensure the redirect is visible for curl instead of being performed by Angular
(cherry picked from commit 23644e9ec7)
2024-05-29 18:38:53 +00:00
Kuno Vercammen
f1b397fc11 114624: Refactored legacyBitstreamURL resolver into a guard to set the redirect status code to 301 Moved Permanently
(cherry picked from commit 369bd693d4)
2024-05-29 18:38:53 +00:00
Alexandre Vryghem
970b19bf01 115051: Created ThemedAdminWorkflowPageComponent 2024-05-22 14:02:41 +02:00
VictorHugoDuranS
975e9fd356 Hide search text field when number of facet values is less than the maximum (#3061)
Hide search text field in the filter section if the number of facet values does not exceed the maximum number of facet values shown.
2024-05-22 09:23:51 +03:00
Alexandre Vryghem
99384a7060 115051: Created ThemedAdminSearchPageComponent 2024-05-21 12:53:02 +02:00
Alexandre Vryghem
6cab13a876 Added missing alt & replaced remaining dspace logo PNGs with SVGs
(cherry picked from commit 56c786d3f7)
2024-05-17 21:34:14 +02:00
Alexandre Vryghem
da439000ac Fixed item-edit.cy.ts regularly failing because of aria-required-children for role="row" & added missing roles to edit comcol tabs
(cherry picked from commit 77d0f9cd60)
2024-05-17 21:32:32 +02:00
Alexandre Vryghem
f8a8b90556 Aligned communities search results like collections on md screens
(cherry picked from commit c2684d3078)
2024-05-17 21:31:14 +02:00
Alexandre Vryghem
7b374f7a32 Merge branch 'minor-ui-improvements_contribute-7.6' into minor-ui-improvements_contribute-7_x 2024-05-17 21:30:51 +02:00
Alexandre Vryghem
14dbced218 Merge branch 'w2p-113560_edit-item-add-relationships-one-by-one_contribute-7.6' into w2p-113560_edit-item-add-relationships-one-by-one_contribute-7_x 2024-05-17 20:06:53 +02:00
Alexandre Vryghem
9053489ddd 115046: Fixed url parameters not being filtered out of the url before hasChanges$ & isReinstatable$ is calculated 2024-05-17 18:51:23 +02:00
Alexandre Vryghem
f7c9058e50 Merge branch 'w2p-113560_edit-item-add-relationships-one-by-one_contribute-7.6' into w2p-113560_edit-item-add-relationships-one-by-one_contribute-7_x
# Conflicts:
#	src/app/item-page/edit-item-page/item-bitstreams/item-bitstreams.component.html
#	src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/dynamic-lookup-relation-modal.component.html
2024-05-17 14:40:20 +02:00
Alexandre Vryghem
f65b96412a Fixed multiple edit relationship bugs
- Fixed issue making it impossible to add new relationships until the page is refreshed after deleting an existing one (only when you refreshed the page after creating the initial relationship)
- Fixed NPE in DsDynamicLookupRelationModalComponent
- Grouped buttons on relationship page in order to assure that they always have the same behaviour
2024-05-17 14:34:24 +02:00
Tim Donohue
088e56fb8a Merge pull request #3055 from DSpace/backport-3046-to-dspace-7_x
[Port dspace-7_x] Fix self link don't match warnings for authorization endpoint
2024-05-16 08:37:43 -05:00
Alexandre Vryghem
1b38f2d25d Merge branch 'w2p-113560_edit-item-add-relationships-one-by-one' into w2p-113560_edit-item-add-relationships-one-by-one_contribute-7_x
# Conflicts:
#	src/app/item-page/edit-item-page/item-relationships/edit-relationship-list/edit-relationship-list.component.html
2024-05-16 10:17:34 +02:00
Alexandre Vryghem
e0fb590b02 Don't encode the uri parameter of /api/authz/authorizations/search/object since the returned self link doesn't encode the uri param
(cherry picked from commit b0991db1d4)
2024-05-15 21:49:41 +00:00
Tim Donohue
8ea7a2572a Merge pull request #3053 from tdonohue/port_2962_to_7x
[Port dspace-7_x] Fix submission lost changes after save
2024-05-15 14:17:49 -05:00
Tim Donohue
3edb663b21 Minor bug fix to specs 2024-05-15 13:28:19 -05:00
Tim Donohue
432692edc8 Merge pull request #3051 from tdonohue/port_2944_to_7x
[Port dspace-7_x] Disable inlineCriticalCss by default for better SSR performance
2024-05-15 13:21:04 -05:00
Tim Donohue
dfc304f9aa Merge pull request #3052 from DSpace/backport-2706-to-dspace-7_x
[Port dspace-7_x] Update pt-PT.json5
2024-05-15 13:20:45 -05:00
Art Lowel
d1890e0253 move embed item fix to SubmissionJsonPatchOperationsService 2024-05-15 12:40:23 -05:00
Art Lowel
66832eeb28 embed the item to submission patch request to fix issue where the submission form would revert to the previous data on save 2024-05-15 12:37:01 -05:00
Ricardo Saraiva
83b67149a6 Update pt-PT.json5
Revision and improvement of some of the already existing translation keys upon reviewers’ suggestions.

(cherry picked from commit 16c5665b31)
2024-05-15 17:16:57 +00:00
Ricardo Saraiva
ba1eee27b3 Update pt-PT.json5
(cherry picked from commit c4142e7a80)
2024-05-15 17:16:57 +00:00
Ricardo Saraiva
bb055e12fb Update pt-PT.json5
(cherry picked from commit 6c5e971dc1)
2024-05-15 17:16:57 +00:00
Ricardo Saraiva
242043b3f8 Update pt-PT.json5
(cherry picked from commit 3262e00d6e)
2024-05-15 17:16:57 +00:00
Ricardo Saraiva
170c7ac6cc Update pt-PT.json5
(cherry picked from commit 38eacf31bf)
2024-05-15 17:16:56 +00:00
Ricardo Saraiva
c2ddaf286d Update pt-PT.json5
Addition of new translation keys (following DSpace 7.6.1 release) & revision/improvement of some of the already existing.

(cherry picked from commit 18085698b2)
2024-05-15 17:16:56 +00:00
Ricardo Saraiva
071fa370bf Update pt-PT.json5
Addition of new translation keys (following DSpace 7.6.1 release) & revision/improvement of some of the already existing.

(cherry picked from commit 02792d28bc)
2024-05-15 17:16:56 +00:00
Tim Donohue
eeb562dd14 Disable inlineCriticalCss by default for better SSR performance 2024-05-15 12:12:55 -05:00
Alexandre Vryghem
479adf6519 115046: Fixed failing tests & added new test to cover added code 2024-05-15 16:09:24 +02:00
Tim Donohue
84e4cc01cc Merge pull request #3044 from DSpace/backport-3028-to-dspace-7_x
[Port dspace-7_x] Add HTML support on system-wide alert (Fixes #3019)
2024-05-14 13:26:10 -05:00
Tim Donohue
d95574df6f Merge pull request #3043 from tdonohue/port_3025_to_7x
[Port dspace-7_x] Czech DSpace 7 UI translation by NTK
2024-05-14 13:25:57 -05:00
Abel Gómez
40b4df6354 Fix code alignment
(cherry picked from commit af193282da)
2024-05-14 17:31:35 +00:00
Abel Gómez
7a364fddeb Add HTML support to system-wide alert banner. Fixes #3019.
(cherry picked from commit b9fb4e2159)
2024-05-14 17:31:35 +00:00
NTK
d9a5f324a5 Czech DSpace 7 UI translation by NTK 2024-05-14 12:14:29 -05:00
Tim Donohue
fdafa0f034 Merge pull request #3042 from tdonohue/port_3007_to_7x
[Port dspace-7_x] After English, reorder languages alphabetically by code
2024-05-14 10:35:44 -05:00
Tim Donohue
d55b0c0dd3 After English, reorder languages alphabetically by code 2024-05-14 09:26:49 -05:00
Tim Donohue
30c025c5c1 Merge pull request #2841 from atmire/w2p-112198_add-relationship-effects-queue
Fix for not all CREATE/DELETE Relationship requests coming through, during submission entity lookup
2024-05-14 09:24:29 -05:00
Tim Donohue
75718bf3ec Merge pull request #2983 from oscar-escire/fix/authorSearch
Fix Author search result without co-author
2024-05-13 14:19:37 -05:00
Tim Donohue
36fa4d4cae Merge pull request #3027 from alexandrevryghem/discovery-backports_contribute-7_x
[Port dspace-7_x] Multiple discovery backports
2024-05-13 11:41:22 -05:00
Tim Donohue
1aa6d358bb Merge pull request #3038 from tdonohue/port_2771_to_7x
[Port dspace-7_x] improved layout of feedback form (increase vertical spacing)
2024-05-13 08:38:59 -05:00
Oscar Chacón
5e59403779 Update: replaced logic of allMetadataValues method by allMetadataNoExcludingValues logic 2024-05-11 17:37:38 -06:00
Sascha Szott
6ff9edaa8b improved layout of feedback form (increase vertical spacing) 2024-05-10 16:38:33 -05:00
Victor Hugo Duran Santiago
876ecb1d12 Fix - Change color Contrast in cookie settings box 2024-05-10 15:27:37 -06:00
Tim Donohue
9bd154792a Merge pull request #3033 from DSpace/backport-2951-to-dspace-7_x
[Port dspace-7_x] Fix display of dso names for EPersons
2024-05-10 15:59:53 -05:00
Tim Donohue
d43c44e911 Merge pull request #2973 from oscar-escire/fix/policyNameForm
added maxlength and hint to resource policy
2024-05-10 15:14:08 -05:00
Tim Donohue
8467bb7c0a Merge pull request #3034 from tdonohue/port_2954_to_7x
[Port dspace-7_x] Live import preview should show all metadata values, not only the first one
2024-05-10 13:43:53 -05:00
Jens Vannerum
01719822c1 114440: fix test 2024-05-10 12:34:45 -05:00
Marie Verdonck
ffbe407d83 104686: Live Import preview only shows first metadata value per field 2024-05-10 12:30:13 -05:00
Gantner, Florian Klaus
202c84c484 extend eperson render type for display of dso name
https://github.com/DSpace/dspace-angular/issues/2947
(cherry picked from commit 97fade00a4)
2024-05-10 17:20:15 +00:00
Tim Donohue
6ac2e9a95d Merge pull request #3032 from DSpace/backport-2725-to-dspace-7_x
[Port dspace-7_x] Encode all `RequestParam` values
2024-05-10 11:21:55 -05:00
Alexandre Vryghem
daff8a4594 Refactored code to always encode the RequestParams
(cherry picked from commit d5cf236938)
2024-05-10 15:53:07 +00:00
Victor Hugo Duran Santiago
36c95db7bf Set color black on filter section for mobile 2024-05-09 20:50:51 -06:00
Alexandre Vryghem
ae8e0f9ae8 110889: Fixed searchevents request containing the query params in the clickedObject
Also fixed minor CSS issue in mobile mode where sidebar is still visible

(cherry picked from commit cbe3f2f8f5)
2024-05-09 18:13:13 +02:00
Alexandre Vryghem
0aadcdfdd9 110889: Prevent vocabulary undefined from being retrieved in hierarchy filter when none is configured
(cherry picked from commit 9e7a59ddd0)
2024-05-09 16:17:53 +02:00
Art Lowel
a658bf4531 decrease the number of unnecessary rerenders by checking whether the relationship types have changed 2024-05-09 15:25:37 +02:00
Art Lowel
4541788a34 fix issue where relationship lists wouldn't update automatically from the second submit onwards 2024-05-09 14:55:37 +02:00
Alan Orth
c44fce9e0f Merge pull request #2866 from atmire/w2p-113124_AddInputToOpenDsMetadataUriValuesInNewWindow
Allow opening ds-metadata-uri-values links in a new window
2024-05-09 15:46:51 +03:00
Art Lowel
cb59c05baf fix spinners 2024-05-09 14:06:56 +02:00
Art Lowel
d75b158ee1 Merge remote-tracking branch 'contributions/fix-api-undefined-issue-7.6' into w2p-113560_edit-item-add-relationships-one-by-one 2024-05-09 13:44:18 +02:00
Art Lowel
1c50dbf4c6 Merge remote-tracking branch 'alexandre/fix-create-relationship-not-working-between-same-types_contribute-7.6' into w2p-113560_edit-item-add-relationships-one-by-one 2024-05-09 13:40:03 +02:00
Alexandre Vryghem
ce3eb76190 110889: Don't retrieve the accessStatus when item.showAccessStatuses is false
(cherry picked from commit 37c534b809)
2024-05-09 12:26:18 +02:00
Alexandre Vryghem
6dac7ceec4 Prevent ItemSearchResult from being recreated at every iteration
(cherry picked from commit da320b5fbc)
2024-05-09 12:18:36 +02:00
Alexandre Vryghem
3454ca99f3 108586: Fixed ItemListElementComponent not pointing to the ItemSearchResultListElementComponent from the themes folder when present
(cherry picked from commit d00fc5d9d3)
2024-05-09 12:16:56 +02:00
Tim Donohue
dd5a167d0d Merge pull request #3013 from atmire/process-ui-null-eperson-fix-7.6
[Port dspace-7_x] Handle Null Users Gracefully in Process Overview Page
2024-05-08 14:45:49 -05:00
Art Lowel
9f3ee32858 fix issue where a submit emitted from the edit relationship modal wouldn't arrive in the edit relationships component 2024-05-08 17:48:33 +02:00
Tim Donohue
3ae9c8e9f8 Merge pull request #3017 from DSpace/backport-3016-to-dspace-7_x
[Port dspace-7_x] Ensure `item` is also embedded in submission form
2024-05-07 14:22:03 -05:00
Tim Donohue
3c9cb4e3b6 Ensure item is also embedded in submission form
(cherry picked from commit bf4d04c909)
2024-05-07 18:53:19 +00:00
Oscar Chacón
f80d1fdc68 fixed lint errors 2024-05-06 11:12:22 -06:00
Tim Donohue
4bf8944c48 Merge pull request #2987 from atmire/w2p-105866_Submission-performance-7_x
7.x - Submission performance
2024-05-06 11:12:25 -05:00
Tim Donohue
2b0f0f627e Merge pull request #3009 from tdonohue/port_2994_to_7x
[Port dspace-7_x] Bump ejs from 3.1.9 to 3.1.10
2024-05-06 08:55:55 -05:00
Kuno Vercammen
b7b1c3e582 Merge remote-tracking branch 'origin/dspace-7_x' into process-ui-null-eperson-fix-7.6
# Conflicts:
#	src/assets/i18n/en.json5
2024-05-06 13:45:39 +02:00
Kuno Vercammen
488958c251 113904: Added tests for null user handling 2024-05-06 12:09:40 +02:00
Kuno Vercammen
26c234e36c 113904: Fix null user handling 2024-05-06 11:53:05 +02:00
Tim Donohue
55e742fbfb Bump ejs from 3.1.9 to 3.1.10 2024-05-03 16:07:48 -05:00
Tim Donohue
0be17bb0ed Merge pull request #3008 from tdonohue/port_2863_to_7x
[Port dspace-7_x] Added Arabic Translation
2024-05-03 15:55:51 -05:00
Mohamed Ali
aa7496e41d Added Arabic Translation 2024-05-03 15:20:51 -05:00
Tim Donohue
bc5262f5f7 Merge pull request #3006 from DSpace/backport-2831-to-dspace-7_x
[Port dspace-7_x] French translations for missing parameters (access control and batch loading)
2024-05-03 12:37:13 -05:00
Tim Donohue
07a91222c4 lint fixes
(cherry picked from commit 3bb559542d)
2024-05-03 16:44:32 +00:00
Pierre Lasou
b06bece1cb Update fr.json5 correcting bad quotation marks
(cherry picked from commit 1abc796734)
2024-05-03 16:44:32 +00:00
Pierre Lasou
053844a7bc Update fr.json5 - adding missing comma
(cherry picked from commit 3b98c8c84f)
2024-05-03 16:44:32 +00:00
Pierre Lasou
7129d6b9c8 Update fr.json5 to adresse reviewer feedback
(cherry picked from commit 46df7e805e)
2024-05-03 16:44:32 +00:00
Pierre Lasou
ae35461516 Update fr.json5 to add batch upload labels
Addition of batch upload labels (ZIP, SAF)

(cherry picked from commit c4548e63ca)
2024-05-03 16:44:32 +00:00
Pierre Lasou
a250de49a0 Update fr.json5 to add access conditions labels
Changes to the labels related to access control and access conditions.

(cherry picked from commit e747520646)
2024-05-03 16:44:32 +00:00
Tim Donohue
13775e53de Merge pull request #3001 from tdonohue/port_2933_to_7x
[Port dspace-7_x] Reset dropdown values
2024-05-02 16:29:14 -05:00
Andreas Awouters
e9c5340f67 113319: Fix dropdown component spec
(cherry picked from commit 70357803e86caabc6357b7cbec9db1ef8edd2a56)
2024-05-02 14:57:41 -05:00
Andreas Awouters
861132d04d 113319: Add dropdown entry to clear selection
(cherry picked from commit 13d1547b3dbf5d4cd74617d6327044da798ed44e)
2024-05-02 14:57:29 -05:00
Tim Donohue
a7517d6814 Merge pull request #2992 from DSpace/backport-2991-to-dspace-7_x
[Port dspace-7_x] Remove obsolete "version" tag from Docker Compose files (Angular version)
2024-05-01 16:28:54 -05:00
Tim Donohue
971c07632a Merge pull request #2641 from hutattedonmyarm/regex-error-messages-backport-dspace7x
[Port dspace-7_x] More meaningful regex error messages
2024-05-01 16:22:43 -05:00
Tim Donohue
45840c1c17 Remove obsolete "version" tag from compose files
(cherry picked from commit d6303de877)
2024-05-01 20:05:31 +00:00
Tim Donohue
91d72c19dd Merge pull request #2694 from hutattedonmyarm/dspace-7_x
[Port dspace-7_x]  Enable type-bind for checkbox inputs during submission
2024-04-30 15:13:40 -05:00
Tim Donohue
5301a8fc51 Merge pull request #2990 from DSpace/backport-2710-to-dspace-7_x
[Port dspace-7_x] Update robots.txt.ejs
2024-04-29 17:03:13 -05:00
Tim Donohue
27d00d133a Merge pull request #2989 from tdonohue/port_2675_to_7x
[Port to dspace-7_x] Multiline selected facet badge on search page
2024-04-29 16:57:02 -05:00
Bram Luyten
6447c3769b Update robots.txt.ejs
Fix for issue #2709

(cherry picked from commit fbd35296f0)
2024-04-29 21:29:37 +00:00
lotte
ebb99c813a Merge branch 'w2p-108595_multiline-search-filter-badge' into multiline-search-filter-badge_main 2024-04-29 16:02:41 -05:00
lotte
e1fe4031e5 Removed unnecessary change 2024-04-29 15:59:22 -05:00
lotte
65860b81b1 108595: fix for overflowing search filter badge selection 2024-04-29 15:59:04 -05:00
Yana De Pauw
dabc0e9b4b [Ticket 2124] Slow response times 2024-04-29 12:59:35 +02:00
Oscar Chacón
2530845b9b Fix trailing spaces and removed console.log 2024-04-26 17:38:06 -06:00
Oscar Chacón
f055ff6fbd Fix: author search result without co-author 2024-04-25 16:19:21 -06:00
Art Lowel
e4b098e64d update test 2024-04-25 10:56:54 +02:00
Tim Donohue
679702bb5a Merge pull request #2967 from tdonohue/update_backend_docker_scripts_7x
Update REST and CI docker compose scripts to sync with 7.x backend
2024-04-22 16:39:38 -05:00
Oscar Chacón
f8e0cc6808 added maxlength and hint to resource policy 2024-04-22 14:42:32 -06:00
Tim Donohue
45ab7231a0 Merge pull request #2969 from alexandrevryghem/w2p-112970_added-missing-breadcrumbs_contribute-7_x
[Port dspace-7_x] Added missing/incomplete breadcrumbs on create community/collection/item pages
2024-04-22 12:23:00 -05:00
Tim Donohue
c794e1ebde Merge pull request #2968 from alexandrevryghem/fix-broken-item-mapper-pagination_contribute-7_x
[Port dspace-7_x] Fixed pagination issues on item mapper
2024-04-22 12:13:02 -05:00
Alexandre Vryghem
7d49666865 Merge remote-tracking branch 'alex/w2p-112970_added-missing-breadcrumbs_contribute-7.4' into dspace-7_x
# Conflicts:
#	src/app/collection-page/collection-page-routing.module.ts
#	src/app/community-page/community-page-routing.module.ts
#	src/app/core/core.module.ts
#	src/app/workflowitems-edit-page/workflowitems-edit-page-routing.module.ts
#	src/app/workspaceitems-edit-page/workspaceitems-edit-page-routing.module.ts
#	src/assets/i18n/en.json5
2024-04-22 16:23:48 +02:00
Alexandre Vryghem
7e6f736b2f Merge branch 'fix-broken-item-mapper-pagination_contribute-7.6' into dspace-7_x
# Conflicts:
#	src/app/access-control/bulk-access/browse/bulk-access-browse.component.html
#	src/app/access-control/epeople-registry/epeople-registry.component.html
#	src/app/access-control/epeople-registry/eperson-form/eperson-form.component.html
#	src/app/access-control/group-registry/group-form/members-list/members-list.component.html
#	src/app/access-control/group-registry/group-form/subgroup-list/subgroups-list.component.html
#	src/app/shared/object-select/collection-select/collection-select.component.html
#	src/app/shared/object-select/item-select/item-select.component.html
2024-04-19 23:52:34 +02:00
Tim Donohue
b43e99518d Update REST and CI docker compose scripts to sync with 7.x backend 2024-04-19 16:21:12 -05:00
Tim Donohue
7a5694347a Merge pull request #2965 from tdonohue/port_2816_to_7x
[Port dspace-7_x] Return 404 Not Found status code on missing identifiers
2024-04-19 13:21:05 -05:00
Jens Vannerum
92f2a77dae 111326: return not found status code on missing identifiers 2024-04-19 12:17:22 -05:00
Tim Donohue
57c2b02277 Merge pull request #2960 from DSpace/backport-2768-to-dspace-7_x
[Port dspace-7_x] Fix infinite scroll
2024-04-19 11:36:51 -05:00
Andrea Barbasso
fde0ebf872 [DURACOM-224] fix infinite scroll
(cherry picked from commit 2afa473cfb)
2024-04-19 15:43:02 +00:00
Tim Donohue
4aa3158f33 Merge pull request #2925 from DSpace/backport-2905-to-dspace-7_x
[Port dspace-7_x] Fix for submission describe warning contribution bug
2024-04-12 13:52:45 -05:00
lotte
3768dc030e 113500: Fixed lint issues
(cherry picked from commit 903af2ccdb)
2024-04-12 17:20:51 +00:00
lotte
27286998f7 113500: Fixed lint error
(cherry picked from commit 722bd6f7f5)
2024-04-12 17:20:51 +00:00
lotte
d8b6e86896 113500: Fixed tests after bugfix
(cherry picked from commit 4e0046022b)
2024-04-12 17:20:51 +00:00
lotte
47537a019c 113500: Fix for warning on first describe step
(cherry picked from commit 993ce1ab16)
2024-04-12 17:20:51 +00:00
Art Lowel
8e59b7d0b0 also add relationships one by one on the edit item relationships tab 2024-04-11 17:51:59 +02:00
Tim Donohue
f72725ceed Merge pull request #2919 from DSpace/backport-2782-to-dspace-7_x
[Port dspace-7_x] Fixed Font Awesome CSS Pseudo-elements not rendering in v6.x
2024-04-11 08:59:54 -05:00
Alexandre Vryghem
e2c2174bf7 111373: Fixed Font Awesome CSS Pseudo-elements for v6.x
(cherry picked from commit 01f97a623f)
2024-04-10 21:51:53 +00:00
Tim Donohue
de1a240140 Merge pull request #2858 from 4Science/DURACOM-241
7.x - Header, navbar, and admin sidebar refactoring
2024-04-10 14:18:54 -05:00
Tim Donohue
b12bdfdd22 Docker build IDs must all be unique to avoid image conflicts. Ensure no builds use a generic name like "dspace-angular". 2024-04-09 15:06:43 -05:00
Tim Donohue
971c302378 Merge pull request #2911 from tdonohue/update_actions_7x
[Port dspace-7_x] Update all GitHub Actions & add token for Codecov.io
2024-04-08 16:59:26 -05:00
Tim Donohue
b758d0a5f9 Ensure all artifacts have a unique name by appending Node version to each 2024-04-08 14:46:16 -05:00
Tim Donohue
78f1d9f763 Update all GitHub Actions. Add newly required CODECOV_TOKEN to codecov action 2024-04-08 14:46:10 -05:00
Tim Donohue
90dc0e3f61 Merge pull request #2901 from DSpace/backport-2067-to-dspace-7_x
[Port dspace-7_x] Add configuration option to disable inlined CSS in SSR HTML
2024-04-05 13:45:50 -05:00
Yury Bondarenko
fd10fbe2a8 Add to config.example.yml
(cherry picked from commit 4a39f33006)
2024-04-05 18:14:43 +00:00
Yury Bondarenko
3b11ac517c Add configuration option to disable inlined CSS in SSR HTML
When inlining CSS, Angular Universal needs to extract critical styles.
This seems to take up a significant chunk of processing time.

However, loading may appear less smooth when this feature is disabled.

Added to the configuration to make it easier to A/B test this without a full re-build.

(cherry picked from commit 38a058d7af)
2024-04-05 18:14:42 +00:00
Tim Donohue
a1090fbb0d Merge pull request #2896 from tdonohue/port_2894_to_7x
[Port dspace-7_x] Bump axios to 1.6.8
2024-04-04 15:00:51 -05:00
Tim Donohue
4239d37a38 Bump axios to 1.6.8 2024-04-04 14:12:29 -05:00
Tim Donohue
a87a5f9b5e Merge pull request #2892 from tdonohue/port_2867_to_7x
[Port dspace-7_x]  Bump follow-redirects from 1.15.5 to 1.15.6
2024-04-04 12:36:55 -05:00
Tim Donohue
777fc571b0 Merge pull request #2895 from tdonohue/port_2872_to_7x
[Port dspace-7_x] Bump webpack-dev-middleware from 5.3.3 to 5.3.4
2024-04-04 12:36:36 -05:00
Tim Donohue
dc92bbd80a Merge pull request #2893 from tdonohue/port_2881_to_7x
[Port dspace-7_x] Bump express from 4.18.2 to 4.19.2
2024-04-04 12:09:24 -05:00
Tim Donohue
d503e4db07 Bump webpack-dev-middleware from 5.3.3 to 5.3.4 2024-04-04 11:58:15 -05:00
Tim Donohue
bba7fe2f74 Bump express from 4.18.2 to 4.19.2 2024-04-04 11:34:30 -05:00
Tim Donohue
ed8e280aa4 Bump follow-redirects from 1.15.5 to 1.15.6 2024-04-04 11:01:41 -05:00
Tim Donohue
2dfa075423 Merge pull request #2832 from alexandrevryghem/patch_2808
[Port dspace-7_x] Refactored community & collection pages
2024-03-29 10:04:08 -05:00
Alan Orth
43137fe676 Merge pull request #2879 from DSpace/backport-2877-to-dspace-7_x
[Port dspace-7_x] System-wide alert shouldn't be created when the message is empty
2024-03-26 11:26:31 +03:00
Alexandre Vryghem
d05438dc3e Prevent system-wide alert to be activated with empty message
(cherry picked from commit 767de4b5c8)
2024-03-26 07:12:03 +00:00
Alexandre Vryghem
25cb0455e2 Fixed bug in BrowseService where findListByHref was called with null instead of undefined, which prevented its default values from being used
(cherry picked from commit e6bf2f0ca7)
2024-03-24 19:12:48 +01:00
Kuno Vercammen
badf00258c 113124: Allow opening ds-metadata-uri-values links in a new window 2024-03-15 11:42:01 +01:00
Tim Donohue
4c693a1294 Merge pull request #2861 from DSpace/backport-2777-to-dspace-7_x
[Port dspace-7_x] Element reference for typeahead directive is only defined when model has authority
2024-03-08 15:56:38 -06:00
William Welling
85922433a5 NgbTypeahead instance is only defined when model has authority
(cherry picked from commit 018d44c616)
2024-03-08 20:13:19 +00:00
Davide Negretti
3caac21648 [DURACOM-195] fix spacing in collapsible menu
(cherry picked from commit a88282d70b)
2024-03-07 18:57:39 +01:00
Davide Negretti
f26b265e64 [DURACOM-195] fix
(cherry picked from commit fdbe7a6005)
2024-03-07 18:57:36 +01:00
Davide Negretti
89c88ca6e0 [DURACOM-195] replace ul/li with div in sidebar
(cherry picked from commit d1dc8e6038)
2024-03-07 18:57:33 +01:00
Davide Negretti
e3f1fa39d5 [DURACOM-195] add background on mouse over to dropdown user menu items
(cherry picked from commit 8e35c0f713)
2024-03-07 18:57:30 +01:00
Davide Negretti
49efc4175d [DURACOM-195] fix issue with logo on small screens
(cherry picked from commit bff93a0847)
2024-03-07 18:57:27 +01:00
Davide Negretti
48e9817245 [DURACOM-195] replace ul/li with div in navbar
(cherry picked from commit abba806d40)
2024-03-07 18:57:24 +01:00
Davide Negretti
a9c3008cee [DURACOM-195] fixes
(cherry picked from commit 523850bc45)
2024-03-07 18:57:19 +01:00
Davide Negretti
8efc401811 [DURACOM-195] fix prefix of custom CSS variables
(cherry picked from commit 46fe7f63e3)
2024-03-07 18:57:16 +01:00
Davide Negretti
9518f70b42 [DURACOM-195] misc fixes
(cherry picked from commit 87d3383bba)
2024-03-07 18:57:13 +01:00
Davide Negretti
2f5c3b1267 [DURACOM-195] fix comment
(cherry picked from commit 80cc4c5d9a)
2024-03-07 18:57:08 +01:00
Davide Negretti
bb16983029 [DURACOM-195] fix issue with event handling in expandable admin sidebar section
(cherry picked from commit f25ec6210b)
2024-03-07 18:56:57 +01:00
Davide Negretti
5b1438f09f [DURACOM-195] accessibility issue fixed on log-out button
(cherry picked from commit 8f73b8ff9d)
2024-03-07 18:56:50 +01:00
Davide Negretti
510968b0c6 [DURACOM-195] [DURACOM-210] Reorder SCSS and CSS theme variables 2024-03-07 18:54:28 +01:00
Davide Negretti
8718bd0df6 [DURACOM-195] Header, navbar, and sidebar refactoring 2024-03-07 18:34:34 +01:00
Davide Negretti
7d2fdb7598 [DURACOM-195] Base components (simplify header-navbar-wrapper) 2024-03-07 18:32:51 +01:00
Davide Negretti
6c6afbf148 [DURACOM-195] Base components 2024-03-07 18:32:46 +01:00
Davide Negretti
d95d5753b4 [DURACOM-195] New host-window service methods 2024-03-07 18:32:38 +01:00
Tim Donohue
2178e0e6a3 Merge pull request #2852 from DSpace/backport-2851-to-dspace-7_x
[Port dspace-7_x] fix selector value in CommunitySidebarSearchListElementComponent
2024-03-05 09:52:46 -06:00
Sascha Szott
77f3b97e46 fix selector value in CommunitySidebarSearchListElementComponent
(cherry picked from commit ad3ef56e06)
2024-03-05 15:13:14 +00:00
Tim Donohue
203b0bbbaf Merge pull request #2850 from DSpace/backport-2847-to-dspace-7_x
[Port dspace-7_x] Bump sanitize-html from 2.10.0 to 2.12.1
2024-03-04 16:37:05 -06:00
dependabot[bot]
781de6e998 Bump sanitize-html from 2.10.0 to 2.12.1
Bumps [sanitize-html](https://github.com/apostrophecms/sanitize-html) from 2.10.0 to 2.12.1.
- [Changelog](https://github.com/apostrophecms/sanitize-html/blob/main/CHANGELOG.md)
- [Commits](https://github.com/apostrophecms/sanitize-html/compare/2.10.0...2.12.1)

---
updated-dependencies:
- dependency-name: sanitize-html
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit e7eaa9f61b)
2024-03-04 22:02:36 +00:00
Tim Donohue
6fefbe129d Merge pull request #2849 from alanorth/backport-2356-to-dspace-7_x
[Port dspace-7_x] Update dependencies for Node v20
2024-03-04 14:28:47 -06:00
Alan Orth
3add551bde [Port dspace-7_x] Update dependencies for Node v20
Port of #2356 by @mwoodiupui to dspace-7_x.
2024-03-04 20:33:12 +03:00
Tim Donohue
51f48b31dc Merge pull request #2843 from DSpace/backport-2822-to-dspace-7_x
[Port dspace-7_x] Bump ip from 2.0.0 to 2.0.1
2024-02-29 15:56:19 -06:00
dependabot[bot]
b2adc42aaf Bump ip from 2.0.0 to 2.0.1
Bumps [ip](https://github.com/indutny/node-ip) from 2.0.0 to 2.0.1.
- [Commits](https://github.com/indutny/node-ip/compare/v2.0.0...v2.0.1)

---
updated-dependencies:
- dependency-name: ip
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit c147c7d6ea)
2024-02-29 21:26:32 +00:00
Alexandre Vryghem
f2dab663ca 108588: Fixed browse by issue date show loading icon indefinitely when empty
(cherry picked from commit 6f51bd866c)
2024-02-23 21:40:21 +01:00
DSpace Bot
0f09920cb1 [Port dspace-7_x] site search should not adopt existing URL query string parameters (#2824)
Do not merge existing query params when using site search from MyDSpace workflow.
2024-02-22 11:50:03 +03:00
Alan Orth
41faa5ee52 Merge pull request #2821 from tdonohue/port_2733_to_7x
[Port dspace-7_x]  Use keyboard to select values (part 2)
2024-02-20 21:13:10 +03:00
Jens Vannerum
d920567f8a 111768: move original code back to init only for performance 2024-02-20 09:45:03 -06:00
Jens Vannerum
85694ec285 111768: add back necessary setCurrentValue calls that were removed earlier 2024-02-20 09:44:57 -06:00
Tim Donohue
3ce4603328 Merge pull request #2812 from DSpace/backport-2770-to-dspace-7_x
[Port dspace-7_x] German translations of feedback page translation keys
2024-02-15 17:11:58 -06:00
Sascha Szott
9cff5e9c34 minor improvement of German translation
(cherry picked from commit e03b492dbd)
2024-02-15 22:11:36 +00:00
Sascha Szott
0fdfecd973 added german translations of feedback page translation keys
(cherry picked from commit 26ebc9f8fc)
2024-02-15 22:11:36 +00:00
Tim Donohue
9dc0363337 Merge pull request #2811 from DSpace/backport-2794-to-dspace-7_x
[Port dspace-7_x] Added scope @Input() to the SearchComponent & fixed related bugs
2024-02-15 15:16:09 -06:00
Alexandre Vryghem
d96c048874 111639: Fixed search settings not using the scope
(cherry picked from commit 93b22cba1f)
2024-02-15 20:38:01 +00:00
Alexandre Vryghem
865f4899b2 111639: Added scope @Input() and made the search facets & search results use that scope
(cherry picked from commit 22e87a5f5a)
2024-02-15 20:38:01 +00:00
Tim Donohue
b350916fe3 Merge pull request #2810 from DSpace/backport-2647-to-dspace-7_x
[Port dspace-7_x] File edit component updated to work for forms without access conditions.
2024-02-15 14:34:38 -06:00
Michael Spalti
381254a16e File edit component updated to work for forms without access conditions.
Fixed unit test

Fixed accidental reformatting

(cherry picked from commit 6fff475a5a)
2024-02-15 20:00:45 +00:00
Tim Donohue
8506d36dbf Merge pull request #2800 from alexandrevryghem/generify-component-loaders_contribute-7_x
[Port dspace-7_x] Refactored community & collection pages
2024-02-14 10:58:38 -06:00
Alexandre Vryghem
0366e8b934 Replace routerLinkActive with [class.active] to ensure visibility of aria-current tag 2024-02-14 00:10:41 +01:00
Tim Donohue
eba7683f6b Merge pull request #2803 from DSpace/backport-2705-to-dspace-7_x
[Port dspace-7_x] Minor updates to i18n strings for clarity and consistency
2024-02-07 12:31:13 -06:00
Tim Donohue
5a0018d4fa Merge pull request #2802 from DSpace/backport-2766-to-dspace-7_x
[Port dspace-7_x] Fix missing Register DOI button if configuration enabled
2024-02-07 11:48:27 -06:00
Thomas Misilo
17dc120ca1 Update "E-mail" to be "Email" for consistency
(cherry picked from commit 7b8962a7cd)
2024-02-07 17:23:05 +00:00
Alan Orth
8eb2e2ce80 src/assets/i18n/en.json5: minor changes for consistency
Fix some random capitalizations and strange wording.

(cherry picked from commit d6c46847c2)
2024-02-07 17:23:05 +00:00
Alan Orth
b2b9fb8bf9 src/assets/i18n/en.json5: minor updates for consistency
We should be capitalizing acronyms and project-specific nouns like
MyDSpace consistently in our interface.

(cherry picked from commit f78f4b45fc)
2024-02-07 17:23:05 +00:00
Alan Orth
9d9d90ab9c src/assets/i18n: change "controller" to "reviewer"
Reviewer is a less obscure term for what this actually is in most
cases.

(cherry picked from commit 98241d8925)
2024-02-07 17:23:05 +00:00
Tim Donohue
ccd7056a87 Merge pull request #2801 from DSpace/backport-2799-to-dspace-7_x
[Port dspace-7_x] Bump follow-redirects from 1.15.3 to 1.15.5
2024-02-07 11:06:06 -06:00
Kim Shepherd
c50dd1a3e9 Improve cfg handling in item-status.component.ts
(cherry picked from commit 68475d1ed6)
2024-02-07 16:57:19 +00:00
Kim Shepherd
8b3bc90864 Improve cfg handling in item-status.component.ts
(cherry picked from commit 3e33785311)
2024-02-07 16:57:19 +00:00
Agustina Martinez
9f99555c64 Update item-status.component.ts
Fix initialOperations typo and return ops with register doi op

(cherry picked from commit e77898eaac)
2024-02-07 16:57:19 +00:00
dependabot[bot]
eb4633557d Bump follow-redirects from 1.15.3 to 1.15.5
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.3 to 1.15.5.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.3...v1.15.5)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit 90a277fbeb)
2024-02-07 16:34:28 +00:00
Alexandre Vryghem
effa19f719 111679: Restored missing inAndOutputNames on ClaimedTaskActionsLoaderComponent 2024-02-07 13:56:08 +01:00
Alexandre Vryghem
835891fe59 Merge remote-tracking branch 'upstream/dspace-7_x' into generify-component-loaders_contribute-7_x
# Conflicts:
#	src/app/shared/theme-support/themed.component.ts
2024-02-07 00:18:22 +01:00
Alexandre Vryghem
ff55646c62 108588: Fixed accessibility issues on ds-comcol-page-browse-by 2024-02-07 00:17:46 +01:00
Tim Donohue
972c1098cb Merge pull request #2798 from DSpace/backport-2795-to-dspace-7_x
[Port dspace-7_x] fix German translation of admin.workflow.item.workflow
2024-02-06 16:03:36 -06:00
Sascha Szott
59fc3e5635 remove translation (use singular form instead of plural form)
(cherry picked from commit ac5670a514)
2024-02-06 22:03:10 +00:00
Tim Donohue
60b310e216 Merge pull request #2796 from tdonohue/port_2791_to_7x
[Port dspace-7_x] Fix issue with cli.yml not using same network as backend.
2024-02-05 16:08:24 -06:00
Tim Donohue
b9cc5ba824 Resync docker-compose-ci and docker/docker-compose-rest with DSpace/DSpace docker scripts 2024-02-05 14:19:53 -06:00
Tim Donohue
f072ae74af Bug fix to GitHub CI build. Set compose project name via env variable. Also add default name if unspecified 2024-02-05 11:14:00 -06:00
Tim Donohue
e2d014d0a6 Update cli.yml to reference dspacenet in docker-compose-rest. Remove unnecessary network from cli.assetstore.yml 2024-02-05 11:13:53 -06:00
Tim Donohue
ab579da614 Merge pull request #2790 from DSpace/backport-2778-to-dspace-7_x
[Port dspace-7_x] Dedupe patch operations by op and path
2024-02-01 13:50:52 -06:00
William Welling
05c978bc62 Dedupe patch operations by op and path
(cherry picked from commit f40639de86)
2024-02-01 19:00:52 +00:00
Tim Donohue
95c635c451 Merge pull request #2786 from tdonohue/port_2717_to_7x
[Port dspace-7_x] Fix accessibility issues (part 2)
2024-01-31 11:56:18 -06:00
Alexandre Vryghem
3e48e5903e Fixed dropdown accessibility issue
- Removed non-existing dropdownMenuButton references
- Added appropriate roles to dropdown menus
2024-01-31 09:51:19 -06:00
Alexandre Vryghem
63fa8f39f5 Fixed user authentication/registration accessibility issue
- Added the correct autocomplete value
- Removed dangling labels, because aria labels already describe those input fields & we can't use ids in this component because otherwise there are duplicate ids on the /login page
2024-01-31 09:51:09 -06:00
Alexandre Vryghem
138e163fa8 Fixed edit metadata page accessibility issue
- Hide fontawesome icons for screen readers
- Added missing aria-label to metadata field input
2024-01-31 09:51:03 -06:00
Alexandre Vryghem
ac743c5138 Fixed feedback form page accessibility issue
- The form used a fieldset tag instead of a form tag
2024-01-31 09:50:58 -06:00
Alexandre Vryghem
37803e9330 Fixed remaining community/collection page accessibility issues
- Hide fontawesome icons for screen readers
- Replaced dangling labels with spans and added more descriptive aria label to browse link
- Fixed empty label/missing header in edit resource policy table
- Added missing comcol logo al text
- Refactored dso-edit-menu-section to not display empty link buttons and duplicate titles
2024-01-31 09:50:50 -06:00
Alexandre Vryghem
8b5cd79bdc Fixed accessibility issues on AccessControlFormContainerComponent
- Replaced invisible label in AccessControlArrayFormComponent that was only used for styling with span
- Fixed radio buttons not being part of a fieldset
- Fixed empty table header
2024-01-31 09:50:44 -06:00
Alexandre Vryghem
949e55235a Fixed accessibility issues on BitstreamFormatsComponent
- Removed empty label of the select box and replaced it with an aria-label
- Fixed empty table header
2024-01-31 09:50:38 -06:00
Alexandre Vryghem
5173ac3704 Fixed accessibility issues on MetadataRegistryComponent
- Removed empty label of the select box and replaced it with an aria-label
- Fixed empty table header
2024-01-31 09:50:31 -06:00
Alexandre Vryghem
9335c32334 Fixed accessibility issues on MetadataSchemaComponent
- Removed empty label of the select box and replaced it with an aria-label
- Fixed empty table header
2024-01-31 09:50:23 -06:00
Alexandre Vryghem
b0d3710454 Fixed accessibility issues with pagination button
- Replaced the h6 tags with the role heading
- Gave the gear button the roles in order to be detected as an expandable menu
- Replaced the dropdown structure to render a menu of listboxes
- Added the aria-selected attribute
2024-01-31 09:49:38 -06:00
Alexandre Vryghem
e0849af926 Fix header ordering 2024-01-31 09:42:30 -06:00
Alexandre Vryghem
b076b98996 Fixed accessibility issues on SubmissionImportExternalSearchbarComponent
- Fixed input not describing itself
- Put the items from the dropdown in an ul
- Fixed broken aria labels
- Removed titles who where identical to the displayed value
2024-01-31 09:42:24 -06:00
Alexandre Vryghem
cc0501f340 Fixed search filters having empty input buttons 2024-01-31 09:42:17 -06:00
Alexandre Vryghem
6b204b5b53 Removed invisible buttons on the CommunityListComponent & fixed content displacement when expanding com/col 2024-01-31 09:42:12 -06:00
Alexandre Vryghem
3bf7d819de Fixed accessibility issues related to dso selectors
- Fixed header ordering
- Fixed input field not having a description what it does (because the header isn't always shown I decided to use aria-labels instead of regular labels)
2024-01-31 09:42:04 -06:00
Tim Donohue
67fc0054c1 Merge pull request #2773 from DSpace/backport-2755-to-dspace-7_x
[Port dspace-7_x] Add logo max constraints
2024-01-25 15:53:07 -06:00
FrancescoMolinaro
d4493cb534 add width 100% to prevent overflow on mobile
(cherry picked from commit f82ba8c5ad)
2024-01-25 21:08:11 +00:00
FrancescoMolinaro
682ec2b678 remove class from template
(cherry picked from commit d9e25882ce)
2024-01-25 21:08:11 +00:00
FrancescoMolinaro
20f5f17aac adapt solution to prevent img overflow
(cherry picked from commit d3c788a4e1)
2024-01-25 21:08:11 +00:00
FrancescoMolinaro
f1a7f36f17 add logo max costraints
(cherry picked from commit 32e3141b19)
2024-01-25 21:08:11 +00:00
Tim Donohue
5d700d5563 Merge pull request #2772 from DSpace/backport-2769-to-dspace-7_x
[Port dspace-7_x] fixed typo in info.feedback.page_help
2024-01-25 11:02:51 -06:00
Sascha Szott
c11a3b1372 fixed typo
(cherry picked from commit 4b7798fcc7)
2024-01-25 16:25:48 +00:00
Alan Orth
be0512d74e Merge pull request #2764 from alanorth/backport-2733-to-dspace-7_x
[Port dspace-7_x] Use keyboard to select values
2024-01-23 12:18:28 +03:00
Jens Vannerum
2d0d6ddc5d 110088: new implementation for keyboard support in dropdowns 2024-01-23 11:43:37 +03:00
Tim Donohue
b2cae3b48d Merge pull request #2758 from DSpace/backport-2691-to-dspace-7_x
[Port dspace-7_x] Decrease min-height for Login Dropdown Menu
2024-01-19 11:12:03 -06:00
Tim Donohue
5f19b6a26a Merge pull request #2757 from DSpace/backport-2736-to-dspace-7_x
[Port dspace-7_x] use localized error message
2024-01-19 11:11:50 -06:00
Thomas Misilo
d880b728ce Decrease min-height for Login Dropdown Menu
Fixes #2690

This is noticable when you have disabled local authentication, and only have a singular remote authentication such as Shibboleth or Orcid.

(cherry picked from commit 09fc44a539)
2024-01-19 15:25:12 +00:00
Sascha Szott
e7490340f8 use localized error message
(cherry picked from commit 92a74cee5a)
2024-01-19 15:21:44 +00:00
Alan Orth
fed70c5e9b Merge pull request #2754 from DSpace/backport-2721-to-dspace-7_x
[Port dspace-7_x] Fix whitespace in links due to newlines
2024-01-19 10:07:44 +03:00
Alan Orth
f08d74b269 src/app/item-page: remove newlines in links
The newlines cause whitespace to be enapsulated in the rendered link.

(cherry picked from commit 7207bbbd0e)
2024-01-19 05:14:00 +00:00
Alan Orth
f2f5156065 src/app/community-list-page: remove newlines in links
The newlines cause whitespace to be enapsulated in the rendered link.

(cherry picked from commit 7bedf7fc59)
2024-01-19 05:14:00 +00:00
Tim Donohue
0ed96d893d Merge pull request #2748 from DSpace/backport-2711-to-dspace-7_x
[Port dspace-7_x] Add more automated accessibility scanning to e2e tests & fix a few minor accessibility bugs
2024-01-17 14:09:02 -06:00
Tim Donohue
2137720602 Add environment variable for Person collection name. Use it in submission e2e tests.
(cherry picked from commit a5a89a4b98)
2024-01-17 19:38:04 +00:00
Tim Donohue
12a19378f7 Move increment/decrement to i18n. Update to use "name".
(cherry picked from commit 0aaf3131fa)
2024-01-17 19:38:04 +00:00
Tim Donohue
75c81b712e Add accessibility testing for admin sidebar
(cherry picked from commit 31bc05235e)
2024-01-17 19:38:04 +00:00
Tim Donohue
4e0a889fa1 Add Item Edit accessibility tests. Switch Item to use to one with bitstreams. Minor updates to HTML to pass accessibility tests.
(cherry picked from commit 80492cd88a)
2024-01-17 19:38:04 +00:00
Tim Donohue
9a7277065f Add accessibility tests (and minor fixes) for Edit Collection's Content Source tab and Item Mapper tab
(cherry picked from commit 00cb2f9e8a)
2024-01-17 19:38:04 +00:00
Tim Donohue
16a10548b8 Add Edit Collection accessibility Testing
(cherry picked from commit 9894d315a0)
2024-01-17 19:38:04 +00:00
Tim Donohue
4187847ad0 Add Edit Community accessibility tests & minor cleanup
(cherry picked from commit 6c76d8c1d7)
2024-01-17 19:38:04 +00:00
Tim Donohue
77bb3ed952 Fix circular dependency issue by using Cypres env variables directly instead of global constants
(cherry picked from commit e47593b303)
2024-01-17 19:38:04 +00:00
Tim Donohue
023f8a6900 Improve accessibility testing on Submission page
(cherry picked from commit 8d61fa6ac3)
2024-01-17 19:38:04 +00:00
Tim Donohue
0be04c754a Refactor e2e test infrastruction to allow easier way to lookup REST API info and generate CSRF tokens
(cherry picked from commit a581219df5)
2024-01-17 19:38:04 +00:00
Tim Donohue
07b95c2634 Fix ARIA labels and tabindex on date picker in submission form. Tabindex is unnecessary & throws accessibility errors from AXE tools
(cherry picked from commit 5dad8bec39)
2024-01-17 19:38:04 +00:00
Tim Donohue
e9efb50e02 Fix ARIA labels on submission form relationship button and dynamic dropdowns
(cherry picked from commit aeea1cd592)
2024-01-17 19:38:04 +00:00
Tim Donohue
868229460f Add new e2e accessibility tests & update some existing ones
(cherry picked from commit 53d521a87e)
2024-01-17 19:38:04 +00:00
Tim Donohue
9d593b657b Merge pull request #2743 from tdonohue/port_2587_to_dspace-7_x
[Port to dspace-7_x]  Deque Analysis Color Contrast fixes #2587
2024-01-16 16:48:13 -06:00
Maciej Kleban
0b43109a29 Replace hard-coded colors with bootstrap variants
* Replace custom variables with Bootstrap variants
* Replace custom button colors with Bootstrap variants
* Remove custom colors and replace them with bootstrap variants
* Fix checkbox offset styles
---------
Co-authored-by: Maciej Kleban <maciej.kleban@pcgacademia.pl>
2024-01-16 16:15:35 -06:00
Dawnkai
07a2f3bbbb Deque Analysis Color Contrast fixes 2024-01-16 16:04:27 -06:00
Alan Orth
fc28693b12 Merge pull request #2740 from DSpace/backport-2662-to-dspace-7_x
[Port dspace-7_x] Fixed ePerson link on edit group page
2024-01-12 08:51:21 +03:00
Alexandre Vryghem
77d2086796 Fixed ePerson link on edit group page
(cherry picked from commit 430ee3846a)
2024-01-12 05:25:16 +00:00
Tim Donohue
8dd0db094e Merge pull request #2670 from atmire/fix-api-undefined-issue-7.6.2-next
Ensure HALEndpointService doesn't use stale responses
2024-01-08 10:16:57 -06:00
Tim Donohue
33a5dd3e7f Merge pull request #2713 from DSpace/backport-2707-to-dspace-7_x
[Port dspace-7_x] Update fi.json5
2023-12-14 11:22:36 -06:00
reetagithub
9a9311e02a Update fi.json5
Corrected a typo  in search.view.switch.show-grid

(cherry picked from commit 2339a559e9)
2023-12-14 16:16:00 +00:00
Tim Donohue
2fec884072 Merge pull request #2696 from DSpace/backport-2683-to-dspace-7_x
[Port dspace-7_x] Fix accessibility issues
2023-12-06 10:30:55 -06:00
Alexandre Vryghem
4a0bf8a7af Fixed Edit Item Bitstream showing empty buttons when css is turned off & replaced authentication dropdown menu link with button
- Also fixed box-shadows not working the same way for all footer buttons/links

(cherry picked from commit 4545b5354d)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
53f5ceabee Fixed Edit Item Bitstream showing empty buttons when css is turned off
(cherry picked from commit ff6dff72d8)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
8f8a3acba7 Fixed DSONameService getName & getHitHighlights returning empty string for OrgUnits without organization.legalName field
(cherry picked from commit e96d3cd2e9)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
dbb7917058 Fixed accessibility issues on search page
(cherry picked from commit 9a5ad0bc9f)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
7ec57988b8 Fixed accessibility issues about header ordering
(cherry picked from commit 5566c99625)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
3300f72621 Fixed browse by vocabulary treeview accessibility issues
(cherry picked from commit 30fe424cc5)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
77f52df047 Fixed item page accessibility issues
(cherry picked from commit 8ba17c991e)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
79ce4e9ec2 Fix collection mapper accessibility issues
- Added missing aria-labels to input checkboxes
- Fixed multiple tab related accessibility issues

(cherry picked from commit 1db83ba3c5)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
73cffe990a Fix item mapper accessibility issues
- Added missing aria-labels to input checkboxes
- Fixed role="tablist" not having direct role="tab" by adding role="presentation" on the li elements

(cherry picked from commit 5b21d14583)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
b94f0a9b69 Fix resource policy accessibility issues
(cherry picked from commit 09bf8af03c)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
5d5582e2d2 Fix Bitstream format accessibility issues
- Added missing aria-labels to input checkboxes
- Fixed minor css alignment

(cherry picked from commit 57cc34cdd1)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
5e52233cf3 Fix Process detail accessibility issues
- Made Process Output keyboard accessible

(cherry picked from commit 120835cfcd)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
9ed13f31ff Fix Create a new process page accessibility issues
- Added missing aria-label to delete buttons
- Moved hardcoded translation to translation files
- Fix color contrast issues on buttons
- Fix minor alignment issues
- Added missing aria labels to input and select elements

(cherry picked from commit 52c0977489)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
bc1ed9a96f Fix Processes Overview accessibility issues
- Added missing aria-label to delete button

(cherry picked from commit 4ea487cc0d)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
57ebe88994 Fix System-wide Alert accessibility issues
- Added missing aria-label to buttons

(cherry picked from commit 3bdfc386e9)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
96b3423ed1 Fix Health Panel usability issues
- Fixed aria-controls on HealthComponentComponent, HealthInfoComponent, HealthInfoComponentComponent, HealthPanelComponent pointing to non-existing id
- Fixed the tabs not having the role tab on its tabs
- Fixed aria-expanded being set to true when collapsed and backwards for HealthPanelComponent & HealthInfoComponent
- Fixed role="tablist" not having direct role="tab" by adding role="presentation" on the li elements
- Fixed minor alignment issues

(cherry picked from commit 3628c84844)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
fc7aa27706 Fix Bulk Access Management usability issues
- Added aria-labels to trash & select bitstream icon
- Added aria-labels ui-switch components (had to upgrade ngx-ui-switch to 14.1.0)
- Fixed aria-controls pointing to non-existing ids
- Fixed bulk-access-browse not having the tab role on it's tabs
- Fixed role="tablist" not having direct role="tab" by adding role="presentation" on the li elements
- Fixed aria-expanded being set to true when collapsed and backwards for BulkAccessBrowseComponent & BulkAccessSettingsComponent

(cherry picked from commit c300123b78)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
1c4be7d1fe Fixed duplicate search-navbar-container id & renabled accessibility tests for header
(cherry picked from commit cc71d60ebb)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
9f468c2c11 Added aria-labels & fixed aria-controls on myDSpace page
- Added aria-label to the new submission buttons (for repositories with more than 1 entity type)
- Fixed aria-controls pointing to non-existing ids

(cherry picked from commit 8a7bdfe18f)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
69100f0a24 Replaced uncrawlable links with buttons
(cherry picked from commit 9ab30231aa)
2023-12-06 16:03:23 +00:00
Alexandre Vryghem
d32303bf47 Added missing aria labels to edit bitstream tab
(cherry picked from commit e229be44d6)
2023-12-06 16:03:23 +00:00
Art Lowel
91789a698f Merge branch 'fix-api-undefined-issue-7.6' into fix-api-undefined-issue-7.6.2-next 2023-12-06 11:30:28 +01:00
Art Lowel
1d4a36e3b8 Merge remote-tracking branch 'upstream/dspace-7_x' into fix-api-undefined-issue-7.6.2-next 2023-12-06 11:30:23 +01:00
Art Lowel
790e717199 add ResponsePendingStale state 2023-12-06 11:24:35 +01:00
Art Lowel
c8ac260b78 also skip loading hal requests 2023-12-06 11:24:29 +01:00
max.nuding
9f95eb452c enable type-bind for checkbox inputs during submission 2023-12-06 10:15:31 +01:00
Tim Donohue
970c449b30 Merge pull request #2685 from DSpace/backport-2684-to-dspace-7_x
[Port dspace-7_x] Updated bitstream read description in en.json5
2023-12-04 15:57:39 -06:00
Michael Spalti
3b568f7d32 Updated bitstream read description in en.json5
(cherry picked from commit 2592f87356)
2023-12-04 21:08:29 +00:00
Tim Donohue
5de6cedf5e Merge pull request #2677 from DSpace/backport-2673-to-dspace-7_x
[Port dspace-7_x] Fix for loading thumbnail images for Items when MediaViewer enabled
2023-11-30 15:08:01 -06:00
Michael Spalti
9c69a77d43 Fix for thumbnail images in items.
Revert changes in html template

Revert changes in html template

Revert changes in html template

(cherry picked from commit 88c39e8b26)
2023-11-30 20:14:36 +00:00
Art Lowel
db29263eb1 Merge branch 'fix-api-undefined-issue-7.6' into fix-api-undefined-issue-7.6.2-next 2023-11-29 16:58:43 +01:00
Tim Donohue
5b59d37e2f Merge pull request #2667 from tdonohue/port_2666_to_dspace-7_x
[Port dspace-7_x] [Docker] Refactor to simply use the reusable-docker-build.yml from DSpace/DSpace.
2023-11-29 09:38:51 -06:00
Art Lowel
38752d9d71 ensure HALEndpointService doesn't use stale requests 2023-11-29 14:25:36 +01:00
Tim Donohue
92d25dd2a8 Remove unused env variables 2023-11-28 16:52:15 -06:00
Tim Donohue
65fff9361c Use the script from the dspace-7_x branch 2023-11-28 16:13:56 -06:00
Tim Donohue
b83a8421a3 Refactor to simply use the reusable-docker-build.yml from DSpace/DSpace. 2023-11-28 16:12:21 -06:00
Alan Orth
714652ebb0 Merge pull request #2659 from DSpace/backport-2652-to-dspace-7_x
[Port dspace-7_x] Deselect all metadata fields when switching between metadata schemas in registry
2023-11-23 16:27:52 +03:00
Alexandre Vryghem
c3f424dae4 108587: Deselect all fields on component destruction
(cherry picked from commit ecca8286b5)
2023-11-23 04:57:35 +00:00
Tim Donohue
6758b4c4c7 Merge pull request #2655 from tdonohue/port_docker_gh_updates
[Port dspace-7_x] Port recent GitHub Action changes
2023-11-22 12:20:58 -06:00
Tim Donohue
bd78acd559 Redeploy demo/sandbox more quickly by only waiting for AMD64 image 2023-11-22 11:42:11 -06:00
Tim Donohue
62ccd18345 Trigger redeploy of demo/sandbox from GitHub Actions after DockerHub image updated. 2023-11-21 13:55:17 -06:00
Tim Donohue
5ab87ec6c3 Update GH actions to latest versions. Fix bug in codecov to ensure it retries on error. 2023-11-21 13:55:10 -06:00
Tim Donohue
63e792990f Fix directory structure for -dist digests 2023-11-21 13:54:42 -06:00
Tim Donohue
526da8cddf Fix bug in Docker manifest. Each build must use a separate artifact to store digests. Other minor cleanup & comments added. 2023-11-21 13:54:30 -06:00
Thomas Misilo
02eb618c5f Setup the Docker GH Action for Matrix Building
This change enables building of the amd64 and arm64 images simultaneously.

Once both images finish, the manifest is sent to Docker Hub, allowing for a single image that has both the amd64/arm64 images.
2023-11-21 13:54:03 -06:00
Tim Donohue
5a839c2906 Update version tag for development of next release 2023-11-15 14:37:06 -06:00
max.nuding
ab23613b79 Remove unnecessary import 2023-11-15 13:42:53 +01:00
max.nuding
c93a64db83 Fix tests to include translationservice dependency 2023-11-15 13:28:15 +01:00
max.nuding
038e31ccd1 Submission form now displays custom messages for regex validated fields if they exist 2023-11-15 10:51:53 +01:00
Kristof De Langhe
984c9bfc2a 107155: Allow caching of embedded objects without selflink 2023-10-26 16:33:14 +02:00
Kristof De Langhe
be6dbdec66 107155: Allow caching null objects 2023-10-02 13:31:25 +02:00
820 changed files with 184996 additions and 30781 deletions

View File

@@ -12,7 +12,6 @@
"eslint-plugin-rxjs",
"eslint-plugin-simple-import-sort",
"eslint-plugin-import-newlines",
"eslint-plugin-jsonc",
"dspace-angular-ts",
"dspace-angular-html"
],
@@ -165,6 +164,7 @@
"@angular-eslint/no-output-native": "warn",
"@angular-eslint/no-output-on-prefix": "warn",
"@angular-eslint/no-conflicting-lifecycle": "warn",
"@angular-eslint/use-lifecycle-interface": "error",
"@typescript-eslint/no-inferrable-types":[
"error",
@@ -292,7 +292,8 @@
],
"rules": {
// Custom DSpace Angular rules
"dspace-angular-html/themed-component-usages": "error"
"dspace-angular-html/themed-component-usages": "error",
"dspace-angular-html/no-disabled-attribute-on-button": "error"
}
},
{
@@ -300,10 +301,13 @@
"*.json5"
],
"extends": [
"plugin:jsonc/recommended-with-jsonc"
"plugin:jsonc/recommended-with-json5"
],
"rules": {
"no-irregular-whitespace": "error",
// The ESLint core no-irregular-whitespace rule doesn't work well in JSON
// See: https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-irregular-whitespace.html
"no-irregular-whitespace": "off",
"jsonc/no-irregular-whitespace": "error",
"no-trailing-spaces": "error",
"jsonc/comma-dangle": [
"error",

View File

@@ -7,7 +7,8 @@ name: Build
on: [push, pull_request]
permissions:
contents: read # to fetch code (actions/checkout)
contents: read # to fetch code (actions/checkout)
packages: read # to fetch private images from GitHub Container Registry (GHCR)
jobs:
tests:
@@ -28,6 +29,8 @@ jobs:
DSPACE_CACHE_SERVERSIDE_ANONYMOUSCACHE_MAX: 0
# Tell Cypress to run e2e tests using the same UI URL
CYPRESS_BASE_URL: http://127.0.0.1:4000
# Disable the cookie consent banner in e2e tests to avoid errors because of elements hidden by it
DSPACE_INFO_ENABLECOOKIECONSENTPOPUP: false
# When Chrome version is specified, we pin to a specific version of Chrome
# Comment this out to use the latest release
#CHROME_VERSION: "90.0.4430.212-1"
@@ -35,6 +38,9 @@ jobs:
NODE_OPTIONS: '--max-old-space-size=4096'
# Project name to use when running "docker compose" prior to e2e tests
COMPOSE_PROJECT_NAME: 'ci'
# Docker Registry to use for Docker compose scripts below.
# We use GitHub's Container Registry to avoid aggressive rate limits at DockerHub.
DOCKER_REGISTRY: ghcr.io
strategy:
# Create a matrix of Node versions to test against (in parallel)
matrix:
@@ -114,6 +120,14 @@ jobs:
path: 'coverage/dspace-angular/lcov.info'
retention-days: 14
# Login to our Docker registry, so that we can access private Docker images using "docker compose" below.
- name: Login to ${{ env.DOCKER_REGISTRY }}
uses: docker/login-action@v3
with:
registry: ${{ env.DOCKER_REGISTRY }}
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
# Using "docker compose" start backend using CI configuration
# and load assetstore from a cached copy
- name: Start DSpace REST Backend via Docker (for e2e tests)
@@ -178,12 +192,115 @@ jobs:
# Get homepage and verify that the <meta name="title"> tag includes "DSpace".
# If it does, then SSR is working, as this tag is created by our MetadataService.
# This step also prints entire HTML of homepage for easier debugging if grep fails.
- name: Verify SSR (server-side rendering)
- name: Verify SSR (server-side rendering) on Homepage
run: |
result=$(wget -O- -q http://127.0.0.1:4000/home)
echo "$result"
echo "$result" | grep -oE "<meta name=\"title\" [^>]*>" | grep DSpace
# Get a specific community in our test data and verify that the "<h1>" tag includes "Publications" (the community name).
# If it does, then SSR is working.
- name: Verify SSR on a Community page
run: |
result=$(wget -O- -q http://127.0.0.1:4000/communities/0958c910-2037-42a9-81c7-dca80e3892b4)
echo "$result"
echo "$result" | grep -oE "<h1 [^>]*>[^><]*</h1>" | grep Publications
# Get a specific collection in our test data and verify that the "<h1>" tag includes "Articles" (the collection name).
# If it does, then SSR is working.
- name: Verify SSR on a Collection page
run: |
result=$(wget -O- -q http://127.0.0.1:4000/collections/282164f5-d325-4740-8dd1-fa4d6d3e7200)
echo "$result"
echo "$result" | grep -oE "<h1 [^>]*>[^><]*</h1>" | grep Articles
# Get a specific publication in our test data and verify that the <meta name="title"> tag includes
# the title of this publication. If it does, then SSR is working.
- name: Verify SSR on a Publication page
run: |
result=$(wget -O- -q http://127.0.0.1:4000/entities/publication/6160810f-1e53-40db-81ef-f6621a727398)
echo "$result"
echo "$result" | grep -oE "<meta name=\"title\" [^>]*>" | grep "An Economic Model of Mortality Salience"
# Get a specific person in our test data and verify that the <meta name="title"> tag includes
# the name of the person. If it does, then SSR is working.
- name: Verify SSR on a Person page
run: |
result=$(wget -O- -q http://127.0.0.1:4000/entities/person/b1b2c768-bda1-448a-a073-fc541e8b24d9)
echo "$result"
echo "$result" | grep -oE "<meta name=\"title\" [^>]*>" | grep "Simmons, Cameron"
# Get a specific project in our test data and verify that the <meta name="title"> tag includes
# the name of the project. If it does, then SSR is working.
- name: Verify SSR on a Project page
run: |
result=$(wget -O- -q http://127.0.0.1:4000/entities/project/46ccb608-a74c-4bf6-bc7a-e29cc7defea9)
echo "$result"
echo "$result" | grep -oE "<meta name=\"title\" [^>]*>" | grep "University Research Fellowship"
# Get a specific orgunit in our test data and verify that the <meta name="title"> tag includes
# the name of the orgunit. If it does, then SSR is working.
- name: Verify SSR on an OrgUnit page
run: |
result=$(wget -O- -q http://127.0.0.1:4000/entities/orgunit/9851674d-bd9a-467b-8d84-068deb568ccf)
echo "$result"
echo "$result" | grep -oE "<meta name=\"title\" [^>]*>" | grep "Law and Development"
# Get a specific journal in our test data and verify that the <meta name="title"> tag includes
# the name of the journal. If it does, then SSR is working.
- name: Verify SSR on a Journal page
run: |
result=$(wget -O- -q http://127.0.0.1:4000/entities/journal/d4af6c3e-53d0-4757-81eb-566f3b45d63a)
echo "$result"
echo "$result" | grep -oE "<meta name=\"title\" [^>]*>" | grep "Environmental &amp; Architectural Phenomenology"
# Get a specific journal volume in our test data and verify that the <meta name="title"> tag includes
# the name of the volume. If it does, then SSR is working.
- name: Verify SSR on a Journal Volume page
run: |
result=$(wget -O- -q http://127.0.0.1:4000/entities/journalvolume/07c6249f-4bf7-494d-9ce3-6ffdb2aed538)
echo "$result"
echo "$result" | grep -oE "<meta name=\"title\" [^>]*>" | grep "Environmental &amp; Architectural Phenomenology Volume 28 (2017)"
# Get a specific journal issue in our test data and verify that the <meta name="title"> tag includes
# the name of the issue. If it does, then SSR is working.
- name: Verify SSR on a Journal Issue page
run: |
result=$(wget -O- -q http://127.0.0.1:4000/entities/journalissue/44c29473-5de2-48fa-b005-e5029aa1a50b)
echo "$result"
echo "$result" | grep -oE "<meta name=\"title\" [^>]*>" | grep "Environmental &amp; Architectural Phenomenology Vol. 28, No. 1"
# Verify 301 Handle redirect behavior
# Note: /handle/123456789/260 is the same test Publication used by our e2e tests
- name: Verify 301 redirect from '/handle' URLs
run: |
result=$(wget --server-response --quiet http://127.0.0.1:4000/handle/123456789/260 2>&1 | head -1 | awk '{print $2}')
echo "$result"
[[ "$result" -eq "301" ]]
# Verify 403 error code behavior
- name: Verify 403 error code from '/403'
run: |
result=$(wget --server-response --quiet http://127.0.0.1:4000/403 2>&1 | head -1 | awk '{print $2}')
echo "$result"
[[ "$result" -eq "403" ]]
# Verify 404 error code behavior
- name: Verify 404 error code from '/404' and on invalid pages
run: |
result=$(wget --server-response --quiet http://127.0.0.1:4000/404 2>&1 | head -1 | awk '{print $2}')
echo "$result"
result2=$(wget --server-response --quiet http://127.0.0.1:4000/invalidurl 2>&1 | head -1 | awk '{print $2}')
echo "$result2"
[[ "$result" -eq "404" && "$result2" -eq "404" ]]
# Verify 500 error code behavior
- name: Verify 500 error code from '/500'
run: |
result=$(wget --server-response --quiet http://127.0.0.1:4000/500 2>&1 | head -1 | awk '{print $2}')
echo "$result"
[[ "$result" -eq "500" ]]
- name: Stop running app
run: kill -9 $(lsof -t -i:4000)

View File

@@ -40,14 +40,14 @@ jobs:
# Initializes the CodeQL tools for scanning.
# https://github.com/github/codeql-action
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
uses: github/codeql-action/init@v3
with:
languages: javascript
# Autobuild attempts to build any compiled languages
- name: Autobuild
uses: github/codeql-action/autobuild@v2
uses: github/codeql-action/autobuild@v3
# Perform GitHub Code Scanning.
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
uses: github/codeql-action/analyze@v3

View File

@@ -16,7 +16,8 @@ on:
pull_request:
permissions:
contents: read # to fetch code (actions/checkout)
contents: read # to fetch code (actions/checkout)
packages: write # to write images to GitHub Container Registry (GHCR)
jobs:
#############################################################

View File

@@ -1,7 +1,7 @@
# This image will be published as dspace/dspace-angular
# See https://github.com/DSpace/dspace-angular/tree/main/docker for usage details
FROM node:18-alpine
FROM docker.io/node:18-alpine
# Ensure Python and other build tools are available
# These are needed to install some node modules, especially on linux/arm64
@@ -24,5 +24,5 @@ ENV NODE_OPTIONS="--max_old_space_size=4096"
# Listen / accept connections from all IP addresses.
# NOTE: At this time it is only possible to run Docker container in Production mode
# if you have a public URL. See https://github.com/DSpace/dspace-angular/issues/1485
ENV NODE_ENV development
ENV NODE_ENV=development
CMD yarn serve --host 0.0.0.0

View File

@@ -2,9 +2,9 @@
# See https://github.com/DSpace/dspace-angular/tree/main/docker for usage details
# Test build:
# docker build -f Dockerfile.dist -t dspace/dspace-angular:latest-dist .
# docker build -f Dockerfile.dist -t dspace/dspace-angular:dspace-8_x-dist .
FROM node:18-alpine as build
FROM docker.io/node:18-alpine AS build
# Ensure Python and other build tools are available
# These are needed to install some node modules, especially on linux/arm64
@@ -26,6 +26,6 @@ COPY --chown=node:node docker/dspace-ui.json /app/dspace-ui.json
WORKDIR /app
USER node
ENV NODE_ENV production
ENV NODE_ENV=production
EXPOSE 4000
CMD pm2-runtime start dspace-ui.json --json

View File

@@ -35,7 +35,7 @@ https://wiki.lyrasis.org/display/DSDOC7x/Installing+DSpace
Quick start
-----------
**Ensure you're running [Node](https://nodejs.org) `v16.x` or `v18.x`, [npm](https://www.npmjs.com/) >= `v5.x` and [yarn](https://yarnpkg.com) == `v1.x`**
**Ensure you're running [Node](https://nodejs.org) `v18.x` or `v20.x`, [npm](https://www.npmjs.com/) >= `v10.x` and [yarn](https://yarnpkg.com) == `v1.x`**
```bash
# clone the repo
@@ -90,7 +90,7 @@ Requirements
------------
- [Node.js](https://nodejs.org) and [yarn](https://yarnpkg.com)
- Ensure you're running node `v16.x` or `v18.x` and yarn == `v1.x`
- Ensure you're running node `v18.x` or `v20.x` and yarn == `v1.x`
If you have [`nvm`](https://github.com/creationix/nvm#install-script) or [`nvm-windows`](https://github.com/coreybutler/nvm-windows) installed, which is highly recommended, you can run `nvm install --lts && nvm use` to install and start using the latest Node LTS.

View File

@@ -30,7 +30,6 @@
"lodash",
"jwt-decode",
"uuid",
"webfontloader",
"zone.js"
],
"outputPath": "dist/browser",

View File

@@ -1,7 +1,7 @@
# NOTE: will log all redux actions and transfers in console
debug: false
# Angular Universal server settings
# Angular User Inteface settings
# NOTE: these settings define where Node.js will start your UI application. Therefore, these
# "ui" settings usually specify a localhost port/URL which is later proxied to a public URL (using Apache or similar)
ui:
@@ -17,12 +17,51 @@ ui:
# Trust X-FORWARDED-* headers from proxies (default = true)
useProxies: true
universal:
# Whether to inline "critical" styles into the server-side rendered HTML.
# Determining which styles are critical is a relatively expensive operation;
# this option can be disabled to boost server performance at the expense of
# loading smoothness.
inlineCriticalCss: true
# Angular Server Side Rendering (SSR) settings
ssr:
# Whether to tell Angular to inline "critical" styles into the server-side rendered HTML.
# Determining which styles are critical is a relatively expensive operation; this option is
# disabled (false) by default to boost server performance at the expense of loading smoothness.
inlineCriticalCss: false
# Patterns to be run as regexes against the path of the page to check if SSR is allowed.
# If the path match any of the regexes it will be served directly in CSR.
# By default, excludes community and collection browse, global browse, global search, community list, statistics and various administrative tools.
excludePathPatterns:
- pattern: "^/communities/[a-f0-9-]{36}/browse(/.*)?$"
flag: "i"
- pattern: "^/collections/[a-f0-9-]{36}/browse(/.*)?$"
flag: "i"
- pattern: "^/browse/"
- pattern: "^/search$"
- pattern: "^/community-list$"
- pattern: "^/admin/"
- pattern: "^/processes/?"
- pattern: "^/notifications/"
- pattern: "^/statistics/?"
- pattern: "^/access-control/"
- pattern: "^/health$"
# 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
# Enable state transfer from the server-side application to the client-side application.
# Defaults to true.
# Note: When using an external application cache layer, it's recommended not to transfer the state to avoid caching it.
# Disabling it ensures that dynamic state information is not inadvertently cached, which can improve security and
# ensure that users always use the most up-to-date state.
transferState: true
# When a different REST base URL is used for the server-side application, the generated state contains references to
# REST resources with the internal URL configured. By default, these internal URLs are replaced with public URLs.
# Disable this setting to avoid URL replacement during SSR. In this the state is not transferred to avoid security issues.
replaceRestUrl: true
# Enable request performance profiling data collection and printing the results in the server console.
# Defaults to false. Enabling in production is NOT recommended
#enablePerformanceProfiler: false
# The REST API server settings
# NOTE: these settings define which (publicly available) REST API to use. They are usually
@@ -33,6 +72,9 @@ rest:
port: 443
# NOTE: Space is capitalized because 'namespace' is a reserved string in TypeScript
nameSpace: /server
# Provide a different REST url to be used during SSR execution. It must contain the whole url including protocol, server port and
# server namespace (uncomment to use it).
#ssrBaseUrl: http://localhost:8080/server
# Caching settings
cache:
@@ -325,12 +367,20 @@ item:
# Community Page Config
community:
# Default tab to be shown when browsing a Community. Valid values are: comcols, search, or browse_<field>
# <field> must be any of the configured "browse by" fields, e.g., dateissued, author, title, or subject
# When the default tab is not the 'search' tab, the search tab is moved to the last position
defaultBrowseTab: search
# Search tab config
searchSection:
showSidebar: true
# Collection Page Config
collection:
# Default tab to be shown when browsing a Collection. Valid values are: search, or browse_<field>
# <field> must be any of the configured "browse by" fields, e.g., dateissued, author, title, or subject
# When the default tab is not the 'search' tab, the search tab is moved to the last position
defaultBrowseTab: search
# Search tab config
searchSection:
showSidebar: true
@@ -448,6 +498,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
@@ -503,6 +559,21 @@ notifyMetrics:
description: 'admin-notify-dashboard.NOTIFY.outgoing.delivered.description'
# Live Region configuration
# Live Region as defined by w3c, https://www.w3.org/TR/wai-aria-1.1/#terms:
# Live regions are perceivable regions of a web page that are typically updated as a
# result of an external event when user focus may be elsewhere.
#
# The DSpace live region is a component present at the bottom of all pages that is invisible by default, but is useful
# for screen readers. Any message pushed to the live region will be announced by the screen reader. These messages
# usually contain information about changes on the page that might not be in focus.
liveRegion:
# The duration after which messages disappear from the live region in milliseconds
messageTimeOutDurationMs: 30000
# The visibility of the live region. Setting this to true is only useful for debugging purposes.
isVisible: false
# Configuration for storing accessibility settings, used by the AccessibilitySettingsService
accessibility:
# The duration in days after which the accessibility settings cookie expires
cookieExpirationDuration: 7

View File

@@ -1,6 +1,7 @@
import { defineConfig } from 'cypress';
export default defineConfig({
video: true,
videosFolder: 'cypress/videos',
screenshotsFolder: 'cypress/screenshots',
fixturesFolder: 'cypress/fixtures',
@@ -18,6 +19,7 @@ export default defineConfig({
// Admin account used for administrative tests
DSPACE_TEST_ADMIN_USER: 'dspacedemo+admin@gmail.com',
DSPACE_TEST_ADMIN_USER_UUID: '335647b6-8a52-4ecb-a8c1-7ebabb199bda',
DSPACE_TEST_ADMIN_PASSWORD: 'dspace',
// Community/collection/publication used for view/edit tests
DSPACE_TEST_COMMUNITY: '0958c910-2037-42a9-81c7-dca80e3892b4',
@@ -33,6 +35,8 @@ export default defineConfig({
// Account used to test basic submission process
DSPACE_TEST_SUBMIT_USER: 'dspacedemo+submit@gmail.com',
DSPACE_TEST_SUBMIT_USER_PASSWORD: 'dspace',
// Administrator users group
DSPACE_ADMINISTRATOR_GROUP: 'e59f5659-bff9-451e-b28f-439e7bd467e4'
},
e2e: {
// Setup our plugins for e2e tests

View File

@@ -0,0 +1,54 @@
import { testA11y } from 'cypress/support/utils';
describe('Admin Add New Modals', () => {
beforeEach(() => {
// Must login as an Admin for sidebar to appear
cy.visit('/login');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('Add new Community modal should pass accessibility tests', () => {
// Pin the sidebar open
cy.get('#sidebar-collapse-toggle').trigger('mouseover');
cy.get('#sidebar-collapse-toggle').click();
// Click on entry of menu
cy.get('#admin-menu-section-new-title').should('be.visible');
cy.get('#admin-menu-section-new-title').click();
cy.get('a[data-test="menu.section.new_community"]').click();
// Analyze <ds-create-community-parent-selector> for accessibility
testA11y('ds-create-community-parent-selector');
});
it('Add new Collection modal should pass accessibility tests', () => {
// Pin the sidebar open
cy.get('#sidebar-collapse-toggle').trigger('mouseover');
cy.get('#sidebar-collapse-toggle').click();
// Click on entry of menu
cy.get('#admin-menu-section-new-title').should('be.visible');
cy.get('#admin-menu-section-new-title').click();
cy.get('a[data-test="menu.section.new_collection"]').click();
// Analyze <ds-create-collection-parent-selector> for accessibility
testA11y('ds-create-collection-parent-selector');
});
it('Add new Item modal should pass accessibility tests', () => {
// Pin the sidebar open
cy.get('#sidebar-collapse-toggle').trigger('mouseover');
cy.get('#sidebar-collapse-toggle').click();
// Click on entry of menu
cy.get('#admin-menu-section-new-title').should('be.visible');
cy.get('#admin-menu-section-new-title').click();
cy.get('a[data-test="menu.section.new_item"]').click();
// Analyze <ds-create-item-parent-selector> for accessibility
testA11y('ds-create-item-parent-selector');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Admin Curation Tasks', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/admin/curation-tasks');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Page must first be visible
cy.get('ds-admin-curation-task').should('be.visible');
// Analyze <ds-admin-curation-task> for accessibility issues
testA11y('ds-admin-curation-task');
});
});

View File

@@ -0,0 +1,54 @@
import { testA11y } from 'cypress/support/utils';
describe('Admin Edit Modals', () => {
beforeEach(() => {
// Must login as an Admin for sidebar to appear
cy.visit('/login');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('Edit Community modal should pass accessibility tests', () => {
// Pin the sidebar open
cy.get('#sidebar-collapse-toggle').trigger('mouseover');
cy.get('#sidebar-collapse-toggle').click();
// Click on entry of menu
cy.get('#admin-menu-section-edit-title').should('be.visible');
cy.get('#admin-menu-section-edit-title').click();
cy.get('a[data-test="menu.section.edit_community"]').click();
// Analyze <ds-edit-community-selector> for accessibility
testA11y('ds-edit-community-selector');
});
it('Edit Collection modal should pass accessibility tests', () => {
// Pin the sidebar open
cy.get('#sidebar-collapse-toggle').trigger('mouseover');
cy.get('#sidebar-collapse-toggle').click();
// Click on entry of menu
cy.get('#admin-menu-section-edit-title').should('be.visible');
cy.get('#admin-menu-section-edit-title').click();
cy.get('a[data-test="menu.section.edit_collection"]').click();
// Analyze <ds-edit-collection-selector> for accessibility
testA11y('ds-edit-collection-selector');
});
it('Edit Item modal should pass accessibility tests', () => {
// Pin the sidebar open
cy.get('#sidebar-collapse-toggle').trigger('mouseover');
cy.get('#sidebar-collapse-toggle').click();
// Click on entry of menu
cy.get('#admin-menu-section-edit-title').should('be.visible');
cy.get('#admin-menu-section-edit-title').click();
cy.get('a[data-test="menu.section.edit_item"]').click();
// Analyze <ds-edit-item-selector> for accessibility
testA11y('ds-edit-item-selector');
});
});

View File

@@ -0,0 +1,39 @@
import { testA11y } from 'cypress/support/utils';
describe('Admin Export Modals', () => {
beforeEach(() => {
// Must login as an Admin for sidebar to appear
cy.visit('/login');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('Export metadata modal should pass accessibility tests', () => {
// Pin the sidebar open
cy.get('#sidebar-collapse-toggle').trigger('mouseover');
cy.get('#sidebar-collapse-toggle').click();
// Click on entry of menu
cy.get('#admin-menu-section-export-title').should('be.visible');
cy.get('#admin-menu-section-export-title').click();
cy.get('a[data-test="menu.section.export_metadata"]').click();
// Analyze <ds-export-metadata-selector> for accessibility
testA11y('ds-export-metadata-selector');
});
it('Export batch modal should pass accessibility tests', () => {
// Pin the sidebar open
cy.get('#sidebar-collapse-toggle').trigger('mouseover');
cy.get('#sidebar-collapse-toggle').click();
// Click on entry of menu
cy.get('#admin-menu-section-export-title').should('be.visible');
cy.get('#admin-menu-section-export-title').click();
cy.get('a[data-test="menu.section.export_batch"]').click();
// Analyze <ds-export-batch-selector> for accessibility
testA11y('ds-export-batch-selector');
});
});

View File

@@ -0,0 +1,17 @@
import { testA11y } from 'cypress/support/utils';
describe('Admin Notifications Publication Claim Page', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/admin/notifications/publication-claim');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
//Page must first be visible
cy.get('ds-admin-notifications-publication-claim-page').should('be.visible');
// Analyze <ds-admin-notifications-publication-claim-page> for accessibility issues
testA11y('ds-admin-notifications-publication-claim-page');
});
});

View File

@@ -0,0 +1,21 @@
import { testA11y } from 'cypress/support/utils';
describe('Admin Search Page', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/admin/search');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
//Page must first be visible
cy.get('ds-admin-search-page').should('be.visible');
// At least one search result should be displayed
cy.get('[data-test="list-object"]').should('be.visible');
// Click each filter toggle to open *every* filter
// (As we want to scan filter section for accessibility issues as well)
cy.get('[data-test="filter-toggle"]').click({ multiple: true });
// Analyze <ds-admin-search-page> for accessibility issues
testA11y('ds-admin-search-page');
});
});

View File

@@ -0,0 +1,21 @@
import { testA11y } from 'cypress/support/utils';
describe('Admin Workflow Page', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/admin/workflow');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Page must first be visible
cy.get('ds-admin-workflow-page').should('be.visible');
// At least one search result should be displayed
cy.get('[data-test="list-object"]').should('be.visible');
// Click each filter toggle to open *every* filter
// (As we want to scan filter section for accessibility issues as well)
cy.get('[data-test="filter-toggle"]').click({ multiple: true });
// Analyze <ds-admin-workflow-page> for accessibility issues
testA11y('ds-admin-workflow-page');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Batch Import Page', () => {
beforeEach(() => {
// Must login as an Admin to see processes
cy.visit('/admin/batch-import');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Batch import form must first be visible
cy.get('ds-batch-import-page').should('be.visible');
// Analyze <ds-batch-import-page> for accessibility issues
testA11y('ds-batch-import-page');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Bitstreams Formats', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/admin/registries/bitstream-formats');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Page must first be visible
cy.get('ds-bitstream-formats').should('be.visible');
// Analyze <ds-bitstream-formats> for accessibility issues
testA11y('ds-bitstream-formats');
});
});

View File

@@ -0,0 +1,31 @@
import { testA11y } from 'cypress/support/utils';
import { Options } from 'cypress-axe';
describe('Bulk Access', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/access-control/bulk-access');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Page must first be visible
cy.get('ds-bulk-access').should('be.visible');
// At least one search result should be displayed
cy.get('[data-test="list-object"]').should('be.visible');
// Click each filter toggle to open *every* filter
// (As we want to scan filter section for accessibility issues as well)
cy.get('[data-test="filter-toggle"]').click({ multiple: true });
// Analyze <ds-bulk-access> for accessibility issues
testA11y('ds-bulk-access', {
rules: {
// All panels are accordians & fail "aria-required-children" and "nested-interactive".
// Seem to require updating ng-bootstrap and https://github.com/DSpace/dspace-angular/issues/2216
'aria-required-children': { enabled: false },
'nested-interactive': { enabled: false },
// Card titles fail this test currently
'heading-order': { enabled: false },
},
} as Options);
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Create Eperson', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/access-control/epeople/create');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Form must first be visible
cy.get('ds-eperson-form').should('be.visible');
// Analyze <ds-eperson-form> for accessibility issues
testA11y('ds-eperson-form');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Create Group', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/access-control/groups/create');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Form must first be visible
cy.get('ds-group-form').should('be.visible');
// Analyze <ds-group-form> for accessibility issues
testA11y('ds-group-form');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Edit Eperson', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/access-control/epeople/'.concat(Cypress.env('DSPACE_TEST_ADMIN_USER_UUID')).concat('/edit'));
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Form must first be visible
cy.get('ds-eperson-form').should('be.visible');
// Analyze <ds-eperson-form> for accessibility issues
testA11y('ds-eperson-form');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Edit Group', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/access-control/groups/'.concat(Cypress.env('DSPACE_ADMINISTRATOR_GROUP')).concat('/edit'));
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Form must first be visible
cy.get('ds-group-form').should('be.visible');
// Analyze <ds-group-form> for accessibility issues
testA11y('ds-group-form');
});
});

View File

@@ -0,0 +1,13 @@
import { testA11y } from 'cypress/support/utils';
describe('End User Agreement', () => {
it('should pass accessibility tests', () => {
cy.visit('/info/end-user-agreement');
// Page must first be visible
cy.get('ds-end-user-agreement').should('be.visible');
// Analyze <ds-end-user-agreement> for accessibility
testA11y('ds-end-user-agreement');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Epeople registry', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/access-control/epeople');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Epeople registry page must first be visible
cy.get('ds-epeople-registry').should('be.visible');
// Analyze <ds-epeople-registry> for accessibility issues
testA11y('ds-epeople-registry');
});
});

View File

@@ -0,0 +1,13 @@
import { testA11y } from 'cypress/support/utils';
describe('Feedback', () => {
it('should pass accessibility tests', () => {
cy.visit('/info/feedback');
// Page must first be visible
cy.get('ds-feedback').should('be.visible');
// Analyze <ds-feedback> for accessibility
testA11y('ds-feedback');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Groups registry', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/access-control/groups');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Epeople registry page must first be visible
cy.get('ds-groups-registry').should('be.visible');
// Analyze <ds-groups-registry> for accessibility issues
testA11y('ds-groups-registry');
});
});

View File

@@ -10,4 +10,29 @@ describe('Header', () => {
// Analyze <ds-header> for accessibility
testA11y('ds-header');
});
it('should allow for changing language to German (for example)', () => {
cy.visit('/');
// Click the language switcher (globe) in header
cy.get('button[data-test="lang-switch"]').click();
// Click on the "Deusch" language in dropdown
cy.get('#language-menu-list div[role="option"]').contains('Deutsch').click();
// HTML "lang" attribute should switch to "de"
cy.get('html').invoke('attr', 'lang').should('eq', 'de');
// Login menu should now be in German
cy.get('[data-test="login-menu"]').contains('Anmelden');
// Change back to English from language switcher
cy.get('button[data-test="lang-switch"]').click();
cy.get('#language-menu-list div[role="option"]').contains('English').click();
// HTML "lang" attribute should switch to "en"
cy.get('html').invoke('attr', 'lang').should('eq', 'en');
// Login menu should now be in English
cy.get('[data-test="login-menu"]').contains('Log In');
});
});

View File

@@ -0,0 +1,62 @@
import { testA11y } from 'cypress/support/utils';
import { Options } from 'cypress-axe';
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/health');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
describe('Health Page > Status Tab', () => {
it('should pass accessibility tests', () => {
cy.intercept('GET', '/server/actuator/health').as('status');
cy.wait('@status');
cy.get('a[data-test="health-page.status-tab"]').click();
// Page must first be visible
cy.get('ds-health-page').should('be.visible');
cy.get('ds-health-panel').should('be.visible');
// wait for all the ds-health-info-component components to be rendered
cy.get('div[role="tabpanel"]').each(($panel: HTMLDivElement) => {
cy.wrap($panel).find('ds-health-component').should('be.visible');
});
// Analyze <ds-health-page> for accessibility issues
testA11y('ds-health-page', {
rules: {
// All panels are accordians & fail "aria-required-children" and "nested-interactive".
// Seem to require updating ng-bootstrap and https://github.com/DSpace/dspace-angular/issues/2216
'aria-required-children': { enabled: false },
'nested-interactive': { enabled: false },
},
} as Options);
});
});
describe('Health Page > Info Tab', () => {
it('should pass accessibility tests', () => {
cy.intercept('GET', '/server/actuator/info').as('info');
cy.wait('@info');
cy.get('a[data-test="health-page.info-tab"]').click();
// Page must first be visible
cy.get('ds-health-page').should('be.visible');
cy.get('ds-health-info').should('be.visible');
// wait for all the ds-health-info-component components to be rendered
cy.get('div[role="tabpanel"]').each(($panel: HTMLDivElement) => {
cy.wrap($panel).find('ds-health-info-component').should('be.visible');
});
// Analyze <ds-health-info> for accessibility issues
testA11y('ds-health-info', {
rules: {
// All panels are accordions & fail "aria-required-children" and "nested-interactive".
// Seem to require updating ng-bootstrap and https://github.com/DSpace/dspace-angular/issues/2216
'aria-required-children': { enabled: false },
'nested-interactive': { enabled: false },
},
} as Options);
});
});

View File

@@ -13,8 +13,13 @@ beforeEach(() => {
describe('Edit Item > Edit Metadata tab', () => {
it('should pass accessibility tests', () => {
cy.get('a[data-test="metadata"]').should('be.visible');
cy.get('a[data-test="metadata"]').click();
// Our selected tab should be both visible & active
cy.get('a[data-test="metadata"]').should('be.visible');
cy.get('a[data-test="metadata"]').should('have.class', 'active');
// <ds-edit-item-page> tag must be loaded
cy.get('ds-edit-item-page').should('be.visible');
@@ -31,8 +36,13 @@ describe('Edit Item > Edit Metadata tab', () => {
describe('Edit Item > Status tab', () => {
it('should pass accessibility tests', () => {
cy.get('a[data-test="status"]').should('be.visible');
cy.get('a[data-test="status"]').click();
// Our selected tab should be both visible & active
cy.get('a[data-test="status"]').should('be.visible');
cy.get('a[data-test="status"]').should('have.class', 'active');
// <ds-item-status> tag must be loaded
cy.get('ds-item-status').should('be.visible');
@@ -44,8 +54,13 @@ describe('Edit Item > Status tab', () => {
describe('Edit Item > Bitstreams tab', () => {
it('should pass accessibility tests', () => {
cy.get('a[data-test="bitstreams"]').should('be.visible');
cy.get('a[data-test="bitstreams"]').click();
// Our selected tab should be both visible & active
cy.get('a[data-test="bitstreams"]').should('be.visible');
cy.get('a[data-test="bitstreams"]').should('have.class', 'active');
// <ds-item-bitstreams> tag must be loaded
cy.get('ds-item-bitstreams').should('be.visible');
@@ -68,8 +83,13 @@ describe('Edit Item > Bitstreams tab', () => {
describe('Edit Item > Curate tab', () => {
it('should pass accessibility tests', () => {
cy.get('a[data-test="curate"]').should('be.visible');
cy.get('a[data-test="curate"]').click();
// Our selected tab should be both visible & active
cy.get('a[data-test="curate"]').should('be.visible');
cy.get('a[data-test="curate"]').should('have.class', 'active');
// <ds-item-curate> tag must be loaded
cy.get('ds-item-curate').should('be.visible');
@@ -81,8 +101,13 @@ describe('Edit Item > Curate tab', () => {
describe('Edit Item > Relationships tab', () => {
it('should pass accessibility tests', () => {
cy.get('a[data-test="relationships"]').should('be.visible');
cy.get('a[data-test="relationships"]').click();
// Our selected tab should be both visible & active
cy.get('a[data-test="relationships"]').should('be.visible');
cy.get('a[data-test="relationships"]').should('have.class', 'active');
// <ds-item-relationships> tag must be loaded
cy.get('ds-item-relationships').should('be.visible');
@@ -94,8 +119,13 @@ describe('Edit Item > Relationships tab', () => {
describe('Edit Item > Version History tab', () => {
it('should pass accessibility tests', () => {
cy.get('a[data-test="versionhistory"]').should('be.visible');
cy.get('a[data-test="versionhistory"]').click();
// Our selected tab should be both visible & active
cy.get('a[data-test="versionhistory"]').should('be.visible');
cy.get('a[data-test="versionhistory"]').should('have.class', 'active');
// <ds-item-version-history> tag must be loaded
cy.get('ds-item-version-history').should('be.visible');
@@ -107,8 +137,13 @@ describe('Edit Item > Version History tab', () => {
describe('Edit Item > Access Control tab', () => {
it('should pass accessibility tests', () => {
cy.get('a[data-test="access-control"]').should('be.visible');
cy.get('a[data-test="access-control"]').click();
// Our selected tab should be both visible & active
cy.get('a[data-test="access-control"]').should('be.visible');
cy.get('a[data-test="access-control"]').should('have.class', 'active');
// <ds-item-access-control> tag must be loaded
cy.get('ds-item-access-control').should('be.visible');
@@ -120,8 +155,13 @@ describe('Edit Item > Access Control tab', () => {
describe('Edit Item > Collection Mapper tab', () => {
it('should pass accessibility tests', () => {
cy.get('a[data-test="mapper"]').should('be.visible');
cy.get('a[data-test="mapper"]').click();
// Our selected tab should be both visible & active
cy.get('a[data-test="mapper"]').should('be.visible');
cy.get('a[data-test="mapper"]').should('have.class', 'active');
// <ds-item-collection-mapper> tag must be loaded
cy.get('ds-item-collection-mapper').should('be.visible');

View File

@@ -3,31 +3,31 @@ import { testA11y } from 'cypress/support/utils';
const page = {
openLoginMenu() {
// Click the "Log In" dropdown menu in header
cy.get('ds-header [data-test="login-menu"]').click();
cy.get('[data-test="login-menu"]').click();
},
openUserMenu() {
// Once logged in, click the User menu in header
cy.get('ds-header [data-test="user-menu"]').click();
cy.get('[data-test="user-menu"]').click();
},
submitLoginAndPasswordByPressingButton(email, password) {
// Enter email
cy.get('ds-header [data-test="email"]').type(email);
cy.get('[data-test="email"]').type(email);
// Enter password
cy.get('ds-header [data-test="password"]').type(password);
cy.get('[data-test="password"]').type(password);
// Click login button
cy.get('ds-header [data-test="login-button"]').click();
cy.get('[data-test="login-button"]').click();
},
submitLoginAndPasswordByPressingEnter(email, password) {
// In opened Login modal, fill out email & password, then click Enter
cy.get('ds-header [data-test="email"]').type(email);
cy.get('ds-header [data-test="password"]').type(password);
cy.get('ds-header [data-test="password"]').type('{enter}');
cy.get('[data-test="email"]').type(email);
cy.get('[data-test="password"]').type(password);
cy.get('[data-test="password"]').type('{enter}');
},
submitLogoutByPressingButton() {
// This is the POST command that will actually log us out
cy.intercept('POST', '/server/api/authn/logout').as('logout');
// Click logout button
cy.get('ds-header [data-test="logout-button"]').click();
cy.get('[data-test="logout-button"]').click();
// Wait until above POST command responds before continuing
// (This ensures next action waits until logout completes)
cy.wait('@logout');
@@ -67,7 +67,7 @@ describe('Login Modal', () => {
// Login, and the <ds-log-in> tag should no longer exist
page.submitLoginAndPasswordByPressingEnter(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
cy.get('.form-login').should('not.exist');
cy.get('ds-log-in').should('not.exist');
// Verify we are still on homepage
cy.url().should('include', '/home');

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Metadata Import Page', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/admin/metadata-import');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Metadata import form must first be visible
cy.get('ds-metadata-import-page').should('be.visible');
// Analyze <ds-metadata-import-page> for accessibility issues
testA11y('ds-metadata-import-page');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Metadata Registry', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/admin/registries/metadata');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Page must first be visible
cy.get('ds-metadata-registry').should('be.visible');
// Analyze <ds-metadata-registry> for accessibility issues
testA11y('ds-metadata-registry');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Metadata Schema', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/admin/registries/metadata/dc');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Page must first be visible
cy.get('ds-metadata-schema').should('be.visible');
// Analyze <ds-metadata-schema> for accessibility issues
testA11y('ds-metadata-schema');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('New Process', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/processes/new');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Process form must first be visible
cy.get('ds-new-process').should('be.visible');
// Analyze <ds-new-process> for accessibility issues
testA11y('ds-new-process');
});
});

13
cypress/e2e/privacy.cy.ts Normal file
View File

@@ -0,0 +1,13 @@
import { testA11y } from 'cypress/support/utils';
describe('Privacy', () => {
it('should pass accessibility tests', () => {
cy.visit('/info/privacy');
// Page must first be visible
cy.get('ds-privacy').should('be.visible');
// Analyze <ds-privacy> for accessibility
testA11y('ds-privacy');
});
});

View File

@@ -0,0 +1,17 @@
import { testA11y } from 'cypress/support/utils';
describe('Processes Overview', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/processes');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Process overview must first be visible
cy.get('ds-process-overview').should('be.visible');
// Analyze <ds-process-overview> for accessibility issues
testA11y('ds-process-overview');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Profile page', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/profile');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Process form must first be visible
cy.get('ds-profile-page').should('be.visible');
// Analyze <ds-profile-page> for accessibility issues
testA11y('ds-profile-page');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('Quality Assurance Source Page', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/notifications/quality-assurance');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Source page must first be visible
cy.get('ds-quality-assurance-source-page-component').should('be.visible');
// Analyze <ds-quality-assurance-source-page-component> for accessibility issues
testA11y('ds-quality-assurance-source-page-component');
});
});

View File

@@ -0,0 +1,16 @@
import { testA11y } from 'cypress/support/utils';
describe('System Wide Alert', () => {
beforeEach(() => {
// Must login as an Admin to see the page
cy.visit('/admin/system-wide-alert');
cy.loginViaForm(Cypress.env('DSPACE_TEST_ADMIN_USER'), Cypress.env('DSPACE_TEST_ADMIN_PASSWORD'));
});
it('should pass accessibility tests', () => {
// Page must first be visible
cy.get('ds-system-wide-alert-form').should('be.visible');
// Analyze <ds-system-wide-alert-form> for accessibility issues
testA11y('ds-system-wide-alert-form');
});
});

View File

@@ -101,11 +101,11 @@ Cypress.Commands.add('login', login);
*/
function loginViaForm(email: string, password: string): void {
// Enter email
cy.get('ds-log-in [data-test="email"]').type(email);
cy.get('[data-test="email"]').type(email);
// Enter password
cy.get('ds-log-in [data-test="password"]').type(password);
cy.get('[data-test="password"]').type(password);
// Click login button
cy.get('ds-log-in [data-test="login-button"]').click();
cy.get('[data-test="login-button"]').click();
}
// Add as a Cypress command (i.e. assign to 'cy.loginViaForm')
Cypress.Commands.add('loginViaForm', loginViaForm);

View File

@@ -23,14 +23,14 @@ the Docker compose scripts in this 'docker' folder.
This Dockerfile is used to build a *development* DSpace Angular UI image, published as 'dspace/dspace-angular'
```
docker build -t dspace/dspace-angular:latest .
docker build -t dspace/dspace-angular:dspace-8_x .
```
This image is built *automatically* after each commit is made to the `main` branch.
Admins to our DockerHub repo can manually publish with the following command.
```
docker push dspace/dspace-angular:latest
docker push dspace/dspace-angular:dspace-8_x
```
### Dockerfile.dist
@@ -39,7 +39,7 @@ The `Dockerfile.dist` is used to generate a *production* build and runtime envir
```bash
# build the latest image
docker build -f Dockerfile.dist -t dspace/dspace-angular:latest-dist .
docker build -f Dockerfile.dist -t dspace/dspace-angular:dspace-8_x-dist .
```
A default/demo version of this image is built *automatically*.
@@ -59,19 +59,19 @@ A default/demo version of this image is built *automatically*.
## To refresh / pull DSpace images from Dockerhub
```
docker-compose -f docker/docker-compose.yml pull
docker compose -f docker/docker-compose.yml pull
```
## To build DSpace images using code in your branch
```
docker-compose -f docker/docker-compose.yml build
docker compose -f docker/docker-compose.yml build
```
## To start DSpace (REST and Angular) from your branch
This command provides a quick way to start both the frontend & backend from this single codebase
```
docker-compose -p d8 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml up -d
docker compose -p d8 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml up -d
```
Keep in mind, you may also start the backend by cloning the 'DSpace/DSpace' GitHub repository separately. See the next section.
@@ -86,14 +86,14 @@ _The system will be started in 2 steps. Each step shares the same docker network
From 'DSpace/DSpace' clone (build first as needed):
```
docker-compose -p d8 up -d
docker compose -p d8 up -d
```
NOTE: More detailed instructions on starting the backend via Docker can be found in the [Docker Compose instructions for the Backend](https://github.com/DSpace/DSpace/blob/main/dspace/src/main/docker-compose/README.md).
From 'DSpace/dspace-angular' clone (build first as needed)
```
docker-compose -p d8 -f docker/docker-compose.yml up -d
docker compose -p d8 -f docker/docker-compose.yml up -d
```
At this point, you should be able to access the UI from http://localhost:4000,
@@ -105,21 +105,21 @@ This allows you to run the Angular UI in *production* mode, pointing it at the d
(https://demo.dspace.org/server/ or https://sandbox.dspace.org/server/).
```
docker-compose -f docker/docker-compose-dist.yml pull
docker-compose -f docker/docker-compose-dist.yml build
docker-compose -p d8 -f docker/docker-compose-dist.yml up -d
docker compose -f docker/docker-compose-dist.yml pull
docker compose -f docker/docker-compose-dist.yml build
docker compose -p d8 -f docker/docker-compose-dist.yml up -d
```
## Ingest test data from AIPDIR
Create an administrator
```
docker-compose -p d8 -f docker/cli.yml run --rm dspace-cli create-administrator -e test@test.edu -f admin -l user -p admin -c en
docker compose -p d8 -f docker/cli.yml run --rm dspace-cli create-administrator -e test@test.edu -f admin -l user -p admin -c en
```
Load content from AIP files
```
docker-compose -p d8 -f docker/cli.yml -f ./docker/cli.ingest.yml run --rm dspace-cli
docker compose -p d8 -f docker/cli.yml -f ./docker/cli.ingest.yml run --rm dspace-cli
```
## Alternative Ingest - Use Entities dataset
@@ -127,12 +127,12 @@ _Delete your docker volumes or use a unique project (-p) name_
Start DSpace with Database Content from a database dump
```
docker-compose -p d8 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml -f docker/db.entities.yml up -d
docker compose -p d8 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml -f docker/db.entities.yml up -d
```
Load assetstore content and trigger a re-index of the repository
```
docker-compose -p d8 -f docker/cli.yml -f docker/cli.assetstore.yml run --rm dspace-cli
docker compose -p d8 -f docker/cli.yml -f docker/cli.assetstore.yml run --rm dspace-cli
```
## End to end testing of the REST API (runs in GitHub Actions CI).
@@ -140,5 +140,5 @@ _In this instance, only the REST api runs in Docker using the Entities dataset.
This command is only really useful for testing our Continuous Integration process.
```
docker-compose -p d8ci -f docker/docker-compose-ci.yml up -d
docker compose -p d8ci -f docker/docker-compose-ci.yml up -d
```

View File

@@ -14,14 +14,14 @@
# Therefore, it should be kept in sync with that file
networks:
# Default to using network named 'dspacenet' from docker-compose-rest.yml.
# Its full name will be prepended with the project name (e.g. "-p d7" means it will be named "d7_dspacenet")
# Its full name will be prepended with the project name (e.g. "-p d8" means it will be named "d8_dspacenet")
# If COMPOSITE_PROJECT_NAME is missing, default value will be "docker" (name of folder this file is in)
default:
name: ${COMPOSE_PROJECT_NAME:-docker}_dspacenet
external: true
services:
dspace-cli:
image: "${DOCKER_OWNER:-dspace}/dspace-cli:${DSPACE_VER:-latest}"
image: "${DOCKER_REGISTRY:-docker.io}/${DOCKER_OWNER:-dspace}/dspace-cli:${DSPACE_VER:-dspace-8_x}"
container_name: dspace-cli
environment:
# Below syntax may look odd, but it is how to override dspace.cfg settings via env variables.

View File

@@ -14,10 +14,11 @@
# # Therefore, it should be kept in sync with that file
services:
dspacedb:
image: dspace/dspace-postgres-pgcrypto::${DSPACE_VER:-latest}-loadsql
image: "${DOCKER_REGISTRY:-docker.io}/${DOCKER_OWNER:-dspace}/dspace-postgres-pgcrypto:${DSPACE_VER:-dspace-8_x}-loadsql"
environment:
# This LOADSQL should be kept in sync with the URL in DSpace/DSpace
# This SQL is available from https://github.com/DSpace-Labs/AIP-Files/releases/tag/demo-entities-data
# NOTE: currently there is no dspace8 version
- LOADSQL=https://github.com/DSpace-Labs/AIP-Files/releases/download/demo-entities-data/dspace7-entities-data.sql
dspace:
### OVERRIDE default 'entrypoint' in 'docker-compose-rest.yml' ####
@@ -34,4 +35,4 @@ services:
- |
while (!</dev/tcp/dspacedb/5432) > /dev/null 2>&1; do sleep 1; done;
/dspace/bin/dspace database migrate ignored
java -jar /dspace/webapps/server-boot.jar --dspace.dir=/dspace
java -jar /dspace/webapps/server-boot.jar --dspace.dir=/dspace

View File

@@ -33,7 +33,7 @@ services:
# This allows us to generate statistics in e2e tests so that statistics pages can be tested thoroughly.
solr__D__statistics__P__autoCommit: 'false'
LOGGING_CONFIG: /dspace/config/log4j2-container.xml
image: "${DOCKER_OWNER:-dspace}/dspace:${DSPACE_VER:-latest-test}"
image: "${DOCKER_REGISTRY:-docker.io}/${DOCKER_OWNER:-dspace}/dspace:${DSPACE_VER:-dspace-8_x-test}"
depends_on:
- dspacedb
networks:
@@ -60,11 +60,12 @@ services:
# NOTE: This is customized to use our loadsql image, so that we are using a database with existing test data
dspacedb:
container_name: dspacedb
image: "${DOCKER_OWNER:-dspace}/dspace-postgres-pgcrypto:${DSPACE_VER:-latest}-loadsql"
image: "${DOCKER_REGISTRY:-docker.io}/${DOCKER_OWNER:-dspace}/dspace-postgres-pgcrypto:${DSPACE_VER:-dspace-8_x}-loadsql"
environment:
# This LOADSQL should be kept in sync with the LOADSQL in
# https://github.com/DSpace/DSpace/blob/main/dspace/src/main/docker-compose/db.entities.yml
# This SQL is available from https://github.com/DSpace-Labs/AIP-Files/releases/tag/demo-entities-data
# NOTE: currently there is no dspace8 version
LOADSQL: https://github.com/DSpace-Labs/AIP-Files/releases/download/demo-entities-data/dspace7-entities-data.sql
PGDATA: /pgdata
POSTGRES_PASSWORD: dspace
@@ -81,7 +82,7 @@ services:
# DSpace Solr container
dspacesolr:
container_name: dspacesolr
image: "${DOCKER_OWNER:-dspace}/dspace-solr:${DSPACE_VER:-latest}"
image: "${DOCKER_REGISTRY:-docker.io}/${DOCKER_OWNER:-dspace}/dspace-solr:${DSPACE_VER:-dspace-8_x}"
networks:
- dspacenet
ports:

View File

@@ -26,7 +26,7 @@ services:
DSPACE_REST_HOST: sandbox.dspace.org
DSPACE_REST_PORT: 443
DSPACE_REST_NAMESPACE: /server
image: dspace/dspace-angular:${DSPACE_VER:-latest}-dist
image: "${DOCKER_REGISTRY:-docker.io}/${DOCKER_OWNER:-dspace}/dspace-angular:${DSPACE_VER:-dspace-8_x}-dist"
build:
context: ..
dockerfile: Dockerfile.dist

View File

@@ -40,7 +40,7 @@ services:
# from the host machine. This IP range MUST correspond to the 'dspacenet' subnet defined above.
proxies__P__trusted__P__ipranges: '172.23.0'
LOGGING_CONFIG: /dspace/config/log4j2-container.xml
image: "${DOCKER_OWNER:-dspace}/dspace:${DSPACE_VER:-latest-test}"
image: "${DOCKER_REGISTRY:-docker.io}/${DOCKER_OWNER:-dspace}/dspace:${DSPACE_VER:-dspace-8_x-test}"
depends_on:
- dspacedb
networks:
@@ -68,7 +68,7 @@ services:
dspacedb:
container_name: dspacedb
# Uses a custom Postgres image with pgcrypto installed
image: "${DOCKER_OWNER:-dspace}/dspace-postgres-pgcrypto:${DSPACE_VER:-latest}"
image: "${DOCKER_REGISTRY:-docker.io}/${DOCKER_OWNER:-dspace}/dspace-postgres-pgcrypto:${DSPACE_VER:-dspace-8_x}"
environment:
PGDATA: /pgdata
POSTGRES_PASSWORD: dspace
@@ -85,7 +85,7 @@ services:
# DSpace Solr container
dspacesolr:
container_name: dspacesolr
image: "${DOCKER_OWNER:-dspace}/dspace-solr:${DSPACE_VER:-latest}"
image: "${DOCKER_REGISTRY:-docker.io}/${DOCKER_OWNER:-dspace}/dspace-solr:${DSPACE_VER:-dspace-8_x}"
networks:
- dspacenet
ports:
@@ -101,7 +101,7 @@ services:
# * First, run precreate-core to create the core (if it doesn't yet exist). If exists already, this is a no-op
# * Second, copy configsets to this core:
# Updates to Solr configs require the container to be rebuilt/restarted:
# `docker-compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml up -d --build dspacesolr`
# `docker compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml up -d --build dspacesolr`
entrypoint:
- /bin/bash
- '-c'

View File

@@ -23,7 +23,7 @@ services:
DSPACE_REST_HOST: localhost
DSPACE_REST_PORT: 8080
DSPACE_REST_NAMESPACE: /server
image: dspace/dspace-angular:${DSPACE_VER:-latest}
image: "${DOCKER_REGISTRY:-docker.io}/${DOCKER_OWNER:-dspace}/dspace-angular:${DSPACE_VER:-dspace-8_x}"
build:
context: ..
dockerfile: Dockerfile

View File

@@ -2,3 +2,4 @@
_______
- [`dspace-angular-html/themed-component-usages`](./rules/themed-component-usages.md): Themeable components should be used via the selector of their `ThemedComponent` wrapper class
- [`dspace-angular-html/no-disabled-attribute-on-button`](./rules/no-disabled-attribute-on-button.md): Buttons should use the `dsBtnDisabled` directive instead of the HTML `disabled` attribute.

View File

@@ -0,0 +1,78 @@
[DSpace ESLint plugins](../../../../lint/README.md) > [HTML rules](../index.md) > `dspace-angular-html/no-disabled-attribute-on-button`
_______
Buttons should use the `dsBtnDisabled` directive instead of the HTML `disabled` attribute.
This should be done to ensure that users with a screen reader are able to understand that the a button button is present, and that it is disabled.
The native html disabled attribute does not allow users to navigate to the button by keyboard, and thus they have no way of knowing that the button is present.
_______
[Source code](../../../../lint/src/rules/html/no-disabled-attribute-on-button.ts)
### Examples
#### Valid code
##### should use [dsBtnDisabled] in HTML templates
```html
<button [dsBtnDisabled]="true">Submit</button>
```
##### disabled attribute is still valid on non-button elements
```html
<input disabled>
```
##### [disabled] attribute is still valid on non-button elements
```html
<input [disabled]="true">
```
##### angular dynamic attributes that use disabled are still valid
```html
<button [class.disabled]="isDisabled">Submit</button>
```
#### Invalid code &amp; automatic fixes
##### should not use disabled attribute in HTML templates
```html
<button disabled>Submit</button>
```
Will produce the following error(s):
```
Buttons should use the `dsBtnDisabled` directive instead of the `disabled` attribute.
```
Result of `yarn lint --fix`:
```html
<button [dsBtnDisabled]="true">Submit</button>
```
##### should not use [disabled] attribute in HTML templates
```html
<button [disabled]="true">Submit</button>
```
Will produce the following error(s):
```
Buttons should use the `dsBtnDisabled` directive instead of the `disabled` attribute.
```
Result of `yarn lint --fix`:
```html
<button [dsBtnDisabled]="true">Submit</button>
```

View File

@@ -10,10 +10,13 @@ import {
bundle,
RuleExports,
} from '../../util/structure';
import * as noDisabledAttributeOnButton from './no-disabled-attribute-on-button';
import * as themedComponentUsages from './themed-component-usages';
const index = [
themedComponentUsages,
noDisabledAttributeOnButton,
] as unknown as RuleExports[];
export = {

View File

@@ -0,0 +1,147 @@
import {
TmplAstBoundAttribute,
TmplAstTextAttribute,
} from '@angular-eslint/bundled-angular-compiler';
import { TemplateParserServices } from '@angular-eslint/utils';
import {
ESLintUtils,
TSESLint,
} from '@typescript-eslint/utils';
import {
DSpaceESLintRuleInfo,
NamedTests,
} from '../../util/structure';
import { getSourceCode } from '../../util/typescript';
export enum Message {
USE_DSBTN_DISABLED = 'mustUseDsBtnDisabled',
}
export const info = {
name: 'no-disabled-attribute-on-button',
meta: {
docs: {
description: `Buttons should use the \`dsBtnDisabled\` directive instead of the HTML \`disabled\` attribute.
This should be done to ensure that users with a screen reader are able to understand that the a button button is present, and that it is disabled.
The native html disabled attribute does not allow users to navigate to the button by keyboard, and thus they have no way of knowing that the button is present.`,
},
type: 'problem',
fixable: 'code',
schema: [],
messages: {
[Message.USE_DSBTN_DISABLED]: 'Buttons should use the `dsBtnDisabled` directive instead of the `disabled` attribute.',
},
},
defaultOptions: [],
} as DSpaceESLintRuleInfo;
export const rule = ESLintUtils.RuleCreator.withoutDocs({
...info,
create(context: TSESLint.RuleContext<Message, unknown[]>) {
const parserServices = getSourceCode(context).parserServices as TemplateParserServices;
/**
* Some dynamic angular inputs will have disabled as name because of how Angular handles this internally (e.g [class.disabled]="isDisabled")
* But these aren't actually the disabled attribute we're looking for, we can determine this by checking the details of the keySpan
*/
function isOtherAttributeDisabled(node: TmplAstBoundAttribute | TmplAstTextAttribute): boolean {
// if the details are not null, and the details are not 'disabled', then it's not the disabled attribute we're looking for
return node.keySpan?.details !== null && node.keySpan?.details !== 'disabled';
}
/**
* Replace the disabled text with [dsBtnDisabled] in the template
*/
function replaceDisabledText(text: string ): string {
const hasBrackets = text.includes('[') && text.includes(']');
const newDisabledText = hasBrackets ? 'dsBtnDisabled' : '[dsBtnDisabled]="true"';
return text.replace('disabled', newDisabledText);
}
function inputIsChildOfButton(node: any): boolean {
return (node.parent?.tagName === 'button' || node.parent?.name === 'button');
}
function reportAndFix(node: TmplAstBoundAttribute | TmplAstTextAttribute) {
if (!inputIsChildOfButton(node) || isOtherAttributeDisabled(node)) {
return;
}
const sourceSpan = node.sourceSpan;
context.report({
messageId: Message.USE_DSBTN_DISABLED,
loc: parserServices.convertNodeSourceSpanToLoc(sourceSpan),
fix(fixer) {
const templateText = sourceSpan.start.file.content;
const disabledText = templateText.slice(sourceSpan.start.offset, sourceSpan.end.offset);
const newText = replaceDisabledText(disabledText);
return fixer.replaceTextRange([sourceSpan.start.offset, sourceSpan.end.offset], newText);
},
});
}
return {
'BoundAttribute[name="disabled"]'(node: TmplAstBoundAttribute) {
reportAndFix(node);
},
'TextAttribute[name="disabled"]'(node: TmplAstTextAttribute) {
reportAndFix(node);
},
};
},
});
export const tests = {
plugin: info.name,
valid: [
{
name: 'should use [dsBtnDisabled] in HTML templates',
code: `
<button [dsBtnDisabled]="true">Submit</button>
`,
},
{
name: 'disabled attribute is still valid on non-button elements',
code: `
<input disabled>
`,
},
{
name: '[disabled] attribute is still valid on non-button elements',
code: `
<input [disabled]="true">
`,
},
{
name: 'angular dynamic attributes that use disabled are still valid',
code: `
<button [class.disabled]="isDisabled">Submit</button>
`,
},
],
invalid: [
{
name: 'should not use disabled attribute in HTML templates',
code: `
<button disabled>Submit</button>
`,
errors: [{ messageId: Message.USE_DSBTN_DISABLED }],
output: `
<button [dsBtnDisabled]="true">Submit</button>
`,
},
{
name: 'should not use [disabled] attribute in HTML templates',
code: `
<button [disabled]="true">Submit</button>
`,
errors: [{ messageId: Message.USE_DSBTN_DISABLED }],
output: `
<button [dsBtnDisabled]="true">Submit</button>
`,
},
],
} as NamedTests;
export default rule;

View File

@@ -7,10 +7,8 @@
*/
import { TmplAstElement } from '@angular-eslint/bundled-angular-compiler';
import { TemplateParserServices } from '@angular-eslint/utils';
import {
ESLintUtils,
TSESLint,
} from '@typescript-eslint/utils';
import { ESLintUtils } from '@typescript-eslint/utils';
import { RuleContext } from '@typescript-eslint/utils/ts-eslint';
import { fixture } from '../../../test/fixture';
import {
@@ -52,7 +50,7 @@ The only exception to this rule are unit tests, where we may want to use the bas
export const rule = ESLintUtils.RuleCreator.withoutDocs({
...info,
create(context: TSESLint.RuleContext<Message, unknown[]>) {
create(context: RuleContext<Message, unknown[]>) {
if (getFilename(context).includes('.spec.ts')) {
// skip inline templates in unit tests
return {};

View File

@@ -7,9 +7,9 @@
*/
import {
ESLintUtils,
TSESLint,
TSESTree,
} from '@typescript-eslint/utils';
import { RuleContext } from '@typescript-eslint/utils/ts-eslint';
import { fixture } from '../../../test/fixture';
import {
@@ -57,7 +57,7 @@ export const info = {
export const rule = ESLintUtils.RuleCreator.withoutDocs({
...info,
create(context: TSESLint.RuleContext<Message, unknown[]>) {
create(context: RuleContext<Message, unknown[]>) {
const filename = getFilename(context);
if (filename.endsWith('.spec.ts')) {

View File

@@ -7,9 +7,9 @@
*/
import {
ESLintUtils,
TSESLint,
TSESTree,
} from '@typescript-eslint/utils';
import { RuleContext } from '@typescript-eslint/utils/ts-eslint';
import { fixture } from '../../../test/fixture';
import { getComponentSelectorNode } from '../../util/angular';
@@ -58,7 +58,7 @@ Unit tests are exempt from this rule, because they may redefine components using
export const rule = ESLintUtils.RuleCreator.withoutDocs({
...info,
create(context: TSESLint.RuleContext<Message, unknown[]>) {
create(context: RuleContext<Message, unknown[]>) {
const filename = getFilename(context);
if (filename.endsWith('.spec.ts')) {

View File

@@ -7,9 +7,9 @@
*/
import {
ESLintUtils,
TSESLint,
TSESTree,
} from '@typescript-eslint/utils';
import { RuleContext } from '@typescript-eslint/utils/ts-eslint';
import { fixture } from '../../../test/fixture';
import {
@@ -68,7 +68,7 @@ There are a few exceptions where the base class can still be used:
export const rule = ESLintUtils.RuleCreator.withoutDocs({
...info,
create(context: TSESLint.RuleContext<Message, unknown[]>) {
create(context: RuleContext<Message, unknown[]>) {
const filename = getFilename(context);
function handleUnthemedUsagesInTypescript(node: TSESTree.Identifier) {

View File

@@ -5,13 +5,17 @@
*
* http://www.dspace.org/license/
*/
import { TSESLint } from '@typescript-eslint/utils';
import { RuleTester } from 'eslint';
import {
InvalidTestCase,
RuleMetaData,
RuleModule,
ValidTestCase,
} from '@typescript-eslint/utils/ts-eslint';
import { EnumType } from 'typescript';
export type Meta = TSESLint.RuleMetaData<string>;
export type Valid = TSESLint.ValidTestCase<unknown[]> | RuleTester.ValidTestCase;
export type Invalid = TSESLint.InvalidTestCase<string, unknown[]> | RuleTester.InvalidTestCase;
export type Meta = RuleMetaData<string, unknown[]>;
export type Valid = ValidTestCase<unknown[]>;
export type Invalid = InvalidTestCase<string, unknown[]>;
export interface DSpaceESLintRuleInfo {
name: string;
@@ -28,7 +32,7 @@ export interface NamedTests {
export interface RuleExports {
Message: EnumType,
info: DSpaceESLintRuleInfo,
rule: TSESLint.RuleModule<string>,
rule: RuleModule<string>,
tests: NamedTests,
default: unknown,
}

View File

@@ -5,17 +5,18 @@
*
* http://www.dspace.org/license/
*/
import { TSESTree } from '@typescript-eslint/utils';
import {
TSESLint,
TSESTree,
} from '@typescript-eslint/utils';
RuleContext,
SourceCode,
} from '@typescript-eslint/utils/ts-eslint';
import {
match,
toUnixStylePath,
} from './misc';
export type AnyRuleContext = TSESLint.RuleContext<string, unknown[]>;
export type AnyRuleContext = RuleContext<string, unknown[]>;
/**
* Return the current filename based on the ESLint rule context as a Unix-style path.
@@ -27,7 +28,7 @@ export function getFilename(context: AnyRuleContext): string {
return toUnixStylePath(context.getFilename());
}
export function getSourceCode(context: AnyRuleContext): TSESLint.SourceCode {
export function getSourceCode(context: AnyRuleContext): SourceCode {
// TSESLint claims this is deprecated, but the suggested alternative is undefined (could be a version mismatch between ESLint and TSESlint?)
// eslint-disable-next-line deprecation/deprecation
return context.getSourceCode();

View File

@@ -7,7 +7,7 @@
*/
import { RuleTester as TypeScriptRuleTester } from '@typescript-eslint/rule-tester';
import { RuleTester } from 'eslint';
import { RuleTester } from '@typescript-eslint/utils/ts-eslint';
import { themeableComponents } from '../src/util/theme-support';
import {

View File

@@ -1,6 +1,6 @@
{
"name": "dspace-angular",
"version": "8.0.0",
"version": "8.3.0-next",
"scripts": {
"ng": "ng",
"config:watch": "nodemon",
@@ -12,7 +12,6 @@
"preserve": "yarn base-href",
"serve": "ts-node --project ./tsconfig.ts-node.json scripts/serve.ts",
"serve:ssr": "node dist/server/main",
"analyze": "webpack-bundle-analyzer dist/browser/stats.json",
"build": "ng build --configuration development",
"build:stats": "ng build --stats-json",
"build:prod": "cross-env NODE_ENV=production yarn run build:ssr",
@@ -55,11 +54,6 @@
"https": false
},
"private": true,
"resolutions": {
"minimist": "^1.2.5",
"webdriver-manager": "^12.1.8",
"ts-node": "10.2.1"
},
"dependencies": {
"@angular/animations": "^17.3.11",
"@angular/cdk": "^17.3.10",
@@ -67,16 +61,14 @@
"@angular/compiler": "^17.3.11",
"@angular/core": "^17.3.11",
"@angular/forms": "^17.3.11",
"@angular/localize": "17.3.11",
"@angular/localize": "17.3.12",
"@angular/platform-browser": "^17.3.11",
"@angular/platform-browser-dynamic": "^17.3.11",
"@angular/platform-server": "^17.3.11",
"@angular/router": "^17.3.11",
"@angular/ssr": "^17.3.8",
"@babel/runtime": "7.21.0",
"@angular/ssr": "^17.3.17",
"@babel/runtime": "7.28.4",
"@kolkov/ngx-gallery": "^2.0.1",
"@material-ui/core": "^4.11.0",
"@material-ui/icons": "^4.11.3",
"@ng-bootstrap/ng-bootstrap": "^11.0.0",
"@ng-dynamic-forms/core": "^16.0.0",
"@ng-dynamic-forms/ui-ng-bootstrap": "^16.0.0",
@@ -85,108 +77,103 @@
"@ngrx/store": "^17.1.1",
"@ngx-translate/core": "^14.0.0",
"@nicky-lenaers/ngx-scroll-to": "^14.0.0",
"@types/grecaptcha": "^3.0.4",
"angular-idle-preload": "3.0.0",
"angulartics2": "^12.2.0",
"axios": "^1.6.0",
"axios": "^1.11.0",
"bootstrap": "^4.6.1",
"cerialize": "0.1.18",
"cli-progress": "^3.12.0",
"colors": "^1.4.0",
"compression": "^1.7.4",
"cookie-parser": "1.4.6",
"core-js": "^3.30.1",
"compression": "^1.8.1",
"cookie-parser": "1.4.7",
"core-js": "^3.45.1",
"date-fns": "^2.29.3",
"date-fns-tz": "^1.3.7",
"deepmerge": "^4.3.1",
"ejs": "^3.1.10",
"express": "^4.19.2",
"express": "^4.21.2",
"express-rate-limit": "^5.1.3",
"fast-json-patch": "^3.1.1",
"filesize": "^6.1.0",
"http-proxy-middleware": "^1.0.5",
"http-proxy-middleware": "^2.0.9",
"http-terminator": "^3.2.0",
"isbot": "^3.6.10",
"isbot": "^5.1.30",
"js-cookie": "2.2.1",
"js-yaml": "^4.1.0",
"json5": "^2.2.3",
"jsonschema": "1.4.1",
"jsonschema": "1.5.0",
"jwt-decode": "^3.1.2",
"klaro": "^0.7.18",
"lodash": "^4.17.21",
"lru-cache": "^7.14.1",
"markdown-it": "^13.0.1",
"mirador": "^3.3.0",
"mirador": "^3.4.3",
"mirador-dl-plugin": "^0.13.0",
"mirador-share-plugin": "^0.11.0",
"morgan": "^1.10.0",
"ng-mocks": "^14.10.0",
"mirador-share-plugin": "^0.16.0",
"morgan": "^1.10.1",
"ng2-file-upload": "5.0.0",
"ng2-nouislider": "^2.0.0",
"ngx-infinite-scroll": "^16.0.0",
"ngx-pagination": "6.0.3",
"ngx-skeleton-loader": "^9.0.0",
"ngx-ui-switch": "^14.1.0",
"nouislider": "^15.7.1",
"pem": "1.14.7",
"prop-types": "^15.8.1",
"react-copy-to-clipboard": "^5.1.0",
"reflect-metadata": "^0.1.13",
"rxjs": "^7.8.0",
"sanitize-html": "^2.12.1",
"sortablejs": "1.15.0",
"pem": "1.14.8",
"reflect-metadata": "^0.2.2",
"rxjs": "^7.8.2",
"uuid": "^8.3.2",
"webfontloader": "1.6.28",
"zone.js": "~0.14.4"
"zone.js": "~0.14.0"
},
"devDependencies": {
"@angular-builders/custom-webpack": "~17.0.2",
"@angular-devkit/build-angular": "^17.3.8",
"@angular-eslint/builder": "17.2.1",
"@angular-eslint/bundled-angular-compiler": "17.2.1",
"@angular-eslint/eslint-plugin": "17.2.1",
"@angular-eslint/eslint-plugin-template": "17.2.1",
"@angular-eslint/schematics": "17.2.1",
"@angular-eslint/template-parser": "17.2.1",
"@angular/cli": "^17.3.8",
"@angular-devkit/build-angular": "^17.3.17",
"@angular-eslint/builder": "17.5.3",
"@angular-eslint/bundled-angular-compiler": "17.5.3",
"@angular-eslint/eslint-plugin": "17.5.3",
"@angular-eslint/eslint-plugin-template": "17.5.3",
"@angular-eslint/schematics": "17.5.3",
"@angular-eslint/template-parser": "17.5.3",
"@angular/cli": "^17.3.17",
"@angular/compiler-cli": "^17.3.11",
"@angular/language-service": "^17.3.11",
"@cypress/schematic": "^1.5.0",
"@fortawesome/fontawesome-free": "^6.4.0",
"@fortawesome/fontawesome-free": "^6.7.2",
"@material-ui/core": "^4.12.4",
"@material-ui/icons": "^4.11.3",
"@ngrx/store-devtools": "^17.1.1",
"@ngtools/webpack": "^16.2.12",
"@types/deep-freeze": "0.1.2",
"@ngtools/webpack": "^16.2.16",
"@types/deep-freeze": "0.1.5",
"@types/ejs": "^3.1.2",
"@types/express": "^4.17.17",
"@types/grecaptcha": "^3.0.9",
"@types/jasmine": "~3.6.0",
"@types/js-cookie": "2.2.6",
"@types/lodash": "^4.14.194",
"@types/lodash": "^4.17.20",
"@types/node": "^14.14.9",
"@types/sanitize-html": "^2.9.0",
"@typescript-eslint/eslint-plugin": "^7.2.0",
"@typescript-eslint/parser": "^7.2.0",
"@typescript-eslint/rule-tester": "^7.2.0",
"@typescript-eslint/utils": "^7.2.0",
"axe-core": "^4.7.2",
"browser-sync": "^3.0.0",
"axe-core": "^4.10.3",
"compression-webpack-plugin": "^9.2.0",
"copy-webpack-plugin": "^6.4.1",
"cross-env": "^7.0.3",
"cypress": "12.17.4",
"cypress-axe": "^1.4.0",
"csstype": "^3.1.3",
"cypress": "^13.17.0",
"cypress-axe": "^1.7.0",
"deep-freeze": "0.0.1",
"eslint": "^8.39.0",
"eslint-plugin-deprecation": "^1.4.1",
"eslint-plugin-dspace-angular-html": "link:./lint/dist/src/rules/html",
"eslint-plugin-dspace-angular-ts": "link:./lint/dist/src/rules/ts",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-import": "^2.32.0",
"eslint-plugin-import-newlines": "^1.3.1",
"eslint-plugin-jsdoc": "^45.0.0",
"eslint-plugin-jsonc": "^2.6.0",
"eslint-plugin-jsonc": "^2.20.1",
"eslint-plugin-lodash": "^7.4.0",
"eslint-plugin-rxjs": "^5.0.3",
"eslint-plugin-simple-import-sort": "^10.0.0",
"eslint-plugin-unused-imports": "^2.0.0",
"express-static-gzip": "^2.1.7",
"eslint-plugin-unused-imports": "^3.2.0",
"express-static-gzip": "^2.2.0",
"jasmine": "^3.8.0",
"jasmine-core": "^3.8.0",
"jasmine-marbles": "0.9.2",
@@ -196,26 +183,25 @@
"karma-jasmine": "~4.0.0",
"karma-jasmine-html-reporter": "^1.5.0",
"karma-mocha-reporter": "2.2.5",
"ng-mocks": "^14.13.5",
"ngx-mask": "14.2.4",
"nodemon": "^2.0.22",
"postcss": "^8.4",
"postcss-apply": "0.12.0",
"postcss": "^8.5",
"postcss-import": "^14.0.0",
"postcss-loader": "^4.0.3",
"postcss-preset-env": "^7.4.2",
"postcss-responsive-type": "1.0.0",
"prop-types": "^15.8.1",
"react": "^16.14.0",
"react-copy-to-clipboard": "^5.1.0",
"react-dom": "^16.14.0",
"rimraf": "^3.0.2",
"rxjs-spy": "^8.0.2",
"sass": "~1.62.0",
"sass": "~1.92.1",
"sass-loader": "^12.6.0",
"sass-resources-loader": "^2.2.5",
"ts-node": "^8.10.2",
"typescript": "~5.3.3",
"webpack": "5.90.3",
"webpack-bundle-analyzer": "^4.8.0",
"typescript": "~5.4.5",
"webpack": "5.101.0",
"webpack-cli": "^5.1.4",
"webpack-dev-server": "^4.15.1"
"webpack-dev-server": "^5.2.2"
}
}

View File

@@ -1,8 +1,6 @@
module.exports = {
plugins: [
require('postcss-import')(),
require('postcss-preset-env')(),
require('postcss-apply')(),
require('postcss-responsive-type')()
require('postcss-preset-env')()
]
};

View File

@@ -27,7 +27,7 @@ import * as expressStaticGzip from 'express-static-gzip';
/* eslint-enable import/no-namespace */
import axios from 'axios';
import LRU from 'lru-cache';
import isbot from 'isbot';
import { isbot } from 'isbot';
import { createCertificate } from 'pem';
import { createServer } from 'https';
import { json } from 'body-parser';
@@ -58,6 +58,7 @@ import {
REQUEST,
RESPONSE,
} from './src/express.tokens';
import { SsrExcludePatterns } from "./src/config/ssr-config.interface";
/*
* Set path for the browser application's dist folder
@@ -81,6 +82,9 @@ let anonymousCache: LRU<string, any>;
// extend environment with app config for server
extendEnvironmentWithAppConfig(environment, appConfig);
// The REST server base URL
const REST_BASE_URL = environment.rest.ssrBaseUrl || environment.rest.baseUrl;
// The Express app is exported so that it can be used by serverless Functions.
export function app() {
@@ -156,7 +160,7 @@ export function app() {
* Proxy the sitemaps
*/
router.use('/sitemap**', createProxyMiddleware({
target: `${environment.rest.baseUrl}/sitemaps`,
target: `${REST_BASE_URL}/sitemaps`,
pathRewrite: path => path.replace(environment.ui.nameSpace, '/'),
changeOrigin: true,
}));
@@ -165,7 +169,7 @@ export function app() {
* Proxy the linksets
*/
router.use('/signposting**', createProxyMiddleware({
target: `${environment.rest.baseUrl}`,
target: `${REST_BASE_URL}`,
pathRewrite: path => path.replace(environment.ui.nameSpace, '/'),
changeOrigin: true,
}));
@@ -218,7 +222,7 @@ export function app() {
* The callback function to serve server side angular
*/
function ngApp(req, res, next) {
if (environment.ssr.enabled) {
if (environment.ssr.enabled && req.method === 'GET' && (req.path === '/' || !isExcludedFromSsr(req.path, environment.ssr.excludePathPatterns))) {
// Render the page to user via SSR (server side rendering)
serverSideRender(req, res, next);
} else {
@@ -265,7 +269,18 @@ function serverSideRender(req, res, next, sendToUser: boolean = true) {
],
})
.then((html) => {
// If headers were already sent, then do nothing else, it is probably a
// redirect response
if (res.headersSent) {
return;
}
if (hasValue(html)) {
// Replace REST URL with UI URL
if (environment.ssr.replaceRestUrl && REST_BASE_URL !== environment.rest.baseUrl) {
html = html.replace(new RegExp(REST_BASE_URL, 'g'), environment.rest.baseUrl);
}
// save server side rendered page to cache (if any are enabled)
saveToCache(req, html);
if (sendToUser) {
@@ -552,8 +567,8 @@ function createHttpsServer(keys) {
* Create an HTTP server with the configured port and host.
*/
function run() {
const port = environment.ui.port || 4000;
const host = environment.ui.host || '/';
const port = environment.ui.port;
const host = environment.ui.host;
// Start up the Node server
const server = app();
@@ -619,11 +634,26 @@ function start() {
}
}
/**
* Check if SSR should be skipped for path
*
* @param path
* @param excludePathPattern
*/
function isExcludedFromSsr(path: string, excludePathPattern: SsrExcludePatterns[]): boolean {
const patterns = excludePathPattern.map(p =>
new RegExp(p.pattern, p.flag || '')
);
return patterns.some((regex) => {
return regex.test(path)
});
}
/*
* The callback function to serve health check requests
*/
function healthCheck(req, res) {
const baseUrl = `${environment.rest.baseUrl}${environment.actuators.endpointPath}`;
const baseUrl = `${REST_BASE_URL}${environment.actuators.endpointPath}`;
axios.get(baseUrl)
.then((response) => {
res.status(response.status).send(response.data);

View File

@@ -10,7 +10,7 @@
<button class="btn btn-outline-primary mr-3" (click)="reset()">
{{ 'access-control-cancel' | translate }}
</button>
<button class="btn btn-primary" [disabled]="!canExport()" (click)="submit()">
<button class="btn btn-primary" [dsBtnDisabled]="!canExport()" (click)="submit()">
{{ 'access-control-execute' | translate }}
</button>
</div>

View File

@@ -1,4 +1,7 @@
import { NO_ERRORS_SCHEMA } from '@angular/core';
import {
Component,
NO_ERRORS_SCHEMA,
} from '@angular/core';
import {
ComponentFixture,
TestBed,
@@ -62,10 +65,17 @@ describe('BulkAccessComponent', () => {
'file': { },
};
const mockSettings: any = jasmine.createSpyObj('AccessControlFormContainerComponent', {
getValue: jasmine.createSpy('getValue'),
reset: jasmine.createSpy('reset'),
});
@Component({
selector: 'ds-bulk-access-settings',
template: '',
exportAs: 'dsBulkSettings',
standalone: true,
})
class MockBulkAccessSettingsComponent {
isFormValid = jasmine.createSpy('isFormValid').and.returnValue(false);
getValue = jasmine.createSpy('getValue');
reset = jasmine.createSpy('reset');
}
const selection: any[] = [{ indexableObject: { uuid: '1234' } }, { indexableObject: { uuid: '5678' } }];
const selectableListState: SelectableListState = { id: 'test', selection };
const expectedIdList = ['1234', '5678'];
@@ -93,6 +103,9 @@ describe('BulkAccessComponent', () => {
BulkAccessSettingsComponent,
],
},
add: {
imports: [MockBulkAccessSettingsComponent],
},
})
.compileComponents();
});
@@ -109,13 +122,12 @@ describe('BulkAccessComponent', () => {
fixture.destroy();
});
describe('when there are no elements selected', () => {
describe('when there are no elements selected and step two form is invalid', () => {
beforeEach(() => {
(component as any).selectableListService.getSelectableList.and.returnValue(of(selectableListStateEmpty));
fixture.detectChanges();
component.settings = mockSettings;
});
it('should create', () => {
@@ -138,7 +150,6 @@ describe('BulkAccessComponent', () => {
(component as any).selectableListService.getSelectableList.and.returnValue(of(selectableListState));
fixture.detectChanges();
component.settings = mockSettings;
});
it('should create', () => {
@@ -149,15 +160,29 @@ describe('BulkAccessComponent', () => {
expect(component.objectsSelected$.value).toEqual(expectedIdList);
});
it('should enable the execute button when there are objects selected', () => {
it('should not enable the execute button when there are objects selected and step two form is invalid', () => {
component.objectsSelected$.next(['1234']);
expect(component.canExport()).toBe(true);
expect(component.canExport()).toBe(false);
});
it('should call the settings reset method when reset is called', () => {
component.reset();
expect(component.settings.reset).toHaveBeenCalled();
});
});
describe('when there are elements selected and the step two form is valid', () => {
beforeEach(() => {
(component as any).selectableListService.getSelectableList.and.returnValue(of(selectableListState));
fixture.detectChanges();
(component as any).settings.isFormValid.and.returnValue(true);
});
it('should enable the execute button when there are objects selected and step two form is valid', () => {
component.objectsSelected$.next(['1234']);
expect(component.canExport()).toBe(true);
});
it('should call the bulkAccessControlService executeScript method when submit is called', () => {
(component.settings as any).getValue.and.returnValue(mockFormState);

View File

@@ -1,4 +1,5 @@
import {
ChangeDetectionStrategy,
Component,
OnInit,
ViewChild,
@@ -14,6 +15,7 @@ import {
} from 'rxjs/operators';
import { BulkAccessControlService } from '../../shared/access-control-form-container/bulk-access-control.service';
import { BtnDisabledDirective } from '../../shared/btn-disabled.directive';
import { SelectableListState } from '../../shared/object-list/selectable-list/selectable-list.reducer';
import { SelectableListService } from '../../shared/object-list/selectable-list/selectable-list.service';
import { BulkAccessBrowseComponent } from './browse/bulk-access-browse.component';
@@ -27,8 +29,10 @@ import { BulkAccessSettingsComponent } from './settings/bulk-access-settings.com
TranslateModule,
BulkAccessSettingsComponent,
BulkAccessBrowseComponent,
BtnDisabledDirective,
],
standalone: true,
changeDetection: ChangeDetectionStrategy.OnPush,
})
export class BulkAccessComponent implements OnInit {
@@ -68,7 +72,7 @@ export class BulkAccessComponent implements OnInit {
}
canExport(): boolean {
return this.objectsSelected$.value?.length > 0;
return this.objectsSelected$.value?.length > 0 && this.settings?.isFormValid();
}
/**

View File

@@ -43,4 +43,8 @@ export class BulkAccessSettingsComponent {
this.controlForm.reset();
}
isFormValid() {
return this.controlForm.isValid();
}
}

View File

@@ -61,7 +61,7 @@
</thead>
<tbody>
<tr *ngFor="let epersonDto of (ePeopleDto$ | async)?.page"
[ngClass]="{'table-primary' : isActive(epersonDto.eperson) | async}">
[ngClass]="{'table-primary' : (activeEPerson$ | async) === epersonDto.eperson}">
<td>{{epersonDto.eperson.id}}</td>
<td>{{ dsoNameService.getName(epersonDto.eperson) }}</td>
<td>{{epersonDto.eperson.email}}</td>

View File

@@ -42,6 +42,7 @@ import { EPersonDataService } from '../../core/eperson/eperson-data.service';
import { EPerson } from '../../core/eperson/models/eperson.model';
import { PaginationService } from '../../core/pagination/pagination.service';
import { PageInfo } from '../../core/shared/page-info.model';
import { BtnDisabledDirective } from '../../shared/btn-disabled.directive';
import { FormBuilderService } from '../../shared/form/builder/form-builder.service';
import { ThemedLoadingComponent } from '../../shared/loading/themed-loading.component';
import { getMockFormBuilderService } from '../../shared/mocks/form-builder-service.mock';
@@ -151,7 +152,7 @@ describe('EPeopleRegistryComponent', () => {
paginationService = new PaginationServiceStub();
TestBed.configureTestingModule({
imports: [CommonModule, NgbModule, FormsModule, ReactiveFormsModule, BrowserModule, RouterTestingModule.withRoutes([]),
TranslateModule.forRoot(), EPeopleRegistryComponent],
TranslateModule.forRoot(), EPeopleRegistryComponent, BtnDisabledDirective],
providers: [
{ provide: EPersonDataService, useValue: ePersonDataServiceStub },
{ provide: NotificationsService, useValue: new NotificationsServiceStub() },

View File

@@ -100,6 +100,8 @@ export class EPeopleRegistryComponent implements OnInit, OnDestroy {
*/
ePeopleDto$: BehaviorSubject<PaginatedList<EpersonDtoModel>> = new BehaviorSubject<PaginatedList<EpersonDtoModel>>({} as any);
activeEPerson$: Observable<EPerson>;
/**
* An observable for the pageInfo, needed to pass to the pagination component
*/
@@ -165,6 +167,7 @@ export class EPeopleRegistryComponent implements OnInit, OnDestroy {
initialisePage() {
this.searching$.next(true);
this.search({ scope: this.currentSearchScope, query: this.currentSearchQuery });
this.activeEPerson$ = this.epersonService.getActiveEPerson();
this.subs.push(this.ePeople$.pipe(
switchMap((epeople: PaginatedList<EPerson>) => {
if (epeople.pageInfo.totalElements > 0) {
@@ -232,23 +235,6 @@ export class EPeopleRegistryComponent implements OnInit, OnDestroy {
);
}
/**
* Checks whether the given EPerson is active (being edited)
* @param eperson
*/
isActive(eperson: EPerson): Observable<boolean> {
return this.getActiveEPerson().pipe(
map((activeEPerson) => eperson === activeEPerson),
);
}
/**
* Gets the active eperson (being edited)
*/
getActiveEPerson(): Observable<EPerson> {
return this.epersonService.getActiveEPerson();
}
/**
* Deletes EPerson, show notification on success/failure & updates EPeople list
*/

View File

@@ -2,7 +2,7 @@
<div class="group-form row">
<div class="col-12">
<div *ngIf="epersonService.getActiveEPerson() | async; then editHeader; else createHeader"></div>
<div *ngIf="activeEPerson$ | async; then editHeader; else createHeader"></div>
<ng-template #createHeader>
<h1 class="border-bottom pb-2">{{messagePrefix + '.create' | translate}}</h1>
@@ -25,7 +25,7 @@
</button>
</div>
<div *ngIf="displayResetPassword" between class="btn-group">
<button class="btn btn-primary" [disabled]="(canReset$ | async) !== true" type="button" (click)="resetPassword()">
<button class="btn btn-primary" [dsBtnDisabled]="(canReset$ | async) !== true" type="button" (click)="resetPassword()">
<i class="fa fa-key"></i> {{'admin.access-control.epeople.actions.reset' | translate}}
</button>
</div>
@@ -44,7 +44,7 @@
<ds-loading [showMessage]="false" *ngIf="!formGroup"></ds-loading>
<div *ngIf="epersonService.getActiveEPerson() | async">
<div *ngIf="activeEPerson$ | async">
<h2>{{messagePrefix + '.groupsEPersonIsMemberOf' | translate}}</h2>
<ds-loading [showMessage]="false" *ngIf="groups$ | async | dsHasNoValue"></ds-loading>
@@ -75,7 +75,9 @@
{{ dsoNameService.getName(group) }}
</a>
</td>
<td class="align-middle">{{ dsoNameService.getName(undefined) }}</td>
<td class="align-middle">
{{ dsoNameService.getName((group.object | async)?.payload) }}
</td>
</tr>
</tbody>
</table>

View File

@@ -1,5 +1,5 @@
import { CommonModule } from '@angular/common';
import { NO_ERRORS_SCHEMA } from '@angular/core';
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import {
ComponentFixture,
TestBed,
@@ -19,12 +19,10 @@ import {
import {
ActivatedRoute,
Router,
RouterModule,
} from '@angular/router';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
import {
TranslateLoader,
TranslateModule,
} from '@ngx-translate/core';
import { TranslateModule } from '@ngx-translate/core';
import {
Observable,
of as observableOf,
@@ -45,11 +43,11 @@ import { GroupDataService } from '../../../core/eperson/group-data.service';
import { EPerson } from '../../../core/eperson/models/eperson.model';
import { PaginationService } from '../../../core/pagination/pagination.service';
import { PageInfo } from '../../../core/shared/page-info.model';
import { BtnDisabledDirective } from '../../../shared/btn-disabled.directive';
import { FormBuilderService } from '../../../shared/form/builder/form-builder.service';
import { FormComponent } from '../../../shared/form/form.component';
import { ThemedLoadingComponent } from '../../../shared/loading/themed-loading.component';
import { getMockFormBuilderService } from '../../../shared/mocks/form-builder-service.mock';
import { TranslateLoaderMock } from '../../../shared/mocks/translate-loader.mock';
import { NotificationsService } from '../../../shared/notifications/notifications.service';
import { PaginationComponent } from '../../../shared/pagination/pagination.component';
import { createSuccessfulRemoteDataObject$ } from '../../../shared/remote-data.utils';
@@ -92,9 +90,6 @@ describe('EPersonFormComponent', () => {
ePersonDataServiceStub = {
activeEPerson: null,
allEpeople: mockEPeople,
getEPeople(): Observable<RemoteData<PaginatedList<EPerson>>> {
return createSuccessfulRemoteDataObject$(buildPaginatedList(null, this.allEpeople));
},
getActiveEPerson(): Observable<EPerson> {
return observableOf(this.activeEPerson);
},
@@ -227,13 +222,9 @@ describe('EPersonFormComponent', () => {
route = new ActivatedRouteStub();
router = new RouterStub();
TestBed.configureTestingModule({
imports: [CommonModule, NgbModule, FormsModule, ReactiveFormsModule, BrowserModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useClass: TranslateLoaderMock,
},
}),
imports: [CommonModule, NgbModule, FormsModule, ReactiveFormsModule, BtnDisabledDirective, BrowserModule,
RouterModule.forRoot([]),
TranslateModule.forRoot(),
EPersonFormComponent,
HasNoValuePipe,
],
@@ -251,7 +242,7 @@ describe('EPersonFormComponent', () => {
{ provide: Router, useValue: router },
EPeopleRegistryComponent,
],
schemas: [NO_ERRORS_SCHEMA],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
})
.overrideComponent(EPersonFormComponent, {
remove: { imports: [ ThemedLoadingComponent, PaginationComponent,FormComponent] },
@@ -274,37 +265,13 @@ describe('EPersonFormComponent', () => {
});
describe('check form validation', () => {
let firstName;
let lastName;
let email;
let canLogIn;
let requireCertificate;
let canLogIn: boolean;
let requireCertificate: boolean;
let expected;
beforeEach(() => {
firstName = 'testName';
lastName = 'testLastName';
email = 'testEmail@test.com';
canLogIn = false;
requireCertificate = false;
expected = Object.assign(new EPerson(), {
metadata: {
'eperson.firstname': [
{
value: firstName,
},
],
'eperson.lastname': [
{
value: lastName,
},
],
},
email: email,
canLogIn: canLogIn,
requireCertificate: requireCertificate,
});
spyOn(component.submitForm, 'emit');
component.canLogIn.value = canLogIn;
component.requireCertificate.value = requireCertificate;
@@ -378,15 +345,13 @@ describe('EPersonFormComponent', () => {
expect(component.formGroup.controls.email.errors.emailTaken).toBeTruthy();
});
});
});
describe('when submitting the form', () => {
let firstName;
let lastName;
let email;
let canLogIn;
let canLogIn: boolean;
let requireCertificate;
let expected;
@@ -415,6 +380,7 @@ describe('EPersonFormComponent', () => {
requireCertificate: requireCertificate,
});
spyOn(component.submitForm, 'emit');
component.ngOnInit();
component.firstName.value = firstName;
component.lastName.value = lastName;
component.email.value = email;
@@ -454,9 +420,17 @@ describe('EPersonFormComponent', () => {
email: email,
canLogIn: canLogIn,
requireCertificate: requireCertificate,
_links: undefined,
_links: {
groups: {
href: '',
},
self: {
href: '',
},
},
});
spyOn(ePersonDataServiceStub, 'getActiveEPerson').and.returnValue(observableOf(expectedWithId));
component.ngOnInit();
component.onSubmit();
fixture.detectChanges();
});
@@ -504,22 +478,19 @@ describe('EPersonFormComponent', () => {
});
describe('delete', () => {
let ePersonId;
let eperson: EPerson;
let modalService;
beforeEach(() => {
spyOn(authService, 'impersonate').and.callThrough();
ePersonId = 'testEPersonId';
eperson = EPersonMock;
component.epersonInitial = eperson;
component.canDelete$ = observableOf(true);
spyOn(component.epersonService, 'getActiveEPerson').and.returnValue(observableOf(eperson));
modalService = (component as any).modalService;
spyOn(modalService, 'open').and.returnValue(Object.assign({ componentInstance: Object.assign({ response: observableOf(true) }) }));
component.ngOnInit();
fixture.detectChanges();
});
it('the delete button should be visible if the ePerson can be deleted', () => {
@@ -546,7 +517,8 @@ describe('EPersonFormComponent', () => {
// ePersonDataServiceStub.activeEPerson = eperson;
spyOn(component.epersonService, 'deleteEPerson').and.returnValue(createSuccessfulRemoteDataObject$('No Content', 204));
const deleteButton = fixture.debugElement.query(By.css('.delete-button'));
expect(deleteButton.nativeElement.disabled).toBe(false);
expect(deleteButton.nativeElement.getAttribute('aria-disabled')).toBeNull();
expect(deleteButton.nativeElement.classList.contains('disabled')).toBeFalse();
deleteButton.triggerEventHandler('click', null);
fixture.detectChanges();
expect(component.epersonService.deleteEPerson).toHaveBeenCalledWith(eperson);

View File

@@ -1,6 +1,5 @@
import {
AsyncPipe,
NgClass,
NgFor,
NgIf,
} from '@angular/common';
@@ -65,6 +64,7 @@ import {
import { PageInfo } from '../../../core/shared/page-info.model';
import { Registration } from '../../../core/shared/registration.model';
import { TYPE_REQUEST_FORGOT } from '../../../register-email-form/register-email-form.component';
import { BtnDisabledDirective } from '../../../shared/btn-disabled.directive';
import { ConfirmationModalComponent } from '../../../shared/confirmation-modal/confirmation-modal.component';
import { hasValue } from '../../../shared/empty.util';
import { FormBuilderService } from '../../../shared/form/builder/form-builder.service';
@@ -87,11 +87,11 @@ import { ValidateEmailNotTaken } from './validators/email-taken.validator';
NgFor,
AsyncPipe,
TranslateModule,
NgClass,
ThemedLoadingComponent,
PaginationComponent,
RouterLink,
HasNoValuePipe,
BtnDisabledDirective,
],
standalone: true,
})
@@ -189,6 +189,11 @@ export class EPersonFormComponent implements OnInit, OnDestroy {
*/
canImpersonate$: Observable<boolean>;
/**
* The current {@link EPerson}
*/
activeEPerson$: Observable<EPerson>;
/**
* List of subscriptions
*/
@@ -254,7 +259,11 @@ export class EPersonFormComponent implements OnInit, OnDestroy {
protected route: ActivatedRoute,
protected router: Router,
) {
this.subs.push(this.epersonService.getActiveEPerson().subscribe((eperson: EPerson) => {
}
ngOnInit() {
this.activeEPerson$ = this.epersonService.getActiveEPerson();
this.subs.push(this.activeEPerson$.subscribe((eperson: EPerson) => {
this.epersonInitial = eperson;
if (hasValue(eperson)) {
this.isImpersonated = this.authService.isImpersonatingUser(eperson.id);
@@ -262,9 +271,6 @@ export class EPersonFormComponent implements OnInit, OnDestroy {
this.submitLabel = 'form.submit';
}
}));
}
ngOnInit() {
this.initialisePage();
}
@@ -272,130 +278,121 @@ export class EPersonFormComponent implements OnInit, OnDestroy {
* This method will initialise the page
*/
initialisePage() {
this.subs.push(this.epersonService.findById(this.route.snapshot.params.id).subscribe((ePersonRD: RemoteData<EPerson>) => {
this.epersonService.editEPerson(ePersonRD.payload);
}));
observableCombineLatest([
this.translateService.get(`${this.messagePrefix}.firstName`),
this.translateService.get(`${this.messagePrefix}.lastName`),
this.translateService.get(`${this.messagePrefix}.email`),
this.translateService.get(`${this.messagePrefix}.canLogIn`),
this.translateService.get(`${this.messagePrefix}.requireCertificate`),
this.translateService.get(`${this.messagePrefix}.emailHint`),
]).subscribe(([firstName, lastName, email, canLogIn, requireCertificate, emailHint]) => {
this.firstName = new DynamicInputModel({
id: 'firstName',
label: firstName,
name: 'firstName',
validators: {
required: null,
},
required: true,
});
this.lastName = new DynamicInputModel({
id: 'lastName',
label: lastName,
name: 'lastName',
validators: {
required: null,
},
required: true,
});
this.email = new DynamicInputModel({
id: 'email',
label: email,
name: 'email',
validators: {
required: null,
pattern: '^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$',
},
required: true,
errorMessages: {
emailTaken: 'error.validation.emailTaken',
pattern: 'error.validation.NotValidEmail',
},
hint: emailHint,
});
this.canLogIn = new DynamicCheckboxModel(
{
id: 'canLogIn',
label: canLogIn,
name: 'canLogIn',
value: (this.epersonInitial != null ? this.epersonInitial.canLogIn : true),
});
this.requireCertificate = new DynamicCheckboxModel(
{
id: 'requireCertificate',
label: requireCertificate,
name: 'requireCertificate',
value: (this.epersonInitial != null ? this.epersonInitial.requireCertificate : false),
});
this.formModel = [
this.firstName,
this.lastName,
this.email,
this.canLogIn,
this.requireCertificate,
];
this.formGroup = this.formBuilderService.createFormGroup(this.formModel);
this.subs.push(this.epersonService.getActiveEPerson().subscribe((eperson: EPerson) => {
if (eperson != null) {
this.groups$ = this.groupsDataService.findListByHref(eperson._links.groups.href, {
currentPage: 1,
elementsPerPage: this.config.pageSize,
});
}
this.formGroup.patchValue({
firstName: eperson != null ? eperson.firstMetadataValue('eperson.firstname') : '',
lastName: eperson != null ? eperson.firstMetadataValue('eperson.lastname') : '',
email: eperson != null ? eperson.email : '',
canLogIn: eperson != null ? eperson.canLogIn : true,
requireCertificate: eperson != null ? eperson.requireCertificate : false,
});
if (eperson === null && !!this.formGroup.controls.email) {
this.formGroup.controls.email.setAsyncValidators(ValidateEmailNotTaken.createValidator(this.epersonService));
this.emailValueChangeSubscribe = this.email.valueChanges.pipe(debounceTime(300)).subscribe(() => {
this.changeDetectorRef.detectChanges();
});
}
if (this.route.snapshot.params.id) {
this.subs.push(this.epersonService.findById(this.route.snapshot.params.id).subscribe((ePersonRD: RemoteData<EPerson>) => {
this.epersonService.editEPerson(ePersonRD.payload);
}));
const activeEPerson$ = this.epersonService.getActiveEPerson();
this.groups$ = activeEPerson$.pipe(
switchMap((eperson) => {
return observableCombineLatest([observableOf(eperson), this.paginationService.getFindListOptions(this.config.id, {
currentPage: 1,
elementsPerPage: this.config.pageSize,
})]);
}),
switchMap(([eperson, findListOptions]) => {
if (eperson != null) {
return this.groupsDataService.findListByHref(eperson._links.groups.href, findListOptions, true, true, followLink('object'));
}
return observableOf(undefined);
}),
);
this.groupsPageInfoState$ = this.groups$.pipe(
map(groupsRD => groupsRD.payload.pageInfo),
);
this.canImpersonate$ = activeEPerson$.pipe(
switchMap((eperson) => {
if (hasValue(eperson)) {
return this.authorizationService.isAuthorized(FeatureID.LoginOnBehalfOf, eperson.self);
} else {
return observableOf(false);
}
}),
);
this.canDelete$ = activeEPerson$.pipe(
switchMap((eperson) => this.authorizationService.isAuthorized(FeatureID.CanDelete, hasValue(eperson) ? eperson.self : undefined)),
);
this.canReset$ = observableOf(true);
}
this.firstName = new DynamicInputModel({
id: 'firstName',
label: this.translateService.instant(`${this.messagePrefix}.firstName`),
name: 'firstName',
validators: {
required: null,
},
required: true,
});
this.lastName = new DynamicInputModel({
id: 'lastName',
label: this.translateService.instant(`${this.messagePrefix}.lastName`),
name: 'lastName',
validators: {
required: null,
},
required: true,
});
this.email = new DynamicInputModel({
id: 'email',
label: this.translateService.instant(`${this.messagePrefix}.email`),
name: 'email',
validators: {
required: null,
pattern: '^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$',
},
required: true,
errorMessages: {
emailTaken: 'error.validation.emailTaken',
pattern: 'error.validation.NotValidEmail',
},
hint: this.translateService.instant(`${this.messagePrefix}.emailHint`),
});
this.canLogIn = new DynamicCheckboxModel(
{
id: 'canLogIn',
label: this.translateService.instant(`${this.messagePrefix}.canLogIn`),
name: 'canLogIn',
value: (this.epersonInitial != null ? this.epersonInitial.canLogIn : true),
});
this.requireCertificate = new DynamicCheckboxModel(
{
id: 'requireCertificate',
label: this.translateService.instant(`${this.messagePrefix}.requireCertificate`),
name: 'requireCertificate',
value: (this.epersonInitial != null ? this.epersonInitial.requireCertificate : false),
});
this.formModel = [
this.firstName,
this.lastName,
this.email,
this.canLogIn,
this.requireCertificate,
];
this.formGroup = this.formBuilderService.createFormGroup(this.formModel);
this.subs.push(this.activeEPerson$.subscribe((eperson: EPerson) => {
if (eperson != null) {
this.groups$ = this.groupsDataService.findListByHref(eperson._links.groups.href, {
currentPage: 1,
elementsPerPage: this.config.pageSize,
}, undefined, undefined, followLink('object'));
}
this.formGroup.patchValue({
firstName: eperson != null ? eperson.firstMetadataValue('eperson.firstname') : '',
lastName: eperson != null ? eperson.firstMetadataValue('eperson.lastname') : '',
email: eperson != null ? eperson.email : '',
canLogIn: eperson != null ? eperson.canLogIn : true,
requireCertificate: eperson != null ? eperson.requireCertificate : false,
});
if (eperson === null && !!this.formGroup.controls.email) {
this.formGroup.controls.email.setAsyncValidators(ValidateEmailNotTaken.createValidator(this.epersonService));
this.emailValueChangeSubscribe = this.email.valueChanges.pipe(debounceTime(300)).subscribe(() => {
this.changeDetectorRef.detectChanges();
});
}
}));
this.groups$ = this.activeEPerson$.pipe(
switchMap((eperson) => {
return observableCombineLatest([observableOf(eperson), this.paginationService.getFindListOptions(this.config.id, {
currentPage: 1,
elementsPerPage: this.config.pageSize,
})]);
}),
switchMap(([eperson, findListOptions]) => {
if (eperson != null) {
return this.groupsDataService.findListByHref(eperson._links.groups.href, findListOptions, true, true, followLink('object'));
}
return observableOf(undefined);
}),
);
this.groupsPageInfoState$ = this.groups$.pipe(
map(groupsRD => groupsRD.payload.pageInfo),
);
this.canImpersonate$ = this.activeEPerson$.pipe(
switchMap((eperson) => {
if (hasValue(eperson)) {
return this.authorizationService.isAuthorized(FeatureID.LoginOnBehalfOf, eperson.self);
} else {
return observableOf(false);
}
}),
);
this.canDelete$ = this.activeEPerson$.pipe(
switchMap((eperson) => this.authorizationService.isAuthorized(FeatureID.CanDelete, hasValue(eperson) ? eperson.self : undefined)),
);
this.canReset$ = observableOf(true);
}
/**
@@ -414,7 +411,7 @@ export class EPersonFormComponent implements OnInit, OnDestroy {
* Emit the updated/created eperson using the EventEmitter submitForm
*/
onSubmit() {
this.epersonService.getActiveEPerson().pipe(take(1)).subscribe(
this.activeEPerson$.pipe(take(1)).subscribe(
(ePerson: EPerson) => {
const values = {
metadata: {
@@ -533,7 +530,7 @@ export class EPersonFormComponent implements OnInit, OnDestroy {
* It'll either show a success or error message depending on whether the delete was successful or not.
*/
delete(): void {
this.epersonService.getActiveEPerson().pipe(
this.activeEPerson$.pipe(
take(1),
switchMap((eperson: EPerson) => {
const modalRef = this.modalService.open(ConfirmationModalComponent);
@@ -637,7 +634,7 @@ export class EPersonFormComponent implements OnInit, OnDestroy {
* Update the list of groups by fetching it from the rest api or cache
*/
private updateGroups(options) {
this.subs.push(this.epersonService.getActiveEPerson().subscribe((eperson: EPerson) => {
this.subs.push(this.activeEPerson$.subscribe((eperson: EPerson) => {
this.groups$ = this.groupsDataService.findListByHref(eperson._links.groups.href, options);
}));
}

View File

@@ -2,7 +2,7 @@
<div class="group-form row">
<div class="col-12">
<div *ngIf="groupDataService.getActiveGroup() | async; then editHeader; else createHeader"></div>
<div *ngIf="activeGroup$ | async; then editHeader; else createHeader"></div>
<ng-template #createHeader>
<h1 class="border-bottom pb-2">{{messagePrefix + '.head.create' | translate}}</h1>
@@ -23,11 +23,15 @@
</h1>
</ng-template>
<ds-alert *ngIf="groupBeingEdited?.permanent" [type]="AlertTypeEnum.Warning"
[content]="messagePrefix + '.alert.permanent'"></ds-alert>
<ds-alert *ngIf="(canEdit$ | async) !== true && (groupDataService.getActiveGroup() | async)" [type]="AlertTypeEnum.Warning"
[content]="(messagePrefix + '.alert.workflowGroup' | translate:{ name: dsoNameService.getName((getLinkedDSO(groupBeingEdited) | async)?.payload), comcol: (getLinkedDSO(groupBeingEdited) | async)?.payload?.type, comcolEditRolesRoute: (getLinkedEditRolesRoute(groupBeingEdited) | async) })">
</ds-alert>
<ng-container *ngIf="(activeGroup$ | async) as groupBeingEdited">
<ds-alert *ngIf="groupBeingEdited?.permanent" [type]="AlertType.Warning"
[content]="messagePrefix + '.alert.permanent'"></ds-alert>
<ng-container *ngIf="(activeGroupLinkedDSO$ | async) as activeGroupLinkedDSO">
<ds-alert *ngIf="(canEdit$ | async) !== true" [type]="AlertType.Warning"
[content]="(messagePrefix + '.alert.workflowGroup' | translate:{ name: dsoNameService.getName(activeGroupLinkedDSO), comcol: activeGroupLinkedDSO.type, comcolEditRolesRoute: (linkedEditRolesRoute$ | async) })">
</ds-alert>
</ng-container>
</ng-container>
<ds-form [formId]="formId"
[formModel]="formModel"
@@ -39,22 +43,21 @@
<button (click)="onCancel()" type="button"
class="btn btn-outline-secondary"><i class="fas fa-arrow-left"></i> {{messagePrefix + '.return' | translate}}</button>
</div>
<div after *ngIf="(canEdit$ | async) && !groupBeingEdited?.permanent" class="btn-group">
<div after *ngIf="(canEdit$ | async) && !(activeGroup$ | async)?.permanent" class="btn-group">
<button (click)="delete()" class="btn btn-danger delete-button" type="button">
<i class="fa fa-trash"></i> {{ messagePrefix + '.actions.delete' | translate}}
</button>
</div>
</ds-form>
<div class="mb-5">
<ds-members-list *ngIf="groupBeingEdited !== undefined"
[messagePrefix]="messagePrefix + '.members-list'"></ds-members-list>
</div>
<ds-subgroups-list *ngIf="groupBeingEdited !== undefined"
[messagePrefix]="messagePrefix + '.subgroups-list'"></ds-subgroups-list>
<ng-container *ngIf="(activeGroup$ | async) as groupBeingEdited">
<div class="mb-5">
<ds-members-list *ngIf="groupBeingEdited !== undefined"
[messagePrefix]="messagePrefix + '.members-list'"></ds-members-list>
</div>
<ds-subgroups-list *ngIf="groupBeingEdited !== undefined"
[messagePrefix]="messagePrefix + '.subgroups-list'"></ds-subgroups-list>
</ng-container>
</div>
</div>
</div>

View File

@@ -1,6 +1,6 @@
import { CommonModule } from '@angular/common';
import { HttpClient } from '@angular/common/http';
import { NO_ERRORS_SCHEMA } from '@angular/core';
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import {
ComponentFixture,
TestBed,
@@ -23,11 +23,7 @@ import {
} from '@angular/router';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
import { Store } from '@ngrx/store';
import {
TranslateLoader,
TranslateModule,
TranslateService,
} from '@ngx-translate/core';
import { TranslateModule } from '@ngx-translate/core';
import { Operation } from 'fast-json-patch';
import {
Observable,
@@ -61,15 +57,14 @@ import { FormComponent } from '../../../shared/form/form.component';
import { DSONameServiceMock } from '../../../shared/mocks/dso-name.service.mock';
import { getMockFormBuilderService } from '../../../shared/mocks/form-builder-service.mock';
import { RouterMock } from '../../../shared/mocks/router.mock';
import { getMockTranslateService } from '../../../shared/mocks/translate.service.mock';
import { NotificationsService } from '../../../shared/notifications/notifications.service';
import { createSuccessfulRemoteDataObject$ } from '../../../shared/remote-data.utils';
import { ActivatedRouteStub } from '../../../shared/testing/active-router.stub';
import {
GroupMock,
GroupMock2,
} from '../../../shared/testing/group-mock';
import { NotificationsServiceStub } from '../../../shared/testing/notifications-service.stub';
import { TranslateLoaderMock } from '../../../shared/testing/translate-loader.mock';
import { GroupFormComponent } from './group-form.component';
import { MembersListComponent } from './members-list/members-list.component';
import { SubgroupsListComponent } from './subgroup-list/subgroups-list.component';
@@ -78,19 +73,19 @@ import { ValidateGroupExists } from './validators/group-exists.validator';
describe('GroupFormComponent', () => {
let component: GroupFormComponent;
let fixture: ComponentFixture<GroupFormComponent>;
let translateService: TranslateService;
let builderService: FormBuilderService;
let ePersonDataServiceStub: any;
let groupsDataServiceStub: any;
let dsoDataServiceStub: any;
let authorizationService: AuthorizationDataService;
let notificationService: NotificationsServiceStub;
let router;
let router: RouterMock;
let route: ActivatedRouteStub;
let groups;
let groupName;
let groupDescription;
let expected;
let groups: Group[];
let groupName: string;
let groupDescription: string;
let expected: Group;
beforeEach(waitForAsync(() => {
groups = [GroupMock, GroupMock2];
@@ -105,6 +100,15 @@ describe('GroupFormComponent', () => {
},
],
},
object: createSuccessfulRemoteDataObject$(undefined),
_links: {
self: {
href: 'group-selflink',
},
object: {
href: 'group-objectlink',
},
},
});
ePersonDataServiceStub = {};
groupsDataServiceStub = {
@@ -141,7 +145,14 @@ describe('GroupFormComponent', () => {
create(group: Group): Observable<RemoteData<Group>> {
this.allGroups = [...this.allGroups, group];
this.createdGroup = Object.assign({}, group, {
_links: { self: { href: 'group-selflink' } },
_links: {
self: {
href: 'group-selflink',
},
object: {
href: 'group-objectlink',
},
},
});
return createSuccessfulRemoteDataObject$(this.createdGroup);
},
@@ -223,17 +234,15 @@ describe('GroupFormComponent', () => {
return typeof value === 'object' && value !== null;
},
});
translateService = getMockTranslateService();
router = new RouterMock();
route = new ActivatedRouteStub();
notificationService = new NotificationsServiceStub();
return TestBed.configureTestingModule({
imports: [CommonModule, NgbModule, FormsModule, ReactiveFormsModule, BrowserModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useClass: TranslateLoaderMock,
},
}), GroupFormComponent],
TranslateModule.forRoot(),
GroupFormComponent,
],
providers: [
{ provide: DSONameService, useValue: new DSONameServiceMock() },
{ provide: EPersonDataService, useValue: ePersonDataServiceStub },
@@ -249,14 +258,11 @@ describe('GroupFormComponent', () => {
{ provide: Store, useValue: {} },
{ provide: RemoteDataBuildService, useValue: {} },
{ provide: HALEndpointService, useValue: {} },
{
provide: ActivatedRoute,
useValue: { data: observableOf({ dso: { payload: {} } }), params: observableOf({}) },
},
{ provide: ActivatedRoute, useValue: route },
{ provide: Router, useValue: router },
{ provide: AuthorizationDataService, useValue: authorizationService },
],
schemas: [NO_ERRORS_SCHEMA],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
})
.overrideComponent(GroupFormComponent, {
remove: { imports: [
@@ -279,8 +285,8 @@ describe('GroupFormComponent', () => {
describe('when submitting the form', () => {
beforeEach(() => {
spyOn(component.submitForm, 'emit');
component.groupName.value = groupName;
component.groupDescription.value = groupDescription;
component.groupName.setValue(groupName);
component.groupDescription.setValue(groupDescription);
});
describe('without active Group', () => {
beforeEach(() => {
@@ -288,14 +294,22 @@ describe('GroupFormComponent', () => {
fixture.detectChanges();
});
it('should emit a new group using the correct values', (async () => {
await fixture.whenStable().then(() => {
expect(component.submitForm.emit).toHaveBeenCalledWith(expected);
});
it('should emit a new group using the correct values', (() => {
expect(component.submitForm.emit).toHaveBeenCalledWith(jasmine.objectContaining({
name: groupName,
metadata: {
'dc.description': [
{
value: groupDescription,
},
],
},
}));
}));
});
describe('with active Group', () => {
let expected2;
let expected2: Group;
beforeEach(() => {
expected2 = Object.assign(new Group(), {
name: 'newGroupName',
@@ -306,15 +320,24 @@ describe('GroupFormComponent', () => {
},
],
},
object: createSuccessfulRemoteDataObject$(undefined),
_links: {
self: {
href: 'group-selflink',
},
object: {
href: 'group-objectlink',
},
},
});
spyOn(groupsDataServiceStub, 'getActiveGroup').and.returnValue(observableOf(expected));
spyOn(groupsDataServiceStub, 'patch').and.returnValue(createSuccessfulRemoteDataObject$(expected2));
component.groupName.value = 'newGroupName';
component.onSubmit();
fixture.detectChanges();
component.ngOnInit();
});
it('should edit with name and description operations', () => {
component.groupName.setValue('newGroupName');
component.onSubmit();
const operations = [{
op: 'add',
path: '/metadata/dc.description',
@@ -328,9 +351,8 @@ describe('GroupFormComponent', () => {
});
it('should edit with description operations', () => {
component.groupName.value = null;
component.groupName.setValue(null);
component.onSubmit();
fixture.detectChanges();
const operations = [{
op: 'add',
path: '/metadata/dc.description',
@@ -340,9 +362,9 @@ describe('GroupFormComponent', () => {
});
it('should edit with name operations', () => {
component.groupDescription.value = null;
component.groupName.setValue('newGroupName');
component.groupDescription.setValue(null);
component.onSubmit();
fixture.detectChanges();
const operations = [{
op: 'replace',
path: '/name',
@@ -351,12 +373,13 @@ describe('GroupFormComponent', () => {
expect(groupsDataServiceStub.patch).toHaveBeenCalledWith(expected, operations);
});
it('should emit the existing group using the correct new values', (async () => {
await fixture.whenStable().then(() => {
expect(component.submitForm.emit).toHaveBeenCalledWith(expected2);
});
}));
it('should emit the existing group using the correct new values', () => {
component.onSubmit();
expect(component.submitForm.emit).toHaveBeenCalledWith(expected2);
});
it('should emit success notification', () => {
component.onSubmit();
expect(notificationService.success).toHaveBeenCalled();
});
});
@@ -371,11 +394,8 @@ describe('GroupFormComponent', () => {
describe('check form validation', () => {
let groupCommunity;
beforeEach(() => {
groupName = 'testName';
groupCommunity = 'testgroupCommunity';
groupDescription = 'testgroupDescription';
expected = Object.assign(new Group(), {
@@ -387,8 +407,17 @@ describe('GroupFormComponent', () => {
},
],
},
_links: {
self: {
href: 'group-selflink',
},
object: {
href: 'group-objectlink',
},
},
});
spyOn(component.submitForm, 'emit');
spyOn(dsoDataServiceStub, 'findByHref').and.returnValue(observableOf(expected));
fixture.detectChanges();
component.initialisePage();
@@ -438,21 +467,20 @@ describe('GroupFormComponent', () => {
});
describe('delete', () => {
let deleteButton;
let deleteButton: HTMLButtonElement;
beforeEach(() => {
component.initialisePage();
component.canEdit$ = observableOf(true);
component.groupBeingEdited = {
beforeEach(async () => {
spyOn(groupsDataServiceStub, 'delete').and.callThrough();
component.activeGroup$ = observableOf({
id: 'active-group',
permanent: false,
} as Group;
} as Group);
component.canEdit$ = observableOf(true);
component.initialisePage();
fixture.detectChanges();
deleteButton = fixture.debugElement.query(By.css('.delete-button')).nativeElement;
spyOn(groupsDataServiceStub, 'delete').and.callThrough();
spyOn(groupsDataServiceStub, 'getActiveGroup').and.returnValue(observableOf({ id: 'active-group' }));
});
describe('if confirmed via modal', () => {

View File

@@ -11,7 +11,10 @@ import {
OnInit,
Output,
} from '@angular/core';
import { UntypedFormGroup } from '@angular/forms';
import {
AbstractControl,
UntypedFormGroup,
} from '@angular/forms';
import {
ActivatedRoute,
Router,
@@ -31,13 +34,10 @@ import { Operation } from 'fast-json-patch';
import {
combineLatest as observableCombineLatest,
Observable,
of as observableOf,
Subscription,
} from 'rxjs';
import {
catchError,
debounceTime,
filter,
map,
switchMap,
take,
@@ -53,7 +53,6 @@ import { FeatureID } from '../../../core/data/feature-authorization/feature-id';
import { PaginatedList } from '../../../core/data/paginated-list.model';
import { RemoteData } from '../../../core/data/remote-data';
import { RequestService } from '../../../core/data/request.service';
import { EPersonDataService } from '../../../core/eperson/eperson-data.service';
import { GroupDataService } from '../../../core/eperson/group-data.service';
import { Group } from '../../../core/eperson/models/group.model';
import { Collection } from '../../../core/shared/collection.model';
@@ -61,9 +60,9 @@ import { Community } from '../../../core/shared/community.model';
import { DSpaceObject } from '../../../core/shared/dspace-object.model';
import { NoContent } from '../../../core/shared/NoContent.model';
import {
getAllCompletedRemoteData,
getFirstCompletedRemoteData,
getFirstSucceededRemoteData,
getFirstSucceededRemoteDataPayload,
getRemoteDataPayload,
} from '../../../core/shared/operators';
import { AlertComponent } from '../../../shared/alert/alert.component';
@@ -117,9 +116,9 @@ export class GroupFormComponent implements OnInit, OnDestroy {
/**
* Dynamic models for the inputs of form
*/
groupName: DynamicInputModel;
groupCommunity: DynamicInputModel;
groupDescription: DynamicTextAreaModel;
groupName: AbstractControl;
groupCommunity: AbstractControl;
groupDescription: AbstractControl;
/**
* A list of all dynamic input models
@@ -162,21 +161,30 @@ export class GroupFormComponent implements OnInit, OnDestroy {
*/
subs: Subscription[] = [];
/**
* Group currently being edited
*/
groupBeingEdited: Group;
/**
* Observable whether or not the logged in user is allowed to delete the Group & doesn't have a linked object (community / collection linked to workspace group
*/
canEdit$: Observable<boolean>;
/**
* The AlertType enumeration
* @type {AlertType}
* The current {@link Group}
*/
public AlertTypeEnum = AlertType;
activeGroup$: Observable<Group>;
/**
* The current {@link Group}'s linked {@link Community}/{@link Collection}
*/
activeGroupLinkedDSO$: Observable<DSpaceObject>;
/**
* Link to the current {@link Group}'s {@link Community}/{@link Collection} edit role tab
*/
linkedEditRolesRoute$: Observable<string>;
/**
* The AlertType enumeration
*/
public readonly AlertType = AlertType;
/**
* Subscription to email field value change
@@ -186,126 +194,121 @@ export class GroupFormComponent implements OnInit, OnDestroy {
constructor(
public groupDataService: GroupDataService,
private ePersonDataService: EPersonDataService,
private dSpaceObjectDataService: DSpaceObjectDataService,
private formBuilderService: FormBuilderService,
private translateService: TranslateService,
private notificationsService: NotificationsService,
private route: ActivatedRoute,
protected dSpaceObjectDataService: DSpaceObjectDataService,
protected formBuilderService: FormBuilderService,
protected translateService: TranslateService,
protected notificationsService: NotificationsService,
protected route: ActivatedRoute,
protected router: Router,
private authorizationService: AuthorizationDataService,
private modalService: NgbModal,
protected authorizationService: AuthorizationDataService,
protected modalService: NgbModal,
public requestService: RequestService,
protected changeDetectorRef: ChangeDetectorRef,
public dsoNameService: DSONameService,
) {
}
ngOnInit() {
ngOnInit(): void {
if (this.route.snapshot.params.groupId !== 'newGroup') {
this.setActiveGroup(this.route.snapshot.params.groupId);
}
this.activeGroup$ = this.groupDataService.getActiveGroup();
this.activeGroupLinkedDSO$ = this.getActiveGroupLinkedDSO();
this.linkedEditRolesRoute$ = this.getLinkedEditRolesRoute();
this.canEdit$ = this.activeGroupLinkedDSO$.pipe(
switchMap((dso: DSpaceObject) => {
if (hasValue(dso)) {
return [false];
} else {
return this.activeGroup$.pipe(
hasValueOperator(),
switchMap((group: Group) => this.authorizationService.isAuthorized(FeatureID.CanDelete, group.self)),
);
}
}),
);
this.initialisePage();
}
initialisePage() {
this.subs.push(this.route.params.subscribe((params) => {
if (params.groupId !== 'newGroup') {
this.setActiveGroup(params.groupId);
}
}));
this.canEdit$ = this.groupDataService.getActiveGroup().pipe(
hasValueOperator(),
switchMap((group: Group) => {
return observableCombineLatest([
this.authorizationService.isAuthorized(FeatureID.CanDelete, isNotEmpty(group) ? group.self : undefined),
this.hasLinkedDSO(group),
]).pipe(
map(([isAuthorized, hasLinkedDSO]: [boolean, boolean]) => isAuthorized && !hasLinkedDSO),
);
const groupNameModel = new DynamicInputModel({
id: 'groupName',
label: this.translateService.instant(`${this.messagePrefix}.groupName`),
name: 'groupName',
validators: {
required: null,
},
required: true,
});
const groupCommunityModel = new DynamicInputModel({
id: 'groupCommunity',
label: this.translateService.instant(`${this.messagePrefix}.groupCommunity`),
name: 'groupCommunity',
required: false,
readOnly: true,
});
const groupDescriptionModel = new DynamicTextAreaModel({
id: 'groupDescription',
label: this.translateService.instant(`${this.messagePrefix}.groupDescription`),
name: 'groupDescription',
required: false,
spellCheck: environment.form.spellCheck,
});
this.formModel = [
groupNameModel,
groupDescriptionModel,
];
this.formGroup = this.formBuilderService.createFormGroup(this.formModel);
this.groupName = this.formGroup.get('groupName');
this.groupDescription = this.formGroup.get('groupDescription');
if (hasValue(this.groupName)) {
this.groupName.setAsyncValidators(ValidateGroupExists.createValidator(this.groupDataService));
this.groupNameValueChangeSubscribe = this.groupName.valueChanges.pipe(debounceTime(300)).subscribe(() => {
this.changeDetectorRef.detectChanges();
});
}
this.subs.push(
observableCombineLatest([
this.activeGroup$,
this.canEdit$,
this.activeGroupLinkedDSO$,
]).subscribe(([activeGroup, canEdit, linkedObject]) => {
if (activeGroup != null) {
// Disable group name exists validator
this.formGroup.controls.groupName.clearAsyncValidators();
if (isNotEmpty(linkedObject?.name)) {
if (!this.formGroup.controls.groupCommunity) {
this.formBuilderService.insertFormGroupControl(1, this.formGroup, this.formModel, groupCommunityModel);
this.groupDescription = this.formGroup.get('groupCommunity');
}
this.formGroup.patchValue({
groupName: activeGroup.name,
groupCommunity: linkedObject?.name ?? '',
groupDescription: activeGroup.firstMetadataValue('dc.description'),
});
} else {
this.formModel = [
groupNameModel,
groupDescriptionModel,
];
this.formGroup.patchValue({
groupName: activeGroup.name,
groupDescription: activeGroup.firstMetadataValue('dc.description'),
});
}
if (!canEdit || activeGroup.permanent) {
this.formGroup.disable();
} else {
this.formGroup.enable();
}
}
}),
);
observableCombineLatest([
this.translateService.get(`${this.messagePrefix}.groupName`),
this.translateService.get(`${this.messagePrefix}.groupCommunity`),
this.translateService.get(`${this.messagePrefix}.groupDescription`),
]).subscribe(([groupName, groupCommunity, groupDescription]) => {
this.groupName = new DynamicInputModel({
id: 'groupName',
label: groupName,
name: 'groupName',
validators: {
required: null,
},
required: true,
});
this.groupCommunity = new DynamicInputModel({
id: 'groupCommunity',
label: groupCommunity,
name: 'groupCommunity',
required: false,
readOnly: true,
});
this.groupDescription = new DynamicTextAreaModel({
id: 'groupDescription',
label: groupDescription,
name: 'groupDescription',
required: false,
spellCheck: environment.form.spellCheck,
});
this.formModel = [
this.groupName,
this.groupDescription,
];
this.formGroup = this.formBuilderService.createFormGroup(this.formModel);
if (this.formGroup.controls.groupName) {
this.formGroup.controls.groupName.setAsyncValidators(ValidateGroupExists.createValidator(this.groupDataService));
this.groupNameValueChangeSubscribe = this.groupName.valueChanges.pipe(debounceTime(300)).subscribe(() => {
this.changeDetectorRef.detectChanges();
});
}
this.subs.push(
observableCombineLatest([
this.groupDataService.getActiveGroup(),
this.canEdit$,
this.groupDataService.getActiveGroup()
.pipe(filter((activeGroup) => hasValue(activeGroup)),switchMap((activeGroup) => this.getLinkedDSO(activeGroup).pipe(getFirstSucceededRemoteDataPayload()))),
]).subscribe(([activeGroup, canEdit, linkedObject]) => {
if (activeGroup != null) {
// Disable group name exists validator
this.formGroup.controls.groupName.clearAsyncValidators();
this.groupBeingEdited = activeGroup;
if (linkedObject?.name) {
if (!this.formGroup.controls.groupCommunity) {
this.formBuilderService.insertFormGroupControl(1, this.formGroup, this.formModel, this.groupCommunity);
this.formGroup.patchValue({
groupName: activeGroup.name,
groupCommunity: linkedObject?.name ?? '',
groupDescription: activeGroup.firstMetadataValue('dc.description'),
});
}
} else {
this.formModel = [
this.groupName,
this.groupDescription,
];
this.formGroup.patchValue({
groupName: activeGroup.name,
groupDescription: activeGroup.firstMetadataValue('dc.description'),
});
}
setTimeout(() => {
if (!canEdit || activeGroup.permanent) {
this.formGroup.disable();
}
}, 200);
}
}),
);
});
}
/**
@@ -324,9 +327,9 @@ export class GroupFormComponent implements OnInit, OnDestroy {
* Emit the updated/created eperson using the EventEmitter submitForm
*/
onSubmit() {
this.groupDataService.getActiveGroup().pipe(take(1)).subscribe(
(group: Group) => {
const values = {
this.activeGroup$.pipe(take(1)).subscribe((group: Group) => {
if (group === null) {
this.createNewGroup({
name: this.groupName.value,
metadata: {
'dc.description': [
@@ -335,14 +338,11 @@ export class GroupFormComponent implements OnInit, OnDestroy {
},
],
},
};
if (group === null) {
this.createNewGroup(values);
} else {
this.editGroup(group);
}
},
);
});
} else {
this.editGroup(group);
}
});
}
/**
@@ -448,7 +448,7 @@ export class GroupFormComponent implements OnInit, OnDestroy {
* @param groupSelfLink SelfLink of group to set as active
*/
setActiveGroupWithLink(groupSelfLink: string) {
this.groupDataService.getActiveGroup().pipe(take(1)).subscribe((activeGroup: Group) => {
this.activeGroup$.pipe(take(1)).subscribe((activeGroup: Group) => {
if (activeGroup === null) {
this.groupDataService.cancelEditGroup();
this.groupDataService.findByHref(groupSelfLink, false, false, followLink('subgroups'), followLink('epersons'), followLink('object'))
@@ -467,7 +467,7 @@ export class GroupFormComponent implements OnInit, OnDestroy {
* It'll either show a success or error message depending on whether the delete was successful or not.
*/
delete() {
this.groupDataService.getActiveGroup().pipe(take(1)).subscribe((group: Group) => {
this.activeGroup$.pipe(take(1)).subscribe((group: Group) => {
const modalRef = this.modalService.open(ConfirmationModalComponent);
modalRef.componentInstance.name = this.dsoNameService.getName(group);
modalRef.componentInstance.headerLabel = this.messagePrefix + '.delete-group.modal.header';
@@ -504,59 +504,45 @@ export class GroupFormComponent implements OnInit, OnDestroy {
this.groupDataService.cancelEditGroup();
this.subs.filter((sub) => hasValue(sub)).forEach((sub) => sub.unsubscribe());
if ( hasValue(this.groupNameValueChangeSubscribe) ) {
if (hasValue(this.groupNameValueChangeSubscribe)) {
this.groupNameValueChangeSubscribe.unsubscribe();
}
}
/**
* Check if group has a linked object (community or collection linked to a workflow group)
* @param group
* Get the active {@link Group}'s linked object if it has one ({@link Community} or {@link Collection} linked to a
* workflow group)
*/
hasLinkedDSO(group: Group): Observable<boolean> {
if (hasValue(group) && hasValue(group._links.object.href)) {
return this.getLinkedDSO(group).pipe(
map((rd: RemoteData<DSpaceObject>) => {
return hasValue(rd) && hasValue(rd.payload);
}),
catchError(() => observableOf(false)),
);
}
getActiveGroupLinkedDSO(): Observable<DSpaceObject> {
return this.activeGroup$.pipe(
hasValueOperator(),
switchMap((group: Group) => {
if (group.object === undefined) {
return this.dSpaceObjectDataService.findByHref(group._links.object.href);
}
return group.object;
}),
getAllCompletedRemoteData(),
getRemoteDataPayload(),
);
}
/**
* Get group's linked object if it has one (community or collection linked to a workflow group)
* @param group
* Get the route to the edit roles tab of the active {@link Group}'s linked object (community or collection linked
* to a workflow group) if it has one
*/
getLinkedDSO(group: Group): Observable<RemoteData<DSpaceObject>> {
if (hasValue(group) && hasValue(group._links.object.href)) {
if (group.object === undefined) {
return this.dSpaceObjectDataService.findByHref(group._links.object.href);
}
return group.object;
}
}
/**
* Get the route to the edit roles tab of the group's linked object (community or collection linked to a workflow group) if it has one
* @param group
*/
getLinkedEditRolesRoute(group: Group): Observable<string> {
if (hasValue(group) && hasValue(group._links.object.href)) {
return this.getLinkedDSO(group).pipe(
map((rd: RemoteData<DSpaceObject>) => {
if (hasValue(rd) && hasValue(rd.payload)) {
const dso = rd.payload;
switch ((dso as any).type) {
case Community.type.value:
return getCommunityEditRolesRoute(rd.payload.id);
case Collection.type.value:
return getCollectionEditRolesRoute(rd.payload.id);
}
}
}),
);
}
getLinkedEditRolesRoute(): Observable<string> {
return this.activeGroupLinkedDSO$.pipe(
hasValueOperator(),
map((dso: DSpaceObject) => {
switch ((dso as any).type) {
case Community.type.value:
return getCommunityEditRolesRoute(dso.id);
case Collection.type.value:
return getCollectionEditRolesRoute(dso.id);
}
}),
);
}
}

View File

@@ -35,14 +35,14 @@
<div class="btn-group edit-field">
<button (click)="deleteMemberFromGroup(epersonDTO.eperson)"
*ngIf="epersonDTO.ableToDelete"
[disabled]="actionConfig.remove.disabled"
[dsBtnDisabled]="actionConfig.remove.disabled"
[ngClass]="['btn btn-sm', actionConfig.remove.css]"
title="{{messagePrefix + '.table.edit.buttons.remove' | translate: { name: dsoNameService.getName(epersonDTO.eperson) } }}">
<i [ngClass]="actionConfig.remove.icon"></i>
</button>
<button *ngIf="!epersonDTO.ableToDelete"
(click)="addMemberToGroup(epersonDTO.eperson)"
[disabled]="actionConfig.add.disabled"
[dsBtnDisabled]="actionConfig.add.disabled"
[ngClass]="['btn btn-sm', actionConfig.add.css]"
title="{{messagePrefix + '.table.edit.buttons.add' | translate: { name: dsoNameService.getName(epersonDTO.eperson) } }}">
<i [ngClass]="actionConfig.add.icon"></i>
@@ -122,7 +122,7 @@
<td class="align-middle">
<div class="btn-group edit-field">
<button (click)="addMemberToGroup(eperson)"
[disabled]="actionConfig.add.disabled"
[dsBtnDisabled]="actionConfig.add.disabled"
[ngClass]="['btn btn-sm', actionConfig.add.css]"
title="{{messagePrefix + '.table.edit.buttons.add' | translate: { name: dsoNameService.getName(eperson) } }}">
<i [ngClass]="actionConfig.add.icon"></i>

View File

@@ -54,6 +54,7 @@ import {
getFirstCompletedRemoteData,
getRemoteDataPayload,
} from '../../../../core/shared/operators';
import { BtnDisabledDirective } from '../../../../shared/btn-disabled.directive';
import { ContextHelpDirective } from '../../../../shared/context-help.directive';
import { NotificationsService } from '../../../../shared/notifications/notifications.service';
import { PaginationComponent } from '../../../../shared/pagination/pagination.component';
@@ -113,6 +114,7 @@ export interface EPersonListActionConfig {
RouterLink,
NgClass,
NgForOf,
BtnDisabledDirective,
],
standalone: true,
})

View File

@@ -69,7 +69,7 @@
<i class="fas fa-edit fa-fw"></i>
</button>
<button *ngSwitchCase="false"
[disabled]="true"
[dsBtnDisabled]="true"
class="btn btn-outline-primary btn-sm btn-edit"
placement="left"
[ngbTooltip]="'admin.access-control.epeople.table.edit.buttons.edit-disabled' | translate"

View File

@@ -50,6 +50,7 @@ import { RouteService } from '../../core/services/route.service';
import { DSpaceObject } from '../../core/shared/dspace-object.model';
import { NoContent } from '../../core/shared/NoContent.model';
import { PageInfo } from '../../core/shared/page-info.model';
import { BtnDisabledDirective } from '../../shared/btn-disabled.directive';
import {
DSONameServiceMock,
UNDEFINED_NAME,
@@ -208,6 +209,7 @@ describe('GroupsRegistryComponent', () => {
imports: [CommonModule, NgbModule, FormsModule, ReactiveFormsModule, BrowserModule,
TranslateModule.forRoot(),
GroupsRegistryComponent,
BtnDisabledDirective,
],
providers: [GroupsRegistryComponent,
{ provide: DSONameService, useValue: new DSONameServiceMock() },
@@ -278,7 +280,8 @@ describe('GroupsRegistryComponent', () => {
const editButtonsFound = fixture.debugElement.queryAll(By.css('#groups tr td:nth-child(5) button.btn-edit'));
expect(editButtonsFound.length).toEqual(2);
editButtonsFound.forEach((editButtonFound) => {
expect(editButtonFound.nativeElement.disabled).toBeFalse();
expect(editButtonFound.nativeElement.getAttribute('aria-disabled')).toBeNull();
expect(editButtonFound.nativeElement.classList.contains('disabled')).toBeFalse();
});
});
@@ -312,7 +315,8 @@ describe('GroupsRegistryComponent', () => {
const editButtonsFound = fixture.debugElement.queryAll(By.css('#groups tr td:nth-child(5) button.btn-edit'));
expect(editButtonsFound.length).toEqual(2);
editButtonsFound.forEach((editButtonFound) => {
expect(editButtonFound.nativeElement.disabled).toBeFalse();
expect(editButtonFound.nativeElement.getAttribute('aria-disabled')).toBeNull();
expect(editButtonFound.nativeElement.classList.contains('disabled')).toBeFalse();
});
});
});
@@ -331,7 +335,8 @@ describe('GroupsRegistryComponent', () => {
const editButtonsFound = fixture.debugElement.queryAll(By.css('#groups tr td:nth-child(5) button.btn-edit'));
expect(editButtonsFound.length).toEqual(2);
editButtonsFound.forEach((editButtonFound) => {
expect(editButtonFound.nativeElement.disabled).toBeTrue();
expect(editButtonFound.nativeElement.getAttribute('aria-disabled')).toBe('true');
expect(editButtonFound.nativeElement.classList.contains('disabled')).toBeTrue();
});
});
});

View File

@@ -62,6 +62,7 @@ import {
getRemoteDataPayload,
} from '../../core/shared/operators';
import { PageInfo } from '../../core/shared/page-info.model';
import { BtnDisabledDirective } from '../../shared/btn-disabled.directive';
import { hasValue } from '../../shared/empty.util';
import { ThemedLoadingComponent } from '../../shared/loading/themed-loading.component';
import { NotificationsService } from '../../shared/notifications/notifications.service';
@@ -84,6 +85,7 @@ import { followLink } from '../../shared/utils/follow-link-config.model';
NgSwitchCase,
NgbTooltipModule,
NgForOf,
BtnDisabledDirective,
],
standalone: true,
})

View File

@@ -0,0 +1,11 @@
import { Config } from '../../config/config.interface';
/**
* Configuration interface used by the AccessibilitySettingsService
*/
export class AccessibilitySettingsConfig implements Config {
/**
* The duration in days after which the accessibility settings cookie expires
*/
cookieExpirationDuration: number;
}

View File

@@ -0,0 +1,419 @@
import {
fakeAsync,
flush,
} from '@angular/core/testing';
import { of } from 'rxjs';
import { AppConfig } from '../../config/app-config.interface';
import { AuthService } from '../core/auth/auth.service';
import { EPersonDataService } from '../core/eperson/eperson-data.service';
import { EPerson } from '../core/eperson/models/eperson.model';
import { CookieService } from '../core/services/cookie.service';
import { KlaroServiceStub } from '../shared/cookies/klaro.service.stub';
import { CookieServiceMock } from '../shared/mocks/cookie.service.mock';
import {
createFailedRemoteDataObject$,
createSuccessfulRemoteDataObject$,
} from '../shared/remote-data.utils';
import { AuthServiceStub } from '../shared/testing/auth-service.stub';
import {
ACCESSIBILITY_COOKIE,
ACCESSIBILITY_SETTINGS_METADATA_KEY,
AccessibilitySettings,
AccessibilitySettingsFormValues,
AccessibilitySettingsService,
FullAccessibilitySettings,
} from './accessibility-settings.service';
describe('accessibilitySettingsService', () => {
let service: AccessibilitySettingsService;
let cookieService: CookieServiceMock;
let authService: AuthServiceStub;
let ePersonService: EPersonDataService;
let klaroService: KlaroServiceStub;
let appConfig: AppConfig;
beforeEach(() => {
cookieService = new CookieServiceMock();
authService = new AuthServiceStub();
klaroService = new KlaroServiceStub();
appConfig = { accessibility: { cookieExpirationDuration: 10 } } as AppConfig;
klaroService.getSavedPreferences.and.returnValue(of({ accessibility: true }));
ePersonService = jasmine.createSpyObj('ePersonService', {
createPatchFromCache: of([{
op: 'add',
value: null,
}]),
patch: of({}),
});
service = new AccessibilitySettingsService(
cookieService as unknown as CookieService,
authService as unknown as AuthService,
ePersonService,
klaroService,
appConfig,
);
});
describe('get', () => {
it('should return the setting if it is set', () => {
const settings: AccessibilitySettings = {
notificationTimeOut: '1000',
};
service.getAll = jasmine.createSpy('getAll').and.returnValue(of(settings));
service.get('notificationTimeOut', 'default').subscribe(value =>
expect(value).toEqual('1000'),
);
});
it('should return the default value if the setting is not set', () => {
const settings: AccessibilitySettings = {
notificationTimeOut: '1000',
};
service.getAll = jasmine.createSpy('getAll').and.returnValue(of(settings));
service.get('liveRegionTimeOut', 'default').subscribe(value =>
expect(value).toEqual('default'),
);
});
});
describe('getAsNumber', () => {
it('should return the setting as number if the value for the setting can be parsed to a number', () => {
service.get = jasmine.createSpy('get').and.returnValue(of('1000'));
service.getAsNumber('notificationTimeOut').subscribe(value =>
expect(value).toEqual(1000),
);
});
it('should return the default value if no value is set for the setting', () => {
service.get = jasmine.createSpy('get').and.returnValue(of(null));
service.getAsNumber('notificationTimeOut', 123).subscribe(value =>
expect(value).toEqual(123),
);
});
it('should return the default value if the value for the setting can not be parsed to a number', () => {
service.get = jasmine.createSpy('get').and.returnValue(of('text'));
service.getAsNumber('notificationTimeOut', 123).subscribe(value =>
expect(value).toEqual(123),
);
});
});
describe('getAll', () => {
it('should attempt to get the settings from metadata first', () => {
service.getAllSettingsFromAuthenticatedUserMetadata =
jasmine.createSpy('getAllSettingsFromAuthenticatedUserMetadata').and.returnValue(of({ }));
service.getAll().subscribe();
expect(service.getAllSettingsFromAuthenticatedUserMetadata).toHaveBeenCalled();
});
it('should attempt to get the settings from the cookie if the settings from metadata are empty', () => {
service.getAllSettingsFromAuthenticatedUserMetadata =
jasmine.createSpy('getAllSettingsFromAuthenticatedUserMetadata').and.returnValue(of({ }));
service.getAllSettingsFromCookie = jasmine.createSpy('getAllSettingsFromCookie').and.returnValue({ });
service.getAll().subscribe();
expect(service.getAllSettingsFromCookie).toHaveBeenCalled();
});
it('should not attempt to get the settings from the cookie if the settings from metadata are not empty', () => {
const settings: AccessibilitySettings = {
notificationTimeOut: '1000',
};
service.getAllSettingsFromAuthenticatedUserMetadata =
jasmine.createSpy('getAllSettingsFromAuthenticatedUserMetadata').and.returnValue(of(settings));
service.getAllSettingsFromCookie = jasmine.createSpy('getAllSettingsFromCookie').and.returnValue({ });
service.getAll().subscribe();
expect(service.getAllSettingsFromCookie).not.toHaveBeenCalled();
});
it('should return an empty object if both are empty', () => {
service.getAllSettingsFromAuthenticatedUserMetadata =
jasmine.createSpy('getAllSettingsFromAuthenticatedUserMetadata').and.returnValue(of({ }));
service.getAllSettingsFromCookie = jasmine.createSpy('getAllSettingsFromCookie').and.returnValue({ });
service.getAll().subscribe(value => expect(value).toEqual({}));
});
});
describe('getAllSettingsFromCookie', () => {
it('should retrieve the settings from the cookie', () => {
cookieService.get = jasmine.createSpy();
service.getAllSettingsFromCookie();
expect(cookieService.get).toHaveBeenCalledWith(ACCESSIBILITY_COOKIE);
});
});
describe('getAllSettingsFromAuthenticatedUserMetadata', () => {
it('should retrieve all settings from the user\'s metadata', () => {
const settings = { 'liveRegionTimeOut': '1000' };
const user = new EPerson();
user.setMetadata(ACCESSIBILITY_SETTINGS_METADATA_KEY, null, JSON.stringify(settings));
authService.getAuthenticatedUserFromStoreIfAuthenticated =
jasmine.createSpy('getAuthenticatedUserFromStoreIfAuthenticated').and.returnValue(of(user));
service.getAllSettingsFromAuthenticatedUserMetadata().subscribe(value =>
expect(value).toEqual(settings),
);
});
});
describe('set', () => {
it('should correctly update the chosen setting', () => {
service.updateSettings = jasmine.createSpy('updateSettings');
service.set('liveRegionTimeOut', '500');
expect(service.updateSettings).toHaveBeenCalledWith({ liveRegionTimeOut: '500' });
});
});
describe('setSettings', () => {
beforeEach(() => {
service.setSettingsInCookie = jasmine.createSpy('setSettingsInCookie').and.returnValue(of('cookie'));
});
it('should attempt to set settings in metadata', () => {
service.setSettingsInAuthenticatedUserMetadata =
jasmine.createSpy('setSettingsInAuthenticatedUserMetadata').and.returnValue(of('failed'));
const settings: AccessibilitySettings = {
notificationTimeOut: '1000',
};
service.setSettings(settings).subscribe();
expect(service.setSettingsInAuthenticatedUserMetadata).toHaveBeenCalledWith(settings);
});
it('should set settings in cookie if metadata failed', () => {
service.setSettingsInAuthenticatedUserMetadata =
jasmine.createSpy('setSettingsInAuthenticatedUserMetadata').and.returnValue(of(false));
const settings: AccessibilitySettings = {
notificationTimeOut: '1000',
};
service.setSettings(settings).subscribe();
expect(service.setSettingsInCookie).toHaveBeenCalled();
});
it('should not set settings in cookie if metadata succeeded', () => {
service.setSettingsInAuthenticatedUserMetadata =
jasmine.createSpy('setSettingsInAuthenticatedUserMetadata').and.returnValue(of('metadata'));
const settings: AccessibilitySettings = {
notificationTimeOut: '1000',
};
service.setSettings(settings).subscribe();
expect(service.setSettingsInCookie).not.toHaveBeenCalled();
});
it('should return \'metadata\' if settings are stored in metadata', () => {
service.setSettingsInAuthenticatedUserMetadata =
jasmine.createSpy('setSettingsInAuthenticatedUserMetadata').and.returnValue(of('metadata'));
const settings: AccessibilitySettings = {
notificationTimeOut: '1000',
};
service.setSettings(settings).subscribe(value =>
expect(value).toEqual('metadata'),
);
});
it('should return \'cookie\' if settings are stored in cookie', () => {
service.setSettingsInAuthenticatedUserMetadata =
jasmine.createSpy('setSettingsInAuthenticatedUserMetadata').and.returnValue(of(false));
const settings: AccessibilitySettings = {
notificationTimeOut: '1000',
};
service.setSettings(settings).subscribe(value =>
expect(value).toEqual('cookie'),
);
});
});
describe('updateSettings', () => {
it('should call setSettings with the updated settings', () => {
const beforeSettings: AccessibilitySettings = {
notificationTimeOut: '1000',
};
service.getAll = jasmine.createSpy('getAll').and.returnValue(of(beforeSettings));
service.setSettings = jasmine.createSpy('setSettings').and.returnValue(of('cookie'));
const newSettings: AccessibilitySettings = {
liveRegionTimeOut: '2000',
};
const combinedSettings: AccessibilitySettings = {
notificationTimeOut: '1000',
liveRegionTimeOut: '2000',
};
service.updateSettings(newSettings).subscribe();
expect(service.setSettings).toHaveBeenCalledWith(combinedSettings);
});
});
describe('setSettingsInAuthenticatedUserMetadata', () => {
beforeEach(() => {
service.setSettingsInMetadata = jasmine.createSpy('setSettingsInMetadata').and.returnValue(of(null));
});
it('should store settings in metadata when the user is authenticated', fakeAsync(() => {
const user = new EPerson();
authService.getAuthenticatedUserFromStoreIfAuthenticated = jasmine.createSpy().and.returnValue(of(user));
service.setSettingsInAuthenticatedUserMetadata({}).subscribe();
flush();
expect(service.setSettingsInMetadata).toHaveBeenCalled();
}));
it('should emit "failed" when the user is not authenticated', fakeAsync(() => {
authService.getAuthenticatedUserFromStoreIfAuthenticated = jasmine.createSpy().and.returnValue(of(null));
service.setSettingsInAuthenticatedUserMetadata({})
.subscribe(value => expect(value).toEqual('failed'));
flush();
expect(service.setSettingsInMetadata).not.toHaveBeenCalled();
}));
});
describe('setSettingsInMetadata', () => {
const ePerson = new EPerson();
beforeEach(() => {
ePerson.setMetadata = jasmine.createSpy('setMetadata');
ePerson.removeMetadata = jasmine.createSpy('removeMetadata');
});
it('should set the settings in metadata', () => {
service.setSettingsInMetadata(ePerson, { ['liveRegionTimeOut']: '500' }).subscribe();
expect(ePerson.setMetadata).toHaveBeenCalled();
});
it('should remove the metadata when the settings are emtpy', () => {
service.setSettingsInMetadata(ePerson, {}).subscribe();
expect(ePerson.setMetadata).not.toHaveBeenCalled();
expect(ePerson.removeMetadata).toHaveBeenCalled();
});
it('should create a patch with the metadata changes', () => {
service.setSettingsInMetadata(ePerson, { ['liveRegionTimeOut']: '500' }).subscribe();
expect(ePersonService.createPatchFromCache).toHaveBeenCalled();
});
it('should send the patch request', () => {
service.setSettingsInMetadata(ePerson, { ['liveRegionTimeOut']: '500' }).subscribe();
expect(ePersonService.patch).toHaveBeenCalled();
});
it('should emit "metadata" when the update succeeded', fakeAsync(() => {
ePersonService.patch = jasmine.createSpy().and.returnValue(createSuccessfulRemoteDataObject$({}));
service.setSettingsInMetadata(ePerson, { ['liveRegionTimeOut']: '500' })
.subscribe(value => {
expect(value).toEqual('metadata');
});
flush();
}));
it('should emit "failed" when the update failed', fakeAsync(() => {
ePersonService.patch = jasmine.createSpy().and.returnValue(createFailedRemoteDataObject$());
service.setSettingsInMetadata(ePerson, { ['liveRegionTimeOut']: '500' })
.subscribe(value => {
expect(value).toEqual('failed');
});
flush();
}));
});
describe('setSettingsInCookie', () => {
beforeEach(() => {
cookieService.set = jasmine.createSpy('set');
cookieService.remove = jasmine.createSpy('remove');
});
it('should fail to store settings in the cookie when the user has not accepted the cookie', fakeAsync(() => {
klaroService.getSavedPreferences.and.returnValue(of({ accessibility: false }));
service.setSettingsInCookie({ ['liveRegionTimeOut']: '500' }).subscribe(value => {
expect(value).toEqual('failed');
});
flush();
expect(cookieService.set).not.toHaveBeenCalled();
}));
it('should store the settings in a cookie', fakeAsync(() => {
service.setSettingsInCookie({ ['liveRegionTimeOut']: '500' }).subscribe(value => {
expect(value).toEqual('cookie');
});
flush();
expect(cookieService.set).toHaveBeenCalled();
}));
it('should remove the cookie when the settings are empty', fakeAsync(() => {
service.setSettingsInCookie({}).subscribe(value => {
expect(value).toEqual('cookie');
});
flush();
expect(cookieService.set).not.toHaveBeenCalled();
expect(cookieService.remove).toHaveBeenCalled();
}));
});
describe('convertFormValuesToStoredValues', () => {
it('should reset the notificationTimeOut when timeOut is enabled but set to "0"', () => {
const formValues: AccessibilitySettingsFormValues = {
notificationTimeOutEnabled: true,
notificationTimeOut: '0',
liveRegionTimeOut: null,
};
const storedValues: FullAccessibilitySettings = service.convertFormValuesToStoredValues(formValues);
expect('notificationTimeOut' in storedValues).toBeFalse();
});
});
it('should keep the notificationTimeOut when timeOut is enabled and differs from "0"', () => {
const formValues: AccessibilitySettingsFormValues = {
notificationTimeOutEnabled: true,
notificationTimeOut: '3',
liveRegionTimeOut: null,
};
const storedValues: FullAccessibilitySettings = service.convertFormValuesToStoredValues(formValues);
expect('notificationTimeOut' in storedValues).toBeTrue();
});
});

View File

@@ -0,0 +1,45 @@
import { of } from 'rxjs';
import { AccessibilitySettingsService } from './accessibility-settings.service';
export function getAccessibilitySettingsServiceStub(): AccessibilitySettingsService {
return new AccessibilitySettingsServiceStub() as unknown as AccessibilitySettingsService;
}
export class AccessibilitySettingsServiceStub {
getAllAccessibilitySettingKeys = jasmine.createSpy('getAllAccessibilitySettingKeys').and.returnValue([]);
get = jasmine.createSpy('get').and.returnValue(of(null));
getAsNumber = jasmine.createSpy('getAsNumber').and.returnValue(of(0));
getAll = jasmine.createSpy('getAll').and.returnValue(of({}));
getAllSettingsFromCookie = jasmine.createSpy('getAllSettingsFromCookie').and.returnValue({});
getAllSettingsFromAuthenticatedUserMetadata = jasmine.createSpy('getAllSettingsFromAuthenticatedUserMetadata')
.and.returnValue(of({}));
set = jasmine.createSpy('setSettings').and.returnValue(of('cookie'));
updateSettings = jasmine.createSpy('updateSettings').and.returnValue(of('cookie'));
setSettingsInAuthenticatedUserMetadata = jasmine.createSpy('setSettingsInAuthenticatedUserMetadata')
.and.returnValue(of(false));
setSettingsInMetadata = jasmine.createSpy('setSettingsInMetadata').and.returnValue(of(false));
setSettingsInCookie = jasmine.createSpy('setSettingsInCookie');
getInputType = jasmine.createSpy('getInputType').and.returnValue('text');
convertFormValuesToStoredValues = jasmine.createSpy('convertFormValuesToStoredValues').and.returnValue({});
convertStoredValuesToFormValues = jasmine.createSpy('convertStoredValuesToFormValues').and.returnValue({});
getDefaultValue = jasmine.createSpy('getPlaceholder').and.returnValue('placeholder');
isValid = jasmine.createSpy('isValid').and.returnValue(true);
formValuesValid = jasmine.createSpy('allValid').and.returnValue(true);
}

View File

@@ -0,0 +1,381 @@
import {
Inject,
Injectable,
Optional,
} from '@angular/core';
import cloneDeep from 'lodash/cloneDeep';
import {
combineLatest,
Observable,
of,
switchMap,
} from 'rxjs';
import {
map,
take,
} from 'rxjs/operators';
import {
APP_CONFIG,
AppConfig,
} from '../../config/app-config.interface';
import { environment } from '../../environments/environment';
import { AuthService } from '../core/auth/auth.service';
import { EPersonDataService } from '../core/eperson/eperson-data.service';
import { EPerson } from '../core/eperson/models/eperson.model';
import { CookieService } from '../core/services/cookie.service';
import { getFirstCompletedRemoteData } from '../core/shared/operators';
import { KlaroService } from '../shared/cookies/klaro.service';
import {
hasNoValue,
hasValue,
isNotEmpty,
} from '../shared/empty.util';
import { createSuccessfulRemoteDataObject$ } from '../shared/remote-data.utils';
/**
* Name of the cookie used to store the settings locally
*/
export const ACCESSIBILITY_COOKIE = 'dsAccessibilityCookie';
/**
* Name of the metadata field to store settings on the ePerson
*/
export const ACCESSIBILITY_SETTINGS_METADATA_KEY = 'dspace.accessibility.settings';
/**
* Array containing all possible accessibility settings.
* When adding new settings, make sure to add the new setting to the accessibility-settings component form.
* The converter methods to convert from stored format to form format (and vice-versa) need to be updated as well.
*/
export const accessibilitySettingKeys = ['notificationTimeOut', 'liveRegionTimeOut'] as const;
/**
* Type representing the possible accessibility settings
*/
export type AccessibilitySetting = typeof accessibilitySettingKeys[number];
/**
* Type representing an object that contains accessibility settings values for all accessibility settings.
*/
export type FullAccessibilitySettings = { [key in AccessibilitySetting]: string };
/**
* Type representing an object that contains accessibility settings values for some accessibility settings.
*/
export type AccessibilitySettings = Partial<FullAccessibilitySettings>;
/**
* The accessibility settings object format used by the accessibility-settings component form.
*/
export interface AccessibilitySettingsFormValues {
notificationTimeOutEnabled: boolean,
notificationTimeOut: string,
liveRegionTimeOut: string,
}
/**
* Service handling the retrieval and configuration of accessibility settings.
*
* This service stores the configured settings in either a cookie or on the user's metadata depending on whether
* the user is authenticated.
*/
@Injectable({
providedIn: 'root',
})
export class AccessibilitySettingsService {
constructor(
protected cookieService: CookieService,
protected authService: AuthService,
protected ePersonService: EPersonDataService,
@Optional() protected klaroService: KlaroService,
@Inject(APP_CONFIG) protected appConfig: AppConfig,
) {
}
/**
* Get the stored value for the provided {@link AccessibilitySetting}. If the value does not exist or if it is empty,
* the provided defaultValue is emitted instead.
*/
get(setting: AccessibilitySetting, defaultValue: string = null): Observable<string> {
return this.getAll().pipe(
map(settings => settings[setting]),
map(value => isNotEmpty(value) ? value : defaultValue),
);
}
/**
* Get the stored value for the provided {@link AccessibilitySetting} as a number. If the stored value
* could not be converted to a number, the value of the defaultValue parameter is emitted instead.
*/
getAsNumber(setting: AccessibilitySetting, defaultValue: number = null): Observable<number> {
return this.get(setting).pipe(
map(value => hasValue(value) ? parseInt(value, 10) : NaN),
map(number => !isNaN(number) ? number : defaultValue),
);
}
/**
* Get all currently stored accessibility settings
*/
getAll(): Observable<AccessibilitySettings> {
return this.getAllSettingsFromAuthenticatedUserMetadata().pipe(
map(value => isNotEmpty(value) ? value : this.getAllSettingsFromCookie()),
map(value => isNotEmpty(value) ? value : {}),
);
}
/**
* Get all settings from the accessibility settings cookie
*/
getAllSettingsFromCookie(): AccessibilitySettings {
return this.cookieService.get(ACCESSIBILITY_COOKIE);
}
/**
* Attempts to retrieve all settings from the authenticated user's metadata.
* Returns an empty object when no user is authenticated.
*/
getAllSettingsFromAuthenticatedUserMetadata(): Observable<AccessibilitySettings> {
return this.authService.getAuthenticatedUserFromStoreIfAuthenticated().pipe(
take(1),
map(user => hasValue(user) && hasValue(user.firstMetadataValue(ACCESSIBILITY_SETTINGS_METADATA_KEY)) ?
JSON.parse(user.firstMetadataValue(ACCESSIBILITY_SETTINGS_METADATA_KEY)) :
{},
),
);
}
/**
* Set a single accessibility setting value, leaving all other settings unchanged.
* When setting all values, {@link AccessibilitySettingsService#setSettings} should be used.
* When updating multiple values, {@link AccessibilitySettingsService#updateSettings} should be used.
*
* Returns 'cookie' when the changes were stored in the cookie.
* Returns 'metadata' when the changes were stored in metadata.
* Returns 'failed' when both options failed.
*/
set(setting: AccessibilitySetting, value: string): Observable<'metadata' | 'cookie' | 'failed'> {
return this.updateSettings({ [setting]: value });
}
/**
* Set all accessibility settings simultaneously.
* This method removes existing settings if they are missing from the provided {@link AccessibilitySettings} object.
* Removes all settings if the provided object is empty.
*
* Returns 'cookie' when the changes were stored in the cookie.
* Returns 'metadata' when the changes were stored in metadata.
* Returns 'failed' when both options failed.
*/
setSettings(settings: AccessibilitySettings): Observable<'metadata' | 'cookie' | 'failed'> {
return this.setSettingsInAuthenticatedUserMetadata(settings).pipe(
take(1),
map(saveLocation => saveLocation === 'metadata'),
switchMap((savedInMetadata) =>
savedInMetadata ? ofMetadata() : this.setSettingsInCookie(settings),
),
);
}
/**
* Update multiple accessibility settings simultaneously.
* This method does not change the settings that are missing from the provided {@link AccessibilitySettings} object.
*
* Returns 'cookie' when the changes were stored in the cookie.
* Returns 'metadata' when the changes were stored in metadata.
* Returns 'failed' when both options failed.
*/
updateSettings(settings: AccessibilitySettings): Observable<'metadata' | 'cookie' | 'failed'> {
return this.getAll().pipe(
take(1),
map(currentSettings => Object.assign({}, currentSettings, settings)),
switchMap(newSettings => this.setSettings(newSettings)),
);
}
/**
* Attempts to set the provided settings on the currently authorized user's metadata.
* Emits false when no user is authenticated or when the metadata update failed.
* Emits 'metadata' when the metadata update succeeded, and 'failed' otherwise.
*/
setSettingsInAuthenticatedUserMetadata(settings: AccessibilitySettings): Observable<'metadata' | 'failed'> {
return this.authService.getAuthenticatedUserFromStoreIfAuthenticated().pipe(
take(1),
switchMap(user => {
if (hasValue(user)) {
// EPerson has to be cloned, otherwise the EPerson's metadata can't be modified
const clonedUser = cloneDeep(user);
return this.setSettingsInMetadata(clonedUser, settings);
} else {
return ofFailed();
}
}),
);
}
/**
* Attempts to set the provided settings on the user's metadata.
* Emits false when the update failed, true when the update succeeded.
*/
setSettingsInMetadata(
user: EPerson,
settings: AccessibilitySettings,
): Observable<'metadata' | 'failed'> {
if (isNotEmpty(settings)) {
user.setMetadata(ACCESSIBILITY_SETTINGS_METADATA_KEY, null, JSON.stringify(settings));
} else {
user.removeMetadata(ACCESSIBILITY_SETTINGS_METADATA_KEY);
}
return this.ePersonService.createPatchFromCache(user).pipe(
take(1),
switchMap(operations =>
isNotEmpty(operations) ? this.ePersonService.patch(user, operations) : createSuccessfulRemoteDataObject$({})),
getFirstCompletedRemoteData(),
switchMap(rd => rd.hasSucceeded ? ofMetadata() : ofFailed()),
);
}
/**
* Attempts to set the provided settings in a cookie.
* Emits 'failed' when setting in a cookie failed due to the cookie not being accepted, 'cookie' when it succeeded.
*/
setSettingsInCookie(settings: AccessibilitySettings): Observable<'cookie' | 'failed'> {
if (hasNoValue(this.klaroService)) {
return of('failed');
}
return this.klaroService.getSavedPreferences().pipe(
map(preferences => preferences.accessibility),
map((accessibilityCookieAccepted: boolean) => {
if (accessibilityCookieAccepted) {
if (isNotEmpty(settings)) {
this.cookieService.set(ACCESSIBILITY_COOKIE, settings, { expires: this.appConfig.accessibility.cookieExpirationDuration });
} else {
this.cookieService.remove(ACCESSIBILITY_COOKIE);
}
return 'cookie';
} else {
return 'failed';
}
}),
);
}
/**
* Clears all settings in the cookie and attempts to clear settings in metadata.
* Emits an array mentioning which settings succeeded or failed.
*/
clearSettings(): Observable<['cookie' | 'failed', 'metadata' | 'failed']> {
return combineLatest([
this.setSettingsInCookie({}),
this.setSettingsInAuthenticatedUserMetadata({}),
]);
}
/**
* Retrieve the default value to be used for the provided AccessibilitySetting.
* Returns an empty string when no default value is specified for the provided setting.
*/
getDefaultValue(setting: AccessibilitySetting): string {
switch (setting) {
case 'notificationTimeOut':
return millisecondsToSeconds(environment.notifications.timeOut.toString());
case 'liveRegionTimeOut':
return millisecondsToSeconds(environment.liveRegion.messageTimeOutDurationMs.toString());
default:
return '';
}
}
/**
* Convert values in the provided accessibility settings object to values ready to be stored.
*/
convertFormValuesToStoredValues(settings: AccessibilitySettingsFormValues): FullAccessibilitySettings {
const storedValues = {
notificationTimeOut: settings.notificationTimeOutEnabled ?
secondsToMilliseconds(settings.notificationTimeOut) : '0',
liveRegionTimeOut: secondsToMilliseconds(settings.liveRegionTimeOut),
};
// When the user enables the timeout but does not change the timeout duration from 0,
// it is removed from the values to be stored so the default value is used.
// Keeping it at 0 would mean the notifications are not automatically removed.
if (settings.notificationTimeOutEnabled && settings.notificationTimeOut === '0') {
delete storedValues.notificationTimeOut;
}
return storedValues;
}
/**
* Convert values in the provided accessibility settings object to values ready to show in the form.
*/
convertStoredValuesToFormValues(settings: AccessibilitySettings): AccessibilitySettingsFormValues {
return {
notificationTimeOutEnabled: parseFloat(settings.notificationTimeOut) !== 0,
notificationTimeOut: millisecondsToSeconds(settings.notificationTimeOut),
liveRegionTimeOut: millisecondsToSeconds(settings.liveRegionTimeOut),
};
}
/**
* Returns true if the provided AccessibilitySetting is valid in regard to the provided formValues.
*/
isValid(setting: AccessibilitySetting, formValues: AccessibilitySettingsFormValues): boolean {
switch (setting) {
case 'notificationTimeOut':
return formValues.notificationTimeOutEnabled ?
hasNoValue(formValues.notificationTimeOut) || parseFloat(formValues.notificationTimeOut) > 0 :
true;
case 'liveRegionTimeOut':
return hasNoValue(formValues.liveRegionTimeOut) || parseFloat(formValues.liveRegionTimeOut) > 0;
default:
throw new Error(`Unhandled accessibility setting during validity check: ${setting}`);
}
}
/**
* Returns true if all settings in the provided AccessibilitySettingsFormValues object are valid
*/
formValuesValid(formValues: AccessibilitySettingsFormValues) {
return accessibilitySettingKeys.every(setting => this.isValid(setting, formValues));
}
}
/**
* Converts a string representing seconds to a string representing milliseconds
* Returns null if the input could not be parsed to a float
*/
function secondsToMilliseconds(secondsStr: string): string {
const seconds = parseFloat(secondsStr);
if (isNaN(seconds)) {
return null;
} else {
return (seconds * 1000).toString();
}
}
/**
* Converts a string representing milliseconds to a string representing seconds
* Returns null if the input could not be parsed to a float
*/
function millisecondsToSeconds(millisecondsStr: string): string {
const milliseconds = parseFloat(millisecondsStr);
if (isNaN(milliseconds)) {
return null;
} else {
return (milliseconds / 1000).toString();
}
}
function ofMetadata(): Observable<'metadata'> {
return of('metadata');
}
function ofFailed(): Observable<'failed'> {
return of('failed');
}

View File

@@ -9,9 +9,9 @@
<ds-pagination
*ngIf="(bitstreamFormats | async)?.payload?.totalElements > 0"
*ngIf="(bitstreamFormats$ | async)?.payload?.totalElements > 0"
[paginationOptions]="pageConfig"
[collectionSize]="(bitstreamFormats | async)?.payload?.totalElements"
[collectionSize]="(bitstreamFormats$ | async)?.payload?.totalElements"
[hideGear]="false"
[hidePagerWhenSinglePage]="true">
<div class="table-responsive">
@@ -26,12 +26,12 @@
</tr>
</thead>
<tbody>
<tr *ngFor="let bitstreamFormat of (bitstreamFormats | async)?.payload?.page">
<tr *ngFor="let bitstreamFormat of (bitstreamFormats$ | async)?.payload?.page">
<td>
<label class="mb-0">
<input type="checkbox"
[attr.aria-label]="'admin.registries.bitstream-formats.select' | translate"
[checked]="isSelected(bitstreamFormat) | async"
[checked]="(selectedBitstreamFormatIDs$ | async)?.includes(bitstreamFormat.id)"
(change)="selectBitStreamFormat(bitstreamFormat, $event)"
>
<span class="sr-only">{{'admin.registries.bitstream-formats.select' | translate}}&#125;</span>
@@ -46,13 +46,13 @@
</table>
</div>
</ds-pagination>
<div *ngIf="(bitstreamFormats | async)?.payload?.totalElements === 0" class="alert alert-info" role="alert">
<div *ngIf="(bitstreamFormats$ | async)?.payload?.totalElements === 0" class="alert alert-info" role="alert">
{{'admin.registries.bitstream-formats.no-items' | translate}}
</div>
<div>
<button *ngIf="(bitstreamFormats | async)?.payload?.page?.length > 0" class="btn btn-primary deselect" (click)="deselectAll()">{{'admin.registries.bitstream-formats.table.deselect-all' | translate}}</button>
<button *ngIf="(bitstreamFormats | async)?.payload?.page?.length > 0" type="submit" class="btn btn-danger float-right" (click)="deleteFormats()">{{'admin.registries.bitstream-formats.table.delete' | translate}}</button>
<button *ngIf="(bitstreamFormats$ | async)?.payload?.page?.length > 0" class="btn btn-primary deselect" (click)="deselectAll()">{{'admin.registries.bitstream-formats.table.deselect-all' | translate}}</button>
<button *ngIf="(bitstreamFormats$ | async)?.payload?.page?.length > 0" type="submit" class="btn btn-danger float-right" (click)="deleteFormats()">{{'admin.registries.bitstream-formats.table.delete' | translate}}</button>
</div>
</div>
</div>

View File

@@ -8,10 +8,7 @@ import { By } from '@angular/platform-browser';
import { RouterModule } from '@angular/router';
import { provideMockStore } from '@ngrx/store/testing';
import { TranslateModule } from '@ngx-translate/core';
import {
cold,
hot,
} from 'jasmine-marbles';
import { hot } from 'jasmine-marbles';
import { of as observableOf } from 'rxjs';
import { BitstreamFormatDataService } from '../../../core/data/bitstream-format-data.service';
@@ -191,17 +188,17 @@ describe('BitstreamFormatsComponent', () => {
beforeEach(waitForAsync(initAsync));
beforeEach(initBeforeEach);
it('should return an observable of true if the provided bistream is in the list returned by the service', () => {
const result = comp.isSelected(bitstreamFormat1);
expect(result).toBeObservable(cold('b', { b: true }));
comp.selectedBitstreamFormatIDs().subscribe((selectedBitstreamFormatIDs: string[]) => {
expect(selectedBitstreamFormatIDs).toContain(bitstreamFormat1.id);
});
});
it('should return an observable of false if the provided bistream is not in the list returned by the service', () => {
const format = new BitstreamFormat();
format.uuid = 'new';
const result = comp.isSelected(format);
expect(result).toBeObservable(cold('b', { b: false }));
comp.selectedBitstreamFormatIDs().subscribe((selectedBitstreamFormatIDs: string[]) => {
expect(selectedBitstreamFormatIDs).not.toContain(format.id);
});
});
});

View File

@@ -13,10 +13,7 @@ import {
TranslateModule,
TranslateService,
} from '@ngx-translate/core';
import {
combineLatest as observableCombineLatest,
Observable,
} from 'rxjs';
import { Observable } from 'rxjs';
import {
map,
mergeMap,
@@ -58,7 +55,12 @@ export class BitstreamFormatsComponent implements OnInit, OnDestroy {
/**
* A paginated list of bitstream formats to be shown on the page
*/
bitstreamFormats: Observable<RemoteData<PaginatedList<BitstreamFormat>>>;
bitstreamFormats$: Observable<RemoteData<PaginatedList<BitstreamFormat>>>;
/**
* The currently selected {@link BitstreamFormat} IDs
*/
selectedBitstreamFormatIDs$: Observable<string[]>;
/**
* The current pagination configuration for the page
@@ -125,14 +127,11 @@ export class BitstreamFormatsComponent implements OnInit, OnDestroy {
}
/**
* Checks whether a given bitstream format is selected in the list (checkbox)
* @param bitstreamFormat
* Returns the list of all the bitstream formats that are selected in the list (checkbox)
*/
isSelected(bitstreamFormat: BitstreamFormat): Observable<boolean> {
selectedBitstreamFormatIDs(): Observable<string[]> {
return this.bitstreamFormatService.getSelectedBitstreamFormats().pipe(
map((bitstreamFormats: BitstreamFormat[]) => {
return bitstreamFormats.find((selectedFormat) => selectedFormat.id === bitstreamFormat.id) != null;
}),
map((bitstreamFormats: BitstreamFormat[]) => bitstreamFormats.map((selectedFormat) => selectedFormat.id)),
);
}
@@ -156,27 +155,23 @@ export class BitstreamFormatsComponent implements OnInit, OnDestroy {
const prefix = 'admin.registries.bitstream-formats.delete';
const suffix = success ? 'success' : 'failure';
const messages = observableCombineLatest(
this.translateService.get(`${prefix}.${suffix}.head`),
this.translateService.get(`${prefix}.${suffix}.amount`, { amount: amount }),
);
messages.subscribe(([head, content]) => {
const head: string = this.translateService.instant(`${prefix}.${suffix}.head`);
const content: string = this.translateService.instant(`${prefix}.${suffix}.amount`, { amount: amount });
if (success) {
this.notificationsService.success(head, content);
} else {
this.notificationsService.error(head, content);
}
});
if (success) {
this.notificationsService.success(head, content);
} else {
this.notificationsService.error(head, content);
}
}
ngOnInit(): void {
this.bitstreamFormats = this.paginationService.getFindListOptions(this.pageConfig.id, this.pageConfig).pipe(
this.bitstreamFormats$ = this.paginationService.getFindListOptions(this.pageConfig.id, this.pageConfig).pipe(
switchMap((findListOptions: FindListOptions) => {
return this.bitstreamFormatService.findAll(findListOptions);
}),
);
this.selectedBitstreamFormatIDs$ = this.selectedBitstreamFormatIDs();
}

View File

@@ -27,14 +27,14 @@
</thead>
<tbody>
<tr *ngFor="let schema of (metadataSchemas | async)?.payload?.page"
[ngClass]="{'table-primary' : isActive(schema) | async}">
[ngClass]="{'table-primary' : (activeMetadataSchema$ | async)?.id === schema.id}">
<td>
<label class="mb-0">
<input type="checkbox"
[checked]="isSelected(schema) | async"
[checked]="(selectedMetadataSchemaIDs$ | async)?.includes(schema.id)"
(change)="selectMetadataSchema(schema, $event)"
>
<span class="sr-only">{{((isSelected(schema) | async) ? 'admin.registries.metadata.schemas.deselect' : 'admin.registries.metadata.schemas.select') | translate}}</span>
<span class="sr-only">{{(((selectedMetadataSchemaIDs$ | async)?.includes(schema.id)) ? 'admin.registries.metadata.schemas.deselect' : 'admin.registries.metadata.schemas.select') | translate}}</span>
</label>
</td>
<td class="selectable-row" (click)="editSchema(schema)"><a [routerLink]="[schema.prefix]">{{schema.id}}</a></td>

View File

@@ -17,9 +17,7 @@ import { TranslateModule } from '@ngx-translate/core';
import { of as observableOf } from 'rxjs';
import { FormBuilderService } from 'src/app/shared/form/builder/form-builder.service';
import { RestResponse } from '../../../core/cache/response.models';
import { ConfigurationDataService } from '../../../core/data/configuration-data.service';
import { buildPaginatedList } from '../../../core/data/paginated-list.model';
import { GroupDataService } from '../../../core/eperson/group-data.service';
import { MetadataSchema } from '../../../core/metadata/metadata-schema.model';
import { PaginationService } from '../../../core/pagination/pagination.service';
@@ -36,7 +34,9 @@ import { createSuccessfulRemoteDataObject$ } from '../../../shared/remote-data.u
import { HostWindowServiceStub } from '../../../shared/testing/host-window-service.stub';
import { NotificationsServiceStub } from '../../../shared/testing/notifications-service.stub';
import { PaginationServiceStub } from '../../../shared/testing/pagination-service.stub';
import { RegistryServiceStub } from '../../../shared/testing/registry.service.stub';
import { SearchConfigurationServiceStub } from '../../../shared/testing/search-configuration-service.stub';
import { createPaginatedList } from '../../../shared/testing/utils.test';
import { EnumKeysPipe } from '../../../shared/utils/enum-keys-pipe';
import { MetadataRegistryComponent } from './metadata-registry.component';
import { MetadataSchemaFormComponent } from './metadata-schema-form/metadata-schema-form.component';
@@ -44,9 +44,11 @@ import { MetadataSchemaFormComponent } from './metadata-schema-form/metadata-sch
describe('MetadataRegistryComponent', () => {
let comp: MetadataRegistryComponent;
let fixture: ComponentFixture<MetadataRegistryComponent>;
let registryService: RegistryService;
let paginationService;
const mockSchemasList = [
let paginationService: PaginationServiceStub;
let registryService: RegistryServiceStub;
const mockSchemasList: MetadataSchema[] = [
{
id: 1,
_links: {
@@ -67,25 +69,7 @@ describe('MetadataRegistryComponent', () => {
prefix: 'mock',
namespace: 'http://dspace.org/mockschema',
},
];
const mockSchemas = createSuccessfulRemoteDataObject$(buildPaginatedList(null, mockSchemasList));
/* eslint-disable no-empty,@typescript-eslint/no-empty-function */
const registryServiceStub = {
getMetadataSchemas: () => mockSchemas,
getActiveMetadataSchema: () => observableOf(undefined),
getSelectedMetadataSchemas: () => observableOf([]),
editMetadataSchema: (schema) => {
},
cancelEditMetadataSchema: () => {
},
deleteMetadataSchema: () => observableOf(new RestResponse(true, 200, 'OK')),
deselectAllMetadataSchema: () => {
},
clearMetadataSchemaRequests: () => observableOf(undefined),
};
/* eslint-enable no-empty, @typescript-eslint/no-empty-function */
paginationService = new PaginationServiceStub();
] as MetadataSchema[];
const configurationDataService = jasmine.createSpyObj('configurationDataService', {
findByPropertyName: createSuccessfulRemoteDataObject$(Object.assign(new ConfigurationProperty(), {
@@ -109,6 +93,10 @@ describe('MetadataRegistryComponent', () => {
);
beforeEach(waitForAsync(() => {
paginationService = new PaginationServiceStub();
registryService = new RegistryServiceStub();
spyOn(registryService, 'getMetadataSchemas').and.returnValue(createSuccessfulRemoteDataObject$(createPaginatedList(mockSchemasList)));
TestBed.configureTestingModule({
imports: [
CommonModule,
@@ -120,7 +108,7 @@ describe('MetadataRegistryComponent', () => {
EnumKeysPipe,
],
providers: [
{ provide: RegistryService, useValue: registryServiceStub },
{ provide: RegistryService, useValue: registryService },
{ provide: HostWindowService, useValue: new HostWindowServiceStub(0) },
{ provide: PaginationService, useValue: paginationService },
{
@@ -190,7 +178,7 @@ describe('MetadataRegistryComponent', () => {
}));
it('should cancel editing the selected schema when clicked again', waitForAsync(() => {
spyOn(registryService, 'getActiveMetadataSchema').and.returnValue(observableOf(mockSchemasList[0] as MetadataSchema));
comp.activeMetadataSchema$ = observableOf(mockSchemasList[0] as MetadataSchema);
spyOn(registryService, 'cancelEditMetadataSchema');
row.click();
fixture.detectChanges();
@@ -205,7 +193,7 @@ describe('MetadataRegistryComponent', () => {
beforeEach(() => {
spyOn(registryService, 'deleteMetadataSchema').and.callThrough();
spyOn(registryService, 'getSelectedMetadataSchemas').and.returnValue(observableOf(selectedSchemas as MetadataSchema[]));
comp.selectedMetadataSchemaIDs$ = observableOf(selectedSchemas.map((selectedSchema: MetadataSchema) => selectedSchema.id));
comp.deleteSchemas();
fixture.detectChanges();
});

View File

@@ -4,19 +4,20 @@ import {
NgForOf,
NgIf,
} from '@angular/common';
import { Component } from '@angular/core';
import {
Router,
RouterLink,
} from '@angular/router';
Component,
OnDestroy,
OnInit,
} from '@angular/core';
import { RouterLink } from '@angular/router';
import {
TranslateModule,
TranslateService,
} from '@ngx-translate/core';
import {
BehaviorSubject,
combineLatest as observableCombineLatest,
Observable,
Subscription,
zip,
} from 'rxjs';
import {
@@ -33,7 +34,6 @@ import { PaginationService } from '../../../core/pagination/pagination.service';
import { RegistryService } from '../../../core/registry/registry.service';
import { NoContent } from '../../../core/shared/NoContent.model';
import { getFirstCompletedRemoteData } from '../../../core/shared/operators';
import { hasValue } from '../../../shared/empty.util';
import { NotificationsService } from '../../../shared/notifications/notifications.service';
import { PaginationComponent } from '../../../shared/pagination/pagination.component';
import { toFindListOptions } from '../../../shared/pagination/pagination.utils';
@@ -60,13 +60,23 @@ import { MetadataSchemaFormComponent } from './metadata-schema-form/metadata-sch
* A component used for managing all existing metadata schemas within the repository.
* The admin can create, edit or delete metadata schemas here.
*/
export class MetadataRegistryComponent {
export class MetadataRegistryComponent implements OnDestroy, OnInit {
/**
* A list of all the current metadata schemas within the repository
*/
metadataSchemas: Observable<RemoteData<PaginatedList<MetadataSchema>>>;
/**
* The {@link MetadataSchema}that is being edited
*/
activeMetadataSchema$: Observable<MetadataSchema>;
/**
* The selected {@link MetadataSchema} IDs
*/
selectedMetadataSchemaIDs$: Observable<number[]>;
/**
* Pagination config used to display the list of metadata schemas
*/
@@ -76,15 +86,25 @@ export class MetadataRegistryComponent {
});
/**
* Whether or not the list of MetadataSchemas needs an update
* Whether the list of MetadataSchemas needs an update
*/
needsUpdate$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(true);
constructor(private registryService: RegistryService,
private notificationsService: NotificationsService,
private router: Router,
private paginationService: PaginationService,
private translateService: TranslateService) {
subscriptions: Subscription[] = [];
constructor(
protected registryService: RegistryService,
protected notificationsService: NotificationsService,
protected paginationService: PaginationService,
protected translateService: TranslateService,
) {
}
ngOnInit(): void {
this.activeMetadataSchema$ = this.registryService.getActiveMetadataSchema();
this.selectedMetadataSchemaIDs$ = this.registryService.getSelectedMetadataSchemas().pipe(
map((schemas: MetadataSchema[]) => schemas.map((schema: MetadataSchema) => schema.id)),
);
this.updateSchemas();
}
@@ -113,30 +133,13 @@ export class MetadataRegistryComponent {
* @param schema
*/
editSchema(schema: MetadataSchema) {
this.getActiveSchema().pipe(take(1)).subscribe((activeSchema) => {
this.subscriptions.push(this.activeMetadataSchema$.pipe(take(1)).subscribe((activeSchema: MetadataSchema) => {
if (schema === activeSchema) {
this.registryService.cancelEditMetadataSchema();
} else {
this.registryService.editMetadataSchema(schema);
}
});
}
/**
* Checks whether the given metadata schema is active (being edited)
* @param schema
*/
isActive(schema: MetadataSchema): Observable<boolean> {
return this.getActiveSchema().pipe(
map((activeSchema) => schema === activeSchema),
);
}
/**
* Gets the active metadata schema (being edited)
*/
getActiveSchema(): Observable<MetadataSchema> {
return this.registryService.getActiveMetadataSchema();
}));
}
/**
@@ -150,42 +153,25 @@ export class MetadataRegistryComponent {
this.registryService.deselectMetadataSchema(schema);
}
/**
* Checks whether a given metadata schema is selected in the list (checkbox)
* @param schema
*/
isSelected(schema: MetadataSchema): Observable<boolean> {
return this.registryService.getSelectedMetadataSchemas().pipe(
map((schemas) => schemas.find((selectedSchema) => selectedSchema === schema) != null),
);
}
/**
* Delete all the selected metadata schemas
*/
deleteSchemas() {
this.registryService.getSelectedMetadataSchemas().pipe(take(1)).subscribe(
(schemas) => {
const tasks$ = [];
for (const schema of schemas) {
if (hasValue(schema.id)) {
tasks$.push(this.registryService.deleteMetadataSchema(schema.id).pipe(getFirstCompletedRemoteData()));
}
}
zip(...tasks$).subscribe((responses: RemoteData<NoContent>[]) => {
const successResponses = responses.filter((response: RemoteData<NoContent>) => response.hasSucceeded);
const failedResponses = responses.filter((response: RemoteData<NoContent>) => response.hasFailed);
if (successResponses.length > 0) {
this.showNotification(true, successResponses.length);
}
if (failedResponses.length > 0) {
this.showNotification(false, failedResponses.length);
}
this.registryService.deselectAllMetadataSchema();
this.registryService.cancelEditMetadataSchema();
});
},
);
this.subscriptions.push(this.selectedMetadataSchemaIDs$.pipe(
take(1),
switchMap((schemaIDs: number[]) => zip(schemaIDs.map((schemaID: number) => this.registryService.deleteMetadataSchema(schemaID).pipe(getFirstCompletedRemoteData())))),
).subscribe((responses: RemoteData<NoContent>[]) => {
const successResponses: RemoteData<NoContent>[] = responses.filter((response: RemoteData<NoContent>) => response.hasSucceeded);
const failedResponses: RemoteData<NoContent>[] = responses.filter((response: RemoteData<NoContent>) => response.hasFailed);
if (successResponses.length > 0) {
this.showNotification(true, successResponses.length);
}
if (failedResponses.length > 0) {
this.showNotification(false, failedResponses.length);
}
this.registryService.deselectAllMetadataSchema();
this.registryService.cancelEditMetadataSchema();
}));
}
/**
@@ -196,20 +182,20 @@ export class MetadataRegistryComponent {
showNotification(success: boolean, amount: number) {
const prefix = 'admin.registries.schema.notification';
const suffix = success ? 'success' : 'failure';
const messages = observableCombineLatest(
this.translateService.get(success ? `${prefix}.${suffix}` : `${prefix}.${suffix}`),
this.translateService.get(`${prefix}.deleted.${suffix}`, { amount: amount }),
);
messages.subscribe(([head, content]) => {
if (success) {
this.notificationsService.success(head, content);
} else {
this.notificationsService.error(head, content);
}
});
const head: string = this.translateService.instant(success ? `${prefix}.${suffix}` : `${prefix}.${suffix}`);
const content: string = this.translateService.instant(`${prefix}.deleted.${suffix}`, { amount: amount });
if (success) {
this.notificationsService.success(head, content);
} else {
this.notificationsService.error(head, content);
}
}
ngOnDestroy(): void {
this.paginationService.clearPagination(this.config.id);
this.subscriptions.map((subscription: Subscription) => subscription.unsubscribe());
}
}

View File

@@ -1,4 +1,4 @@
<div *ngIf="registryService.getActiveMetadataSchema() | async; then editheader; else createHeader"></div>
<div *ngIf="activeMetadataSchema$ | async; then editheader; else createHeader"></div>
<ng-template #createHeader>
<h2>{{messagePrefix + '.create' | translate}}</h2>

View File

@@ -1,5 +1,5 @@
import { CommonModule } from '@angular/common';
import { NO_ERRORS_SCHEMA } from '@angular/core';
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import {
ComponentFixture,
inject,
@@ -16,42 +16,26 @@ import { RegistryService } from '../../../../core/registry/registry.service';
import { FormBuilderService } from '../../../../shared/form/builder/form-builder.service';
import { FormComponent } from '../../../../shared/form/form.component';
import { getMockFormBuilderService } from '../../../../shared/mocks/form-builder-service.mock';
import { RegistryServiceStub } from '../../../../shared/testing/registry.service.stub';
import { EnumKeysPipe } from '../../../../shared/utils/enum-keys-pipe';
import { MetadataSchemaFormComponent } from './metadata-schema-form.component';
describe('MetadataSchemaFormComponent', () => {
let component: MetadataSchemaFormComponent;
let fixture: ComponentFixture<MetadataSchemaFormComponent>;
let registryService: RegistryService;
/* eslint-disable no-empty,@typescript-eslint/no-empty-function */
const registryServiceStub = {
getActiveMetadataSchema: () => observableOf(undefined),
createOrUpdateMetadataSchema: (schema: MetadataSchema) => observableOf(schema),
cancelEditMetadataSchema: () => {
},
clearMetadataSchemaRequests: () => observableOf(undefined),
};
const formBuilderServiceStub = {
createFormGroup: () => {
return {
patchValue: () => {
},
reset(_value?: any, _options?: { onlySelf?: boolean; emitEvent?: boolean; }): void {
},
};
},
};
/* eslint-enable no-empty, @typescript-eslint/no-empty-function */
let registryService: RegistryServiceStub;
beforeEach(waitForAsync(() => {
registryService = new RegistryServiceStub();
return TestBed.configureTestingModule({
imports: [CommonModule, RouterTestingModule.withRoutes([]), TranslateModule.forRoot(), NgbModule, MetadataSchemaFormComponent, EnumKeysPipe],
providers: [
{ provide: RegistryService, useValue: registryServiceStub },
{ provide: RegistryService, useValue: registryService },
{ provide: FormBuilderService, useValue: getMockFormBuilderService() },
],
schemas: [NO_ERRORS_SCHEMA],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
})
.overrideComponent(MetadataSchemaFormComponent, {
remove: {
@@ -88,7 +72,7 @@ describe('MetadataSchemaFormComponent', () => {
describe('without an active schema', () => {
beforeEach(() => {
spyOn(registryService, 'getActiveMetadataSchema').and.returnValue(observableOf(undefined));
component.activeMetadataSchema$ = observableOf(undefined);
component.onSubmit();
fixture.detectChanges();
});
@@ -107,7 +91,7 @@ describe('MetadataSchemaFormComponent', () => {
} as MetadataSchema);
beforeEach(() => {
spyOn(registryService, 'getActiveMetadataSchema').and.returnValue(observableOf(expectedWithId));
component.activeMetadataSchema$ = observableOf(expectedWithId);
component.onSubmit();
fixture.detectChanges();
});

View File

@@ -21,13 +21,13 @@ import {
TranslateService,
} from '@ngx-translate/core';
import {
combineLatest,
Observable,
Subscription,
} from 'rxjs';
import {
map,
switchMap,
take,
tap,
} from 'rxjs/operators';
import { MetadataSchema } from '../../../../core/metadata/metadata-schema.model';
@@ -102,64 +102,71 @@ export class MetadataSchemaFormComponent implements OnInit, OnDestroy {
*/
@Output() submitForm: EventEmitter<any> = new EventEmitter();
constructor(public registryService: RegistryService, private formBuilderService: FormBuilderService, private translateService: TranslateService) {
/**
* The {@link MetadataSchema} that is currently being edited
*/
activeMetadataSchema$: Observable<MetadataSchema>;
subscriptions: Subscription[] = [];
constructor(
protected registryService: RegistryService,
protected formBuilderService: FormBuilderService,
protected translateService: TranslateService,
) {
}
ngOnInit() {
combineLatest([
this.translateService.get(`${this.messagePrefix}.name`),
this.translateService.get(`${this.messagePrefix}.namespace`),
]).subscribe(([name, namespace]) => {
this.name = new DynamicInputModel({
id: 'name',
label: name,
name: 'name',
validators: {
required: null,
pattern: '^[^. ,]*$',
maxLength: 32,
},
required: true,
errorMessages: {
pattern: 'error.validation.metadata.name.invalid-pattern',
maxLength: 'error.validation.metadata.name.max-length',
},
});
this.namespace = new DynamicInputModel({
id: 'namespace',
label: namespace,
name: 'namespace',
validators: {
required: null,
maxLength: 256,
},
required: true,
errorMessages: {
maxLength: 'error.validation.metadata.namespace.max-length',
},
});
this.formModel = [
new DynamicFormGroupModel(
{
id: 'metadatadataschemagroup',
group:[this.namespace, this.name],
}),
];
this.formGroup = this.formBuilderService.createFormGroup(this.formModel);
this.registryService.getActiveMetadataSchema().subscribe((schema: MetadataSchema) => {
if (schema == null) {
this.clearFields();
} else {
this.formGroup.patchValue({
metadatadataschemagroup: {
name: schema.prefix,
namespace: schema.namespace,
},
});
this.name.disabled = true;
}
});
this.name = new DynamicInputModel({
id: 'name',
label: this.translateService.instant(`${this.messagePrefix}.name`),
name: 'name',
validators: {
required: null,
pattern: '^[^. ,]*$',
maxLength: 32,
},
required: true,
errorMessages: {
pattern: 'error.validation.metadata.name.invalid-pattern',
maxLength: 'error.validation.metadata.name.max-length',
},
});
this.namespace = new DynamicInputModel({
id: 'namespace',
label: this.translateService.instant(`${this.messagePrefix}.namespace`),
name: 'namespace',
validators: {
required: null,
maxLength: 256,
},
required: true,
errorMessages: {
maxLength: 'error.validation.metadata.namespace.max-length',
},
});
this.formModel = [
new DynamicFormGroupModel(
{
id: 'metadatadataschemagroup',
group:[this.namespace, this.name],
}),
];
this.formGroup = this.formBuilderService.createFormGroup(this.formModel);
this.activeMetadataSchema$ = this.registryService.getActiveMetadataSchema();
this.subscriptions.push(this.activeMetadataSchema$.subscribe((schema: MetadataSchema) => {
if (schema == null) {
this.clearFields();
} else {
this.formGroup.patchValue({
metadatadataschemagroup: {
name: schema.prefix,
namespace: schema.namespace,
},
});
this.name.disabled = true;
}
}));
}
/**
@@ -176,48 +183,29 @@ export class MetadataSchemaFormComponent implements OnInit, OnDestroy {
* Emit the updated/created schema using the EventEmitter submitForm
*/
onSubmit(): void {
this.registryService
.getActiveMetadataSchema()
.pipe(
take(1),
switchMap((schema: MetadataSchema) => {
const metadataValues = {
prefix: this.name.value,
namespace: this.namespace.value,
};
let createOrUpdate$: Observable<MetadataSchema>;
if (schema == null) {
createOrUpdate$ =
this.registryService.createOrUpdateMetadataSchema(
Object.assign(new MetadataSchema(), metadataValues),
);
} else {
const updatedSchema = Object.assign(
new MetadataSchema(),
schema,
{
namespace: metadataValues.namespace,
},
);
createOrUpdate$ =
this.registryService.createOrUpdateMetadataSchema(
updatedSchema,
);
}
return createOrUpdate$;
}),
tap(() => {
this.registryService.clearMetadataSchemaRequests().subscribe();
}),
)
.subscribe((updatedOrCreatedSchema: MetadataSchema) => {
this.submitForm.emit(updatedOrCreatedSchema);
this.clearFields();
this.registryService.cancelEditMetadataSchema();
});
this.activeMetadataSchema$.pipe(
take(1),
switchMap((schema: MetadataSchema) => {
const metadataValues = {
prefix: this.name.value,
namespace: this.namespace.value,
};
if (schema == null) {
return this.registryService.createOrUpdateMetadataSchema(Object.assign(new MetadataSchema(), metadataValues));
} else {
return this.registryService.createOrUpdateMetadataSchema(Object.assign(new MetadataSchema(), schema, {
namespace: metadataValues.namespace,
}));
}
}),
switchMap((updatedOrCreatedSchema: MetadataSchema) => this.registryService.clearMetadataSchemaRequests().pipe(
map(() => updatedOrCreatedSchema),
)),
).subscribe((updatedOrCreatedSchema: MetadataSchema) => {
this.submitForm.emit(updatedOrCreatedSchema);
this.clearFields();
this.registryService.cancelEditMetadataSchema();
});
}
/**
@@ -233,5 +221,6 @@ export class MetadataSchemaFormComponent implements OnInit, OnDestroy {
*/
ngOnDestroy(): void {
this.onCancel();
this.subscriptions.forEach((subscription: Subscription) => subscription.unsubscribe());
}
}

View File

@@ -1,4 +1,4 @@
<div *ngIf="registryService.getActiveMetadataField() | async; then editheader; else createHeader"></div>
<div *ngIf="activeMetadataField$ | async; then editheader; else createHeader"></div>
<ng-template #createHeader>
<h2>{{messagePrefix + '.create' | translate}}</h2>

View File

@@ -1,5 +1,5 @@
import { CommonModule } from '@angular/common';
import { NO_ERRORS_SCHEMA } from '@angular/core';
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import {
ComponentFixture,
inject,
@@ -17,13 +17,15 @@ import { RegistryService } from '../../../../core/registry/registry.service';
import { FormBuilderService } from '../../../../shared/form/builder/form-builder.service';
import { FormComponent } from '../../../../shared/form/form.component';
import { getMockFormBuilderService } from '../../../../shared/mocks/form-builder-service.mock';
import { RegistryServiceStub } from '../../../../shared/testing/registry.service.stub';
import { EnumKeysPipe } from '../../../../shared/utils/enum-keys-pipe';
import { MetadataFieldFormComponent } from './metadata-field-form.component';
describe('MetadataFieldFormComponent', () => {
let component: MetadataFieldFormComponent;
let fixture: ComponentFixture<MetadataFieldFormComponent>;
let registryService: RegistryService;
let registryService: RegistryServiceStub;
const metadataSchema = Object.assign(new MetadataSchema(), {
id: 1,
@@ -31,37 +33,16 @@ describe('MetadataFieldFormComponent', () => {
prefix: 'fake',
});
/* eslint-disable no-empty,@typescript-eslint/no-empty-function */
const registryServiceStub = {
getActiveMetadataField: () => observableOf(undefined),
createMetadataField: (field: MetadataField) => observableOf(field),
updateMetadataField: (field: MetadataField) => observableOf(field),
cancelEditMetadataField: () => {
},
cancelEditMetadataSchema: () => {
},
clearMetadataFieldRequests: () => observableOf(undefined),
};
const formBuilderServiceStub = {
createFormGroup: () => {
return {
patchValue: () => {
},
reset(_value?: any, _options?: { onlySelf?: boolean; emitEvent?: boolean; }): void {
},
};
},
};
/* eslint-enable no-empty, @typescript-eslint/no-empty-function */
beforeEach(waitForAsync(() => {
registryService = new RegistryServiceStub();
return TestBed.configureTestingModule({
imports: [CommonModule, RouterTestingModule.withRoutes([]), TranslateModule.forRoot(), NgbModule, MetadataFieldFormComponent, EnumKeysPipe],
providers: [
{ provide: RegistryService, useValue: registryServiceStub },
{ provide: RegistryService, useValue: registryService },
{ provide: FormBuilderService, useValue: getMockFormBuilderService() },
],
schemas: [NO_ERRORS_SCHEMA],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
})
.overrideComponent(MetadataFieldFormComponent, {
remove: { imports: [FormComponent] },

View File

@@ -22,7 +22,7 @@ import {
TranslateModule,
TranslateService,
} from '@ngx-translate/core';
import { combineLatest } from 'rxjs';
import { Observable } from 'rxjs';
import { take } from 'rxjs/operators';
import { MetadataField } from '../../../../core/metadata/metadata-field.model';
@@ -113,6 +113,8 @@ export class MetadataFieldFormComponent implements OnInit, OnDestroy {
*/
@Output() submitForm: EventEmitter<any> = new EventEmitter();
activeMetadataField$: Observable<MetadataField>;
constructor(public registryService: RegistryService,
private formBuilderService: FormBuilderService,
private translateService: TranslateService) {
@@ -121,71 +123,66 @@ export class MetadataFieldFormComponent implements OnInit, OnDestroy {
/**
* Initialize the component, setting up the necessary Models for the dynamic form
*/
ngOnInit() {
combineLatest([
this.translateService.get(`${this.messagePrefix}.element`),
this.translateService.get(`${this.messagePrefix}.qualifier`),
this.translateService.get(`${this.messagePrefix}.scopenote`),
]).subscribe(([element, qualifier, scopenote]) => {
this.element = new DynamicInputModel({
id: 'element',
label: element,
name: 'element',
validators: {
required: null,
pattern: '^[^. ,]*$',
maxLength: 64,
},
required: true,
errorMessages: {
pattern: 'error.validation.metadata.element.invalid-pattern',
maxLength: 'error.validation.metadata.element.max-length',
},
});
this.qualifier = new DynamicInputModel({
id: 'qualifier',
label: qualifier,
name: 'qualifier',
validators: {
pattern: '^[^. ,]*$',
maxLength: 64,
},
required: false,
errorMessages: {
pattern: 'error.validation.metadata.qualifier.invalid-pattern',
maxLength: 'error.validation.metadata.qualifier.max-length',
},
});
this.scopeNote = new DynamicTextAreaModel({
id: 'scopeNote',
label: scopenote,
name: 'scopeNote',
required: false,
rows: 5,
});
this.formModel = [
new DynamicFormGroupModel(
{
id: 'metadatadatafieldgroup',
group:[this.element, this.qualifier, this.scopeNote],
}),
];
this.formGroup = this.formBuilderService.createFormGroup(this.formModel);
this.registryService.getActiveMetadataField().subscribe((field: MetadataField): void => {
if (field == null) {
this.clearFields();
} else {
this.formGroup.patchValue({
metadatadatafieldgroup: {
element: field.element,
qualifier: field.qualifier,
scopeNote: field.scopeNote,
},
});
this.element.disabled = true;
this.qualifier.disabled = true;
}
});
ngOnInit(): void {
this.activeMetadataField$ = this.registryService.getActiveMetadataField();
this.element = new DynamicInputModel({
id: 'element',
label: this.translateService.instant(`${this.messagePrefix}.element`),
name: 'element',
validators: {
required: null,
pattern: '^[^. ,]*$',
maxLength: 64,
},
required: true,
errorMessages: {
pattern: 'error.validation.metadata.element.invalid-pattern',
maxLength: 'error.validation.metadata.element.max-length',
},
});
this.qualifier = new DynamicInputModel({
id: 'qualifier',
label: this.translateService.instant(`${this.messagePrefix}.qualifier`),
name: 'qualifier',
validators: {
pattern: '^[^. ,]*$',
maxLength: 64,
},
required: false,
errorMessages: {
pattern: 'error.validation.metadata.qualifier.invalid-pattern',
maxLength: 'error.validation.metadata.qualifier.max-length',
},
});
this.scopeNote = new DynamicTextAreaModel({
id: 'scopeNote',
label: this.translateService.instant(`${this.messagePrefix}.scopenote`),
name: 'scopeNote',
required: false,
rows: 5,
});
this.formModel = [
new DynamicFormGroupModel(
{
id: 'metadatadatafieldgroup',
group:[this.element, this.qualifier, this.scopeNote],
}),
];
this.formGroup = this.formBuilderService.createFormGroup(this.formModel);
this.registryService.getActiveMetadataField().subscribe((field: MetadataField): void => {
if (field == null) {
this.clearFields();
} else {
this.formGroup.patchValue({
metadatadatafieldgroup: {
element: field.element,
qualifier: field.qualifier,
scopeNote: field.scopeNote,
},
});
this.element.disabled = true;
this.qualifier.disabled = true;
}
});
}

View File

@@ -31,8 +31,8 @@
</thead>
<tbody>
<tr *ngFor="let field of fields?.page"
[ngClass]="{'table-primary' : isActive(field) | async}">
<td *ngVar="(isSelected(field) | async) as selected">
[ngClass]="{'table-primary' : (activeField$ | async)?.id === field.id}">
<td *ngVar="(selectedMetadataFieldIDs$ | async)?.includes(field.id) as selected">
<input type="checkbox"
[attr.aria-label]="(selected ? 'admin.registries.schema.fields.deselect' : 'admin.registries.schema.fields.select') | translate"
[checked]="selected"

View File

@@ -1,5 +1,5 @@
import { CommonModule } from '@angular/common';
import { NO_ERRORS_SCHEMA } from '@angular/core';
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import {
ComponentFixture,
inject,
@@ -7,16 +7,12 @@ import {
waitForAsync,
} from '@angular/core/testing';
import { By } from '@angular/platform-browser';
import {
ActivatedRoute,
Router,
} from '@angular/router';
import { ActivatedRoute } from '@angular/router';
import { RouterTestingModule } from '@angular/router/testing';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
import { TranslateModule } from '@ngx-translate/core';
import { of as observableOf } from 'rxjs';
import { RestResponse } from '../../../core/cache/response.models';
import { ConfigurationDataService } from '../../../core/data/configuration-data.service';
import { buildPaginatedList } from '../../../core/data/paginated-list.model';
import { GroupDataService } from '../../../core/eperson/group-data.service';
@@ -34,7 +30,7 @@ import { ActivatedRouteStub } from '../../../shared/testing/active-router.stub';
import { HostWindowServiceStub } from '../../../shared/testing/host-window-service.stub';
import { NotificationsServiceStub } from '../../../shared/testing/notifications-service.stub';
import { PaginationServiceStub } from '../../../shared/testing/pagination-service.stub';
import { RouterStub } from '../../../shared/testing/router.stub';
import { RegistryServiceStub } from '../../../shared/testing/registry.service.stub';
import { SearchConfigurationServiceStub } from '../../../shared/testing/search-configuration-service.stub';
import { createPaginatedList } from '../../../shared/testing/utils.test';
import { EnumKeysPipe } from '../../../shared/utils/enum-keys-pipe';
@@ -45,8 +41,12 @@ import { MetadataSchemaComponent } from './metadata-schema.component';
describe('MetadataSchemaComponent', () => {
let comp: MetadataSchemaComponent;
let fixture: ComponentFixture<MetadataSchemaComponent>;
let registryService: RegistryService;
const mockSchemasList = [
let registryService: RegistryServiceStub;
let activatedRoute: ActivatedRouteStub;
let paginationService: PaginationServiceStub;
const mockSchemasList: MetadataSchema[] = [
{
id: 1,
_links: {
@@ -67,8 +67,8 @@ describe('MetadataSchemaComponent', () => {
prefix: 'mock',
namespace: 'http://dspace.org/mockschema',
},
];
const mockFieldsList = [
] as MetadataSchema[];
const mockFieldsList: MetadataField[] = [
{
id: 1,
_links: {
@@ -117,33 +117,8 @@ describe('MetadataSchemaComponent', () => {
scopeNote: null,
schema: createSuccessfulRemoteDataObject$(mockSchemasList[1]),
},
];
const mockSchemas = createSuccessfulRemoteDataObject$(buildPaginatedList(null, mockSchemasList));
/* eslint-disable no-empty,@typescript-eslint/no-empty-function */
const registryServiceStub = {
getMetadataSchemas: () => mockSchemas,
getMetadataFieldsBySchema: (schema: MetadataSchema) => createSuccessfulRemoteDataObject$(buildPaginatedList(null, mockFieldsList.filter((value) => value.id === 3 || value.id === 4))),
getMetadataSchemaByPrefix: (schemaName: string) => createSuccessfulRemoteDataObject$(mockSchemasList.filter((value) => value.prefix === schemaName)[0]),
getActiveMetadataField: () => observableOf(undefined),
getSelectedMetadataFields: () => observableOf([]),
editMetadataField: (schema) => {
},
cancelEditMetadataField: () => {
},
deleteMetadataField: () => observableOf(new RestResponse(true, 200, 'OK')),
deselectAllMetadataField: () => {
},
clearMetadataFieldRequests: () => observableOf(undefined),
};
/* eslint-enable no-empty, @typescript-eslint/no-empty-function */
] as MetadataField[];
const schemaNameParam = 'mock';
const activatedRouteStub = Object.assign(new ActivatedRouteStub(), {
params: observableOf({
schemaName: schemaNameParam,
}),
});
const paginationService = new PaginationServiceStub();
const configurationDataService = jasmine.createSpyObj('configurationDataService', {
findByPropertyName: createSuccessfulRemoteDataObject$(Object.assign(new ConfigurationProperty(), {
@@ -162,6 +137,14 @@ describe('MetadataSchemaComponent', () => {
beforeEach(waitForAsync(() => {
activatedRoute = new ActivatedRouteStub({
schemaName: schemaNameParam,
});
paginationService = new PaginationServiceStub();
registryService = new RegistryServiceStub();
spyOn(registryService, 'getMetadataFieldsBySchema').and.returnValue(createSuccessfulRemoteDataObject$(buildPaginatedList(null, mockFieldsList.filter((value) => value.id === 3 || value.id === 4))));
spyOn(registryService, 'getMetadataSchemaByPrefix').and.callFake((schemaName) => createSuccessfulRemoteDataObject$(mockSchemasList.filter((value) => value.prefix === schemaName)[0]));
TestBed.configureTestingModule({
imports: [
CommonModule,
@@ -174,10 +157,9 @@ describe('MetadataSchemaComponent', () => {
VarDirective,
],
providers: [
{ provide: RegistryService, useValue: registryServiceStub },
{ provide: ActivatedRoute, useValue: activatedRouteStub },
{ provide: RegistryService, useValue: registryService },
{ provide: ActivatedRoute, useValue: activatedRoute },
{ provide: HostWindowService, useValue: new HostWindowServiceStub(0) },
{ provide: Router, useValue: new RouterStub() },
{ provide: PaginationService, useValue: paginationService },
{
provide: NotificationsService,
@@ -187,7 +169,7 @@ describe('MetadataSchemaComponent', () => {
{ provide: ConfigurationDataService, useValue: configurationDataService },
{ provide: SearchConfigurationService, useValue: new SearchConfigurationServiceStub() },
],
schemas: [NO_ERRORS_SCHEMA],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
})
.overrideComponent(MetadataSchemaComponent, {
remove: {
@@ -242,7 +224,7 @@ describe('MetadataSchemaComponent', () => {
}));
it('should cancel editing the selected field when clicked again', waitForAsync(() => {
spyOn(registryService, 'getActiveMetadataField').and.returnValue(observableOf(mockFieldsList[2] as MetadataField));
comp.activeField$ = observableOf(mockFieldsList[2] as MetadataField);
spyOn(registryService, 'cancelEditMetadataField');
row.click();
fixture.detectChanges();
@@ -257,7 +239,7 @@ describe('MetadataSchemaComponent', () => {
beforeEach(() => {
spyOn(registryService, 'deleteMetadataField').and.callThrough();
spyOn(registryService, 'getSelectedMetadataFields').and.returnValue(observableOf(selectedFields as MetadataField[]));
comp.selectedMetadataFieldIDs$ = observableOf(selectedFields.map((metadataField: MetadataField) => metadataField.id));
comp.deleteFields();
fixture.detectChanges();
});

View File

@@ -20,9 +20,9 @@ import {
import {
BehaviorSubject,
combineLatest,
combineLatest as observableCombineLatest,
Observable,
of as observableOf,
Subscription,
zip,
} from 'rxjs';
import {
@@ -42,7 +42,6 @@ import {
getFirstCompletedRemoteData,
getFirstSucceededRemoteDataPayload,
} from '../../../core/shared/operators';
import { hasValue } from '../../../shared/empty.util';
import { NotificationsService } from '../../../shared/notifications/notifications.service';
import { PaginationComponent } from '../../../shared/pagination/pagination.component';
import { toFindListOptions } from '../../../shared/pagination/pagination.utils';
@@ -71,7 +70,7 @@ import { MetadataFieldFormComponent } from './metadata-field-form/metadata-field
* A component used for managing all existing metadata fields within the current metadata schema.
* The admin can create, edit or delete metadata fields here.
*/
export class MetadataSchemaComponent implements OnInit, OnDestroy {
export class MetadataSchemaComponent implements OnDestroy, OnInit {
/**
* The metadata schema
*/
@@ -96,26 +95,33 @@ export class MetadataSchemaComponent implements OnInit, OnDestroy {
*/
needsUpdate$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(true);
constructor(private registryService: RegistryService,
private route: ActivatedRoute,
private notificationsService: NotificationsService,
private paginationService: PaginationService,
private translateService: TranslateService) {
/**
* The current {@link MetadataField} that is being edited
*/
activeField$: Observable<MetadataField>;
/**
* The selected {@link MetadataField} IDs
*/
selectedMetadataFieldIDs$: Observable<number[]>;
subscriptions: Subscription[] = [];
constructor(
protected registryService: RegistryService,
protected route: ActivatedRoute,
protected notificationsService: NotificationsService,
protected paginationService: PaginationService,
protected translateService: TranslateService,
) {
}
ngOnInit(): void {
this.route.params.subscribe((params) => {
this.initialize(params);
});
}
/**
* Initialize the component using the params within the url (schemaName)
* @param params
*/
initialize(params) {
this.metadataSchema$ = this.registryService.getMetadataSchemaByPrefix(params.schemaName).pipe(getFirstSucceededRemoteDataPayload());
this.metadataSchema$ = this.registryService.getMetadataSchemaByPrefix(this.route.snapshot.params.schemaName).pipe(getFirstSucceededRemoteDataPayload());
this.activeField$ = this.registryService.getActiveMetadataField();
this.selectedMetadataFieldIDs$ = this.registryService.getSelectedMetadataFields().pipe(
map((metadataFields: MetadataField[]) => metadataFields.map((metadataField: MetadataField) => metadataField.id)),
);
this.updateFields();
}
@@ -148,30 +154,13 @@ export class MetadataSchemaComponent implements OnInit, OnDestroy {
* @param field
*/
editField(field: MetadataField) {
this.getActiveField().pipe(take(1)).subscribe((activeField) => {
this.subscriptions.push(this.activeField$.pipe(take(1)).subscribe((activeField) => {
if (field === activeField) {
this.registryService.cancelEditMetadataField();
} else {
this.registryService.editMetadataField(field);
}
});
}
/**
* Checks whether the given metadata field is active (being edited)
* @param field
*/
isActive(field: MetadataField): Observable<boolean> {
return this.getActiveField().pipe(
map((activeField) => field === activeField),
);
}
/**
* Gets the active metadata field (being edited)
*/
getActiveField(): Observable<MetadataField> {
return this.registryService.getActiveMetadataField();
}));
}
/**
@@ -185,42 +174,25 @@ export class MetadataSchemaComponent implements OnInit, OnDestroy {
this.registryService.deselectMetadataField(field);
}
/**
* Checks whether a given metadata field is selected in the list (checkbox)
* @param field
*/
isSelected(field: MetadataField): Observable<boolean> {
return this.registryService.getSelectedMetadataFields().pipe(
map((fields) => fields.find((selectedField) => selectedField === field) != null),
);
}
/**
* Delete all the selected metadata fields
*/
deleteFields() {
this.registryService.getSelectedMetadataFields().pipe(take(1)).subscribe(
(fields) => {
const tasks$ = [];
for (const field of fields) {
if (hasValue(field.id)) {
tasks$.push(this.registryService.deleteMetadataField(field.id).pipe(getFirstCompletedRemoteData()));
}
}
zip(...tasks$).subscribe((responses: RemoteData<NoContent>[]) => {
const successResponses = responses.filter((response: RemoteData<NoContent>) => response.hasSucceeded);
const failedResponses = responses.filter((response: RemoteData<NoContent>) => response.hasFailed);
if (successResponses.length > 0) {
this.showNotification(true, successResponses.length);
}
if (failedResponses.length > 0) {
this.showNotification(false, failedResponses.length);
}
this.registryService.deselectAllMetadataField();
this.registryService.cancelEditMetadataField();
});
},
);
this.subscriptions.push(this.selectedMetadataFieldIDs$.pipe(
take(1),
switchMap((fieldIDs) => zip(fieldIDs.map((fieldID) => this.registryService.deleteMetadataField(fieldID).pipe(getFirstCompletedRemoteData())))),
).subscribe((responses: RemoteData<NoContent>[]) => {
const successResponses = responses.filter((response: RemoteData<NoContent>) => response.hasSucceeded);
const failedResponses = responses.filter((response: RemoteData<NoContent>) => response.hasFailed);
if (successResponses.length > 0) {
this.showNotification(true, successResponses.length);
}
if (failedResponses.length > 0) {
this.showNotification(false, failedResponses.length);
}
this.registryService.deselectAllMetadataField();
this.registryService.cancelEditMetadataField();
}));
}
/**
@@ -231,21 +203,19 @@ export class MetadataSchemaComponent implements OnInit, OnDestroy {
showNotification(success: boolean, amount: number) {
const prefix = 'admin.registries.schema.notification';
const suffix = success ? 'success' : 'failure';
const messages = observableCombineLatest([
this.translateService.get(success ? `${prefix}.${suffix}` : `${prefix}.${suffix}`),
this.translateService.get(`${prefix}.field.deleted.${suffix}`, { amount: amount }),
]);
messages.subscribe(([head, content]) => {
if (success) {
this.notificationsService.success(head, content);
} else {
this.notificationsService.error(head, content);
}
});
const head = this.translateService.instant(success ? `${prefix}.${suffix}` : `${prefix}.${suffix}`);
const content = this.translateService.instant(`${prefix}.field.deleted.${suffix}`, { amount: amount });
if (success) {
this.notificationsService.success(head, content);
} else {
this.notificationsService.error(head, content);
}
}
ngOnDestroy(): void {
this.paginationService.clearPagination(this.config.id);
this.registryService.deselectAllMetadataField();
this.subscriptions.forEach((subscription: Subscription) => subscription.unsubscribe());
}
}

Some files were not shown because too many files have changed in this diff Show More