mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 10:04:11 +00:00
Merge pull request #2245 from mwoodiupui/themeable-request-copy
Make some request-copy components themeable.
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
<div *ngIf="itemRequestRD && itemRequestRD.hasSucceeded">
|
<div *ngIf="itemRequestRD && itemRequestRD.hasSucceeded">
|
||||||
<p>{{'deny-request-copy.intro' | translate}}</p>
|
<p>{{'deny-request-copy.intro' | translate}}</p>
|
||||||
|
|
||||||
<ds-email-request-copy [subject]="subject$ | async" [message]="message$ | async" (send)="deny($event)"></ds-email-request-copy>
|
<ds-themed-email-request-copy [subject]="subject$ | async" [message]="message$ | async" (send)="deny($event)"></ds-themed-email-request-copy>
|
||||||
</div>
|
</div>
|
||||||
<ds-themed-loading *ngIf="!itemRequestRD || itemRequestRD?.isLoading"></ds-themed-loading>
|
<ds-themed-loading *ngIf="!itemRequestRD || itemRequestRD?.isLoading"></ds-themed-loading>
|
||||||
</div>
|
</div>
|
||||||
|
@@ -0,0 +1,26 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from 'src/app/shared/theme-support/themed.component';
|
||||||
|
|
||||||
|
import { DenyRequestCopyComponent } from 'src/themes/custom/app/request-copy/deny-request-copy/deny-request-copy.component';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Themed wrapper for deny-request-copy.component
|
||||||
|
*/
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-deny-request-copy',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: './../../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
export class ThemedDenyRequestCopyComponent extends ThemedComponent<DenyRequestCopyComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'DenyRequestCopyComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../../themes/${themeName}/app/request-copy/deny-request-copy/deny-request-copy.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import('./deny-request-copy.component');
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,44 @@
|
|||||||
|
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
||||||
|
import { ThemedComponent } from 'src/app/shared/theme-support/themed.component';
|
||||||
|
|
||||||
|
import { EmailRequestCopyComponent } from './email-request-copy.component';
|
||||||
|
import { RequestCopyEmail } from './request-copy-email.model';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Themed wrapper for email-request-copy.component
|
||||||
|
*/
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-email-request-copy',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: './../../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
export class ThemedEmailRequestCopyComponent extends ThemedComponent<EmailRequestCopyComponent> {
|
||||||
|
/**
|
||||||
|
* Event emitter for sending the email
|
||||||
|
*/
|
||||||
|
@Output() send: EventEmitter<RequestCopyEmail> = new EventEmitter<RequestCopyEmail>();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The subject of the email
|
||||||
|
*/
|
||||||
|
@Input() subject: string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The contents of the email
|
||||||
|
*/
|
||||||
|
@Input() message: string;
|
||||||
|
|
||||||
|
protected inAndOutputNames: (keyof EmailRequestCopyComponent & keyof this)[] = ['send', 'subject', 'message'];
|
||||||
|
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'EmailRequestCopyComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../../themes/${themeName}/app/request-copy/email-request-copy/email-request-copy.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import('./email-request-copy.component');
|
||||||
|
}
|
||||||
|
}
|
@@ -3,7 +3,7 @@
|
|||||||
<div *ngIf="itemRequestRD && itemRequestRD.hasSucceeded">
|
<div *ngIf="itemRequestRD && itemRequestRD.hasSucceeded">
|
||||||
<p>{{'grant-request-copy.intro' | translate}}</p>
|
<p>{{'grant-request-copy.intro' | translate}}</p>
|
||||||
|
|
||||||
<ds-email-request-copy [subject]="subject$ | async" [message]="message$ | async" (send)="grant($event)">
|
<ds-themed-email-request-copy [subject]="subject$ | async" [message]="message$ | async" (send)="grant($event)">
|
||||||
<p>{{ 'grant-deny-request-copy.email.permissions.info' | translate }}</p>
|
<p>{{ 'grant-deny-request-copy.email.permissions.info' | translate }}</p>
|
||||||
<form class="mb-3">
|
<form class="mb-3">
|
||||||
<div class="form-check">
|
<div class="form-check">
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
<label class="form-check-label" for="permissions">{{ 'grant-deny-request-copy.email.permissions.label' | translate }}</label>
|
<label class="form-check-label" for="permissions">{{ 'grant-deny-request-copy.email.permissions.label' | translate }}</label>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</ds-email-request-copy>
|
</ds-themed-email-request-copy>
|
||||||
</div>
|
</div>
|
||||||
<ds-themed-loading *ngIf="!itemRequestRD || itemRequestRD?.isLoading"></ds-themed-loading>
|
<ds-themed-loading *ngIf="!itemRequestRD || itemRequestRD?.isLoading"></ds-themed-loading>
|
||||||
</div>
|
</div>
|
||||||
|
@@ -0,0 +1,26 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from 'src/app/shared/theme-support/themed.component';
|
||||||
|
import { GrantRequestCopyComponent } from './grant-request-copy.component';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Themed wrapper for grant-request-copy.component
|
||||||
|
*/
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-grant-request-copy',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: './../../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
|
||||||
|
export class ThemedGrantRequestCopyComponent extends ThemedComponent<GrantRequestCopyComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'GrantRequestCopyComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../../themes/${themeName}/app/request-copy/grant-request-copy/grant-request-copy.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import('./grant-request-copy.component');
|
||||||
|
}
|
||||||
|
}
|
@@ -3,8 +3,8 @@ import { RouterModule } from '@angular/router';
|
|||||||
import { RequestCopyResolver } from './request-copy.resolver';
|
import { RequestCopyResolver } from './request-copy.resolver';
|
||||||
import { GrantDenyRequestCopyComponent } from './grant-deny-request-copy/grant-deny-request-copy.component';
|
import { GrantDenyRequestCopyComponent } from './grant-deny-request-copy/grant-deny-request-copy.component';
|
||||||
import { REQUEST_COPY_DENY_PATH, REQUEST_COPY_GRANT_PATH } from './request-copy-routing-paths';
|
import { REQUEST_COPY_DENY_PATH, REQUEST_COPY_GRANT_PATH } from './request-copy-routing-paths';
|
||||||
import { DenyRequestCopyComponent } from './deny-request-copy/deny-request-copy.component';
|
import { ThemedDenyRequestCopyComponent } from './deny-request-copy/themed-deny-request-copy.component';
|
||||||
import { GrantRequestCopyComponent } from './grant-request-copy/grant-request-copy.component';
|
import { ThemedGrantRequestCopyComponent } from './grant-request-copy/themed-grant-request-copy.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -21,11 +21,11 @@ import { GrantRequestCopyComponent } from './grant-request-copy/grant-request-co
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: REQUEST_COPY_DENY_PATH,
|
path: REQUEST_COPY_DENY_PATH,
|
||||||
component: DenyRequestCopyComponent,
|
component: ThemedDenyRequestCopyComponent,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: REQUEST_COPY_GRANT_PATH,
|
path: REQUEST_COPY_GRANT_PATH,
|
||||||
component: GrantRequestCopyComponent,
|
component: ThemedGrantRequestCopyComponent,
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@@ -4,8 +4,11 @@ import { SharedModule } from '../shared/shared.module';
|
|||||||
import { GrantDenyRequestCopyComponent } from './grant-deny-request-copy/grant-deny-request-copy.component';
|
import { GrantDenyRequestCopyComponent } from './grant-deny-request-copy/grant-deny-request-copy.component';
|
||||||
import { RequestCopyRoutingModule } from './request-copy-routing.module';
|
import { RequestCopyRoutingModule } from './request-copy-routing.module';
|
||||||
import { DenyRequestCopyComponent } from './deny-request-copy/deny-request-copy.component';
|
import { DenyRequestCopyComponent } from './deny-request-copy/deny-request-copy.component';
|
||||||
|
import { ThemedDenyRequestCopyComponent } from './deny-request-copy/themed-deny-request-copy.component';
|
||||||
import { EmailRequestCopyComponent } from './email-request-copy/email-request-copy.component';
|
import { EmailRequestCopyComponent } from './email-request-copy/email-request-copy.component';
|
||||||
|
import { ThemedEmailRequestCopyComponent } from './email-request-copy/themed-email-request-copy.component';
|
||||||
import { GrantRequestCopyComponent } from './grant-request-copy/grant-request-copy.component';
|
import { GrantRequestCopyComponent } from './grant-request-copy/grant-request-copy.component';
|
||||||
|
import { ThemedGrantRequestCopyComponent } from './grant-request-copy/themed-grant-request-copy.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -16,8 +19,14 @@ import { GrantRequestCopyComponent } from './grant-request-copy/grant-request-co
|
|||||||
declarations: [
|
declarations: [
|
||||||
GrantDenyRequestCopyComponent,
|
GrantDenyRequestCopyComponent,
|
||||||
DenyRequestCopyComponent,
|
DenyRequestCopyComponent,
|
||||||
|
ThemedDenyRequestCopyComponent,
|
||||||
EmailRequestCopyComponent,
|
EmailRequestCopyComponent,
|
||||||
|
ThemedEmailRequestCopyComponent,
|
||||||
GrantRequestCopyComponent,
|
GrantRequestCopyComponent,
|
||||||
|
ThemedGrantRequestCopyComponent,
|
||||||
|
],
|
||||||
|
exports: [
|
||||||
|
ThemedEmailRequestCopyComponent,
|
||||||
],
|
],
|
||||||
providers: []
|
providers: []
|
||||||
})
|
})
|
||||||
|
@@ -0,0 +1 @@
|
|||||||
|
|
@@ -0,0 +1,15 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import {
|
||||||
|
DenyRequestCopyComponent as BaseComponent
|
||||||
|
} from 'src/app/request-copy/deny-request-copy/deny-request-copy.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-deny-request-copy',
|
||||||
|
// styleUrls: ['./deny-request-copy.component.scss'],
|
||||||
|
styleUrls: [],
|
||||||
|
// templateUrl: './deny-request-copy.component.html',
|
||||||
|
templateUrl: './../../../../../app/request-copy/deny-request-copy/deny-request-copy.component.html',
|
||||||
|
})
|
||||||
|
export class DenyRequestCopyComponent
|
||||||
|
extends BaseComponent {
|
||||||
|
}
|
@@ -0,0 +1,15 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import {
|
||||||
|
EmailRequestCopyComponent as BaseComponent
|
||||||
|
} from 'src/app/request-copy/email-request-copy/email-request-copy.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-email-request-copy',
|
||||||
|
// styleUrls: ['./email-request-copy.component.scss'],
|
||||||
|
styleUrls: [],
|
||||||
|
// templateUrl: './email-request-copy.component.html',
|
||||||
|
templateUrl: './../../../../../app/request-copy/email-request-copy/email-request-copy.component.html',
|
||||||
|
})
|
||||||
|
export class EmailRequestCopyComponent
|
||||||
|
extends BaseComponent {
|
||||||
|
}
|
@@ -0,0 +1,15 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import {
|
||||||
|
GrantRequestCopyComponent as BaseComponent
|
||||||
|
} from 'src/app/request-copy/grant-request-copy/grant-request-copy.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-grant-request-copy',
|
||||||
|
// styleUrls: ['./grant-request-copy.component.scss'],
|
||||||
|
styleUrls: [],
|
||||||
|
// templateUrl: './grant-request-copy.component.html',
|
||||||
|
templateUrl: './../../../../../app/request-copy/grant-request-copy/grant-request-copy.component.html',
|
||||||
|
})
|
||||||
|
export class GrantRequestCopyComponent
|
||||||
|
extends BaseComponent {
|
||||||
|
}
|
@@ -140,12 +140,22 @@ import {
|
|||||||
MediaViewerVideoComponent
|
MediaViewerVideoComponent
|
||||||
} from './app/item-page/media-viewer/media-viewer-video/media-viewer-video.component';
|
} from './app/item-page/media-viewer/media-viewer-video/media-viewer-video.component';
|
||||||
import { NgxGalleryModule } from '@kolkov/ngx-gallery';
|
import { NgxGalleryModule } from '@kolkov/ngx-gallery';
|
||||||
|
import {
|
||||||
|
DenyRequestCopyComponent
|
||||||
|
} from './app/request-copy/deny-request-copy/deny-request-copy.component';
|
||||||
|
import {
|
||||||
|
EmailRequestCopyComponent
|
||||||
|
} from './app/request-copy/email-request-copy/email-request-copy.component';
|
||||||
|
import {
|
||||||
|
GrantRequestCopyComponent
|
||||||
|
} from './app/request-copy/grant-request-copy/grant-request-copy.component';
|
||||||
import { WorkspaceItemsDeletePageComponent } from './app/workspace-items-delete-page/workspace-items-delete/workspace-items-delete.component';
|
import { WorkspaceItemsDeletePageComponent } from './app/workspace-items-delete-page/workspace-items-delete/workspace-items-delete.component';
|
||||||
import { ThumbnailComponent } from './app/thumbnail/thumbnail.component';
|
import { ThumbnailComponent } from './app/thumbnail/thumbnail.component';
|
||||||
import { SubmissionSectionUploadFileComponent } from './app/submission/sections/upload/file/section-upload-file.component';
|
import { SubmissionSectionUploadFileComponent } from './app/submission/sections/upload/file/section-upload-file.component';
|
||||||
import { ItemStatusComponent } from './app/item-page/edit-item-page/item-status/item-status.component';
|
import { ItemStatusComponent } from './app/item-page/edit-item-page/item-status/item-status.component';
|
||||||
import { EditBitstreamPageComponent } from './app/bitstream-page/edit-bitstream-page/edit-bitstream-page.component';
|
import { EditBitstreamPageComponent } from './app/bitstream-page/edit-bitstream-page/edit-bitstream-page.component';
|
||||||
import { FormModule } from '../../app/shared/form/form.module';
|
import { FormModule } from '../../app/shared/form/form.module';
|
||||||
|
import { RequestCopyModule } from 'src/app/request-copy/request-copy.module';
|
||||||
|
|
||||||
const DECLARATIONS = [
|
const DECLARATIONS = [
|
||||||
FileSectionComponent,
|
FileSectionComponent,
|
||||||
@@ -221,6 +231,9 @@ const DECLARATIONS = [
|
|||||||
MediaViewerComponent,
|
MediaViewerComponent,
|
||||||
MediaViewerImageComponent,
|
MediaViewerImageComponent,
|
||||||
MediaViewerVideoComponent,
|
MediaViewerVideoComponent,
|
||||||
|
DenyRequestCopyComponent,
|
||||||
|
EmailRequestCopyComponent,
|
||||||
|
GrantRequestCopyComponent,
|
||||||
WorkspaceItemsDeletePageComponent,
|
WorkspaceItemsDeletePageComponent,
|
||||||
ThumbnailComponent,
|
ThumbnailComponent,
|
||||||
SubmissionSectionUploadFileComponent,
|
SubmissionSectionUploadFileComponent,
|
||||||
@@ -285,6 +298,7 @@ const DECLARATIONS = [
|
|||||||
SystemWideAlertModule,
|
SystemWideAlertModule,
|
||||||
NgxGalleryModule,
|
NgxGalleryModule,
|
||||||
FormModule,
|
FormModule,
|
||||||
|
RequestCopyModule,
|
||||||
],
|
],
|
||||||
declarations: DECLARATIONS,
|
declarations: DECLARATIONS,
|
||||||
exports: [
|
exports: [
|
||||||
|
Reference in New Issue
Block a user