From e541bc4888909135e9b4f6e3b740c392979e2849 Mon Sep 17 00:00:00 2001
From: Christoph Reiter <reiter.christoph@gmail.com>
Date: Tue, 27 Apr 2021 12:11:34 +0200
Subject: [PATCH] file-handling: fix a dep cycle

FileHandlingClipboard and FileSink depend on each other. Register
the later at runtime so we don't get a dependecy cycle for imports.
---
 packages/file-handling/src/dbp-file-handling-clipboard.js | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/packages/file-handling/src/dbp-file-handling-clipboard.js b/packages/file-handling/src/dbp-file-handling-clipboard.js
index 0e53ad0f..2aa25b81 100644
--- a/packages/file-handling/src/dbp-file-handling-clipboard.js
+++ b/packages/file-handling/src/dbp-file-handling-clipboard.js
@@ -11,7 +11,6 @@ import {classMap} from 'lit-html/directives/class-map.js';
 import * as commonUtils from "@dbp-toolkit/common/utils";
 import {name as pkgName} from "../package.json";
 import {send} from "@dbp-toolkit/common/notification";
-import {FileSink} from "./file-sink";
 
 
 /**
@@ -39,13 +38,14 @@ export class FileHandlingClipboard extends ScopedElementsMixin(DBPLitElement) {
         this.nextcloudPath = '';
         this.nextcloudFileURL = '';
 
+        // To avoid a cyclic dependency
+        import('./file-sink').then(({ FileSink }) => this.defineScopedElement('dbp-file-sink', FileSink));
     }
 
     static get scopedElements() {
         return {
             'dbp-icon': Icon,
             'dbp-mini-spinner': MiniSpinner,
-            'dbp-file-sink': FileSink,
         };
     }
 
-- 
GitLab