scratch extesion: clipboard by rssaromeo

none

当前为 2025-01-26 提交的版本,查看 最新版本

// ==UserScript==
// @name         scratch extesion: clipboard by rssaromeo
// @version      1
// @description  none
// @run-at       document-start
// @author       rssaromeo
// @license      GPLv3
// @match        *://*/*
// @icon         data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAAXNSR0IB2cksfwAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAHJQTFRFAAAAEIijAo2yAI60BYyuF4WaFIifAY6zBI2wB4usGIaZEYigIoiZCIyrE4igG4iYD4mjEomhFoedCoqpDIqnDomlBYyvE4efEYmiDYqlA42xBoytD4mkCYqqGYSUFYidC4qoC4upAo6yCoupDYqmCYur4zowOQAAACZ0Uk5TAO////9vr////1+/D/+/L+/Pf/////+f3///////H4////////+5G91rAAACgUlEQVR4nM2Y22KjIBCGidg1264liZqDadK03X3/V2wNKHMC7MpF/xthHD5mgERAqZhWhfYqH6K+Qf2qNNf625hCoFj9/gblMUi5q5jLkXLCKudgyiRm0FMK82cWJp1fLbV5VmvJbCIc0GCYaFqqlDJgADdBjncqAXYobm1xh72aFMflbysteFfdy2Yi1XGOm5HGBzQ1dq7TzEoxjeNTjQZb7VA3e1c7+ImgasAgQ9+xusNVNZIo5xmOMgihIS2PbCQIiHEUdTvhxCcS/kPomfFI2zHy2PkWmA6aNatIJpKFJyekyy02xh5Y3DI9T4aOT6VhIUrsNTFp1pf79Z4SIIVDegl6IJO6cHiL/GimIZDhgTu/BlYWCQzHMl0zBWT/T3KAhtxOuUB9FtBrpsz0RV4xsjHmW+UCaffcSy/5viMGer0/6HdFNMZBq/vjJL38H9Dqx4Fuy0Em12DbZy+9pGtiDijbglwAehyj11n0tRD3WUBm+lwulE/8h4BuA+iWAQQnteg2Xm63WQLTpnMnpjdge0Mgu/GRPsV4xdjQ94Lfi624fabhDkfUqIKNrM64Q837v8yL0prasepCgrtvw1sJpoqanGEX7b5mQboNW8eawXaWXTMfMGxub472hzWzHSn6Sg2G9+6TAyRruE71s+zAzjWaknoyJCQzwxrghH2k5FDT4eqWunuNxyN9QCGcxVod5oADbYnIUkDTGZEf1xDJnSFteQ3KdsT8zYDMQXcHxsevcLH1TrsABzkNPyA/L7b0jg704viMMlpQI96WsHknCt/3YH0kOEo9zcGkwrFK39ck72rmoehmKqo2RKlilzSy/nJKEV45CT38myJp456fezktHjN5aeMAAAAASUVORK5CYII=
// @grant        none
// @tag          lib
// @namespace https://greasyfork.org/users/1184528
// ==/UserScript==
;(async () => {
  await loadlib("libloader").waitforlib("scratchextesnsionmanager")
  // debugger
  const { newext, newmenu, newblock, bt, inp, gettarget, totype } =
    loadlib("scratchextesnsionmanager")
  var a = loadlib("allfuncs")

  newext(
    "clipboard",
    "rssaromeo",
    class {
      setclipcmd({ a: text }) {
        navigator.clipboard.writeText(text)
      }
      async setclipbool({ a: text }) {
        try {
          await navigator.clipboard.writeText(text)
          return true
        } catch (error) {
          return false
        }
      }
      async getclip() {
        return await navigator.clipboard.readText()
      }
    },
    [
      newblock(bt.cmd, "setclipcmd", "try to set the clipboard [a]", [
        [inp.str, "new clipboard text"],
      ]),
      newblock(bt.bool, "setclipbool", "set the clipboard [a]", [
        [inp.str, "new clipboard text"],
      ]),
      newblock(bt.ret, "getclip", "clip"),
    ],
    "bb9e16",
    "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABAAgMAAADXB5lNAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAxQTFRFAAAA1LIZh3EQ//7+4yuyIQAAAAR0Uk5TAP///7MtQIgAAAFXSURBVHictZM9coQwDIWtgiP4NGnYInUo7NPlCPbO0KeA+/gILsh7shGQzSZpwuww6w/pSdaPOD5+xGvL/Ct8DZPiOu9ADboJgQTXnrI2AA8J/Ewfgqg2JEkBTioCB/yEHj1Koo8whn8lqe8r3ACihJZYyjASSAxTbC4JIgIJf2uJlI+5zgIJ+FA+lCVvGeAWJCSmU9ZEgO8GgISaw6SgQqIIY9ptCRBkjP22kKiiQez6aRME6Vfh9XfAyiARSCwSGSapAcIg9Yiob7nV/oWpPwI/ngBS/x7cA5N4BqI7AZeeABP9N/C3u/wMfq8YinwAFFnbcFR9eewLWnnt3DFRqNGCZn/pftGBucyH0+Z2CY6UO8ZDRXQsDegUmkQTITiNFEcbRwurw4+jRWnr4cfuU9a2QPiuJjjZzqlK0j3kVjJs5NfT3u5R+qrHvRzuuvutbs5M1MB9Akq0BTbMKt+oAAAAAElFTkSuQmCC"
  )
})()