-
+
diff --git a/dmp-frontend/src/app/ui/admin/description-template/editor/components/field/description-template-editor-field.component.ts b/dmp-frontend/src/app/ui/admin/description-template/editor/components/field/description-template-editor-field.component.ts
index 8a6a6637d..2d80e067d 100644
--- a/dmp-frontend/src/app/ui/admin/description-template/editor/components/field/description-template-editor-field.component.ts
+++ b/dmp-frontend/src/app/ui/admin/description-template/editor/components/field/description-template-editor-field.component.ts
@@ -7,31 +7,14 @@ import { MatSlideToggleChange } from '@angular/material/slide-toggle';
import { DescriptionTemplateFieldType } from '@app/core/common/enum/description-template-field-type';
import { ValidationType } from '@app/core/common/enum/validation-type';
import {
- DescriptionTemplateAutoCompleteData,
- DescriptionTemplateBooleanDecisionData,
- DescriptionTemplateCheckBoxData,
- DescriptionTemplateComboBoxOption,
- DescriptionTemplateCurrencyData,
- DescriptionTemplateDataRepositoryData,
- DescriptionTemplateDatasetIdentifierData,
- DescriptionTemplateDatePickerData,
- DescriptionTemplateDmpAutoCompleteData,
DescriptionTemplateExternalDatasetData,
- DescriptionTemplateFreeTextData,
- DescriptionTemplateLicenseData,
- DescriptionTemplateOrganizationData,
- DescriptionTemplatePublicationData,
+ DescriptionTemplateExternalSelectData,
+ DescriptionTemplateLabelAndMultiplicityData,
+ DescriptionTemplateLabelData,
DescriptionTemplateRadioBoxData,
- DescriptionTemplateRegistryData,
- DescriptionTemplateResearcherAutoCompleteData,
- DescriptionTemplateRichTextAreaData,
- DescriptionTemplateServiceData,
- DescriptionTemplateTagData,
- DescriptionTemplateTaxonomyData,
- DescriptionTemplateTextAreaData,
- DescriptionTemplateUploadData,
- DescriptionTemplateValidationData,
- DescriptionTemplateSelectData
+ DescriptionTemplateSelectData,
+ DescriptionTemplateSelectOption,
+ DescriptionTemplateUploadData
} from '@app/core/model/description-template/description-template';
import { DescriptionTemplateFieldPersist } from '@app/core/model/description-template/description-template-persist';
import { ConfigurationService } from "@app/core/services/configuration/configuration.service";
@@ -121,7 +104,8 @@ export class DescriptionTemplateEditorFieldComponent extends BaseComponent imple
case DescriptionTemplateFieldType.FREE_TEXT:
case DescriptionTemplateFieldType.BOOLEAN_DECISION:
case DescriptionTemplateFieldType.RADIO_BOX:
- case DescriptionTemplateFieldType.COMBO_BOX:
+ case DescriptionTemplateFieldType.SELECT:
+ case DescriptionTemplateFieldType.EXTERNAL_SELECT:
case DescriptionTemplateFieldType.CHECK_BOX:
case DescriptionTemplateFieldType.DATE_PICKER:
return true;
@@ -131,7 +115,7 @@ export class DescriptionTemplateEditorFieldComponent extends BaseComponent imple
onInputTypeChange() {
- const x = this.fieldType;
+ const type = this.fieldType;
const field: DescriptionTemplateFieldPersist = this.form.getRawValue();
field.defaultValue = undefined;
@@ -139,260 +123,92 @@ export class DescriptionTemplateEditorFieldComponent extends BaseComponent imple
field.visibilityRules = [];
}
-
- switch (x) {
- case DescriptionTemplateFieldType.BOOLEAN_DECISION: {
-
- const data: DescriptionTemplateBooleanDecisionData = {
+ switch (type) {
+ case DescriptionTemplateFieldType.EXTERNAL_SELECT: {
+ const data: DescriptionTemplateExternalSelectData = {
+ sources: [],
+ multipleSelect: false,
label: '',
- fieldType: DescriptionTemplateFieldType.BOOLEAN_DECISION,
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.CHECK_BOX: {
-
- const data: DescriptionTemplateCheckBoxData = {
- label: '',
- fieldType: DescriptionTemplateFieldType.CHECK_BOX,
- }
- field.data = data;
-
- break;
- }
- case DescriptionTemplateFieldType.SELECT: {
-
- const firstOption = { label: '', value: '' } as DescriptionTemplateComboBoxOption;
- const data: DescriptionTemplateSelectData = {
- label: '',
- multiList: false,
- options: [firstOption],
- fieldType: DescriptionTemplateFieldType.SELECT
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.AUTO_COMPLETE: {
-
- const data: DescriptionTemplateAutoCompleteData = {
- autoCompleteSingleDataList: [],
- multiAutoComplete: false,
- label: '',
- fieldType: DescriptionTemplateFieldType.AUTO_COMPLETE
- }
- field.data = data;
- break;
- } case DescriptionTemplateFieldType.INTERNAL_DMP_ENTRIES: {
-
- const data: DescriptionTemplateDmpAutoCompleteData = {
- label: '',
- multiAutoComplete: false,
- fieldType: DescriptionTemplateFieldType.INTERNAL_DMP_ENTRIES_DMPS
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.FREE_TEXT: {
-
- const data: DescriptionTemplateFreeTextData = {
- label: '',
- fieldType: DescriptionTemplateFieldType.FREE_TEXT
+ fieldType: type
}
field.data = data;
break;
}
case DescriptionTemplateFieldType.RADIO_BOX: {
-
const data: DescriptionTemplateRadioBoxData = {
label: '',
options: [],
- fieldType: DescriptionTemplateFieldType.RADIO_BOX
+ fieldType: type
}
field.data = data;
break;
}
- case DescriptionTemplateFieldType.TEXT_AREA: {
-
- const data: DescriptionTemplateTextAreaData = {
+ case DescriptionTemplateFieldType.SELECT: {
+ const firstOption = { label: '', value: '' } as DescriptionTemplateSelectOption;
+ const data: DescriptionTemplateSelectData = {
label: '',
- fieldType: DescriptionTemplateFieldType.TEXT_AREA
+ multipleSelect: false,
+ options: [firstOption],
+ fieldType: type
}
field.data = data;
break;
}
- case DescriptionTemplateFieldType.RICH_TEXT_AREA: {
-
- const data: DescriptionTemplateRichTextAreaData = {
+ case DescriptionTemplateFieldType.BOOLEAN_DECISION:
+ case DescriptionTemplateFieldType.CHECK_BOX:
+ case DescriptionTemplateFieldType.FREE_TEXT:
+ case DescriptionTemplateFieldType.TEXT_AREA:
+ case DescriptionTemplateFieldType.RICH_TEXT_AREA:
+ case DescriptionTemplateFieldType.DATE_PICKER:
+ case DescriptionTemplateFieldType.TAGS:
+ case DescriptionTemplateFieldType.DATASET_IDENTIFIER:
+ case DescriptionTemplateFieldType.CURRENCY:
+ case DescriptionTemplateFieldType.VALIDATION: {
+ const data: DescriptionTemplateLabelData = {
label: '',
- fieldType: DescriptionTemplateFieldType.RICH_TEXT_AREA
+ fieldType: type
}
field.data = data;
+
break;
}
- case DescriptionTemplateFieldType.UPLOAD: {
-
- const data: DescriptionTemplateUploadData = {
+ case DescriptionTemplateFieldType.INTERNAL_DMP_ENTRIES_RESEARCHERS:
+ case DescriptionTemplateFieldType.INTERNAL_DMP_ENTRIES_DMPS:
+ case DescriptionTemplateFieldType.INTERNAL_DMP_ENTRIES_DATASETS:
+ case DescriptionTemplateFieldType.EXTERNAL_DATASETS:
+ case DescriptionTemplateFieldType.DATA_REPOSITORIES:
+ case DescriptionTemplateFieldType.JOURNAL_REPOSITORIES:
+ case DescriptionTemplateFieldType.PUB_REPOSITORIES:
+ case DescriptionTemplateFieldType.LICENSES:
+ case DescriptionTemplateFieldType.TAXONOMIES:
+ case DescriptionTemplateFieldType.PUBLICATIONS:
+ case DescriptionTemplateFieldType.REGISTRIES:
+ case DescriptionTemplateFieldType.SERVICES:
+ case DescriptionTemplateFieldType.RESEARCHERS:
+ case DescriptionTemplateFieldType.ORGANIZATIONS: {
+ const data: DescriptionTemplateLabelAndMultiplicityData = {
label: '',
- types: [],
- maxFileSizeInMB: this.configurationService.maxFileSizeInMB,
- fieldType: DescriptionTemplateFieldType.UPLOAD
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.DATE_PICKER: {
-
- const data: DescriptionTemplateDatePickerData = {
- label: '',
- fieldType: DescriptionTemplateFieldType.DATE_PICKER
+ multipleSelect: false,
+ fieldType: type
}
field.data = data;
break;
}
case DescriptionTemplateFieldType.EXTERNAL_DATASETS: {
-
const data: DescriptionTemplateExternalDatasetData = {
label: '',
- multiAutoComplete: false,
- fieldType: DescriptionTemplateFieldType.EXTERNAL_DATASETS
+ multipleSelect: false,
+ fieldType: type
}
field.data = data;
break;
}
- case DescriptionTemplateFieldType.DATA_REPOSITORIES: {
-
- const data: DescriptionTemplateDataRepositoryData = {
+ case DescriptionTemplateFieldType.UPLOAD: {
+ const data: DescriptionTemplateUploadData = {
label: '',
- multiAutoComplete: false,
- fieldType: DescriptionTemplateFieldType.DATA_REPOSITORIES
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.PUB_REPOSITORIES: {
-
- const data: DescriptionTemplateDataRepositoryData = {
- label: '',
- multiAutoComplete: false,
- fieldType: DescriptionTemplateFieldType.DATA_REPOSITORIES
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.JOURNAL_REPOSITORIES: {
-
- const data: DescriptionTemplateDataRepositoryData = {
- label: '',
- multiAutoComplete: false,
- fieldType: DescriptionTemplateFieldType.DATA_REPOSITORIES
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.TAXONOMIES: {
-
- const data: DescriptionTemplateTaxonomyData = {
- label: '',
- multiAutoComplete: false,
- fieldType: DescriptionTemplateFieldType.TAXONOMIES
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.LICENSES: {
-
- const data: DescriptionTemplateLicenseData = {
- label: '',
- multiAutoComplete: false,
- fieldType: DescriptionTemplateFieldType.LICENSES
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.PUBLICATIONS: {
-
- const data: DescriptionTemplatePublicationData = {
- label: '',
- multiAutoComplete: false,
- fieldType: DescriptionTemplateFieldType.PUBLICATIONS
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.REGISTRIES: {
-
- const data: DescriptionTemplateRegistryData = {
- label: '',
- multiAutoComplete: false,
- fieldType: DescriptionTemplateFieldType.REGISTRIES
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.SERVICES: {
-
- const data: DescriptionTemplateServiceData = {
- label: '',
- multiAutoComplete: false,
- fieldType: DescriptionTemplateFieldType.SERVICES
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.TAGS: {
-
- const data: DescriptionTemplateTagData = {
- label: '',
- fieldType: DescriptionTemplateFieldType.TAGS
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.RESEARCHERS: {
-
- const data: DescriptionTemplateResearcherAutoCompleteData = {
- label: '',
- multiAutoComplete: false,
- fieldType: DescriptionTemplateFieldType.RESEARCHERS
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.ORGANIZATIONS: {
-
- const data: DescriptionTemplateOrganizationData = {
- // autoCompleteSingleDataList: [], //TODO maybe remove
- label: '',
- multiAutoComplete: false,
- fieldType: DescriptionTemplateFieldType.ORGANIZATIONS
-
- };
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.DATASET_IDENTIFIER: {
-
- const data: DescriptionTemplateDatasetIdentifierData = {
- label: '',
- fieldType: DescriptionTemplateFieldType.DATASET_IDENTIFIER
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.CURRENCY: {
-
- const data: DescriptionTemplateCurrencyData = {
- label: '',
- fieldType: DescriptionTemplateFieldType.CURRENCY
- }
- field.data = data;
- break;
- }
- case DescriptionTemplateFieldType.VALIDATION: {
-
- const data: DescriptionTemplateValidationData = {
- label: '',
- fieldType: DescriptionTemplateFieldType.VALIDATION
+ types: [],
+ maxFileSizeInMB: this.configurationService.maxFileSizeInMB,
+ fieldType: type
}
field.data = data;
break;
diff --git a/dmp-frontend/src/app/ui/admin/description-template/editor/description-template-editor.component.html b/dmp-frontend/src/app/ui/admin/description-template/editor/description-template-editor.component.html
index cc4e92f5c..3427367a0 100644
--- a/dmp-frontend/src/app/ui/admin/description-template/editor/description-template-editor.component.html
+++ b/dmp-frontend/src/app/ui/admin/description-template/editor/description-template-editor.component.html
@@ -19,12 +19,7 @@