@gecut/utilities
Version:
The ultimate utility toolkit from Gecut Company, crafted with TypeScript for optimal speed and efficiency. Designed to boost productivity with a suite of fast and optimized tools.
43 lines • 1.25 kB
JavaScript
function writeiOS(text) {
let textArea;
function createTextArea(text) {
textArea = document.createElement('textarea');
textArea.value = text;
document.body.appendChild(textArea);
}
function selectText() {
const range = document.createRange();
const selection = window.getSelection();
range.selectNodeContents(textArea);
selection?.removeAllRanges();
selection?.addRange(range);
textArea.setSelectionRange(0, 999999);
}
function copyToClipboard() {
document.execCommand('copy');
document.body.removeChild(textArea);
}
return new Promise((resolve, reject) => {
try {
createTextArea(text);
selectText();
copyToClipboard();
resolve();
}
catch (error) {
reject(error);
}
});
}
function write(text) {
return new Promise((resolve, reject) => {
if ('clipboard' in navigator) {
navigator.clipboard.writeText(text).then(resolve).catch(reject);
}
else {
reject();
}
});
}
export default { write: 'clipboard' in navigator ? write : writeiOS };
//# sourceMappingURL=clipboard.js.map