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
23 lines
765 B
JavaScript
23 lines
765 B
JavaScript
'use strict';
|
|
|
|
var Clipboard = require('../utils/dataTransfer/Clipboard.js');
|
|
var copySelection = require('../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.copySelection(target);
|
|
if (clipboardData.items.length === 0) {
|
|
return;
|
|
}
|
|
if (this.dispatchUIEvent(target, 'copy', {
|
|
clipboardData
|
|
}) && this.config.writeToClipboard) {
|
|
await Clipboard.writeDataTransferToClipboard(doc, clipboardData);
|
|
}
|
|
return clipboardData;
|
|
}
|
|
|
|
exports.copy = copy;
|