nextcloud/apps/files/src/utils/dragUtils.ts
Andy Scherzinger 5b7dcc1427
chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-29 08:58:16 +02:00

25 lines
666 B
TypeScript

/**
* SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
import type { Node } from '@nextcloud/files'
import DragAndDropPreview from '../components/DragAndDropPreview.vue'
import Vue from 'vue'
const Preview = Vue.extend(DragAndDropPreview)
let preview: Vue
export const getDragAndDropPreview = async (nodes: Node[]): Promise<Element> => {
return new Promise((resolve) => {
if (!preview) {
preview = new Preview().$mount()
document.body.appendChild(preview.$el)
}
preview.update(nodes)
preview.$on('loaded', () => {
resolve(preview.$el)
preview.$off('loaded')
})
})
}