mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 10:04:11 +00:00
Merge branch 'bootstrap-issues_contribute-9.0' into bootstrap-issues_contribute-main
This commit is contained in:
@@ -84,7 +84,7 @@ describe('My DSpace page', () => {
|
|||||||
cy.url().should('include', '/mydspace');
|
cy.url().should('include', '/mydspace');
|
||||||
|
|
||||||
// Close any open notifications, to make sure they don't get in the way of next steps
|
// Close any open notifications, to make sure they don't get in the way of next steps
|
||||||
cy.get('[data-dismiss="alert"]').click({ multiple: true });
|
cy.get('[data-bs-dismiss="alert"]').click({ multiple: true });
|
||||||
|
|
||||||
// This is the GET command that will actually run the search
|
// This is the GET command that will actually run the search
|
||||||
cy.intercept('GET', '/server/api/discover/search/objects*').as('search-results');
|
cy.intercept('GET', '/server/api/discover/search/objects*').as('search-results');
|
||||||
|
@@ -95,7 +95,7 @@ describe('New Submission page', () => {
|
|||||||
// A success alert should be visible
|
// A success alert should be visible
|
||||||
cy.get('ds-notification div.alert-success').should('be.visible');
|
cy.get('ds-notification div.alert-success').should('be.visible');
|
||||||
// Now, dismiss any open alert boxes (may be multiple, as tests run quickly)
|
// Now, dismiss any open alert boxes (may be multiple, as tests run quickly)
|
||||||
cy.get('[data-dismiss="alert"]').click({ multiple: true });
|
cy.get('[data-bs-dismiss="alert"]').click({ multiple: true });
|
||||||
|
|
||||||
// This is the GET command that will actually run the search
|
// This is the GET command that will actually run the search
|
||||||
cy.intercept('GET', '/server/api/discover/search/objects*').as('search-results');
|
cy.intercept('GET', '/server/api/discover/search/objects*').as('search-results');
|
||||||
|
@@ -83,7 +83,7 @@
|
|||||||
|
|
||||||
<form [formGroup]="searchForm" (ngSubmit)="search(searchForm.value)" class="d-flex justify-content-between">
|
<form [formGroup]="searchForm" (ngSubmit)="search(searchForm.value)" class="d-flex justify-content-between">
|
||||||
<div class="flex-grow-1 me-3">
|
<div class="flex-grow-1 me-3">
|
||||||
<div class="form-group input-group me-3">
|
<div class="mb-3 input-group me-3">
|
||||||
<input type="text" name="query" id="query" formControlName="query"
|
<input type="text" name="query" id="query" formControlName="query"
|
||||||
class="form-control" aria-label="Search input">
|
class="form-control" aria-label="Search input">
|
||||||
<span class="input-group-append">
|
<span class="input-group-append">
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
<!-- In the toggle section -->
|
<!-- In the toggle section -->
|
||||||
@if (!isNewService) {
|
@if (!isNewService) {
|
||||||
<div class="toggle-switch-container">
|
<div class="toggle-switch-container">
|
||||||
<label class="status-label font-weight-bold" for="enabled">{{ 'ldn-service-status' | translate }}</label>
|
<label class="status-label fw-bold" for="enabled">{{ 'ldn-service-status' | translate }}</label>
|
||||||
<div>
|
<div>
|
||||||
<input formControlName="enabled" hidden id="enabled" name="enabled" type="checkbox">
|
<input formControlName="enabled" hidden id="enabled" name="enabled" type="checkbox">
|
||||||
<div (click)="toggleEnabled()" [class.checked]="formModel.get('enabled').value" class="toggle-switch">
|
<div (click)="toggleEnabled()" [class.checked]="formModel.get('enabled').value" class="toggle-switch">
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
}
|
}
|
||||||
<!-- In the Name section -->
|
<!-- In the Name section -->
|
||||||
<div class="mb-5">
|
<div class="mb-5">
|
||||||
<label for="name" class="font-weight-bold">{{ 'ldn-new-service.form.label.name' | translate }}</label>
|
<label for="name" class="fw-bold">{{ 'ldn-new-service.form.label.name' | translate }}</label>
|
||||||
<input [class.invalid-field]="formModel.get('name').invalid && formModel.get('name').touched"
|
<input [class.invalid-field]="formModel.get('name').invalid && formModel.get('name').touched"
|
||||||
[placeholder]="'ldn-new-service.form.placeholder.name' | translate" class="form-control"
|
[placeholder]="'ldn-new-service.form.placeholder.name' | translate" class="form-control"
|
||||||
formControlName="name"
|
formControlName="name"
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
|
|
||||||
<!-- In the description section -->
|
<!-- In the description section -->
|
||||||
<div class="mb-5 mt-5 d-flex flex-column">
|
<div class="mb-5 mt-5 d-flex flex-column">
|
||||||
<label for="description" class="font-weight-bold">{{ 'ldn-new-service.form.label.description' | translate }}</label>
|
<label for="description" class="fw-bold">{{ 'ldn-new-service.form.label.description' | translate }}</label>
|
||||||
<textarea [placeholder]="'ldn-new-service.form.placeholder.description' | translate"
|
<textarea [placeholder]="'ldn-new-service.form.placeholder.description' | translate"
|
||||||
class="form-control" formControlName="description" id="description" name="description"></textarea>
|
class="form-control" formControlName="description" id="description" name="description"></textarea>
|
||||||
</div>
|
</div>
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
<!-- In the url section -->
|
<!-- In the url section -->
|
||||||
<div class="d-flex align-items-center">
|
<div class="d-flex align-items-center">
|
||||||
<div class="d-flex flex-column w-50 me-2">
|
<div class="d-flex flex-column w-50 me-2">
|
||||||
<label for="url" class="font-weight-bold">{{ 'ldn-new-service.form.label.url' | translate }}</label>
|
<label for="url" class="fw-bold">{{ 'ldn-new-service.form.label.url' | translate }}</label>
|
||||||
<input [class.invalid-field]="formModel.get('url').invalid && formModel.get('url').touched"
|
<input [class.invalid-field]="formModel.get('url').invalid && formModel.get('url').touched"
|
||||||
[placeholder]="'ldn-new-service.form.placeholder.url' | translate" class="form-control"
|
[placeholder]="'ldn-new-service.form.placeholder.url' | translate" class="form-control"
|
||||||
formControlName="url"
|
formControlName="url"
|
||||||
@@ -57,7 +57,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="d-flex flex-column w-50">
|
<div class="d-flex flex-column w-50">
|
||||||
<label for="score" class="font-weight-bold">{{ 'ldn-new-service.form.label.score' | translate }}</label>
|
<label for="score" class="fw-bold">{{ 'ldn-new-service.form.label.score' | translate }}</label>
|
||||||
<input [class.invalid-field]="formModel.get('score').invalid && formModel.get('score').touched"
|
<input [class.invalid-field]="formModel.get('score').invalid && formModel.get('score').touched"
|
||||||
[placeholder]="'ldn-new-service.form.placeholder.score' | translate" formControlName="score"
|
[placeholder]="'ldn-new-service.form.placeholder.score' | translate" formControlName="score"
|
||||||
id="score"
|
id="score"
|
||||||
@@ -78,7 +78,7 @@
|
|||||||
|
|
||||||
<!-- In the IP range section -->
|
<!-- In the IP range section -->
|
||||||
<div class="mb-5 mt-5">
|
<div class="mb-5 mt-5">
|
||||||
<label for="lowerIp" class="font-weight-bold">{{ 'ldn-new-service.form.label.ip-range' | translate }}</label>
|
<label for="lowerIp" class="fw-bold">{{ 'ldn-new-service.form.label.ip-range' | translate }}</label>
|
||||||
<div class="d-flex">
|
<div class="d-flex">
|
||||||
<input [class.invalid-field]="formModel.get('lowerIp').invalid && formModel.get('lowerIp').touched"
|
<input [class.invalid-field]="formModel.get('lowerIp').invalid && formModel.get('lowerIp').touched"
|
||||||
[placeholder]="'ldn-new-service.form.placeholder.lowerIp' | translate" class="form-control me-2"
|
[placeholder]="'ldn-new-service.form.placeholder.lowerIp' | translate" class="form-control me-2"
|
||||||
@@ -105,7 +105,7 @@
|
|||||||
|
|
||||||
<!-- In the ldnUrl section -->
|
<!-- In the ldnUrl section -->
|
||||||
<div class="mb-5 mt-5">
|
<div class="mb-5 mt-5">
|
||||||
<label for="ldnUrl" class="font-weight-bold">{{ 'ldn-new-service.form.label.ldnUrl' | translate }}</label>
|
<label for="ldnUrl" class="fw-bold">{{ 'ldn-new-service.form.label.ldnUrl' | translate }}</label>
|
||||||
<input [class.invalid-field]="formModel.get('ldnUrl').invalid && formModel.get('ldnUrl').touched"
|
<input [class.invalid-field]="formModel.get('ldnUrl').invalid && formModel.get('ldnUrl').touched"
|
||||||
[placeholder]="'ldn-new-service.form.placeholder.ldnUrl' | translate" class="form-control"
|
[placeholder]="'ldn-new-service.form.placeholder.ldnUrl' | translate" class="form-control"
|
||||||
formControlName="ldnUrl"
|
formControlName="ldnUrl"
|
||||||
@@ -130,7 +130,7 @@
|
|||||||
|
|
||||||
<!-- In the usesActorEmailId section -->
|
<!-- In the usesActorEmailId section -->
|
||||||
<div class="mb-5 mt-5">
|
<div class="mb-5 mt-5">
|
||||||
<label class="status-label font-weight-bold" for="usesActorEmailId">{{ 'ldn-service-usesActorEmailId' | translate }}</label>
|
<label class="status-label fw-bold" for="usesActorEmailId">{{ 'ldn-service-usesActorEmailId' | translate }}</label>
|
||||||
<div>
|
<div>
|
||||||
<input formControlName="usesActorEmailId" hidden id="usesActorEmailId"
|
<input formControlName="usesActorEmailId" hidden id="usesActorEmailId"
|
||||||
name="usesActorEmailId" type="checkbox">
|
name="usesActorEmailId" type="checkbox">
|
||||||
@@ -149,14 +149,14 @@
|
|||||||
@if (areControlsInitialized) {
|
@if (areControlsInitialized) {
|
||||||
<div class="row mb-1 mt-5">
|
<div class="row mb-1 mt-5">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<label class="font-weight-bold">{{ 'ldn-new-service.form.label.inboundPattern' | translate }} </label>
|
<label class="fw-bold">{{ 'ldn-new-service.form.label.inboundPattern' | translate }} </label>
|
||||||
</div>
|
</div>
|
||||||
@if (formModel.get('notifyServiceInboundPatterns')['controls'][0]?.value?.pattern) {
|
@if (formModel.get('notifyServiceInboundPatterns')['controls'][0]?.value?.pattern) {
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<label class="font-weight-bold">{{ 'ldn-new-service.form.label.ItemFilter' | translate }}</label>
|
<label class="fw-bold">{{ 'ldn-new-service.form.label.ItemFilter' | translate }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-1">
|
<div class="col-sm-1">
|
||||||
<label class="font-weight-bold">{{ 'ldn-new-service.form.label.automatic' | translate }}</label>
|
<label class="fw-bold">{{ 'ldn-new-service.form.label.automatic' | translate }}</label>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
@@ -295,8 +295,8 @@
|
|||||||
<span (click)="addInboundPattern()"
|
<span (click)="addInboundPattern()"
|
||||||
class="add-pattern-link mb-2">{{ 'ldn-new-service.form.label.addPattern' | translate }}</span>
|
class="add-pattern-link mb-2">{{ 'ldn-new-service.form.label.addPattern' | translate }}</span>
|
||||||
<hr>
|
<hr>
|
||||||
<div class="form-group row">
|
<div class="mb-3 row">
|
||||||
<div class="col text-right space-children-mr">
|
<div class="col text-end space-children-mr">
|
||||||
<ng-content select="[before]"></ng-content>
|
<ng-content select="[before]"></ng-content>
|
||||||
<button (click)="resetFormAndLeave()" class="btn btn-outline-secondary" type="button">
|
<button (click)="resetFormAndLeave()" class="btn btn-outline-secondary" type="button">
|
||||||
<span> {{ 'submission.general.back.submit' | translate }}</span>
|
<span> {{ 'submission.general.back.submit' | translate }}</span>
|
||||||
@@ -317,9 +317,7 @@
|
|||||||
@if (isNewService) {
|
@if (isNewService) {
|
||||||
<h4>{{'service.overview.create.modal' | translate }}</h4>
|
<h4>{{'service.overview.create.modal' | translate }}</h4>
|
||||||
}
|
}
|
||||||
<button (click)="closeModal()" aria-label="Close"
|
<button (click)="closeModal()" aria-label="Close" class="btn-close" type="button">
|
||||||
class="close" type="button">
|
|
||||||
<span aria-hidden="true">×</span>
|
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@@ -77,8 +77,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<button (click)="closeModal()" aria-label="Close"
|
<button (click)="closeModal()" aria-label="Close"
|
||||||
[attr.aria-label]="'ldn-service-overview-close-modal' | translate"
|
[attr.aria-label]="'ldn-service-overview-close-modal' | translate"
|
||||||
class="close" type="button">
|
class="btn-close" type="button">
|
||||||
<span aria-hidden="true">×</span>
|
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -86,7 +85,7 @@
|
|||||||
<div>
|
<div>
|
||||||
{{ 'service.overview.delete.body' | translate }}
|
{{ 'service.overview.delete.body' | translate }}
|
||||||
</div>
|
</div>
|
||||||
<div class="mt-4 text-right">
|
<div class="mt-4 text-end">
|
||||||
<button (click)="closeModal()"
|
<button (click)="closeModal()"
|
||||||
[attr.aria-label]="'ldn-service-overview-close-modal' | translate"
|
[attr.aria-label]="'ldn-service-overview-close-modal' | translate"
|
||||||
class="btn btn-outline-secondary me-2">{{ 'service.detail.delete.cancel' | translate }}</button>
|
class="btn btn-outline-secondary me-2">{{ 'service.detail.delete.cancel' | translate }}</button>
|
||||||
|
@@ -1,15 +1,14 @@
|
|||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
<h4 class="modal-title">{{'notify-message-modal.title' | translate}}</h4>
|
<h4 class="modal-title">{{'notify-message-modal.title' | translate}}</h4>
|
||||||
<button type="button" class="close" aria-label="Close" (click)="activeModal.dismiss('Cross click')">
|
<button type="button" class="btn-close" aria-label="Close" (click)="activeModal.dismiss('Cross click')">
|
||||||
<span aria-hidden="true">×</span>
|
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-body p-4">
|
<div class="modal-body p-4">
|
||||||
@for (key of notifyMessageKeys; track key) {
|
@for (key of notifyMessageKeys; track key) {
|
||||||
<div>
|
<div>
|
||||||
<div class="row mb-4">
|
<div class="row mb-4">
|
||||||
<div class="font-weight-bold col">{{ key + '.notify-detail-modal' | translate}}</div>
|
<div class="fw-bold col">{{ key + '.notify-detail-modal' | translate}}</div>
|
||||||
<div class="col text-right">{{'notify-detail-modal.' + notifyMessage[key] | translate: {default: notifyMessage[key] ?? "n/a" } }}</div>
|
<div class="col text-end">{{'notify-detail-modal.' + notifyMessage[key] | translate: {default: notifyMessage[key] ?? "n/a" } }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
<div class="container my-4">
|
<div class="container my-4">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-12 col-md-3 text-left h4">{{((isInbound$ | async) ? 'admin.notify.dashboard.inbound' : 'admin.notify.dashboard.outbound') | translate}}</div>
|
<div class="col-12 col-md-3 text-start h4">{{((isInbound$ | async) ? 'admin.notify.dashboard.inbound' : 'admin.notify.dashboard.outbound') | translate}}</div>
|
||||||
<div class="col-md-9">
|
<div class="col-md-9">
|
||||||
<div class="h4">
|
<div class="h4">
|
||||||
@if ((selectedSearchConfig$ | async) !== defaultConfiguration) {
|
@if ((selectedSearchConfig$ | async) !== defaultConfiguration) {
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
<ds-loading></ds-loading>
|
<ds-loading></ds-loading>
|
||||||
}
|
}
|
||||||
@if ((loadingCollections$ | async) !== true) {
|
@if ((loadingCollections$ | async) !== true) {
|
||||||
<select id="collSel" name="collSel" class="form-control" multiple="multiple" size="10" formControlName="collections">
|
<select id="collSel" name="collSel" class="form-select" multiple="multiple" size="10" formControlName="collections">
|
||||||
@for (item of collections; track item) {
|
@for (item of collections; track item) {
|
||||||
<option [value]="item.id" [disabled]="item.disabled">{{item.name$ | async}}</option>
|
<option [value]="item.id" [disabled]="item.disabled">{{item.name$ | async}}</option>
|
||||||
}
|
}
|
||||||
@@ -32,11 +32,11 @@
|
|||||||
{{'admin.reports.items.section.metadataFieldQueries' | translate}}
|
{{'admin.reports.items.section.metadataFieldQueries' | translate}}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template ngbPanelContent>
|
<ng-template ngbPanelContent>
|
||||||
<fieldset id="predefqueries" class="form-group">
|
<fieldset id="predefqueries" class="mb-3">
|
||||||
<label>
|
<label>
|
||||||
{{'admin.reports.items.predefinedQueries' | translate}}
|
{{'admin.reports.items.predefinedQueries' | translate}}
|
||||||
</label>
|
</label>
|
||||||
<select id="predefselect" formControlName="presetQuery" class="form-control" (change)="setPresetQuery()">
|
<select id="predefselect" formControlName="presetQuery" class="form-select" (change)="setPresetQuery()">
|
||||||
@for (item of presetQueries; track item.id) {
|
@for (item of presetQueries; track item.id) {
|
||||||
<option [value]="item.id" [selected]="item.isDefault">{{item.label | translate}}</option>
|
<option [value]="item.id" [selected]="item.isDefault">{{item.label | translate}}</option>
|
||||||
}
|
}
|
||||||
@@ -46,17 +46,17 @@
|
|||||||
<div id="queries">
|
<div id="queries">
|
||||||
@for (pred of queryPredicatesArray().controls; track pred; let i = $index) {
|
@for (pred of queryPredicatesArray().controls; track pred; let i = $index) {
|
||||||
<div class="metadata">
|
<div class="metadata">
|
||||||
<div [formGroup]="pred" class="form-group">
|
<div [formGroup]="pred" class="mb-3">
|
||||||
<div class="form-row">
|
<div class="row">
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<select class="query-tool" formControlName="field" class="form-control">
|
<select class="query-tool" formControlName="field" class="form-select">
|
||||||
@for (item of metadataFieldsWithAny; track item) {
|
@for (item of metadataFieldsWithAny; track item) {
|
||||||
<option [value]="item.id">{{item.name$ | async}}</option>
|
<option [value]="item.id">{{item.name$ | async}}</option>
|
||||||
}
|
}
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<select class="query-tool" formControlName="operator" class="form-control">
|
<select class="query-tool" formControlName="operator" class="form-select">
|
||||||
@for (item of predicates; track item) {
|
@for (item of predicates; track item) {
|
||||||
<option [value]="item.id">{{item.name$ | async | translate}}</option>
|
<option [value]="item.id">{{item.name$ | async | translate}}</option>
|
||||||
}
|
}
|
||||||
@@ -86,17 +86,17 @@
|
|||||||
{{'admin.reports.items.section.limitPaginateQueries' | translate}}
|
{{'admin.reports.items.section.limitPaginateQueries' | translate}}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template ngbPanelContent>
|
<ng-template ngbPanelContent>
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center mb-3">
|
||||||
<label for="limit" class="col-sm-2 col-form-label">{{'admin.reports.items.limit' | translate}}:</label>
|
<label for="limit" class="col-sm-2 col-form-label">{{'admin.reports.items.limit' | translate}}:</label>
|
||||||
<div class="col-6">
|
<div class="col-6">
|
||||||
<select id="limit" name="limit" formControlName="pageLimit" class="form-control col-6">
|
<select id="limit" name="limit" formControlName="pageLimit" class="form-select col-6">
|
||||||
@for (item of pageLimits; track item) {
|
@for (item of pageLimits; track item) {
|
||||||
<option value="{{item.id}}" [selected]="item.isDefault">{{item.name$ | async}}</option>
|
<option value="{{item.id}}" [selected]="item.isDefault">{{item.name$ | async}}</option>
|
||||||
}
|
}
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center mb-3">
|
||||||
<label for="offset" class="col-sm-2 col-form-label">{{'admin.reports.items.offset' | translate}}:</label>
|
<label for="offset" class="col-sm-2 col-form-label">{{'admin.reports.items.offset' | translate}}:</label>
|
||||||
<div class="col-6">
|
<div class="col-6">
|
||||||
<input id="offset" name="offset" value="0" class="form-control col-6">
|
<input id="offset" name="offset" value="0" class="form-control col-6">
|
||||||
@@ -104,7 +104,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<span class="col-3"></span>
|
<span class="col-3"></span>
|
||||||
<button class="btn btn-primary mt-1 col-6" (click)="submit()">{{'admin.reports.items.run' | translate}}</button>
|
<button class="btn btn-primary col-6" (click)="submit()">{{'admin.reports.items.run' | translate}}</button>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</ngb-panel>
|
</ngb-panel>
|
||||||
@@ -130,7 +130,7 @@
|
|||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template ngbPanelContent>
|
<ng-template ngbPanelContent>
|
||||||
<div id="show-fields">
|
<div id="show-fields">
|
||||||
<select class="query-tool" name="show_fields" multiple="multiple" size="8" class="form-control" formControlName="additionalFields">
|
<select class="query-tool" name="show_fields" multiple="multiple" size="8" class="form-select" formControlName="additionalFields">
|
||||||
@for (item of metadataFields; track item) {
|
@for (item of metadataFields; track item) {
|
||||||
<option [value]="item.id">{{item.name$ | async}}</option>
|
<option [value]="item.id">{{item.name$ | async}}</option>
|
||||||
}
|
}
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
import {
|
import {
|
||||||
AsyncPipe,
|
AsyncPipe,
|
||||||
isPlatformBrowser,
|
isPlatformBrowser,
|
||||||
NgIf,
|
|
||||||
} from '@angular/common';
|
} from '@angular/common';
|
||||||
import {
|
import {
|
||||||
ChangeDetectionStrategy,
|
ChangeDetectionStrategy,
|
||||||
@@ -45,7 +44,6 @@ import { PaginatedSearchOptions } from '../../shared/search/models/paginated-sea
|
|||||||
imports: [
|
imports: [
|
||||||
AsyncPipe,
|
AsyncPipe,
|
||||||
GeospatialMapComponent,
|
GeospatialMapComponent,
|
||||||
NgIf,
|
|
||||||
TranslateModule,
|
TranslateModule,
|
||||||
],
|
],
|
||||||
standalone: true,
|
standalone: true,
|
||||||
|
@@ -19,7 +19,7 @@
|
|||||||
[innerHTML]="mdRepresentation.getValue()"
|
[innerHTML]="mdRepresentation.getValue()"
|
||||||
[ngbTooltip]="mdRepresentation.allMetadata(['person.jobTitle']).length > 0 ? descTemplate : null"></a>
|
[ngbTooltip]="mdRepresentation.allMetadata(['person.jobTitle']).length > 0 ? descTemplate : null"></a>
|
||||||
@if (mdRepresentation.firstMetadata('person.identifier.orcid')) {
|
@if (mdRepresentation.firstMetadata('person.identifier.orcid')) {
|
||||||
<ds-orcid-badge-and-tooltip class="ml-1"
|
<ds-orcid-badge-and-tooltip class="ms-1"
|
||||||
[orcid]="mdRepresentation.firstMetadata('person.identifier.orcid')"
|
[orcid]="mdRepresentation.firstMetadata('person.identifier.orcid')"
|
||||||
[authenticatedTimestamp]="mdRepresentation.firstMetadata('dspace.orcid.authenticated')">
|
[authenticatedTimestamp]="mdRepresentation.firstMetadata('dspace.orcid.authenticated')">
|
||||||
</ds-orcid-badge-and-tooltip>
|
</ds-orcid-badge-and-tooltip>
|
||||||
|
@@ -3,8 +3,8 @@
|
|||||||
</h4>
|
</h4>
|
||||||
|
|
||||||
<form [formGroup]="emailForm" (ngSubmit)="submitForm()">
|
<form [formGroup]="emailForm" (ngSubmit)="submitForm()">
|
||||||
<div class="form-group">
|
<div class="mb-3">
|
||||||
<div class="form-row">
|
<div class="row">
|
||||||
<div class="col-12 my-2">
|
<div class="col-12 my-2">
|
||||||
<input
|
<input
|
||||||
type="email"
|
type="email"
|
||||||
@@ -26,7 +26,7 @@
|
|||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-row">
|
<div class="row">
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<button type="submit" class="btn btn-lg btn-primary w-100">
|
<button type="submit" class="btn btn-lg btn-primary w-100">
|
||||||
{{ "external-login.confirm.button.label" | translate }}
|
{{ "external-login.confirm.button.label" | translate }}
|
||||||
|
@@ -3,8 +3,8 @@
|
|||||||
</h4>
|
</h4>
|
||||||
|
|
||||||
<form [formGroup]="emailForm" (ngSubmit)="submitForm()">
|
<form [formGroup]="emailForm" (ngSubmit)="submitForm()">
|
||||||
<div class="form-group">
|
<div class="mb-3">
|
||||||
<div class="form-row">
|
<div class="row">
|
||||||
<div class="col-12 my-2">
|
<div class="col-12 my-2">
|
||||||
<input
|
<input
|
||||||
type="email"
|
type="email"
|
||||||
@@ -26,7 +26,7 @@
|
|||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-row">
|
<div class="row">
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<button type="submit" class="btn btn-lg btn-primary w-100">
|
<button type="submit" class="btn btn-lg btn-primary w-100">
|
||||||
{{ "external-login.provide-email.button.label" | translate }}
|
{{ "external-login.provide-email.button.label" | translate }}
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
<form class="form-login"
|
<form class="form-login"
|
||||||
[formGroup]="form" novalidate>
|
[formGroup]="form" novalidate>
|
||||||
<label class="font-weight-bold mb-0 text-uppercase">{{ registrationData.registrationType }}</label>
|
<label class="fw-bold mb-0 text-uppercase">{{ registrationData.registrationType }}</label>
|
||||||
<input [attr.aria-label]="'external-login-page.orcid-confirmation.netid.label' | translate"
|
<input [attr.aria-label]="'external-login-page.orcid-confirmation.netid.label' | translate"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
autofocus
|
autofocus
|
||||||
@@ -9,14 +9,14 @@
|
|||||||
[placeholder]="'external-login-page.orcid-confirmation.netid.placeholder' | translate"
|
[placeholder]="'external-login-page.orcid-confirmation.netid.placeholder' | translate"
|
||||||
type="text"
|
type="text"
|
||||||
[attr.data-test]="'netId' | dsBrowserOnly">
|
[attr.data-test]="'netId' | dsBrowserOnly">
|
||||||
<label class="font-weight-bold mb-0">{{"external-login-page.orcid-confirmation.lastname" | translate}}</label>
|
<label class="fw-bold mb-0">{{"external-login-page.orcid-confirmation.lastname" | translate}}</label>
|
||||||
<input [attr.aria-label]="'external-login-page.orcid-confirmation.lastname.label' | translate"
|
<input [attr.aria-label]="'external-login-page.orcid-confirmation.lastname.label' | translate"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
class="form-control form-control-lg position-relative mb-2"
|
class="form-control form-control-lg position-relative mb-2"
|
||||||
formControlName="lastname"
|
formControlName="lastname"
|
||||||
type="text"
|
type="text"
|
||||||
[attr.data-test]="'lastname' | dsBrowserOnly">
|
[attr.data-test]="'lastname' | dsBrowserOnly">
|
||||||
<label class="font-weight-bold mb-0">{{"external-login-page.orcid-confirmation.firstname" | translate}}</label>
|
<label class="fw-bold mb-0">{{"external-login-page.orcid-confirmation.firstname" | translate}}</label>
|
||||||
<input [attr.aria-label]="'external-login-page.orcid-confirmation.firstname.label' | translate"
|
<input [attr.aria-label]="'external-login-page.orcid-confirmation.firstname.label' | translate"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
class="form-control form-control-lg position-relative mb-2"
|
class="form-control form-control-lg position-relative mb-2"
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
type="text"
|
type="text"
|
||||||
[attr.data-test]="'firstname' | dsBrowserOnly">
|
[attr.data-test]="'firstname' | dsBrowserOnly">
|
||||||
@if (registrationData?.email) {
|
@if (registrationData?.email) {
|
||||||
<label class="font-weight-bold mb-0">{{"external-login-page.orcid-confirmation.email" | translate}}</label>
|
<label class="fw-bold mb-0">{{"external-login-page.orcid-confirmation.email" | translate}}</label>
|
||||||
<input [attr.aria-label]="'external-login-page.orcid-confirmation.email.label' | translate"
|
<input [attr.aria-label]="'external-login-page.orcid-confirmation.email.label' | translate"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
class="form-control form-control-lg position-relative"
|
class="form-control form-control-lg position-relative"
|
||||||
|
@@ -6,15 +6,15 @@
|
|||||||
<thead class="thead-light">
|
<thead class="thead-light">
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="col">
|
<th scope="col">
|
||||||
<span class="h5 font-weight-bold">{{ 'external-login-validation.review-account-info.table.header.information' | translate }}</span>
|
<span class="h5 fw-bold">{{ 'external-login-validation.review-account-info.table.header.information' | translate }}</span>
|
||||||
</th>
|
</th>
|
||||||
<th scope="col">
|
<th scope="col">
|
||||||
<span class="h5 font-weight-bold">{{'external-login-validation.review-account-info.table.header.received-value' | translate }}</span>
|
<span class="h5 fw-bold">{{'external-login-validation.review-account-info.table.header.received-value' | translate }}</span>
|
||||||
</th>
|
</th>
|
||||||
<th scope="col">
|
<th scope="col">
|
||||||
<span class="h5 font-weight-bold">{{'external-login-validation.review-account-info.table.header.current-value' | translate }}</span>
|
<span class="h5 fw-bold">{{'external-login-validation.review-account-info.table.header.current-value' | translate }}</span>
|
||||||
</th>
|
</th>
|
||||||
<th scope="col"><span class="h5 font-weight-bold">{{'external-login-validation.review-account-info.table.header.action' | translate }}</span></th>
|
<th scope="col"><span class="h5 fw-bold">{{'external-login-validation.review-account-info.table.header.action' | translate }}</span></th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
<div class="jumbotron py-4 px-2 py-sm-5 px-sm-0 mt-ncs mb-4">
|
<div class="home-news-content py-4 px-2 py-sm-5 px-sm-0 mt-ncs mb-4">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="d-flex flex-wrap">
|
<div class="d-flex flex-wrap">
|
||||||
<div>
|
<div>
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
word-break: break-word;
|
word-break: break-word;
|
||||||
}
|
}
|
||||||
|
|
||||||
.jumbotron {
|
.home-news-content {
|
||||||
background-color: var(--ds-home-news-background-color);
|
background-color: var(--ds-home-news-background-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
<h2>{{ 'info.accessibility-settings.title' | translate }}</h2>
|
<h2>{{ 'info.accessibility-settings.title' | translate }}</h2>
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<div class="form-group row">
|
<div class="mb-3 row">
|
||||||
<label [for]="'disableNotificationTimeOutInput'" class="col-sm-4 col-form-label">
|
<label [for]="'disableNotificationTimeOutInput'" class="col-sm-4 col-form-label">
|
||||||
{{ 'info.accessibility-settings.disableNotificationTimeOut.label' | translate }}
|
{{ 'info.accessibility-settings.disableNotificationTimeOut.label' | translate }}
|
||||||
</label>
|
</label>
|
||||||
@@ -23,7 +23,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="mb-3 row">
|
||||||
<label [for]="'notificationTimeOutInput'" class="col-sm-4 col-form-label">
|
<label [for]="'notificationTimeOutInput'" class="col-sm-4 col-form-label">
|
||||||
{{ 'info.accessibility-settings.notificationTimeOut.label' | translate }}
|
{{ 'info.accessibility-settings.notificationTimeOut.label' | translate }}
|
||||||
</label>
|
</label>
|
||||||
@@ -50,7 +50,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="mb-3 row">
|
||||||
<label [for]="'liveRegionTimeOutInput'" class="col-sm-4 col-form-label">
|
<label [for]="'liveRegionTimeOutInput'" class="col-sm-4 col-form-label">
|
||||||
{{ 'info.accessibility-settings.liveRegionTimeOut.label' | translate }}
|
{{ 'info.accessibility-settings.liveRegionTimeOut.label' | translate }}
|
||||||
</label>
|
</label>
|
||||||
@@ -77,7 +77,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div role="group">
|
<div role="group">
|
||||||
<button type="submit" (click)="saveSettings()" class="btn btn-primary mr-2">
|
<button type="submit" (click)="saveSettings()" class="btn btn-primary me-2">
|
||||||
{{ 'info.accessibility-settings.submit' | translate }}
|
{{ 'info.accessibility-settings.submit' | translate }}
|
||||||
</button>
|
</button>
|
||||||
<button (click)="resetSettings()" class="btn btn-warning">
|
<button (click)="resetSettings()" class="btn btn-warning">
|
||||||
|
@@ -1,7 +1,3 @@
|
|||||||
import {
|
|
||||||
AsyncPipe,
|
|
||||||
NgIf,
|
|
||||||
} from '@angular/common';
|
|
||||||
import {
|
import {
|
||||||
Component,
|
Component,
|
||||||
CUSTOM_ELEMENTS_SCHEMA,
|
CUSTOM_ELEMENTS_SCHEMA,
|
||||||
@@ -11,21 +7,14 @@ import {
|
|||||||
Output,
|
Output,
|
||||||
} from '@angular/core';
|
} from '@angular/core';
|
||||||
import { ReactiveFormsModule } from '@angular/forms';
|
import { ReactiveFormsModule } from '@angular/forms';
|
||||||
import { RouterLink } from '@angular/router';
|
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
|
|
||||||
import { VarDirective } from '../../../shared/utils/var.directive';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'ds-altcha-captcha',
|
selector: 'ds-altcha-captcha',
|
||||||
templateUrl: './altcha-captcha.component.html',
|
templateUrl: './altcha-captcha.component.html',
|
||||||
imports: [
|
imports: [
|
||||||
AsyncPipe,
|
|
||||||
NgIf,
|
|
||||||
ReactiveFormsModule,
|
ReactiveFormsModule,
|
||||||
RouterLink,
|
|
||||||
TranslateModule,
|
TranslateModule,
|
||||||
VarDirective,
|
|
||||||
],
|
],
|
||||||
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
||||||
standalone: true,
|
standalone: true,
|
||||||
|
@@ -58,13 +58,13 @@
|
|||||||
<div class="row mb-4">
|
<div class="row mb-4">
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div>{{'bitstream-request-a-copy.allfiles.label' |translate}}</div>
|
<div>{{'bitstream-request-a-copy.allfiles.label' |translate}}</div>
|
||||||
<div class="ms-4 form-check">
|
<div class="ms-2 form-check">
|
||||||
<input [className]="'form-check-input'" type="radio"
|
<input [className]="'form-check-input'" type="radio"
|
||||||
id="allfiles-true" formControlName="allfiles" value="true">
|
id="allfiles-true" formControlName="allfiles" value="true">
|
||||||
<label class="form-check-label"
|
<label class="form-check-label"
|
||||||
for="allfiles-true">{{'bitstream-request-a-copy.files-all-true.label' | translate}}</label>
|
for="allfiles-true">{{'bitstream-request-a-copy.files-all-true.label' | translate}}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="ms-4">
|
<div class="ms-2 form-check">
|
||||||
<input [className]="'form-check-input'" type="radio"
|
<input [className]="'form-check-input'" type="radio"
|
||||||
id="allfiles-false" formControlName="allfiles" value="false" [attr.disabled]="bitstream === undefined ? true : null ">
|
id="allfiles-false" formControlName="allfiles" value="false" [attr.disabled]="bitstream === undefined ? true : null ">
|
||||||
<label class="form-check-label"
|
<label class="form-check-label"
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
import {
|
import {
|
||||||
AsyncPipe,
|
AsyncPipe,
|
||||||
CommonModule,
|
NgClass,
|
||||||
} from '@angular/common';
|
} from '@angular/common';
|
||||||
import {
|
import {
|
||||||
ChangeDetectorRef,
|
ChangeDetectorRef,
|
||||||
@@ -72,8 +72,8 @@ import { ItemEditBitstreamBundleComponent } from './item-edit-bitstream-bundle/i
|
|||||||
AlertComponent,
|
AlertComponent,
|
||||||
AsyncPipe,
|
AsyncPipe,
|
||||||
BtnDisabledDirective,
|
BtnDisabledDirective,
|
||||||
CommonModule,
|
|
||||||
ItemEditBitstreamBundleComponent,
|
ItemEditBitstreamBundleComponent,
|
||||||
|
NgClass,
|
||||||
RouterLink,
|
RouterLink,
|
||||||
ThemedLoadingComponent,
|
ThemedLoadingComponent,
|
||||||
TranslateModule,
|
TranslateModule,
|
||||||
|
@@ -14,7 +14,7 @@
|
|||||||
<table class="table" [class.mt-n1]="!isFirstTable"
|
<table class="table" [class.mt-n1]="!isFirstTable"
|
||||||
[attr.aria-label]="'item.edit.bitstreams.bundle.table.aria-label' | translate: { bundle: bundleName } ">
|
[attr.aria-label]="'item.edit.bitstreams.bundle.table.aria-label' | translate: { bundle: bundleName } ">
|
||||||
<thead [class.visually-hidden]="!isFirstTable">
|
<thead [class.visually-hidden]="!isFirstTable">
|
||||||
<tr class="header-row font-weight-bold">
|
<tr class="header-row fw-bold">
|
||||||
<th id="name" scope="col" class="{{ columnSizes.columns[0].buildClasses() }}">
|
<th id="name" scope="col" class="{{ columnSizes.columns[0].buildClasses() }}">
|
||||||
{{'item.edit.bitstreams.headers.name' | translate}}
|
{{'item.edit.bitstreams.headers.name' | translate}}
|
||||||
</th>
|
</th>
|
||||||
@@ -31,10 +31,10 @@
|
|||||||
</thead>
|
</thead>
|
||||||
<tbody cdkDropList (cdkDropListDropped)="drop($event)">
|
<tbody cdkDropList (cdkDropListDropped)="drop($event)">
|
||||||
<tr class="bundle-row">
|
<tr class="bundle-row">
|
||||||
<th id="{{ bundleName }}" class="span" colspan="3" scope="colgroup">
|
<th id="{{ bundleName }}" class="row-element" colspan="3" scope="colgroup">
|
||||||
{{'item.edit.bitstreams.bundle.name' | translate:{ name: bundleName } }}
|
{{'item.edit.bitstreams.bundle.name' | translate:{ name: bundleName } }}
|
||||||
</th>
|
</th>
|
||||||
<td class="text-center">
|
<td class="text-center row-element">
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
<button [routerLink]="[itemPageRoute, 'bitstreams', 'new']"
|
<button [routerLink]="[itemPageRoute, 'bitstreams', 'new']"
|
||||||
[queryParams]="{bundle: bundle.id}"
|
[queryParams]="{bundle: bundle.id}"
|
||||||
@@ -43,9 +43,9 @@
|
|||||||
title="{{'item.edit.bitstreams.bundle.edit.buttons.upload' | translate}}">
|
title="{{'item.edit.bitstreams.bundle.edit.buttons.upload' | translate}}">
|
||||||
<i class="fas fa-upload fa-fw"></i>
|
<i class="fas fa-upload fa-fw"></i>
|
||||||
</button>
|
</button>
|
||||||
<div ngbDropdown #paginationControls="ngbDropdown" class="btn-group float-right btn-sm p-0"
|
<div ngbDropdown #paginationControls="ngbDropdown" class="btn-group float-end p-0"
|
||||||
placement="bottom-right">
|
container="body" placement="bottom-right">
|
||||||
<button class="btn btn-outline-secondary" id="paginationControls" ngbDropdownToggle
|
<button class="btn btn-outline-secondary btn-sm" id="paginationControls" ngbDropdownToggle
|
||||||
[title]="'pagination.options.description' | translate"
|
[title]="'pagination.options.description' | translate"
|
||||||
[attr.aria-label]="'pagination.options.description' | translate" aria-haspopup="true"
|
[attr.aria-label]="'pagination.options.description' | translate" aria-haspopup="true"
|
||||||
aria-expanded="false">
|
aria-expanded="false">
|
||||||
@@ -79,7 +79,7 @@
|
|||||||
(cdkDragStarted)="dragStart()" (cdkDragEnded)="dragEnd()">
|
(cdkDragStarted)="dragStart()" (cdkDragEnded)="dragEnd()">
|
||||||
<th class="bitstream-name row-element {{ columnSizes.columns[0].buildClasses() }}"
|
<th class="bitstream-name row-element {{ columnSizes.columns[0].buildClasses() }}"
|
||||||
scope="row" id="{{ entry.nameStripped }}" headers="{{ bundleName }} name">
|
scope="row" id="{{ entry.nameStripped }}" headers="{{ bundleName }} name">
|
||||||
<div class="drag-handle text-muted float-left p-1 mr-2 d-inline" tabindex="0" cdkDragHandle
|
<div class="drag-handle text-muted float-start p-1 me-2 d-inline" tabindex="0" cdkDragHandle
|
||||||
(keydown.enter)="select($event, entry)" (keydown.space)="select($event, entry)" (click)="select($event, entry)">
|
(keydown.enter)="select($event, entry)" (keydown.space)="select($event, entry)" (click)="select($event, entry)">
|
||||||
<i class="fas fa-grip-vertical fa-fw"
|
<i class="fas fa-grip-vertical fa-fw"
|
||||||
[title]="'item.edit.bitstreams.edit.buttons.drag' | translate"></i>
|
[title]="'item.edit.bitstreams.edit.buttons.drag' | translate"></i>
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
<div class="col-12 col-md-3 h-auto float-start d-flex action-label">
|
<div class="col-12 col-md-3 h-auto float-start d-flex action-label">
|
||||||
<span class="justify-content-center align-self-center font-weight-bold">
|
<span class="justify-content-center align-self-center fw-bold">
|
||||||
{{'item.edit.tabs.status.buttons.' + operation.operationKey + '.label' | translate}}
|
{{'item.edit.tabs.status.buttons.' + operation.operationKey + '.label' | translate}}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
@for (statusKey of statusDataKeys; track statusKey) {
|
@for (statusKey of statusDataKeys; track statusKey) {
|
||||||
<div class="w-100 pt-1">
|
<div class="w-100 pt-1">
|
||||||
<div class="col-12 col-md-3 float-start status-label font-weight-bold">
|
<div class="col-12 col-md-3 float-start status-label fw-bold">
|
||||||
{{'item.edit.tabs.status.labels.' + statusKey | translate}}:
|
{{'item.edit.tabs.status.labels.' + statusKey | translate}}:
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12 col-md-9 float-start status-data" id="status-{{statusKey}}">
|
<div class="col-12 col-md-9 float-start status-data" id="status-{{statusKey}}">
|
||||||
@@ -15,17 +15,17 @@
|
|||||||
<div class="w-100 pt-1">
|
<div class="w-100 pt-1">
|
||||||
@if ((identifier.identifierType==='doi')) {
|
@if ((identifier.identifierType==='doi')) {
|
||||||
<div>
|
<div>
|
||||||
<div class="col-12 col-md-3 float-start status-label font-weight-bold">
|
<div class="col-12 col-md-3 float-start status-label fw-bold">
|
||||||
{{identifier.identifierType.toLocaleUpperCase()}}
|
{{identifier.identifierType.toLocaleUpperCase()}}
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12 col-md-9 float-start status-label font-weight-bold">{{identifier.value}}
|
<div class="col-12 col-md-9 float-start status-label fw-bold">{{identifier.value}}
|
||||||
({{"item.edit.identifiers.doi.status."+identifier.identifierStatus|translate}})</div>
|
({{"item.edit.identifiers.doi.status."+identifier.identifierStatus|translate}})</div>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
|
|
||||||
<div class="col-12 col-md-3 float-start status-label font-weight-bold">
|
<div class="col-12 col-md-3 float-start status-label fw-bold">
|
||||||
{{'item.edit.tabs.status.labels.itemPage' | translate}}:
|
{{'item.edit.tabs.status.labels.itemPage' | translate}}:
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12 col-md-9 float-start status-data" id="status-itemPage">
|
<div class="col-12 col-md-9 float-start status-data" id="status-itemPage">
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
import {
|
import {
|
||||||
CommonModule,
|
AsyncPipe,
|
||||||
isPlatformBrowser,
|
isPlatformBrowser,
|
||||||
} from '@angular/common';
|
} from '@angular/common';
|
||||||
import {
|
import {
|
||||||
@@ -54,7 +54,7 @@ import { OrcidSyncSettingsComponent } from './orcid-sync-settings/orcid-sync-set
|
|||||||
styleUrls: ['./orcid-page.component.scss'],
|
styleUrls: ['./orcid-page.component.scss'],
|
||||||
imports: [
|
imports: [
|
||||||
AlertComponent,
|
AlertComponent,
|
||||||
CommonModule,
|
AsyncPipe,
|
||||||
OrcidAuthComponent,
|
OrcidAuthComponent,
|
||||||
OrcidQueueComponent,
|
OrcidQueueComponent,
|
||||||
OrcidSyncSettingsComponent,
|
OrcidSyncSettingsComponent,
|
||||||
|
@@ -1,10 +1,9 @@
|
|||||||
import { NgIf } from '@angular/common';
|
|
||||||
import {
|
import {
|
||||||
Component,
|
Component,
|
||||||
Input,
|
Input,
|
||||||
OnInit,
|
OnInit,
|
||||||
} from '@angular/core';
|
} from '@angular/core';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslatePipe } from '@ngx-translate/core';
|
||||||
|
|
||||||
import { Item } from '../../../../../core/shared/item.model';
|
import { Item } from '../../../../../core/shared/item.model';
|
||||||
import {
|
import {
|
||||||
@@ -21,8 +20,7 @@ import { ItemPageFieldComponent } from '../item-page-field.component';
|
|||||||
imports: [
|
imports: [
|
||||||
GeospatialMapComponent,
|
GeospatialMapComponent,
|
||||||
MetadataFieldWrapperComponent,
|
MetadataFieldWrapperComponent,
|
||||||
NgIf,
|
TranslatePipe,
|
||||||
TranslateModule,
|
|
||||||
],
|
],
|
||||||
standalone: true,
|
standalone: true,
|
||||||
})
|
})
|
||||||
|
@@ -301,7 +301,7 @@
|
|||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<p>{{'quality-assurance.event.accept.description' | translate}}</p>
|
<p>{{'quality-assurance.event.accept.description' | translate}}</p>
|
||||||
|
|
||||||
<button class="btn btn-outline-success float-right" (click)="modal.close('do')">
|
<button class="btn btn-outline-success float-end" (click)="modal.close('do')">
|
||||||
<i class="fas fa-check"></i>
|
<i class="fas fa-check"></i>
|
||||||
<span class="d-none d-sm-inline"> {{'quality-assurance.event.action.import' | translate}}</span>
|
<span class="d-none d-sm-inline"> {{'quality-assurance.event.action.import' | translate}}</span>
|
||||||
</button>
|
</button>
|
||||||
@@ -318,7 +318,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<p>{{'quality-assurance.event.ignore.description' | translate}}</p>
|
<p>{{'quality-assurance.event.ignore.description' | translate}}</p>
|
||||||
<button class="btn btn-outline-danger float-right" (click)="modal.close('do')">
|
<button class="btn btn-outline-danger float-end" (click)="modal.close('do')">
|
||||||
<i class="fas fa-trash-alt"></i>
|
<i class="fas fa-trash-alt"></i>
|
||||||
<span class="d-none d-sm-inline"> {{'quality-assurance.event.action.ignore' | translate}}</span>
|
<span class="d-none d-sm-inline"> {{'quality-assurance.event.action.ignore' | translate}}</span>
|
||||||
</button>
|
</button>
|
||||||
@@ -335,7 +335,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<p>{{'quality-assurance.event.reject.description' | translate}}</p>
|
<p>{{'quality-assurance.event.reject.description' | translate}}</p>
|
||||||
<button class="btn btn-outline-danger float-right" (click)="modal.close('do')">
|
<button class="btn btn-outline-danger float-end" (click)="modal.close('do')">
|
||||||
<i class="fas fa-trash-alt"></i>
|
<i class="fas fa-trash-alt"></i>
|
||||||
<span class="d-none d-sm-inline"> {{'quality-assurance.event.action.reject' | translate}}</span>
|
<span class="d-none d-sm-inline"> {{'quality-assurance.event.action.reject' | translate}}</span>
|
||||||
</button>
|
</button>
|
||||||
@@ -352,7 +352,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<p>{{'quality-assurance.event.undo.description' | translate}}</p>
|
<p>{{'quality-assurance.event.undo.description' | translate}}</p>
|
||||||
<button class="btn btn-outline-danger float-right" (click)="modal.close('do')">
|
<button class="btn btn-outline-danger float-end" (click)="modal.close('do')">
|
||||||
<i class="fas fa-trash-alt"></i>
|
<i class="fas fa-trash-alt"></i>
|
||||||
<span class="d-none d-sm-inline"> {{'quality-assurance.event.action.undo' | translate}}</span>
|
<span class="d-none d-sm-inline"> {{'quality-assurance.event.action.undo' | translate}}</span>
|
||||||
</button>
|
</button>
|
||||||
|
@@ -1,8 +1,7 @@
|
|||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
<h4 class="modal-title" id="modal-title">{{ (labelPrefix + label + '.title') | translate }}</h4>
|
<h4 class="modal-title" id="modal-title">{{ (labelPrefix + label + '.title') | translate }}</h4>
|
||||||
<button type="button" class="close" aria-label="Close button" aria-describedby="modal-title"
|
<button type="button" class="btn-close" aria-label="Close button" aria-describedby="modal-title"
|
||||||
(click)="close()">
|
(click)="close()">
|
||||||
<span aria-hidden="true">×</span>
|
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
|
@@ -2,14 +2,13 @@
|
|||||||
<div class="notifications-wrapper position-fixed top right">
|
<div class="notifications-wrapper position-fixed top right">
|
||||||
<div class="notification alert alert-success alert-dismissible m-3 shadow" role="alert">
|
<div class="notification alert alert-success alert-dismissible m-3 shadow" role="alert">
|
||||||
<button (click)="removePopup()"
|
<button (click)="removePopup()"
|
||||||
type="button" class="close pt-0 pe-1 pe-0 pb-0" data-dismiss="alert" aria-label="Close">
|
type="button" class="close pt-0 pe-1 pe-0 pb-0" data-bs-dismiss="alert" aria-label="Close">
|
||||||
<span aria-hidden="true">×</span>
|
|
||||||
</button>
|
</button>
|
||||||
<div class="d-flex flex-row">
|
<div class="d-flex flex-row">
|
||||||
<div class="d-flex flex-column justify-content-center align-items-center">
|
<div class="d-flex flex-column justify-content-center align-items-center">
|
||||||
<div class="notification-icon d-flex justify-content-center"><i class="fas fa-2x fa-check-circle"></i></div>
|
<div class="notification-icon d-flex justify-content-center"><i class="fas fa-2x fa-check-circle"></i></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="d-flex flex-column justify-content-center align-content-stretch text-left p-2">
|
<div class="d-flex flex-column justify-content-center align-content-stretch text-start p-2">
|
||||||
@if ((suggestionsRD$ | async); as suggestions) {
|
@if ((suggestionsRD$ | async); as suggestions) {
|
||||||
@for (suggestion of suggestions; track suggestion) {
|
@for (suggestion of suggestions; track suggestion) {
|
||||||
<ng-container class="alert alert-info">
|
<ng-container class="alert alert-info">
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
</span>
|
</span>
|
||||||
<span class="file-name ms-1">{{fileObject?.name}}</span>
|
<span class="file-name ms-1">{{fileObject?.name}}</span>
|
||||||
</label>
|
</label>
|
||||||
<input requireFile #file="ngModel" type="file" name="file-upload-{{index}}" id="file-upload-{{index}}" class="form-control-file d-none" [ngModel]="fileObject" (ngModelChange)="setFile($event)"/>
|
<input requireFile #file="ngModel" type="file" name="file-upload-{{index}}" id="file-upload-{{index}}" class="form-control d-none" [ngModel]="fileObject" (ngModelChange)="setFile($event)"/>
|
||||||
@if (file.invalid && (file.dirty || file.touched)) {
|
@if (file.invalid && (file.dirty || file.touched)) {
|
||||||
<div
|
<div
|
||||||
class="alert alert-danger validation-error">
|
class="alert alert-danger validation-error">
|
||||||
|
@@ -16,7 +16,7 @@
|
|||||||
<!-- Display access periods if more than one was bound to input. The parent component (grant-request-copy)
|
<!-- Display access periods if more than one was bound to input. The parent component (grant-request-copy)
|
||||||
sends an empty list if the feature is not enabled or applicable to this request. -->
|
sends an empty list if the feature is not enabled or applicable to this request. -->
|
||||||
@if (hasValue(validAccessPeriods$ | async) && (validAccessPeriods$ | async).length > 0) {
|
@if (hasValue(validAccessPeriods$ | async) && (validAccessPeriods$ | async).length > 0) {
|
||||||
<div class="form-group">
|
<div class="mb-3">
|
||||||
<label for="accessPeriod">{{ 'grant-request-copy.access-period.header' | translate }}</label>
|
<label for="accessPeriod">{{ 'grant-request-copy.access-period.header' | translate }}</label>
|
||||||
<div ngbDropdown class="d-block">
|
<div ngbDropdown class="d-block">
|
||||||
<!-- Show current selected access period (defaults to first in array) -->
|
<!-- Show current selected access period (defaults to first in array) -->
|
||||||
|
@@ -1,7 +1,4 @@
|
|||||||
import {
|
import { AsyncPipe } from '@angular/common';
|
||||||
AsyncPipe,
|
|
||||||
CommonModule,
|
|
||||||
} from '@angular/common';
|
|
||||||
import {
|
import {
|
||||||
Component,
|
Component,
|
||||||
OnInit,
|
OnInit,
|
||||||
@@ -49,7 +46,6 @@ import { ThemedEmailRequestCopyComponent } from '../email-request-copy/themed-em
|
|||||||
standalone: true,
|
standalone: true,
|
||||||
imports: [
|
imports: [
|
||||||
AsyncPipe,
|
AsyncPipe,
|
||||||
CommonModule,
|
|
||||||
FormsModule,
|
FormsModule,
|
||||||
RouterLink,
|
RouterLink,
|
||||||
ThemedEmailRequestCopyComponent,
|
ThemedEmailRequestCopyComponent,
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
<form [formGroup]="searchForm" (ngSubmit)="onSubmit(searchForm.value)" autocomplete="on" class="d-flex">
|
<form [formGroup]="searchForm" (ngSubmit)="onSubmit(searchForm.value)" autocomplete="on" class="d-flex">
|
||||||
<input #searchInput [@toggleAnimation]="isExpanded" [attr.aria-label]="('nav.search' | translate)" name="query"
|
<input #searchInput [@toggleAnimation]="isExpanded" [attr.aria-label]="('nav.search' | translate)" name="query"
|
||||||
formControlName="query" type="text" placeholder="{{searchExpanded ? ('nav.search' | translate) : ''}}"
|
formControlName="query" type="text" placeholder="{{searchExpanded ? ('nav.search' | translate) : ''}}"
|
||||||
class="d-inline-block bg-transparent position-absolute form-control dropdown-menu-right p1"
|
class="d-inline-block bg-transparent position-absolute form-control dropdown-menu-end p1"
|
||||||
[class.display]="searchExpanded ? 'inline-block' : 'none'"
|
[class.display]="searchExpanded ? 'inline-block' : 'none'"
|
||||||
[tabIndex]="searchExpanded ? 0 : -1"
|
[tabIndex]="searchExpanded ? 0 : -1"
|
||||||
[attr.data-test]="'header-search-box' | dsBrowserOnly">
|
[attr.data-test]="'header-search-box' | dsBrowserOnly">
|
||||||
|
@@ -5,7 +5,7 @@
|
|||||||
}
|
}
|
||||||
<ng-content></ng-content>
|
<ng-content></ng-content>
|
||||||
@if (dismissible) {
|
@if (dismissible) {
|
||||||
<button type="button" class="btn-close" data-dismiss="alert" aria-label="Close" (click)="dismiss()">
|
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close" (click)="dismiss()">
|
||||||
</button>
|
</button>
|
||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
|
@@ -3,22 +3,20 @@
|
|||||||
@if (this.canWithdraw) {
|
@if (this.canWithdraw) {
|
||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
{{ 'item.qa.withdrawn.modal.header' | translate }}
|
{{ 'item.qa.withdrawn.modal.header' | translate }}
|
||||||
<button type="button" class="close" (click)="onModalClose()" aria-label="Close">
|
<button type="button" class="btn-close" (click)="onModalClose()" aria-label="Close">
|
||||||
<span aria-hidden="true">×</span>
|
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
} @else {
|
} @else {
|
||||||
@if (!this.canWithdraw) {
|
@if (!this.canWithdraw) {
|
||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
{{'item.qa.reinstate.modal.header' | translate}}
|
{{'item.qa.reinstate.modal.header' | translate}}
|
||||||
<button type="button" class="close" (click)="onModalClose()" aria-label="Close">
|
<button type="button" class="btn-close" (click)="onModalClose()" aria-label="Close">
|
||||||
<span aria-hidden="true">×</span>
|
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<div class="form-group">
|
<div class="mb-3">
|
||||||
<label for="reason">{{ this.canWithdraw ? ('qa-withdrawn.create.modal.form.summary.label' | translate)
|
<label for="reason">{{ this.canWithdraw ? ('qa-withdrawn.create.modal.form.summary.label' | translate)
|
||||||
: ('qa-reinstate.create.modal.form.summary.label' | translate) }}</label>
|
: ('qa-reinstate.create.modal.form.summary.label' | translate) }}</label>
|
||||||
<label for="reason">{{ this.canWithdraw ? ('qa-withdrawn.create.modal.form.summary2.label' | translate)
|
<label for="reason">{{ this.canWithdraw ? ('qa-withdrawn.create.modal.form.summary2.label' | translate)
|
||||||
|
@@ -14,7 +14,7 @@
|
|||||||
<span role="img"
|
<span role="img"
|
||||||
[attr.aria-label]="'file-download-link.restricted' | translate"
|
[attr.aria-label]="'file-download-link.restricted' | translate"
|
||||||
[title]="'file-download-link.restricted' | translate"
|
[title]="'file-download-link.restricted' | translate"
|
||||||
class="pr-1">
|
class="pe-1">
|
||||||
<i class="fas fa-lock"></i>
|
<i class="fas fa-lock"></i>
|
||||||
</span>
|
</span>
|
||||||
} @else if ((canDownloadWithToken$ | async) && (canDownload$ | async) === false) {
|
} @else if ((canDownloadWithToken$ | async) && (canDownload$ | async) === false) {
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
<span role="img"
|
<span role="img"
|
||||||
[attr.aria-label]="'file-download-link.secure-access' | translate"
|
[attr.aria-label]="'file-download-link.secure-access' | translate"
|
||||||
[title]="'file-download-link.secure-access' | translate"
|
[title]="'file-download-link.secure-access' | translate"
|
||||||
class="pr-1 request-a-copy-access-icon">
|
class="pe-1 request-a-copy-access-icon">
|
||||||
<i class="fa-solid fa-lock-open"></i>
|
<i class="fa-solid fa-lock-open"></i>
|
||||||
</span>
|
</span>
|
||||||
} @else if (showIcon) {
|
} @else if (showIcon) {
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
<div [formGroup]="group" [ngClass]="getClass('element', 'container')" class="form-check custom-control form-switch" [class.disabled]="model.disabled">
|
<div [formGroup]="group" [ngClass]="getClass('element', 'container')" class="form-check custom-control form-switch" [class.disabled]="model.disabled">
|
||||||
<input type="checkbox" class="form-check-input custom-control-input"
|
<input type="checkbox" class="form-check-input form-check-input"
|
||||||
[checked]="model.checked"
|
[checked]="model.checked"
|
||||||
[class.is-invalid]="showErrorMessages"
|
[class.is-invalid]="showErrorMessages"
|
||||||
[id]="id"
|
[id]="id"
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
(blur)="onBlur($event)"
|
(blur)="onBlur($event)"
|
||||||
(change)="onChange($event)"
|
(change)="onChange($event)"
|
||||||
(focus)="onFocus($event)"/>
|
(focus)="onFocus($event)"/>
|
||||||
<label class="form-check-label custom-control-label" [for]="bindId && model.id">
|
<label class="form-check-label form-check-label" [for]="bindId && model.id">
|
||||||
<span [innerHTML]="model.label | translate"
|
<span [innerHTML]="model.label | translate"
|
||||||
[ngClass]="[getClass('element', 'label'), getClass('grid', 'label')]"></span>
|
[ngClass]="[getClass('element', 'label'), getClass('grid', 'label')]"></span>
|
||||||
</label>
|
</label>
|
||||||
|
@@ -1,16 +0,0 @@
|
|||||||
div.custom-switch {
|
|
||||||
&.custom-control-right {
|
|
||||||
margin-left: 0;
|
|
||||||
margin-right: 0;
|
|
||||||
|
|
||||||
&::after {
|
|
||||||
right: -1.5rem;
|
|
||||||
left: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
&::before {
|
|
||||||
right: -2.35rem;
|
|
||||||
left: auto;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
@@ -30,7 +30,7 @@
|
|||||||
<button id="resultdropdown" type="button"
|
<button id="resultdropdown" type="button"
|
||||||
ngbDropdownToggle
|
ngbDropdownToggle
|
||||||
class="btn btn-outline-secondary dropdown-toggle-split"
|
class="btn btn-outline-secondary dropdown-toggle-split"
|
||||||
data-toggle="dropdown" aria-haspopup="true"
|
data-bs-toggle="dropdown" aria-haspopup="true"
|
||||||
aria-expanded="false"
|
aria-expanded="false"
|
||||||
[hidden]="selectAllLoading">
|
[hidden]="selectAllLoading">
|
||||||
<span class="sr-only">{{ ('submission.sections.describe.relationship-lookup.toggle-dropdown' | translate) }}</span>
|
<span class="sr-only">{{ ('submission.sections.describe.relationship-lookup.toggle-dropdown' | translate) }}</span>
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
aria-haspopup="menu"
|
aria-haspopup="menu"
|
||||||
class="dropdown-toggle btn btn-link px-0"
|
class="dropdown-toggle btn btn-link px-0"
|
||||||
[title]="'nav.language' | translate"
|
[title]="'nav.language' | translate"
|
||||||
(click)="$event.preventDefault()" data-toggle="dropdown" ngbDropdownToggle
|
(click)="$event.preventDefault()" data-bs-toggle="dropdown" ngbDropdownToggle
|
||||||
data-test="lang-switch"
|
data-test="lang-switch"
|
||||||
tabindex="0">
|
tabindex="0">
|
||||||
<i class="fas fa-globe-asia fa-lg fa-fw"></i>
|
<i class="fas fa-globe-asia fa-lg fa-fw"></i>
|
||||||
|
@@ -7,8 +7,8 @@
|
|||||||
[title]="boxConfig.description | translate"
|
[title]="boxConfig.description | translate"
|
||||||
>
|
>
|
||||||
<div [ngStyle]="{'color': boxConfig.textColor}" class="d-flex flex-column justify-content-center align-items-center">
|
<div [ngStyle]="{'color': boxConfig.textColor}" class="d-flex flex-column justify-content-center align-items-center">
|
||||||
<div class="mb-3 font-weight-bold box-counter">{{ boxConfig.count ?? 0 }}</div>
|
<div class="mb-3 fw-bold box-counter">{{ boxConfig.count ?? 0 }}</div>
|
||||||
<div class="font-weight-bold d-flex justify-content-center w-100">{{ boxConfig.title | translate }}</div>
|
<div class="fw-bold d-flex justify-content-center w-100">{{ boxConfig.title | translate }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
|
@@ -10,7 +10,7 @@
|
|||||||
@if (notification.options.clickToClose) {
|
@if (notification.options.clickToClose) {
|
||||||
<button
|
<button
|
||||||
(click)="remove()"
|
(click)="remove()"
|
||||||
type="button" class="btn-close pt-0 pe-1 ps-0 pb-0 mt-1 me-1" data-dismiss="alert" aria-label="Close">
|
type="button" class="btn-close pt-0 pe-1 ps-0 pb-0 mt-1 me-1" data-bs-dismiss="alert" aria-label="Close">
|
||||||
</button>
|
</button>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,7 +1,4 @@
|
|||||||
import {
|
import { isPlatformBrowser } from '@angular/common';
|
||||||
isPlatformBrowser,
|
|
||||||
NgIf,
|
|
||||||
} from '@angular/common';
|
|
||||||
import {
|
import {
|
||||||
ChangeDetectionStrategy,
|
ChangeDetectionStrategy,
|
||||||
Component,
|
Component,
|
||||||
@@ -35,7 +32,6 @@ import { parseGeoJsonFromMetadataValue } from '../utils/geospatial.functions';
|
|||||||
standalone: true,
|
standalone: true,
|
||||||
imports: [
|
imports: [
|
||||||
GeospatialMapComponent,
|
GeospatialMapComponent,
|
||||||
NgIf,
|
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@@ -1,11 +1,11 @@
|
|||||||
<td class="text-center">
|
<td class="text-center">
|
||||||
<div class="custom-control custom-checkbox">
|
<div>
|
||||||
<input type="checkbox"
|
<input type="checkbox"
|
||||||
class="custom-control-input"
|
class="form-check-input"
|
||||||
[id]="entry.id"
|
[id]="entry.id"
|
||||||
[ngModel]="entry.checked"
|
[ngModel]="entry.checked"
|
||||||
(ngModelChange)="this.toggleCheckbox.emit($event);">
|
(ngModelChange)="this.toggleCheckbox.emit($event);">
|
||||||
<label class="custom-control-label" [for]="entry.id">
|
<label class="form-check-label" [for]="entry.id">
|
||||||
<span class="sr-only">{{(entry.checked ? 'resource-policies.table.headers.deselect' : 'resource-policies.table.headers.select') | translate}}</span>
|
<span class="sr-only">{{(entry.checked ? 'resource-policies.table.headers.deselect' : 'resource-policies.table.headers.select') | translate}}</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
@@ -42,12 +42,12 @@
|
|||||||
@if ((getResourcePolicies() | async)?.length > 0) {
|
@if ((getResourcePolicies() | async)?.length > 0) {
|
||||||
<tr class="text-center">
|
<tr class="text-center">
|
||||||
<th>
|
<th>
|
||||||
<div class="custom-control custom-checkbox">
|
<div>
|
||||||
<input #selectAllBtn type="checkbox"
|
<input #selectAllBtn type="checkbox"
|
||||||
class="custom-control-input"
|
class="form-check-input"
|
||||||
[id]="'selectAll_' + resourceUUID"
|
[id]="'selectAll_' + resourceUUID"
|
||||||
(change)="selectAllCheckbox($event)">
|
(change)="selectAllCheckbox($event)">
|
||||||
<label class="custom-control-label" [for]="'selectAll_' + resourceUUID">
|
<label class="form-check-label" [for]="'selectAll_' + resourceUUID">
|
||||||
<span class="sr-only">{{(selectAllBtn.checked ? 'resource-policies.table.headers.deselect-all' : 'resource-policies.table.headers.select-all') | translate}}</span>
|
<span class="sr-only">{{(selectAllBtn.checked ? 'resource-policies.table.headers.deselect-all' : 'resource-policies.table.headers.select-all') | translate}}</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
</label>
|
</label>
|
||||||
<select [(ngModel)]="currentFilter" (keyup.enter)="applyFilter()"
|
<select [(ngModel)]="currentFilter" (keyup.enter)="applyFilter()"
|
||||||
(ngModelChange)="currentOperator = advancedFilterMap.get(currentFilter).operators[0].operator"
|
(ngModelChange)="currentOperator = advancedFilterMap.get(currentFilter).operators[0].operator"
|
||||||
class="form-control mb-2" id="advanced-search-filters">
|
class="form-select mb-2" id="advanced-search-filters">
|
||||||
@for (advancedFilter of (advancedFilters$ | async); track advancedFilter.filter) {
|
@for (advancedFilter of (advancedFilters$ | async); track advancedFilter.filter) {
|
||||||
<option [value]="advancedFilter.filter">
|
<option [value]="advancedFilter.filter">
|
||||||
{{ 'search.filters.filter.' + advancedFilter.filter + '.head' | translate }}
|
{{ 'search.filters.filter.' + advancedFilter.filter + '.head' | translate }}
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
{{ 'search.sidebar.advanced-search.operators' | translate }}
|
{{ 'search.sidebar.advanced-search.operators' | translate }}
|
||||||
</label>
|
</label>
|
||||||
<select [(ngModel)]="currentOperator" (keyup.enter)="applyFilter()"
|
<select [(ngModel)]="currentOperator" (keyup.enter)="applyFilter()"
|
||||||
class="form-control mb-2" id="advanced-search-operators">
|
class="form-select mb-2" id="advanced-search-operators">
|
||||||
@for (operator of advancedFilterMap.get(currentFilter)?.operators; track operator) {
|
@for (operator of advancedFilterMap.get(currentFilter)?.operators; track operator) {
|
||||||
<option [value]="operator.operator">
|
<option [value]="operator.operator">
|
||||||
{{ 'search.filters.operator.' + operator.operator + '.text' | translate }}
|
{{ 'search.filters.operator.' + operator.operator + '.text' | translate }}
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
role="button"
|
role="button"
|
||||||
tabindex="0"
|
tabindex="0"
|
||||||
>
|
>
|
||||||
<span class="h4 d-inline-block text-left mt-auto mb-auto dark:text-white text-dark">
|
<span class="h4 d-inline-block text-start mt-auto mb-auto dark:text-white text-dark">
|
||||||
{{'search.filters.filter.' + filter.name + '.head'| translate}}
|
{{'search.filters.filter.' + filter.name + '.head'| translate}}
|
||||||
</span>
|
</span>
|
||||||
<i class="filter-toggle flex-grow-1 fas p-auto"
|
<i class="filter-toggle flex-grow-1 fas p-auto"
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
(click)="searchFilterService.minimizeAll()"
|
(click)="searchFilterService.minimizeAll()"
|
||||||
class="badge bg-primary">
|
class="badge bg-primary">
|
||||||
<span class="d-flex">
|
<span class="d-flex">
|
||||||
<span class="flex-grow-1 text-left">{{('search.filters.applied.f.' + appliedFilter.filter + '.min') | translate}}: {{ min }}</span>
|
<span class="flex-grow-1 text-start">{{('search.filters.applied.f.' + appliedFilter.filter + '.min') | translate}}: {{ min }}</span>
|
||||||
<span class="ps-1" aria-hidden="true">×</span>
|
<span class="ps-1" aria-hidden="true">×</span>
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
@@ -19,7 +19,7 @@
|
|||||||
(click)="searchFilterService.minimizeAll()"
|
(click)="searchFilterService.minimizeAll()"
|
||||||
class="badge bg-primary">
|
class="badge bg-primary">
|
||||||
<span class="d-flex">
|
<span class="d-flex">
|
||||||
<span class="flex-grow-1 text-left">{{('search.filters.applied.f.' + appliedFilter.filter + '.max') | translate}}: {{ max }}</span>
|
<span class="flex-grow-1 text-start">{{('search.filters.applied.f.' + appliedFilter.filter + '.max') | translate}}: {{ max }}</span>
|
||||||
<span class="ps-1" aria-hidden="true">×</span>
|
<span class="ps-1" aria-hidden="true">×</span>
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
[queryParams]="(removeParameters$ | async)"
|
[queryParams]="(removeParameters$ | async)"
|
||||||
(click)="searchFilterService.minimizeAll()">
|
(click)="searchFilterService.minimizeAll()">
|
||||||
<span class="d-flex">
|
<span class="d-flex">
|
||||||
<span class="flex-grow-1 text-left">{{ ('search.filters.applied.f.' + appliedFilter.filter) | translate}}{{'search.filters.applied.operator.' + appliedFilter.operator | translate}}: {{'search.filters.' + appliedFilter.filter + '.' + appliedFilter.label | translate: { default: appliedFilter.label } }}</span>
|
<span class="flex-grow-1 text-start">{{ ('search.filters.applied.f.' + appliedFilter.filter) | translate}}{{'search.filters.applied.operator.' + appliedFilter.operator | translate}}: {{'search.filters.' + appliedFilter.filter + '.' + appliedFilter.label | translate: { default: appliedFilter.label } }}</span>
|
||||||
<span class="ps-1" aria-hidden="true">×</span>
|
<span class="ps-1" aria-hidden="true">×</span>
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
|
@@ -16,7 +16,7 @@
|
|||||||
<div>
|
<div>
|
||||||
@for (subscriptionType of subscriptionForm?.controls | keyvalue; track subscriptionType) {
|
@for (subscriptionType of subscriptionForm?.controls | keyvalue; track subscriptionType) {
|
||||||
<fieldset formGroupName="{{subscriptionType.key}}" class="mb-3 row">
|
<fieldset formGroupName="{{subscriptionType.key}}" class="mb-3 row">
|
||||||
<legend class="col-md-4 col-form-label float-md-left pt-0">
|
<legend class="col-md-4 col-form-label float-md-start pt-0">
|
||||||
{{ 'subscriptions.modal.new-subscription-form.type.' + subscriptionType.key | translate }}:
|
{{ 'subscriptions.modal.new-subscription-form.type.' + subscriptionType.key | translate }}:
|
||||||
</legend>
|
</legend>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
|
@@ -23,7 +23,7 @@
|
|||||||
<span><i class="fas fa-cloud-upload"
|
<span><i class="fas fa-cloud-upload"
|
||||||
aria-hidden="true"></i> {{ ((fileObject === null || fileObject === undefined) ? dropMessageLabel : dropMessageLabelReplacement) | translate}} {{'uploader.or' | translate}}</span>
|
aria-hidden="true"></i> {{ ((fileObject === null || fileObject === undefined) ? dropMessageLabel : dropMessageLabelReplacement) | translate}} {{'uploader.or' | translate}}</span>
|
||||||
<label class="btn btn-link m-0 p-0 ms-1">
|
<label class="btn btn-link m-0 p-0 ms-1">
|
||||||
<input class="form-control-file d-none" type="file" name="file-upload"
|
<input class="form-control d-none" type="file" name="file-upload"
|
||||||
id="file-upload"
|
id="file-upload"
|
||||||
(change)="handleFileInput($event)">
|
(change)="handleFileInput($event)">
|
||||||
{{'uploader.browse' | translate}}
|
{{'uploader.browse' | translate}}
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
<div class="btn-group" data-toggle="buttons">
|
<div class="btn-group" data-bs-toggle="buttons">
|
||||||
@if (isToShow(viewModeEnum.ListElement)) {
|
@if (isToShow(viewModeEnum.ListElement)) {
|
||||||
<button
|
<button
|
||||||
[attr.aria-current]="currentMode === viewModeEnum.ListElement"
|
[attr.aria-current]="currentMode === viewModeEnum.ListElement"
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
import { CommonModule } from '@angular/common';
|
import { AsyncPipe } from '@angular/common';
|
||||||
import {
|
import {
|
||||||
Component,
|
Component,
|
||||||
Input,
|
Input,
|
||||||
@@ -6,7 +6,7 @@ import {
|
|||||||
SimpleChanges,
|
SimpleChanges,
|
||||||
} from '@angular/core';
|
} from '@angular/core';
|
||||||
import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
|
import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslatePipe } from '@ngx-translate/core';
|
||||||
import {
|
import {
|
||||||
Observable,
|
Observable,
|
||||||
of,
|
of,
|
||||||
@@ -29,10 +29,10 @@ import { SubmissionService } from '../../submission.service';
|
|||||||
templateUrl: './submission-form-footer.component.html',
|
templateUrl: './submission-form-footer.component.html',
|
||||||
standalone: true,
|
standalone: true,
|
||||||
imports: [
|
imports: [
|
||||||
|
AsyncPipe,
|
||||||
BrowserOnlyPipe,
|
BrowserOnlyPipe,
|
||||||
BtnDisabledDirective,
|
BtnDisabledDirective,
|
||||||
CommonModule,
|
TranslatePipe,
|
||||||
TranslateModule,
|
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
export class SubmissionFormFooterComponent implements OnChanges {
|
export class SubmissionFormFooterComponent implements OnChanges {
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
Template for the detect duplicates submission section component
|
Template for the detect duplicates submission section component
|
||||||
@author Kim Shepherd
|
@author Kim Shepherd
|
||||||
-->
|
-->
|
||||||
<div class="text-sm-left" *ngVar="(this.getDuplicateData() | async) as data">
|
<div class="text-sm-start" *ngVar="(this.getDuplicateData() | async) as data">
|
||||||
@if (data?.potentialDuplicates.length === 0) {
|
@if (data?.potentialDuplicates.length === 0) {
|
||||||
<div class="alert alert-success w-100">{{ 'submission.sections.duplicates.none' | translate }}</div>
|
<div class="alert alert-success w-100">{{ 'submission.sections.duplicates.none' | translate }}</div>
|
||||||
}
|
}
|
||||||
|
@@ -2,15 +2,15 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<!-- Default switch -->
|
<!-- Default switch -->
|
||||||
<div class="col-md-2 d-flex justify-content-center align-items-center" >
|
<div class="col-md-2 d-flex justify-content-center align-items-center" >
|
||||||
<div class="custom-control custom-switch">
|
<div class="form-check form-switch">
|
||||||
<input
|
<input
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
class="custom-control-input"
|
class="form-check-input"
|
||||||
id="primaryBitstream{{fileIndex}}"
|
id="primaryBitstream{{fileIndex}}"
|
||||||
[disabled]="processingSaveStatus$ | async"
|
[disabled]="processingSaveStatus$ | async"
|
||||||
[checked]="isPrimary"
|
[checked]="isPrimary"
|
||||||
(change)="togglePrimaryBitstream($event)">
|
(change)="togglePrimaryBitstream($event)">
|
||||||
<label class="custom-control-label" for="primaryBitstream{{fileIndex}}">
|
<label class="form-check-label" for="primaryBitstream{{fileIndex}}">
|
||||||
@if (!isPrimary) {
|
@if (!isPrimary) {
|
||||||
<span class="sr-only">{{'submission.sections.upload.primary.make' | translate:{ fileName: fileName } }}</span>
|
<span class="sr-only">{{'submission.sections.upload.primary.make' | translate:{ fileName: fileName } }}</span>
|
||||||
}
|
}
|
||||||
|
@@ -21,7 +21,7 @@
|
|||||||
}
|
}
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-2">
|
<div class="col-md-2">
|
||||||
<span class="text-left font-weight-bold">{{ 'bitstream.edit.form.primaryBitstream.label' | translate }}</span>
|
<span class="text-start fw-bold">{{ 'bitstream.edit.form.primaryBitstream.label' | translate }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
@@ -1,30 +1,29 @@
|
|||||||
<div class="thumbnail" [class.limit-width]="limitWidth">
|
<div class="thumbnail" [class.limit-width]="limitWidth">
|
||||||
@if (isLoading()) {
|
@if (isLoading()) {
|
||||||
<div class="thumbnail-content outer">
|
<div class="thumbnail-content outer">
|
||||||
<div class="inner">
|
<div class="inner">
|
||||||
<div class="centered">
|
<div class="centered">
|
||||||
<ds-loading [spinner]="true"></ds-loading>
|
<ds-loading [spinner]="true"></ds-loading>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
}
|
}
|
||||||
<!-- don't use *ngIf="!isLoading" so the thumbnail can load in while the animation is playing -->
|
<!-- don't use *ngIf="!isLoading" so the thumbnail can load in while the animation is playing -->
|
||||||
@if (src() !== null) {
|
@if (src() !== null) {
|
||||||
<img
|
<img class="thumbnail-content img-fluid"
|
||||||
class="thumbnail-content img-fluid"
|
[class.d-none]="isLoading()"
|
||||||
[ngClass]="{ 'd-none': isLoading ()}"
|
|
||||||
[src]="src() | dsSafeUrl"
|
[src]="src() | dsSafeUrl"
|
||||||
[alt]="alt | translate"
|
[alt]="alt | translate"
|
||||||
(error)="errorHandler()"
|
(error)="errorHandler()"
|
||||||
(load)="successHandler()"
|
(load)="successHandler()"/>
|
||||||
/>
|
}
|
||||||
} @if (src() === null && isLoading() === false) {
|
@if (src() === null && isLoading() === false) {
|
||||||
<div class="thumbnail-content outer">
|
<div class="thumbnail-content outer">
|
||||||
<div class="inner">
|
<div class="inner">
|
||||||
<div class="thumbnail-placeholder centered">
|
<div class="thumbnail-placeholder centered">
|
||||||
{{ placeholder | translate }}
|
{{ placeholder | translate }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
|
@@ -1,7 +1,4 @@
|
|||||||
import {
|
import { isPlatformBrowser } from '@angular/common';
|
||||||
CommonModule,
|
|
||||||
isPlatformBrowser,
|
|
||||||
} from '@angular/common';
|
|
||||||
import {
|
import {
|
||||||
Component,
|
Component,
|
||||||
Inject,
|
Inject,
|
||||||
@@ -12,7 +9,7 @@ import {
|
|||||||
SimpleChanges,
|
SimpleChanges,
|
||||||
WritableSignal,
|
WritableSignal,
|
||||||
} from '@angular/core';
|
} from '@angular/core';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslatePipe } from '@ngx-translate/core';
|
||||||
import { of } from 'rxjs';
|
import { of } from 'rxjs';
|
||||||
import { switchMap } from 'rxjs/operators';
|
import { switchMap } from 'rxjs/operators';
|
||||||
|
|
||||||
@@ -40,10 +37,9 @@ import { SafeUrlPipe } from '../shared/utils/safe-url-pipe';
|
|||||||
templateUrl: './thumbnail.component.html',
|
templateUrl: './thumbnail.component.html',
|
||||||
standalone: true,
|
standalone: true,
|
||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
|
||||||
SafeUrlPipe,
|
SafeUrlPipe,
|
||||||
ThemedLoadingComponent,
|
ThemedLoadingComponent,
|
||||||
TranslateModule,
|
TranslatePipe,
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
export class ThumbnailComponent implements OnChanges {
|
export class ThumbnailComponent implements OnChanges {
|
||||||
|
@@ -1,6 +1,7 @@
|
|||||||
import {
|
import {
|
||||||
CommonModule,
|
AsyncPipe,
|
||||||
Location,
|
Location,
|
||||||
|
NgClass,
|
||||||
} from '@angular/common';
|
} from '@angular/common';
|
||||||
import {
|
import {
|
||||||
Component,
|
Component,
|
||||||
@@ -44,8 +45,9 @@ export const ADVANCED_WORKFLOW_ACTION_SELECT_REVIEWER = 'selectrevieweraction';
|
|||||||
templateUrl: './advanced-workflow-action-select-reviewer.component.html',
|
templateUrl: './advanced-workflow-action-select-reviewer.component.html',
|
||||||
styleUrls: ['./advanced-workflow-action-select-reviewer.component.scss'],
|
styleUrls: ['./advanced-workflow-action-select-reviewer.component.scss'],
|
||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
AsyncPipe,
|
||||||
ModifyItemOverviewComponent,
|
ModifyItemOverviewComponent,
|
||||||
|
NgClass,
|
||||||
ReviewersListComponent,
|
ReviewersListComponent,
|
||||||
TranslateModule,
|
TranslateModule,
|
||||||
],
|
],
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
import {
|
import {
|
||||||
CommonModule,
|
AsyncPipe,
|
||||||
Location,
|
Location,
|
||||||
} from '@angular/common';
|
} from '@angular/common';
|
||||||
import { Component } from '@angular/core';
|
import { Component } from '@angular/core';
|
||||||
@@ -8,7 +8,7 @@ import {
|
|||||||
Router,
|
Router,
|
||||||
} from '@angular/router';
|
} from '@angular/router';
|
||||||
import {
|
import {
|
||||||
TranslateModule,
|
TranslatePipe,
|
||||||
TranslateService,
|
TranslateService,
|
||||||
} from '@ngx-translate/core';
|
} from '@ngx-translate/core';
|
||||||
import { Observable } from 'rxjs';
|
import { Observable } from 'rxjs';
|
||||||
@@ -30,9 +30,9 @@ import { WorkflowItemActionPageDirective } from '../workflow-item-action-page.co
|
|||||||
templateUrl: '../workflow-item-action-page.component.html',
|
templateUrl: '../workflow-item-action-page.component.html',
|
||||||
standalone: true,
|
standalone: true,
|
||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
AsyncPipe,
|
||||||
ModifyItemOverviewComponent,
|
ModifyItemOverviewComponent,
|
||||||
TranslateModule,
|
TranslatePipe,
|
||||||
VarDirective,
|
VarDirective,
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
import {
|
import {
|
||||||
CommonModule,
|
AsyncPipe,
|
||||||
Location,
|
Location,
|
||||||
} from '@angular/common';
|
} from '@angular/common';
|
||||||
import {
|
import {
|
||||||
@@ -42,7 +42,7 @@ import { NotificationsService } from '../../shared/notifications/notifications.s
|
|||||||
templateUrl: './workspaceitems-delete-page.component.html',
|
templateUrl: './workspaceitems-delete-page.component.html',
|
||||||
styleUrls: ['./workspaceitems-delete-page.component.scss'],
|
styleUrls: ['./workspaceitems-delete-page.component.scss'],
|
||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
AsyncPipe,
|
||||||
ModifyItemOverviewComponent,
|
ModifyItemOverviewComponent,
|
||||||
TranslateModule,
|
TranslateModule,
|
||||||
],
|
],
|
||||||
|
@@ -1,7 +1,4 @@
|
|||||||
import {
|
import { AsyncPipe } from '@angular/common';
|
||||||
AsyncPipe,
|
|
||||||
CommonModule,
|
|
||||||
} from '@angular/common';
|
|
||||||
import { Component } from '@angular/core';
|
import { Component } from '@angular/core';
|
||||||
import { FormsModule } from '@angular/forms';
|
import { FormsModule } from '@angular/forms';
|
||||||
import { RouterLink } from '@angular/router';
|
import { RouterLink } from '@angular/router';
|
||||||
@@ -21,7 +18,6 @@ import { VarDirective } from '../../../../../app/shared/utils/var.directive';
|
|||||||
standalone: true,
|
standalone: true,
|
||||||
imports: [
|
imports: [
|
||||||
AsyncPipe,
|
AsyncPipe,
|
||||||
CommonModule,
|
|
||||||
FormsModule,
|
FormsModule,
|
||||||
RouterLink,
|
RouterLink,
|
||||||
ThemedEmailRequestCopyComponent,
|
ThemedEmailRequestCopyComponent,
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
import { CommonModule } from '@angular/common';
|
import { AsyncPipe } from '@angular/common';
|
||||||
import { Component } from '@angular/core';
|
import { Component } from '@angular/core';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslatePipe } from '@ngx-translate/core';
|
||||||
|
|
||||||
import { BtnDisabledDirective } from '../../../../../../app/shared/btn-disabled.directive';
|
import { BtnDisabledDirective } from '../../../../../../app/shared/btn-disabled.directive';
|
||||||
import { BrowserOnlyPipe } from '../../../../../../app/shared/utils/browser-only.pipe';
|
import { BrowserOnlyPipe } from '../../../../../../app/shared/utils/browser-only.pipe';
|
||||||
@@ -14,10 +14,10 @@ import { SubmissionFormFooterComponent as BaseComponent } from '../../../../../.
|
|||||||
templateUrl: '../../../../../../app/submission/form/footer/submission-form-footer.component.html',
|
templateUrl: '../../../../../../app/submission/form/footer/submission-form-footer.component.html',
|
||||||
standalone: true,
|
standalone: true,
|
||||||
imports: [
|
imports: [
|
||||||
|
AsyncPipe,
|
||||||
BrowserOnlyPipe,
|
BrowserOnlyPipe,
|
||||||
BtnDisabledDirective,
|
BtnDisabledDirective,
|
||||||
CommonModule,
|
TranslatePipe,
|
||||||
TranslateModule,
|
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
export class SubmissionFormFooterComponent extends BaseComponent {
|
export class SubmissionFormFooterComponent extends BaseComponent {
|
||||||
|
@@ -1,6 +1,5 @@
|
|||||||
import { CommonModule } from '@angular/common';
|
|
||||||
import { Component } from '@angular/core';
|
import { Component } from '@angular/core';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslatePipe } from '@ngx-translate/core';
|
||||||
|
|
||||||
import { ThemedLoadingComponent } from '../../../../app/shared/loading/themed-loading.component';
|
import { ThemedLoadingComponent } from '../../../../app/shared/loading/themed-loading.component';
|
||||||
import { SafeUrlPipe } from '../../../../app/shared/utils/safe-url-pipe';
|
import { SafeUrlPipe } from '../../../../app/shared/utils/safe-url-pipe';
|
||||||
@@ -14,10 +13,9 @@ import { ThumbnailComponent as BaseComponent } from '../../../../app/thumbnail/t
|
|||||||
templateUrl: '../../../../app/thumbnail/thumbnail.component.html',
|
templateUrl: '../../../../app/thumbnail/thumbnail.component.html',
|
||||||
standalone: true,
|
standalone: true,
|
||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
|
||||||
SafeUrlPipe,
|
SafeUrlPipe,
|
||||||
ThemedLoadingComponent,
|
ThemedLoadingComponent,
|
||||||
TranslateModule,
|
TranslatePipe,
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
export class ThumbnailComponent extends BaseComponent {
|
export class ThumbnailComponent extends BaseComponent {
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
import { CommonModule } from '@angular/common';
|
import { AsyncPipe } from '@angular/common';
|
||||||
import { Component } from '@angular/core';
|
import { Component } from '@angular/core';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslatePipe } from '@ngx-translate/core';
|
||||||
|
|
||||||
import { ModifyItemOverviewComponent } from '../../../../../app/item-page/edit-item-page/modify-item-overview/modify-item-overview.component';
|
import { ModifyItemOverviewComponent } from '../../../../../app/item-page/edit-item-page/modify-item-overview/modify-item-overview.component';
|
||||||
import { VarDirective } from '../../../../../app/shared/utils/var.directive';
|
import { VarDirective } from '../../../../../app/shared/utils/var.directive';
|
||||||
@@ -13,9 +13,9 @@ import { WorkflowItemDeleteComponent as BaseComponent } from '../../../../../app
|
|||||||
templateUrl: '../../../../../app/workflowitems-edit-page/workflow-item-action-page.component.html',
|
templateUrl: '../../../../../app/workflowitems-edit-page/workflow-item-action-page.component.html',
|
||||||
standalone: true,
|
standalone: true,
|
||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
AsyncPipe,
|
||||||
ModifyItemOverviewComponent,
|
ModifyItemOverviewComponent,
|
||||||
TranslateModule,
|
TranslatePipe,
|
||||||
VarDirective,
|
VarDirective,
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
import { CommonModule } from '@angular/common';
|
import { AsyncPipe } from '@angular/common';
|
||||||
import { Component } from '@angular/core';
|
import { Component } from '@angular/core';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
|
|
||||||
@@ -7,10 +7,13 @@ import { WorkspaceItemsDeletePageComponent as BaseComponent } from '../../../../
|
|||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'ds-themed-workspaceitems-delete-page',
|
selector: 'ds-themed-workspaceitems-delete-page',
|
||||||
|
// styleUrls: ['./workspaceitems-delete-page.component.scss'],
|
||||||
|
styleUrls: ['../../../../../app/workspaceitems-edit-page/workspaceitems-delete-page/workspaceitems-delete-page.component.scss'],
|
||||||
|
// templateUrl: './workspaceitems-delete-page.component.html',
|
||||||
templateUrl: '../../../../../app/workspaceitems-edit-page/workspaceitems-delete-page/workspaceitems-delete-page.component.html',
|
templateUrl: '../../../../../app/workspaceitems-edit-page/workspaceitems-delete-page/workspaceitems-delete-page.component.html',
|
||||||
standalone: true,
|
standalone: true,
|
||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
AsyncPipe,
|
||||||
ModifyItemOverviewComponent,
|
ModifyItemOverviewComponent,
|
||||||
TranslateModule,
|
TranslateModule,
|
||||||
],
|
],
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
<div class="background-image-container mt-ncs">
|
<div class="background-image-container mt-ncs">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="jumbotron py-4 px-2 py-sm-5 px-sm-0 mt-0 mb-4">
|
<div class="home-news-content py-4 px-2 py-sm-5 px-sm-0 mt-0 mb-4">
|
||||||
<div class="d-flex flex-wrap">
|
<div class="d-flex flex-wrap">
|
||||||
<div>
|
<div>
|
||||||
<h1 class="display-2">DSpace Sandbox</h1>
|
<h1 class="display-2">DSpace Sandbox</h1>
|
||||||
|
@@ -58,7 +58,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.jumbotron {
|
.home-news-content {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user