From 450dbb519f3928d8227e95f8217b94a3f8c69201 Mon Sep 17 00:00:00 2001 From: Kristan Ntavidi Date: Mon, 5 Apr 2021 12:06:14 +0300 Subject: [PATCH] Dataset profile editor. Fix: final preview in step does not affect individual previews in step 2. --- .../dataset-profile/dataset-profile.module.ts | 7 +++-- .../final-preview.component.html | 3 ++ .../final-preview.component.scss | 0 .../final-preview/final-preview.component.ts | 28 +++++++++++++++++++ .../dataset-profile-editor.component.html | 9 +++++- .../dataset-profile-editor.component.ts | 7 +++-- 6 files changed, 47 insertions(+), 7 deletions(-) create mode 100644 dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/final-preview/final-preview.component.html create mode 100644 dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/final-preview/final-preview.component.scss create mode 100644 dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/final-preview/final-preview.component.ts diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/dataset-profile.module.ts b/dmp-frontend/src/app/ui/admin/dataset-profile/dataset-profile.module.ts index 07218c7ce..6a20faad6 100644 --- a/dmp-frontend/src/app/ui/admin/dataset-profile/dataset-profile.module.ts +++ b/dmp-frontend/src/app/ui/admin/dataset-profile/dataset-profile.module.ts @@ -53,6 +53,7 @@ import {DragulaModule} from 'ng2-dragula'; //matrial import {MatBadgeModule} from '@angular/material/badge'; import { DatasetProfileEditorSectionFieldSetComponent } from './editor/components/section-fieldset/dataset-profile-editor-section-fieldset.component'; +import { FinalPreviewComponent } from './editor/components/final-preview/final-preview.component'; @NgModule({ imports: [ @@ -106,12 +107,12 @@ import { DatasetProfileEditorSectionFieldSetComponent } from './editor/component DatasetProfileEditorValidatorFieldComponent, DatasetProfileTableOfContents, DatasetProfileTableOfContentsInternalSection, - DatasetProfileEditorSectionFieldSetComponent + DatasetProfileEditorSectionFieldSetComponent, + FinalPreviewComponent ], entryComponents: [ DialogConfirmationUploadDatasetProfiles - ], - providers:[VisibilityRulesService] + ] }) export class DatasetProfileModule { } diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/final-preview/final-preview.component.html b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/final-preview/final-preview.component.html new file mode 100644 index 000000000..39882e08c --- /dev/null +++ b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/final-preview/final-preview.component.html @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/final-preview/final-preview.component.scss b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/final-preview/final-preview.component.scss new file mode 100644 index 000000000..e69de29bb diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/final-preview/final-preview.component.ts b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/final-preview/final-preview.component.ts new file mode 100644 index 000000000..25afc4373 --- /dev/null +++ b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/final-preview/final-preview.component.ts @@ -0,0 +1,28 @@ +import { Component, Input, OnInit} from '@angular/core'; +import { Rule } from '@app/core/model/dataset-profile-definition/rule'; +import { VisibilityRulesService } from '@app/ui/misc/dataset-description-form/visibility-rules/visibility-rules.service'; + + +@Component({ + selector: 'app-final-preview-component', + templateUrl: './final-preview.component.html', + styleUrls: ['./final-preview.component.scss'], + providers:[VisibilityRulesService] +}) + +export class FinalPreviewComponent implements OnInit { + + + @Input() formGroup = null; + @Input() visibilityRules:Rule[] = []; + constructor(private visibilityRulesService: VisibilityRulesService){ + + } + + + + ngOnInit(): void { + this.visibilityRulesService.buildVisibilityRules(this.visibilityRules, this.formGroup); + } + +} diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/editor/dataset-profile-editor.component.html b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/dataset-profile-editor.component.html index 8484cfaf5..52eeb2322 100644 --- a/dmp-frontend/src/app/ui/admin/dataset-profile/editor/dataset-profile-editor.component.html +++ b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/dataset-profile-editor.component.html @@ -395,9 +395,16 @@ + + + + + + diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/editor/dataset-profile-editor.component.ts b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/dataset-profile-editor.component.ts index 490568b9f..29a0917c8 100644 --- a/dmp-frontend/src/app/ui/admin/dataset-profile/editor/dataset-profile-editor.component.ts +++ b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/dataset-profile-editor.component.ts @@ -53,7 +53,8 @@ const skipDisable: any[] = require('../../../../../assets/resources/skipDisable. selector: 'app-dataset-profile-editor-component', templateUrl: './dataset-profile-editor.component.html', styleUrls: ['./dataset-profile-editor.component.scss'], - animations:[...STEPPER_ANIMATIONS] + animations:[...STEPPER_ANIMATIONS], + providers:[VisibilityRulesService] }) export class DatasetProfileEditorComponent extends BaseComponent implements OnInit { @@ -200,7 +201,7 @@ export class DatasetProfileEditorComponent extends BaseComponent implements OnIn } // this.addSection(); // this.addPage(); - // this.visibilityRulesService.buildVisibilityRules([],this.form); + this.visibilityRulesService.buildVisibilityRules([],this.form); setTimeout(() => { this.steps = this.stepper.steps; }); @@ -227,7 +228,7 @@ export class DatasetProfileEditorComponent extends BaseComponent implements OnIn prepareForm() { - // this.visibilityRulesService.buildVisibilityRules([],this.form); + this.visibilityRulesService.buildVisibilityRules([],this.form); // this.form.setValidators([EditorCustomValidators.atLeastOneElementListValidator('pages'),EditorCustomValidators.pagesHaveAtLeastOneSection('pages', 'sections')]); // this.form.updateValueAndValidity(); this.form.valueChanges