Skip to content

Commit 437750e

Browse files
committed
handle default license with required fields set for draft preprint
1 parent b427852 commit 437750e

File tree

2 files changed

+9
-6
lines changed

2 files changed

+9
-6
lines changed

src/app/features/registries/components/registries-metadata-step/registries-license/registries-license.component.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ <h2 class="mb-2">{{ 'shared.license.title' | translate }}</h2>
1111
<osf-license
1212
[licenses]="licenses()"
1313
[fullWidthSelect]="true"
14-
[selectedLicenseId]="selectedLicense()?.id"
14+
[selectedLicenseId]="control().get('id')?.value || selectedLicense()?.id"
1515
[selectedLicenseOptions]="selectedLicense()?.options"
1616
(createLicense)="createLicense($event)"
1717
(selectLicense)="selectLicense($event)"

src/app/features/registries/components/registries-metadata-step/registries-license/registries-license.component.ts

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { TranslatePipe } from '@ngx-translate/core';
55
import { Card } from 'primeng/card';
66
import { Message } from 'primeng/message';
77

8-
import { ChangeDetectionStrategy, Component, effect, inject, input, untracked } from '@angular/core';
8+
import { ChangeDetectionStrategy, Component, effect, inject, input } from '@angular/core';
99
import { FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';
1010
import { ActivatedRoute } from '@angular/router';
1111

@@ -64,14 +64,17 @@ export class RegistriesLicenseComponent {
6464

6565
effect(() => {
6666
const licenses = this.licenses();
67-
const selectedLicense = untracked(() => this.selectedLicense());
67+
const selectedLicense = this.selectedLicense();
68+
const defaultLicenseId = this.draftRegistration()?.defaultLicenseId;
6869

69-
if (!licenses.length || !selectedLicense) {
70+
if (!licenses.length) {
7071
return;
7172
}
7273

73-
const defaultLicenseId = this.draftRegistration()?.defaultLicenseId;
74-
if (defaultLicenseId && !licenses.find((license) => license.id === selectedLicense.id)) {
74+
if (
75+
defaultLicenseId &&
76+
(!selectedLicense?.id || !licenses.find((license) => license.id === selectedLicense?.id))
77+
) {
7578
const defaultLicense = licenses.find((license) => license.id === defaultLicenseId);
7679
if (defaultLicense) {
7780
this.control().patchValue({

0 commit comments

Comments
 (0)