diff --git a/.browserslistrc b/.browserslistrc
deleted file mode 100644
index 427441dc93..0000000000
--- a/.browserslistrc
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is used by the build system to adjust CSS and JS output to support the specified browsers below.
-# For additional information regarding the format and rule options, please see:
-# https://github.com/browserslist/browserslist#queries
-
-# For the full list of supported browsers by the Angular framework, please see:
-# https://angular.io/guide/browser-support
-
-# You can see what browsers were selected by your queries by running:
-# npx browserslist
-
-last 1 Chrome version
-last 1 Firefox version
-last 2 Edge major versions
-last 2 Safari major versions
-last 2 iOS major versions
-Firefox ESR
-not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line.
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 6fae54f1f9..219074780e 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -31,6 +31,8 @@ jobs:
# 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"
+ # Bump Node heap size (OOM in CI after upgrading to Angular 15)
+ NODE_OPTIONS: '--max-old-space-size=4096'
strategy:
# Create a matrix of Node versions to test against (in parallel)
matrix:
diff --git a/angular.json b/angular.json
index 56c75d7b2d..5e597d4d30 100644
--- a/angular.json
+++ b/angular.json
@@ -274,9 +274,18 @@
}
}
},
- "defaultProject": "dspace-angular",
"cli": {
"analytics": false,
- "defaultCollection": "@angular-eslint/schematics"
+ "schematicCollections": [
+ "@angular-eslint/schematics"
+ ]
+ },
+ "schematics": {
+ "@angular-eslint/schematics:application": {
+ "setParserOptionsProject": true
+ },
+ "@angular-eslint/schematics:library": {
+ "setParserOptionsProject": true
+ }
}
}
diff --git a/config/config.example.yml b/config/config.example.yml
index f1e6be76aa..ea38303fa3 100644
--- a/config/config.example.yml
+++ b/config/config.example.yml
@@ -187,6 +187,9 @@ languages:
- code: gd
label: Gàidhlig
active: true
+ - code: it
+ label: Italiano
+ active: true
- code: lv
label: Latviešu
active: true
@@ -214,6 +217,9 @@ languages:
- code: tr
label: Türkçe
active: true
+ - code: vi
+ label: Tiếng Việt
+ active: true
- code: kk
label: Қазақ
active: true
diff --git a/package.json b/package.json
index e1bedeb02b..59766e993b 100644
--- a/package.json
+++ b/package.json
@@ -17,9 +17,9 @@
"build:stats": "ng build --stats-json",
"build:prod": "yarn run build:ssr",
"build:ssr": "ng build --configuration production && ng run dspace-angular:server:production",
- "test": "ng test --sourceMap=true --watch=false --configuration test",
- "test:watch": "nodemon --exec \"ng test --sourceMap=true --watch=true --configuration test\"",
- "test:headless": "ng test --sourceMap=true --watch=false --configuration test --browsers=ChromeHeadless --code-coverage",
+ "test": "ng test --source-map=true --watch=false --configuration test",
+ "test:watch": "nodemon --exec \"ng test --source-map=true --watch=true --configuration test\"",
+ "test:headless": "ng test --source-map=true --watch=false --configuration test --browsers=ChromeHeadless --code-coverage",
"lint": "ng lint",
"lint-fix": "ng lint --fix=true",
"e2e": "ng e2e",
@@ -55,136 +55,136 @@
"ts-node": "10.2.1"
},
"dependencies": {
- "@angular/animations": "~13.3.12",
- "@angular/cdk": "^13.2.6",
- "@angular/common": "~13.3.12",
- "@angular/compiler": "~13.3.12",
- "@angular/core": "~13.3.12",
- "@angular/forms": "~13.3.12",
- "@angular/localize": "13.3.12",
- "@angular/platform-browser": "~13.3.12",
- "@angular/platform-browser-dynamic": "~13.3.12",
- "@angular/platform-server": "~13.3.12",
- "@angular/router": "~13.3.12",
- "@babel/runtime": "7.17.2",
+ "@angular/animations": "^15.2.8",
+ "@angular/cdk": "^15.2.8",
+ "@angular/common": "^15.2.8",
+ "@angular/compiler": "^15.2.8",
+ "@angular/core": "^15.2.8",
+ "@angular/forms": "^15.2.8",
+ "@angular/localize": "15.2.8",
+ "@angular/platform-browser": "^15.2.8",
+ "@angular/platform-browser-dynamic": "^15.2.8",
+ "@angular/platform-server": "^15.2.8",
+ "@angular/router": "^15.2.8",
+ "@babel/runtime": "7.21.0",
"@kolkov/ngx-gallery": "^2.0.1",
"@material-ui/core": "^4.11.0",
- "@material-ui/icons": "^4.9.1",
+ "@material-ui/icons": "^4.11.3",
"@ng-bootstrap/ng-bootstrap": "^11.0.0",
"@ng-dynamic-forms/core": "^15.0.0",
"@ng-dynamic-forms/ui-ng-bootstrap": "^15.0.0",
- "@ngrx/effects": "^13.0.2",
- "@ngrx/router-store": "^13.0.2",
- "@ngrx/store": "^13.0.2",
- "@nguniversal/express-engine": "^13.0.2",
- "@ngx-translate/core": "^13.0.0",
- "@nicky-lenaers/ngx-scroll-to": "^13.0.0",
+ "@ngrx/effects": "^15.4.0",
+ "@ngrx/router-store": "^15.4.0",
+ "@ngrx/store": "^15.4.0",
+ "@nguniversal/express-engine": "^15.2.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.0.0",
+ "angulartics2": "^12.2.0",
"axios": "^0.27.2",
"bootstrap": "^4.6.1",
"cerialize": "0.1.18",
- "cli-progress": "^3.8.0",
+ "cli-progress": "^3.12.0",
"colors": "^1.4.0",
"compression": "^1.7.4",
- "cookie-parser": "1.4.5",
- "core-js": "^3.7.0",
+ "cookie-parser": "1.4.6",
+ "core-js": "^3.30.1",
"date-fns": "^2.29.3",
"date-fns-tz": "^1.3.7",
- "deepmerge": "^4.2.2",
- "ejs": "^3.1.8",
- "express": "^4.17.1",
+ "deepmerge": "^4.3.1",
+ "ejs": "^3.1.9",
+ "express": "^4.18.2",
"express-rate-limit": "^5.1.3",
- "fast-json-patch": "^3.0.0-1",
+ "fast-json-patch": "^3.1.1",
"filesize": "^6.1.0",
"http-proxy-middleware": "^1.0.5",
- "isbot": "^3.6.5",
+ "isbot": "^3.6.10",
"js-cookie": "2.2.1",
"js-yaml": "^4.1.0",
- "json5": "^2.2.2",
- "jsonschema": "1.4.0",
+ "json5": "^2.2.3",
+ "jsonschema": "1.4.1",
"jwt-decode": "^3.1.2",
"klaro": "^0.7.18",
"lodash": "^4.17.21",
"lru-cache": "^7.14.1",
"markdown-it": "^13.0.1",
- "markdown-it-mathjax3": "^4.3.1",
+ "markdown-it-mathjax3": "^4.3.2",
"mirador": "^3.3.0",
"mirador-dl-plugin": "^0.13.0",
"mirador-share-plugin": "^0.11.0",
"morgan": "^1.10.0",
- "ng-mocks": "^13.1.1",
+ "ng-mocks": "^14.10.0",
"ng2-file-upload": "1.4.0",
"ng2-nouislider": "^1.8.3",
- "ngx-infinite-scroll": "^10.0.1",
- "ngx-pagination": "5.0.0",
+ "ngx-infinite-scroll": "^15.0.0",
+ "ngx-pagination": "6.0.3",
"ngx-sortablejs": "^11.1.0",
- "ngx-ui-switch": "^13.0.2",
+ "ngx-ui-switch": "^14.0.3",
"nouislider": "^14.6.3",
- "pem": "1.14.4",
- "prop-types": "^15.7.2",
- "react-copy-to-clipboard": "^5.0.1",
+ "pem": "1.14.7",
+ "prop-types": "^15.8.1",
+ "react-copy-to-clipboard": "^5.1.0",
"reflect-metadata": "^0.1.13",
- "rxjs": "^7.5.5",
- "sanitize-html": "^2.7.2",
- "sortablejs": "1.13.0",
+ "rxjs": "^7.8.0",
+ "sanitize-html": "^2.10.0",
+ "sortablejs": "1.15.0",
"uuid": "^8.3.2",
"webfontloader": "1.6.28",
"zone.js": "~0.11.5"
},
"devDependencies": {
- "@angular-builders/custom-webpack": "~13.1.0",
- "@angular-devkit/build-angular": "~13.3.10",
- "@angular-eslint/builder": "13.1.0",
- "@angular-eslint/eslint-plugin": "13.1.0",
- "@angular-eslint/eslint-plugin-template": "13.1.0",
- "@angular-eslint/schematics": "13.1.0",
- "@angular-eslint/template-parser": "13.1.0",
- "@angular/cli": "~13.3.10",
- "@angular/compiler-cli": "~13.3.12",
- "@angular/language-service": "~13.3.12",
+ "@angular-builders/custom-webpack": "~15.0.0",
+ "@angular-devkit/build-angular": "^15.2.6",
+ "@angular-eslint/builder": "15.2.1",
+ "@angular-eslint/eslint-plugin": "15.2.1",
+ "@angular-eslint/eslint-plugin-template": "15.2.1",
+ "@angular-eslint/schematics": "15.2.1",
+ "@angular-eslint/template-parser": "15.2.1",
+ "@angular/cli": "^15.2.6",
+ "@angular/compiler-cli": "^15.2.8",
+ "@angular/language-service": "^15.2.8",
"@cypress/schematic": "^1.5.0",
- "@fortawesome/fontawesome-free": "^6.2.1",
- "@ngrx/store-devtools": "^13.0.2",
- "@ngtools/webpack": "^13.2.6",
- "@nguniversal/builders": "^13.1.1",
+ "@fortawesome/fontawesome-free": "^6.4.0",
+ "@ngrx/store-devtools": "^15.4.0",
+ "@ngtools/webpack": "^15.2.6",
+ "@nguniversal/builders": "^15.2.1",
"@types/deep-freeze": "0.1.2",
- "@types/ejs": "^3.1.1",
- "@types/express": "^4.17.9",
+ "@types/ejs": "^3.1.2",
+ "@types/express": "^4.17.17",
"@types/jasmine": "~3.6.0",
"@types/js-cookie": "2.2.6",
- "@types/lodash": "^4.14.165",
+ "@types/lodash": "^4.14.194",
"@types/node": "^14.14.9",
- "@types/sanitize-html": "^2.6.2",
- "@typescript-eslint/eslint-plugin": "5.11.0",
- "@typescript-eslint/parser": "5.11.0",
- "axe-core": "^4.4.3",
+ "@types/sanitize-html": "^2.9.0",
+ "@typescript-eslint/eslint-plugin": "^5.59.1",
+ "@typescript-eslint/parser": "^5.59.1",
+ "axe-core": "^4.7.0",
"compression-webpack-plugin": "^9.2.0",
"copy-webpack-plugin": "^6.4.1",
"cross-env": "^7.0.3",
- "cypress": "12.9.0",
- "cypress-axe": "^1.1.0",
+ "cypress": "12.10.0",
+ "cypress-axe": "^1.4.0",
"deep-freeze": "0.0.1",
- "eslint": "^8.2.0",
- "eslint-plugin-deprecation": "^1.3.2",
- "eslint-plugin-import": "^2.25.4",
+ "eslint": "^8.39.0",
+ "eslint-plugin-deprecation": "^1.4.1",
+ "eslint-plugin-import": "^2.27.5",
"eslint-plugin-jsdoc": "^39.6.4",
"eslint-plugin-jsonc": "^2.6.0",
"eslint-plugin-lodash": "^7.4.0",
"eslint-plugin-unused-imports": "^2.0.0",
- "express-static-gzip": "^2.1.5",
+ "express-static-gzip": "^2.1.7",
"jasmine-core": "^3.8.0",
"jasmine-marbles": "0.9.2",
- "karma": "^6.3.14",
- "karma-chrome-launcher": "~3.1.0",
- "karma-coverage-istanbul-reporter": "~3.0.2",
+ "karma": "^6.4.2",
+ "karma-chrome-launcher": "~3.2.0",
+ "karma-coverage-istanbul-reporter": "~3.0.3",
"karma-jasmine": "~4.0.0",
"karma-jasmine-html-reporter": "^1.5.0",
"karma-mocha-reporter": "2.2.5",
"ngx-mask": "^13.1.7",
- "nodemon": "^2.0.20",
- "postcss": "^8.1",
+ "nodemon": "^2.0.22",
+ "postcss": "^8.4",
"postcss-apply": "0.12.0",
"postcss-import": "^14.0.0",
"postcss-loader": "^4.0.3",
@@ -194,14 +194,14 @@
"react-dom": "^16.14.0",
"rimraf": "^3.0.2",
"rxjs-spy": "^8.0.2",
- "sass": "~1.33.0",
+ "sass": "~1.62.0",
"sass-loader": "^12.6.0",
- "sass-resources-loader": "^2.1.1",
+ "sass-resources-loader": "^2.2.5",
"ts-node": "^8.10.2",
- "typescript": "~4.5.5",
- "webpack": "^5.76.0",
- "webpack-bundle-analyzer": "^4.4.0",
+ "typescript": "~4.8.4",
+ "webpack": "5.76.1",
+ "webpack-bundle-analyzer": "^4.8.0",
"webpack-cli": "^4.2.0",
- "webpack-dev-server": "^4.5.0"
+ "webpack-dev-server": "^4.13.3"
}
}
diff --git a/src/app/access-control/epeople-registry/epeople-registry.component.ts b/src/app/access-control/epeople-registry/epeople-registry.component.ts
index 55233d8173..eeeb10c7b3 100644
--- a/src/app/access-control/epeople-registry/epeople-registry.component.ts
+++ b/src/app/access-control/epeople-registry/epeople-registry.component.ts
@@ -1,5 +1,5 @@
import { Component, OnDestroy, OnInit } from '@angular/core';
-import { FormBuilder } from '@angular/forms';
+import { UntypedFormBuilder } from '@angular/forms';
import { Router } from '@angular/router';
import { TranslateService } from '@ngx-translate/core';
import { BehaviorSubject, combineLatest, Observable, Subscription } from 'rxjs';
@@ -89,7 +89,7 @@ export class EPeopleRegistryComponent implements OnInit, OnDestroy {
private translateService: TranslateService,
private notificationsService: NotificationsService,
private authorizationService: AuthorizationDataService,
- private formBuilder: FormBuilder,
+ private formBuilder: UntypedFormBuilder,
private router: Router,
private modalService: NgbModal,
private paginationService: PaginationService,
diff --git a/src/app/access-control/epeople-registry/eperson-form/eperson-form.component.spec.ts b/src/app/access-control/epeople-registry/eperson-form/eperson-form.component.spec.ts
index bf03e1defb..fb911e709c 100644
--- a/src/app/access-control/epeople-registry/eperson-form/eperson-form.component.spec.ts
+++ b/src/app/access-control/epeople-registry/eperson-form/eperson-form.component.spec.ts
@@ -2,7 +2,7 @@ import { Observable, of as observableOf } from 'rxjs';
import { CommonModule } from '@angular/common';
import { NO_ERRORS_SCHEMA } from '@angular/core';
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
-import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';
+import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';
import { BrowserModule, By } from '@angular/platform-browser';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
@@ -116,9 +116,9 @@ describe('EPersonFormComponent', () => {
const controlModel = model;
const controlState = { value: controlModel.value, disabled: controlModel.disabled };
const controlOptions = this.createAbstractControlOptions(controlModel.validators, controlModel.asyncValidators, controlModel.updateOn);
- controls[model.id] = new FormControl(controlState, controlOptions);
+ controls[model.id] = new UntypedFormControl(controlState, controlOptions);
});
- return new FormGroup(controls, options);
+ return new UntypedFormGroup(controls, options);
},
createAbstractControlOptions(validatorsConfig = null, asyncValidatorsConfig = null, updateOn = null) {
return {
diff --git a/src/app/access-control/epeople-registry/eperson-form/eperson-form.component.ts b/src/app/access-control/epeople-registry/eperson-form/eperson-form.component.ts
index 5a7ab735ca..8dbc9e92a4 100644
--- a/src/app/access-control/epeople-registry/eperson-form/eperson-form.component.ts
+++ b/src/app/access-control/epeople-registry/eperson-form/eperson-form.component.ts
@@ -1,5 +1,5 @@
import { ChangeDetectorRef, Component, EventEmitter, OnDestroy, OnInit, Output } from '@angular/core';
-import { FormGroup } from '@angular/forms';
+import { UntypedFormGroup } from '@angular/forms';
import {
DynamicCheckboxModel,
DynamicFormControlModel,
@@ -108,7 +108,7 @@ export class EPersonFormComponent implements OnInit, OnDestroy {
/**
* A FormGroup that combines all inputs
*/
- formGroup: FormGroup;
+ formGroup: UntypedFormGroup;
/**
* An EventEmitter that's fired whenever the form is being submitted
diff --git a/src/app/access-control/group-registry/group-form/group-form.component.spec.ts b/src/app/access-control/group-registry/group-form/group-form.component.spec.ts
index a7a7cb5be4..d845550b55 100644
--- a/src/app/access-control/group-registry/group-form/group-form.component.spec.ts
+++ b/src/app/access-control/group-registry/group-form/group-form.component.spec.ts
@@ -2,7 +2,7 @@ import { CommonModule } from '@angular/common';
import { HttpClient } from '@angular/common/http';
import { NO_ERRORS_SCHEMA } from '@angular/core';
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
-import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';
+import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';
import { BrowserModule, By } from '@angular/platform-browser';
import { ActivatedRoute, Router } from '@angular/router';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
@@ -130,9 +130,9 @@ describe('GroupFormComponent', () => {
const controlModel = model;
const controlState = { value: controlModel.value, disabled: controlModel.disabled };
const controlOptions = this.createAbstractControlOptions(controlModel.validators, controlModel.asyncValidators, controlModel.updateOn);
- controls[model.id] = new FormControl(controlState, controlOptions);
+ controls[model.id] = new UntypedFormControl(controlState, controlOptions);
});
- return new FormGroup(controls, options);
+ return new UntypedFormGroup(controls, options);
},
createAbstractControlOptions(validatorsConfig = null, asyncValidatorsConfig = null, updateOn = null) {
return {
diff --git a/src/app/access-control/group-registry/group-form/group-form.component.ts b/src/app/access-control/group-registry/group-form/group-form.component.ts
index 4302d126ea..72e34c1838 100644
--- a/src/app/access-control/group-registry/group-form/group-form.component.ts
+++ b/src/app/access-control/group-registry/group-form/group-form.component.ts
@@ -1,5 +1,5 @@
import { Component, EventEmitter, HostListener, OnDestroy, OnInit, Output, ChangeDetectorRef } from '@angular/core';
-import { FormGroup } from '@angular/forms';
+import { UntypedFormGroup } from '@angular/forms';
import { ActivatedRoute, Router } from '@angular/router';
import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
import {
@@ -95,7 +95,7 @@ export class GroupFormComponent implements OnInit, OnDestroy {
/**
* A FormGroup that combines all inputs
*/
- formGroup: FormGroup;
+ formGroup: UntypedFormGroup;
/**
* An EventEmitter that's fired whenever the form is being submitted
diff --git a/src/app/access-control/group-registry/group-form/members-list/members-list.component.ts b/src/app/access-control/group-registry/group-form/members-list/members-list.component.ts
index d0fc046093..56ab2f1540 100644
--- a/src/app/access-control/group-registry/group-form/members-list/members-list.component.ts
+++ b/src/app/access-control/group-registry/group-form/members-list/members-list.component.ts
@@ -1,5 +1,5 @@
import { Component, Input, OnDestroy, OnInit } from '@angular/core';
-import { FormBuilder } from '@angular/forms';
+import { UntypedFormBuilder } from '@angular/forms';
import { Router } from '@angular/router';
import { TranslateService } from '@ngx-translate/core';
import {
@@ -141,7 +141,7 @@ export class MembersListComponent implements OnInit, OnDestroy {
public ePersonDataService: EPersonDataService,
protected translateService: TranslateService,
protected notificationsService: NotificationsService,
- protected formBuilder: FormBuilder,
+ protected formBuilder: UntypedFormBuilder,
protected paginationService: PaginationService,
private router: Router
) {
diff --git a/src/app/access-control/group-registry/group-form/subgroup-list/subgroups-list.component.ts b/src/app/access-control/group-registry/group-form/subgroup-list/subgroups-list.component.ts
index 5f1700e07d..ba65026533 100644
--- a/src/app/access-control/group-registry/group-form/subgroup-list/subgroups-list.component.ts
+++ b/src/app/access-control/group-registry/group-form/subgroup-list/subgroups-list.component.ts
@@ -1,5 +1,5 @@
import { Component, Input, OnDestroy, OnInit } from '@angular/core';
-import { FormBuilder } from '@angular/forms';
+import { UntypedFormBuilder } from '@angular/forms';
import { Router } from '@angular/router';
import { TranslateService } from '@ngx-translate/core';
import { BehaviorSubject, Observable, of as observableOf, Subscription } from 'rxjs';
@@ -86,7 +86,7 @@ export class SubgroupsListComponent implements OnInit, OnDestroy {
constructor(public groupDataService: GroupDataService,
private translateService: TranslateService,
private notificationsService: NotificationsService,
- private formBuilder: FormBuilder,
+ private formBuilder: UntypedFormBuilder,
private paginationService: PaginationService,
private router: Router) {
this.currentSearchQuery = '';
diff --git a/src/app/access-control/group-registry/groups-registry.component.ts b/src/app/access-control/group-registry/groups-registry.component.ts
index 70c9b22852..e4c624e3f6 100644
--- a/src/app/access-control/group-registry/groups-registry.component.ts
+++ b/src/app/access-control/group-registry/groups-registry.component.ts
@@ -1,5 +1,5 @@
import { Component, OnDestroy, OnInit } from '@angular/core';
-import { FormBuilder } from '@angular/forms';
+import { UntypedFormBuilder } from '@angular/forms';
import { Router } from '@angular/router';
import { TranslateService } from '@ngx-translate/core';
import {
@@ -99,7 +99,7 @@ export class GroupsRegistryComponent implements OnInit, OnDestroy {
private dSpaceObjectDataService: DSpaceObjectDataService,
private translateService: TranslateService,
private notificationsService: NotificationsService,
- private formBuilder: FormBuilder,
+ private formBuilder: UntypedFormBuilder,
protected routeService: RouteService,
private router: Router,
private authorizationService: AuthorizationDataService,
diff --git a/src/app/admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.ts b/src/app/admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.ts
index 5c6885ae72..6d3138987a 100644
--- a/src/app/admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.ts
+++ b/src/app/admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.ts
@@ -5,7 +5,7 @@ import {
DynamicFormLayout,
DynamicInputModel
} from '@ng-dynamic-forms/core';
-import { FormGroup } from '@angular/forms';
+import { UntypedFormGroup } from '@angular/forms';
import { RegistryService } from '../../../../core/registry/registry.service';
import { FormBuilderService } from '../../../../shared/form/builder/form-builder.service';
import { take } from 'rxjs/operators';
@@ -66,7 +66,7 @@ export class MetadataSchemaFormComponent implements OnInit, OnDestroy {
/**
* A FormGroup that combines all inputs
*/
- formGroup: FormGroup;
+ formGroup: UntypedFormGroup;
/**
* An EventEmitter that's fired whenever the form is being submitted
diff --git a/src/app/admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.ts b/src/app/admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.ts
index 1c000c3c76..0beb306d6c 100644
--- a/src/app/admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.ts
+++ b/src/app/admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.ts
@@ -5,7 +5,7 @@ import {
DynamicFormLayout,
DynamicInputModel
} from '@ng-dynamic-forms/core';
-import { FormGroup } from '@angular/forms';
+import { UntypedFormGroup } from '@angular/forms';
import { RegistryService } from '../../../../core/registry/registry.service';
import { FormBuilderService } from '../../../../shared/form/builder/form-builder.service';
import { take } from 'rxjs/operators';
@@ -82,7 +82,7 @@ export class MetadataFieldFormComponent implements OnInit, OnDestroy {
/**
* A FormGroup that combines all inputs
*/
- formGroup: FormGroup;
+ formGroup: UntypedFormGroup;
/**
* An EventEmitter that's fired whenever the form is being submitted
diff --git a/src/app/admin/admin-search-page/admin-search-results/admin-search-result-grid-element/item-search-result/item-admin-search-result-grid-element.component.spec.ts b/src/app/admin/admin-search-page/admin-search-results/admin-search-result-grid-element/item-search-result/item-admin-search-result-grid-element.component.spec.ts
index e478aa3ef3..ee3de42131 100644
--- a/src/app/admin/admin-search-page/admin-search-results/admin-search-result-grid-element/item-search-result/item-admin-search-result-grid-element.component.spec.ts
+++ b/src/app/admin/admin-search-page/admin-search-results/admin-search-result-grid-element/item-search-result/item-admin-search-result-grid-element.component.spec.ts
@@ -19,7 +19,7 @@ import { createSuccessfulRemoteDataObject$ } from '../../../../../shared/remote-
import { getMockThemeService } from '../../../../../shared/mocks/theme-service.mock';
import { ThemeService } from '../../../../../shared/theme-support/theme.service';
import { AccessStatusDataService } from '../../../../../core/data/access-status-data.service';
-import { AccessStatusObject } from '../../../../../shared/object-list/access-status-badge/access-status.model';
+import { AccessStatusObject } from '../../../../../shared/object-collection/shared/badges/access-status-badge/access-status.model';
import { AuthService } from '../../../../../core/auth/auth.service';
import { AuthServiceStub } from '../../../../../shared/testing/auth-service.stub';
import { FileService } from '../../../../../core/shared/file.service';
diff --git a/src/app/admin/admin-search-page/admin-search-results/admin-search-result-list-element/item-search-result/item-admin-search-result-list-element.component.html b/src/app/admin/admin-search-page/admin-search-results/admin-search-result-list-element/item-search-result/item-admin-search-result-list-element.component.html
index 259512552c..991508335f 100644
--- a/src/app/admin/admin-search-page/admin-search-results/admin-search-result-list-element/item-search-result/item-admin-search-result-list-element.component.html
+++ b/src/app/admin/admin-search-page/admin-search-results/admin-search-result-list-element/item-search-result/item-admin-search-result-list-element.component.html
@@ -2,6 +2,5 @@
[viewMode]="viewModes.ListElement"
[index]="index"
[linkType]="linkType"
- [listID]="listID"
- [hideBadges]="true">
+ [listID]="listID">