]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/root-helpers/utils.ts
Refactor feed component
[github/Chocobozzz/PeerTube.git] / client / src / root-helpers / utils.ts
index de4e08bf593f03b8d7e001b420a71c1303b13563..06591b95e25414187cd72f76a4fead42d1bac223 100644 (file)
@@ -9,6 +9,18 @@ function objectToUrlEncoded (obj: any) {
   return str.join('&')
 }
 
+function copyToClipboard (text: string) {
+  const el = document.createElement('textarea')
+  el.value = text
+  el.setAttribute('readonly', '')
+  el.style.position = 'absolute'
+  el.style.left = '-9999px'
+  document.body.appendChild(el)
+  el.select()
+  document.execCommand('copy')
+  document.body.removeChild(el)
+}
+
 // Thanks: https://github.com/uupaa/dynamic-import-polyfill
 function importModule (path: string) {
   return new Promise((resolve, reject) => {
@@ -45,12 +57,13 @@ function importModule (path: string) {
 }
 
 function wait (ms: number) {
-  return new Promise(res => {
+  return new Promise<void>(res => {
     setTimeout(() => res(), ms)
   })
 }
 
 export {
+  copyToClipboard,
   importModule,
   objectToUrlEncoded,
   wait