mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 10:04:11 +00:00
Merge pull request #2753 from alexandrevryghem/minor-themed-component-fixes_contribute-main
Themed component fixes
This commit is contained in:
@@ -21,12 +21,12 @@ import { NotificationsService } from '../../shared/notifications/notifications.s
|
||||
import { FileDropzoneNoUploaderComponent } from '../../shared/upload/file-dropzone-no-uploader/file-dropzone-no-uploader.component';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-metadata-import-page',
|
||||
selector: 'ds-base-metadata-import-page',
|
||||
templateUrl: './metadata-import-page.component.html',
|
||||
imports: [
|
||||
TranslateModule,
|
||||
FormsModule,
|
||||
FileDropzoneNoUploaderComponent,
|
||||
FormsModule,
|
||||
TranslateModule,
|
||||
],
|
||||
standalone: true,
|
||||
})
|
||||
|
@@ -0,0 +1,27 @@
|
||||
import { Component } from '@angular/core';
|
||||
|
||||
import { ThemedComponent } from '../../shared/theme-support/themed.component';
|
||||
import { MetadataImportPageComponent } from './metadata-import-page.component';
|
||||
|
||||
/**
|
||||
* Themed wrapper for {@link MetadataImportPageComponent}.
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-metadata-import-page',
|
||||
templateUrl: '../../shared/theme-support/themed.component.html',
|
||||
standalone: true,
|
||||
imports: [MetadataImportPageComponent],
|
||||
})
|
||||
export class ThemedMetadataImportPageComponent extends ThemedComponent<MetadataImportPageComponent> {
|
||||
protected getComponentName(): string {
|
||||
return 'MetadataImportPageComponent';
|
||||
}
|
||||
|
||||
protected importThemedComponent(themeName: string): Promise<any> {
|
||||
return import(`../../../themes/${themeName}/app/admin/admin-import-metadata-page/metadata-import-page.component`);
|
||||
}
|
||||
|
||||
protected importUnthemedComponent(): Promise<any> {
|
||||
return import('./metadata-import-page.component');
|
||||
}
|
||||
}
|
@@ -3,7 +3,7 @@ import { Route } from '@angular/router';
|
||||
import { i18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.resolver';
|
||||
import { AdminCurationTasksComponent } from './admin-curation-tasks/admin-curation-tasks.component';
|
||||
import { BatchImportPageComponent } from './admin-import-batch-page/batch-import-page.component';
|
||||
import { MetadataImportPageComponent } from './admin-import-metadata-page/metadata-import-page.component';
|
||||
import { ThemedMetadataImportPageComponent } from './admin-import-metadata-page/themed-metadata-import-page.component';
|
||||
import {
|
||||
LDN_PATH,
|
||||
NOTIFICATIONS_MODULE_PATH,
|
||||
@@ -46,7 +46,7 @@ export const ROUTES: Route[] = [
|
||||
{
|
||||
path: 'metadata-import',
|
||||
resolve: { breadcrumb: i18nBreadcrumbResolver },
|
||||
component: MetadataImportPageComponent,
|
||||
component: ThemedMetadataImportPageComponent,
|
||||
data: { title: 'admin.metadata-import.title', breadcrumbKey: 'admin.metadata-import' },
|
||||
},
|
||||
{
|
||||
|
@@ -36,7 +36,7 @@ import { RemoteData } from '../../core/data/remote-data';
|
||||
import { PaginationService } from '../../core/pagination/pagination.service';
|
||||
import { Item } from '../../core/shared/item.model';
|
||||
import { ThemedComcolPageBrowseByComponent } from '../../shared/comcol/comcol-page-browse-by/themed-comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from '../../shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ThemedComcolPageContentComponent } from '../../shared/comcol/comcol-page-content/themed-comcol-page-content.component';
|
||||
import { ThemedComcolPageHandleComponent } from '../../shared/comcol/comcol-page-handle/themed-comcol-page-handle.component';
|
||||
import { ComcolPageHeaderComponent } from '../../shared/comcol/comcol-page-header/comcol-page-header.component';
|
||||
import { ComcolPageLogoComponent } from '../../shared/comcol/comcol-page-logo/comcol-page-logo.component';
|
||||
@@ -68,7 +68,7 @@ import {
|
||||
ComcolPageLogoComponent,
|
||||
NgIf,
|
||||
ThemedComcolPageHandleComponent,
|
||||
ComcolPageContentComponent,
|
||||
ThemedComcolPageContentComponent,
|
||||
DsoEditMenuComponent,
|
||||
ThemedComcolPageBrowseByComponent,
|
||||
TranslateModule,
|
||||
|
@@ -46,7 +46,7 @@ import { Context } from '../../core/shared/context.model';
|
||||
import { Item } from '../../core/shared/item.model';
|
||||
import { getFirstSucceededRemoteData } from '../../core/shared/operators';
|
||||
import { ThemedComcolPageBrowseByComponent } from '../../shared/comcol/comcol-page-browse-by/themed-comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from '../../shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ThemedComcolPageContentComponent } from '../../shared/comcol/comcol-page-content/themed-comcol-page-content.component';
|
||||
import { ThemedComcolPageHandleComponent } from '../../shared/comcol/comcol-page-handle/themed-comcol-page-handle.component';
|
||||
import { ComcolPageHeaderComponent } from '../../shared/comcol/comcol-page-header/comcol-page-header.component';
|
||||
import { ComcolPageLogoComponent } from '../../shared/comcol/comcol-page-logo/comcol-page-logo.component';
|
||||
@@ -74,7 +74,7 @@ export const BBM_PAGINATION_ID = 'bbm';
|
||||
ComcolPageLogoComponent,
|
||||
NgIf,
|
||||
ThemedComcolPageHandleComponent,
|
||||
ComcolPageContentComponent,
|
||||
ThemedComcolPageContentComponent,
|
||||
DsoEditMenuComponent,
|
||||
ThemedComcolPageBrowseByComponent,
|
||||
TranslateModule,
|
||||
|
@@ -29,7 +29,7 @@ import { VocabularyEntryDetail } from '../../core/submission/vocabularies/models
|
||||
import { VocabularyOptions } from '../../core/submission/vocabularies/models/vocabulary-options.model';
|
||||
import { ThemedBrowseByComponent } from '../../shared/browse-by/themed-browse-by.component';
|
||||
import { ThemedComcolPageBrowseByComponent } from '../../shared/comcol/comcol-page-browse-by/themed-comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from '../../shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ThemedComcolPageContentComponent } from '../../shared/comcol/comcol-page-content/themed-comcol-page-content.component';
|
||||
import { ThemedComcolPageHandleComponent } from '../../shared/comcol/comcol-page-handle/themed-comcol-page-handle.component';
|
||||
import { ComcolPageHeaderComponent } from '../../shared/comcol/comcol-page-header/comcol-page-header.component';
|
||||
import { ComcolPageLogoComponent } from '../../shared/comcol/comcol-page-logo/comcol-page-logo.component';
|
||||
@@ -51,7 +51,7 @@ import { BrowseByDataType } from '../browse-by-switcher/browse-by-data-type';
|
||||
ComcolPageLogoComponent,
|
||||
NgIf,
|
||||
ThemedComcolPageHandleComponent,
|
||||
ComcolPageContentComponent,
|
||||
ThemedComcolPageContentComponent,
|
||||
DsoEditMenuComponent,
|
||||
ThemedComcolPageBrowseByComponent,
|
||||
TranslateModule,
|
||||
|
@@ -17,7 +17,7 @@ import {
|
||||
} from '../../core/cache/models/sort-options.model';
|
||||
import { ThemedBrowseByComponent } from '../../shared/browse-by/themed-browse-by.component';
|
||||
import { ThemedComcolPageBrowseByComponent } from '../../shared/comcol/comcol-page-browse-by/themed-comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from '../../shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ThemedComcolPageContentComponent } from '../../shared/comcol/comcol-page-content/themed-comcol-page-content.component';
|
||||
import { ThemedComcolPageHandleComponent } from '../../shared/comcol/comcol-page-handle/themed-comcol-page-handle.component';
|
||||
import { ComcolPageHeaderComponent } from '../../shared/comcol/comcol-page-header/comcol-page-header.component';
|
||||
import { ComcolPageLogoComponent } from '../../shared/comcol/comcol-page-logo/comcol-page-logo.component';
|
||||
@@ -43,7 +43,7 @@ import {
|
||||
ComcolPageLogoComponent,
|
||||
NgIf,
|
||||
ThemedComcolPageHandleComponent,
|
||||
ComcolPageContentComponent,
|
||||
ThemedComcolPageContentComponent,
|
||||
DsoEditMenuComponent,
|
||||
ThemedComcolPageBrowseByComponent,
|
||||
TranslateModule,
|
||||
|
@@ -36,7 +36,7 @@ import {
|
||||
fadeInOut,
|
||||
} from '../shared/animations/fade';
|
||||
import { ThemedComcolPageBrowseByComponent } from '../shared/comcol/comcol-page-browse-by/themed-comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from '../shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ThemedComcolPageContentComponent } from '../shared/comcol/comcol-page-content/themed-comcol-page-content.component';
|
||||
import { ThemedComcolPageHandleComponent } from '../shared/comcol/comcol-page-handle/themed-comcol-page-handle.component';
|
||||
import { ComcolPageHeaderComponent } from '../shared/comcol/comcol-page-header/comcol-page-header.component';
|
||||
import { ComcolPageLogoComponent } from '../shared/comcol/comcol-page-logo/comcol-page-logo.component';
|
||||
@@ -63,7 +63,7 @@ import { getCollectionPageRoute } from './collection-page-routing-paths';
|
||||
fadeInOut,
|
||||
],
|
||||
imports: [
|
||||
ComcolPageContentComponent,
|
||||
ThemedComcolPageContentComponent,
|
||||
ErrorComponent,
|
||||
NgIf,
|
||||
ThemedLoadingComponent,
|
||||
|
@@ -32,7 +32,7 @@ import { Community } from '../core/shared/community.model';
|
||||
import { getAllSucceededRemoteDataPayload } from '../core/shared/operators';
|
||||
import { fadeInOut } from '../shared/animations/fade';
|
||||
import { ThemedComcolPageBrowseByComponent } from '../shared/comcol/comcol-page-browse-by/themed-comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from '../shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ThemedComcolPageContentComponent } from '../shared/comcol/comcol-page-content/themed-comcol-page-content.component';
|
||||
import { ThemedComcolPageHandleComponent } from '../shared/comcol/comcol-page-handle/themed-comcol-page-handle.component';
|
||||
import { ComcolPageHeaderComponent } from '../shared/comcol/comcol-page-header/comcol-page-header.component';
|
||||
import { ComcolPageLogoComponent } from '../shared/comcol/comcol-page-logo/comcol-page-logo.component';
|
||||
@@ -53,7 +53,7 @@ import { ThemedCommunityPageSubCommunityListComponent } from './sections/sub-com
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
animations: [fadeInOut],
|
||||
imports: [
|
||||
ComcolPageContentComponent,
|
||||
ThemedComcolPageContentComponent,
|
||||
ErrorComponent,
|
||||
ThemedLoadingComponent,
|
||||
NgIf,
|
||||
|
@@ -4,9 +4,9 @@
|
||||
[attr.rel]="(linkType === linkTypes.ExternalLink) ? 'noopener noreferrer' : null"
|
||||
[routerLink]="[itemPageRoute]" class="dont-break-out">
|
||||
<ds-thumbnail [thumbnail]="dso?.thumbnail | async"
|
||||
[defaultImage]="'assets/images/orgunit-placeholder.svg'"
|
||||
[alt]="'thumbnail.orgunit.alt'"
|
||||
[placeholder]="'thumbnail.orgunit.placeholder'">
|
||||
[defaultImage]="'assets/images/orgunit-placeholder.svg'"
|
||||
[alt]="'thumbnail.orgunit.alt'"
|
||||
[placeholder]="'thumbnail.orgunit.placeholder'">
|
||||
</ds-thumbnail>
|
||||
</a>
|
||||
<span *ngIf="linkType === linkTypes.None" class="dont-break-out">
|
||||
|
@@ -4,9 +4,9 @@
|
||||
[attr.rel]="(linkType === linkTypes.ExternalLink) ? 'noopener noreferrer' : null"
|
||||
[routerLink]="[itemPageRoute]" class="dont-break-out">
|
||||
<ds-thumbnail [thumbnail]="dso?.thumbnail | async"
|
||||
[defaultImage]="'assets/images/person-placeholder.svg'"
|
||||
[alt]="'thumbnail.person.alt'"
|
||||
[placeholder]="'thumbnail.person.placeholder'">
|
||||
[defaultImage]="'assets/images/person-placeholder.svg'"
|
||||
[alt]="'thumbnail.person.alt'"
|
||||
[placeholder]="'thumbnail.person.placeholder'">
|
||||
</ds-thumbnail>
|
||||
</a>
|
||||
<span *ngIf="linkType === linkTypes.None" class="dont-break-out">
|
||||
|
@@ -4,9 +4,9 @@
|
||||
[attr.rel]="(linkType === linkTypes.ExternalLink) ? 'noopener noreferrer' : null"
|
||||
[routerLink]="[itemPageRoute]" class="dont-break-out">
|
||||
<ds-thumbnail [thumbnail]="dso?.thumbnail | async"
|
||||
[defaultImage]="'assets/images/project-placeholder.svg'"
|
||||
[alt]="'thumbnail.project.alt'"
|
||||
[placeholder]="'thumbnail.project.placeholder'">
|
||||
[defaultImage]="'assets/images/project-placeholder.svg'"
|
||||
[alt]="'thumbnail.project.alt'"
|
||||
[placeholder]="'thumbnail.project.placeholder'">
|
||||
</ds-thumbnail>
|
||||
</a>
|
||||
<span *ngIf="linkType === linkTypes.None" class="dont-break-out">
|
||||
|
@@ -213,7 +213,7 @@ describe('PersonSearchResultListElementSubmissionComponent', () => {
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should add the ds-thumbnail element', () => {
|
||||
it('should add the thumbnail element', () => {
|
||||
const thumbnail = fixture.debugElement.query(By.css('ds-thumbnail'));
|
||||
expect(thumbnail).toBeTruthy();
|
||||
});
|
||||
@@ -266,7 +266,7 @@ describe('PersonSearchResultListElementSubmissionComponent', () => {
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should not add the ds-thumbnail element', () => {
|
||||
it('should not add the thumbnail element', () => {
|
||||
const thumbnail = fixture.debugElement.query(By.css('ds-thumbnail'));
|
||||
expect(thumbnail).toBeNull();
|
||||
});
|
||||
|
@@ -31,7 +31,7 @@ import { FormComponent } from '../../shared/form/form.component';
|
||||
import { NotificationsService } from '../../shared/notifications/notifications.service';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-profile-page-metadata-form',
|
||||
selector: 'ds-base-profile-page-metadata-form',
|
||||
templateUrl: './profile-page-metadata-form.component.html',
|
||||
imports: [
|
||||
FormComponent,
|
||||
|
@@ -0,0 +1,39 @@
|
||||
import {
|
||||
Component,
|
||||
Input,
|
||||
} from '@angular/core';
|
||||
|
||||
import { EPerson } from '../../core/eperson/models/eperson.model';
|
||||
import { ThemedComponent } from '../../shared/theme-support/themed.component';
|
||||
import { ProfilePageMetadataFormComponent } from './profile-page-metadata-form.component';
|
||||
|
||||
/**
|
||||
* Themed wrapper for {@link ProfilePageMetadataFormComponent}
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-profile-page-metadata-form',
|
||||
templateUrl: '../../shared/theme-support/themed.component.html',
|
||||
standalone: true,
|
||||
imports: [ProfilePageMetadataFormComponent],
|
||||
})
|
||||
export class ThemedProfilePageMetadataFormComponent extends ThemedComponent<ProfilePageMetadataFormComponent> {
|
||||
|
||||
@Input() user: EPerson;
|
||||
|
||||
protected inAndOutputNames: (keyof ProfilePageMetadataFormComponent & keyof this)[] = [
|
||||
'user',
|
||||
];
|
||||
|
||||
protected getComponentName(): string {
|
||||
return 'ProfilePageMetadataFormComponent';
|
||||
}
|
||||
|
||||
protected importThemedComponent(themeName: string): Promise<any> {
|
||||
return import(`../../../themes/${themeName}/app/profile-page/profile-page-metadata-form/profile-page-metadata-form.component`);
|
||||
}
|
||||
|
||||
protected importUnthemedComponent(): Promise<any> {
|
||||
return import('./profile-page-metadata-form.component');
|
||||
}
|
||||
|
||||
}
|
@@ -5,7 +5,7 @@ import {
|
||||
waitForAsync,
|
||||
} from '@angular/core/testing';
|
||||
import { By } from '@angular/platform-browser';
|
||||
import { RouterTestingModule } from '@angular/router/testing';
|
||||
import { RouterModule } from '@angular/router';
|
||||
import { StoreModule } from '@ngrx/store';
|
||||
import { provideMockStore } from '@ngrx/store/testing';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
@@ -41,7 +41,7 @@ import {
|
||||
import { createPaginatedList } from '../shared/testing/utils.test';
|
||||
import { VarDirective } from '../shared/utils/var.directive';
|
||||
import { ProfilePageComponent } from './profile-page.component';
|
||||
import { ProfilePageMetadataFormComponent } from './profile-page-metadata-form/profile-page-metadata-form.component';
|
||||
import { ThemedProfilePageMetadataFormComponent } from './profile-page-metadata-form/themed-profile-page-metadata-form.component';
|
||||
import { ProfilePageResearcherFormComponent } from './profile-page-researcher-form/profile-page-researcher-form.component';
|
||||
import { ProfilePageSecurityFormComponent } from './profile-page-security-form/profile-page-security-form.component';
|
||||
|
||||
@@ -113,8 +113,9 @@ describe('ProfilePageComponent', () => {
|
||||
imports: [
|
||||
StoreModule.forRoot({ auth: authReducer }, storeModuleConfig),
|
||||
TranslateModule.forRoot(),
|
||||
RouterTestingModule.withRoutes([]),
|
||||
ProfilePageComponent, VarDirective,
|
||||
RouterModule.forRoot([]),
|
||||
ProfilePageComponent,
|
||||
VarDirective,
|
||||
],
|
||||
providers: [
|
||||
{ provide: EPersonDataService, useValue: epersonService },
|
||||
@@ -129,7 +130,7 @@ describe('ProfilePageComponent', () => {
|
||||
.overrideComponent(ProfilePageComponent, {
|
||||
remove: {
|
||||
imports: [
|
||||
ProfilePageMetadataFormComponent,
|
||||
ThemedProfilePageMetadataFormComponent,
|
||||
ProfilePageSecurityFormComponent,
|
||||
ProfilePageResearcherFormComponent,
|
||||
SuggestionsNotificationComponent,
|
||||
@@ -154,9 +155,13 @@ describe('ProfilePageComponent', () => {
|
||||
describe('updateProfile', () => {
|
||||
describe('when the metadata form returns false and the security form returns true', () => {
|
||||
beforeEach(() => {
|
||||
component.metadataForm = jasmine.createSpyObj('metadataForm', {
|
||||
updateProfile: false,
|
||||
});
|
||||
component.metadataForm = {
|
||||
compRef: {
|
||||
instance: {
|
||||
updateProfile: () => false,
|
||||
},
|
||||
},
|
||||
} as any;
|
||||
spyOn(component, 'updateSecurity').and.returnValue(true);
|
||||
component.updateProfile();
|
||||
});
|
||||
@@ -168,9 +173,13 @@ describe('ProfilePageComponent', () => {
|
||||
|
||||
describe('when the metadata form returns true and the security form returns false', () => {
|
||||
beforeEach(() => {
|
||||
component.metadataForm = jasmine.createSpyObj('metadataForm', {
|
||||
updateProfile: true,
|
||||
});
|
||||
component.metadataForm = {
|
||||
compRef: {
|
||||
instance: {
|
||||
updateProfile: () => true,
|
||||
},
|
||||
},
|
||||
} as any;
|
||||
component.updateProfile();
|
||||
});
|
||||
|
||||
@@ -181,9 +190,13 @@ describe('ProfilePageComponent', () => {
|
||||
|
||||
describe('when the metadata form returns true and the security form returns true', () => {
|
||||
beforeEach(() => {
|
||||
component.metadataForm = jasmine.createSpyObj('metadataForm', {
|
||||
updateProfile: true,
|
||||
});
|
||||
component.metadataForm = {
|
||||
compRef: {
|
||||
instance: {
|
||||
updateProfile: () => true,
|
||||
},
|
||||
},
|
||||
} as any;
|
||||
component.updateProfile();
|
||||
});
|
||||
|
||||
@@ -194,9 +207,13 @@ describe('ProfilePageComponent', () => {
|
||||
|
||||
describe('when the metadata form returns false and the security form returns false', () => {
|
||||
beforeEach(() => {
|
||||
component.metadataForm = jasmine.createSpyObj('metadataForm', {
|
||||
updateProfile: false,
|
||||
});
|
||||
component.metadataForm = {
|
||||
compRef: {
|
||||
instance: {
|
||||
updateProfile: () => false,
|
||||
},
|
||||
},
|
||||
} as any;
|
||||
component.updateProfile();
|
||||
});
|
||||
|
||||
|
@@ -47,7 +47,7 @@ import {
|
||||
import { NotificationsService } from '../shared/notifications/notifications.service';
|
||||
import { followLink } from '../shared/utils/follow-link-config.model';
|
||||
import { VarDirective } from '../shared/utils/var.directive';
|
||||
import { ProfilePageMetadataFormComponent } from './profile-page-metadata-form/profile-page-metadata-form.component';
|
||||
import { ThemedProfilePageMetadataFormComponent } from './profile-page-metadata-form/themed-profile-page-metadata-form.component';
|
||||
import { ProfilePageResearcherFormComponent } from './profile-page-researcher-form/profile-page-researcher-form.component';
|
||||
import { ProfilePageSecurityFormComponent } from './profile-page-security-form/profile-page-security-form.component';
|
||||
|
||||
@@ -56,7 +56,7 @@ import { ProfilePageSecurityFormComponent } from './profile-page-security-form/p
|
||||
styleUrls: ['./profile-page.component.scss'],
|
||||
templateUrl: './profile-page.component.html',
|
||||
imports: [
|
||||
ProfilePageMetadataFormComponent,
|
||||
ThemedProfilePageMetadataFormComponent,
|
||||
ProfilePageSecurityFormComponent,
|
||||
AsyncPipe,
|
||||
TranslateModule,
|
||||
@@ -75,7 +75,7 @@ export class ProfilePageComponent implements OnInit {
|
||||
/**
|
||||
* A reference to the metadata form component
|
||||
*/
|
||||
@ViewChild(ProfilePageMetadataFormComponent) metadataForm: ProfilePageMetadataFormComponent;
|
||||
@ViewChild(ThemedProfilePageMetadataFormComponent) metadataForm: ThemedProfilePageMetadataFormComponent;
|
||||
|
||||
/**
|
||||
* The authenticated user as observable
|
||||
@@ -157,8 +157,8 @@ export class ProfilePageComponent implements OnInit {
|
||||
* Fire an update on both the metadata and security forms
|
||||
* Show a warning notification when no changes were made in both forms
|
||||
*/
|
||||
updateProfile() {
|
||||
const metadataChanged = this.metadataForm.updateProfile();
|
||||
updateProfile(): void {
|
||||
const metadataChanged = this.metadataForm.compRef.instance.updateProfile();
|
||||
const securityChanged = this.updateSecurity();
|
||||
if (!metadataChanged && !securityChanged) {
|
||||
this.notificationsService.warning(
|
||||
|
@@ -30,7 +30,7 @@ export class ThemedComcolPageBrowseByComponent extends ThemedComponent<ComcolPag
|
||||
}
|
||||
|
||||
protected importThemedComponent(themeName: string): Promise<any> {
|
||||
return import(`../../../../themes/${themeName}/app/shared/comcol-page-browse-by/comcol-page-browse-by.component`);
|
||||
return import(`../../../../themes/${themeName}/app/shared/comcol/comcol-page-browse-by/comcol-page-browse-by.component`);
|
||||
}
|
||||
|
||||
protected importUnthemedComponent(): Promise<any> {
|
||||
|
@@ -12,7 +12,7 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
* To see how it is used see collection-page or community-page.
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-comcol-page-content',
|
||||
selector: 'ds-base-comcol-page-content',
|
||||
styleUrls: ['./comcol-page-content.component.scss'],
|
||||
templateUrl: './comcol-page-content.component.html',
|
||||
imports: [
|
||||
@@ -23,13 +23,19 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
})
|
||||
export class ComcolPageContentComponent {
|
||||
|
||||
// Optional title
|
||||
/**
|
||||
* Optional title
|
||||
*/
|
||||
@Input() title: string;
|
||||
|
||||
// The content to render. Might be html
|
||||
/**
|
||||
* The content to render. Might be html
|
||||
*/
|
||||
@Input() content: string;
|
||||
|
||||
// flag whether the content contains html syntax or not
|
||||
/**
|
||||
* flag whether the content contains html syntax or not
|
||||
*/
|
||||
@Input() hasInnerHtml: boolean;
|
||||
|
||||
}
|
||||
|
@@ -0,0 +1,44 @@
|
||||
import {
|
||||
Component,
|
||||
Input,
|
||||
} from '@angular/core';
|
||||
|
||||
import { ThemedComponent } from '../../theme-support/themed.component';
|
||||
import { ComcolPageContentComponent } from './comcol-page-content.component';
|
||||
|
||||
/**
|
||||
* Themed wrapper for {@link ComcolPageContentComponent}
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-comcol-page-content',
|
||||
templateUrl: '../../theme-support/themed.component.html',
|
||||
standalone: true,
|
||||
imports: [ComcolPageContentComponent],
|
||||
})
|
||||
export class ThemedComcolPageContentComponent extends ThemedComponent<ComcolPageContentComponent> {
|
||||
|
||||
@Input() title: string;
|
||||
|
||||
@Input() content: string;
|
||||
|
||||
@Input() hasInnerHtml: boolean;
|
||||
|
||||
protected inAndOutputNames: (keyof ComcolPageContentComponent & keyof this)[] = [
|
||||
'title',
|
||||
'content',
|
||||
'hasInnerHtml',
|
||||
];
|
||||
|
||||
protected getComponentName(): string {
|
||||
return 'ComcolPageContentComponent';
|
||||
}
|
||||
|
||||
protected importThemedComponent(themeName: string): Promise<any> {
|
||||
return import(`../../../../themes/${themeName}/app/shared/comcol/comcol-page-content/comcol-page-content.component`);
|
||||
}
|
||||
|
||||
protected importUnthemedComponent(): Promise<any> {
|
||||
return import('./comcol-page-content.component');
|
||||
}
|
||||
|
||||
}
|
@@ -1,7 +1,6 @@
|
||||
import { NgIf } from '@angular/common';
|
||||
import {
|
||||
Component,
|
||||
Injectable,
|
||||
Input,
|
||||
} from '@angular/core';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
@@ -14,11 +13,12 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
selector: 'ds-base-comcol-page-handle',
|
||||
styleUrls: ['./comcol-page-handle.component.scss'],
|
||||
templateUrl: './comcol-page-handle.component.html',
|
||||
imports: [NgIf, TranslateModule],
|
||||
imports: [
|
||||
NgIf,
|
||||
TranslateModule,
|
||||
],
|
||||
standalone: true,
|
||||
})
|
||||
|
||||
@Injectable()
|
||||
export class ComcolPageHandleComponent {
|
||||
|
||||
// Optional title
|
||||
|
@@ -54,7 +54,7 @@ import {
|
||||
* Used to choose a dso from to export metadata of
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-export-metadata-selector',
|
||||
selector: 'ds-export-batch-selector',
|
||||
templateUrl: '../dso-selector-modal-wrapper.component.html',
|
||||
standalone: true,
|
||||
imports: [NgIf, DSOSelectorComponent, TranslateModule],
|
||||
|
@@ -17,10 +17,15 @@ import { SearchResult } from '../../../../search/models/search-result.model';
|
||||
* This component show values for the given item metadata
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-item-detail-preview-field',
|
||||
selector: 'ds-base-item-detail-preview-field',
|
||||
templateUrl: './item-detail-preview-field.component.html',
|
||||
standalone: true,
|
||||
imports: [MetadataFieldWrapperComponent, NgIf, NgFor, TranslateModule],
|
||||
imports: [
|
||||
MetadataFieldWrapperComponent,
|
||||
NgFor,
|
||||
NgIf,
|
||||
TranslateModule,
|
||||
],
|
||||
})
|
||||
export class ItemDetailPreviewFieldComponent {
|
||||
|
||||
|
@@ -0,0 +1,54 @@
|
||||
import {
|
||||
Component,
|
||||
Input,
|
||||
} from '@angular/core';
|
||||
|
||||
import { Item } from '../../../../../core/shared/item.model';
|
||||
import { SearchResult } from '../../../../search/models/search-result.model';
|
||||
import { ThemedComponent } from '../../../../theme-support/themed.component';
|
||||
import { ItemDetailPreviewFieldComponent } from './item-detail-preview-field.component';
|
||||
|
||||
/**
|
||||
* Themed wrapper for {@link ItemDetailPreviewFieldComponent}
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-item-detail-preview-field',
|
||||
templateUrl: '../../../../theme-support/themed.component.html',
|
||||
standalone: true,
|
||||
imports: [ItemDetailPreviewFieldComponent],
|
||||
})
|
||||
export class ThemedItemDetailPreviewFieldComponent extends ThemedComponent<ItemDetailPreviewFieldComponent> {
|
||||
|
||||
protected inAndOutputNames: (keyof ItemDetailPreviewFieldComponent & keyof this)[] = [
|
||||
'item',
|
||||
'object',
|
||||
'label',
|
||||
'metadata',
|
||||
'placeholder',
|
||||
'separator',
|
||||
];
|
||||
|
||||
@Input() item: Item;
|
||||
|
||||
@Input() object: SearchResult<any>;
|
||||
|
||||
@Input() label: string;
|
||||
|
||||
@Input() metadata: string | string[];
|
||||
|
||||
@Input() placeholder: string;
|
||||
|
||||
@Input() separator: string;
|
||||
|
||||
protected getComponentName(): string {
|
||||
return 'ItemDetailPreviewFieldComponent';
|
||||
}
|
||||
|
||||
protected importThemedComponent(themeName: string): Promise<any> {
|
||||
return import(`../../../../../../themes/${themeName}/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component`);
|
||||
}
|
||||
|
||||
protected importUnthemedComponent(): Promise<any> {
|
||||
return import('./item-detail-preview-field.component');
|
||||
}
|
||||
}
|
@@ -28,7 +28,7 @@ import { ItemSubmitterComponent } from '../../../object-collection/shared/mydspa
|
||||
import { SearchResult } from '../../../search/models/search-result.model';
|
||||
import { FileSizePipe } from '../../../utils/file-size-pipe';
|
||||
import { VarDirective } from '../../../utils/var.directive';
|
||||
import { ItemDetailPreviewFieldComponent } from './item-detail-preview-field/item-detail-preview-field.component';
|
||||
import { ThemedItemDetailPreviewFieldComponent } from './item-detail-preview-field/themed-item-detail-preview-field.component';
|
||||
|
||||
/**
|
||||
* This component show metadata for the given item object in the detail view.
|
||||
@@ -39,7 +39,7 @@ import { ItemDetailPreviewFieldComponent } from './item-detail-preview-field/ite
|
||||
templateUrl: './item-detail-preview.component.html',
|
||||
animations: [fadeInOut],
|
||||
standalone: true,
|
||||
imports: [NgIf, ThemedBadgesComponent, ThemedItemPageTitleFieldComponent, MetadataFieldWrapperComponent, ThemedThumbnailComponent, VarDirective, NgFor, ItemDetailPreviewFieldComponent, ItemSubmitterComponent, AsyncPipe, FileSizePipe, TranslateModule],
|
||||
imports: [NgIf, ThemedBadgesComponent, ThemedItemPageTitleFieldComponent, MetadataFieldWrapperComponent, ThemedThumbnailComponent, VarDirective, NgFor, ThemedItemDetailPreviewFieldComponent, ItemSubmitterComponent, AsyncPipe, FileSizePipe, TranslateModule],
|
||||
})
|
||||
export class ItemDetailPreviewComponent {
|
||||
/**
|
||||
|
@@ -139,7 +139,7 @@ describe('ItemListPreviewComponent', () => {
|
||||
component.item = mockItemWithAuthorAndDate;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
it('should add the ds-thumbnail element', () => {
|
||||
it('should add the thumbnail element', () => {
|
||||
const thumbnail = fixture.debugElement.query(By.css('ds-thumbnail'));
|
||||
expect(thumbnail).toBeTruthy();
|
||||
});
|
||||
@@ -250,7 +250,7 @@ describe('ItemListPreviewComponent', () => {
|
||||
component.item = mockItemWithAuthorAndDate;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
it('should add the ds-thumbnail element', () => {
|
||||
it('should add the thumbnail element', () => {
|
||||
const thumbnail = fixture.debugElement.query(By.css('ds-thumbnail'));
|
||||
expect(thumbnail).toBeFalsy();
|
||||
});
|
||||
|
@@ -38,7 +38,19 @@ import { TruncatablePartComponent } from '../../../truncatable/truncatable-part/
|
||||
templateUrl: 'item-list-preview.component.html',
|
||||
animations: [fadeInOut],
|
||||
standalone: true,
|
||||
imports: [NgIf, ThemedThumbnailComponent, NgClass, ThemedBadgesComponent, TruncatableComponent, TruncatablePartComponent, NgFor, ItemSubmitterComponent, ItemCollectionComponent, AsyncPipe, TranslateModule],
|
||||
imports: [
|
||||
AsyncPipe,
|
||||
ItemCollectionComponent,
|
||||
ItemSubmitterComponent,
|
||||
NgClass,
|
||||
NgFor,
|
||||
NgIf,
|
||||
ThemedBadgesComponent,
|
||||
ThemedThumbnailComponent,
|
||||
TranslateModule,
|
||||
TruncatableComponent,
|
||||
TruncatablePartComponent,
|
||||
],
|
||||
})
|
||||
export class ItemListPreviewComponent implements OnInit {
|
||||
|
||||
|
@@ -247,7 +247,7 @@ describe('ItemSearchResultListElementComponent', () => {
|
||||
expect(publicationListElementComponent.showThumbnails).toBeTrue();
|
||||
});
|
||||
|
||||
it('should add ds-thumbnail element', () => {
|
||||
it('should add thumbnail element', () => {
|
||||
const thumbnailElement = fixture.debugElement.query(By.css('ds-thumbnail'));
|
||||
expect(thumbnailElement).toBeTruthy();
|
||||
});
|
||||
@@ -428,7 +428,7 @@ describe('ItemSearchResultListElementComponent', () => {
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should not add ds-thumbnail element', () => {
|
||||
it('should not add thumbnail element', () => {
|
||||
const thumbnailElement = fixture.debugElement.query(By.css('ds-thumbnail'));
|
||||
expect(thumbnailElement).toBeFalsy();
|
||||
});
|
||||
|
@@ -17,7 +17,7 @@ import { SidebarSearchListElementComponent } from '../sidebar-search-list-elemen
|
||||
@listableObjectComponent(CommunitySearchResult, ViewMode.ListElement, Context.SideBarSearchModal)
|
||||
@listableObjectComponent(CommunitySearchResult, ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||
@Component({
|
||||
selector: 'ds-collection-sidebar-search-list-element',
|
||||
selector: 'ds-community-sidebar-search-list-element',
|
||||
templateUrl: '../sidebar-search-list-element.component.html',
|
||||
standalone: true,
|
||||
imports: [TruncatablePartComponent, NgClass, NgIf, AsyncPipe, TranslateModule],
|
||||
|
@@ -88,7 +88,18 @@ import { SearchConfigurationOption } from './search-switch-configuration/search-
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
animations: [pushInOut],
|
||||
standalone: true,
|
||||
imports: [NgIf, NgTemplateOutlet, PageWithSidebarComponent, ViewModeSwitchComponent, ThemedSearchResultsComponent, ThemedSearchSidebarComponent, ThemedSearchFormComponent, SearchLabelsComponent, AsyncPipe, TranslateModule],
|
||||
imports: [
|
||||
AsyncPipe,
|
||||
NgIf,
|
||||
NgTemplateOutlet,
|
||||
PageWithSidebarComponent,
|
||||
ThemedSearchFormComponent,
|
||||
ThemedSearchResultsComponent,
|
||||
ThemedSearchSidebarComponent,
|
||||
TranslateModule,
|
||||
SearchLabelsComponent,
|
||||
ViewModeSwitchComponent,
|
||||
],
|
||||
})
|
||||
|
||||
/**
|
||||
|
@@ -43,7 +43,7 @@ import { ThemeService } from './theme.service';
|
||||
export abstract class ThemedComponent<T extends object> implements AfterViewInit, OnDestroy, OnChanges {
|
||||
@ViewChild('vcr', { read: ViewContainerRef }) vcr: ViewContainerRef;
|
||||
@ViewChild('content') themedElementContent: ElementRef;
|
||||
protected compRef: ComponentRef<T>;
|
||||
compRef: ComponentRef<T>;
|
||||
|
||||
/**
|
||||
* A reference to the themed component. Will start as undefined and emit every time the themed
|
||||
|
@@ -45,7 +45,7 @@ import { SubmissionFormCollectionComponent } from './collection/submission-form-
|
||||
import { SubmissionFormFooterComponent } from './footer/submission-form-footer.component';
|
||||
import { SubmissionFormSectionAddComponent } from './section-add/submission-form-section-add.component';
|
||||
import { SubmissionFormComponent } from './submission-form.component';
|
||||
import { SubmissionUploadFilesComponent } from './submission-upload-files/submission-upload-files.component';
|
||||
import { ThemedSubmissionUploadFilesComponent } from './submission-upload-files/themed-submission-upload-files.component';
|
||||
|
||||
describe('SubmissionFormComponent Component', () => {
|
||||
|
||||
@@ -86,7 +86,7 @@ describe('SubmissionFormComponent Component', () => {
|
||||
ThemedLoadingComponent,
|
||||
SubmissionSectionContainerComponent,
|
||||
SubmissionFormFooterComponent,
|
||||
SubmissionUploadFilesComponent,
|
||||
ThemedSubmissionUploadFilesComponent,
|
||||
SubmissionFormCollectionComponent,
|
||||
SubmissionFormSectionAddComponent,
|
||||
] },
|
||||
|
@@ -22,6 +22,10 @@ import {
|
||||
|
||||
import { AuthService } from '../../core/auth/auth.service';
|
||||
import { SubmissionDefinitionsModel } from '../../core/config/models/config-submission-definitions.model';
|
||||
import {
|
||||
SubmissionSectionModel,
|
||||
SubmissionSectionVisibility,
|
||||
} from '../../core/config/models/config-submission-section.model';
|
||||
import { Collection } from '../../core/shared/collection.model';
|
||||
import { HALEndpointService } from '../../core/shared/hal-endpoint.service';
|
||||
import { Item } from '../../core/shared/item.model';
|
||||
@@ -42,14 +46,10 @@ import { SectionsService } from '../sections/sections.service';
|
||||
import { SectionsType } from '../sections/sections-type';
|
||||
import { VisibilityType } from '../sections/visibility-type';
|
||||
import { SubmissionService } from '../submission.service';
|
||||
import {
|
||||
SubmissionSectionModel,
|
||||
SubmissionSectionVisibility,
|
||||
} from './../../core/config/models/config-submission-section.model';
|
||||
import { SubmissionFormCollectionComponent } from './collection/submission-form-collection.component';
|
||||
import { SubmissionFormFooterComponent } from './footer/submission-form-footer.component';
|
||||
import { SubmissionFormSectionAddComponent } from './section-add/submission-form-section-add.component';
|
||||
import { SubmissionUploadFilesComponent } from './submission-upload-files/submission-upload-files.component';
|
||||
import { ThemedSubmissionUploadFilesComponent } from './submission-upload-files/themed-submission-upload-files.component';
|
||||
|
||||
/**
|
||||
* This component represents the submission form.
|
||||
@@ -63,7 +63,7 @@ import { SubmissionUploadFilesComponent } from './submission-upload-files/submis
|
||||
ThemedLoadingComponent,
|
||||
SubmissionSectionContainerComponent,
|
||||
SubmissionFormFooterComponent,
|
||||
SubmissionUploadFilesComponent,
|
||||
ThemedSubmissionUploadFilesComponent,
|
||||
SubmissionFormCollectionComponent,
|
||||
SubmissionFormSectionAddComponent,
|
||||
],
|
||||
@@ -81,7 +81,7 @@ export class SubmissionFormComponent implements OnChanges, OnDestroy {
|
||||
|
||||
/**
|
||||
* Checks if the collection can be modifiable by the user
|
||||
* @type {booelan}
|
||||
* @type {boolean}
|
||||
*/
|
||||
@Input() collectionModifiable: boolean | null = null;
|
||||
|
||||
|
@@ -35,7 +35,7 @@ import parseSectionErrors from '../../utils/parseSectionErrors';
|
||||
* This component represents the drop zone that provides to add files to the submission.
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-submission-upload-files',
|
||||
selector: 'ds-base-submission-upload-files',
|
||||
templateUrl: './submission-upload-files.component.html',
|
||||
imports: [
|
||||
UploaderComponent,
|
||||
|
@@ -0,0 +1,44 @@
|
||||
import {
|
||||
Component,
|
||||
Input,
|
||||
} from '@angular/core';
|
||||
|
||||
import { ThemedComponent } from '../../../shared/theme-support/themed.component';
|
||||
import { UploaderOptions } from '../../../shared/upload/uploader/uploader-options.model';
|
||||
import { SubmissionUploadFilesComponent } from './submission-upload-files.component';
|
||||
|
||||
/**
|
||||
* Themed wrapper for {@link SubmissionUploadFilesComponent}
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-submission-upload-files',
|
||||
templateUrl: '../../../shared/theme-support/themed.component.html',
|
||||
standalone: true,
|
||||
imports: [SubmissionUploadFilesComponent],
|
||||
})
|
||||
export class ThemedSubmissionUploadFilesComponent extends ThemedComponent<SubmissionUploadFilesComponent> {
|
||||
|
||||
@Input() collectionId: string;
|
||||
|
||||
@Input() submissionId: string;
|
||||
|
||||
@Input() uploadFilesOptions: UploaderOptions;
|
||||
|
||||
protected inAndOutputNames: (keyof SubmissionUploadFilesComponent & keyof this)[] = [
|
||||
'collectionId',
|
||||
'submissionId',
|
||||
'uploadFilesOptions',
|
||||
];
|
||||
|
||||
protected getComponentName(): string {
|
||||
return 'SubmissionUploadFilesComponent';
|
||||
}
|
||||
|
||||
protected importThemedComponent(themeName: string): Promise<any> {
|
||||
return import(`../../../../themes/${themeName}/app/submission/form/submission-upload-files/submission-upload-files.component.ts`);
|
||||
}
|
||||
|
||||
protected importUnthemedComponent(): Promise<any> {
|
||||
return import('./submission-upload-files.component');
|
||||
}
|
||||
}
|
@@ -4,9 +4,8 @@ import { ThemedComponent } from '../../shared/theme-support/themed.component';
|
||||
import { WorkspaceItemsDeletePageComponent } from './workspaceitems-delete-page.component';
|
||||
|
||||
/**
|
||||
* Themed wrapper for WorkspaceItemsDeletePageComponent
|
||||
* Themed wrapper for {@link WorkspaceItemsDeletePageComponent}
|
||||
*/
|
||||
|
||||
@Component({
|
||||
selector: 'ds-workspace-items-delete',
|
||||
styleUrls: [],
|
||||
@@ -20,10 +19,10 @@ export class ThemedWorkspaceItemsDeletePageComponent extends ThemedComponent<Wor
|
||||
}
|
||||
|
||||
protected importThemedComponent(themeName: string): Promise<any> {
|
||||
return import(`../../../themes/${themeName}/app/workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component`);
|
||||
return import(`../../../themes/${themeName}/app/workspaceitems-edit-page/workspaceitems-delete-page/workspaceitems-delete-page.component`);
|
||||
}
|
||||
|
||||
protected importUnthemedComponent(): Promise<any> {
|
||||
return import(`./workspaceitems-delete-page.component`);
|
||||
return import('./workspaceitems-delete-page.component');
|
||||
}
|
||||
}
|
||||
|
@@ -0,0 +1,20 @@
|
||||
import { Component } from '@angular/core';
|
||||
import { FormsModule } from '@angular/forms';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
import { MetadataImportPageComponent as BaseComponent } from '../../../../../app/admin/admin-import-metadata-page/metadata-import-page.component';
|
||||
import { FileDropzoneNoUploaderComponent } from '../../../../../app/shared/upload/file-dropzone-no-uploader/file-dropzone-no-uploader.component';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-themed-metadata-import-page',
|
||||
// templateUrl: './metadata-import-page.component.html',
|
||||
templateUrl: '../../../../../app/admin/admin-import-metadata-page/metadata-import-page.component.html',
|
||||
standalone: true,
|
||||
imports: [
|
||||
FileDropzoneNoUploaderComponent,
|
||||
FormsModule,
|
||||
TranslateModule,
|
||||
],
|
||||
})
|
||||
export class MetadataImportPageComponent extends BaseComponent {
|
||||
}
|
@@ -8,7 +8,7 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
import { BrowseByDateComponent as BaseComponent } from '../../../../../app/browse-by/browse-by-date/browse-by-date.component';
|
||||
import { ThemedBrowseByComponent } from '../../../../../app/shared/browse-by/themed-browse-by.component';
|
||||
import { ThemedComcolPageBrowseByComponent } from '../../../../../app/shared/comcol/comcol-page-browse-by/themed-comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from '../../../../../app/shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ThemedComcolPageContentComponent } from '../../../../../app/shared/comcol/comcol-page-content/themed-comcol-page-content.component';
|
||||
import { ThemedComcolPageHandleComponent } from '../../../../../app/shared/comcol/comcol-page-handle/themed-comcol-page-handle.component';
|
||||
import { ComcolPageHeaderComponent } from '../../../../../app/shared/comcol/comcol-page-header/comcol-page-header.component';
|
||||
import { ComcolPageLogoComponent } from '../../../../../app/shared/comcol/comcol-page-logo/comcol-page-logo.component';
|
||||
@@ -30,7 +30,7 @@ import { VarDirective } from '../../../../../app/shared/utils/var.directive';
|
||||
ComcolPageLogoComponent,
|
||||
NgIf,
|
||||
ThemedComcolPageHandleComponent,
|
||||
ComcolPageContentComponent,
|
||||
ThemedComcolPageContentComponent,
|
||||
DsoEditMenuComponent,
|
||||
ThemedComcolPageBrowseByComponent,
|
||||
TranslateModule,
|
||||
|
@@ -8,7 +8,7 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
import { BrowseByMetadataComponent as BaseComponent } from '../../../../../app/browse-by/browse-by-metadata/browse-by-metadata.component';
|
||||
import { ThemedBrowseByComponent } from '../../../../../app/shared/browse-by/themed-browse-by.component';
|
||||
import { ThemedComcolPageBrowseByComponent } from '../../../../../app/shared/comcol/comcol-page-browse-by/themed-comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from '../../../../../app/shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ThemedComcolPageContentComponent } from '../../../../../app/shared/comcol/comcol-page-content/themed-comcol-page-content.component';
|
||||
import { ThemedComcolPageHandleComponent } from '../../../../../app/shared/comcol/comcol-page-handle/themed-comcol-page-handle.component';
|
||||
import { ComcolPageHeaderComponent } from '../../../../../app/shared/comcol/comcol-page-header/comcol-page-header.component';
|
||||
import { ComcolPageLogoComponent } from '../../../../../app/shared/comcol/comcol-page-logo/comcol-page-logo.component';
|
||||
@@ -30,7 +30,7 @@ import { VarDirective } from '../../../../../app/shared/utils/var.directive';
|
||||
ComcolPageLogoComponent,
|
||||
NgIf,
|
||||
ThemedComcolPageHandleComponent,
|
||||
ComcolPageContentComponent,
|
||||
ThemedComcolPageContentComponent,
|
||||
DsoEditMenuComponent,
|
||||
ThemedComcolPageBrowseByComponent,
|
||||
TranslateModule,
|
||||
|
@@ -9,7 +9,7 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
import { BrowseByTaxonomyComponent as BaseComponent } from '../../../../../app/browse-by/browse-by-taxonomy/browse-by-taxonomy.component';
|
||||
import { ThemedBrowseByComponent } from '../../../../../app/shared/browse-by/themed-browse-by.component';
|
||||
import { ThemedComcolPageBrowseByComponent } from '../../../../../app/shared/comcol/comcol-page-browse-by/themed-comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from '../../../../../app/shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ThemedComcolPageContentComponent } from '../../../../../app/shared/comcol/comcol-page-content/themed-comcol-page-content.component';
|
||||
import { ThemedComcolPageHandleComponent } from '../../../../../app/shared/comcol/comcol-page-handle/themed-comcol-page-handle.component';
|
||||
import { ComcolPageHeaderComponent } from '../../../../../app/shared/comcol/comcol-page-header/comcol-page-header.component';
|
||||
import { ComcolPageLogoComponent } from '../../../../../app/shared/comcol/comcol-page-logo/comcol-page-logo.component';
|
||||
@@ -32,7 +32,7 @@ import { VarDirective } from '../../../../../app/shared/utils/var.directive';
|
||||
ComcolPageLogoComponent,
|
||||
NgIf,
|
||||
ThemedComcolPageHandleComponent,
|
||||
ComcolPageContentComponent,
|
||||
ThemedComcolPageContentComponent,
|
||||
DsoEditMenuComponent,
|
||||
ThemedComcolPageBrowseByComponent,
|
||||
TranslateModule,
|
||||
|
@@ -8,7 +8,7 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
import { BrowseByTitleComponent as BaseComponent } from '../../../../../app/browse-by/browse-by-title/browse-by-title.component';
|
||||
import { ThemedBrowseByComponent } from '../../../../../app/shared/browse-by/themed-browse-by.component';
|
||||
import { ThemedComcolPageBrowseByComponent } from '../../../../../app/shared/comcol/comcol-page-browse-by/themed-comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from '../../../../../app/shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ThemedComcolPageContentComponent } from '../../../../../app/shared/comcol/comcol-page-content/themed-comcol-page-content.component';
|
||||
import { ThemedComcolPageHandleComponent } from '../../../../../app/shared/comcol/comcol-page-handle/themed-comcol-page-handle.component';
|
||||
import { ComcolPageHeaderComponent } from '../../../../../app/shared/comcol/comcol-page-header/comcol-page-header.component';
|
||||
import { ComcolPageLogoComponent } from '../../../../../app/shared/comcol/comcol-page-logo/comcol-page-logo.component';
|
||||
@@ -30,7 +30,7 @@ import { VarDirective } from '../../../../../app/shared/utils/var.directive';
|
||||
ComcolPageLogoComponent,
|
||||
NgIf,
|
||||
ThemedComcolPageHandleComponent,
|
||||
ComcolPageContentComponent,
|
||||
ThemedComcolPageContentComponent,
|
||||
DsoEditMenuComponent,
|
||||
ThemedComcolPageBrowseByComponent,
|
||||
TranslateModule,
|
||||
|
@@ -15,7 +15,7 @@ import {
|
||||
fadeInOut,
|
||||
} from '../../../../app/shared/animations/fade';
|
||||
import { ThemedComcolPageBrowseByComponent } from '../../../../app/shared/comcol/comcol-page-browse-by/themed-comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from '../../../../app/shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ThemedComcolPageContentComponent } from '../../../../app/shared/comcol/comcol-page-content/themed-comcol-page-content.component';
|
||||
import { ThemedComcolPageHandleComponent } from '../../../../app/shared/comcol/comcol-page-handle/themed-comcol-page-handle.component';
|
||||
import { ComcolPageHeaderComponent } from '../../../../app/shared/comcol/comcol-page-header/comcol-page-header.component';
|
||||
import { ComcolPageLogoComponent } from '../../../../app/shared/comcol/comcol-page-logo/comcol-page-logo.component';
|
||||
@@ -26,7 +26,6 @@ import { ObjectCollectionComponent } from '../../../../app/shared/object-collect
|
||||
import { VarDirective } from '../../../../app/shared/utils/var.directive';
|
||||
import { ViewTrackerComponent } from '../../../../app/statistics/angulartics/dspace/view-tracker.component';
|
||||
|
||||
|
||||
@Component({
|
||||
selector: 'ds-themed-collection-page',
|
||||
// templateUrl: './collection-page.component.html',
|
||||
@@ -40,7 +39,7 @@ import { ViewTrackerComponent } from '../../../../app/statistics/angulartics/dsp
|
||||
],
|
||||
standalone: true,
|
||||
imports: [
|
||||
ComcolPageContentComponent,
|
||||
ThemedComcolPageContentComponent,
|
||||
ErrorComponent,
|
||||
NgIf,
|
||||
ThemedLoadingComponent,
|
||||
@@ -60,4 +59,5 @@ import { ViewTrackerComponent } from '../../../../app/statistics/angulartics/dsp
|
||||
/**
|
||||
* This component represents a detail page for a single collection
|
||||
*/
|
||||
export class CollectionPageComponent extends BaseComponent {}
|
||||
export class CollectionPageComponent extends BaseComponent {
|
||||
}
|
||||
|
@@ -17,7 +17,7 @@ import { ThemedCollectionPageSubCollectionListComponent } from '../../../../app/
|
||||
import { ThemedCommunityPageSubCommunityListComponent } from '../../../../app/community-page/sections/sub-com-col-section/sub-community-list/themed-community-page-sub-community-list.component';
|
||||
import { fadeInOut } from '../../../../app/shared/animations/fade';
|
||||
import { ThemedComcolPageBrowseByComponent } from '../../../../app/shared/comcol/comcol-page-browse-by/themed-comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from '../../../../app/shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ThemedComcolPageContentComponent } from '../../../../app/shared/comcol/comcol-page-content/themed-comcol-page-content.component';
|
||||
import { ThemedComcolPageHandleComponent } from '../../../../app/shared/comcol/comcol-page-handle/themed-comcol-page-handle.component';
|
||||
import { ComcolPageHeaderComponent } from '../../../../app/shared/comcol/comcol-page-header/comcol-page-header.component';
|
||||
import { ComcolPageLogoComponent } from '../../../../app/shared/comcol/comcol-page-logo/comcol-page-logo.component';
|
||||
@@ -27,7 +27,6 @@ import { ThemedLoadingComponent } from '../../../../app/shared/loading/themed-lo
|
||||
import { VarDirective } from '../../../../app/shared/utils/var.directive';
|
||||
import { ViewTrackerComponent } from '../../../../app/statistics/angulartics/dspace/view-tracker.component';
|
||||
|
||||
|
||||
@Component({
|
||||
selector: 'ds-themed-community-page',
|
||||
// templateUrl: './community-page.component.html',
|
||||
@@ -38,7 +37,7 @@ import { ViewTrackerComponent } from '../../../../app/statistics/angulartics/dsp
|
||||
animations: [fadeInOut],
|
||||
standalone: true,
|
||||
imports: [
|
||||
ComcolPageContentComponent,
|
||||
ThemedComcolPageContentComponent,
|
||||
ErrorComponent,
|
||||
ThemedLoadingComponent,
|
||||
NgIf,
|
||||
@@ -60,4 +59,5 @@ import { ViewTrackerComponent } from '../../../../app/statistics/angulartics/dsp
|
||||
/**
|
||||
* This component represents a detail page for a single community
|
||||
*/
|
||||
export class CommunityPageComponent extends BaseComponent {}
|
||||
export class CommunityPageComponent extends BaseComponent {
|
||||
}
|
||||
|
@@ -14,9 +14,9 @@ import { VarDirective } from '../../../../../../../app/shared/utils/var.directiv
|
||||
@Component({
|
||||
selector: 'ds-themed-community-page-sub-collection-list',
|
||||
// styleUrls: ['./community-page-sub-collection-list.component.scss'],
|
||||
styleUrls: ['../../../../../app/community-page/sections/sub-com-col-section/sub-collection-list/community-page-sub-collection-list.component.scss'],
|
||||
styleUrls: ['../../../../../../../app/community-page/sections/sub-com-col-section/sub-collection-list/community-page-sub-collection-list.component.scss'],
|
||||
// templateUrl: './community-page-sub-collection-list.component.html',
|
||||
templateUrl: '../../../../../app/community-page/sections/sub-com-col-section/sub-collection-list/community-page-sub-collection-list.component.html',
|
||||
templateUrl: '../../../../../../../app/community-page/sections/sub-com-col-section/sub-collection-list/community-page-sub-collection-list.component.html',
|
||||
imports: [
|
||||
ObjectCollectionComponent,
|
||||
ErrorComponent,
|
||||
|
@@ -14,7 +14,7 @@ import { LoginPageComponent as BaseComponent } from '../../../../app/login-page/
|
||||
// templateUrl: './login-page.component.html'
|
||||
templateUrl: '../../../../app/login-page/login-page.component.html',
|
||||
standalone: true,
|
||||
imports: [ThemedLogInComponent ,TranslateModule],
|
||||
imports: [ThemedLogInComponent, TranslateModule],
|
||||
})
|
||||
export class LoginPageComponent extends BaseComponent {
|
||||
}
|
||||
|
@@ -0,0 +1,18 @@
|
||||
import { NgIf } from '@angular/common';
|
||||
import { Component } from '@angular/core';
|
||||
|
||||
import { ProfilePageMetadataFormComponent as BaseComponent } from '../../../../../app/profile-page/profile-page-metadata-form/profile-page-metadata-form.component';
|
||||
import { FormComponent } from '../../../../../app/shared/form/form.component';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-themed-profile-page-metadata-form',
|
||||
templateUrl: '../../../../../app/profile-page/profile-page-metadata-form/profile-page-metadata-form.component.html',
|
||||
// templateUrl: './profile-page-metadata-form.component.html',
|
||||
imports: [
|
||||
FormComponent,
|
||||
NgIf,
|
||||
],
|
||||
standalone: true,
|
||||
})
|
||||
export class ProfilePageMetadataFormComponent extends BaseComponent {
|
||||
}
|
@@ -8,7 +8,7 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
import { SuggestionsNotificationComponent } from '../../../../app/notifications/suggestions-notification/suggestions-notification.component';
|
||||
import { ProfilePageComponent as BaseComponent } from '../../../../app/profile-page/profile-page.component';
|
||||
import { ProfilePageMetadataFormComponent } from '../../../../app/profile-page/profile-page-metadata-form/profile-page-metadata-form.component';
|
||||
import { ThemedProfilePageMetadataFormComponent } from '../../../../app/profile-page/profile-page-metadata-form/themed-profile-page-metadata-form.component';
|
||||
import { ProfilePageResearcherFormComponent } from '../../../../app/profile-page/profile-page-researcher-form/profile-page-researcher-form.component';
|
||||
import { ProfilePageSecurityFormComponent } from '../../../../app/profile-page/profile-page-security-form/profile-page-security-form.component';
|
||||
import { VarDirective } from '../../../../app/shared/utils/var.directive';
|
||||
@@ -21,7 +21,7 @@ import { VarDirective } from '../../../../app/shared/utils/var.directive';
|
||||
templateUrl: '../../../../app/profile-page/profile-page.component.html',
|
||||
standalone: true,
|
||||
imports: [
|
||||
ProfilePageMetadataFormComponent,
|
||||
ThemedProfilePageMetadataFormComponent,
|
||||
ProfilePageSecurityFormComponent,
|
||||
AsyncPipe,
|
||||
TranslateModule,
|
||||
|
@@ -1,21 +0,0 @@
|
||||
import { NgIf } from '@angular/common';
|
||||
import { Component } from '@angular/core';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
import { ComcolPageHandleComponent as BaseComponent } from '../../../../../app/shared/comcol/comcol-page-handle/comcol-page-handle.component';
|
||||
|
||||
|
||||
/**
|
||||
* This component builds a URL from the value of "handle"
|
||||
*/
|
||||
|
||||
@Component({
|
||||
selector: 'ds-base-comcol-page-handle',
|
||||
// templateUrl: './comcol-page-handle.component.html',
|
||||
templateUrl: '../../../../../app/shared/comcol/comcol-page-handle/comcol-page-handle.component.html',
|
||||
// styleUrls: ['./comcol-page-handle.component.scss'],
|
||||
styleUrls: ['../../../../../app/shared/comcol/comcol-page-handle/comcol-page-handle.component.scss'],
|
||||
standalone: true,
|
||||
imports: [NgIf, TranslateModule],
|
||||
})
|
||||
export class ComcolPageHandleComponent extends BaseComponent {}
|
@@ -11,18 +11,14 @@ import {
|
||||
} from '@angular/router';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
import { ComcolPageBrowseByComponent as BaseComponent } from '../../../../../app/shared/comcol/comcol-page-browse-by/comcol-page-browse-by.component';
|
||||
import { ComcolPageBrowseByComponent as BaseComponent } from '../../../../../../app/shared/comcol/comcol-page-browse-by/comcol-page-browse-by.component';
|
||||
|
||||
/**
|
||||
* A component to display the "Browse By" section of a Community or Collection page
|
||||
* It expects the ID of the Community or Collection as input to be passed on as a scope
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-base-comcol-page-browse-by',
|
||||
selector: 'ds-themed-comcol-page-browse-by',
|
||||
// styleUrls: ['./comcol-page-browse-by.component.scss'],
|
||||
styleUrls: ['../../../../../app/shared/comcol/comcol-page-browse-by/comcol-page-browse-by.component.scss'],
|
||||
styleUrls: ['../../../../../../app/shared/comcol/comcol-page-browse-by/comcol-page-browse-by.component.scss'],
|
||||
// templateUrl: './comcol-page-browse-by.component.html'
|
||||
templateUrl: '../../../../../app/shared/comcol/comcol-page-browse-by/comcol-page-browse-by.component.html',
|
||||
templateUrl: '../../../../../../app/shared/comcol/comcol-page-browse-by/comcol-page-browse-by.component.html',
|
||||
standalone: true,
|
||||
imports: [
|
||||
FormsModule,
|
||||
@@ -34,4 +30,5 @@ import { ComcolPageBrowseByComponent as BaseComponent } from '../../../../../app
|
||||
NgIf,
|
||||
],
|
||||
})
|
||||
export class ComcolPageBrowseByComponent extends BaseComponent {}
|
||||
export class ComcolPageBrowseByComponent extends BaseComponent {
|
||||
}
|
@@ -0,0 +1,20 @@
|
||||
import { NgIf } from '@angular/common';
|
||||
import { Component } from '@angular/core';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
import { ComcolPageContentComponent as BaseComponent } from '../../../../../../app/shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-themed-comcol-page-content',
|
||||
// styleUrls: ['./comcol-page-content.component.scss'],
|
||||
styleUrls: ['../../../../../../app/shared/comcol/comcol-page-content/comcol-page-content.component.scss'],
|
||||
// templateUrl: './comcol-page-content.component.html',
|
||||
templateUrl: '../../../../../../app/shared/comcol/comcol-page-content/comcol-page-content.component.html',
|
||||
imports: [
|
||||
TranslateModule,
|
||||
NgIf,
|
||||
],
|
||||
standalone: true,
|
||||
})
|
||||
export class ComcolPageContentComponent extends BaseComponent {
|
||||
}
|
@@ -0,0 +1,20 @@
|
||||
import { NgIf } from '@angular/common';
|
||||
import { Component } from '@angular/core';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
import { ComcolPageHandleComponent as BaseComponent } from '../../../../../../app/shared/comcol/comcol-page-handle/comcol-page-handle.component';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-themed-comcol-page-handle',
|
||||
// templateUrl: './comcol-page-handle.component.html',
|
||||
templateUrl: '../../../../../../app/shared/comcol/comcol-page-handle/comcol-page-handle.component.html',
|
||||
// styleUrls: ['./comcol-page-handle.component.scss'],
|
||||
styleUrls: ['../../../../../../app/shared/comcol/comcol-page-handle/comcol-page-handle.component.scss'],
|
||||
standalone: true,
|
||||
imports: [
|
||||
NgIf,
|
||||
TranslateModule,
|
||||
],
|
||||
})
|
||||
export class ComcolPageHandleComponent extends BaseComponent {
|
||||
}
|
@@ -0,0 +1,24 @@
|
||||
import {
|
||||
NgFor,
|
||||
NgIf,
|
||||
} from '@angular/common';
|
||||
import { Component } from '@angular/core';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
import { MetadataFieldWrapperComponent } from '../../../../../../../../app/shared/metadata-field-wrapper/metadata-field-wrapper.component';
|
||||
import { ItemDetailPreviewFieldComponent as BaseComponent } from '../../../../../../../../app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-themed-item-detail-preview-field',
|
||||
// templateUrl: './item-detail-preview-field.component.html',
|
||||
templateUrl: '../../../../../../../../app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.html',
|
||||
standalone: true,
|
||||
imports: [
|
||||
MetadataFieldWrapperComponent,
|
||||
NgFor,
|
||||
NgIf,
|
||||
TranslateModule,
|
||||
],
|
||||
})
|
||||
export class ItemDetailPreviewFieldComponent extends BaseComponent {
|
||||
}
|
@@ -0,0 +1,42 @@
|
||||
import {
|
||||
AsyncPipe,
|
||||
NgClass,
|
||||
NgFor,
|
||||
NgIf,
|
||||
} from '@angular/common';
|
||||
import { Component } from '@angular/core';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
import { fadeInOut } from '../../../../../../../app/shared/animations/fade';
|
||||
import { ThemedBadgesComponent } from '../../../../../../../app/shared/object-collection/shared/badges/themed-badges.component';
|
||||
import { ItemCollectionComponent } from '../../../../../../../app/shared/object-collection/shared/mydspace-item-collection/item-collection.component';
|
||||
import { ItemSubmitterComponent } from '../../../../../../../app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component';
|
||||
import { ItemListPreviewComponent as BaseComponent } from '../../../../../../../app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component';
|
||||
import { TruncatableComponent } from '../../../../../../../app/shared/truncatable/truncatable.component';
|
||||
import { TruncatablePartComponent } from '../../../../../../../app/shared/truncatable/truncatable-part/truncatable-part.component';
|
||||
import { ThemedThumbnailComponent } from '../../../../../../../app/thumbnail/themed-thumbnail.component';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-themed-item-list-preview',
|
||||
// styleUrls: ['./item-list-preview.component.scss'],
|
||||
styleUrls: ['../../../../../../../app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.scss'],
|
||||
// templateUrl: './item-list-preview.component.html',
|
||||
templateUrl: '../../../../../../../app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.html',
|
||||
animations: [fadeInOut],
|
||||
standalone: true,
|
||||
imports: [
|
||||
AsyncPipe,
|
||||
ItemCollectionComponent,
|
||||
ItemSubmitterComponent,
|
||||
NgClass,
|
||||
NgFor,
|
||||
NgIf,
|
||||
ThemedBadgesComponent,
|
||||
ThemedThumbnailComponent,
|
||||
TranslateModule,
|
||||
TruncatableComponent,
|
||||
TruncatablePartComponent,
|
||||
],
|
||||
})
|
||||
export class ItemListPreviewComponent extends BaseComponent {
|
||||
}
|
@@ -6,12 +6,12 @@ import {
|
||||
import { Component } from '@angular/core';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
import { Context } from '../../../../../../../app/core/shared/context.model';
|
||||
import { ViewMode } from '../../../../../../../app/core/shared/view-mode.model';
|
||||
import { ItemSearchResult } from '../../../../../../../app/shared/object-collection/shared/item-search-result.model';
|
||||
import { listableObjectComponent } from '../../../../../../../app/shared/object-collection/shared/listable-object/listable-object.decorator';
|
||||
import { PublicationSidebarSearchListElementComponent as BaseComponent } from '../../../../../../../app/shared/object-list/sidebar-search-list-element/item-types/publication/publication-sidebar-search-list-element.component';
|
||||
import { TruncatablePartComponent } from '../../../../../../../app/shared/truncatable/truncatable-part/truncatable-part.component';
|
||||
import { Context } from '../../../../../../../../app/core/shared/context.model';
|
||||
import { ViewMode } from '../../../../../../../../app/core/shared/view-mode.model';
|
||||
import { ItemSearchResult } from '../../../../../../../../app/shared/object-collection/shared/item-search-result.model';
|
||||
import { listableObjectComponent } from '../../../../../../../../app/shared/object-collection/shared/listable-object/listable-object.decorator';
|
||||
import { PublicationSidebarSearchListElementComponent as BaseComponent } from '../../../../../../../../app/shared/object-list/sidebar-search-list-element/item-types/publication/publication-sidebar-search-list-element.component';
|
||||
import { TruncatablePartComponent } from '../../../../../../../../app/shared/truncatable/truncatable-part/truncatable-part.component';
|
||||
|
||||
@listableObjectComponent('PublicationSearchResult', ViewMode.ListElement, Context.SideBarSearchModal, 'custom')
|
||||
@listableObjectComponent('PublicationSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent, 'custom')
|
||||
@@ -20,7 +20,7 @@ import { TruncatablePartComponent } from '../../../../../../../app/shared/trunca
|
||||
@Component({
|
||||
selector: 'ds-publication-sidebar-search-list-element',
|
||||
// templateUrl: './publication-sidebar-search-list-element.component.html',
|
||||
templateUrl: '../../../../../../../app/shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
||||
templateUrl: '../../../../../../../../app/shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
||||
standalone: true,
|
||||
imports: [TruncatablePartComponent, NgClass, NgIf, AsyncPipe, TranslateModule],
|
||||
})
|
44
src/themes/custom/app/shared/search/search.component.ts
Normal file
44
src/themes/custom/app/shared/search/search.component.ts
Normal file
@@ -0,0 +1,44 @@
|
||||
import {
|
||||
AsyncPipe,
|
||||
NgIf,
|
||||
NgTemplateOutlet,
|
||||
} from '@angular/common';
|
||||
import {
|
||||
ChangeDetectionStrategy,
|
||||
Component,
|
||||
} from '@angular/core';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
import { pushInOut } from '../../../../../app/shared/animations/push';
|
||||
import { SearchComponent as BaseComponent } from '../../../../../app/shared/search/search.component';
|
||||
import { SearchLabelsComponent } from '../../../../../app/shared/search/search-labels/search-labels.component';
|
||||
import { ThemedSearchResultsComponent } from '../../../../../app/shared/search/search-results/themed-search-results.component';
|
||||
import { ThemedSearchSidebarComponent } from '../../../../../app/shared/search/search-sidebar/themed-search-sidebar.component';
|
||||
import { ThemedSearchFormComponent } from '../../../../../app/shared/search-form/themed-search-form.component';
|
||||
import { PageWithSidebarComponent } from '../../../../../app/shared/sidebar/page-with-sidebar.component';
|
||||
import { ViewModeSwitchComponent } from '../../../../../app/shared/view-mode-switch/view-mode-switch.component';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-themed-search',
|
||||
// styleUrls: ['./search.component.scss'],
|
||||
styleUrls: ['../../../../../app/shared/search/search.component.scss'],
|
||||
// templateUrl: './search.component.html',
|
||||
templateUrl: '../../../../../app/shared/search/search.component.html',
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
animations: [pushInOut],
|
||||
standalone: true,
|
||||
imports: [
|
||||
AsyncPipe,
|
||||
NgIf,
|
||||
NgTemplateOutlet,
|
||||
PageWithSidebarComponent,
|
||||
ThemedSearchFormComponent,
|
||||
ThemedSearchResultsComponent,
|
||||
ThemedSearchSidebarComponent,
|
||||
TranslateModule,
|
||||
SearchLabelsComponent,
|
||||
ViewModeSwitchComponent,
|
||||
],
|
||||
})
|
||||
export class SearchComponent extends BaseComponent {
|
||||
}
|
@@ -0,0 +1,18 @@
|
||||
import { NgIf } from '@angular/common';
|
||||
import { Component } from '@angular/core';
|
||||
|
||||
import { UploaderComponent } from '../../../../../../app/shared/upload/uploader/uploader.component';
|
||||
import { SubmissionUploadFilesComponent as BaseComponent } from '../../../../../../app/submission/form/submission-upload-files/submission-upload-files.component';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-themed-submission-upload-files',
|
||||
// templateUrl: './submission-upload-files.component.html',
|
||||
templateUrl: '../../../../../../app/submission/form/submission-upload-files/submission-upload-files.component.html',
|
||||
imports: [
|
||||
UploaderComponent,
|
||||
NgIf,
|
||||
],
|
||||
standalone: true,
|
||||
})
|
||||
export class SubmissionUploadFilesComponent extends BaseComponent {
|
||||
}
|
@@ -7,7 +7,7 @@ import { WorkspaceItemsDeletePageComponent as BaseComponent } from '../../../../
|
||||
|
||||
|
||||
@Component({
|
||||
selector: 'ds-base-workspaceitems-delete-page',
|
||||
selector: 'ds-themed-workspaceitems-delete-page',
|
||||
templateUrl: '../../../../../app/workspaceitems-edit-page/workspaceitems-delete-page/workspaceitems-delete-page.component.html',
|
||||
standalone: true,
|
||||
imports: [
|
@@ -29,7 +29,7 @@ import { BrowseEntryListElementComponent } from './app/shared/object-list/browse
|
||||
import { CollectionListElementComponent } from './app/shared/object-list/collection-list-element/collection-list-element.component';
|
||||
import { CommunityListElementComponent } from './app/shared/object-list/community-list-element/community-list-element.component';
|
||||
import { ItemSearchResultListElementComponent } from './app/shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component';
|
||||
import { PublicationSidebarSearchListElementComponent } from './app/shared/object-list/sidebar-search-list-element/item-types/publication-sidebar-search-list-element.component';
|
||||
import { PublicationSidebarSearchListElementComponent } from './app/shared/object-list/sidebar-search-list-element/item-types/publication/publication-sidebar-search-list-element.component';
|
||||
import { StartsWithDateComponent } from './app/shared/starts-with/date/starts-with-date.component';
|
||||
import { StartsWithTextComponent } from './app/shared/starts-with/text/starts-with-text.component';
|
||||
|
||||
|
@@ -12,6 +12,7 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
import { ScrollToModule } from '@nicky-lenaers/ngx-scroll-to';
|
||||
|
||||
import { RootModule } from '../../app/root.module';
|
||||
import { MetadataImportPageComponent } from './app/admin/admin-import-metadata-page/metadata-import-page.component';
|
||||
import { AdminSidebarComponent } from './app/admin/admin-sidebar/admin-sidebar.component';
|
||||
import { EditBitstreamPageComponent } from './app/bitstream-page/edit-bitstream-page/edit-bitstream-page.component';
|
||||
import { BreadcrumbsComponent } from './app/breadcrumbs/breadcrumbs.component';
|
||||
@@ -53,6 +54,7 @@ import { MyDSpacePageComponent } from './app/my-dspace-page/my-dspace-page.compo
|
||||
import { ExpandableNavbarSectionComponent } from './app/navbar/expandable-navbar-section/expandable-navbar-section.component';
|
||||
import { PageNotFoundComponent } from './app/pagenotfound/pagenotfound.component';
|
||||
import { ProfilePageComponent } from './app/profile-page/profile-page.component';
|
||||
import { ProfilePageMetadataFormComponent } from './app/profile-page/profile-page-metadata-form/profile-page-metadata-form.component';
|
||||
import { RegisterEmailFormComponent } from './app/register-email-form/register-email-form.component';
|
||||
import { CreateProfileComponent } from './app/register-page/create-profile/create-profile.component';
|
||||
import { RegisterEmailComponent } from './app/register-page/register-email/register-email.component';
|
||||
@@ -65,8 +67,9 @@ import { SearchPageComponent } from './app/search-page/search-page.component';
|
||||
import { AuthNavMenuComponent } from './app/shared/auth-nav-menu/auth-nav-menu.component';
|
||||
import { UserMenuComponent } from './app/shared/auth-nav-menu/user-menu/user-menu.component';
|
||||
import { BrowseByComponent } from './app/shared/browse-by/browse-by.component';
|
||||
import { ComcolPageBrowseByComponent } from './app/shared/comcol-page-browse-by/comcol-page-browse-by.component';
|
||||
import { ComcolPageHandleComponent } from './app/shared/comcol-page-handle/comcol-page-handle.component';
|
||||
import { ComcolPageBrowseByComponent } from './app/shared/comcol/comcol-page-browse-by/comcol-page-browse-by.component';
|
||||
import { ComcolPageContentComponent } from './app/shared/comcol/comcol-page-content/comcol-page-content.component';
|
||||
import { ComcolPageHandleComponent } from './app/shared/comcol/comcol-page-handle/comcol-page-handle.component';
|
||||
import { DsDynamicLookupRelationExternalSourceTabComponent } from './app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/external-source-tab/dynamic-lookup-relation-external-source-tab.component';
|
||||
import { ExternalSourceEntryImportModalComponent } from './app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/external-source-tab/external-source-entry-import-modal/external-source-entry-import-modal.component';
|
||||
import { DsDynamicLookupRelationSearchTabComponent } from './app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/search-tab/dynamic-lookup-relation-search-tab.component';
|
||||
@@ -76,8 +79,11 @@ import { BadgesComponent } from './app/shared/object-collection/shared/badges/ba
|
||||
import { MyDSpaceStatusBadgeComponent } from './app/shared/object-collection/shared/badges/my-dspace-status-badge/my-dspace-status-badge.component';
|
||||
import { StatusBadgeComponent } from './app/shared/object-collection/shared/badges/status-badge/status-badge.component';
|
||||
import { TypeBadgeComponent } from './app/shared/object-collection/shared/badges/type-badge/type-badge.component';
|
||||
import { ItemDetailPreviewFieldComponent } from './app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component';
|
||||
import { ItemListPreviewComponent } from './app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component';
|
||||
import { ObjectListComponent } from './app/shared/object-list/object-list.component';
|
||||
import { ResultsBackButtonComponent } from './app/shared/results-back-button/results-back-button.component';
|
||||
import { SearchComponent } from './app/shared/search/search.component';
|
||||
import { SearchFiltersComponent } from './app/shared/search/search-filters/search-filters.component';
|
||||
import { SearchResultsComponent } from './app/shared/search/search-results/search-results.component';
|
||||
import { SearchSettingsComponent } from './app/shared/search/search-settings/search-settings.component';
|
||||
@@ -88,13 +94,14 @@ import { CommunityStatisticsPageComponent } from './app/statistics-page/communit
|
||||
import { ItemStatisticsPageComponent } from './app/statistics-page/item-statistics-page/item-statistics-page.component';
|
||||
import { SiteStatisticsPageComponent } from './app/statistics-page/site-statistics-page/site-statistics-page.component';
|
||||
import { SubmissionEditComponent } from './app/submission/edit/submission-edit.component';
|
||||
import { SubmissionUploadFilesComponent } from './app/submission/form/submission-upload-files/submission-upload-files.component';
|
||||
import { SubmissionImportExternalComponent } from './app/submission/import-external/submission-import-external.component';
|
||||
import { SubmissionSectionUploadFileComponent } from './app/submission/sections/upload/file/section-upload-file.component';
|
||||
import { SubmissionSubmitComponent } from './app/submission/submit/submission-submit.component';
|
||||
import { ThumbnailComponent } from './app/thumbnail/thumbnail.component';
|
||||
import { WorkflowItemDeleteComponent } from './app/workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component';
|
||||
import { WorkflowItemSendBackComponent } from './app/workflowitems-edit-page/workflow-item-send-back/workflow-item-send-back.component';
|
||||
import { WorkspaceItemsDeletePageComponent } from './app/workspace-items-delete-page/workspace-items-delete/workspace-items-delete.component';
|
||||
import { WorkspaceItemsDeletePageComponent } from './app/workspaceitems-edit-page/workspaceitems-delete-page/workspaceitems-delete-page.component';
|
||||
|
||||
const DECLARATIONS = [
|
||||
FileSectionComponent,
|
||||
@@ -180,6 +187,13 @@ const DECLARATIONS = [
|
||||
UserMenuComponent,
|
||||
BrowseByComponent,
|
||||
RegisterEmailFormComponent,
|
||||
SearchComponent,
|
||||
ItemListPreviewComponent,
|
||||
MetadataImportPageComponent,
|
||||
ItemDetailPreviewFieldComponent,
|
||||
ProfilePageMetadataFormComponent,
|
||||
SubmissionUploadFilesComponent,
|
||||
ComcolPageContentComponent,
|
||||
];
|
||||
|
||||
@NgModule({
|
||||
|
Reference in New Issue
Block a user