mirror of
https://ghfast.top/https://github.com/StarCitizenToolBox/StarCitizenBoxBrowserEx.git
synced 2025-05-12 15:21:28 +08:00
fix: remove rsi_hangar_fix script
This commit is contained in:
parent
a6d286e905
commit
755b8255b8
2
dist/chrome/background/service_worker.js
vendored
2
dist/chrome/background/service_worker.js
vendored
@ -1 +1 @@
|
||||
(()=>{var e={},s={};function t(r){var n=s[r];if(void 0!==n)return n.exports;var a=s[r]={exports:{}};return e[r](a,a.exports,t),a.exports}t.rv=()=>"1.3.9",t.ruid="bundler=rspack@1.3.9";let r=null;function n(e){return new URL(e).hostname}async function a(){console.log("Localization Version ===",r=await c("versions.json"))}async function o(e,s){if(console.log("url ==="+e),null==r)return await a(),o(e,s);if(null!=s&&!s)return[];let t=r,n={};e.includes("robertsspaceindustries.com")?(n["zh-CN"]=await c("zh-CN-rsi.json",{cacheKey:"zh-CN",version:t.rsi}),n.concierge=await c("concierge.json",{cacheKey:"concierge",version:t.concierge}),n.orgs=await c("orgs.json",{cacheKey:"orgs",version:t.orgs}),n.address=await c("addresses.json",{cacheKey:"addresses",version:t.addresses}),n.hangar=await c("hangar.json",{cacheKey:"hangar",version:t.hangar})):e.includes("uexcorp.space")?n.UEX=await c("zh-CN-uex.json",{cacheKey:"uex",version:t.uex}):e.includes("erkul.games")?n.DPS=await c("zh-CN-dps.json",{cacheKey:"dps",version:t.dps}):s&&(n["zh-CN"]=await c("zh-CN-rsi.json",{cacheKey:"zh-CN",version:t.rsi}),n.concierge=await c("concierge.json",{cacheKey:"concierge",version:t.concierge}),n.orgs=await c("orgs.json",{cacheKey:"orgs",version:t.orgs}),n.address=await c("addresses.json",{cacheKey:"address",version:t.addresses}),n.hangar=await c("hangar.json",{cacheKey:"hangar",version:t.hangar}),n.UEX=await c("zh-CN-uex.json",{cacheKey:"uex",version:t.uex}),n.DPS=await c("zh-CN-dps.json",{cacheKey:"dps",version:t.dps}));let i=[];function l(e){i.push(...function(e,s){let t=[],r=e[s];if("object"==typeof r)for(let[e,s]of Object.entries(r)){let r=e.toString().trim().toLowerCase().replace(/\xa0/g," ").replace(/\s{2,}/g," ");t.push({word:r,replacement:String(s)})}return t}(n,e))}if(e.includes("robertsspaceindustries.com")){if(e.startsWith("https://robertsspaceindustries.com/spectrum/community/"))return[];l("zh-CN"),(e.startsWith("https://robertsspaceindustries.com/orgs")||e.startsWith("https://robertsspaceindustries.com/citizens")||e.startsWith("https://robertsspaceindustries.com/account/organization"))&&(i.push({word:"members",replacement:"名成员"}),l("orgs")),e.startsWith("https://robertsspaceindustries.com/account/addresses")&&l("address"),e.startsWith("https://robertsspaceindustries.com/account/referral-program")&&i.push({word:"Total recruits: ",replacement:"总邀请数:"},{word:"Prospects ",replacement:"未完成的邀请"},{word:"Recruits",replacement:"已完成的邀请"}),e.startsWith("https://robertsspaceindustries.com/account/concierge")&&(i=[],l("concierge")),e.startsWith("https://robertsspaceindustries.com/account/pledges")&&l("hangar")}else e.includes("uexcorp.space")?l("UEX"):e.includes("erkul.games")?l("DPS"):s&&(l("zh-CN"),i.push({word:"members",replacement:"名成员"}),l("orgs"),l("address"),i.push({word:"Total recruits: ",replacement:"总邀请数:"},{word:"Prospects ",replacement:"未完成的邀请"},{word:"Recruits",replacement:"已完成的邀请"}),l("concierge"),l("hangar"),l("UEX"),l("DPS"));return i}async function c(e,s={}){let{cacheKey:t="",version:r=null}=s;if(t&&""!==t){let e=await i(`${t}_version`),s=await i(t);if(s&&"object"==typeof s&&Object.keys(s).length>0&&e===r)return s}let n=new Date,a=await fetch("https://git.scbox.xkeyc.cn/SCToolBox/ScWeb_Chinese_Translate/raw/branch/main/json/locales/"+e,{method:"GET",mode:"cors"}),o=new Date,u=await a.json();if(t&&""!==t){let e=o.getTime()-n.getTime();console.log(`update ${t} v == ${r} time == ${e/1e3}s`),await l(t,u),await l(`${t}_version`,r)}return u}function i(e){return new Promise(s=>{chrome.storage.local.get([e],t=>{let r=t[e];if(void 0===r)return s(null);s(r)})})}function l(e,s){return new Promise(t=>{let r={};r[e]=s,chrome.storage.local.set(r,()=>{t()})})}chrome.runtime.onInstalled.addListener(function(){a().then(e=>{}),console.log("SWTT init")}),chrome.runtime.onMessage.addListener(function(e,s,t){if("_loadLocalizationData"===e.action){let s=n(e.url);i(`_translate_switch_${s}`).then(r=>{console.log("GET domain ===",s,"enableManual === ",r),o(e.url,r).then(e=>{t({result:e})})})}else if("_setTranslateSwitch"===e.action){let s=n(e.url);l(`_translate_switch_${s}`,e.enableManual).then(()=>{console.log("SET translate switch ===",s,"enableManual === ",e.enableManual),t({result:!0})})}return!0}),chrome.runtime.onInstalled.addListener(function(){chrome.contextMenus.create({id:"translate",title:"切换翻译",contexts:["all"]})}),chrome.contextMenus.onClicked.addListener((e,s)=>{console.log("contextMenus",e,s);let t="manual";s&&s.url&&["robertsspaceindustries.com","erkul.games","uexcorp.space"].find(e=>s.url.includes(e))&&(t=s.url),o(t,!0).then(e=>{s&&void 0!==s.id&&chrome.tabs.sendMessage(s.id,{action:"_toggleTranslation",data:e}).then(e=>{})})})})();
|
||||
(()=>{var e={},s={};function t(r){var n=s[r];if(void 0!==n)return n.exports;var a=s[r]={exports:{}};return e[r](a,a.exports,t),a.exports}t.rv=()=>"1.3.8",t.ruid="bundler=rspack@1.3.8";let r=null;function n(e){return new URL(e).hostname}async function a(){console.log("Localization Version ===",r=await c("versions.json"))}async function o(e,s){if(console.log("url ==="+e),null==r)return await a(),o(e,s);if(null!=s&&!s)return[];let t=r,n={};e.includes("robertsspaceindustries.com")?(n["zh-CN"]=await c("zh-CN-rsi.json",{cacheKey:"zh-CN",version:t.rsi}),n.concierge=await c("concierge.json",{cacheKey:"concierge",version:t.concierge}),n.orgs=await c("orgs.json",{cacheKey:"orgs",version:t.orgs}),n.address=await c("addresses.json",{cacheKey:"addresses",version:t.addresses}),n.hangar=await c("hangar.json",{cacheKey:"hangar",version:t.hangar})):e.includes("uexcorp.space")?n.UEX=await c("zh-CN-uex.json",{cacheKey:"uex",version:t.uex}):e.includes("erkul.games")?n.DPS=await c("zh-CN-dps.json",{cacheKey:"dps",version:t.dps}):s&&(n["zh-CN"]=await c("zh-CN-rsi.json",{cacheKey:"zh-CN",version:t.rsi}),n.concierge=await c("concierge.json",{cacheKey:"concierge",version:t.concierge}),n.orgs=await c("orgs.json",{cacheKey:"orgs",version:t.orgs}),n.address=await c("addresses.json",{cacheKey:"address",version:t.addresses}),n.hangar=await c("hangar.json",{cacheKey:"hangar",version:t.hangar}),n.UEX=await c("zh-CN-uex.json",{cacheKey:"uex",version:t.uex}),n.DPS=await c("zh-CN-dps.json",{cacheKey:"dps",version:t.dps}));let i=[];function l(e){i.push(...function(e,s){let t=[],r=e[s];if("object"==typeof r)for(let[e,s]of Object.entries(r)){let r=e.toString().trim().toLowerCase().replace(/\xa0/g," ").replace(/\s{2,}/g," ");t.push({word:r,replacement:String(s)})}return t}(n,e))}if(e.includes("robertsspaceindustries.com")){if(e.startsWith("https://robertsspaceindustries.com/spectrum/community/"))return[];l("zh-CN"),(e.startsWith("https://robertsspaceindustries.com/orgs")||e.startsWith("https://robertsspaceindustries.com/citizens")||e.startsWith("https://robertsspaceindustries.com/account/organization"))&&(i.push({word:"members",replacement:"名成员"}),l("orgs")),e.startsWith("https://robertsspaceindustries.com/account/addresses")&&l("address"),e.startsWith("https://robertsspaceindustries.com/account/referral-program")&&i.push({word:"Total recruits: ",replacement:"总邀请数:"},{word:"Prospects ",replacement:"未完成的邀请"},{word:"Recruits",replacement:"已完成的邀请"}),e.startsWith("https://robertsspaceindustries.com/account/concierge")&&(i=[],l("concierge")),e.startsWith("https://robertsspaceindustries.com/account/pledges")&&l("hangar")}else e.includes("uexcorp.space")?l("UEX"):e.includes("erkul.games")?l("DPS"):s&&(l("zh-CN"),i.push({word:"members",replacement:"名成员"}),l("orgs"),l("address"),i.push({word:"Total recruits: ",replacement:"总邀请数:"},{word:"Prospects ",replacement:"未完成的邀请"},{word:"Recruits",replacement:"已完成的邀请"}),l("concierge"),l("hangar"),l("UEX"),l("DPS"));return i}async function c(e,s={}){let{cacheKey:t="",version:r=null}=s;if(t&&""!==t){let e=await i(`${t}_version`),s=await i(t);if(s&&"object"==typeof s&&Object.keys(s).length>0&&e===r)return s}let n=new Date,a=await fetch("https://git.scbox.xkeyc.cn/SCToolBox/ScWeb_Chinese_Translate/raw/branch/main/json/locales/"+e,{method:"GET",mode:"cors"}),o=new Date,u=await a.json();if(t&&""!==t){let e=o.getTime()-n.getTime();console.log(`update ${t} v == ${r} time == ${e/1e3}s`),await l(t,u),await l(`${t}_version`,r)}return u}function i(e){return new Promise(s=>{chrome.storage.local.get([e],t=>{let r=t[e];if(void 0===r)return s(null);s(r)})})}function l(e,s){return new Promise(t=>{let r={};r[e]=s,chrome.storage.local.set(r,()=>{t()})})}chrome.runtime.onInstalled.addListener(function(){a().then(e=>{}),console.log("SWTT init")}),chrome.runtime.onMessage.addListener(function(e,s,t){if("_loadLocalizationData"===e.action){let s=n(e.url);i(`_translate_switch_${s}`).then(r=>{console.log("GET domain ===",s,"enableManual === ",r),o(e.url,r).then(e=>{t({result:e})})})}else if("_setTranslateSwitch"===e.action){let s=n(e.url);l(`_translate_switch_${s}`,e.enableManual).then(()=>{console.log("SET translate switch ===",s,"enableManual === ",e.enableManual),t({result:!0})})}return!0}),chrome.runtime.onInstalled.addListener(function(){chrome.contextMenus.create({id:"translate",title:"切换翻译",contexts:["all"]})}),chrome.contextMenus.onClicked.addListener((e,s)=>{console.log("contextMenus",e,s);let t="manual";s&&s.url&&["robertsspaceindustries.com","erkul.games","uexcorp.space"].find(e=>s.url.includes(e))&&(t=s.url),o(t,!0).then(e=>{s&&void 0!==s.id&&chrome.tabs.sendMessage(s.id,{action:"_toggleTranslation",data:e}).then(e=>{})})})})();
|
2
dist/chrome/content_scripts/content-0.js
vendored
2
dist/chrome/content_scripts/content-0.js
vendored
File diff suppressed because one or more lines are too long
2
dist/chrome/content_scripts/content-1.js
vendored
2
dist/chrome/content_scripts/content-1.js
vendored
File diff suppressed because one or more lines are too long
1
dist/chrome/content_scripts/content-2.js
vendored
1
dist/chrome/content_scripts/content-2.js
vendored
@ -1 +0,0 @@
|
||||
(()=>{var e={},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var a=t[n]={exports:{}};return e[n](a,a.exports,r),a.exports}r.rv=()=>"1.3.9",r.ruid="bundler=rspack@1.3.9",function(){function e(t,r,n,o=100){let a=setInterval(()=>{let e=t.querySelector(r);e&&(clearInterval(a),n(e))},o)}function t(e){if(!e||e.parentNode.querySelector('a[data-cy-id="button"][href="/account/pledges"]'))return;let t=e.cloneNode(!0);t.href="/account/pledges";let r=t.querySelector('span[data-cy-id="button__text"]');r&&(r.innerText="My Hangar");let n=t.querySelector('i[data-cy-id="button__icon"]');n&&(n.className="a-button__icon a-icon -gridView"),e.parentNode.insertBefore(t,e)}e(document,"#sidePanel",r=>{new MutationObserver(r=>{for(let n of r)"childList"===n.type&&n.addedNodes.length>0&&n.addedNodes.forEach(r=>{1===r.nodeType&&e(r,'a[data-cy-id="button"][href="/account/settings"]',e=>{t(e)})})}).observe(r,{childList:!0,subtree:!0});let n=r.querySelector('a[data-cy-id="button"][href="/account/settings"]');n&&t(n)})}()})();
|
10
dist/chrome/manifest.json
vendored
10
dist/chrome/manifest.json
vendored
@ -45,16 +45,6 @@
|
||||
],
|
||||
"run_at": "document_end",
|
||||
"css": []
|
||||
},
|
||||
{
|
||||
"matches": [
|
||||
"https://robertsspaceindustries.com/*"
|
||||
],
|
||||
"js": [
|
||||
"content_scripts/content-2.js"
|
||||
],
|
||||
"run_at": "document_idle",
|
||||
"css": []
|
||||
}
|
||||
]
|
||||
}
|
10
dist/firefox/manifest.json
vendored
10
dist/firefox/manifest.json
vendored
@ -47,16 +47,6 @@
|
||||
],
|
||||
"run_at": "document_end",
|
||||
"css": []
|
||||
},
|
||||
{
|
||||
"matches": [
|
||||
"https://robertsspaceindustries.com/*"
|
||||
],
|
||||
"js": [
|
||||
"content_scripts/content-2.js"
|
||||
],
|
||||
"run_at": "document_idle",
|
||||
"css": []
|
||||
}
|
||||
]
|
||||
}
|
@ -46,15 +46,6 @@
|
||||
"thirdparty/jquery.min.js"
|
||||
],
|
||||
"run_at": "document_end"
|
||||
},
|
||||
{
|
||||
"matches": [
|
||||
"https://robertsspaceindustries.com/*"
|
||||
],
|
||||
"js": [
|
||||
"rsi_hangar_fix.ts"
|
||||
],
|
||||
"run_at": "document_idle"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,93 +0,0 @@
|
||||
// from https://github.com/cfdxkk/RSI-Hangar-Button
|
||||
// LICENSE GLWT(Good Luck With That) Public License
|
||||
(function () {
|
||||
/**
|
||||
* 寻找元素直到元素被加载
|
||||
* @param dom 查找的根元素
|
||||
* @param selector 元素的查找
|
||||
* @param callback 查找到的回调
|
||||
* @param interval 查找的间隔,默认 100 毫秒
|
||||
*/
|
||||
function waitForElement(dom, selector, callback, interval = 100) {
|
||||
const checkExist = setInterval(() => {
|
||||
const element = dom.querySelector(selector)
|
||||
if (element) {
|
||||
clearInterval(checkExist) // 停止轮询
|
||||
callback(element)
|
||||
}
|
||||
}, interval)
|
||||
}
|
||||
|
||||
/**
|
||||
* 开始监听抽屉,如果监听到点击事件,则添加按钮
|
||||
* @param element
|
||||
*/
|
||||
function startObserve(element) {
|
||||
// 创建一个 MutationObserver 实例,监听元素的子元素变化
|
||||
const observer = new MutationObserver((mutationsList) => {
|
||||
for (const mutation of mutationsList) {
|
||||
if (mutation.type === 'childList' && mutation.addedNodes.length > 0) {
|
||||
mutation.addedNodes.forEach(node => {
|
||||
if (node.nodeType === 1) { // 只处理元素节点 (忽略文本节点)
|
||||
waitForElement(node, "a[data-cy-id=\"button\"][href=\"/account/settings\"]", (button) => {
|
||||
copyAndAddButton(button)
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
// 监听子节点变化,并对子树内的变化也进行监听
|
||||
observer.observe(element, { childList: true, subtree: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 复制原有按钮,将其修改为机库按钮并插入到原按钮的上方
|
||||
* 在插入前先检查是否已经存在对应的按钮
|
||||
* @param {HTMLElement} button 原始按钮
|
||||
*/
|
||||
function copyAndAddButton(button) {
|
||||
if (!button) return
|
||||
|
||||
// 如果已经存在 href 为 /account/pledges 的按钮,则不再添加
|
||||
if (button.parentNode.querySelector('a[data-cy-id="button"][href="/account/pledges"]')) {
|
||||
return
|
||||
}
|
||||
// 复制元素
|
||||
const hangarButton = button.cloneNode(true)
|
||||
|
||||
// 修改 href
|
||||
hangarButton.href = "/account/pledges"
|
||||
|
||||
// 查找按钮中的文本部分
|
||||
const hangarButtonText = hangarButton.querySelector('span[data-cy-id="button__text"]')
|
||||
|
||||
// 修改文本
|
||||
if (hangarButtonText) {
|
||||
hangarButtonText.innerText = "My Hangar"
|
||||
}
|
||||
|
||||
// 查找按钮中的图标部分
|
||||
const hangarButtonIcon = hangarButton.querySelector('i[data-cy-id="button__icon"]')
|
||||
|
||||
// 修改图标
|
||||
if (hangarButtonIcon) {
|
||||
hangarButtonIcon.className = "a-button__icon a-icon -gridView"
|
||||
}
|
||||
|
||||
// 插入到目标元素的前方
|
||||
button.parentNode.insertBefore(hangarButton, button)
|
||||
}
|
||||
|
||||
// 开始查找抽屉,如果找到执行监听回调
|
||||
waitForElement(document, "#sidePanel", (rsiSidePanel) => {
|
||||
startObserve(rsiSidePanel)
|
||||
|
||||
// 初始检查:防止首次打开抽屉时按钮已经存在,MutationObserver 不触发
|
||||
const button = rsiSidePanel.querySelector('a[data-cy-id="button"][href="/account/settings"]')
|
||||
if (button) {
|
||||
copyAndAddButton(button)
|
||||
}
|
||||
})
|
||||
})()
|
Loading…
x
Reference in New Issue
Block a user