Skip to content

Commit fd303c1

Browse files
authored
Merge pull request #195 from SentienceAPI/sync-extension-v2.8.5
Sync Extension: v2.8.5
2 parents 49f561f + 575323b commit fd303c1

File tree

3 files changed

+53
-36
lines changed

3 files changed

+53
-36
lines changed

sentience/extension/injected_api.js

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,22 @@
8585
return !!lower && hints.some(hint => lower.includes(hint));
8686
}
8787
function detectCaptcha() {
88+
function isVisibleElement(el) {
89+
try {
90+
if (!el) return !1;
91+
const style = window.getComputedStyle(el);
92+
if ("none" === style.display || "hidden" === style.visibility) return !1;
93+
const opacity = parseFloat(style.opacity || "1");
94+
if (!Number.isNaN(opacity) && opacity <= .01) return !1;
95+
if (!el.getClientRects || 0 === el.getClientRects().length) return !1;
96+
const rect = el.getBoundingClientRect();
97+
if (rect.width < 8 || rect.height < 8) return !1;
98+
const vw = window.innerWidth || document.documentElement.clientWidth || 0, vh = window.innerHeight || document.documentElement.clientHeight || 0;
99+
return !(vw && vh && (rect.bottom <= 0 || rect.right <= 0 || rect.top >= vh || rect.left >= vw));
100+
} catch (e) {
101+
return !1;
102+
}
103+
}
88104
const evidence = {
89105
text_hits: [],
90106
selector_hits: [],
@@ -103,10 +119,10 @@
103119
const iframes = document.querySelectorAll("iframe");
104120
for (const iframe of iframes) {
105121
const src = iframe.getAttribute("src") || "", title = iframe.getAttribute("title") || "";
106-
if (src) for (const [provider, hints] of Object.entries(CAPTCHA_IFRAME_HINTS)) matchHints(src, hints) && (hasIframeHit = !0,
107-
providerSignals[provider] += 1, addEvidence(evidence.iframe_src_hits, truncateText(src, 120)));
108-
if (title && matchHints(title, [ "captcha", "recaptcha" ]) && (hasContainerHit = !0,
109-
addEvidence(evidence.selector_hits, 'iframe[title*="captcha"]')), evidence.iframe_src_hits.length >= 5) break;
122+
if (src) for (const [provider, hints] of Object.entries(CAPTCHA_IFRAME_HINTS)) matchHints(src, hints) && (addEvidence(evidence.iframe_src_hits, truncateText(src, 120)),
123+
isVisibleElement(iframe) && (hasIframeHit = !0, providerSignals[provider] += 1));
124+
if (title && matchHints(title, [ "captcha", "recaptcha" ]) && (addEvidence(evidence.selector_hits, 'iframe[title*="captcha"]'),
125+
isVisibleElement(iframe) && (hasContainerHit = !0)), evidence.iframe_src_hits.length >= 5) break;
110126
}
111127
} catch (e) {}
112128
try {
@@ -121,8 +137,9 @@
121137
}
122138
} catch (e) {}
123139
for (const {selector: selector, provider: provider} of CAPTCHA_CONTAINER_SELECTORS) try {
124-
document.querySelector(selector) && (hasContainerHit = !0, addEvidence(evidence.selector_hits, selector),
125-
"unknown" !== provider && (providerSignals[provider] += 1));
140+
const hit = document.querySelector(selector);
141+
hit && (addEvidence(evidence.selector_hits, selector), isVisibleElement(hit) && (hasContainerHit = !0,
142+
"unknown" !== provider && (providerSignals[provider] += 1)));
126143
} catch (e) {}
127144
const textSnippet = function() {
128145
try {

sentience/extension/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"manifest_version": 3,
33
"name": "Sentience Semantic Visual Grounding Extractor",
4-
"version": "2.8.4",
4+
"version": "2.8.5",
55
"description": "Extract semantic visual grounding data from web pages",
66
"permissions": ["activeTab", "scripting"],
77
"host_permissions": ["<all_urls>"],

sentience/extension/release.json

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
{
2-
"url": "https://api.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/279701545",
3-
"assets_url": "https://api.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/279701545/assets",
4-
"upload_url": "https://uploads.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/279701545/assets{?name,label}",
5-
"html_url": "https://github.com/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/tag/v2.8.4",
6-
"id": 279701545,
2+
"url": "https://api.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/279704858",
3+
"assets_url": "https://api.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/279704858/assets",
4+
"upload_url": "https://uploads.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/279704858/assets{?name,label}",
5+
"html_url": "https://github.com/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/tag/v2.8.5",
6+
"id": 279704858,
77
"author": {
88
"login": "rcholic",
99
"id": 135060,
@@ -25,21 +25,21 @@
2525
"user_view_type": "public",
2626
"site_admin": false
2727
},
28-
"node_id": "RE_kwDOQshiJ84Qq-gp",
29-
"tag_name": "v2.8.4",
28+
"node_id": "RE_kwDOQshiJ84Qq_Ua",
29+
"tag_name": "v2.8.5",
3030
"target_commitish": "main",
31-
"name": "Release v2.8.4",
31+
"name": "Release v2.8.5",
3232
"draft": false,
3333
"immutable": false,
3434
"prerelease": false,
35-
"created_at": "2026-01-25T06:10:24Z",
36-
"updated_at": "2026-01-25T06:11:51Z",
37-
"published_at": "2026-01-25T06:11:11Z",
35+
"created_at": "2026-01-25T07:09:06Z",
36+
"updated_at": "2026-01-25T07:10:18Z",
37+
"published_at": "2026-01-25T07:09:41Z",
3838
"assets": [
3939
{
40-
"url": "https://api.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/assets/345545012",
41-
"id": 345545012,
42-
"node_id": "RA_kwDOQshiJ84UmJk0",
40+
"url": "https://api.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/assets/345558418",
41+
"id": 345558418,
42+
"node_id": "RA_kwDOQshiJ84UmM2S",
4343
"name": "extension-files.tar.gz",
4444
"label": "",
4545
"uploader": {
@@ -65,17 +65,17 @@
6565
},
6666
"content_type": "application/gzip",
6767
"state": "uploaded",
68-
"size": 79724,
69-
"digest": "sha256:d78574e7fb0dfa121a261b650478a1d7a188377b3ba03fed1205cf07f2e1895e",
68+
"size": 79659,
69+
"digest": "sha256:850f5dba21ea0b1cb87a7ac088213a670367a56ccf68ca7c2c5f4218fe58df05",
7070
"download_count": 0,
71-
"created_at": "2026-01-25T06:11:50Z",
72-
"updated_at": "2026-01-25T06:11:51Z",
73-
"browser_download_url": "https://github.com/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/download/v2.8.4/extension-files.tar.gz"
71+
"created_at": "2026-01-25T07:10:18Z",
72+
"updated_at": "2026-01-25T07:10:18Z",
73+
"browser_download_url": "https://github.com/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/download/v2.8.5/extension-files.tar.gz"
7474
},
7575
{
76-
"url": "https://api.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/assets/345545011",
77-
"id": 345545011,
78-
"node_id": "RA_kwDOQshiJ84UmJkz",
76+
"url": "https://api.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/assets/345558419",
77+
"id": 345558419,
78+
"node_id": "RA_kwDOQshiJ84UmM2T",
7979
"name": "extension-package.zip",
8080
"label": "",
8181
"uploader": {
@@ -101,15 +101,15 @@
101101
},
102102
"content_type": "application/zip",
103103
"state": "uploaded",
104-
"size": 81073,
105-
"digest": "sha256:b6c4cb930256d2067e566281976840417da78595a734a48f6baae735e3a0356b",
104+
"size": 81288,
105+
"digest": "sha256:1b30879ceceb7fe880ef95be634acd83a281ac3b1fadf734f8d1eb03bda3cd9c",
106106
"download_count": 0,
107-
"created_at": "2026-01-25T06:11:50Z",
108-
"updated_at": "2026-01-25T06:11:51Z",
109-
"browser_download_url": "https://github.com/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/download/v2.8.4/extension-package.zip"
107+
"created_at": "2026-01-25T07:10:18Z",
108+
"updated_at": "2026-01-25T07:10:18Z",
109+
"browser_download_url": "https://github.com/SentienceAPI/Sentience-Geometry-Chrome-Extension/releases/download/v2.8.5/extension-package.zip"
110110
}
111111
],
112-
"tarball_url": "https://api.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/tarball/v2.8.4",
113-
"zipball_url": "https://api.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/zipball/v2.8.4",
112+
"tarball_url": "https://api.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/tarball/v2.8.5",
113+
"zipball_url": "https://api.github.com/repos/SentienceAPI/Sentience-Geometry-Chrome-Extension/zipball/v2.8.5",
114114
"body": ""
115115
}

0 commit comments

Comments
 (0)