jumpy-lion 0.0.25 → 0.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/fingerprinting/all-fingerprint-defender/_locales/en/messages.json +95 -0
- package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-16ff15da.js +1 -7
- package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-1a1456ec.js +1 -18
- package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-3a7b59dd.js +1 -1258
- package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-7ce85519.js +1 -76
- package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-aaea1190.js +1 -15
- package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-b4410958.js +1 -77
- package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-dfed3562.js +1 -19
- package/dist/fingerprinting/all-fingerprint-defender/assets/debounce-09920c81.css +1 -0
- package/dist/fingerprinting/all-fingerprint-defender/assets/options-fe2fb5aa.css +1 -0
- package/dist/fingerprinting/all-fingerprint-defender/assets/popup-1886d2ef.css +1 -0
- package/dist/fingerprinting/all-fingerprint-defender/img/icon-128.png +0 -0
- package/dist/fingerprinting/all-fingerprint-defender/img/icon-16.png +0 -0
- package/dist/fingerprinting/all-fingerprint-defender/img/icon-24.png +0 -0
- package/dist/fingerprinting/all-fingerprint-defender/img/icon-32-disabled.png +0 -0
- package/dist/fingerprinting/all-fingerprint-defender/img/icon-32.png +0 -0
- package/dist/fingerprinting/all-fingerprint-defender/img/icon-48.png +0 -0
- package/dist/fingerprinting/all-fingerprint-defender/manifest.json +83 -0
- package/dist/fingerprinting/all-fingerprint-defender/options.html +17 -0
- package/dist/fingerprinting/all-fingerprint-defender/popup.html +23 -0
- package/package.json +4 -3
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
{
|
|
2
|
+
"Donate": {
|
|
3
|
+
"message": "Donate"
|
|
4
|
+
},
|
|
5
|
+
"ExtensionDescription": {
|
|
6
|
+
"message": "All in one fingerprint protection - protect against Canvas, WebGL, Font, AudioContext fingerprinting in your browser."
|
|
7
|
+
},
|
|
8
|
+
"ExtensionName": {
|
|
9
|
+
"message": "All Fingerprint Defender"
|
|
10
|
+
},
|
|
11
|
+
"MoreOptions": {
|
|
12
|
+
"message": "More Options"
|
|
13
|
+
},
|
|
14
|
+
"RateUs": {
|
|
15
|
+
"message": "Rate us"
|
|
16
|
+
},
|
|
17
|
+
"ReloadExtension": {
|
|
18
|
+
"message": "Reload extension"
|
|
19
|
+
},
|
|
20
|
+
"MakeBy": {
|
|
21
|
+
"message": "Make by afixer.app"
|
|
22
|
+
},
|
|
23
|
+
"PreventFingerprintingOn": {
|
|
24
|
+
"message": "Prevent fingerprinting on"
|
|
25
|
+
},
|
|
26
|
+
"Refresh": {
|
|
27
|
+
"message": "Refresh"
|
|
28
|
+
},
|
|
29
|
+
"RefreshThisPage": {
|
|
30
|
+
"message": "Refresh this page to apply new options"
|
|
31
|
+
},
|
|
32
|
+
"DetectedAndObfuscated": {
|
|
33
|
+
"message": "Detected fingerprinting type"
|
|
34
|
+
},
|
|
35
|
+
"CanvasFingerprint": {
|
|
36
|
+
"message": "Canvas Fingerprint"
|
|
37
|
+
},
|
|
38
|
+
"NumberOfFingerprints": {
|
|
39
|
+
"message": "Number of prevented fingerprints"
|
|
40
|
+
},
|
|
41
|
+
"NumberOfHosts": {
|
|
42
|
+
"message": "Number of fingerprinting hosts"
|
|
43
|
+
},
|
|
44
|
+
"Host": {
|
|
45
|
+
"message": "Host"
|
|
46
|
+
},
|
|
47
|
+
"Count": {
|
|
48
|
+
"message": "Count"
|
|
49
|
+
},
|
|
50
|
+
"Audio": {
|
|
51
|
+
"message": "Audio"
|
|
52
|
+
},
|
|
53
|
+
"Canvas": {
|
|
54
|
+
"message": "Canvas"
|
|
55
|
+
},
|
|
56
|
+
"WebGL": {
|
|
57
|
+
"message": "WebGL"
|
|
58
|
+
},
|
|
59
|
+
"Font": {
|
|
60
|
+
"message": "Font"
|
|
61
|
+
},
|
|
62
|
+
"UpdatedAt": {
|
|
63
|
+
"message": "Updated at"
|
|
64
|
+
},
|
|
65
|
+
"Action": {
|
|
66
|
+
"message": "Action"
|
|
67
|
+
},
|
|
68
|
+
"Delete": {
|
|
69
|
+
"message": "Delete"
|
|
70
|
+
},
|
|
71
|
+
"Add": {
|
|
72
|
+
"message": "Add"
|
|
73
|
+
},
|
|
74
|
+
"Added": {
|
|
75
|
+
"message": "Added"
|
|
76
|
+
},
|
|
77
|
+
"WhiteList": {
|
|
78
|
+
"message": "White list"
|
|
79
|
+
},
|
|
80
|
+
"InWhiteList": {
|
|
81
|
+
"message": "In whitelist"
|
|
82
|
+
},
|
|
83
|
+
"AddToWhiteList": {
|
|
84
|
+
"message": "Add to whitelist"
|
|
85
|
+
},
|
|
86
|
+
"Total": {
|
|
87
|
+
"message": "Total"
|
|
88
|
+
},
|
|
89
|
+
"History": {
|
|
90
|
+
"message": "History"
|
|
91
|
+
},
|
|
92
|
+
"Last30Days": {
|
|
93
|
+
"message": "last 30 days"
|
|
94
|
+
}
|
|
95
|
+
}
|
|
@@ -1,7 +1 @@
|
|
|
1
|
-
if
|
|
2
|
-
document.documentElement.setAttribute("data-afd-extension-id", chrome.runtime.id);
|
|
3
|
-
const e = "disabled:" + window.location.host;
|
|
4
|
-
chrome.storage.sync.get([e], function (t) { t[e] && (document.documentElement.setAttribute("data-afd-disabled", "true"), window.dispatchEvent(new Event("afd-disabled"))); }), window.addEventListener("chrome.runtime.sendMessage", function (t) { const o = t.detail; chrome.runtime.sendMessage(o, function () { }); });
|
|
5
|
-
}
|
|
6
|
-
export {};
|
|
7
|
-
//# sourceMappingURL=chunk-16ff15da.js.map
|
|
1
|
+
if(!(ignoredSites=["https://www.google.com/maps","https://accounts.google.com","www.figma.com","www.canva.com","designer.microsoft.com","create.vista.com","console.aws.amazon.com","www.coze.com"].some(e=>window.location.href.startsWith(e)||window.location.host.endsWith(e)))){document.documentElement.setAttribute("data-afd-extension-id",chrome.runtime.id);const e="disabled:"+window.location.host;chrome.storage.sync.get([e],function(t){t[e]&&(document.documentElement.setAttribute("data-afd-disabled","true"),window.dispatchEvent(new Event("afd-disabled")))}),window.addEventListener("chrome.runtime.sendMessage",function(t){const o=t.detail;chrome.runtime.sendMessage(o,function(){})})}
|
|
@@ -1,18 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
const K = !0, Q = { class: "toggle-button" }, X = { key: 0, class: "on circle" }, Y = { key: 1, class: "off circle" }, Z = I({ __name: "ToggleButton", props: { isOn: { type: Boolean, default: !1 } }, setup(u) { return (c, S) => (n(), a("div", Q, [u.isOn ? (n(), a("div", X)) : i("", !0), u.isOn ? i("", !0) : (n(), a("div", Y))])); } });
|
|
3
|
-
const ee = N(Z, [["__scopeId", "data-v-ee74a099"]]), D = u => (G("data-v-053380fd"), u = u(), j(), u), te = { class: "header" }, se = { class: "title" }, oe = { class: "line space-between" }, ne = { class: "description" }, ae = { class: "line space-between" }, ce = { class: "description2" }, ie = ["href"], le = { class: "content" }, de = { class: "line space-between" }, re = D(() => o("span", { class: "option-icon" }, "⚙", -1)), ue = D(() => o("span", null, "⟳", -1)), _e = [ue], ve = { key: 0, class: "sub-content" }, he = { class: "line line-title" }, ge = { class: "host-line" }, pe = { class: "site-domain" }, fe = { key: 0, class: "site-icon detected" }, me = ["src"], be = D(() => o("span", { style: { "line-height": "10px", "padding-bottom": "6px", "font-size": "2.3rem", "margin-right": "4px" } }, "⟳", -1)), ye = { key: 2, class: "sub-content" }, ke = { class: "line line-title" }, we = { class: "detected-list" }, Ce = { key: 0, class: "tag d-audio" }, De = { key: 1, class: "tag d-canvas" }, Se = { key: 2, class: "tag d-font" }, Me = { key: 3, class: "tag d-webgl" }, Ae = { class: "sub-content" }, xe = { class: "line line-title" }, Be = { class: "total-detected" }, Ie = { key: 3, class: "sub-content" }, Ne = { key: 0, class: "line line-title" }, Oe = { key: 1, class: "canvas-list" }, Ve = { class: "canvas-item" }, Fe = { class: "canvas-desc" }, Te = ["src"], ze = I({ __name: "Popup", setup(u) { const c = window.chrome, S = async () => { await c.storage.local.set({ reload: !0 }), c.runtime.reload(); }, b = v(""), _ = v({}), M = v(!1), g = v([]), p = v([]), y = v(0), O = () => { c.tabs.query({ active: !0, currentWindow: !0 }, s => { const t = s[0]; t && t.url && t.url.startsWith("http") && (c.tabs.reload(t.id), window.close()); }); }; function k(s) { _.value[s] === void 0 && (_.value[s] = !1, c.runtime.sendMessage({ action: "getDisabled", host: s }, function (t) { _.value[s] = t.disabled; })); } let V = E(300); c.storage.sync.onChanged.addListener(s => { var t; (t = s.totalDetected) != null && t.newValue && V(() => { y.value = s.totalDetected.newValue; }); }), z(() => { c.tabs.query({ active: !0, currentWindow: !0 }, s => { const t = s[0]; if (t && t.url && t.url.startsWith("http")) {
|
|
4
|
-
const e = new URL(t.url);
|
|
5
|
-
b.value = e.host, k(e.host), t.id && (H(t.id, t.incognito).then(r => { for (const w of r)
|
|
6
|
-
(w.host === e.host || w.origins.includes(e.host)) && k(w.host); g.value = r; }), c.runtime.sendMessage({ action: "getHosts", tabID: t.id }, r => { r && ((!r.hosts || !r.hosts.includes(e.host)) && r.hosts.push(e.host), p.value = r.hosts, p.value.forEach(k)); }));
|
|
7
|
-
} c.storage.sync.get("totalDetected", e => { y.value = e.totalDetected || 0; }); }); }); const F = async (s) => { c.runtime.sendMessage({ action: "setDisabled", host: s, disabled: !_.value[s] }, () => { _.value[s] = !_.value[s], M.value = !0; }); }, T = s => { const t = s.target; window.open("about:blank").document.write("<img src='" + t.src + "' alt='from canvas'/>"); }, A = C(() => { const s = [], t = new Set; for (const e of g.value)
|
|
8
|
-
for (const r of e.detections)
|
|
9
|
-
t.add(e.host); if (p.value.length > 0)
|
|
10
|
-
for (const e of p.value)
|
|
11
|
-
s.push({ host: e, detected: t.has(e) }); return s; }), h = C(() => { const s = new Set; for (const t of g.value)
|
|
12
|
-
for (const e of t.detections)
|
|
13
|
-
s.add(e.type); return s; }), f = C(() => { const s = []; for (const t of g.value)
|
|
14
|
-
for (const e of t.detections)
|
|
15
|
-
e.type === "CANVAS" && s.push(e); return s.reverse(); }); return (s, t) => (n(), a("main", null, [o("div", te, [m(L, { width: 48 }), o("div", se, [o("div", oe, [o("div", ne, d(l(c).i18n.getMessage("ExtensionName")), 1)]), o("div", ae, [o("div", ce, [o("a", { href: l(U), target: "_blank", rel: "noopener noreferrer" }, d(l(c).i18n.getMessage("MakeBy")), 9, ie)]), m(P)])])]), o("div", le, [o("div", de, [o("button", { class: "btn", onClick: t[0] || (t[0] = e => l(c).runtime.openOptionsPage()) }, [re, $(" " + d(l(c).i18n.getMessage("MoreOptions")), 1)]), l(K) ? i("", !0) : (n(), a("button", { key: 0, class: "btn reload-btn", onClick: S }, _e)), m(W, { "font-size": "1.4rem" })]), b.value ? (n(), a("div", ve, [o("div", he, d(l(c).i18n.getMessage("PreventFingerprintingOn")), 1), o("div", ge, [A.value ? (n(!0), a(x, { key: 0 }, B(A.value, e => (n(), a("div", { key: e.host, class: "line interactive" }, [o("span", pe, [e.detected ? (n(), a("div", fe, "!")) : i("", !0), o("img", { src: l(q)(e.host), class: "site-icon", loading: "lazy" }, null, 8, me), o("span", null, d(e.host), 1)]), m(ee, { "is-on": !_.value[e.host], onClick: r => F(e.host) }, null, 8, ["is-on", "onClick"])]))), 128)) : i("", !0)])])) : i("", !0), M.value ? (n(), a("button", { key: 1, class: "btn refresh-btn zoom-in-effect", onClick: O }, [be, o("span", null, d(l(c).i18n.getMessage("RefreshThisPage")), 1)])) : i("", !0), h.value.size ? (n(), a("div", ye, [o("div", ke, d(l(c).i18n.getMessage("DetectedAndObfuscated")), 1), o("div", we, [h.value.has("AUDIO") ? (n(), a("div", Ce, "Audio")) : i("", !0), h.value.has("CANVAS") ? (n(), a("div", De, "Canvas")) : i("", !0), h.value.has("FONT") ? (n(), a("div", Se, "Font")) : i("", !0), h.value.has("WEBGL") ? (n(), a("div", Me, "WebGL")) : i("", !0)])])) : i("", !0), o("div", Ae, [o("div", xe, d(l(c).i18n.getMessage("NumberOfFingerprints")), 1), o("div", Be, d(y.value.toLocaleString()), 1)]), f.value && f.value.length > 0 ? (n(), a("div", Ie, [b.value ? (n(), a("div", Ne, d(l(c).i18n.getMessage("CanvasFingerprint")), 1)) : i("", !0), f.value ? (n(), a("div", Oe, [(n(!0), a(x, null, B(f.value, e => (n(), a("div", Ve, [o("div", Fe, [o("span", null, d(l(R)(e.occurredAt)), 1), o("span", null, d(e.canvasSize), 1)]), e.type === "CANVAS" ? (n(), a("img", { key: 0, onClick: T, class: "canvas", src: e.canvas }, null, 8, Te)) : i("", !0)]))), 256))])) : i("", !0)])) : i("", !0)])])); } });
|
|
16
|
-
const He = N(ze, [["__scopeId", "data-v-053380fd"]]);
|
|
17
|
-
J(He).mount("#app");
|
|
18
|
-
//# sourceMappingURL=chunk-1a1456ec.js.map
|
|
1
|
+
import{d as I,o as n,c as a,b as i,_ as N,e as v,f as z,x as H,y as C,a as o,i as m,j as L,t as d,u as l,D as P,z as $,S as W,F as x,k as B,m as E,q as U,l as q,p as R,A as G,B as j,v as J}from"./chunk-3a7b59dd.js";const K=!0,Q={class:"toggle-button"},X={key:0,class:"on circle"},Y={key:1,class:"off circle"},Z=I({__name:"ToggleButton",props:{isOn:{type:Boolean,default:!1}},setup(u){return(c,S)=>(n(),a("div",Q,[u.isOn?(n(),a("div",X)):i("",!0),u.isOn?i("",!0):(n(),a("div",Y))]))}});const ee=N(Z,[["__scopeId","data-v-ee74a099"]]),D=u=>(G("data-v-053380fd"),u=u(),j(),u),te={class:"header"},se={class:"title"},oe={class:"line space-between"},ne={class:"description"},ae={class:"line space-between"},ce={class:"description2"},ie=["href"],le={class:"content"},de={class:"line space-between"},re=D(()=>o("span",{class:"option-icon"},"⚙",-1)),ue=D(()=>o("span",null,"⟳",-1)),_e=[ue],ve={key:0,class:"sub-content"},he={class:"line line-title"},ge={class:"host-line"},pe={class:"site-domain"},fe={key:0,class:"site-icon detected"},me=["src"],be=D(()=>o("span",{style:{"line-height":"10px","padding-bottom":"6px","font-size":"2.3rem","margin-right":"4px"}},"⟳",-1)),ye={key:2,class:"sub-content"},ke={class:"line line-title"},we={class:"detected-list"},Ce={key:0,class:"tag d-audio"},De={key:1,class:"tag d-canvas"},Se={key:2,class:"tag d-font"},Me={key:3,class:"tag d-webgl"},Ae={class:"sub-content"},xe={class:"line line-title"},Be={class:"total-detected"},Ie={key:3,class:"sub-content"},Ne={key:0,class:"line line-title"},Oe={key:1,class:"canvas-list"},Ve={class:"canvas-item"},Fe={class:"canvas-desc"},Te=["src"],ze=I({__name:"Popup",setup(u){const c=window.chrome,S=async()=>{await c.storage.local.set({reload:!0}),c.runtime.reload()},b=v(""),_=v({}),M=v(!1),g=v([]),p=v([]),y=v(0),O=()=>{c.tabs.query({active:!0,currentWindow:!0},s=>{const t=s[0];t&&t.url&&t.url.startsWith("http")&&(c.tabs.reload(t.id),window.close())})};function k(s){_.value[s]===void 0&&(_.value[s]=!1,c.runtime.sendMessage({action:"getDisabled",host:s},function(t){_.value[s]=t.disabled}))}let V=E(300);c.storage.sync.onChanged.addListener(s=>{var t;(t=s.totalDetected)!=null&&t.newValue&&V(()=>{y.value=s.totalDetected.newValue})}),z(()=>{c.tabs.query({active:!0,currentWindow:!0},s=>{const t=s[0];if(t&&t.url&&t.url.startsWith("http")){const e=new URL(t.url);b.value=e.host,k(e.host),t.id&&(H(t.id,t.incognito).then(r=>{for(const w of r)(w.host===e.host||w.origins.includes(e.host))&&k(w.host);g.value=r}),c.runtime.sendMessage({action:"getHosts",tabID:t.id},r=>{r&&((!r.hosts||!r.hosts.includes(e.host))&&r.hosts.push(e.host),p.value=r.hosts,p.value.forEach(k))}))}c.storage.sync.get("totalDetected",e=>{y.value=e.totalDetected||0})})});const F=async s=>{c.runtime.sendMessage({action:"setDisabled",host:s,disabled:!_.value[s]},()=>{_.value[s]=!_.value[s],M.value=!0})},T=s=>{const t=s.target;window.open("about:blank").document.write("<img src='"+t.src+"' alt='from canvas'/>")},A=C(()=>{const s=[],t=new Set;for(const e of g.value)for(const r of e.detections)t.add(e.host);if(p.value.length>0)for(const e of p.value)s.push({host:e,detected:t.has(e)});return s}),h=C(()=>{const s=new Set;for(const t of g.value)for(const e of t.detections)s.add(e.type);return s}),f=C(()=>{const s=[];for(const t of g.value)for(const e of t.detections)e.type==="CANVAS"&&s.push(e);return s.reverse()});return(s,t)=>(n(),a("main",null,[o("div",te,[m(L,{width:48}),o("div",se,[o("div",oe,[o("div",ne,d(l(c).i18n.getMessage("ExtensionName")),1)]),o("div",ae,[o("div",ce,[o("a",{href:l(U),target:"_blank",rel:"noopener noreferrer"},d(l(c).i18n.getMessage("MakeBy")),9,ie)]),m(P)])])]),o("div",le,[o("div",de,[o("button",{class:"btn",onClick:t[0]||(t[0]=e=>l(c).runtime.openOptionsPage())},[re,$(" "+d(l(c).i18n.getMessage("MoreOptions")),1)]),l(K)?i("",!0):(n(),a("button",{key:0,class:"btn reload-btn",onClick:S},_e)),m(W,{"font-size":"1.4rem"})]),b.value?(n(),a("div",ve,[o("div",he,d(l(c).i18n.getMessage("PreventFingerprintingOn")),1),o("div",ge,[A.value?(n(!0),a(x,{key:0},B(A.value,e=>(n(),a("div",{key:e.host,class:"line interactive"},[o("span",pe,[e.detected?(n(),a("div",fe,"!")):i("",!0),o("img",{src:l(q)(e.host),class:"site-icon",loading:"lazy"},null,8,me),o("span",null,d(e.host),1)]),m(ee,{"is-on":!_.value[e.host],onClick:r=>F(e.host)},null,8,["is-on","onClick"])]))),128)):i("",!0)])])):i("",!0),M.value?(n(),a("button",{key:1,class:"btn refresh-btn zoom-in-effect",onClick:O},[be,o("span",null,d(l(c).i18n.getMessage("RefreshThisPage")),1)])):i("",!0),h.value.size?(n(),a("div",ye,[o("div",ke,d(l(c).i18n.getMessage("DetectedAndObfuscated")),1),o("div",we,[h.value.has("AUDIO")?(n(),a("div",Ce,"Audio")):i("",!0),h.value.has("CANVAS")?(n(),a("div",De,"Canvas")):i("",!0),h.value.has("FONT")?(n(),a("div",Se,"Font")):i("",!0),h.value.has("WEBGL")?(n(),a("div",Me,"WebGL")):i("",!0)])])):i("",!0),o("div",Ae,[o("div",xe,d(l(c).i18n.getMessage("NumberOfFingerprints")),1),o("div",Be,d(y.value.toLocaleString()),1)]),f.value&&f.value.length>0?(n(),a("div",Ie,[b.value?(n(),a("div",Ne,d(l(c).i18n.getMessage("CanvasFingerprint")),1)):i("",!0),f.value?(n(),a("div",Oe,[(n(!0),a(x,null,B(f.value,e=>(n(),a("div",Ve,[o("div",Fe,[o("span",null,d(l(R)(e.occurredAt)),1),o("span",null,d(e.canvasSize),1)]),e.type==="CANVAS"?(n(),a("img",{key:0,onClick:T,class:"canvas",src:e.canvas},null,8,Te)):i("",!0)]))),256))])):i("",!0)])):i("",!0)])]))}});const He=N(ze,[["__scopeId","data-v-053380fd"]]);J(He).mount("#app");
|