diff --git a/.eslintrc.json b/.eslintrc.json index 929afa80ab..1e6e67ca76 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -160,6 +160,9 @@ ] } ], + "@angular-eslint/prefer-standalone": [ + "error" + ], "@angular-eslint/no-attribute-decorator": "error", "@angular-eslint/no-output-native": "warn", "@angular-eslint/no-output-on-prefix": "warn", diff --git a/src/app/browse-by/browse-by-page/browse-by-page.component.spec.ts b/src/app/browse-by/browse-by-page/browse-by-page.component.spec.ts index db39793cae..1ad9a4d816 100644 --- a/src/app/browse-by/browse-by-page/browse-by-page.component.spec.ts +++ b/src/app/browse-by/browse-by-page/browse-by-page.component.spec.ts @@ -20,6 +20,7 @@ import { BrowseByPageComponent } from './browse-by-page.component'; @Component({ // eslint-disable-next-line @angular-eslint/component-selector selector: '', + standalone: true, template: '', }) class BrowseByTestComponent { diff --git a/src/app/browse-by/browse-by-switcher/browse-by-switcher.component.spec.ts b/src/app/browse-by/browse-by-switcher/browse-by-switcher.component.spec.ts index 8539365f66..35197591be 100644 --- a/src/app/browse-by/browse-by-switcher/browse-by-switcher.component.spec.ts +++ b/src/app/browse-by/browse-by-switcher/browse-by-switcher.component.spec.ts @@ -20,6 +20,7 @@ import { BrowseBySwitcherComponent } from './browse-by-switcher.component'; @Component({ // eslint-disable-next-line @angular-eslint/component-selector selector: '', + standalone: true, template: '', }) class BrowseByTestComponent { diff --git a/src/app/process-page/form/process-parameters/parameter-value-input/value-input.component.ts b/src/app/process-page/form/process-parameters/parameter-value-input/value-input.component.ts index d224c4f0cd..3430457d4c 100644 --- a/src/app/process-page/form/process-parameters/parameter-value-input/value-input.component.ts +++ b/src/app/process-page/form/process-parameters/parameter-value-input/value-input.component.ts @@ -10,6 +10,7 @@ import { */ @Component({ selector: 'ds-value-input', + standalone: true, template: '', }) export abstract class ValueInputComponent { diff --git a/src/app/shared/browse-by/browse-by.component.spec.ts b/src/app/shared/browse-by/browse-by.component.spec.ts index 760b10a0ec..57f69cc2f7 100644 --- a/src/app/shared/browse-by/browse-by.component.spec.ts +++ b/src/app/shared/browse-by/browse-by.component.spec.ts @@ -58,6 +58,7 @@ import { BrowseByComponent } from './browse-by.component'; @Component({ // eslint-disable-next-line @angular-eslint/component-selector selector: 'ds-browse-entry-list-element', + standalone: true, template: '', }) class MockThemedBrowseEntryListElementComponent { diff --git a/src/app/shared/comcol/sections/comcol-browse-by/comcol-browse-by.component.spec.ts b/src/app/shared/comcol/sections/comcol-browse-by/comcol-browse-by.component.spec.ts index ae19914f39..0b29f7710a 100644 --- a/src/app/shared/comcol/sections/comcol-browse-by/comcol-browse-by.component.spec.ts +++ b/src/app/shared/comcol/sections/comcol-browse-by/comcol-browse-by.component.spec.ts @@ -23,6 +23,7 @@ import { ComcolBrowseByComponent } from './comcol-browse-by.component'; @Component({ // eslint-disable-next-line @angular-eslint/component-selector selector: '', + standalone: true, template: '', }) class BrowseByTestComponent { diff --git a/src/app/shared/disabled-directive.spec.ts b/src/app/shared/disabled-directive.spec.ts index 96f760fc46..a525163d7b 100644 --- a/src/app/shared/disabled-directive.spec.ts +++ b/src/app/shared/disabled-directive.spec.ts @@ -11,9 +11,13 @@ import { By } from '@angular/platform-browser'; import { BtnDisabledDirective } from './btn-disabled.directive'; @Component({ + standalone: true, template: ` `, + imports: [ + BtnDisabledDirective, + ], }) class TestComponent { isDisabled = false; @@ -26,8 +30,7 @@ describe('DisabledDirective', () => { beforeEach(() => { TestBed.configureTestingModule({ - imports: [BtnDisabledDirective], - declarations: [TestComponent], + imports: [BtnDisabledDirective, TestComponent], }); fixture = TestBed.createComponent(TestComponent); component = fixture.componentInstance; diff --git a/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.ts b/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.ts index 51e520df18..35548d05df 100644 --- a/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.ts +++ b/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.ts @@ -34,6 +34,7 @@ export enum SelectorActionType { */ @Component({ selector: 'ds-dso-selector-modal', + standalone: true, template: '', }) export abstract class DSOSelectorModalWrapperComponent implements OnInit { diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/dynamic-vocabulary.component.ts b/src/app/shared/form/builder/ds-dynamic-form-ui/models/dynamic-vocabulary.component.ts index c846f053ef..0ca22da9f7 100644 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/dynamic-vocabulary.component.ts +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/dynamic-vocabulary.component.ts @@ -28,6 +28,7 @@ import { DsDynamicInputModel } from './ds-dynamic-input.model'; */ @Component({ selector: 'ds-dynamic-vocabulary', + standalone: true, template: '', }) export abstract class DsDynamicVocabularyComponent extends DynamicFormControlComponent { diff --git a/src/app/shared/mydspace-actions/claimed-task/abstract/advanced-claimed-task-actions-abstract.component.ts b/src/app/shared/mydspace-actions/claimed-task/abstract/advanced-claimed-task-actions-abstract.component.ts index 086cd9d81a..803fb7c4b4 100644 --- a/src/app/shared/mydspace-actions/claimed-task/abstract/advanced-claimed-task-actions-abstract.component.ts +++ b/src/app/shared/mydspace-actions/claimed-task/abstract/advanced-claimed-task-actions-abstract.component.ts @@ -27,6 +27,7 @@ import { ClaimedTaskActionsAbstractComponent } from './claimed-task-actions-abst */ @Component({ selector: 'ds-advanced-claimed-task-action-abstract', + standalone: true, template: '', }) export abstract class AdvancedClaimedTaskActionsAbstractComponent extends ClaimedTaskActionsAbstractComponent implements OnInit { diff --git a/src/app/shared/mydspace-actions/claimed-task/abstract/claimed-task-actions-abstract.component.ts b/src/app/shared/mydspace-actions/claimed-task/abstract/claimed-task-actions-abstract.component.ts index 9ecdad6ab8..dfbe3ae8d7 100644 --- a/src/app/shared/mydspace-actions/claimed-task/abstract/claimed-task-actions-abstract.component.ts +++ b/src/app/shared/mydspace-actions/claimed-task/abstract/claimed-task-actions-abstract.component.ts @@ -31,6 +31,7 @@ import { MyDSpaceReloadableActionsComponent } from '../../mydspace-reloadable-ac */ @Component({ selector: 'ds-claimed-task-action-abstract', + standalone: true, template: '', }) export abstract class ClaimedTaskActionsAbstractComponent extends MyDSpaceReloadableActionsComponent implements OnDestroy { diff --git a/src/app/shared/mydspace-actions/mydspace-actions.ts b/src/app/shared/mydspace-actions/mydspace-actions.ts index 73caf4f30c..261f26fa13 100644 --- a/src/app/shared/mydspace-actions/mydspace-actions.ts +++ b/src/app/shared/mydspace-actions/mydspace-actions.ts @@ -37,6 +37,7 @@ export interface MyDSpaceActionsResult { */ @Component({ selector: 'ds-mydspace-actions-abstract', + standalone: true, template: '', }) export abstract class MyDSpaceActionsComponent> { diff --git a/src/app/shared/mydspace-actions/mydspace-reloadable-actions.ts b/src/app/shared/mydspace-actions/mydspace-reloadable-actions.ts index 062bf25741..c59b2a86f0 100644 --- a/src/app/shared/mydspace-actions/mydspace-reloadable-actions.ts +++ b/src/app/shared/mydspace-actions/mydspace-reloadable-actions.ts @@ -34,6 +34,7 @@ import { MyDSpaceActionsComponent } from './mydspace-actions'; */ @Component({ selector: 'ds-mydspace-reloadable-actions', + standalone: true, template: '', }) export abstract class MyDSpaceReloadableActionsComponent> diff --git a/src/app/shared/object-select/object-select/object-select.component.ts b/src/app/shared/object-select/object-select/object-select.component.ts index 323a7cc396..596fd0e4bc 100644 --- a/src/app/shared/object-select/object-select/object-select.component.ts +++ b/src/app/shared/object-select/object-select/object-select.component.ts @@ -30,6 +30,7 @@ import { ObjectSelectService } from '../object-select.service'; */ @Component({ selector: 'ds-object-select-abstract', + standalone: true, template: '', }) export abstract class ObjectSelectComponent implements OnInit, OnDestroy { diff --git a/src/app/shared/starts-with/starts-with-abstract.component.ts b/src/app/shared/starts-with/starts-with-abstract.component.ts index e3b8ca13ab..e2d5ca3e0f 100644 --- a/src/app/shared/starts-with/starts-with-abstract.component.ts +++ b/src/app/shared/starts-with/starts-with-abstract.component.ts @@ -23,6 +23,7 @@ import { StartsWithType } from './starts-with-type'; */ @Component({ selector: 'ds-start-with-abstract', + standalone: true, template: '', }) export abstract class StartsWithAbstractComponent implements OnInit, OnDestroy { diff --git a/src/app/shared/theme-support/test/custom/themed-test.component.spec.ts b/src/app/shared/theme-support/test/custom/themed-test.component.spec.ts index 7b9abefadb..b4851fc0bc 100644 --- a/src/app/shared/theme-support/test/custom/themed-test.component.spec.ts +++ b/src/app/shared/theme-support/test/custom/themed-test.component.spec.ts @@ -3,6 +3,7 @@ import { Component } from '@angular/core'; // noinspection AngularMissingOrInvalidDeclarationInModule @Component({ selector: 'ds-test-component', + standalone: true, template: '', }) export class TestComponent { diff --git a/src/app/shared/theme-support/test/test.component.spec.ts b/src/app/shared/theme-support/test/test.component.spec.ts index 8f048aa2a7..f35423ca59 100644 --- a/src/app/shared/theme-support/test/test.component.spec.ts +++ b/src/app/shared/theme-support/test/test.component.spec.ts @@ -3,6 +3,7 @@ import { Component } from '@angular/core'; // noinspection AngularMissingOrInvalidDeclarationInModule @Component({ selector: 'ds-test-component', + standalone: true, template: '', }) export class TestComponent { diff --git a/src/app/shared/theme-support/themed.component.ts b/src/app/shared/theme-support/themed.component.ts index 2c6b9c8836..dbc237044d 100644 --- a/src/app/shared/theme-support/themed.component.ts +++ b/src/app/shared/theme-support/themed.component.ts @@ -37,6 +37,7 @@ import { ThemeService } from './theme.service'; @Component({ selector: 'ds-themed', + standalone: true, styleUrls: ['./themed.component.scss'], templateUrl: './themed.component.html', }) diff --git a/src/app/submission/sections/models/section.model.ts b/src/app/submission/sections/models/section.model.ts index 4868f0c6c1..5ec6a14c0d 100644 --- a/src/app/submission/sections/models/section.model.ts +++ b/src/app/submission/sections/models/section.model.ts @@ -29,6 +29,7 @@ export interface SectionDataModel { */ @Component({ selector: 'ds-section-model', + standalone: true, template: '', }) export abstract class SectionModelComponent implements OnDestroy, OnInit, SectionDataModel { diff --git a/src/app/workflowitems-edit-page/advanced-workflow-action/advanced-workflow-action/advanced-workflow-action.component.ts b/src/app/workflowitems-edit-page/advanced-workflow-action/advanced-workflow-action/advanced-workflow-action.component.ts index a12a40b52a..d9948462ce 100644 --- a/src/app/workflowitems-edit-page/advanced-workflow-action/advanced-workflow-action/advanced-workflow-action.component.ts +++ b/src/app/workflowitems-edit-page/advanced-workflow-action/advanced-workflow-action/advanced-workflow-action.component.ts @@ -30,6 +30,7 @@ import { WorkflowItemActionPageDirective } from '../../workflow-item-action-page */ @Component({ selector: 'ds-advanced-workflow-action', + standalone: true, template: '', }) export abstract class AdvancedWorkflowActionComponent extends WorkflowItemActionPageDirective implements OnInit {