@testing-library/user-event
Version:
Fire events the same way the user does
28 lines (25 loc) • 1.03 kB
JavaScript
import '../utils/click/isClickableInput.js';
import { writeDataTransferToClipboard } from '../utils/dataTransfer/Clipboard.js';
import '../utils/edit/isEditable.js';
import '../utils/edit/maxLength.js';
import '@testing-library/dom/dist/helpers.js';
import '../utils/keyDef/readNextDescriptor.js';
import '../utils/misc/level.js';
import '../options.js';
import { copySelection } from '../document/copySelection.js';
async function cut() {
const doc = this.config.document;
var _doc_activeElement;
const target = (_doc_activeElement = doc.activeElement) !== null && _doc_activeElement !== void 0 ? _doc_activeElement : /* istanbul ignore next */ doc.body;
const clipboardData = copySelection(target);
if (clipboardData.items.length === 0) {
return;
}
if (this.dispatchUIEvent(target, 'cut', {
clipboardData
}) && this.config.writeToClipboard) {
await writeDataTransferToClipboard(target.ownerDocument, clipboardData);
}
return clipboardData;
}
export { cut };