jumpy-lion 0.1.1 → 0.1.2

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.
Files changed (230) hide show
  1. package/dist/browser-controller.d.ts +22 -3
  2. package/dist/browser-controller.d.ts.map +1 -1
  3. package/dist/browser-controller.js +316 -71
  4. package/dist/browser-controller.js.map +1 -1
  5. package/dist/browser-plugin.d.ts +56 -7
  6. package/dist/browser-plugin.d.ts.map +1 -1
  7. package/dist/browser-plugin.js +268 -56
  8. package/dist/browser-plugin.js.map +1 -1
  9. package/dist/browser-process/browser.d.ts +39 -0
  10. package/dist/browser-process/browser.d.ts.map +1 -1
  11. package/dist/browser-process/browser.js +125 -16
  12. package/dist/browser-process/browser.js.map +1 -1
  13. package/dist/browser-process/process.d.ts +9 -0
  14. package/dist/browser-process/process.d.ts.map +1 -1
  15. package/dist/browser-process/process.js +100 -6
  16. package/dist/browser-process/process.js.map +1 -1
  17. package/dist/browser-profiles/chrome/default.d.ts +116 -0
  18. package/dist/browser-profiles/chrome/default.d.ts.map +1 -1
  19. package/dist/browser-profiles/chrome/default.js +118 -1
  20. package/dist/browser-profiles/chrome/default.js.map +1 -1
  21. package/dist/browser-profiles/chrome/populate-profile.d.ts +76 -0
  22. package/dist/browser-profiles/chrome/populate-profile.d.ts.map +1 -0
  23. package/dist/browser-profiles/chrome/populate-profile.js +300 -0
  24. package/dist/browser-profiles/chrome/populate-profile.js.map +1 -0
  25. package/dist/browser-profiles/index.d.ts +1 -0
  26. package/dist/browser-profiles/index.d.ts.map +1 -1
  27. package/dist/browser-profiles/index.js +2 -0
  28. package/dist/browser-profiles/index.js.map +1 -1
  29. package/dist/crawler.d.ts +81 -9
  30. package/dist/crawler.d.ts.map +1 -1
  31. package/dist/crawler.js +26 -10
  32. package/dist/crawler.js.map +1 -1
  33. package/dist/fingerprinting/all-fingerprint-defender/_locales/en/messages.json +95 -0
  34. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-16ff15da.d.ts +2 -0
  35. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-16ff15da.d.ts.map +1 -0
  36. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-16ff15da.js +1 -0
  37. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-16ff15da.js.map +1 -0
  38. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-1a1456ec.d.ts +2 -0
  39. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-1a1456ec.d.ts.map +1 -0
  40. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-1a1456ec.js +1 -0
  41. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-1a1456ec.js.map +1 -0
  42. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-3a7b59dd.d.ts +83 -0
  43. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-3a7b59dd.d.ts.map +1 -0
  44. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-3a7b59dd.js +1 -0
  45. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-3a7b59dd.js.map +1 -0
  46. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-7ce85519.d.ts +2 -0
  47. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-7ce85519.d.ts.map +1 -0
  48. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-7ce85519.js +1 -0
  49. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-7ce85519.js.map +1 -0
  50. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-aaea1190.d.ts +2 -0
  51. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-aaea1190.d.ts.map +1 -0
  52. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-aaea1190.js +1 -0
  53. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-aaea1190.js.map +1 -0
  54. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-b4410958.d.ts +2 -0
  55. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-b4410958.d.ts.map +1 -0
  56. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-b4410958.js +1 -0
  57. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-b4410958.js.map +1 -0
  58. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-dfed3562.d.ts +2 -0
  59. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-dfed3562.d.ts.map +1 -0
  60. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-dfed3562.js +1 -0
  61. package/dist/fingerprinting/all-fingerprint-defender/assets/chunk-dfed3562.js.map +1 -0
  62. package/dist/fingerprinting/all-fingerprint-defender/assets/debounce-09920c81.css +1 -0
  63. package/dist/fingerprinting/all-fingerprint-defender/assets/options-fe2fb5aa.css +1 -0
  64. package/dist/fingerprinting/all-fingerprint-defender/assets/popup-1886d2ef.css +1 -0
  65. package/dist/fingerprinting/all-fingerprint-defender/img/icon-128.png +0 -0
  66. package/dist/fingerprinting/all-fingerprint-defender/img/icon-16.png +0 -0
  67. package/dist/fingerprinting/all-fingerprint-defender/img/icon-24.png +0 -0
  68. package/dist/fingerprinting/all-fingerprint-defender/img/icon-32-disabled.png +0 -0
  69. package/dist/fingerprinting/all-fingerprint-defender/img/icon-32.png +0 -0
  70. package/dist/fingerprinting/all-fingerprint-defender/img/icon-48.png +0 -0
  71. package/dist/fingerprinting/all-fingerprint-defender/manifest.json +83 -0
  72. package/dist/fingerprinting/all-fingerprint-defender/options.html +17 -0
  73. package/dist/fingerprinting/all-fingerprint-defender/popup.html +23 -0
  74. package/dist/fingerprinting/anti-webgpu/background.d.ts +2 -0
  75. package/dist/fingerprinting/anti-webgpu/background.d.ts.map +1 -0
  76. package/dist/fingerprinting/anti-webgpu/background.js +4 -0
  77. package/dist/fingerprinting/anti-webgpu/background.js.map +1 -0
  78. package/dist/fingerprinting/anti-webgpu/data/content_script/inject.d.ts +2 -0
  79. package/dist/fingerprinting/anti-webgpu/data/content_script/inject.d.ts.map +1 -0
  80. package/dist/fingerprinting/anti-webgpu/data/content_script/inject.js +50 -0
  81. package/dist/fingerprinting/anti-webgpu/data/content_script/inject.js.map +1 -0
  82. package/dist/fingerprinting/anti-webgpu/data/content_script/page_context/inject.d.ts +2 -0
  83. package/dist/fingerprinting/anti-webgpu/data/content_script/page_context/inject.d.ts.map +1 -0
  84. package/dist/fingerprinting/anti-webgpu/data/content_script/page_context/inject.js +172 -0
  85. package/dist/fingerprinting/anti-webgpu/data/content_script/page_context/inject.js.map +1 -0
  86. package/dist/fingerprinting/anti-webgpu/data/icons/128.png +0 -0
  87. package/dist/fingerprinting/anti-webgpu/data/icons/16.png +0 -0
  88. package/dist/fingerprinting/anti-webgpu/data/icons/32.png +0 -0
  89. package/dist/fingerprinting/anti-webgpu/data/icons/48.png +0 -0
  90. package/dist/fingerprinting/anti-webgpu/data/icons/64.png +0 -0
  91. package/dist/fingerprinting/anti-webgpu/data/popup/popup.css +88 -0
  92. package/dist/fingerprinting/anti-webgpu/data/popup/popup.d.ts +2 -0
  93. package/dist/fingerprinting/anti-webgpu/data/popup/popup.d.ts.map +1 -0
  94. package/dist/fingerprinting/anti-webgpu/data/popup/popup.html +58 -0
  95. package/dist/fingerprinting/anti-webgpu/data/popup/popup.js +96 -0
  96. package/dist/fingerprinting/anti-webgpu/data/popup/popup.js.map +1 -0
  97. package/dist/fingerprinting/anti-webgpu/lib/chrome.d.ts +2 -0
  98. package/dist/fingerprinting/anti-webgpu/lib/chrome.d.ts.map +1 -0
  99. package/dist/fingerprinting/anti-webgpu/lib/chrome.js +249 -0
  100. package/dist/fingerprinting/anti-webgpu/lib/chrome.js.map +1 -0
  101. package/dist/fingerprinting/anti-webgpu/lib/common.d.ts +2 -0
  102. package/dist/fingerprinting/anti-webgpu/lib/common.d.ts.map +1 -0
  103. package/dist/fingerprinting/anti-webgpu/lib/common.js +86 -0
  104. package/dist/fingerprinting/anti-webgpu/lib/common.js.map +1 -0
  105. package/dist/fingerprinting/anti-webgpu/lib/config.d.ts +2 -0
  106. package/dist/fingerprinting/anti-webgpu/lib/config.d.ts.map +1 -0
  107. package/dist/fingerprinting/anti-webgpu/lib/config.js +14 -0
  108. package/dist/fingerprinting/anti-webgpu/lib/config.js.map +1 -0
  109. package/dist/fingerprinting/anti-webgpu/lib/runtime.d.ts +2 -0
  110. package/dist/fingerprinting/anti-webgpu/lib/runtime.d.ts.map +1 -0
  111. package/dist/fingerprinting/anti-webgpu/lib/runtime.js +107 -0
  112. package/dist/fingerprinting/anti-webgpu/lib/runtime.js.map +1 -0
  113. package/dist/fingerprinting/anti-webgpu/manifest.json +58 -0
  114. package/dist/fingerprinting/custom-fingerprint-injector.d.ts +87 -0
  115. package/dist/fingerprinting/custom-fingerprint-injector.d.ts.map +1 -0
  116. package/dist/fingerprinting/custom-fingerprint-injector.js +342 -0
  117. package/dist/fingerprinting/custom-fingerprint-injector.js.map +1 -0
  118. package/dist/fingerprinting/fingerprint-injector.d.ts +157 -0
  119. package/dist/fingerprinting/fingerprint-injector.d.ts.map +1 -0
  120. package/dist/fingerprinting/fingerprint-injector.js +632 -0
  121. package/dist/fingerprinting/fingerprint-injector.js.map +1 -0
  122. package/dist/fingerprinting/fingerprint-overrides/audio-spoofing.d.ts +6 -0
  123. package/dist/fingerprinting/fingerprint-overrides/audio-spoofing.d.ts.map +1 -0
  124. package/dist/fingerprinting/fingerprint-overrides/audio-spoofing.js +119 -0
  125. package/dist/fingerprinting/fingerprint-overrides/audio-spoofing.js.map +1 -0
  126. package/dist/fingerprinting/fingerprint-overrides/canvas-protection.d.ts +6 -0
  127. package/dist/fingerprinting/fingerprint-overrides/canvas-protection.d.ts.map +1 -0
  128. package/dist/fingerprinting/fingerprint-overrides/canvas-protection.js +149 -0
  129. package/dist/fingerprinting/fingerprint-overrides/canvas-protection.js.map +1 -0
  130. package/dist/fingerprinting/fingerprint-overrides/cdp-detection-bypass.d.ts +14 -0
  131. package/dist/fingerprinting/fingerprint-overrides/cdp-detection-bypass.d.ts.map +1 -0
  132. package/dist/fingerprinting/fingerprint-overrides/cdp-detection-bypass.js +763 -0
  133. package/dist/fingerprinting/fingerprint-overrides/cdp-detection-bypass.js.map +1 -0
  134. package/dist/fingerprinting/fingerprint-overrides/client-rect-spoofing.d.ts +6 -0
  135. package/dist/fingerprinting/fingerprint-overrides/client-rect-spoofing.d.ts.map +1 -0
  136. package/dist/fingerprinting/fingerprint-overrides/client-rect-spoofing.js +195 -0
  137. package/dist/fingerprinting/fingerprint-overrides/client-rect-spoofing.js.map +1 -0
  138. package/dist/fingerprinting/fingerprint-overrides/coalesced-events-spoofing.d.ts +10 -0
  139. package/dist/fingerprinting/fingerprint-overrides/coalesced-events-spoofing.d.ts.map +1 -0
  140. package/dist/fingerprinting/fingerprint-overrides/coalesced-events-spoofing.js +195 -0
  141. package/dist/fingerprinting/fingerprint-overrides/coalesced-events-spoofing.js.map +1 -0
  142. package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.d.ts +28 -0
  143. package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.d.ts.map +1 -0
  144. package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.js +1181 -0
  145. package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.js.map +1 -0
  146. package/dist/fingerprinting/fingerprint-overrides/font-spoofing.d.ts +7 -0
  147. package/dist/fingerprinting/fingerprint-overrides/font-spoofing.d.ts.map +1 -0
  148. package/dist/fingerprinting/fingerprint-overrides/font-spoofing.js +171 -0
  149. package/dist/fingerprinting/fingerprint-overrides/font-spoofing.js.map +1 -0
  150. package/dist/fingerprinting/fingerprint-overrides/index.d.ts +36 -0
  151. package/dist/fingerprinting/fingerprint-overrides/index.d.ts.map +1 -0
  152. package/dist/fingerprinting/fingerprint-overrides/index.js +40 -0
  153. package/dist/fingerprinting/fingerprint-overrides/index.js.map +1 -0
  154. package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.d.ts +45 -0
  155. package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.d.ts.map +1 -0
  156. package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.js +268 -0
  157. package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.js.map +1 -0
  158. package/dist/fingerprinting/fingerprint-overrides/locale-spoofing.d.ts +6 -0
  159. package/dist/fingerprinting/fingerprint-overrides/locale-spoofing.d.ts.map +1 -0
  160. package/dist/fingerprinting/fingerprint-overrides/locale-spoofing.js +301 -0
  161. package/dist/fingerprinting/fingerprint-overrides/locale-spoofing.js.map +1 -0
  162. package/dist/fingerprinting/fingerprint-overrides/mouse-humanization.d.ts +7 -0
  163. package/dist/fingerprinting/fingerprint-overrides/mouse-humanization.d.ts.map +1 -0
  164. package/dist/fingerprinting/fingerprint-overrides/mouse-humanization.js +58 -0
  165. package/dist/fingerprinting/fingerprint-overrides/mouse-humanization.js.map +1 -0
  166. package/dist/fingerprinting/fingerprint-overrides/performance-spoofing.d.ts +6 -0
  167. package/dist/fingerprinting/fingerprint-overrides/performance-spoofing.d.ts.map +1 -0
  168. package/dist/fingerprinting/fingerprint-overrides/performance-spoofing.js +249 -0
  169. package/dist/fingerprinting/fingerprint-overrides/performance-spoofing.js.map +1 -0
  170. package/dist/fingerprinting/fingerprint-overrides/platform-consistency.d.ts +33 -0
  171. package/dist/fingerprinting/fingerprint-overrides/platform-consistency.d.ts.map +1 -0
  172. package/dist/fingerprinting/fingerprint-overrides/platform-consistency.js +618 -0
  173. package/dist/fingerprinting/fingerprint-overrides/platform-consistency.js.map +1 -0
  174. package/dist/fingerprinting/fingerprint-overrides/prototype-integrity.d.ts +13 -0
  175. package/dist/fingerprinting/fingerprint-overrides/prototype-integrity.d.ts.map +1 -0
  176. package/dist/fingerprinting/fingerprint-overrides/prototype-integrity.js +356 -0
  177. package/dist/fingerprinting/fingerprint-overrides/prototype-integrity.js.map +1 -0
  178. package/dist/fingerprinting/fingerprint-overrides/runtime-enable-bypass.d.ts +18 -0
  179. package/dist/fingerprinting/fingerprint-overrides/runtime-enable-bypass.d.ts.map +1 -0
  180. package/dist/fingerprinting/fingerprint-overrides/runtime-enable-bypass.js +171 -0
  181. package/dist/fingerprinting/fingerprint-overrides/runtime-enable-bypass.js.map +1 -0
  182. package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.d.ts +55 -0
  183. package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.d.ts.map +1 -0
  184. package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.js +244 -0
  185. package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.js.map +1 -0
  186. package/dist/fingerprinting/fingerprint-overrides/stealth-script.d.ts +14 -0
  187. package/dist/fingerprinting/fingerprint-overrides/stealth-script.d.ts.map +1 -0
  188. package/dist/fingerprinting/fingerprint-overrides/stealth-script.js +925 -0
  189. package/dist/fingerprinting/fingerprint-overrides/stealth-script.js.map +1 -0
  190. package/dist/fingerprinting/fingerprint-overrides/storage-consistency.d.ts +13 -0
  191. package/dist/fingerprinting/fingerprint-overrides/storage-consistency.d.ts.map +1 -0
  192. package/dist/fingerprinting/fingerprint-overrides/storage-consistency.js +346 -0
  193. package/dist/fingerprinting/fingerprint-overrides/storage-consistency.js.map +1 -0
  194. package/dist/fingerprinting/fingerprint-overrides/timing-consistency.d.ts +13 -0
  195. package/dist/fingerprinting/fingerprint-overrides/timing-consistency.d.ts.map +1 -0
  196. package/dist/fingerprinting/fingerprint-overrides/timing-consistency.js +264 -0
  197. package/dist/fingerprinting/fingerprint-overrides/timing-consistency.js.map +1 -0
  198. package/dist/fingerprinting/fingerprint-overrides/ua-ch.d.ts +27 -0
  199. package/dist/fingerprinting/fingerprint-overrides/ua-ch.d.ts.map +1 -0
  200. package/dist/fingerprinting/fingerprint-overrides/ua-ch.js +213 -0
  201. package/dist/fingerprinting/fingerprint-overrides/ua-ch.js.map +1 -0
  202. package/dist/fingerprinting/fingerprint-overrides/utils.d.ts +12 -0
  203. package/dist/fingerprinting/fingerprint-overrides/utils.d.ts.map +1 -0
  204. package/dist/fingerprinting/fingerprint-overrides/utils.js +517 -0
  205. package/dist/fingerprinting/fingerprint-overrides/utils.js.map +1 -0
  206. package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.d.ts +12 -0
  207. package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.d.ts.map +1 -0
  208. package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.js +215 -0
  209. package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.js.map +1 -0
  210. package/dist/fingerprinting/fingerprint-overrides/webgpu-spoofing.d.ts +6 -0
  211. package/dist/fingerprinting/fingerprint-overrides/webgpu-spoofing.d.ts.map +1 -0
  212. package/dist/fingerprinting/fingerprint-overrides/webgpu-spoofing.js +202 -0
  213. package/dist/fingerprinting/fingerprint-overrides/webgpu-spoofing.js.map +1 -0
  214. package/dist/fingerprinting/fingerprint-overrides/webrtc-spoofing.d.ts +6 -0
  215. package/dist/fingerprinting/fingerprint-overrides/webrtc-spoofing.d.ts.map +1 -0
  216. package/dist/fingerprinting/fingerprint-overrides/webrtc-spoofing.js +188 -0
  217. package/dist/fingerprinting/fingerprint-overrides/webrtc-spoofing.js.map +1 -0
  218. package/dist/index.d.ts +4 -0
  219. package/dist/index.d.ts.map +1 -1
  220. package/dist/index.js +2 -0
  221. package/dist/index.js.map +1 -1
  222. package/dist/launcher-wrap.d.ts +2 -2
  223. package/dist/launcher-wrap.d.ts.map +1 -1
  224. package/dist/launcher-wrap.js.map +1 -1
  225. package/dist/page.d.ts +160 -13
  226. package/dist/page.d.ts.map +1 -1
  227. package/dist/page.js +1027 -42
  228. package/dist/page.js.map +1 -1
  229. package/dist/tsconfig.build.tsbuildinfo +1 -1
  230. package/package.json +8 -4
@@ -0,0 +1 @@
1
+ import{d as N,o as c,c as d,a as e,r as j,b as _,_ as W,e as v,g as O,f as R,h as $,i as w,w as q,j as P,t,u as n,S as J,D as K,n as M,F as C,k as L,m as Q,l as S,p as H,q as X,s as Y,v as Z}from"./chunk-3a7b59dd.js";const ee=N({__name:"Modal",props:{show:{type:Boolean,default:!1}},emits:["close"],setup(T){return(a,h)=>T.show?(c(),d("div",{key:0,class:"modal",onClick:h[1]||(h[1]=b=>a.$emit("close"))},[e("div",{class:"modal-content",onClick:h[0]||(h[0]=b=>b.stopPropagation())},[j(a.$slots,"default",{},void 0,!0)])])):_("",!0)}});const te=W(ee,[["__scopeId","data-v-e3ce65c1"]]),se={key:0,class:"modal-body"},oe={class:"modal-title"},ae={class:"title"},ne=["src"],ie=["href"],le={class:"section-title"},ce={class:"prevented-fingerprints"},de={key:0,class:"stat-number"},ue={class:"label"},re={class:"number"},_e={key:1,class:"stat-number"},ve={class:"label"},he={class:"number"},ge={key:2,class:"stat-number"},pe={class:"label"},me={class:"number"},be={key:3,class:"stat-number"},ye={class:"label"},fe={class:"number"},ke={key:4,class:"stat-number"},we={class:"label"},Me={class:"number"},Ce={key:0,class:"section-title"},Le={class:"info"},Se={key:0},Te=["src"],Be={class:"layout"},De={class:"header"},Ae={class:"description"},Oe=["href"],$e={class:"shadow-text"},He={class:"top-content"},Ne={class:"top-content-col"},We={class:"card-title"},Fe={class:"total-number"},xe={class:"top-content-col"},ze={class:"card-title"},Ve={class:"total-number"},Ie={class:"tabs"},Ue={class:"table-header row"},Ee={class:"header-host"},Ge={class:"header-count"},je={class:"updated-at-col"},Re={class:"hidden-small white-list-col"},qe={class:"delete-col"},Pe={class:"table-body"},Je=["onClick"],Ke=["src"],Qe={class:"updated-at-col"},Xe={class:"hidden-small white-list-col"},Ye=["onClick","title"],Ze={key:1},et={class:"delete-col"},tt=["onClick"],st={class:"table-header row"},ot={class:"header-host"},at={class:"delete-col"},nt={class:"table-body"},it={class:"row-host"},lt=["src"],ct={class:"delete-col"},dt=["onClick"],ut=N({__name:"Options",setup(T){const a=window.chrome,h=a.i18n.getMessage("ExtensionName");document.title=h;const b=v(0),y=v([]),g=v([]);function F(s){a.runtime.sendMessage({action:"setDisabled",host:s,disabled:!1},()=>{})}let x=Q(300);a.storage.sync.onChanged.addListener(s=>{for(const i in s)if(i.startsWith("disabled:")){const o=i.slice(9);if(s[i].newValue){const u=g.value.concat(o);g.value=u.sort()}else g.value=g.value.filter(u=>u!==o)}else i==="totalDetected"&&x(()=>{b.value=s.totalDetected.newValue||0,O().then(o=>{var r;y.value=o||[],k.value&&o.length&&o[0].host===((r=l.value)==null?void 0:r.host)&&D(o[0])})})}),R(async()=>{a.storage.sync.get("totalDetected",s=>{b.value=s.totalDetected||0}),a.runtime.sendMessage({action:"getWhiteList"},s=>{s&&(g.value=s.whiteList)}),a.storage.session.get("activeTab",s=>{s.activeTab&&(p.value=s.activeTab)}),O().then(s=>{y.value=s})});const p=v("stats"),B=s=>{s!==p.value&&(a.storage.session.set({activeTab:s}),p.value=s)};function z(s){Y(s),y.value=y.value.filter(i=>i.host!==s)}function V(s){a.runtime.sendMessage({action:"setDisabled",host:s,disabled:!0},()=>{})}const k=v(!1),l=v(null),m=v([]),f=v(0);function D(s){l.value=s,$(s.host).then(i=>{const o=[];for(const r of i)o.push(...r.detections);i.length?f.value=i[i.length-1].updatedAt-1:f.value=0,m.value=o}),k.value=!0}function I(){k.value=!1,l.value=null,m.value=[],f.value=0}function U(s){const i=s.target;i.scrollTop+i.clientHeight>=i.scrollHeight&&E()}function E(){!l.value||!l.value.host||!f.value||$(l.value.host,f.value-1).then(s=>{const i=[];for(const o of s)i.push(...o.detections),f.value=o.updatedAt;m.value=m.value.concat(i)})}const G=s=>{const i=s.target;window.open("about:blank").document.write("<img src='"+i.src+"' alt='from canvas'/>")};return(s,i)=>(c(),d(C,null,[w(te,{show:k.value,onClose:I},{default:q(()=>{var o,r;return[l.value?(c(),d("div",se,[e("div",oe,[e("div",ae,[e("img",{class:"host-img",loading:"lazy",src:n(S)(l.value.host,32),width:"32",height:"32"},null,8,ne),e("a",{href:"https://"+l.value.host,target:"_blank",rel:"noopener noreferrer"},t(l.value.host)+" ⧉ ",9,ie)]),e("button",{class:"btn close",onClick:i[0]||(i[0]=u=>k.value=!1)},"x")]),e("div",le,t(n(a).i18n.getMessage("NumberOfFingerprints")),1),e("div",ce,[Object.keys(l.value.countByType).filter(u=>{var A;return(A=l.value)==null?void 0:A.countByType[u]}).length>1?(c(),d("div",de,[e("div",ue,t(n(a).i18n.getMessage("Total")),1),e("div",re,t(l.value.count.toLocaleString()),1)])):_("",!0),l.value.countByType.AUDIO?(c(),d("div",_e,[e("div",ve,t(n(a).i18n.getMessage("Audio")),1),e("div",he,t(l.value.countByType.AUDIO.toLocaleString()),1)])):_("",!0),l.value.countByType.CANVAS?(c(),d("div",ge,[e("div",pe,t(n(a).i18n.getMessage("Canvas")),1),e("div",me,t(l.value.countByType.CANVAS.toLocaleString()),1)])):_("",!0),l.value.countByType.FONT?(c(),d("div",be,[e("div",ye,t(n(a).i18n.getMessage("Font")),1),e("div",fe,t(l.value.countByType.FONT.toLocaleString()),1)])):_("",!0),l.value.countByType.WEBGL?(c(),d("div",ke,[e("div",we,t(n(a).i18n.getMessage("WebGL")),1),e("div",Me,t(l.value.countByType.WEBGL.toLocaleString()),1)])):_("",!0)]),(o=m.value)!=null&&o.length?(c(),d("div",Ce,t(n(a).i18n.getMessage("History"))+" ("+t(n(a).i18n.getMessage("Last30Days"))+") ",1)):_("",!0),(r=m.value)!=null&&r.length?(c(),d("div",{key:1,onScroll:U,class:"history"},[(c(!0),d(C,null,L(m.value,u=>(c(),d("div",{class:"history-row",key:u.occurredAt},[e("div",Le,[e("span",null,t(n(H)(u.occurredAt)),1),u.canvasSize?(c(),d("span",Se,"("+t(u.canvasSize)+")",1)):_("",!0),e("span",null,t(u.type),1)]),u.canvas?(c(),d("img",{key:0,class:"canvas",onClick:G,src:u.canvas},null,8,Te)):_("",!0)]))),128))],32)):_("",!0)])):_("",!0)]}),_:1},8,["show"]),e("main",Be,[e("div",De,[e("div",null,[w(P,{width:48}),e("div",Ae,[e("span",null,t(n(h)),1),e("a",{target:"_blank",href:n(X)},t(n(a).i18n.getMessage("MakeBy")),9,Oe)])]),e("div",null,[e("span",$e,t(n(a).i18n.getMessage("RateUs")),1),w(J,{"font-size":"1.4rem"}),w(K)])]),e("div",He,[e("div",Ne,[e("div",We,t(n(a).i18n.getMessage("NumberOfFingerprints")),1),e("div",Fe,t(b.value.toLocaleString()),1)]),e("div",xe,[e("div",ze,t(n(a).i18n.getMessage("NumberOfHosts")),1),e("div",Ve,t(y.value.length.toLocaleString()),1)])]),e("div",Ie,[e("div",{class:M(["tab-item",p.value=="stats"?"active":"inactive"]),onClick:i[1]||(i[1]=o=>B("stats"))}," Statistics ",2),e("div",{class:M(["tab-item",p.value=="white-list"?"active":"inactive"]),onClick:i[2]||(i[2]=o=>B("white-list"))}," White list ",2)]),e("div",{class:M(["body",p.value=="stats"?"show":"hide"])},[e("div",Ue,[e("div",Ee,t(n(a).i18n.getMessage("Host")),1),e("div",Ge,t(n(a).i18n.getMessage("Count")),1),e("div",je,t(n(a).i18n.getMessage("UpdatedAt")),1),e("div",Re,t(n(a).i18n.getMessage("WhiteList")),1),e("div",qe,t(n(a).i18n.getMessage("Delete")),1)]),e("div",Pe,[(c(!0),d(C,null,L(y.value,o=>(c(),d("div",{key:o.host,class:"row data-row"},[e("div",{class:"row-host clickable",onClick:r=>D(o)},[e("img",{class:"host-img",loading:"lazy",src:n(S)(o.host,24),width:"24",height:"24"},null,8,Ke),e("span",null,t(o.host),1)],8,Je),e("div",null,t(o.count.toLocaleString()),1),e("div",Qe,t(n(H)(o.updatedAt).slice(0,19)),1),e("div",Xe,[g.value.includes(o.host)?(c(),d("span",Ze,t(n(a).i18n.getMessage("Added")),1)):(c(),d("button",{key:0,class:"btn add-btn",onClick:r=>V(o.host),title:n(a).i18n.getMessage("AddToWhiteList")},t(n(a).i18n.getMessage("Add")),9,Ye))]),e("div",et,[e("button",{class:"btn delete-btn",onClick:r=>z(o.host)},"✖",8,tt)])]))),128))])],2),e("div",{class:M(["body",p.value=="white-list"?"show":"hide"])},[e("div",st,[e("div",ot,t(n(a).i18n.getMessage("Host")),1),e("div",at,t(n(a).i18n.getMessage("Delete")),1)]),e("div",nt,[(c(!0),d(C,null,L(g.value,o=>(c(),d("div",{key:o,class:"row data-row"},[e("div",it,[e("img",{class:"host-img",loading:"lazy",src:n(S)(o,24),width:"24",height:"24"},null,8,lt),e("span",null,t(o),1)]),e("div",ct,[e("button",{class:"btn delete-btn",onClick:r=>F(o)},"✖",8,dt)])]))),128))])],2)])],64))}});const rt=W(ut,[["__scopeId","data-v-40977f35"]]);Z(rt).mount("#app");
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunk-dfed3562.js","sourceRoot":"","sources":["../../../../src/fingerprinting/all-fingerprint-defender/assets/chunk-dfed3562.js"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ :root{--main-font: "Roboto", system-ui, sans-serif;--main-font-size: 13px;--main-font-weight: 400;--main-bold-font-weight: 600;--button-font-weight: 500}@media (prefers-color-scheme: dark){:root{--primary-color: rgb(232, 234, 237);--inactive-primary-color: rgb(175, 176, 178);--primary-background-color: rgb(32, 33, 36);--body-background-color: rgb(32, 33, 36);--none-interactive-background-color: rgba(51, 52, 56, .5);--active-background-color: rgb(72, 72, 76);--inactive-background-color: rgb(48, 48, 48);--link-color: rgb(138, 180, 248);--border-color: rgb(95, 99, 104);--light-border-color: rgb(95, 99, 104, .5);--button-color: rgb(138, 180, 248);--hover-background-color: rgba(138, 180, 248, .08);--hover-border-color: rgb(95, 99, 104);--card-background-color: rgb(51, 52, 56);--card-shadow: rgba(0, 0, 0, .3) 0px 1px 2px 0px, rgba(0, 0, 0, .15) 0px 2px 6px 2px;--color-red: #ff3d3d}}@media (prefers-color-scheme: light){:root{--primary-color: rgb(32, 33, 36);--inactive-primary-color: rgb(90, 93, 101);--primary-background-color: rgb(255, 255, 255);--body-background-color: rgb(233, 233, 233);--none-interactive-background-color: rgba(224, 224, 224, .5);--active-background-color: rgb(227 240 255);--inactive-background-color: rgba(224, 224, 224, .7);--link-color: rgb(25, 103, 210);--border-color: rgb(218, 220, 224);--light-border-color: rgb(218, 220, 224, .5);--button-color: rgb(26, 115, 232);--hover-background-color: rgba(66, 133, 244, .04);--hover-border-color: rgb(210, 227, 252);--card-background-color: rgb(255, 255, 255);--card-shadow: rgba(60, 64, 67, .3) 0px 1px 2px 0px, rgba(60, 64, 67, .15) 0px 2px 6px 2px;--color-red: #db3434}}:root,body{font-family:var(--main-font);font-size:var(--main-font-size);font-weight:var(--main-font-weight);color:var(--primary-color);background-color:var(--body-background-color);white-space:nowrap}a{color:var(--link-color);font-family:var(--main-font)}a:hover{filter:brightness(120%)}@media (prefers-color-scheme: dark){:root{--scroll-bar-color: rgb(70, 70, 70)}}@media (prefers-color-scheme: light){:root{--scroll-bar-color: rgb(200, 200, 200)}}*{scrollbar-width:thin;scrollbar-color:transparent transparent}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:var(--scroll-bar-color);border-radius:20px}.stars[data-v-8900eb09]{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:2px;text-shadow:0 0 2px #f3e2a2;user-select:none;-webkit-user-select:none}.stars>*[data-v-8900eb09]{cursor:pointer;color:#f1c40f;opacity:1;padding:2px;margin:-2px}.stars>*[data-v-8900eb09] :hover{color:#f1c40f}.donate-btn[data-v-8e466c1c]{background-image:linear-gradient(115deg,#4fcf70,#fad648,#a767e5,#12bcfe,#44ce7b);border-radius:5px;color:#fff;overflow:hidden;text-decoration:none;box-shadow:0 3px 3px var(--primary-color)}.donate-btn span[data-v-8e466c1c]{background:#000;border-radius:3px;display:block;font-family:Arial,sans-serif;font-weight:700;line-height:20px;margin:3px;padding:0 5px}.donate-btn[data-v-8e466c1c]:hover{animation:play-8e466c1c .5s ease-in infinite}@keyframes play-8e466c1c{0%{background-position:0px}20%{background-position:-12.4px}40%{background-position:-24.8px}60%{background-position:-37.2px}80%{background-position:-49.6px}to{background-position:-62px}}
@@ -0,0 +1 @@
1
+ body{width:100vw;height:100vh;display:block;overflow:hidden;padding:0;margin:0}@media (prefers-color-scheme: dark){:root{--scroll-bar-color: rgb(70, 70, 70)}}@media (prefers-color-scheme: light){:root{--scroll-bar-color: rgb(200, 200, 200)}}*{scrollbar-width:thin;scrollbar-color:transparent transparent}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:var(--scroll-bar-color);border-radius:20px}.modal[data-v-e3ce65c1]{position:fixed;top:0;left:0;z-index:999;width:100%;height:100%;background-color:#00000080}.modal-content[data-v-e3ce65c1]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--card-background-color);box-shadow:var(--card-shadow);padding:1rem;border-radius:.5rem}.modal-body[data-v-40977f35]{max-height:75vh;width:436px;display:flex;flex-direction:column}.modal-body .section-title[data-v-40977f35]{font-size:1.3rem;margin:20px 0 10px}.modal-body .prevented-fingerprints[data-v-40977f35]{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.modal-body .stat-number[data-v-40977f35]{min-width:56px;padding:4px;border:1px solid var(--border-color);border-radius:10px;box-shadow:var(--card-shadow);background-color:var(--card-background-color);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.modal-body .stat-number .number[data-v-40977f35]{font-size:1.4rem;font-weight:700;color:var(--color-red)}.modal-body .history[data-v-40977f35]{flex:1;overflow:auto;border:1px solid var(--border-color);display:block}.modal-body .history-row[data-v-40977f35]{display:flex;flex-direction:column;align-items:center;padding:10px 0;font-weight:600;box-shadow:var(--card-shadow)}.modal-body .history-row .info[data-v-40977f35]{width:100%;padding:4px 10px;display:flex;box-sizing:border-box;justify-content:space-between}.modal-body .canvas[data-v-40977f35]{margin-top:8px;cursor:pointer;max-width:400px;max-height:300px;border:1px solid var(--border-color);background-color:#fff;image-rendering:pixelated}.modal-title[data-v-40977f35]{display:flex;flex-direction:row;align-items:center}.modal-title .title[data-v-40977f35]{flex-grow:1;display:flex;flex-direction:row;align-items:center;gap:8px;font-size:1.2rem;justify-content:flex-start}.modal-title .title a[data-v-40977f35]{max-width:320px;text-overflow:ellipsis;overflow:hidden}.modal-title .close[data-v-40977f35]{line-height:21px;width:24px}.white-list-col[data-v-40977f35]{width:65px;text-align:center;display:flex;align-items:center;justify-content:center}.delete-col[data-v-40977f35]{width:50px;text-align:center;display:flex;align-items:center;justify-content:center}.show[data-v-40977f35]{display:flex}.hide[data-v-40977f35]{display:none}.tabs[data-v-40977f35]{display:flex;flex-direction:row;align-items:center;justify-content:center;width:100%;box-shadow:var(--card-shadow);border-top-left-radius:10px;border-top-right-radius:10px}.tabs .tab-item[data-v-40977f35]:nth-child(1){border-top-left-radius:10px}.tabs .tab-item[data-v-40977f35]:nth-last-child(1){border-top-right-radius:10px}.tab-item[data-v-40977f35]{flex:1;cursor:pointer;user-select:none;-webkit-user-select:none;padding:0;font-size:1.2em;font-weight:700;display:flex;align-content:center;justify-content:center;line-height:40px;box-sizing:border-box;border-bottom:2px solid transparent}.tab-item[data-v-40977f35]:hover{background-color:var(--hover-background-color)}.tab-item.active[data-v-40977f35]{border-bottom:2px solid var(--button-color);background-color:var(--active-background-color);color:var(--primary-color)}.tab-item.inactive[data-v-40977f35]{border-bottom:2px solid transparent;background-color:var(--inactive-background-color);color:var(--inactive-primary-color)}.layout[data-v-40977f35]{box-sizing:border-box;padding:20px;margin:auto;max-width:800px;height:100vh;display:flex;flex-direction:column;white-space:nowrap;font-family:var(--main-font);font-size:var(--main-font-size)}.header[data-v-40977f35]{display:flex;flex-direction:row;padding:0;margin:0 0 20px;width:100%;justify-content:space-between;align-items:center;white-space:nowrap;gap:10px}@media screen and (max-width: 660px){.header[data-v-40977f35]{flex-direction:column;margin-bottom:10px}}.header>div[data-v-40977f35]:first-child{display:flex;align-items:center;justify-content:center;flex-direction:row}.header>div:first-child .description[data-v-40977f35]{display:flex;flex-direction:column;margin:0 20px;gap:4px}.header>div:first-child .description>span[data-v-40977f35]{font-size:1.6rem;font-weight:var(--main-font-weight-bold);padding:0;text-shadow:0 0 4px var(--none-interactive-background-color)}.header>div:first-child .description a[data-v-40977f35]{font-size:1rem;font-weight:var(--main-font-weight);padding:0}.header>div[data-v-40977f35]:last-child{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px}.top-content[data-v-40977f35]{font-family:var(--main-font);display:flex;justify-content:center;align-items:center;font-size:1.2em;width:100%;margin-bottom:20px;gap:10px;flex-direction:row;box-sizing:border-box}@media screen and (max-width: 660px){.top-content[data-v-40977f35]{flex-direction:column;gap:4px;padding:0 20px}}.top-content-col[data-v-40977f35]{background-color:var(--card-background-color);box-shadow:var(--card-shadow);border-radius:8px;padding:20px 30px;gap:10px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;margin:0;flex:1}@media screen and (max-width: 660px){.top-content-col[data-v-40977f35]{flex-direction:row;justify-content:space-between;padding:10px 20px;width:100%}}.card-title[data-v-40977f35]{margin:0;padding:0;text-align:center;box-sizing:border-box}.total-number[data-v-40977f35]{font-size:2em;font-weight:var(--main-bold-font-weight);margin:0;padding:0;text-align:center;box-sizing:border-box;color:var(--color-red)}.body[data-v-40977f35]{overflow:hidden;border-bottom-left-radius:10px;border-bottom-right-radius:10px;padding:10px;box-sizing:border-box;flex-direction:column;align-items:center;box-shadow:var(--card-shadow);background-color:var(--card-background-color)}.table-header[data-v-40977f35]{display:flex;flex-direction:row;width:100%;margin:0;border-bottom:1px solid var(--border-color);font-weight:var(--main-bold-font-weight);font-size:1.1rem;padding:10px 20px 10px 10px;box-sizing:border-box}.table-header .header-host[data-v-40977f35]{flex-grow:1}.table-header .header-count[data-v-40977f35]{text-align:center}.table-header .header[data-v-40977f35]{text-align:center;width:155px}.updated-at-col[data-v-40977f35]{width:150px;text-align:center}.table-body>.updated-at-col[data-v-40977f35]{font-family:Courier New,Courier,monospace;letter-spacing:-1px;font-size:1rem}@media screen and (max-width: 660px){.hidden-small[data-v-40977f35]{display:none}}.table-body[data-v-40977f35]{overflow-x:hidden;overflow-y:scroll;width:100%;margin:0;padding:0;box-sizing:border-box}.row[data-v-40977f35]{display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%;margin:0;box-sizing:border-box;gap:10px}.row[data-v-40977f35]:hover{background-color:var(--active-background-color)}.clickable[data-v-40977f35]{cursor:pointer}.clickable[data-v-40977f35]:hover{text-decoration:underline;color:var(--link-color)}.host-img[data-v-40977f35]{border-radius:10%;border:1px solid var(--light-border-color)}.row-host[data-v-40977f35]{flex-grow:1;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;text-decoration:none;text-overflow:ellipsis;overflow:hidden}.row-host span[data-v-40977f35]{text-overflow:ellipsis;overflow:hidden}.data-row[data-v-40977f35]{padding:8px}.btn[data-v-40977f35]{width:30px;height:24px;line-height:23px;cursor:pointer;user-select:none;-webkit-user-select:none;padding:0;border-radius:.3rem;font-size:1em;font-weight:700;display:flex;align-content:center;justify-content:center;box-sizing:border-box;border:1px solid var(--border-color);color:var(--button-color);background-color:var(--button-background-color)}.btn[data-v-40977f35]:hover{border:1px solid var(--hover-border-color);background-color:var(--hover-background-color)}.add-btn[data-v-40977f35]{font-weight:400;padding:0 20px;color:var(--primary-color)}.delete-btn[data-v-40977f35]:hover{color:red!important}.shadow-text[data-v-40977f35]{text-shadow:0 0 1px var(--none-interactive-background-color)}
@@ -0,0 +1 @@
1
+ .toggle-button[data-v-ee74a099]{width:33.4px;height:20px;background-color:var(--border-color);border-radius:15px;position:relative;cursor:pointer}.toggle-button[data-v-ee74a099]:hover{background-color:var(--hover-border-color)}.toggle-button .circle[data-v-ee74a099]{width:20px;height:20px;border-radius:50%;position:absolute;transition:all .3s ease}.toggle-button .on[data-v-ee74a099]{top:0;right:0;background-color:var(--button-color)}.toggle-button .off[data-v-ee74a099]{background-color:var(--primary-color);top:0;left:0}main[data-v-053380fd]{padding:20px 10px;margin:0;display:flex;flex-direction:column;gap:20px}.content[data-v-053380fd]{gap:30px;display:flex;flex-direction:column}.sub-content[data-v-053380fd]{display:flex;flex-direction:column}.detected-list[data-v-053380fd]{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;margin:10px 0;padding:0 10px}.detected-list .tag[data-v-053380fd]{padding:.25em .4em 3.5px;border-radius:.25rem;font-weight:600;font-size:1rem;width:60px;text-align:center}.detected-list .d-audio[data-v-053380fd],.detected-list .d-webgl[data-v-053380fd],.detected-list .d-font[data-v-053380fd]{background-color:#ffe081;color:#343a40}.detected-list .d-canvas[data-v-053380fd]{background-color:#db4a58;color:#fff}.btn[data-v-053380fd]{font-weight:var(--button-font-weight);font-family:var(--main-font);display:flex;flex-direction:row;align-items:center;justify-content:center;padding:8px;cursor:pointer;border-radius:4px;color:var(--button-color);border:1px solid var(--border-color);background-color:var(--primary-background-color)}.btn[data-v-053380fd]:hover{border:1px solid var(--hover-border-color);background-color:var(--hover-background-color)}.option-icon[data-v-053380fd]{font-size:2rem;margin-right:4px;padding-bottom:4px;line-height:12px}.reload-btn[data-v-053380fd]{width:50px;height:35px;display:flex;justify-content:center;align-items:flex-end}.reload-btn span[data-v-053380fd]{font-size:3rem;vertical-align:text-top;line-height:26px}.line-title[data-v-053380fd]{font-size:1.2rem;font-weight:600;font-variant:small-caps}.canvas[data-v-053380fd]{cursor:pointer;max-width:300px;max-height:200px;border:1px solid var(--border-color);background-color:#fff;image-rendering:pixelated}.line[data-v-053380fd]{display:flex;flex:1;width:100%;align-items:center;gap:10px;padding:2px}.line.interactive[data-v-053380fd]:hover{background-color:var(--hover-background-color)}.space-between[data-v-053380fd]{justify-content:space-between}.host-line[data-v-053380fd]{padding:10px;box-sizing:border-box}.site-icon[data-v-053380fd]{font-size:1rem;font-weight:600;border-radius:10%;width:16px;min-height:16px;text-align:center;margin-right:4px;box-shadow:0 0 0 1px var(--light-border-color)}.site-icon.detected[data-v-053380fd]{background-color:red}.site-domain[data-v-053380fd]{font-size:1.1rem;word-wrap:break-word;white-space:normal;flex:1;display:flex;flex-direction:row;align-items:center;justify-content:flex-start}.site-domain span[data-v-053380fd]{overflow:auto;max-width:215px}.header[data-v-053380fd]{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:0;margin:0}.header .title[data-v-053380fd]{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;margin-left:10px;flex:1}.header .description[data-v-053380fd]{white-space:nowrap;font-size:1.3rem;font-weight:600;margin-bottom:4px;min-width:180px}.header .description2[data-v-053380fd]{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px}.refresh-btn[data-v-053380fd]{margin:10px 0;padding:20px}.zoom-in-effect[data-v-053380fd]{animation:zoom-in-053380fd .3s ease-in-out}@keyframes zoom-in-053380fd{0%{transform:scale(.8)}70%{transform:scale(1.1)}to{transform:scale(1)}}.total-detected[data-v-053380fd]{font-size:2rem;font-weight:600;margin:10px;padding:10px;border-radius:4px;border:1px solid var(--border-color);background-color:var(--primary-background-color);text-align:center;box-sizing:border-box;color:var(--color-red)}.canvas-list[data-v-053380fd]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;margin:10px 0;padding:0 10px}.canvas-item[data-v-053380fd]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 10px;gap:10px}.canvas-desc[data-v-053380fd]{font-weight:400;width:300px;display:flex;flex-direction:row;align-items:center;justify-content:space-between}
@@ -0,0 +1,83 @@
1
+ {
2
+ "update_url": "https://clients2.google.com/service/update2/crx",
3
+
4
+ "name": "__MSG_ExtensionName__",
5
+ "description": "__MSG_ExtensionDescription__",
6
+ "version": "1.0.5",
7
+ "manifest_version": 3,
8
+ "icons": {
9
+ "16": "img/icon-16.png",
10
+ "32": "img/icon-32.png",
11
+ "48": "img/icon-48.png",
12
+ "128": "img/icon-128.png"
13
+ },
14
+ "action": {
15
+ "default_popup": "popup.html",
16
+ "default_icon": "img/icon-24.png"
17
+ },
18
+ "options_page": "options.html",
19
+ "background": {
20
+ "service_worker": "./assets/chunk-b4410958.js",
21
+ "type": "module"
22
+ },
23
+ "content_scripts": [
24
+ {
25
+ "js": [
26
+ "assets/chunk-16ff15da.js"
27
+ ],
28
+ "all_frames": true,
29
+ "match_about_blank": true,
30
+ "match_origin_as_fallback": true,
31
+ "world": "ISOLATED",
32
+ "matches": [
33
+ "<all_urls>"
34
+ ],
35
+ "run_at": "document_start"
36
+ },
37
+ {
38
+ "js": [
39
+ "assets/chunk-7ce85519.js"
40
+ ],
41
+ "all_frames": true,
42
+ "match_about_blank": true,
43
+ "match_origin_as_fallback": true,
44
+ "world": "MAIN",
45
+ "matches": [
46
+ "<all_urls>"
47
+ ],
48
+ "run_at": "document_start"
49
+ },
50
+ {
51
+ "js": [
52
+ "assets/chunk-aaea1190.js"
53
+ ],
54
+ "all_frames": true,
55
+ "match_about_blank": true,
56
+ "match_origin_as_fallback": true,
57
+ "world": "ISOLATED",
58
+ "matches": [
59
+ "<all_urls>"
60
+ ],
61
+ "run_at": "document_start"
62
+ }
63
+ ],
64
+ "permissions": [
65
+ "storage",
66
+ "activeTab",
67
+ "tabs"
68
+ ],
69
+ "default_locale": "en",
70
+ "web_accessible_resources": [
71
+ {
72
+ "matches": [
73
+ "<all_urls>"
74
+ ],
75
+ "resources": [
76
+ "assets/chunk-16ff15da.js",
77
+ "assets/chunk-7ce85519.js",
78
+ "assets/chunk-aaea1190.js"
79
+ ],
80
+ "use_dynamic_url": true
81
+ }
82
+ ]
83
+ }
@@ -0,0 +1,17 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAShSURBVHgBrVc7aBRRFL2IRQqLBS0ttrCwjGBpkcLCwmILCwshKSwsLLawsBCyhaBgMYla2MgoCpZrYT9gY6GwikUE0VlI8INgouI/8Lznft7OvNnNRs2Dx2Zm3rx77jnn3nkh2uYIRC2eXZ4Fz3WeJc/5CWsynm3aiYGNeOY8Q5ibC2FxMYSiCCHLAoAka/thdlbXYb2CnaN/HfzyYgyMoNWR5xIkWR/CYKDPyzKEhQUHkv8VI5Z1EdrtemD8jU1bLdn4O9HF6ntfiR7JO7dujd6pA+luN3gpVK6vjwIzC7+JvgyJ7j4kOvGE6Aiv6/BcsN9ZvrdvjfX/RvS2AaTXa0g2LnhLgnc6oxe7XUG/SrRkQTMzYZAgPjVD3M957bGXnG0E0u8LAE5gdRqAXF7wzDXr1SeaYRb9gA19TXW4RKb7B6LDK0Q3wBzma6JTWwVfEG2hmWWO4BtER4WV1A9YByAwI37dfE3ds54acM+07EspMdML9IFKuT8/3/ADNseaT0QvhWqXpKo7QKk85ZblKNljoaNnJpi+M7GuMQCAswKV8EPBG74jOsnOP41fXNd0rwJBYsrG4iQAhbgUg4NIOTkol4SBmB+ORD9AMrABkNZ4+PlBAJRryODv41fZ6KXB27LYF/KmkXroa5LU/DCuMSWNB8Z9DwarbCwtCcgUQCfSf/++6GqBdFNM/hs010oUkoA1XKNUm5mWkPEN0QXIJqA5uc9El1IAS3FT3ugn0YPaPWbhF9HzmiTmEwb6GI1HMk0px7dCO2YGf2AdWOGQu1MA/ai/urv3g+h6pJmDsiRnZR0CYPC9V7yGwd6x5gPtO41WXGFj4rdADAhtDABcDSNBc2SFTXnZjGyCejdJADR2OdP+C9G92IrBYKWnGIjZqQBAtT2a4dlyyiYC8P6A+1oN0P5KZMMblIIo0vi7eG7QxoZetVpkQTF+2LdhPy6YkTV69oyJbMs6vt67ORyu0aFDRLdv6/3BgPPP2vuIzm0SPV0bDpfl+fKyx2s1GBC9XVtFmVvGmWUqDYRpPRerBUzwfYZ9qWQmhHJk36yEAa+5jG7JrAzQQ8ZJ0I3dTg8ZpWWu9MGICqIjvgBIDDOoUy6VANe7nAChkpZs4gOUut8HDCcBoCWmZnZU3O1uVpMNUE5S09W6R7kxEFQEgMTnPvAd2aoKMJjClcSIOU470WSYmm3+gMEJE2m5Wbac0OkoiRt0GghxtMswifJKTaMr1j48zoZ9dABemlcTxCCMMyKOUkKdZ2R1C9PIfW9UlSB+8ona+7t6Wg5s7ms1EJhapvlYFj4Sna9Rrov7oFwyTb9s6ot1VIe8C1AO1E7MMJ+w6FVmLXzS2WC3NA//BowoL/hYdVyywbV7xQNZvzdvKFtWpjA4piSA++Yl7pgnaFJFxMUOYtTdzozVfQQ0v8lnQDwHEHwrfN9YPXqKWoHkNGnExanummkfB80hH81rlI+oRa9HC2+c/65yRy2U+hmaNjwTKa2m7qIhGEkpBzjaqQEDRYdX2ai0awBFiwXYF8l/STs1ZnAWiLrDgPwL11fWoMVOp/V/geBohWxx4NzJgH8AW8e0N1HAJD0AAAAASUVORK5CYII=" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title></title>
8
+ <script type="module" crossorigin src="/assets/chunk-dfed3562.js"></script>
9
+ <link rel="modulepreload" crossorigin href="/assets/chunk-3a7b59dd.js">
10
+ <link rel="stylesheet" href="/assets/debounce-09920c81.css">
11
+ <link rel="stylesheet" href="/assets/options-fe2fb5aa.css">
12
+ </head>
13
+ <body>
14
+ <div id="app"></div>
15
+
16
+ </body>
17
+ </html>
@@ -0,0 +1,23 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <style>
7
+ body {
8
+ width: 340px;
9
+ height: 220px;
10
+ padding: 10px;
11
+ margin: 0;
12
+ }
13
+ </style>
14
+ <script type="module" crossorigin src="/assets/chunk-1a1456ec.js"></script>
15
+ <link rel="modulepreload" crossorigin href="/assets/chunk-3a7b59dd.js">
16
+ <link rel="stylesheet" href="/assets/debounce-09920c81.css">
17
+ <link rel="stylesheet" href="/assets/popup-1886d2ef.css">
18
+ </head>
19
+ <body>
20
+ <div id="app"></div>
21
+
22
+ </body>
23
+ </html>
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=background.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"background.d.ts","sourceRoot":"","sources":["../../../src/fingerprinting/anti-webgpu/background.js"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ importScripts("lib/config.js");
2
+ importScripts("lib/chrome.js");
3
+ importScripts("lib/runtime.js");
4
+ importScripts("lib/common.js");
@@ -0,0 +1 @@
1
+ {"version":3,"file":"background.js","sourceRoot":"","sources":["../../../src/fingerprinting/anti-webgpu/background.js"],"names":[],"mappings":"AAAA,aAAa,CAAC,eAAe,CAAC,CAAC;AAC/B,aAAa,CAAC,eAAe,CAAC,CAAC;AAC/B,aAAa,CAAC,gBAAgB,CAAC,CAAC;AAChC,aAAa,CAAC,eAAe,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=inject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inject.d.ts","sourceRoot":"","sources":["../../../../../src/fingerprinting/anti-webgpu/data/content_script/inject.js"],"names":[],"mappings":""}
@@ -0,0 +1,50 @@
1
+ var background = (function () {
2
+ let tmp = {};
3
+ /* */
4
+ chrome.runtime.onMessage.addListener(function (request) {
5
+ for (let id in tmp) {
6
+ if (tmp[id] && (typeof tmp[id] === "function")) {
7
+ if (request.path === "background-to-page") {
8
+ if (request.method === id) {
9
+ tmp[id](request.data);
10
+ }
11
+ }
12
+ }
13
+ }
14
+ });
15
+ /* */
16
+ return {
17
+ "receive": function (id, callback) {
18
+ tmp[id] = callback;
19
+ },
20
+ "send": function (id, data) {
21
+ chrome.runtime.sendMessage({
22
+ "method": id,
23
+ "data": data,
24
+ "path": "page-to-background"
25
+ }, function () {
26
+ return chrome.runtime.lastError;
27
+ });
28
+ }
29
+ }
30
+ })();
31
+
32
+ const ikey = "webgpu-defender-sandboxed-frame";
33
+
34
+ if (document.documentElement.getAttribute(ikey) === null) {
35
+ parent.postMessage(ikey, '*');
36
+ window.top.postMessage(ikey, '*');
37
+ } else {
38
+ document.documentElement.removeAttribute(ikey);
39
+ }
40
+
41
+ window.addEventListener("message", function (e) {
42
+ if (e.data && e.data === "webgpu-defender-alert") {
43
+ e.preventDefault();
44
+ e.stopPropagation();
45
+ /* */
46
+ background.send("fingerprint", {
47
+ "host": document.location.host
48
+ });
49
+ }
50
+ }, false);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inject.js","sourceRoot":"","sources":["../../../../../src/fingerprinting/anti-webgpu/data/content_script/inject.js"],"names":[],"mappings":"AAAA,IAAI,UAAU,GAAG,CAAC;IAChB,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,MAAM;IACN,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,UAAU,OAAO;QACpD,KAAK,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC;YACnB,IAAI,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,EAAE,CAAC;gBAC/C,IAAI,OAAO,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;oBAC1C,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;wBAC1B,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBACxB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IACH,MAAM;IACN,OAAO;QACL,SAAS,EAAE,UAAU,EAAE,EAAE,QAAQ;YAC/B,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC;QACrB,CAAC;QACD,MAAM,EAAE,UAAU,EAAE,EAAE,IAAI;YACxB,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;gBACzB,QAAQ,EAAE,EAAE;gBACZ,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,oBAAoB;aAC7B,EAAE;gBACD,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;YAClC,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAA;AACH,CAAC,CAAC,EAAE,CAAC;AAEL,MAAM,IAAI,GAAG,iCAAiC,CAAC;AAE/C,IAAI,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;IACzD,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC9B,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC;KAAM,CAAC;IACN,QAAQ,CAAC,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,CAAC;IAC5C,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,uBAAuB,EAAE,CAAC;QACjD,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,MAAM;QACN,UAAU,CAAC,IAAI,CAAC,aAAa,EAAE;YAC7B,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI;SAC/B,CAAC,CAAC;IACL,CAAC;AACH,CAAC,EAAE,KAAK,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=inject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inject.d.ts","sourceRoot":"","sources":["../../../../../../src/fingerprinting/anti-webgpu/data/content_script/page_context/inject.js"],"names":[],"mappings":""}
@@ -0,0 +1,172 @@
1
+ {
2
+ const config = {
3
+ "noise": {
4
+ "color": 0.01,
5
+ "percent": 0.1,
6
+ "buffer": 0.0001
7
+ }
8
+ };
9
+ //
10
+ try {
11
+ const _GPUAdapter = Object.getOwnPropertyDescriptor(GPUAdapter.prototype, "limits").get;
12
+ Object.defineProperty(GPUAdapter.prototype, "_limits", {"configurable": true, get() {return _GPUAdapter.call(this)}});
13
+ //
14
+ Object.defineProperty(GPUAdapter.prototype, "limits", {
15
+ "get": new Proxy(_GPUAdapter, {
16
+ apply(target, self, args) {
17
+ const result = Reflect.apply(target, self, args);
18
+ //
19
+ const _maxBufferSize = self._limits.maxBufferSize;
20
+ const _maxUniformBufferBindingSize = self._limits.maxUniformBufferBindingSize;
21
+ const _maxStorageBufferBindingSize = self._limits.maxStorageBufferBindingSize;
22
+ const _maxComputeWorkgroupStorageSize = self._limits.maxComputeWorkgroupStorageSize;
23
+ //
24
+ Object.defineProperty(result.__proto__, "maxBufferSize", {"configurable": true, get() {return _maxBufferSize + (Math.random() < 0.5 ? -1 : -2)}});
25
+ Object.defineProperty(result.__proto__, "maxUniformBufferBindingSize", {"configurable": true, get() {return _maxUniformBufferBindingSize + (Math.random() < 0.5 ? -1 : -2)}});
26
+ Object.defineProperty(result.__proto__, "maxStorageBufferBindingSize", {"configurable": true, get() {return _maxStorageBufferBindingSize + (Math.random() < 0.5 ? -1 : -2)}});
27
+ Object.defineProperty(result.__proto__, "maxComputeWorkgroupStorageSize", {"configurable": true, get() {return _maxComputeWorkgroupStorageSize + (Math.random() < 0.5 ? -1 : -2)}});
28
+ //
29
+ return result;
30
+ }
31
+ })
32
+ });
33
+ } catch (e) {
34
+ //console.error(e);
35
+ }
36
+ //
37
+ try {
38
+ const _GPUDevice = Object.getOwnPropertyDescriptor(GPUDevice.prototype, "limits").get;
39
+ Object.defineProperty(GPUDevice.prototype, "_limits", {"configurable": true, get() {return _GPUDevice.call(this)}});
40
+ //
41
+ Object.defineProperty(GPUDevice.prototype, "limits", {
42
+ "get": new Proxy(_GPUDevice, {
43
+ apply(target, self, args) {
44
+ const result = Reflect.apply(target, self, args);
45
+ //
46
+ const _maxBufferSize = self._limits.maxBufferSize;
47
+ const _maxUniformBufferBindingSize = self._limits.maxUniformBufferBindingSize;
48
+ const _maxStorageBufferBindingSize = self._limits.maxStorageBufferBindingSize;
49
+ const _maxComputeWorkgroupStorageSize = self._limits.maxComputeWorkgroupStorageSize;
50
+ //
51
+ Object.defineProperty(result.__proto__, "maxBufferSize", {"configurable": true, get() {return _maxBufferSize + (Math.random() < 0.5 ? -1 : -2)}});
52
+ Object.defineProperty(result.__proto__, "maxUniformBufferBindingSize", {"configurable": true, get() {return _maxUniformBufferBindingSize + (Math.random() < 0.5 ? -1 : -2)}});
53
+ Object.defineProperty(result.__proto__, "maxStorageBufferBindingSize", {"configurable": true, get() {return _maxStorageBufferBindingSize + (Math.random() < 0.5 ? -1 : -2)}});
54
+ Object.defineProperty(result.__proto__, "maxComputeWorkgroupStorageSize", {"configurable": true, get() {return _maxComputeWorkgroupStorageSize + (Math.random() < 0.5 ? -1 : -2)}});
55
+ //
56
+ return result;
57
+ }
58
+ })
59
+ });
60
+ } catch (e) {
61
+ //console.error(e);
62
+ }
63
+ //
64
+ try {
65
+ if (GPUCommandEncoder) {
66
+ GPUCommandEncoder.prototype.beginRenderPass = new Proxy(GPUCommandEncoder.prototype.beginRenderPass, {
67
+ apply(target, self, args) {
68
+ if (args) {
69
+ if (args[0]) {
70
+ if (args[0].colorAttachments) {
71
+ if (args[0].colorAttachments[0]) {
72
+ if (args[0].colorAttachments[0].clearValue) {
73
+ try {
74
+ const metrics = args[0].colorAttachments[0].clearValue;
75
+ for (let key in metrics) {
76
+ let value = metrics[key];
77
+ value = value + (Math.random() < 0.5 ? -1 : -2) * config.noise.color * value;
78
+ value = (value < 0 ? -1 : +1) * value;
79
+ metrics[key] = value;
80
+ }
81
+ //
82
+ args[0].colorAttachments[0].clearValue = metrics;
83
+ window.top.postMessage("webgpu-defender-alert", '*');
84
+ } catch (e) {
85
+ //console.error(e);
86
+ }
87
+ }
88
+ }
89
+ }
90
+ }
91
+ }
92
+ //
93
+ return Reflect.apply(target, self, args);
94
+ }
95
+ });
96
+ }
97
+ } catch (e) {
98
+ //console.error(e);
99
+ }
100
+ //
101
+ try {
102
+ if (GPUQueue) {
103
+ GPUQueue.prototype.writeBuffer = new Proxy(GPUQueue.prototype.writeBuffer, {
104
+ apply(target, self, args) {
105
+ if (args) {
106
+ if (args[2]) {
107
+ const flag = (args[2] instanceof ArrayBuffer) || (args[2] instanceof Float32Array);
108
+ if (flag) {
109
+ try {
110
+ const metrics = args[2];
111
+ const array = Array(metrics.length).fill(0).map((n, i) => n + i);
112
+ const count = Math.ceil(metrics.length * config.noise.percent);
113
+ const shuffled = array.sort(() => 0.5 - Math.random());
114
+ const selected = [...shuffled.slice(0, count)];
115
+ //
116
+ for (let i = 0; i < selected.length; i++) {
117
+ const index = selected[i];
118
+ const value = metrics[index];
119
+ metrics[index] = value + (Math.random() < 0.5 ? -config.noise.buffer * value : +config.noise.buffer * value);
120
+ }
121
+ //
122
+ args[2] = metrics;
123
+ window.top.postMessage("webgpu-defender-alert", '*');
124
+ } catch (e) {
125
+ //console.error(e);
126
+ }
127
+ }
128
+ }
129
+ }
130
+ //
131
+ return Reflect.apply(target, self, args);
132
+ }
133
+ });
134
+ }
135
+ } catch (e) {
136
+ //console.error(e);
137
+ }
138
+ }
139
+
140
+ {
141
+ const mkey = "webgpu-defender-sandboxed-frame";
142
+ document.documentElement.setAttribute(mkey, '');
143
+ //
144
+ window.addEventListener("message", function (e) {
145
+ if (e.data && e.data === mkey) {
146
+ e.preventDefault();
147
+ e.stopPropagation();
148
+ //
149
+ if (e.source) {
150
+ if (e.source.GPUQueue) {
151
+ e.source.GPUQueue.prototype.writeBuffer = GPUQueue.prototype.writeBuffer;
152
+ }
153
+ //
154
+ if (e.source.GPUCommandEncoder) {
155
+ e.source.GPUCommandEncoder.prototype.beginRenderPass = GPUCommandEncoder.prototype.beginRenderPass;
156
+ }
157
+ //
158
+ if (e.source.GPUAdapter) {
159
+ Object.defineProperty(e.source.GPUAdapter.prototype, "limits", {
160
+ "get": Object.getOwnPropertyDescriptor(GPUAdapter.prototype, "limits").get
161
+ });
162
+ }
163
+ //
164
+ if (e.source.GPUDevice) {
165
+ Object.defineProperty(e.source.GPUDevice.prototype, "limits", {
166
+ "get": Object.getOwnPropertyDescriptor(GPUDevice.prototype, "limits").get
167
+ });
168
+ }
169
+ }
170
+ }
171
+ }, false);
172
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inject.js","sourceRoot":"","sources":["../../../../../../src/fingerprinting/anti-webgpu/data/content_script/page_context/inject.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ html, body {
2
+ height: 0;
3
+ }
4
+
5
+ body {
6
+ border: 0;
7
+ margin: 0;
8
+ padding: 0;
9
+ width: 500px;
10
+ }
11
+
12
+ .content {
13
+ border: 0;
14
+ margin: 0;
15
+ padding: 0;
16
+ width: 100%;
17
+ }
18
+
19
+ .content table {
20
+ width: 100%;
21
+ margin: auto;
22
+ border-spacing: 0;
23
+ }
24
+
25
+ .content > table {
26
+ border-spacing: 0 10px;
27
+ border-bottom: solid 1px rgba(0,0,0,0.1);
28
+ }
29
+
30
+ .content table tr td {
31
+ color: #333;
32
+ font-size: 13px;
33
+ font-family: arial, sans-serif;
34
+ }
35
+
36
+ .content .logo {
37
+ height: 110px;
38
+ background: url("../icons/128.png") no-repeat center center;
39
+ background-size: 64px;
40
+ }
41
+
42
+ .content .name {
43
+ color: #555;
44
+ user-select: none;
45
+ text-align: center;
46
+ }
47
+
48
+ .content .buttons {
49
+ height: 150px;
50
+ border-left: solid 1px rgba(0,0,0,0.1);
51
+ }
52
+
53
+ .content .buttons .icon {
54
+ width: 32px;
55
+ font-size: 17px;
56
+ cursor: pointer;
57
+ line-height: 37px;
58
+ user-select: none;
59
+ text-align: center;
60
+ font-family: monospace;
61
+ }
62
+
63
+ .content .buttons .icon svg {
64
+ fill: #555;
65
+ margin: -5px 0 0 0;
66
+ vertical-align: middle;
67
+ }
68
+
69
+ .content .buttons .button {
70
+ padding: 0;
71
+ cursor: pointer;
72
+ text-indent: 5px;
73
+ user-select: none;
74
+ }
75
+
76
+ .content .buttons tr {
77
+ transition: 300ms ease all;
78
+ }
79
+
80
+ .content .buttons tr:hover {
81
+ background-color: rgba(0,0,0,0.1);
82
+ }
83
+
84
+ @-moz-document url-prefix() {
85
+ html, body {
86
+ height: auto;
87
+ }
88
+ }