Some checks failed
CI/CD Pipeline / unit-tests (push) Failing after 1m16s
CI/CD Pipeline / integration-tests (push) Failing after 2m32s
CI/CD Pipeline / lint (push) Successful in 5m22s
CI/CD Pipeline / e2e-tests (push) Has been skipped
CI/CD Pipeline / build (push) Has been skipped
21 lines
743 B
JavaScript
21 lines
743 B
JavaScript
import { writeDataTransferToClipboard } from '../utils/dataTransfer/Clipboard.js';
|
|
import { copySelection } from '../document/copySelection.js';
|
|
|
|
async function copy() {
|
|
const doc = this.config.document;
|
|
var _doc_activeElement;
|
|
const target = (_doc_activeElement = doc.activeElement) !== null && _doc_activeElement !== undefined ? _doc_activeElement : /* istanbul ignore next */ doc.body;
|
|
const clipboardData = copySelection(target);
|
|
if (clipboardData.items.length === 0) {
|
|
return;
|
|
}
|
|
if (this.dispatchUIEvent(target, 'copy', {
|
|
clipboardData
|
|
}) && this.config.writeToClipboard) {
|
|
await writeDataTransferToClipboard(doc, clipboardData);
|
|
}
|
|
return clipboardData;
|
|
}
|
|
|
|
export { copy };
|