diff --git a/dmp-frontend/src/app/app.component.ts b/dmp-frontend/src/app/app.component.ts
index 567acb990..d6c0fb7d7 100644
--- a/dmp-frontend/src/app/app.component.ts
+++ b/dmp-frontend/src/app/app.component.ts
@@ -174,7 +174,9 @@ export class AppComponent implements OnInit, AfterViewInit {
ngOnDestroy() {
this.statusChangeSubscription.unsubscribe();
- this.sideNavSubscription.unsubscribe();
+ if(this.sideNavSubscription){
+ this.sideNavSubscription.unsubscribe();
+ }
}
login() {
diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/editor/animations/animations.ts b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/animations/animations.ts
new file mode 100644
index 000000000..3c3648e3d
--- /dev/null
+++ b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/animations/animations.ts
@@ -0,0 +1,47 @@
+import { animate, keyframes, state, style, transition, trigger } from "@angular/animations";
+
+export const STEPPER_ANIMATIONS = [
+ trigger('previous_btn',[
+ transition(':enter',[
+ style({'transform': 'translateX(100%)', 'z-index':'9999', 'opacity':0.4}),
+ animate('600ms ease-out', style({
+ 'transform': 'translateX(0)',
+ 'opacity':1
+ }))
+ ]),
+ transition(':leave',[
+ style({
+ 'transform': 'translateX(0)',
+ 'opacity':'1',
+ 'z-index':'9999'
+ }),
+ animate('800ms ease-out', keyframes([
+ style({'transform': 'translateX(120%)', offset:0.8}),
+ style({'opacity': '0.2', offset:0.96})
+ ]))
+ ])
+ ]),
+ trigger('next_btn', [
+ transition(':leave',[
+ style({opacity:1, position:'absolute', 'z-index':'9999'}),
+ animate('700ms ease-out', keyframes( [
+ style({ transform:'translateX(-100%)', offset:0.6}),
+ style({ opacity:'0.2', offset:0.87})
+ ]))
+ ]),
+ transition(':enter',[
+ style({opacity:0.3, 'z-index':'9999', transform:'translateX(-100%)'}),
+ animate('600ms ease-out', style({ opacity:'1', transform:'translateX(0)' }))
+ ])
+ ]),
+ trigger('finalize_btn',[
+ transition(':enter',[
+ style({opacity:0.3}),
+ animate('400ms ease-in', style({opacity:1}))
+ ]),
+ transition(':leave',[
+ style({opacity:1, position:'absolute'}),
+ animate('600ms ease-in', style({opacity:0.3}))
+ ])
+ ])
+];
\ No newline at end of file
diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/composite-field/dataset-profile-editor-composite-field.component.html b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/composite-field/dataset-profile-editor-composite-field.component.html
index 0bfc28c59..8cdbfaac0 100644
--- a/dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/composite-field/dataset-profile-editor-composite-field.component.html
+++ b/dmp-frontend/src/app/ui/admin/dataset-profile/editor/components/composite-field/dataset-profile-editor-composite-field.component.html
@@ -69,8 +69,9 @@