diff --git a/projects/valtimo/migration/ng-package.json b/projects/valtimo/migration/ng-package.json
index bcf1d0ac6..66097889b 100644
--- a/projects/valtimo/migration/ng-package.json
+++ b/projects/valtimo/migration/ng-package.json
@@ -3,5 +3,11 @@
   "dest": "../../../dist/valtimo/migration",
   "lib": {
     "entryFile": "src/public-api.ts"
-  }
+  },
+  "allowedNonPeerDependencies": [
+    "bpmn-js-properties-panel",
+    "@bpmn-io/properties-panel",
+    "camunda-bpmn-moddle",
+    "camunda-bpmn-js-behaviors"
+  ]
 }
diff --git a/projects/valtimo/migration/package.json b/projects/valtimo/migration/package.json
index 4f3f65f63..85477da78 100644
--- a/projects/valtimo/migration/package.json
+++ b/projects/valtimo/migration/package.json
@@ -7,6 +7,10 @@
     "@angular/core": "^17.2.2"
   },
   "dependencies": {
-    "tslib": "2.6.3"
+    "tslib": "2.6.3",
+    "bpmn-js-properties-panel": "5.26.0",
+    "@bpmn-io/properties-panel": "3.25.0",
+    "camunda-bpmn-moddle": "7.0.1",
+    "camunda-bpmn-js-behaviors": "1.7.0"
   }
 }
diff --git a/projects/valtimo/migration/src/lib/migration-process-diagram/migration-process-diagram.component.ts b/projects/valtimo/migration/src/lib/migration-process-diagram/migration-process-diagram.component.ts
index c7df10219..f1580fbaf 100644
--- a/projects/valtimo/migration/src/lib/migration-process-diagram/migration-process-diagram.component.ts
+++ b/projects/valtimo/migration/src/lib/migration-process-diagram/migration-process-diagram.component.ts
@@ -15,12 +15,12 @@
  */
 
 import {
+  AfterViewInit,
   Component,
   ElementRef,
   EventEmitter,
   Input,
   OnDestroy,
-  OnInit,
   Output,
   ViewChild,
 } from '@angular/core';
@@ -33,7 +33,7 @@ import {NGXLogger} from 'ngx-logger';
   templateUrl: './migration-process-diagram.component.html',
   styleUrls: ['./migration-process-diagram.component.scss'],
 })
-export class MigrationProcessDiagramComponent implements OnInit, OnDestroy {
+export class MigrationProcessDiagramComponent implements AfterViewInit, OnDestroy {
   private bpmnViewer: BpmnViewer;
   public flowNodeMap: any = null;
 
@@ -43,11 +43,13 @@ export class MigrationProcessDiagramComponent implements OnInit, OnDestroy {
 
   constructor(private logger: NGXLogger) {}
 
-  ngOnInit() {
+  ngAfterViewInit() {
     this.bpmnViewer = new BpmnViewer();
+    this.bpmnViewer.attachTo(this.el.nativeElement);
     this.bpmnViewer.on('import.done', ({error}: any) => {
       if (!error) {
         const canvas = this.bpmnViewer.get('canvas') as any;
+        console.log(canvas);
         canvas.zoom('fit-viewport', 'auto');
       }
     });
@@ -64,8 +66,9 @@ export class MigrationProcessDiagramComponent implements OnInit, OnDestroy {
   }
 
   public loadXml(xml: string): void {
-    this.bpmnViewer.attachTo(this.el.nativeElement);
     this.bpmnViewer.importXML(xml, err => {
+      if (err) console.log('error', err);
+      console.log('import', xml);
       this.logger.debug(err);
       const processElements = this.bpmnViewer
         .getDefinitions()
@@ -78,6 +81,7 @@ export class MigrationProcessDiagramComponent implements OnInit, OnDestroy {
         }
         return element.$type !== 'bpmn:SequenceFlow';
       });
+      console.log('test', processElements, this.flowNodeMap, this.name);
       this.loaded.emit(this.name);
     });
   }
diff --git a/projects/valtimo/migration/src/lib/migration.component.ts b/projects/valtimo/migration/src/lib/migration.component.ts
index e03e70655..c7e60081d 100644
--- a/projects/valtimo/migration/src/lib/migration.component.ts
+++ b/projects/valtimo/migration/src/lib/migration.component.ts
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-import {AfterViewInit, Component, OnInit, ViewChild} from '@angular/core';
-import {ProcessService, ProcessDefinition} from '@valtimo/process';
+import {AfterViewInit, Component, ViewChild} from '@angular/core';
+import {ProcessDefinition, ProcessService} from '@valtimo/process';
 import {MigrationProcessDiagramComponent} from './migration-process-diagram/migration-process-diagram.component';
 import {NGXLogger} from 'ngx-logger';
 import {AlertService} from '@valtimo/components';
@@ -25,7 +25,7 @@ import {AlertService} from '@valtimo/components';
   templateUrl: './migration.component.html',
   styleUrls: ['./migration.component.scss'],
 })
-export class MigrationComponent implements OnInit, AfterViewInit {
+export class MigrationComponent implements AfterViewInit, AfterViewInit {
   public processDefinitions: ProcessDefinition[] = [];
   public selectedVersions = {
     source: [],
@@ -65,15 +65,12 @@ export class MigrationComponent implements OnInit, AfterViewInit {
     private alertService: AlertService
   ) {}
 
-  ngOnInit() {
-    this.loadProcessDefinitions();
-  }
-
   ngAfterViewInit() {
     this.diagram = {
       source: this.sourceDiagram,
       target: this.targetDiagram,
     };
+    this.loadProcessDefinitions();
   }
 
   public get taskMappingLength() {
@@ -123,6 +120,7 @@ export class MigrationComponent implements OnInit, AfterViewInit {
 
   loadProcessDefinitionXML(id: string, type: string) {
     this.processService.getProcessDefinitionXml(id).subscribe(xml => {
+      if (!xml.bpmn20Xml) return;
       this.diagram[type].loadXml(xml['bpmn20Xml']);
       this.selectedId[type] = id;
     });