From f245fb048bee2cfa73a3bd2e0b7b3f3733f5e367 Mon Sep 17 00:00:00 2001 From: woni <320753691@qq.com> Date: Sat, 4 Nov 2023 08:19:08 +0800 Subject: [PATCH] add adblock content script --- -H | 6 --- -s | 9 ---- crx.zip | Bin 4381 -> 0 bytes crx/adblock-cs.js | 20 +++++++ crx/index.js | 132 +++++++++++++++++++++++----------------------- crx/manifest.json | 9 ++++ crx/sw.js | 40 +++++++------- publish-addon.sh | 3 +- 8 files changed, 117 insertions(+), 102 deletions(-) delete mode 100644 -H delete mode 100644 -s delete mode 100644 crx.zip create mode 100644 crx/adblock-cs.js diff --git a/-H b/-H deleted file mode 100644 index 9d20070..0000000 --- a/-H +++ /dev/null @@ -1,6 +0,0 @@ -HTTP/1.1 411 Length Required -Content-Type: text/html; charset=us-ascii -Date: Fri, 03 Nov 2023 16:19:55 GMT -Connection: close -Content-Length: 344 - diff --git a/-s b/-s deleted file mode 100644 index c8f11ce..0000000 --- a/-s +++ /dev/null @@ -1,9 +0,0 @@ -HTTP/1.1 100 Continue - -HTTP/1.1 202 Accepted -Content-Length: 0 -Location: 9a95fdfe-adfe-4e98-be34-70d029205fea -Strict-Transport-Security: max-age=31536000; includeSubDomains -Request-Context: appId=cid-v1:23f44029-850d-47f4-8c9f-200d01ff4866 -Date: Fri, 03 Nov 2023 16:20:15 GMT - diff --git a/crx.zip b/crx.zip deleted file mode 100644 index b74b7cfc22defc928b060f0bf29f81fde07d59c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4381 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 s.id === DYNAMIC_SCRIPT_ID); -} +// async function isDynamicContentScriptRegistered() { +// const scripts = await chrome.scripting.getRegisteredContentScripts(); +// return scripts.some((s) => s.id === DYNAMIC_SCRIPT_ID); +// } -async function getActiveTab() { - const [tab] = await chrome.tabs.query({ active: true, lastFocusedWindow: true }); - return tab; -} +// async function getActiveTab() { +// const [tab] = await chrome.tabs.query({ active: true, lastFocusedWindow: true }); +// return tab; +// } -document.querySelector('#addRecord').addEventListener('click', async () => { +// document.querySelector('#addRecord').addEventListener('click', async () => { - console.log('[Demo] =============================================='); - console.log('[Demo] Test send message from popup script to content script'); - const tab = await getActiveTab(); - const ret = await chrome.tabs.sendMessage(tab.id, { msg: 'ping from popup script', func: 'addRecord' }); - console.log('[Demo] receive', ret); +// console.log('[Demo] =============================================='); +// console.log('[Demo] Test send message from popup script to content script'); +// const tab = await getActiveTab(); +// const ret = await chrome.tabs.sendMessage(tab.id, { msg: 'ping from popup script', func: 'addRecord' }); +// console.log('[Demo] receive', ret); -}); +// }); -document.querySelector('#deleteRecord').addEventListener('click', async () => { +// document.querySelector('#deleteRecord').addEventListener('click', async () => { - console.log('[Demo] =============================================='); - console.log('[Demo] Test send message from popup script to content script'); - const tab = await getActiveTab(); - const ret = await chrome.tabs.sendMessage(tab.id, { msg: 'ping from popup script', func: 'deleteRecord' }); - console.log('[Demo] receive', ret); +// console.log('[Demo] =============================================='); +// console.log('[Demo] Test send message from popup script to content script'); +// const tab = await getActiveTab(); +// const ret = await chrome.tabs.sendMessage(tab.id, { msg: 'ping from popup script', func: 'deleteRecord' }); +// console.log('[Demo] receive', ret); -}); +// }); -var port = null; +// var port = null; -function appendMessage(text) { - document.getElementById('response').innerHTML += "

" + text + "

"; -} +// function appendMessage(text) { +// document.getElementById('response').innerHTML += "

" + text + "

"; +// } -function updateUiState() { - if (port) { - document.getElementById('connect-button').style.display = 'none'; - document.getElementById('input-text').style.display = 'block'; - document.getElementById('send-message-button').style.display = 'block'; - } else { - document.getElementById('connect-button').style.display = 'block'; - document.getElementById('input-text').style.display = 'none'; - document.getElementById('send-message-button').style.display = 'none'; - } -} +// function updateUiState() { +// if (port) { +// document.getElementById('connect-button').style.display = 'none'; +// document.getElementById('input-text').style.display = 'block'; +// document.getElementById('send-message-button').style.display = 'block'; +// } else { +// document.getElementById('connect-button').style.display = 'block'; +// document.getElementById('input-text').style.display = 'none'; +// document.getElementById('send-message-button').style.display = 'none'; +// } +// } -function sendNativeMessage() { - message = { "text": document.getElementById('input-text').value }; - port.postMessage(message); - appendMessage("Sent message: " + JSON.stringify(message) + ""); -} +// function sendNativeMessage() { +// message = { "text": document.getElementById('input-text').value }; +// port.postMessage(message); +// appendMessage("Sent message: " + JSON.stringify(message) + ""); +// } -function onNativeMessage(message) { - appendMessage("Received message: " + JSON.stringify(message) + ""); -} +// function onNativeMessage(message) { +// appendMessage("Received message: " + JSON.stringify(message) + ""); +// } -function onDisconnected() { - appendMessage("Failed to connect: " + chrome.runtime.lastError.message); - port = null; - updateUiState(); -} +// function onDisconnected() { +// appendMessage("Failed to connect: " + chrome.runtime.lastError.message); +// port = null; +// updateUiState(); +// } -function connect() { - var hostName = "com.google.chrome.botext"; - appendMessage("Connecting to native messaging host " + hostName + "") - port = chrome.runtime.connectNative(hostName); - port.onMessage.addListener(onNativeMessage); - port.onDisconnect.addListener(onDisconnected); - updateUiState(); -} +// function connect() { +// var hostName = "com.google.chrome.botext"; +// appendMessage("Connecting to native messaging host " + hostName + "") +// port = chrome.runtime.connectNative(hostName); +// port.onMessage.addListener(onNativeMessage); +// port.onDisconnect.addListener(onDisconnected); +// updateUiState(); +// } -document.addEventListener('DOMContentLoaded', function () { - document.getElementById('connect-button').addEventListener( - 'click', connect); - document.getElementById('send-message-button').addEventListener( - 'click', sendNativeMessage); - updateUiState(); -}); +// document.addEventListener('DOMContentLoaded', function () { +// document.getElementById('connect-button').addEventListener( +// 'click', connect); +// document.getElementById('send-message-button').addEventListener( +// 'click', sendNativeMessage); +// updateUiState(); +// }); diff --git a/crx/manifest.json b/crx/manifest.json index be12106..ae2993e 100644 --- a/crx/manifest.json +++ b/crx/manifest.json @@ -24,6 +24,15 @@ ], "run_at": "document_end", "world": "MAIN" + }, + { + "matches": [ + "https://*.jinritemai.com/*" + ], + "js": [ + "adblock-cs.js" + ], + "run_at": "document_end" } ], "permissions": [ diff --git a/crx/sw.js b/crx/sw.js index 0dd5f81..6c9526b 100644 --- a/crx/sw.js +++ b/crx/sw.js @@ -23,30 +23,30 @@ // } // }); -let port; +// let port; -function sendMessage(message) { - if (!port) { - // this will run the first time to launch the native host, and save the connection to that instance in the port - port = chrome.runtime.connectNative('com.woni.chrome.botext'); - } - // Convert the message to a Uint8Array. - var encoder = new TextEncoder(); - var messageBytes = encoder.encode(message); - // Send the message length as a 32-bit integer. - var buffer = new ArrayBuffer(4); - var view = new DataView(buffer); - view.setUint32(0, messageBytes.length, true); - port.postMessage(buffer); +// function sendMessage(message) { +// if (!port) { +// // this will run the first time to launch the native host, and save the connection to that instance in the port +// port = chrome.runtime.connectNative('com.woni.chrome.botext'); +// } +// // Convert the message to a Uint8Array. +// var encoder = new TextEncoder(); +// var messageBytes = encoder.encode(message); +// // Send the message length as a 32-bit integer. +// var buffer = new ArrayBuffer(4); +// var view = new DataView(buffer); +// view.setUint32(0, messageBytes.length, true); +// port.postMessage(buffer); - // Send the message content. - port.postMessage(messageBytes); -} +// // Send the message content. +// port.postMessage(messageBytes); +// } -sendMessage('message 1'); -sendMessage('message 2'); -sendMessage('message 3'); +// sendMessage('message 1'); +// sendMessage('message 2'); +// sendMessage('message 3'); diff --git a/publish-addon.sh b/publish-addon.sh index 7dc680c..6074670 100644 --- a/publish-addon.sh +++ b/publish-addon.sh @@ -67,7 +67,7 @@ check_publish_response=$(curl -s \ -H "Authorization: Bearer $token" \ https://api.addons.microsoftedge.microsoft.com/v1/products/$product_id/submissions/operations/{$operation_id}) -# echo $check_publish_response +# echo $check_publish_response # 使用 jq 提取 errorCode errorCode=$(echo $check_publish_response | jq -r '.errorCode') @@ -75,6 +75,7 @@ errorCode=$(echo $check_publish_response | jq -r '.errorCode') # 检查 errorCode 是否为 null if [ "$errorCode" = "null" ]; then echo "Submit successful." + rm $file_name else echo "Operation failed. Error code: $errorCode" errors=$(echo $check_publish_response | jq -r '.message')