@nuxt/scripts 1.0.0-beta.7 → 1.0.0-rc.1

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 (256) hide show
  1. package/dist/devtools-client/200.html +1 -0
  2. package/dist/devtools-client/404.html +1 -0
  3. package/dist/devtools-client/_fonts/4ppnHhMi-pBsWSPo7mY0avYxlDoAg1N3PTzCwXLZ5rA-d9oibkGnTd1JL3tc_xnaVgBLYmOB8kjrK2cvZaqwj9s.woff2 +0 -0
  4. package/dist/devtools-client/_fonts/4qBuU9MRVUlPZNPSF7Xom_sK8RBEnfYu-9VXFrdq8A8-8TDwLE1HAj1sQn7XxVWtM_7sIaPM-DTdO3Pf8U2DF1U.woff2 +0 -0
  5. package/dist/devtools-client/_fonts/6dYsbWUd_BpKJ7mdDihgOcya1gHXLpJBuMYXux3WMjE-q3fYNS8YbW5n7ZeXI2vSNgkRWW5VDPKAl51SNTjG2qk.woff2 +0 -0
  6. package/dist/devtools-client/_fonts/Lr-hqqZZsYmCt0ITUlr1CUrWim9fsKvoDFZliMxgNHY-iTa_Yt_PzhOY9TX7ZXdSlEPim6iRt92xhECwaxWxd5w.woff2 +0 -0
  7. package/dist/devtools-client/_fonts/OknHvWI6KtYn1JQBzX7eSpNDBQ8520F9TvSUJYkVf6A-xeZn9253svK_8Q2LD0XEruY_MnEsuCRO5LenPoggC0Y.woff2 +0 -0
  8. package/dist/devtools-client/_fonts/PV2hrQG6wq5BlIPDjdL1IcOflycaghyt5MHzlBqZtlo-lb_WexLz3VZqfTN0oi554iBH5tT2j2UFEV-XErCAS3E.woff2 +0 -0
  9. package/dist/devtools-client/_fonts/UA7OtwYHwGN_HjcVGTdmiQxUit7FlqkCwxVUWSeXVnQ-B4OXCFOL_tWrYODpQTc07aMaj0c2cewTOmBRWR9tD-A.woff2 +0 -0
  10. package/dist/devtools-client/_fonts/VE4cDVCv5MxbFM7ZLoLCGbIpNd71zhp7MDI9lmN5Y7I-xZyDYCUVrd6LV8eVGF3Um3UZjBFuUtDGtvdyTBBRYBo.woff2 +0 -0
  11. package/dist/devtools-client/_fonts/fVoGbnMbBFd5L9BBp9fUPavUSkZ_EmsQNSyadkT-108-U4T0khaeLQSIhtt9eVvaCEKJjtWJ4ioRJOf8hvqkWY0.woff2 +0 -0
  12. package/dist/devtools-client/_fonts/lQAxeCEs1R0Lw-H9XRU1RlOARQN8J6npRsPjyEDMe5s-_DUSLEkO3tKTuun_gSnDLoQPVEnpOnyqZMOw0ByZ6PA.woff2 +0 -0
  13. package/dist/devtools-client/_fonts/lntlqNHKLV2n82yTwMde70QqOjcfLE2XJ5oKZ3vRPWc-z6TxpIZQdWXztWLr9_OFWqt_WJJoeGtuK_-XQMZGQwE.woff2 +0 -0
  14. package/dist/devtools-client/_fonts/qxAYvKsXWeYv731eb-h5TRurcdIP_W44mpNdX-HABAk-zUDeMEFlNtNbrwvT9JxLEBg0TphGy70O6RfIoIX_ZwU.woff2 +0 -0
  15. package/dist/devtools-client/_nuxt/B3kN3DAy.js +1 -0
  16. package/dist/devtools-client/_nuxt/B8PEiB0p.js +1 -0
  17. package/dist/devtools-client/_nuxt/C8jhSQ8l.js +1 -0
  18. package/dist/devtools-client/_nuxt/CJD6wrkT.js +188 -0
  19. package/dist/devtools-client/_nuxt/CfOsp0mU.js +1 -0
  20. package/dist/devtools-client/_nuxt/DKL6PHO3.js +1 -0
  21. package/dist/devtools-client/_nuxt/ajngqPCs.js +1 -0
  22. package/dist/devtools-client/_nuxt/builds/latest.json +1 -0
  23. package/dist/devtools-client/_nuxt/builds/meta/b800a0be-5cab-4ea6-89e3-dd3a85690a73.json +1 -0
  24. package/dist/devtools-client/_nuxt/dlaR8P-P.js +1 -0
  25. package/dist/devtools-client/_nuxt/entry.BwpOBArY.css +1 -0
  26. package/dist/devtools-client/_nuxt/error-404.CvOVjXeC.css +1 -0
  27. package/dist/devtools-client/_nuxt/error-500.BIm53nmx.css +1 -0
  28. package/dist/devtools-client/_nuxt/first-party.C8Ha4JLM.css +1 -0
  29. package/dist/devtools-client/_nuxt/index.CA-OpSj0.css +1 -0
  30. package/dist/devtools-client/_nuxt/registry.B9lnjF_b.css +1 -0
  31. package/dist/devtools-client/_nuxt/wDzz0qaB.js +1 -0
  32. package/dist/devtools-client/docs/index.html +1 -0
  33. package/dist/devtools-client/first-party/index.html +1 -0
  34. package/dist/devtools-client/index.html +1 -0
  35. package/dist/devtools-client/registry/index.html +1 -0
  36. package/dist/module.d.mts +29 -84
  37. package/dist/module.d.ts +121 -0
  38. package/dist/module.json +1 -1
  39. package/dist/module.mjs +939 -755
  40. package/dist/registry.d.mts +91 -4
  41. package/dist/registry.d.ts +93 -0
  42. package/dist/registry.mjs +668 -326
  43. package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.d.vue.ts +15 -79
  44. package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.vue +78 -180
  45. package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.vue.d.ts +15 -79
  46. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsAdvancedMarkerElement.d.vue.ts +6 -55
  47. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsAdvancedMarkerElement.vue +12 -83
  48. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsAdvancedMarkerElement.vue.d.ts +6 -55
  49. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsCircle.d.vue.ts +5 -1
  50. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsCircle.vue +24 -38
  51. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsCircle.vue.d.ts +5 -1
  52. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsGeoJson.d.vue.ts +43 -0
  53. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsGeoJson.vue +60 -0
  54. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsGeoJson.vue.d.ts +43 -0
  55. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsHeatmapLayer.d.vue.ts +4 -0
  56. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsHeatmapLayer.vue +22 -26
  57. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsHeatmapLayer.vue.d.ts +4 -0
  58. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsInfoWindow.d.vue.ts +9 -5
  59. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsInfoWindow.vue +56 -57
  60. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsInfoWindow.vue.d.ts +9 -5
  61. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarker.d.vue.ts +24 -41
  62. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarker.vue +69 -73
  63. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarker.vue.d.ts +24 -41
  64. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarkerClusterer.d.vue.ts +36 -4
  65. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarkerClusterer.vue +82 -37
  66. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarkerClusterer.vue.d.ts +36 -4
  67. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsOverlayView.d.vue.ts +78 -0
  68. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsOverlayView.vue +222 -0
  69. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsOverlayView.vue.d.ts +78 -0
  70. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPinElement.d.vue.ts +10 -3
  71. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPinElement.vue +9 -41
  72. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPinElement.vue.d.ts +10 -3
  73. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolygon.d.vue.ts +7 -3
  74. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolygon.vue +23 -38
  75. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolygon.vue.d.ts +7 -3
  76. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolyline.d.vue.ts +7 -3
  77. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolyline.vue +23 -38
  78. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolyline.vue.d.ts +7 -3
  79. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsRectangle.d.vue.ts +7 -3
  80. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsRectangle.vue +24 -38
  81. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsRectangle.vue.d.ts +7 -3
  82. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsStaticMap.d.vue.ts +200 -0
  83. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsStaticMap.vue +165 -0
  84. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsStaticMap.vue.d.ts +200 -0
  85. package/dist/runtime/components/GoogleMaps/bindGoogleMapsEvents.d.ts +13 -0
  86. package/dist/runtime/components/GoogleMaps/bindGoogleMapsEvents.js +8 -0
  87. package/dist/runtime/components/GoogleMaps/injectionKeys.d.ts +10 -0
  88. package/dist/runtime/components/GoogleMaps/injectionKeys.js +2 -0
  89. package/dist/runtime/components/GoogleMaps/useGoogleMapsResource.d.ts +48 -0
  90. package/dist/runtime/components/GoogleMaps/useGoogleMapsResource.js +51 -0
  91. package/dist/runtime/components/ScriptBlueskyEmbed.d.vue.ts +85 -0
  92. package/dist/runtime/components/ScriptBlueskyEmbed.vue +88 -0
  93. package/dist/runtime/components/ScriptBlueskyEmbed.vue.d.ts +85 -0
  94. package/dist/runtime/components/ScriptCrisp.vue +1 -1
  95. package/dist/runtime/components/ScriptGoogleAdsense.vue +1 -1
  96. package/dist/runtime/components/ScriptGravatar.d.vue.ts +22 -0
  97. package/dist/runtime/components/ScriptGravatar.vue +46 -0
  98. package/dist/runtime/components/ScriptGravatar.vue.d.ts +22 -0
  99. package/dist/runtime/components/ScriptInstagramEmbed.d.vue.ts +1 -2
  100. package/dist/runtime/components/ScriptInstagramEmbed.vue +8 -3
  101. package/dist/runtime/components/ScriptInstagramEmbed.vue.d.ts +1 -2
  102. package/dist/runtime/components/ScriptIntercom.vue +4 -3
  103. package/dist/runtime/components/ScriptPayPalButtons.d.vue.ts +43 -32
  104. package/dist/runtime/components/ScriptPayPalButtons.vue +48 -79
  105. package/dist/runtime/components/ScriptPayPalButtons.vue.d.ts +43 -32
  106. package/dist/runtime/components/ScriptPayPalMessages.d.vue.ts +37 -23
  107. package/dist/runtime/components/ScriptPayPalMessages.vue +46 -50
  108. package/dist/runtime/components/ScriptPayPalMessages.vue.d.ts +37 -23
  109. package/dist/runtime/components/ScriptStripePricingTable.vue +2 -2
  110. package/dist/runtime/components/ScriptVimeoPlayer.d.vue.ts +9 -0
  111. package/dist/runtime/components/ScriptVimeoPlayer.vue +13 -10
  112. package/dist/runtime/components/ScriptVimeoPlayer.vue.d.ts +9 -0
  113. package/dist/runtime/components/ScriptXEmbed.d.vue.ts +0 -2
  114. package/dist/runtime/components/ScriptXEmbed.vue +14 -8
  115. package/dist/runtime/components/ScriptXEmbed.vue.d.ts +0 -2
  116. package/dist/runtime/components/ScriptYouTubePlayer.d.vue.ts +2 -2
  117. package/dist/runtime/components/ScriptYouTubePlayer.vue +11 -5
  118. package/dist/runtime/components/ScriptYouTubePlayer.vue.d.ts +2 -2
  119. package/dist/runtime/composables/useScript.js +148 -8
  120. package/dist/runtime/composables/useScriptEventPage.js +2 -2
  121. package/dist/runtime/composables/useScriptTriggerConsent.d.ts +10 -0
  122. package/dist/runtime/composables/useScriptTriggerConsent.js +33 -20
  123. package/dist/runtime/composables/useScriptTriggerElement.js +1 -1
  124. package/dist/runtime/composables/useScriptTriggerIdleTimeout.js +1 -1
  125. package/dist/runtime/devtools-standalone-bridge.client.d.ts +8 -0
  126. package/dist/runtime/devtools-standalone-bridge.client.js +50 -0
  127. package/dist/runtime/registry/bing-uet.d.ts +20 -0
  128. package/dist/runtime/registry/bing-uet.js +29 -0
  129. package/dist/runtime/registry/bluesky-embed.d.ts +116 -0
  130. package/dist/runtime/registry/bluesky-embed.js +72 -0
  131. package/dist/runtime/registry/clarity.d.ts +10 -15
  132. package/dist/runtime/registry/clarity.js +22 -31
  133. package/dist/runtime/registry/cloudflare-web-analytics.d.ts +2 -13
  134. package/dist/runtime/registry/cloudflare-web-analytics.js +2 -14
  135. package/dist/runtime/registry/crisp.d.ts +10 -40
  136. package/dist/runtime/registry/crisp.js +2 -33
  137. package/dist/runtime/registry/databuddy-analytics.d.ts +2 -35
  138. package/dist/runtime/registry/databuddy-analytics.js +20 -45
  139. package/dist/runtime/registry/fathom-analytics.d.ts +7 -26
  140. package/dist/runtime/registry/fathom-analytics.js +3 -25
  141. package/dist/runtime/registry/google-adsense.d.ts +3 -11
  142. package/dist/runtime/registry/google-adsense.js +2 -11
  143. package/dist/runtime/registry/google-analytics.d.ts +3 -5
  144. package/dist/runtime/registry/google-analytics.js +3 -8
  145. package/dist/runtime/registry/google-maps.d.ts +3 -9
  146. package/dist/runtime/registry/google-maps.js +2 -8
  147. package/dist/runtime/registry/google-recaptcha.d.ts +2 -6
  148. package/dist/runtime/registry/google-recaptcha.js +4 -12
  149. package/dist/runtime/registry/google-sign-in.d.ts +2 -13
  150. package/dist/runtime/registry/google-sign-in.js +2 -22
  151. package/dist/runtime/registry/google-tag-manager.d.ts +3 -28
  152. package/dist/runtime/registry/google-tag-manager.js +4 -27
  153. package/dist/runtime/registry/gravatar.d.ts +26 -0
  154. package/dist/runtime/registry/gravatar.js +36 -0
  155. package/dist/runtime/registry/hotjar.d.ts +4 -6
  156. package/dist/runtime/registry/hotjar.js +2 -5
  157. package/dist/runtime/registry/instagram-embed.d.ts +3 -18
  158. package/dist/runtime/registry/instagram-embed.js +4 -19
  159. package/dist/runtime/registry/intercom.d.ts +5 -13
  160. package/dist/runtime/registry/intercom.js +2 -12
  161. package/dist/runtime/registry/matomo-analytics.d.ts +3 -12
  162. package/dist/runtime/registry/matomo-analytics.js +3 -12
  163. package/dist/runtime/registry/meta-pixel.d.ts +4 -6
  164. package/dist/runtime/registry/meta-pixel.js +2 -4
  165. package/dist/runtime/registry/mixpanel-analytics.d.ts +22 -0
  166. package/dist/runtime/registry/mixpanel-analytics.js +46 -0
  167. package/dist/runtime/registry/npm.d.ts +3 -7
  168. package/dist/runtime/registry/npm.js +2 -9
  169. package/dist/runtime/registry/paypal.d.ts +4 -25
  170. package/dist/runtime/registry/paypal.js +3 -66
  171. package/dist/runtime/registry/plausible-analytics.js +19 -14
  172. package/dist/runtime/registry/posthog.d.ts +10 -12
  173. package/dist/runtime/registry/posthog.js +3 -12
  174. package/dist/runtime/registry/reddit-pixel.d.ts +5 -6
  175. package/dist/runtime/registry/reddit-pixel.js +2 -4
  176. package/dist/runtime/registry/rybbit-analytics.d.ts +2 -14
  177. package/dist/runtime/registry/rybbit-analytics.js +10 -20
  178. package/dist/runtime/registry/schemas.d.ts +982 -0
  179. package/dist/runtime/registry/schemas.js +937 -0
  180. package/dist/runtime/registry/segment.d.ts +2 -5
  181. package/dist/runtime/registry/segment.js +2 -5
  182. package/dist/runtime/registry/snapchat-pixel.d.ts +5 -34
  183. package/dist/runtime/registry/snapchat-pixel.js +2 -20
  184. package/dist/runtime/registry/stripe.d.ts +3 -4
  185. package/dist/runtime/registry/stripe.js +2 -4
  186. package/dist/runtime/registry/tiktok-pixel.d.ts +4 -7
  187. package/dist/runtime/registry/tiktok-pixel.js +2 -6
  188. package/dist/runtime/registry/umami-analytics.d.ts +2 -31
  189. package/dist/runtime/registry/umami-analytics.js +2 -36
  190. package/dist/runtime/registry/vercel-analytics.d.ts +29 -0
  191. package/dist/runtime/registry/vercel-analytics.js +84 -0
  192. package/dist/runtime/registry/vimeo-player.d.ts +2 -2
  193. package/dist/runtime/registry/vimeo-player.js +1 -1
  194. package/dist/runtime/registry/x-embed.d.ts +3 -17
  195. package/dist/runtime/registry/x-embed.js +3 -18
  196. package/dist/runtime/registry/x-pixel.d.ts +4 -7
  197. package/dist/runtime/registry/x-pixel.js +2 -5
  198. package/dist/runtime/registry/youtube-player.d.ts +7 -7
  199. package/dist/runtime/registry/youtube-player.js +1 -1
  200. package/dist/runtime/server/bluesky-embed-image.d.ts +2 -0
  201. package/dist/runtime/server/bluesky-embed-image.js +7 -0
  202. package/dist/runtime/server/bluesky-embed.d.ts +16 -0
  203. package/dist/runtime/server/bluesky-embed.js +59 -0
  204. package/dist/runtime/server/google-maps-geocode-proxy.d.ts +2 -0
  205. package/dist/runtime/server/google-maps-geocode-proxy.js +34 -0
  206. package/dist/runtime/server/google-static-maps-proxy.js +2 -13
  207. package/dist/runtime/server/gravatar-proxy.d.ts +2 -0
  208. package/dist/runtime/server/gravatar-proxy.js +46 -0
  209. package/dist/runtime/server/instagram-embed-asset.js +8 -41
  210. package/dist/runtime/server/instagram-embed-image.js +6 -53
  211. package/dist/runtime/server/instagram-embed.d.ts +16 -0
  212. package/dist/runtime/server/instagram-embed.js +176 -35
  213. package/dist/runtime/server/proxy-handler.js +101 -83
  214. package/dist/runtime/server/utils/image-proxy.d.ts +12 -0
  215. package/dist/runtime/server/utils/image-proxy.js +70 -0
  216. package/dist/runtime/server/utils/privacy.d.ts +1 -10
  217. package/dist/runtime/server/utils/privacy.js +60 -40
  218. package/dist/runtime/server/x-embed-image.js +5 -49
  219. package/dist/runtime/server/x-embed.js +3 -2
  220. package/dist/runtime/types.d.ts +272 -51
  221. package/dist/runtime/types.js +0 -2
  222. package/dist/runtime/utils/pure.d.ts +1 -1
  223. package/dist/runtime/utils.d.ts +6 -4
  224. package/dist/runtime/utils.js +31 -14
  225. package/dist/stats.d.mts +202 -0
  226. package/dist/stats.d.ts +202 -0
  227. package/dist/stats.mjs +3875 -0
  228. package/dist/types-source.d.mts +17 -0
  229. package/dist/types-source.d.ts +17 -0
  230. package/dist/types-source.mjs +3414 -0
  231. package/dist/types.d.mts +4 -2
  232. package/package.json +35 -61
  233. package/README.md +0 -86
  234. package/dist/client/200.html +0 -1
  235. package/dist/client/404.html +0 -1
  236. package/dist/client/_nuxt/BJa0m50V.js +0 -1
  237. package/dist/client/_nuxt/BPQ3VLAy.js +0 -1
  238. package/dist/client/_nuxt/Ci5iXYuB.js +0 -1
  239. package/dist/client/_nuxt/DaI2y8Uz.js +0 -162
  240. package/dist/client/_nuxt/builds/latest.json +0 -1
  241. package/dist/client/_nuxt/builds/meta/9b4fb16a-3c62-48b0-8295-126cb077b5d3.json +0 -1
  242. package/dist/client/_nuxt/entry.D45OuV0w.css +0 -1
  243. package/dist/client/_nuxt/error-404.B57D-jUQ.css +0 -1
  244. package/dist/client/_nuxt/error-500.DTHUW7BI.css +0 -1
  245. package/dist/client/_nuxt/vPLZfVXe.js +0 -1
  246. package/dist/client/index.html +0 -1
  247. package/dist/runtime/components/ScriptPayPalMarks.d.vue.ts +0 -52
  248. package/dist/runtime/components/ScriptPayPalMarks.vue +0 -69
  249. package/dist/runtime/components/ScriptPayPalMarks.vue.d.ts +0 -52
  250. package/dist/runtime/validation/mock.d.ts +0 -42
  251. package/dist/runtime/validation/mock.js +0 -21
  252. package/dist/runtime/validation/valibot.d.ts +0 -1
  253. package/dist/runtime/validation/valibot.js +0 -1
  254. /package/dist/{client → devtools-client}/_nuxt/CVO1_9PV.js +0 -0
  255. /package/dist/{client → devtools-client}/_nuxt/Cp-IABpG.js +0 -0
  256. /package/dist/{client → devtools-client}/_nuxt/D0r3Knsf.js +0 -0
package/dist/stats.mjs ADDED
@@ -0,0 +1,3875 @@
1
+ import { buildProxyConfigsFromRegistry } from './registry.mjs';
2
+ import 'ufo';
3
+ import '../dist/runtime/registry/schemas.js';
4
+
5
+ const scriptMeta = {
6
+ // Analytics
7
+ plausibleAnalytics: {
8
+ urls: ["https://plausible.io/js/script.js"],
9
+ trackedData: ["page-views", "events", "conversions"]
10
+ },
11
+ cloudflareWebAnalytics: {
12
+ urls: ["https://static.cloudflareinsights.com/beacon.min.js"],
13
+ trackedData: ["page-views"]
14
+ },
15
+ posthog: {
16
+ urls: ["https://us-assets.i.posthog.com/static/array.js"],
17
+ trackedData: ["page-views", "events", "conversions", "user-identity", "session-replay", "heatmaps", "ab-testing"],
18
+ testId: "phc_test"
19
+ },
20
+ fathomAnalytics: {
21
+ urls: ["https://cdn.usefathom.com/script.js"],
22
+ trackedData: ["page-views", "events", "conversions"]
23
+ },
24
+ matomoAnalytics: {
25
+ urls: ["https://cdn.matomo.cloud/demo.matomo.cloud/matomo.js"],
26
+ trackedData: ["page-views", "events", "conversions", "user-identity", "heatmaps", "ab-testing"]
27
+ },
28
+ rybbitAnalytics: {
29
+ urls: ["https://app.rybbit.io/api/script.js"],
30
+ trackedData: ["page-views", "events"]
31
+ },
32
+ databuddyAnalytics: {
33
+ urls: ["https://cdn.databuddy.cc/databuddy.js"],
34
+ trackedData: ["page-views", "events"]
35
+ },
36
+ mixpanelAnalytics: {
37
+ urls: ["https://cdn.mxpnl.com/libs/mixpanel-2-latest.min.js"],
38
+ trackedData: ["page-views", "events", "conversions", "user-identity"]
39
+ },
40
+ segment: {
41
+ urls: ["https://cdn.segment.com/analytics.js/v1/KBXOGxgqMFjm2mxtJDJg0iDn5AnGYb9C/analytics.min.js"],
42
+ trackedData: ["page-views", "events", "conversions", "user-identity"]
43
+ },
44
+ googleAnalytics: {
45
+ urls: ["https://www.googletagmanager.com/gtag/js?id=G-TR58L0EF8P"],
46
+ trackedData: ["page-views", "events", "conversions", "user-identity", "audiences"]
47
+ },
48
+ umamiAnalytics: {
49
+ urls: ["https://cloud.umami.is/script.js"],
50
+ trackedData: ["page-views", "events"]
51
+ },
52
+ vercelAnalytics: {
53
+ urls: ["https://va.vercel-scripts.com/v1/script.js"],
54
+ trackedData: ["page-views", "events"]
55
+ },
56
+ // Ads / Pixels
57
+ bingUet: {
58
+ urls: ["https://bat.bing.com/bat.js"],
59
+ trackedData: ["page-views", "conversions", "retargeting", "audiences"],
60
+ testId: "247021147"
61
+ },
62
+ metaPixel: {
63
+ urls: ["https://connect.facebook.net/en_US/fbevents.js"],
64
+ trackedData: ["page-views", "conversions", "retargeting", "audiences"],
65
+ testId: "3925006"
66
+ },
67
+ xPixel: {
68
+ urls: ["https://static.ads-twitter.com/uwt.js"],
69
+ trackedData: ["page-views", "conversions", "retargeting", "audiences"],
70
+ testId: "ol7lz"
71
+ },
72
+ tiktokPixel: {
73
+ urls: ["https://analytics.tiktok.com/i18n/pixel/events.js"],
74
+ trackedData: ["page-views", "conversions", "retargeting", "audiences"],
75
+ testId: "C5ABC1234F5678"
76
+ },
77
+ snapchatPixel: {
78
+ urls: ["https://sc-static.net/scevent.min.js"],
79
+ trackedData: ["page-views", "conversions", "retargeting", "audiences"],
80
+ testId: "2295cbcc-cb3f-4727-8c09-1133b742722c"
81
+ },
82
+ redditPixel: {
83
+ urls: ["https://www.redditstatic.com/ads/pixel.js"],
84
+ trackedData: ["page-views", "conversions", "retargeting", "audiences"],
85
+ testId: "a2_ilz4u0kbdr3v"
86
+ },
87
+ googleAdsense: {
88
+ urls: ["https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"],
89
+ trackedData: ["page-views", "retargeting", "audiences"]
90
+ },
91
+ carbonAds: {
92
+ urls: ["https://cdn.carbonads.com/carbon.js?serve=CW7DTKJL&placement=unlighthousedev&format=cover"],
93
+ trackedData: ["page-views"]
94
+ },
95
+ // Session replay / Heatmaps
96
+ hotjar: {
97
+ urls: ["https://static.hotjar.com/c/hotjar-3925006.js?sv=6"],
98
+ trackedData: ["page-views", "session-replay", "heatmaps", "clicks", "scrolls", "form-submissions"],
99
+ testId: 3925006
100
+ },
101
+ clarity: {
102
+ urls: ["https://www.clarity.ms/tag/mqk2m9dr2v"],
103
+ trackedData: ["page-views", "session-replay", "heatmaps", "clicks", "scrolls"],
104
+ testId: "mqk2m9dr2v"
105
+ },
106
+ // Tag Manager
107
+ googleTagManager: {
108
+ urls: ["https://www.googletagmanager.com/gtm.js?id=GTM-MWW974PF"],
109
+ trackedData: ["tag-injection"]
110
+ },
111
+ // Support
112
+ intercom: {
113
+ urls: ["https://widget.intercom.io/widget/akg5rmxb"],
114
+ trackedData: ["user-identity", "events"],
115
+ testId: "akg5rmxb"
116
+ },
117
+ crisp: {
118
+ urls: ["https://client.crisp.chat/l.js"],
119
+ trackedData: ["user-identity", "events"],
120
+ testId: "b1021910-7ace-425a-9ef5-07f49e5ce417"
121
+ },
122
+ // Payments
123
+ stripe: {
124
+ urls: ["https://js.stripe.com/v3/"],
125
+ trackedData: ["transactions"]
126
+ },
127
+ lemonSqueezy: {
128
+ urls: ["https://assets.lemonsqueezy.com/lemon.js"],
129
+ trackedData: ["transactions"]
130
+ },
131
+ paypal: {
132
+ urls: ["https://www.paypal.com/web-sdk/v6/core"],
133
+ trackedData: ["transactions"]
134
+ },
135
+ // Video
136
+ vimeoPlayer: {
137
+ urls: ["https://player.vimeo.com/api/player.js"],
138
+ trackedData: ["video-engagement"]
139
+ },
140
+ youtubePlayer: {
141
+ urls: ["https://www.youtube.com/iframe_api"],
142
+ trackedData: ["video-engagement"]
143
+ },
144
+ // Content
145
+ googleMaps: {
146
+ urls: [],
147
+ // Dynamic URL with API key
148
+ trackedData: []
149
+ },
150
+ // CDN
151
+ npm: {
152
+ urls: [],
153
+ // Dynamic per package
154
+ trackedData: []
155
+ },
156
+ // Utility
157
+ googleRecaptcha: {
158
+ urls: ["https://www.google.com/recaptcha/api.js"],
159
+ trackedData: []
160
+ },
161
+ googleSignIn: {
162
+ urls: ["https://accounts.google.com/gsi/client"],
163
+ trackedData: ["user-identity"]
164
+ },
165
+ // Embeds
166
+ blueskyEmbed: {
167
+ urls: [],
168
+ trackedData: []
169
+ },
170
+ instagramEmbed: {
171
+ urls: ["https://www.instagram.com/embed.js"],
172
+ trackedData: []
173
+ },
174
+ xEmbed: {
175
+ urls: ["https://platform.twitter.com/widgets.js"],
176
+ trackedData: []
177
+ },
178
+ // Identity
179
+ gravatar: {
180
+ urls: ["https://secure.gravatar.com/js/gprofiles.js"],
181
+ trackedData: []
182
+ }
183
+ };
184
+
185
+ const plausibleAnalytics = {
186
+ totalTransferKb: 1.9,
187
+ totalDecodedKb: 2.9,
188
+ loadTimeMs: 70,
189
+ collectsWebVitals: false,
190
+ apis: {
191
+ cookies: false,
192
+ localStorage: true,
193
+ sessionStorage: false,
194
+ indexedDB: false,
195
+ canvas: false,
196
+ webgl: false,
197
+ audioContext: false,
198
+ userAgent: false,
199
+ doNotTrack: false,
200
+ hardwareConcurrency: false,
201
+ deviceMemory: false,
202
+ plugins: false,
203
+ languages: false,
204
+ screen: false,
205
+ timezone: false,
206
+ platform: false,
207
+ vendor: false,
208
+ connection: false,
209
+ maxTouchPoints: false,
210
+ devicePixelRatio: false,
211
+ mediaDevices: false,
212
+ getBattery: false,
213
+ referrer: true,
214
+ windowName: false,
215
+ rtcPeerConnection: false,
216
+ geolocation: false,
217
+ serviceWorker: false,
218
+ cacheApi: false,
219
+ sendBeacon: false,
220
+ fetch: true,
221
+ xhr: false,
222
+ websocket: false,
223
+ mutationObserver: false,
224
+ performanceObserver: false,
225
+ intersectionObserver: false
226
+ },
227
+ cookies: [
228
+ ],
229
+ network: {
230
+ requestCount: 1,
231
+ domains: [
232
+ "plausible.io"
233
+ ],
234
+ outboundBytes: 0,
235
+ inboundBytes: 1954,
236
+ injectedElements: [
237
+ ]
238
+ },
239
+ performance: {
240
+ taskDurationMs: 7,
241
+ scriptDurationMs: 1,
242
+ heapDeltaKb: 759
243
+ },
244
+ scripts: [
245
+ {
246
+ url: "https://plausible.io/js/script.js",
247
+ transferKb: 1.9,
248
+ decodedKb: 2.9,
249
+ encoding: "zstd",
250
+ durationMs: 70,
251
+ initiatorType: "script",
252
+ protocol: "unknown"
253
+ }
254
+ ]
255
+ };
256
+ const cloudflareWebAnalytics = {
257
+ totalTransferKb: 10.7,
258
+ totalDecodedKb: 30.4,
259
+ loadTimeMs: 76,
260
+ collectsWebVitals: true,
261
+ apis: {
262
+ cookies: false,
263
+ localStorage: false,
264
+ sessionStorage: false,
265
+ indexedDB: false,
266
+ canvas: false,
267
+ webgl: false,
268
+ audioContext: false,
269
+ userAgent: true,
270
+ doNotTrack: false,
271
+ hardwareConcurrency: false,
272
+ deviceMemory: false,
273
+ plugins: false,
274
+ languages: false,
275
+ screen: false,
276
+ timezone: false,
277
+ platform: false,
278
+ vendor: false,
279
+ connection: false,
280
+ maxTouchPoints: false,
281
+ devicePixelRatio: false,
282
+ mediaDevices: false,
283
+ getBattery: false,
284
+ referrer: true,
285
+ windowName: false,
286
+ rtcPeerConnection: false,
287
+ geolocation: false,
288
+ serviceWorker: false,
289
+ cacheApi: false,
290
+ sendBeacon: true,
291
+ fetch: false,
292
+ xhr: true,
293
+ websocket: false,
294
+ mutationObserver: false,
295
+ performanceObserver: true,
296
+ intersectionObserver: false
297
+ },
298
+ cookies: [
299
+ ],
300
+ network: {
301
+ requestCount: 1,
302
+ domains: [
303
+ "static.cloudflareinsights.com"
304
+ ],
305
+ outboundBytes: 0,
306
+ inboundBytes: 10993,
307
+ injectedElements: [
308
+ ]
309
+ },
310
+ performance: {
311
+ taskDurationMs: 7,
312
+ scriptDurationMs: 1,
313
+ heapDeltaKb: 784
314
+ },
315
+ scripts: [
316
+ {
317
+ url: "https://static.cloudflareinsights.com/beacon.min.js",
318
+ transferKb: 10.7,
319
+ decodedKb: 30.4,
320
+ encoding: "gzip",
321
+ durationMs: 76,
322
+ initiatorType: "script",
323
+ protocol: "unknown"
324
+ }
325
+ ]
326
+ };
327
+ const posthog = {
328
+ totalTransferKb: 129.6,
329
+ totalDecodedKb: 343.8,
330
+ loadTimeMs: 1161,
331
+ collectsWebVitals: true,
332
+ apis: {
333
+ cookies: true,
334
+ localStorage: true,
335
+ sessionStorage: true,
336
+ indexedDB: false,
337
+ canvas: false,
338
+ webgl: false,
339
+ audioContext: false,
340
+ userAgent: true,
341
+ doNotTrack: false,
342
+ hardwareConcurrency: false,
343
+ deviceMemory: false,
344
+ plugins: false,
345
+ languages: true,
346
+ screen: true,
347
+ timezone: true,
348
+ platform: false,
349
+ vendor: true,
350
+ connection: false,
351
+ maxTouchPoints: false,
352
+ devicePixelRatio: true,
353
+ mediaDevices: false,
354
+ getBattery: false,
355
+ referrer: false,
356
+ windowName: false,
357
+ rtcPeerConnection: false,
358
+ geolocation: false,
359
+ serviceWorker: false,
360
+ cacheApi: false,
361
+ sendBeacon: true,
362
+ fetch: true,
363
+ xhr: true,
364
+ websocket: false,
365
+ mutationObserver: false,
366
+ performanceObserver: false,
367
+ intersectionObserver: false
368
+ },
369
+ cookies: [
370
+ ],
371
+ network: {
372
+ requestCount: 5,
373
+ domains: [
374
+ "us-assets.i.posthog.com",
375
+ "us.i.posthog.com"
376
+ ],
377
+ outboundBytes: 269,
378
+ inboundBytes: 132649,
379
+ injectedElements: [
380
+ {
381
+ tag: "script",
382
+ src: "https://us-assets.i.posthog.com/array/phc_test/config.js"
383
+ },
384
+ {
385
+ tag: "script",
386
+ src: "https://us.i.posthog.com/static/array.js"
387
+ }
388
+ ]
389
+ },
390
+ performance: {
391
+ taskDurationMs: 38,
392
+ scriptDurationMs: 24,
393
+ heapDeltaKb: 1865
394
+ },
395
+ scripts: [
396
+ {
397
+ url: "https://us-assets.i.posthog.com/static/array.js",
398
+ transferKb: 64.5,
399
+ decodedKb: 171.8,
400
+ encoding: "gzip",
401
+ durationMs: 86,
402
+ initiatorType: "script",
403
+ protocol: "unknown"
404
+ },
405
+ {
406
+ url: "https://us.i.posthog.com/static/array.js",
407
+ transferKb: 64.5,
408
+ decodedKb: 171.8,
409
+ encoding: "gzip",
410
+ durationMs: 1161,
411
+ initiatorType: "script",
412
+ protocol: "unknown"
413
+ },
414
+ {
415
+ url: "https://us-assets.i.posthog.com/array/phc_test/config?ip=0&_=1774508607672&ver=1.363.5",
416
+ transferKb: 0.2,
417
+ decodedKb: 0.1,
418
+ encoding: "gzip",
419
+ durationMs: 257,
420
+ initiatorType: "fetch",
421
+ protocol: "unknown"
422
+ },
423
+ {
424
+ url: "https://us.i.posthog.com/flags/?v=2&ip=0&_=1774508607942&ver=1.363.5&compression=base64",
425
+ transferKb: 0.4,
426
+ decodedKb: 0.1,
427
+ encoding: "gzip",
428
+ durationMs: 691,
429
+ initiatorType: "fetch",
430
+ protocol: "unknown"
431
+ }
432
+ ]
433
+ };
434
+ const fathomAnalytics = {
435
+ totalTransferKb: 3,
436
+ totalDecodedKb: 6.7,
437
+ loadTimeMs: 303,
438
+ collectsWebVitals: false,
439
+ apis: {
440
+ cookies: false,
441
+ localStorage: true,
442
+ sessionStorage: false,
443
+ indexedDB: false,
444
+ canvas: false,
445
+ webgl: false,
446
+ audioContext: false,
447
+ userAgent: false,
448
+ doNotTrack: true,
449
+ hardwareConcurrency: false,
450
+ deviceMemory: false,
451
+ plugins: false,
452
+ languages: false,
453
+ screen: false,
454
+ timezone: false,
455
+ platform: false,
456
+ vendor: false,
457
+ connection: false,
458
+ maxTouchPoints: false,
459
+ devicePixelRatio: false,
460
+ mediaDevices: false,
461
+ getBattery: false,
462
+ referrer: true,
463
+ windowName: false,
464
+ rtcPeerConnection: false,
465
+ geolocation: false,
466
+ serviceWorker: false,
467
+ cacheApi: false,
468
+ sendBeacon: true,
469
+ fetch: false,
470
+ xhr: false,
471
+ websocket: false,
472
+ mutationObserver: false,
473
+ performanceObserver: false,
474
+ intersectionObserver: false
475
+ },
476
+ cookies: [
477
+ ],
478
+ network: {
479
+ requestCount: 2,
480
+ domains: [
481
+ "cdn.usefathom.com"
482
+ ],
483
+ outboundBytes: 0,
484
+ inboundBytes: 3078,
485
+ injectedElements: [
486
+ ]
487
+ },
488
+ performance: {
489
+ taskDurationMs: 8,
490
+ scriptDurationMs: 1,
491
+ heapDeltaKb: 760
492
+ },
493
+ scripts: [
494
+ {
495
+ url: "https://cdn.usefathom.com/script.js",
496
+ transferKb: 2.7,
497
+ decodedKb: 6.7,
498
+ encoding: "zstd",
499
+ durationMs: 67,
500
+ initiatorType: "script",
501
+ protocol: "unknown"
502
+ },
503
+ {
504
+ url: "https://cdn.usefathom.com/?h=http%3A%2F%2F127.0.0.1&p=%2FfathomAnalytics&r=&sid=null&qs=%7B%7D&cid=47534997",
505
+ transferKb: 0.3,
506
+ decodedKb: 0,
507
+ encoding: "none",
508
+ durationMs: 303,
509
+ initiatorType: "img",
510
+ protocol: "unknown"
511
+ }
512
+ ]
513
+ };
514
+ const matomoAnalytics = {
515
+ totalTransferKb: 61.5,
516
+ totalDecodedKb: 218.6,
517
+ loadTimeMs: 103,
518
+ collectsWebVitals: false,
519
+ apis: {
520
+ cookies: true,
521
+ localStorage: true,
522
+ sessionStorage: false,
523
+ indexedDB: false,
524
+ canvas: false,
525
+ webgl: false,
526
+ audioContext: false,
527
+ userAgent: true,
528
+ doNotTrack: false,
529
+ hardwareConcurrency: false,
530
+ deviceMemory: false,
531
+ plugins: false,
532
+ languages: false,
533
+ screen: true,
534
+ timezone: true,
535
+ platform: true,
536
+ vendor: true,
537
+ connection: false,
538
+ maxTouchPoints: false,
539
+ devicePixelRatio: false,
540
+ mediaDevices: false,
541
+ getBattery: false,
542
+ referrer: true,
543
+ windowName: true,
544
+ rtcPeerConnection: false,
545
+ geolocation: false,
546
+ serviceWorker: false,
547
+ cacheApi: false,
548
+ sendBeacon: true,
549
+ fetch: true,
550
+ xhr: true,
551
+ websocket: false,
552
+ mutationObserver: true,
553
+ performanceObserver: false,
554
+ intersectionObserver: false
555
+ },
556
+ cookies: [
557
+ ],
558
+ network: {
559
+ requestCount: 1,
560
+ domains: [
561
+ "cdn.matomo.cloud"
562
+ ],
563
+ outboundBytes: 0,
564
+ inboundBytes: 63013,
565
+ injectedElements: [
566
+ ]
567
+ },
568
+ performance: {
569
+ taskDurationMs: 21,
570
+ scriptDurationMs: 6,
571
+ heapDeltaKb: 1393
572
+ },
573
+ scripts: [
574
+ {
575
+ url: "https://cdn.matomo.cloud/demo.matomo.cloud/matomo.js",
576
+ transferKb: 61.5,
577
+ decodedKb: 218.6,
578
+ encoding: "br",
579
+ durationMs: 103,
580
+ initiatorType: "script",
581
+ protocol: "unknown"
582
+ }
583
+ ]
584
+ };
585
+ const rybbitAnalytics = {
586
+ totalTransferKb: 9.3,
587
+ totalDecodedKb: 26,
588
+ loadTimeMs: 1099,
589
+ collectsWebVitals: true,
590
+ apis: {
591
+ cookies: false,
592
+ localStorage: true,
593
+ sessionStorage: true,
594
+ indexedDB: false,
595
+ canvas: false,
596
+ webgl: true,
597
+ audioContext: false,
598
+ userAgent: true,
599
+ doNotTrack: false,
600
+ hardwareConcurrency: false,
601
+ deviceMemory: false,
602
+ plugins: true,
603
+ languages: true,
604
+ screen: true,
605
+ timezone: false,
606
+ platform: false,
607
+ vendor: false,
608
+ connection: true,
609
+ maxTouchPoints: false,
610
+ devicePixelRatio: false,
611
+ mediaDevices: false,
612
+ getBattery: false,
613
+ referrer: true,
614
+ windowName: false,
615
+ rtcPeerConnection: false,
616
+ geolocation: false,
617
+ serviceWorker: false,
618
+ cacheApi: false,
619
+ sendBeacon: false,
620
+ fetch: true,
621
+ xhr: false,
622
+ websocket: false,
623
+ mutationObserver: false,
624
+ performanceObserver: true,
625
+ intersectionObserver: false
626
+ },
627
+ cookies: [
628
+ ],
629
+ network: {
630
+ requestCount: 1,
631
+ domains: [
632
+ "app.rybbit.io"
633
+ ],
634
+ outboundBytes: 0,
635
+ inboundBytes: 9486,
636
+ injectedElements: [
637
+ ]
638
+ },
639
+ performance: {
640
+ taskDurationMs: 8,
641
+ scriptDurationMs: 2,
642
+ heapDeltaKb: 755
643
+ },
644
+ scripts: [
645
+ {
646
+ url: "https://app.rybbit.io/api/script.js",
647
+ transferKb: 9.3,
648
+ decodedKb: 26,
649
+ encoding: "zstd",
650
+ durationMs: 1099,
651
+ initiatorType: "script",
652
+ protocol: "unknown"
653
+ }
654
+ ]
655
+ };
656
+ const databuddyAnalytics = {
657
+ totalTransferKb: 10.6,
658
+ totalDecodedKb: 28.8,
659
+ loadTimeMs: 83,
660
+ collectsWebVitals: true,
661
+ apis: {
662
+ cookies: false,
663
+ localStorage: true,
664
+ sessionStorage: true,
665
+ indexedDB: false,
666
+ canvas: false,
667
+ webgl: false,
668
+ audioContext: false,
669
+ userAgent: true,
670
+ doNotTrack: false,
671
+ hardwareConcurrency: false,
672
+ deviceMemory: false,
673
+ plugins: false,
674
+ languages: true,
675
+ screen: false,
676
+ timezone: false,
677
+ platform: false,
678
+ vendor: false,
679
+ connection: false,
680
+ maxTouchPoints: false,
681
+ devicePixelRatio: false,
682
+ mediaDevices: false,
683
+ getBattery: false,
684
+ referrer: true,
685
+ windowName: false,
686
+ rtcPeerConnection: false,
687
+ geolocation: false,
688
+ serviceWorker: false,
689
+ cacheApi: false,
690
+ sendBeacon: true,
691
+ fetch: true,
692
+ xhr: false,
693
+ websocket: false,
694
+ mutationObserver: false,
695
+ performanceObserver: true,
696
+ intersectionObserver: false
697
+ },
698
+ cookies: [
699
+ ],
700
+ network: {
701
+ requestCount: 1,
702
+ domains: [
703
+ "cdn.databuddy.cc"
704
+ ],
705
+ outboundBytes: 0,
706
+ inboundBytes: 10813,
707
+ injectedElements: [
708
+ ]
709
+ },
710
+ performance: {
711
+ taskDurationMs: 8,
712
+ scriptDurationMs: 1,
713
+ heapDeltaKb: 804
714
+ },
715
+ scripts: [
716
+ {
717
+ url: "https://cdn.databuddy.cc/databuddy.js",
718
+ transferKb: 10.6,
719
+ decodedKb: 28.8,
720
+ encoding: "zstd",
721
+ durationMs: 83,
722
+ initiatorType: "script",
723
+ protocol: "unknown"
724
+ }
725
+ ]
726
+ };
727
+ const mixpanelAnalytics = {
728
+ totalTransferKb: 31.6,
729
+ totalDecodedKb: 95.5,
730
+ loadTimeMs: 76,
731
+ collectsWebVitals: false,
732
+ apis: {
733
+ cookies: true,
734
+ localStorage: true,
735
+ sessionStorage: true,
736
+ indexedDB: true,
737
+ canvas: false,
738
+ webgl: false,
739
+ audioContext: false,
740
+ userAgent: true,
741
+ doNotTrack: true,
742
+ hardwareConcurrency: false,
743
+ deviceMemory: false,
744
+ plugins: false,
745
+ languages: false,
746
+ screen: false,
747
+ timezone: false,
748
+ platform: false,
749
+ vendor: false,
750
+ connection: false,
751
+ maxTouchPoints: false,
752
+ devicePixelRatio: false,
753
+ mediaDevices: false,
754
+ getBattery: false,
755
+ referrer: true,
756
+ windowName: false,
757
+ rtcPeerConnection: false,
758
+ geolocation: false,
759
+ serviceWorker: false,
760
+ cacheApi: false,
761
+ sendBeacon: true,
762
+ fetch: true,
763
+ xhr: true,
764
+ websocket: false,
765
+ mutationObserver: true,
766
+ performanceObserver: false,
767
+ intersectionObserver: false
768
+ },
769
+ cookies: [
770
+ ],
771
+ network: {
772
+ requestCount: 1,
773
+ domains: [
774
+ "cdn.mxpnl.com"
775
+ ],
776
+ outboundBytes: 0,
777
+ inboundBytes: 32330,
778
+ injectedElements: [
779
+ ]
780
+ },
781
+ performance: {
782
+ taskDurationMs: 16,
783
+ scriptDurationMs: 8,
784
+ heapDeltaKb: 1170
785
+ },
786
+ scripts: [
787
+ {
788
+ url: "https://cdn.mxpnl.com/libs/mixpanel-2-latest.min.js",
789
+ transferKb: 31.6,
790
+ decodedKb: 95.5,
791
+ encoding: "gzip",
792
+ durationMs: 76,
793
+ initiatorType: "script",
794
+ protocol: "unknown"
795
+ }
796
+ ]
797
+ };
798
+ const segment = {
799
+ totalTransferKb: 30.2,
800
+ totalDecodedKb: 107,
801
+ loadTimeMs: 703,
802
+ collectsWebVitals: false,
803
+ apis: {
804
+ cookies: true,
805
+ localStorage: true,
806
+ sessionStorage: false,
807
+ indexedDB: false,
808
+ canvas: false,
809
+ webgl: false,
810
+ audioContext: false,
811
+ userAgent: true,
812
+ doNotTrack: false,
813
+ hardwareConcurrency: false,
814
+ deviceMemory: false,
815
+ plugins: false,
816
+ languages: true,
817
+ screen: false,
818
+ timezone: true,
819
+ platform: false,
820
+ vendor: false,
821
+ connection: false,
822
+ maxTouchPoints: false,
823
+ devicePixelRatio: false,
824
+ mediaDevices: false,
825
+ getBattery: false,
826
+ referrer: true,
827
+ windowName: false,
828
+ rtcPeerConnection: false,
829
+ geolocation: false,
830
+ serviceWorker: false,
831
+ cacheApi: false,
832
+ sendBeacon: false,
833
+ fetch: true,
834
+ xhr: true,
835
+ websocket: false,
836
+ mutationObserver: false,
837
+ performanceObserver: false,
838
+ intersectionObserver: false
839
+ },
840
+ cookies: [
841
+ ],
842
+ network: {
843
+ requestCount: 3,
844
+ domains: [
845
+ "api.segment.io",
846
+ "cdn.segment.com"
847
+ ],
848
+ outboundBytes: 1006,
849
+ inboundBytes: 30906,
850
+ injectedElements: [
851
+ ]
852
+ },
853
+ performance: {
854
+ taskDurationMs: 22,
855
+ scriptDurationMs: 4,
856
+ heapDeltaKb: 1328
857
+ },
858
+ scripts: [
859
+ {
860
+ url: "https://cdn.segment.com/analytics.js/v1/KBXOGxgqMFjm2mxtJDJg0iDn5AnGYb9C/analytics.min.js",
861
+ transferKb: 28.8,
862
+ decodedKb: 106.4,
863
+ encoding: "br",
864
+ durationMs: 556,
865
+ initiatorType: "script",
866
+ protocol: "unknown"
867
+ },
868
+ {
869
+ url: "https://cdn.segment.com/v1/projects/KBXOGxgqMFjm2mxtJDJg0iDn5AnGYb9C/settings",
870
+ transferKb: 1.2,
871
+ decodedKb: 0.6,
872
+ encoding: "none",
873
+ durationMs: 49,
874
+ initiatorType: "fetch",
875
+ protocol: "unknown"
876
+ },
877
+ {
878
+ url: "https://api.segment.io/v1/p",
879
+ transferKb: 0.2,
880
+ decodedKb: 0,
881
+ encoding: "none",
882
+ durationMs: 703,
883
+ initiatorType: "fetch",
884
+ protocol: "unknown"
885
+ }
886
+ ]
887
+ };
888
+ const googleAnalytics = {
889
+ totalTransferKb: 155.3,
890
+ totalDecodedKb: 454.2,
891
+ loadTimeMs: 519,
892
+ collectsWebVitals: false,
893
+ apis: {
894
+ cookies: true,
895
+ localStorage: true,
896
+ sessionStorage: false,
897
+ indexedDB: false,
898
+ canvas: false,
899
+ webgl: false,
900
+ audioContext: false,
901
+ userAgent: true,
902
+ doNotTrack: false,
903
+ hardwareConcurrency: false,
904
+ deviceMemory: false,
905
+ plugins: false,
906
+ languages: false,
907
+ screen: false,
908
+ timezone: true,
909
+ platform: false,
910
+ vendor: false,
911
+ connection: false,
912
+ maxTouchPoints: false,
913
+ devicePixelRatio: false,
914
+ mediaDevices: false,
915
+ getBattery: false,
916
+ referrer: true,
917
+ windowName: true,
918
+ rtcPeerConnection: false,
919
+ geolocation: false,
920
+ serviceWorker: false,
921
+ cacheApi: false,
922
+ sendBeacon: true,
923
+ fetch: true,
924
+ xhr: true,
925
+ websocket: false,
926
+ mutationObserver: true,
927
+ performanceObserver: false,
928
+ intersectionObserver: true
929
+ },
930
+ cookies: [
931
+ ],
932
+ network: {
933
+ requestCount: 2,
934
+ domains: [
935
+ "www.googletagmanager.com"
936
+ ],
937
+ outboundBytes: 0,
938
+ inboundBytes: 159048,
939
+ injectedElements: [
940
+ {
941
+ tag: "img",
942
+ src: "https://www.googletagmanager.com/td?id=G-TR58L0EF8P&v=3&t=t&pid=585024461&gtm=45je63p0h2v9184293781za200zd9184293781&seq=1&exp=103116026~103200004~115938466~115938468~116024733~117484252~118199987&dl=127.0.0.1%2FgoogleAnalytics&tdp=G-TR58L0EF8P;184293781;0;0;0&frm=0&rtg=184293781&slo=0&hlo=1&lst=3&bt=0&ct=3&jsp=1~3&z=0"
943
+ }
944
+ ]
945
+ },
946
+ performance: {
947
+ taskDurationMs: 31,
948
+ scriptDurationMs: 17,
949
+ heapDeltaKb: 2673
950
+ },
951
+ scripts: [
952
+ {
953
+ url: "https://www.googletagmanager.com/gtag/js?id=G-TR58L0EF8P",
954
+ transferKb: 154.9,
955
+ decodedKb: 454.2,
956
+ encoding: "zstd",
957
+ durationMs: 519,
958
+ initiatorType: "script",
959
+ protocol: "unknown"
960
+ },
961
+ {
962
+ url: "https://www.googletagmanager.com/td?id=G-TR58L0EF8P&v=3&t=t&pid=585024461&gtm=45je63p0h2v9184293781za200zd9184293781&seq=1&exp=103116026~103200004~115938466~115938468~116024733~117484252~118199987&dl=127.0.0.1%2FgoogleAnalytics&tdp=G-TR58L0EF8P;184293781;0;0;0&frm=0&rtg=184293781&slo=0&hlo=1&lst=3&bt=0&ct=3&jsp=1~3&z=0",
963
+ transferKb: 0.4,
964
+ decodedKb: 0,
965
+ encoding: "none",
966
+ durationMs: 159,
967
+ initiatorType: "img",
968
+ protocol: "unknown"
969
+ }
970
+ ]
971
+ };
972
+ const umamiAnalytics = {
973
+ totalTransferKb: 3.2,
974
+ totalDecodedKb: 4.5,
975
+ loadTimeMs: 63,
976
+ collectsWebVitals: true,
977
+ apis: {
978
+ cookies: false,
979
+ localStorage: true,
980
+ sessionStorage: false,
981
+ indexedDB: false,
982
+ canvas: false,
983
+ webgl: false,
984
+ audioContext: false,
985
+ userAgent: false,
986
+ doNotTrack: true,
987
+ hardwareConcurrency: false,
988
+ deviceMemory: false,
989
+ plugins: false,
990
+ languages: false,
991
+ screen: true,
992
+ timezone: false,
993
+ platform: false,
994
+ vendor: false,
995
+ connection: false,
996
+ maxTouchPoints: false,
997
+ devicePixelRatio: false,
998
+ mediaDevices: false,
999
+ getBattery: false,
1000
+ referrer: true,
1001
+ windowName: false,
1002
+ rtcPeerConnection: false,
1003
+ geolocation: false,
1004
+ serviceWorker: false,
1005
+ cacheApi: false,
1006
+ sendBeacon: false,
1007
+ fetch: true,
1008
+ xhr: false,
1009
+ websocket: false,
1010
+ mutationObserver: false,
1011
+ performanceObserver: true,
1012
+ intersectionObserver: false
1013
+ },
1014
+ cookies: [
1015
+ ],
1016
+ network: {
1017
+ requestCount: 1,
1018
+ domains: [
1019
+ "cloud.umami.is"
1020
+ ],
1021
+ outboundBytes: 0,
1022
+ inboundBytes: 3261,
1023
+ injectedElements: [
1024
+ ]
1025
+ },
1026
+ performance: {
1027
+ taskDurationMs: 6,
1028
+ scriptDurationMs: 0,
1029
+ heapDeltaKb: 727
1030
+ },
1031
+ scripts: [
1032
+ {
1033
+ url: "https://cloud.umami.is/script.js",
1034
+ transferKb: 3.2,
1035
+ decodedKb: 4.5,
1036
+ encoding: "br",
1037
+ durationMs: 63,
1038
+ initiatorType: "script",
1039
+ protocol: "unknown"
1040
+ }
1041
+ ]
1042
+ };
1043
+ const vercelAnalytics = {
1044
+ totalTransferKb: 1.6,
1045
+ totalDecodedKb: 2.4,
1046
+ loadTimeMs: 78,
1047
+ collectsWebVitals: false,
1048
+ apis: {
1049
+ cookies: false,
1050
+ localStorage: false,
1051
+ sessionStorage: false,
1052
+ indexedDB: false,
1053
+ canvas: false,
1054
+ webgl: false,
1055
+ audioContext: false,
1056
+ userAgent: true,
1057
+ doNotTrack: false,
1058
+ hardwareConcurrency: false,
1059
+ deviceMemory: false,
1060
+ plugins: false,
1061
+ languages: false,
1062
+ screen: false,
1063
+ timezone: false,
1064
+ platform: false,
1065
+ vendor: false,
1066
+ connection: false,
1067
+ maxTouchPoints: false,
1068
+ devicePixelRatio: false,
1069
+ mediaDevices: false,
1070
+ getBattery: false,
1071
+ referrer: false,
1072
+ windowName: false,
1073
+ rtcPeerConnection: false,
1074
+ geolocation: false,
1075
+ serviceWorker: false,
1076
+ cacheApi: false,
1077
+ sendBeacon: false,
1078
+ fetch: true,
1079
+ xhr: false,
1080
+ websocket: false,
1081
+ mutationObserver: false,
1082
+ performanceObserver: false,
1083
+ intersectionObserver: false
1084
+ },
1085
+ cookies: [
1086
+ ],
1087
+ network: {
1088
+ requestCount: 1,
1089
+ domains: [
1090
+ "va.vercel-scripts.com"
1091
+ ],
1092
+ outboundBytes: 0,
1093
+ inboundBytes: 1599,
1094
+ injectedElements: [
1095
+ ]
1096
+ },
1097
+ performance: {
1098
+ taskDurationMs: 6,
1099
+ scriptDurationMs: 0,
1100
+ heapDeltaKb: 716
1101
+ },
1102
+ scripts: [
1103
+ {
1104
+ url: "https://va.vercel-scripts.com/v1/script.js",
1105
+ transferKb: 1.6,
1106
+ decodedKb: 2.4,
1107
+ encoding: "br",
1108
+ durationMs: 78,
1109
+ initiatorType: "script",
1110
+ protocol: "unknown"
1111
+ }
1112
+ ]
1113
+ };
1114
+ const bingUet = {
1115
+ totalTransferKb: 16.2,
1116
+ totalDecodedKb: 54,
1117
+ loadTimeMs: 218,
1118
+ collectsWebVitals: false,
1119
+ apis: {
1120
+ cookies: true,
1121
+ localStorage: true,
1122
+ sessionStorage: false,
1123
+ indexedDB: false,
1124
+ canvas: false,
1125
+ webgl: false,
1126
+ audioContext: false,
1127
+ userAgent: false,
1128
+ doNotTrack: false,
1129
+ hardwareConcurrency: false,
1130
+ deviceMemory: false,
1131
+ plugins: true,
1132
+ languages: true,
1133
+ screen: true,
1134
+ timezone: false,
1135
+ platform: false,
1136
+ vendor: false,
1137
+ connection: false,
1138
+ maxTouchPoints: true,
1139
+ devicePixelRatio: false,
1140
+ mediaDevices: false,
1141
+ getBattery: false,
1142
+ referrer: true,
1143
+ windowName: false,
1144
+ rtcPeerConnection: false,
1145
+ geolocation: false,
1146
+ serviceWorker: false,
1147
+ cacheApi: false,
1148
+ sendBeacon: true,
1149
+ fetch: false,
1150
+ xhr: true,
1151
+ websocket: false,
1152
+ mutationObserver: false,
1153
+ performanceObserver: false,
1154
+ intersectionObserver: false
1155
+ },
1156
+ cookies: [
1157
+ {
1158
+ name: "MUID",
1159
+ domain: ".bing.com",
1160
+ path: "/",
1161
+ httpOnly: false,
1162
+ secure: true,
1163
+ sameSite: "None",
1164
+ session: false,
1165
+ lifetimeDays: 390,
1166
+ firstParty: false
1167
+ },
1168
+ {
1169
+ name: "MR",
1170
+ domain: ".bat.bing.com",
1171
+ path: "/",
1172
+ httpOnly: false,
1173
+ secure: true,
1174
+ sameSite: "None",
1175
+ session: false,
1176
+ lifetimeDays: 7,
1177
+ firstParty: false
1178
+ }
1179
+ ],
1180
+ network: {
1181
+ requestCount: 3,
1182
+ domains: [
1183
+ "bat.bing.com"
1184
+ ],
1185
+ outboundBytes: 0,
1186
+ inboundBytes: 16546,
1187
+ injectedElements: [
1188
+ {
1189
+ tag: "script",
1190
+ src: "https://bat.bing.com/p/action/247021147.js"
1191
+ },
1192
+ {
1193
+ tag: "img",
1194
+ src: "https://bat.bing.com/action/0?ti=247021147&Ver=2&mid=8901ef97-57ee-4183-aa71-23783ffb50eb&bo=1&sid=0235bb9028e211f18b0429a389f9a801&vid=0235db6028e211f1a480ef3c78abb001&vids=1&msclkid=N&pi=0&lg=en-GB&sw=1280&sh=720&sc=24&nwd=1&p=http%3A%2F%2F127.0.0.1%3A41347%2FbingUet&r=&lt=224&evt=pageLoad&sv=2&cdb=AQAQ&rn=125792"
1195
+ }
1196
+ ]
1197
+ },
1198
+ performance: {
1199
+ taskDurationMs: 13,
1200
+ scriptDurationMs: 5,
1201
+ heapDeltaKb: 983
1202
+ },
1203
+ scripts: [
1204
+ {
1205
+ url: "https://bat.bing.com/bat.js",
1206
+ transferKb: 15.4,
1207
+ decodedKb: 53.6,
1208
+ encoding: "gzip",
1209
+ durationMs: 218,
1210
+ initiatorType: "script",
1211
+ protocol: "unknown"
1212
+ },
1213
+ {
1214
+ url: "https://bat.bing.com/p/action/247021147.js",
1215
+ transferKb: 0.4,
1216
+ decodedKb: 0.4,
1217
+ encoding: "br",
1218
+ durationMs: 157,
1219
+ initiatorType: "script",
1220
+ protocol: "unknown"
1221
+ },
1222
+ {
1223
+ url: "https://bat.bing.com/action/0?ti=247021147&Ver=2&mid=8901ef97-57ee-4183-aa71-23783ffb50eb&bo=1&sid=0235bb9028e211f18b0429a389f9a801&vid=0235db6028e211f1a480ef3c78abb001&vids=1&msclkid=N&pi=0&lg=en-GB&sw=1280&sh=720&sc=24&nwd=1&p=http%3A%2F%2F127.0.0.1%3A41347%2FbingUet&r=&lt=224&evt=pageLoad&sv=2&cdb=AQAQ&rn=125792",
1224
+ transferKb: 0.4,
1225
+ decodedKb: 0,
1226
+ encoding: "none",
1227
+ durationMs: 156,
1228
+ initiatorType: "img",
1229
+ protocol: "unknown"
1230
+ }
1231
+ ]
1232
+ };
1233
+ const metaPixel = {
1234
+ totalTransferKb: 97.1,
1235
+ totalDecodedKb: 364.7,
1236
+ loadTimeMs: 116,
1237
+ collectsWebVitals: false,
1238
+ apis: {
1239
+ cookies: false,
1240
+ localStorage: true,
1241
+ sessionStorage: true,
1242
+ indexedDB: false,
1243
+ canvas: false,
1244
+ webgl: false,
1245
+ audioContext: false,
1246
+ userAgent: true,
1247
+ doNotTrack: false,
1248
+ hardwareConcurrency: false,
1249
+ deviceMemory: false,
1250
+ plugins: false,
1251
+ languages: false,
1252
+ screen: true,
1253
+ timezone: false,
1254
+ platform: false,
1255
+ vendor: true,
1256
+ connection: false,
1257
+ maxTouchPoints: false,
1258
+ devicePixelRatio: false,
1259
+ mediaDevices: false,
1260
+ getBattery: false,
1261
+ referrer: true,
1262
+ windowName: false,
1263
+ rtcPeerConnection: false,
1264
+ geolocation: false,
1265
+ serviceWorker: false,
1266
+ cacheApi: false,
1267
+ sendBeacon: true,
1268
+ fetch: true,
1269
+ xhr: false,
1270
+ websocket: false,
1271
+ mutationObserver: false,
1272
+ performanceObserver: false,
1273
+ intersectionObserver: false
1274
+ },
1275
+ cookies: [
1276
+ ],
1277
+ network: {
1278
+ requestCount: 3,
1279
+ domains: [
1280
+ "connect.facebook.net",
1281
+ "www.facebook.com"
1282
+ ],
1283
+ outboundBytes: 0,
1284
+ inboundBytes: 102480,
1285
+ injectedElements: [
1286
+ {
1287
+ tag: "script",
1288
+ src: "https://connect.facebook.net/signals/config/3925006?v=2.9.281&r=stable&domain=127.0.0.1&hme=7561e8db2489737df4c74b634c943d82cefbf4e67acc7fda2493ff919471f0aa&ex_m=101%2C194%2C143%2C22%2C69%2C70%2C136%2C65%2C64%2C11%2C151%2C87%2C16%2C130%2C123%2C72%2C75%2C129%2C148%2C153%2C8%2C4%2C5%2C7%2C6%2C3%2C88%2C98%2C154%2C159%2C208%2C59%2C175%2C176%2C52%2C264%2C30%2C71%2C220%2C219%2C218%2C23%2C32%2C100%2C58%2C10%2C60%2C94%2C95%2C96%2C102%2C126%2C31%2C29%2C128%2C125%2C124%2C144%2C73%2C147%2C145%2C146%2C47%2C57%2C119%2C15%2C150%2C42%2C251%2C252%2C250%2C26%2C27%2C28%2C45%2C137%2C74%2C109%2C18%2C20%2C41%2C37%2C39%2C38%2C80%2C89%2C93%2C107%2C135%2C138%2C43%2C108%2C24%2C21%2C115%2C66%2C35%2C140%2C139%2C141%2C132%2C131%2C25%2C34%2C56%2C106%2C149%2C67%2C17%2C142%2C111%2C78%2C63%2C19%2C82%2C83%2C112%2C81%2C33%2C280%2C201%2C190%2C191%2C189%2C283%2C275%2C49%2C202%2C104%2C127%2C77%2C117%2C51%2C44%2C46%2C110%2C116%2C122%2C55%2C61%2C50%2C53%2C97%2C152%2C1%2C120%2C14%2C118%2C12%2C2%2C54%2C90%2C62%2C114%2C86%2C85%2C155%2C156%2C91%2C92%2C9%2C121%2C99%2C48%2C133%2C84%2C76%2C68%2C113%2C103%2C40%2C134%2C0%2C79%2C36%2C105%2C13%2C157"
1289
+ },
1290
+ {
1291
+ tag: "img",
1292
+ src: "https://www.facebook.com/tr/?id=3925006&ev=PageView&dl=http%3A%2F%2F127.0.0.1%3A41347%2FmetaPixel&rl=&if=false&ts=1774508663855&sw=1280&sh=720&v=2.9.281&r=stable&ec=0&o=156&it=1774508663834&coo=false&exp=s1&expv2[0]=pl0&expv2[1]=el2&expv2[2]=bc1&expv2[3]=ra0&expv2[4]=rp0&expv2[5]=ct1&expv2[6]=hf0&rqm=GET"
1293
+ }
1294
+ ]
1295
+ },
1296
+ performance: {
1297
+ taskDurationMs: 41,
1298
+ scriptDurationMs: 23,
1299
+ heapDeltaKb: 1970
1300
+ },
1301
+ scripts: [
1302
+ {
1303
+ url: "https://connect.facebook.net/en_US/fbevents.js",
1304
+ transferKb: 94.7,
1305
+ decodedKb: 356.5,
1306
+ encoding: "gzip",
1307
+ durationMs: 116,
1308
+ initiatorType: "script",
1309
+ protocol: "h2"
1310
+ },
1311
+ {
1312
+ url: "https://connect.facebook.net/signals/config/3925006?v=2.9.281&r=stable&domain=127.0.0.1&hme=7561e8db2489737df4c74b634c943d82cefbf4e67acc7fda2493ff919471f0aa&ex_m=101%2C194%2C143%2C22%2C69%2C70%2C136%2C65%2C64%2C11%2C151%2C87%2C16%2C130%2C123%2C72%2C75%2C129%2C148%2C153%2C8%2C4%2C5%2C7%2C6%2C3%2C88%2C98%2C154%2C159%2C208%2C59%2C175%2C176%2C52%2C264%2C30%2C71%2C220%2C219%2C218%2C23%2C32%2C100%2C58%2C10%2C60%2C94%2C95%2C96%2C102%2C126%2C31%2C29%2C128%2C125%2C124%2C144%2C73%2C147%2C145%2C146%2C47%2C57%2C119%2C15%2C150%2C42%2C251%2C252%2C250%2C26%2C27%2C28%2C45%2C137%2C74%2C109%2C18%2C20%2C41%2C37%2C39%2C38%2C80%2C89%2C93%2C107%2C135%2C138%2C43%2C108%2C24%2C21%2C115%2C66%2C35%2C140%2C139%2C141%2C132%2C131%2C25%2C34%2C56%2C106%2C149%2C67%2C17%2C142%2C111%2C78%2C63%2C19%2C82%2C83%2C112%2C81%2C33%2C280%2C201%2C190%2C191%2C189%2C283%2C275%2C49%2C202%2C104%2C127%2C77%2C117%2C51%2C44%2C46%2C110%2C116%2C122%2C55%2C61%2C50%2C53%2C97%2C152%2C1%2C120%2C14%2C118%2C12%2C2%2C54%2C90%2C62%2C114%2C86%2C85%2C155%2C156%2C91%2C92%2C9%2C121%2C99%2C48%2C133%2C84%2C76%2C68%2C113%2C103%2C40%2C134%2C0%2C79%2C36%2C105%2C13%2C157",
1313
+ transferKb: 2.1,
1314
+ decodedKb: 8.2,
1315
+ encoding: "gzip",
1316
+ durationMs: 18,
1317
+ initiatorType: "script",
1318
+ protocol: "h2"
1319
+ },
1320
+ {
1321
+ url: "https://www.facebook.com/tr/?id=3925006&ev=PageView&dl=http%3A%2F%2F127.0.0.1%3A41347%2FmetaPixel&rl=&if=false&ts=1774508663855&sw=1280&sh=720&v=2.9.281&r=stable&ec=0&o=156&it=1774508663834&coo=false&exp=s1&expv2[0]=pl0&expv2[1]=el2&expv2[2]=bc1&expv2[3]=ra0&expv2[4]=rp0&expv2[5]=ct1&expv2[6]=hf0&rqm=GET",
1322
+ transferKb: 0.3,
1323
+ decodedKb: 0,
1324
+ encoding: "none",
1325
+ durationMs: 70,
1326
+ initiatorType: "img",
1327
+ protocol: "unknown"
1328
+ }
1329
+ ]
1330
+ };
1331
+ const xPixel = {
1332
+ totalTransferKb: 15.1,
1333
+ totalDecodedKb: 47.1,
1334
+ loadTimeMs: 231,
1335
+ collectsWebVitals: false,
1336
+ apis: {
1337
+ cookies: true,
1338
+ localStorage: false,
1339
+ sessionStorage: false,
1340
+ indexedDB: false,
1341
+ canvas: false,
1342
+ webgl: false,
1343
+ audioContext: false,
1344
+ userAgent: true,
1345
+ doNotTrack: true,
1346
+ hardwareConcurrency: true,
1347
+ deviceMemory: false,
1348
+ plugins: false,
1349
+ languages: true,
1350
+ screen: true,
1351
+ timezone: true,
1352
+ platform: true,
1353
+ vendor: true,
1354
+ connection: false,
1355
+ maxTouchPoints: true,
1356
+ devicePixelRatio: false,
1357
+ mediaDevices: false,
1358
+ getBattery: true,
1359
+ referrer: true,
1360
+ windowName: false,
1361
+ rtcPeerConnection: false,
1362
+ geolocation: false,
1363
+ serviceWorker: false,
1364
+ cacheApi: false,
1365
+ sendBeacon: true,
1366
+ fetch: false,
1367
+ xhr: true,
1368
+ websocket: false,
1369
+ mutationObserver: false,
1370
+ performanceObserver: false,
1371
+ intersectionObserver: false
1372
+ },
1373
+ cookies: [
1374
+ {
1375
+ name: "muc_ads",
1376
+ domain: ".t.co",
1377
+ path: "/",
1378
+ httpOnly: false,
1379
+ secure: true,
1380
+ sameSite: "None",
1381
+ session: false,
1382
+ lifetimeDays: 400,
1383
+ firstParty: false
1384
+ },
1385
+ {
1386
+ name: "guest_id_marketing",
1387
+ domain: ".twitter.com",
1388
+ path: "/",
1389
+ httpOnly: false,
1390
+ secure: true,
1391
+ sameSite: "None",
1392
+ session: false,
1393
+ lifetimeDays: 400,
1394
+ firstParty: false
1395
+ },
1396
+ {
1397
+ name: "guest_id_ads",
1398
+ domain: ".twitter.com",
1399
+ path: "/",
1400
+ httpOnly: false,
1401
+ secure: true,
1402
+ sameSite: "None",
1403
+ session: false,
1404
+ lifetimeDays: 400,
1405
+ firstParty: false
1406
+ },
1407
+ {
1408
+ name: "personalization_id",
1409
+ domain: ".twitter.com",
1410
+ path: "/",
1411
+ httpOnly: false,
1412
+ secure: true,
1413
+ sameSite: "None",
1414
+ session: false,
1415
+ lifetimeDays: 400,
1416
+ firstParty: false
1417
+ },
1418
+ {
1419
+ name: "guest_id",
1420
+ domain: ".twitter.com",
1421
+ path: "/",
1422
+ httpOnly: false,
1423
+ secure: true,
1424
+ sameSite: "None",
1425
+ session: false,
1426
+ lifetimeDays: 400,
1427
+ firstParty: false
1428
+ }
1429
+ ],
1430
+ network: {
1431
+ requestCount: 3,
1432
+ domains: [
1433
+ "analytics.twitter.com",
1434
+ "static.ads-twitter.com",
1435
+ "t.co"
1436
+ ],
1437
+ outboundBytes: 0,
1438
+ inboundBytes: 15448,
1439
+ injectedElements: [
1440
+ {
1441
+ tag: "img",
1442
+ src: "https://t.co/1/i/adsct?bci=4&dv=Australia%2FMelbourne%26en-GB%26Google%20Inc.%26Linux%20x86_64%26255%261280%26720%2624%2624%261280%26720%260%26na&eci=3&event=%7B%7D&event_id=292057f4-8d02-41b4-8183-5fd91c73b9d3&integration=advertiser&p_id=Twitter&p_user_id=0&pl_id=24a0ed6e-9f98-4aea-9e37-d169b36cf844&tw_document_href=http%3A%2F%2F127.0.0.1%3A41347%2FxPixel&tw_iframe_status=0&tw_pid_src=1&twpid=tw.1774508668567.148914703390933075&txn_id=ol7lz&type=javascript&version=2.3.50"
1443
+ },
1444
+ {
1445
+ tag: "img",
1446
+ src: "https://analytics.twitter.com/1/i/adsct?bci=4&dv=Australia%2FMelbourne%26en-GB%26Google%20Inc.%26Linux%20x86_64%26255%261280%26720%2624%2624%261280%26720%260%26na&eci=3&event=%7B%7D&event_id=292057f4-8d02-41b4-8183-5fd91c73b9d3&integration=advertiser&p_id=Twitter&p_user_id=0&pl_id=24a0ed6e-9f98-4aea-9e37-d169b36cf844&tw_document_href=http%3A%2F%2F127.0.0.1%3A41347%2FxPixel&tw_iframe_status=0&tw_pid_src=1&twpid=tw.1774508668567.148914703390933075&txn_id=ol7lz&type=javascript&version=2.3.50"
1447
+ }
1448
+ ]
1449
+ },
1450
+ performance: {
1451
+ taskDurationMs: 16,
1452
+ scriptDurationMs: 2,
1453
+ heapDeltaKb: 1035
1454
+ },
1455
+ scripts: [
1456
+ {
1457
+ url: "https://static.ads-twitter.com/uwt.js",
1458
+ transferKb: 13.5,
1459
+ decodedKb: 47.1,
1460
+ encoding: "gzip",
1461
+ durationMs: 66,
1462
+ initiatorType: "script",
1463
+ protocol: "unknown"
1464
+ },
1465
+ {
1466
+ url: "https://t.co/1/i/adsct?bci=4&dv=Australia%2FMelbourne%26en-GB%26Google%20Inc.%26Linux%20x86_64%26255%261280%26720%2624%2624%261280%26720%260%26na&eci=3&event=%7B%7D&event_id=292057f4-8d02-41b4-8183-5fd91c73b9d3&integration=advertiser&p_id=Twitter&p_user_id=0&pl_id=24a0ed6e-9f98-4aea-9e37-d169b36cf844&tw_document_href=http%3A%2F%2F127.0.0.1%3A41347%2FxPixel&tw_iframe_status=0&tw_pid_src=1&twpid=tw.1774508668567.148914703390933075&txn_id=ol7lz&type=javascript&version=2.3.50",
1467
+ transferKb: 0.6,
1468
+ decodedKb: 0,
1469
+ encoding: "none",
1470
+ durationMs: 231,
1471
+ initiatorType: "img",
1472
+ protocol: "unknown"
1473
+ },
1474
+ {
1475
+ url: "https://analytics.twitter.com/1/i/adsct?bci=4&dv=Australia%2FMelbourne%26en-GB%26Google%20Inc.%26Linux%20x86_64%26255%261280%26720%2624%2624%261280%26720%260%26na&eci=3&event=%7B%7D&event_id=292057f4-8d02-41b4-8183-5fd91c73b9d3&integration=advertiser&p_id=Twitter&p_user_id=0&pl_id=24a0ed6e-9f98-4aea-9e37-d169b36cf844&tw_document_href=http%3A%2F%2F127.0.0.1%3A41347%2FxPixel&tw_iframe_status=0&tw_pid_src=1&twpid=tw.1774508668567.148914703390933075&txn_id=ol7lz&type=javascript&version=2.3.50",
1476
+ transferKb: 1,
1477
+ decodedKb: 0,
1478
+ encoding: "none",
1479
+ durationMs: 231,
1480
+ initiatorType: "img",
1481
+ protocol: "unknown"
1482
+ }
1483
+ ]
1484
+ };
1485
+ const tiktokPixel = {
1486
+ totalTransferKb: 1889.7,
1487
+ totalDecodedKb: 2365.4,
1488
+ loadTimeMs: 282,
1489
+ collectsWebVitals: true,
1490
+ apis: {
1491
+ cookies: true,
1492
+ localStorage: true,
1493
+ sessionStorage: true,
1494
+ indexedDB: false,
1495
+ canvas: false,
1496
+ webgl: false,
1497
+ audioContext: false,
1498
+ userAgent: true,
1499
+ doNotTrack: false,
1500
+ hardwareConcurrency: false,
1501
+ deviceMemory: false,
1502
+ plugins: false,
1503
+ languages: false,
1504
+ screen: true,
1505
+ timezone: true,
1506
+ platform: true,
1507
+ vendor: false,
1508
+ connection: true,
1509
+ maxTouchPoints: false,
1510
+ devicePixelRatio: false,
1511
+ mediaDevices: false,
1512
+ getBattery: false,
1513
+ referrer: true,
1514
+ windowName: true,
1515
+ rtcPeerConnection: false,
1516
+ geolocation: false,
1517
+ serviceWorker: false,
1518
+ cacheApi: false,
1519
+ sendBeacon: true,
1520
+ fetch: true,
1521
+ xhr: true,
1522
+ websocket: false,
1523
+ mutationObserver: true,
1524
+ performanceObserver: true,
1525
+ intersectionObserver: true
1526
+ },
1527
+ cookies: [
1528
+ {
1529
+ name: "_ttp",
1530
+ domain: ".tiktok.com",
1531
+ path: "/",
1532
+ httpOnly: false,
1533
+ secure: true,
1534
+ sameSite: "None",
1535
+ session: false,
1536
+ lifetimeDays: 390,
1537
+ firstParty: false
1538
+ }
1539
+ ],
1540
+ network: {
1541
+ requestCount: 3,
1542
+ domains: [
1543
+ "analytics.tiktok.com"
1544
+ ],
1545
+ outboundBytes: 0,
1546
+ inboundBytes: 151648,
1547
+ injectedElements: [
1548
+ {
1549
+ tag: "script",
1550
+ src: "https://analytics.tiktok.com/i18n/pixel/static/identify_5cff1caf.js"
1551
+ },
1552
+ {
1553
+ tag: "script",
1554
+ src: "https://analytics.tiktok.com/i18n/pixel/static/main.MTJlMjhkNzMyMA.js"
1555
+ }
1556
+ ]
1557
+ },
1558
+ performance: {
1559
+ taskDurationMs: 59,
1560
+ scriptDurationMs: 29,
1561
+ heapDeltaKb: 2298
1562
+ },
1563
+ scripts: [
1564
+ {
1565
+ url: "https://analytics.tiktok.com/i18n/pixel/events.js",
1566
+ transferKb: 2.8,
1567
+ decodedKb: 7.6,
1568
+ encoding: "gzip",
1569
+ durationMs: 282,
1570
+ initiatorType: "script",
1571
+ protocol: "unknown"
1572
+ },
1573
+ {
1574
+ url: "https://analytics.tiktok.com/i18n/pixel/static/main.MTJlMjhkNzMyMA.js",
1575
+ transferKb: 105.7,
1576
+ decodedKb: 463.8,
1577
+ encoding: "gzip",
1578
+ durationMs: 50,
1579
+ initiatorType: "script",
1580
+ protocol: "unknown"
1581
+ },
1582
+ {
1583
+ url: "https://analytics.tiktok.com/i18n/pixel/static/identify_5cff1caf.js",
1584
+ transferKb: 39.5,
1585
+ decodedKb: 152,
1586
+ encoding: "gzip",
1587
+ durationMs: 21,
1588
+ initiatorType: "script",
1589
+ protocol: "unknown"
1590
+ },
1591
+ {
1592
+ url: "https://analytics.tiktok.com/i18n/pixel/config.js",
1593
+ transferKb: 0.3,
1594
+ decodedKb: 0.6,
1595
+ encoding: "gzip",
1596
+ durationMs: 0,
1597
+ initiatorType: "secondary",
1598
+ protocol: "unknown"
1599
+ },
1600
+ {
1601
+ url: "https://analytics.tiktok.com/i18n/pixel/eb.js",
1602
+ transferKb: 1741.4,
1603
+ decodedKb: 1741.4,
1604
+ encoding: "gzip",
1605
+ durationMs: 0,
1606
+ initiatorType: "secondary",
1607
+ protocol: "unknown"
1608
+ }
1609
+ ]
1610
+ };
1611
+ const snapchatPixel = {
1612
+ totalTransferKb: 1.3,
1613
+ totalDecodedKb: 58.2,
1614
+ loadTimeMs: 561,
1615
+ collectsWebVitals: false,
1616
+ apis: {
1617
+ cookies: true,
1618
+ localStorage: true,
1619
+ sessionStorage: true,
1620
+ indexedDB: false,
1621
+ canvas: false,
1622
+ webgl: false,
1623
+ audioContext: false,
1624
+ userAgent: true,
1625
+ doNotTrack: false,
1626
+ hardwareConcurrency: false,
1627
+ deviceMemory: false,
1628
+ plugins: false,
1629
+ languages: false,
1630
+ screen: true,
1631
+ timezone: false,
1632
+ platform: false,
1633
+ vendor: false,
1634
+ connection: false,
1635
+ maxTouchPoints: true,
1636
+ devicePixelRatio: false,
1637
+ mediaDevices: false,
1638
+ getBattery: false,
1639
+ referrer: true,
1640
+ windowName: true,
1641
+ rtcPeerConnection: false,
1642
+ geolocation: false,
1643
+ serviceWorker: false,
1644
+ cacheApi: false,
1645
+ sendBeacon: true,
1646
+ fetch: true,
1647
+ xhr: true,
1648
+ websocket: false,
1649
+ mutationObserver: true,
1650
+ performanceObserver: true,
1651
+ intersectionObserver: false
1652
+ },
1653
+ cookies: [
1654
+ {
1655
+ name: "X-AB",
1656
+ domain: "sc-static.net",
1657
+ path: "/scevent.min.js",
1658
+ httpOnly: false,
1659
+ secure: true,
1660
+ sameSite: "None",
1661
+ session: false,
1662
+ lifetimeDays: 1,
1663
+ firstParty: false
1664
+ },
1665
+ {
1666
+ name: "TapAd_TS",
1667
+ domain: ".tapad.com",
1668
+ path: "/",
1669
+ httpOnly: false,
1670
+ secure: true,
1671
+ sameSite: "None",
1672
+ session: false,
1673
+ lifetimeDays: 60,
1674
+ firstParty: false
1675
+ },
1676
+ {
1677
+ name: "TapAd_DID",
1678
+ domain: ".tapad.com",
1679
+ path: "/",
1680
+ httpOnly: false,
1681
+ secure: true,
1682
+ sameSite: "None",
1683
+ session: false,
1684
+ lifetimeDays: 60,
1685
+ firstParty: false
1686
+ },
1687
+ {
1688
+ name: "TapAd_3WAY_SYNCS",
1689
+ domain: ".tapad.com",
1690
+ path: "/",
1691
+ httpOnly: false,
1692
+ secure: true,
1693
+ sameSite: "None",
1694
+ session: false,
1695
+ lifetimeDays: 60,
1696
+ firstParty: false
1697
+ },
1698
+ {
1699
+ name: "sc_at",
1700
+ domain: ".snapchat.com",
1701
+ path: "/",
1702
+ httpOnly: false,
1703
+ secure: true,
1704
+ sameSite: "None",
1705
+ session: false,
1706
+ lifetimeDays: 390,
1707
+ firstParty: false
1708
+ }
1709
+ ],
1710
+ network: {
1711
+ requestCount: 10,
1712
+ domains: [
1713
+ "pixel.tapad.com",
1714
+ "sc-static.net",
1715
+ "tr.snapchat.com"
1716
+ ],
1717
+ outboundBytes: 3045,
1718
+ inboundBytes: 26667,
1719
+ injectedElements: [
1720
+ ]
1721
+ },
1722
+ performance: {
1723
+ taskDurationMs: 42,
1724
+ scriptDurationMs: 26,
1725
+ heapDeltaKb: 2447
1726
+ },
1727
+ scripts: [
1728
+ {
1729
+ url: "https://sc-static.net/scevent.min.js",
1730
+ transferKb: 0,
1731
+ decodedKb: 57.4,
1732
+ encoding: "gzip",
1733
+ durationMs: 561,
1734
+ initiatorType: "script",
1735
+ protocol: "unknown"
1736
+ },
1737
+ {
1738
+ url: "https://tr.snapchat.com/config/1/2295cbcc-cb3f-4727-8c09-1133b742722c.json?v=3.54.4-2603251834",
1739
+ transferKb: 0.3,
1740
+ decodedKb: 0.1,
1741
+ encoding: "none",
1742
+ durationMs: 391,
1743
+ initiatorType: "fetch",
1744
+ protocol: "unknown"
1745
+ },
1746
+ {
1747
+ url: "https://tr.snapchat.com/cm/i?pid=2295cbcc-cb3f-4727-8c09-1133b742722c&u_scsid=2d9efdcf-bc69-41aa-8022-097ed265c888&u_sclid=54cae0d2-4f80-4cf2-a37d-843432ed64ec",
1748
+ transferKb: 1,
1749
+ decodedKb: 0.7,
1750
+ encoding: "none",
1751
+ durationMs: 186,
1752
+ initiatorType: "iframe",
1753
+ protocol: "unknown"
1754
+ },
1755
+ {
1756
+ url: "https://tr.snapchat.com/p",
1757
+ transferKb: 0,
1758
+ decodedKb: 0,
1759
+ encoding: "none",
1760
+ durationMs: 115,
1761
+ initiatorType: "beacon",
1762
+ protocol: "unknown"
1763
+ }
1764
+ ]
1765
+ };
1766
+ const redditPixel = {
1767
+ totalTransferKb: 19.5,
1768
+ totalDecodedKb: 65.3,
1769
+ loadTimeMs: 325,
1770
+ collectsWebVitals: false,
1771
+ apis: {
1772
+ cookies: true,
1773
+ localStorage: true,
1774
+ sessionStorage: false,
1775
+ indexedDB: false,
1776
+ canvas: false,
1777
+ webgl: false,
1778
+ audioContext: false,
1779
+ userAgent: false,
1780
+ doNotTrack: false,
1781
+ hardwareConcurrency: false,
1782
+ deviceMemory: false,
1783
+ plugins: false,
1784
+ languages: false,
1785
+ screen: true,
1786
+ timezone: false,
1787
+ platform: false,
1788
+ vendor: false,
1789
+ connection: false,
1790
+ maxTouchPoints: false,
1791
+ devicePixelRatio: false,
1792
+ mediaDevices: false,
1793
+ getBattery: false,
1794
+ referrer: false,
1795
+ windowName: false,
1796
+ rtcPeerConnection: false,
1797
+ geolocation: false,
1798
+ serviceWorker: false,
1799
+ cacheApi: false,
1800
+ sendBeacon: false,
1801
+ fetch: true,
1802
+ xhr: true,
1803
+ websocket: false,
1804
+ mutationObserver: false,
1805
+ performanceObserver: false,
1806
+ intersectionObserver: false
1807
+ },
1808
+ cookies: [
1809
+ ],
1810
+ network: {
1811
+ requestCount: 3,
1812
+ domains: [
1813
+ "alb.reddit.com",
1814
+ "pixel-config.reddit.com",
1815
+ "www.redditstatic.com"
1816
+ ],
1817
+ outboundBytes: 0,
1818
+ inboundBytes: 20077,
1819
+ injectedElements: [
1820
+ {
1821
+ tag: "img",
1822
+ src: "https://alb.reddit.com/rp.gif?ts=1774508685700&id=a2_ilz4u0kbdr3v&event=PageVisit&m.itemCount=&m.value=&m.valueDecimal=&m.currency=&m.transactionId=&m.customEventName=&m.products=&m.conversionId=&uuid=94e2ee00-74ea-446e-a303-a52f6481ebd8&aaid=&em=&pn=&external_id=&idfa=&integration=reddit&partner=&partner_version=&opt_out=0&sh=1280&sw=720&v=rdt_79aa2193&dpm=&dpcc=&dprc="
1823
+ }
1824
+ ]
1825
+ },
1826
+ performance: {
1827
+ taskDurationMs: 14,
1828
+ scriptDurationMs: 6,
1829
+ heapDeltaKb: 965
1830
+ },
1831
+ scripts: [
1832
+ {
1833
+ url: "https://www.redditstatic.com/ads/pixel.js",
1834
+ transferKb: 18.8,
1835
+ decodedKb: 65.3,
1836
+ encoding: "gzip",
1837
+ durationMs: 117,
1838
+ initiatorType: "script",
1839
+ protocol: "unknown"
1840
+ },
1841
+ {
1842
+ url: "https://pixel-config.reddit.com/pixels/a2_ilz4u0kbdr3v/config",
1843
+ transferKb: 0.1,
1844
+ decodedKb: 0,
1845
+ encoding: "gzip",
1846
+ durationMs: 119,
1847
+ initiatorType: "xmlhttprequest",
1848
+ protocol: "unknown"
1849
+ },
1850
+ {
1851
+ url: "https://alb.reddit.com/rp.gif?ts=1774508685700&id=a2_ilz4u0kbdr3v&event=PageVisit&m.itemCount=&m.value=&m.valueDecimal=&m.currency=&m.transactionId=&m.customEventName=&m.products=&m.conversionId=&uuid=94e2ee00-74ea-446e-a303-a52f6481ebd8&aaid=&em=&pn=&external_id=&idfa=&integration=reddit&partner=&partner_version=&opt_out=0&sh=1280&sw=720&v=rdt_79aa2193&dpm=&dpcc=&dprc=",
1852
+ transferKb: 0.6,
1853
+ decodedKb: 0,
1854
+ encoding: "none",
1855
+ durationMs: 325,
1856
+ initiatorType: "img",
1857
+ protocol: "unknown"
1858
+ }
1859
+ ]
1860
+ };
1861
+ const googleAdsense = {
1862
+ totalTransferKb: 69.8,
1863
+ totalDecodedKb: 198.1,
1864
+ loadTimeMs: 292,
1865
+ collectsWebVitals: true,
1866
+ apis: {
1867
+ cookies: true,
1868
+ localStorage: true,
1869
+ sessionStorage: true,
1870
+ indexedDB: false,
1871
+ canvas: false,
1872
+ webgl: false,
1873
+ audioContext: false,
1874
+ userAgent: true,
1875
+ doNotTrack: false,
1876
+ hardwareConcurrency: false,
1877
+ deviceMemory: false,
1878
+ plugins: false,
1879
+ languages: false,
1880
+ screen: false,
1881
+ timezone: false,
1882
+ platform: false,
1883
+ vendor: false,
1884
+ connection: false,
1885
+ maxTouchPoints: false,
1886
+ devicePixelRatio: false,
1887
+ mediaDevices: false,
1888
+ getBattery: false,
1889
+ referrer: true,
1890
+ windowName: false,
1891
+ rtcPeerConnection: false,
1892
+ geolocation: false,
1893
+ serviceWorker: false,
1894
+ cacheApi: false,
1895
+ sendBeacon: false,
1896
+ fetch: true,
1897
+ xhr: true,
1898
+ websocket: false,
1899
+ mutationObserver: true,
1900
+ performanceObserver: true,
1901
+ intersectionObserver: false
1902
+ },
1903
+ cookies: [
1904
+ ],
1905
+ network: {
1906
+ requestCount: 1,
1907
+ domains: [
1908
+ "pagead2.googlesyndication.com"
1909
+ ],
1910
+ outboundBytes: 0,
1911
+ inboundBytes: 64712,
1912
+ injectedElements: [
1913
+ ]
1914
+ },
1915
+ performance: {
1916
+ taskDurationMs: 15,
1917
+ scriptDurationMs: 6,
1918
+ heapDeltaKb: 1804
1919
+ },
1920
+ scripts: [
1921
+ {
1922
+ url: "https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js",
1923
+ transferKb: 63,
1924
+ decodedKb: 191.3,
1925
+ encoding: "br",
1926
+ durationMs: 292,
1927
+ initiatorType: "script",
1928
+ protocol: "h2"
1929
+ },
1930
+ {
1931
+ url: "https://pagead2.googlesyndication.com/pagead/js/err_rep.js",
1932
+ transferKb: 6.8,
1933
+ decodedKb: 6.8,
1934
+ encoding: "none",
1935
+ durationMs: 0,
1936
+ initiatorType: "secondary",
1937
+ protocol: "unknown"
1938
+ }
1939
+ ]
1940
+ };
1941
+ const carbonAds = {
1942
+ totalTransferKb: 10.5,
1943
+ totalDecodedKb: 34.5,
1944
+ loadTimeMs: 75,
1945
+ collectsWebVitals: false,
1946
+ apis: {
1947
+ cookies: true,
1948
+ localStorage: false,
1949
+ sessionStorage: false,
1950
+ indexedDB: false,
1951
+ canvas: false,
1952
+ webgl: false,
1953
+ audioContext: false,
1954
+ userAgent: false,
1955
+ doNotTrack: false,
1956
+ hardwareConcurrency: false,
1957
+ deviceMemory: false,
1958
+ plugins: false,
1959
+ languages: false,
1960
+ screen: false,
1961
+ timezone: false,
1962
+ platform: false,
1963
+ vendor: false,
1964
+ connection: false,
1965
+ maxTouchPoints: false,
1966
+ devicePixelRatio: false,
1967
+ mediaDevices: false,
1968
+ getBattery: false,
1969
+ referrer: false,
1970
+ windowName: false,
1971
+ rtcPeerConnection: false,
1972
+ geolocation: false,
1973
+ serviceWorker: false,
1974
+ cacheApi: false,
1975
+ sendBeacon: false,
1976
+ fetch: true,
1977
+ xhr: false,
1978
+ websocket: false,
1979
+ mutationObserver: false,
1980
+ performanceObserver: false,
1981
+ intersectionObserver: true
1982
+ },
1983
+ cookies: [
1984
+ ],
1985
+ network: {
1986
+ requestCount: 1,
1987
+ domains: [
1988
+ "cdn.carbonads.com"
1989
+ ],
1990
+ outboundBytes: 0,
1991
+ inboundBytes: 10748,
1992
+ injectedElements: [
1993
+ ]
1994
+ },
1995
+ performance: {
1996
+ taskDurationMs: 6,
1997
+ scriptDurationMs: 1,
1998
+ heapDeltaKb: 729
1999
+ },
2000
+ scripts: [
2001
+ {
2002
+ url: "https://cdn.carbonads.com/carbon.js?serve=CW7DTKJL&placement=unlighthousedev&format=cover",
2003
+ transferKb: 10.5,
2004
+ decodedKb: 34.5,
2005
+ encoding: "gzip",
2006
+ durationMs: 75,
2007
+ initiatorType: "script",
2008
+ protocol: "unknown"
2009
+ }
2010
+ ]
2011
+ };
2012
+ const hotjar = {
2013
+ totalTransferKb: 62.2,
2014
+ totalDecodedKb: 242.5,
2015
+ loadTimeMs: 334,
2016
+ collectsWebVitals: false,
2017
+ apis: {
2018
+ cookies: true,
2019
+ localStorage: true,
2020
+ sessionStorage: true,
2021
+ indexedDB: false,
2022
+ canvas: false,
2023
+ webgl: false,
2024
+ audioContext: false,
2025
+ userAgent: true,
2026
+ doNotTrack: true,
2027
+ hardwareConcurrency: false,
2028
+ deviceMemory: false,
2029
+ plugins: false,
2030
+ languages: true,
2031
+ screen: true,
2032
+ timezone: false,
2033
+ platform: false,
2034
+ vendor: false,
2035
+ connection: false,
2036
+ maxTouchPoints: false,
2037
+ devicePixelRatio: false,
2038
+ mediaDevices: false,
2039
+ getBattery: false,
2040
+ referrer: true,
2041
+ windowName: false,
2042
+ rtcPeerConnection: false,
2043
+ geolocation: false,
2044
+ serviceWorker: false,
2045
+ cacheApi: false,
2046
+ sendBeacon: true,
2047
+ fetch: false,
2048
+ xhr: true,
2049
+ websocket: true,
2050
+ mutationObserver: true,
2051
+ performanceObserver: false,
2052
+ intersectionObserver: false
2053
+ },
2054
+ cookies: [
2055
+ ],
2056
+ network: {
2057
+ requestCount: 1,
2058
+ domains: [
2059
+ "static.hotjar.com"
2060
+ ],
2061
+ outboundBytes: 0,
2062
+ inboundBytes: 6332,
2063
+ injectedElements: [
2064
+ ]
2065
+ },
2066
+ performance: {
2067
+ taskDurationMs: 7,
2068
+ scriptDurationMs: 1,
2069
+ heapDeltaKb: 756
2070
+ },
2071
+ scripts: [
2072
+ {
2073
+ url: "https://static.hotjar.com/c/hotjar-3925006.js?sv=6",
2074
+ transferKb: 6.2,
2075
+ decodedKb: 15,
2076
+ encoding: "br",
2077
+ durationMs: 334,
2078
+ initiatorType: "script",
2079
+ protocol: "unknown"
2080
+ },
2081
+ {
2082
+ url: "https://script.hotjar.com/modules.6a0f3932cb1341a35c18.js",
2083
+ transferKb: 56,
2084
+ decodedKb: 227.5,
2085
+ encoding: "br",
2086
+ durationMs: 0,
2087
+ initiatorType: "secondary",
2088
+ protocol: "unknown"
2089
+ }
2090
+ ]
2091
+ };
2092
+ const clarity = {
2093
+ totalTransferKb: 27.2,
2094
+ totalDecodedKb: 80.2,
2095
+ loadTimeMs: 746,
2096
+ collectsWebVitals: true,
2097
+ apis: {
2098
+ cookies: true,
2099
+ localStorage: false,
2100
+ sessionStorage: true,
2101
+ indexedDB: false,
2102
+ canvas: false,
2103
+ webgl: false,
2104
+ audioContext: false,
2105
+ userAgent: true,
2106
+ doNotTrack: false,
2107
+ hardwareConcurrency: true,
2108
+ deviceMemory: true,
2109
+ plugins: false,
2110
+ languages: true,
2111
+ screen: true,
2112
+ timezone: true,
2113
+ platform: true,
2114
+ vendor: false,
2115
+ connection: true,
2116
+ maxTouchPoints: true,
2117
+ devicePixelRatio: true,
2118
+ mediaDevices: false,
2119
+ getBattery: false,
2120
+ referrer: true,
2121
+ windowName: false,
2122
+ rtcPeerConnection: false,
2123
+ geolocation: false,
2124
+ serviceWorker: false,
2125
+ cacheApi: false,
2126
+ sendBeacon: true,
2127
+ fetch: false,
2128
+ xhr: true,
2129
+ websocket: false,
2130
+ mutationObserver: true,
2131
+ performanceObserver: true,
2132
+ intersectionObserver: true
2133
+ },
2134
+ cookies: [
2135
+ ],
2136
+ network: {
2137
+ requestCount: 3,
2138
+ domains: [
2139
+ "k.clarity.ms",
2140
+ "scripts.clarity.ms",
2141
+ "www.clarity.ms"
2142
+ ],
2143
+ outboundBytes: 752,
2144
+ inboundBytes: 27855,
2145
+ injectedElements: [
2146
+ {
2147
+ tag: "script",
2148
+ src: "https://scripts.clarity.ms/0.8.57/clarity.js"
2149
+ }
2150
+ ]
2151
+ },
2152
+ performance: {
2153
+ taskDurationMs: 19,
2154
+ scriptDurationMs: 10,
2155
+ heapDeltaKb: 1199
2156
+ },
2157
+ scripts: [
2158
+ {
2159
+ url: "https://www.clarity.ms/tag/mqk2m9dr2v",
2160
+ transferKb: 0.8,
2161
+ decodedKb: 0.6,
2162
+ encoding: "none",
2163
+ durationMs: 355,
2164
+ initiatorType: "script",
2165
+ protocol: "unknown"
2166
+ },
2167
+ {
2168
+ url: "https://scripts.clarity.ms/0.8.57/clarity.js",
2169
+ transferKb: 26.1,
2170
+ decodedKb: 79.6,
2171
+ encoding: "br",
2172
+ durationMs: 346,
2173
+ initiatorType: "script",
2174
+ protocol: "unknown"
2175
+ },
2176
+ {
2177
+ url: "https://k.clarity.ms/collect",
2178
+ transferKb: 0.3,
2179
+ decodedKb: 0,
2180
+ encoding: "none",
2181
+ durationMs: 746,
2182
+ initiatorType: "xmlhttprequest",
2183
+ protocol: "unknown"
2184
+ }
2185
+ ]
2186
+ };
2187
+ const googleTagManager = {
2188
+ totalTransferKb: 109.2,
2189
+ totalDecodedKb: 303.2,
2190
+ loadTimeMs: 607,
2191
+ collectsWebVitals: false,
2192
+ apis: {
2193
+ cookies: true,
2194
+ localStorage: true,
2195
+ sessionStorage: false,
2196
+ indexedDB: false,
2197
+ canvas: false,
2198
+ webgl: false,
2199
+ audioContext: false,
2200
+ userAgent: true,
2201
+ doNotTrack: false,
2202
+ hardwareConcurrency: false,
2203
+ deviceMemory: false,
2204
+ plugins: false,
2205
+ languages: false,
2206
+ screen: false,
2207
+ timezone: true,
2208
+ platform: false,
2209
+ vendor: false,
2210
+ connection: false,
2211
+ maxTouchPoints: false,
2212
+ devicePixelRatio: false,
2213
+ mediaDevices: false,
2214
+ getBattery: false,
2215
+ referrer: true,
2216
+ windowName: true,
2217
+ rtcPeerConnection: false,
2218
+ geolocation: false,
2219
+ serviceWorker: false,
2220
+ cacheApi: false,
2221
+ sendBeacon: true,
2222
+ fetch: true,
2223
+ xhr: true,
2224
+ websocket: false,
2225
+ mutationObserver: false,
2226
+ performanceObserver: false,
2227
+ intersectionObserver: false
2228
+ },
2229
+ cookies: [
2230
+ ],
2231
+ network: {
2232
+ requestCount: 1,
2233
+ domains: [
2234
+ "www.googletagmanager.com"
2235
+ ],
2236
+ outboundBytes: 0,
2237
+ inboundBytes: 111826,
2238
+ injectedElements: [
2239
+ ]
2240
+ },
2241
+ performance: {
2242
+ taskDurationMs: 17,
2243
+ scriptDurationMs: 6,
2244
+ heapDeltaKb: 1809
2245
+ },
2246
+ scripts: [
2247
+ {
2248
+ url: "https://www.googletagmanager.com/gtm.js?id=GTM-MWW974PF",
2249
+ transferKb: 109.2,
2250
+ decodedKb: 303.2,
2251
+ encoding: "zstd",
2252
+ durationMs: 607,
2253
+ initiatorType: "script",
2254
+ protocol: "unknown"
2255
+ }
2256
+ ]
2257
+ };
2258
+ const intercom = {
2259
+ totalTransferKb: 9669.9,
2260
+ totalDecodedKb: 10438.5,
2261
+ loadTimeMs: 75,
2262
+ collectsWebVitals: false,
2263
+ apis: {
2264
+ cookies: true,
2265
+ localStorage: true,
2266
+ sessionStorage: true,
2267
+ indexedDB: false,
2268
+ canvas: true,
2269
+ webgl: false,
2270
+ audioContext: false,
2271
+ userAgent: true,
2272
+ doNotTrack: true,
2273
+ hardwareConcurrency: false,
2274
+ deviceMemory: false,
2275
+ plugins: false,
2276
+ languages: false,
2277
+ screen: true,
2278
+ timezone: true,
2279
+ platform: true,
2280
+ vendor: true,
2281
+ connection: false,
2282
+ maxTouchPoints: true,
2283
+ devicePixelRatio: true,
2284
+ mediaDevices: false,
2285
+ getBattery: false,
2286
+ referrer: false,
2287
+ windowName: false,
2288
+ rtcPeerConnection: false,
2289
+ geolocation: false,
2290
+ serviceWorker: false,
2291
+ cacheApi: false,
2292
+ sendBeacon: true,
2293
+ fetch: true,
2294
+ xhr: true,
2295
+ websocket: true,
2296
+ mutationObserver: true,
2297
+ performanceObserver: false,
2298
+ intersectionObserver: false
2299
+ },
2300
+ cookies: [
2301
+ ],
2302
+ network: {
2303
+ requestCount: 1,
2304
+ domains: [
2305
+ "widget.intercom.io"
2306
+ ],
2307
+ outboundBytes: 0,
2308
+ inboundBytes: 3715,
2309
+ injectedElements: [
2310
+ ]
2311
+ },
2312
+ performance: {
2313
+ taskDurationMs: 7,
2314
+ scriptDurationMs: 0,
2315
+ heapDeltaKb: 726
2316
+ },
2317
+ scripts: [
2318
+ {
2319
+ url: "https://widget.intercom.io/widget/akg5rmxb",
2320
+ transferKb: 3.6,
2321
+ decodedKb: 7.4,
2322
+ encoding: "gzip",
2323
+ durationMs: 75,
2324
+ initiatorType: "script",
2325
+ protocol: "unknown"
2326
+ },
2327
+ {
2328
+ url: "https://js.intercomcdn.com/intersection/assets/app.js",
2329
+ transferKb: 7165.2,
2330
+ decodedKb: 7165.2,
2331
+ encoding: "br",
2332
+ durationMs: 0,
2333
+ initiatorType: "secondary",
2334
+ protocol: "unknown"
2335
+ },
2336
+ {
2337
+ url: "https://js.intercomcdn.com/intersection/assets/styles.js",
2338
+ transferKb: 2168.3,
2339
+ decodedKb: 2168.3,
2340
+ encoding: "gzip",
2341
+ durationMs: 0,
2342
+ initiatorType: "secondary",
2343
+ protocol: "unknown"
2344
+ },
2345
+ {
2346
+ url: "https://js.intercomcdn.com/vendor-modern.1d25c940.js",
2347
+ transferKb: 142.8,
2348
+ decodedKb: 467,
2349
+ encoding: "gzip",
2350
+ durationMs: 0,
2351
+ initiatorType: "secondary",
2352
+ protocol: "unknown"
2353
+ },
2354
+ {
2355
+ url: "https://js.intercomcdn.com/frame-modern.3f051244.js",
2356
+ transferKb: 190,
2357
+ decodedKb: 630.6,
2358
+ encoding: "gzip",
2359
+ durationMs: 0,
2360
+ initiatorType: "secondary",
2361
+ protocol: "unknown"
2362
+ }
2363
+ ]
2364
+ };
2365
+ const crisp = {
2366
+ totalTransferKb: 321.4,
2367
+ totalDecodedKb: 325.6,
2368
+ loadTimeMs: 63,
2369
+ collectsWebVitals: false,
2370
+ apis: {
2371
+ cookies: true,
2372
+ localStorage: true,
2373
+ sessionStorage: true,
2374
+ indexedDB: false,
2375
+ canvas: false,
2376
+ webgl: false,
2377
+ audioContext: true,
2378
+ userAgent: true,
2379
+ doNotTrack: true,
2380
+ hardwareConcurrency: false,
2381
+ deviceMemory: false,
2382
+ plugins: false,
2383
+ languages: true,
2384
+ screen: false,
2385
+ timezone: true,
2386
+ platform: true,
2387
+ vendor: false,
2388
+ connection: false,
2389
+ maxTouchPoints: true,
2390
+ devicePixelRatio: false,
2391
+ mediaDevices: true,
2392
+ getBattery: false,
2393
+ referrer: true,
2394
+ windowName: false,
2395
+ rtcPeerConnection: true,
2396
+ geolocation: false,
2397
+ serviceWorker: false,
2398
+ cacheApi: false,
2399
+ sendBeacon: false,
2400
+ fetch: true,
2401
+ xhr: true,
2402
+ websocket: true,
2403
+ mutationObserver: true,
2404
+ performanceObserver: false,
2405
+ intersectionObserver: false
2406
+ },
2407
+ cookies: [
2408
+ ],
2409
+ network: {
2410
+ requestCount: 1,
2411
+ domains: [
2412
+ "client.crisp.chat"
2413
+ ],
2414
+ outboundBytes: 0,
2415
+ inboundBytes: 3378,
2416
+ injectedElements: [
2417
+ ]
2418
+ },
2419
+ performance: {
2420
+ taskDurationMs: 6,
2421
+ scriptDurationMs: 0,
2422
+ heapDeltaKb: 741
2423
+ },
2424
+ scripts: [
2425
+ {
2426
+ url: "https://client.crisp.chat/l.js",
2427
+ transferKb: 3.3,
2428
+ decodedKb: 7.5,
2429
+ encoding: "br",
2430
+ durationMs: 63,
2431
+ initiatorType: "script",
2432
+ protocol: "unknown"
2433
+ },
2434
+ {
2435
+ url: "https://client.crisp.chat/static/javascripts/client_default_508c63f.js",
2436
+ transferKb: 318.1,
2437
+ decodedKb: 318.1,
2438
+ encoding: "br",
2439
+ durationMs: 0,
2440
+ initiatorType: "secondary",
2441
+ protocol: "unknown"
2442
+ }
2443
+ ]
2444
+ };
2445
+ const stripe = {
2446
+ totalTransferKb: 222.4,
2447
+ totalDecodedKb: 942.9,
2448
+ loadTimeMs: 126,
2449
+ collectsWebVitals: false,
2450
+ apis: {
2451
+ cookies: true,
2452
+ localStorage: false,
2453
+ sessionStorage: false,
2454
+ indexedDB: false,
2455
+ canvas: false,
2456
+ webgl: false,
2457
+ audioContext: false,
2458
+ userAgent: true,
2459
+ doNotTrack: false,
2460
+ hardwareConcurrency: false,
2461
+ deviceMemory: false,
2462
+ plugins: false,
2463
+ languages: true,
2464
+ screen: false,
2465
+ timezone: false,
2466
+ platform: true,
2467
+ vendor: false,
2468
+ connection: false,
2469
+ maxTouchPoints: true,
2470
+ devicePixelRatio: false,
2471
+ mediaDevices: false,
2472
+ getBattery: false,
2473
+ referrer: true,
2474
+ windowName: true,
2475
+ rtcPeerConnection: false,
2476
+ geolocation: false,
2477
+ serviceWorker: false,
2478
+ cacheApi: false,
2479
+ sendBeacon: false,
2480
+ fetch: true,
2481
+ xhr: true,
2482
+ websocket: false,
2483
+ mutationObserver: true,
2484
+ performanceObserver: true,
2485
+ intersectionObserver: true
2486
+ },
2487
+ cookies: [
2488
+ {
2489
+ name: "m",
2490
+ domain: "m.stripe.com",
2491
+ path: "/",
2492
+ httpOnly: true,
2493
+ secure: true,
2494
+ sameSite: "None",
2495
+ session: false,
2496
+ lifetimeDays: 400,
2497
+ firstParty: false
2498
+ }
2499
+ ],
2500
+ network: {
2501
+ requestCount: 2,
2502
+ domains: [
2503
+ "js.stripe.com"
2504
+ ],
2505
+ outboundBytes: 0,
2506
+ inboundBytes: 227693,
2507
+ injectedElements: [
2508
+ {
2509
+ tag: "iframe",
2510
+ src: "https://js.stripe.com/v3/m-outer-3437aaddcdf6922d623e172c2d6f9278.html#url=http%3A%2F%2F127.0.0.1%3A41347%2Fstripe&title=&referrer=&muid=NA&sid=NA&version=6&preview=false&__shared_params__[version]=v3"
2511
+ }
2512
+ ]
2513
+ },
2514
+ performance: {
2515
+ taskDurationMs: 107,
2516
+ scriptDurationMs: 21,
2517
+ heapDeltaKb: 4113
2518
+ },
2519
+ scripts: [
2520
+ {
2521
+ url: "https://js.stripe.com/v3/",
2522
+ transferKb: 221.9,
2523
+ decodedKb: 942.7,
2524
+ encoding: "br",
2525
+ durationMs: 126,
2526
+ initiatorType: "script",
2527
+ protocol: "h2"
2528
+ },
2529
+ {
2530
+ url: "https://js.stripe.com/v3/m-outer-3437aaddcdf6922d623e172c2d6f9278.html#url=http%3A%2F%2F127.0.0.1%3A41347%2Fstripe&title=&referrer=&muid=NA&sid=NA&version=6&preview=false&__shared_params__[version]=v3",
2531
+ transferKb: 0.5,
2532
+ decodedKb: 0.2,
2533
+ encoding: "none",
2534
+ durationMs: 22,
2535
+ initiatorType: "iframe",
2536
+ protocol: "h2"
2537
+ }
2538
+ ]
2539
+ };
2540
+ const lemonSqueezy = {
2541
+ totalTransferKb: 1.8,
2542
+ totalDecodedKb: 3.8,
2543
+ loadTimeMs: 66,
2544
+ collectsWebVitals: false,
2545
+ apis: {
2546
+ cookies: true,
2547
+ localStorage: false,
2548
+ sessionStorage: false,
2549
+ indexedDB: false,
2550
+ canvas: false,
2551
+ webgl: false,
2552
+ audioContext: false,
2553
+ userAgent: false,
2554
+ doNotTrack: false,
2555
+ hardwareConcurrency: false,
2556
+ deviceMemory: false,
2557
+ plugins: false,
2558
+ languages: false,
2559
+ screen: false,
2560
+ timezone: false,
2561
+ platform: false,
2562
+ vendor: false,
2563
+ connection: false,
2564
+ maxTouchPoints: false,
2565
+ devicePixelRatio: false,
2566
+ mediaDevices: false,
2567
+ getBattery: false,
2568
+ referrer: false,
2569
+ windowName: false,
2570
+ rtcPeerConnection: false,
2571
+ geolocation: false,
2572
+ serviceWorker: false,
2573
+ cacheApi: false,
2574
+ sendBeacon: false,
2575
+ fetch: false,
2576
+ xhr: false,
2577
+ websocket: false,
2578
+ mutationObserver: false,
2579
+ performanceObserver: false,
2580
+ intersectionObserver: false
2581
+ },
2582
+ cookies: [
2583
+ ],
2584
+ network: {
2585
+ requestCount: 1,
2586
+ domains: [
2587
+ "assets.lemonsqueezy.com"
2588
+ ],
2589
+ outboundBytes: 0,
2590
+ inboundBytes: 1832,
2591
+ injectedElements: [
2592
+ ]
2593
+ },
2594
+ performance: {
2595
+ taskDurationMs: 6,
2596
+ scriptDurationMs: 0,
2597
+ heapDeltaKb: 720
2598
+ },
2599
+ scripts: [
2600
+ {
2601
+ url: "https://assets.lemonsqueezy.com/lemon.js",
2602
+ transferKb: 1.8,
2603
+ decodedKb: 3.8,
2604
+ encoding: "br",
2605
+ durationMs: 66,
2606
+ initiatorType: "script",
2607
+ protocol: "unknown"
2608
+ }
2609
+ ]
2610
+ };
2611
+ const paypal = {
2612
+ totalTransferKb: 95.3,
2613
+ totalDecodedKb: 289.3,
2614
+ loadTimeMs: 147,
2615
+ collectsWebVitals: false,
2616
+ apis: {
2617
+ cookies: true,
2618
+ localStorage: true,
2619
+ sessionStorage: false,
2620
+ indexedDB: true,
2621
+ canvas: true,
2622
+ webgl: true,
2623
+ audioContext: false,
2624
+ userAgent: true,
2625
+ doNotTrack: false,
2626
+ hardwareConcurrency: true,
2627
+ deviceMemory: true,
2628
+ plugins: true,
2629
+ languages: true,
2630
+ screen: false,
2631
+ timezone: true,
2632
+ platform: false,
2633
+ vendor: true,
2634
+ connection: true,
2635
+ maxTouchPoints: true,
2636
+ devicePixelRatio: true,
2637
+ mediaDevices: true,
2638
+ getBattery: false,
2639
+ referrer: true,
2640
+ windowName: false,
2641
+ rtcPeerConnection: true,
2642
+ geolocation: true,
2643
+ serviceWorker: true,
2644
+ cacheApi: false,
2645
+ sendBeacon: true,
2646
+ fetch: true,
2647
+ xhr: true,
2648
+ websocket: false,
2649
+ mutationObserver: false,
2650
+ performanceObserver: false,
2651
+ intersectionObserver: true
2652
+ },
2653
+ cookies: [
2654
+ ],
2655
+ network: {
2656
+ requestCount: 1,
2657
+ domains: [
2658
+ "www.paypal.com"
2659
+ ],
2660
+ outboundBytes: 0,
2661
+ inboundBytes: 50025,
2662
+ injectedElements: [
2663
+ ]
2664
+ },
2665
+ performance: {
2666
+ taskDurationMs: 21,
2667
+ scriptDurationMs: 11,
2668
+ heapDeltaKb: 1682
2669
+ },
2670
+ scripts: [
2671
+ {
2672
+ url: "https://www.paypal.com/web-sdk/v6/core",
2673
+ transferKb: 48.9,
2674
+ decodedKb: 148.1,
2675
+ encoding: "gzip",
2676
+ durationMs: 147,
2677
+ initiatorType: "script",
2678
+ protocol: "unknown"
2679
+ },
2680
+ {
2681
+ url: "https://c.paypal.com/da/r/fb.js?${d}`:",
2682
+ transferKb: 23.1,
2683
+ decodedKb: 70.6,
2684
+ encoding: "gzip",
2685
+ durationMs: 0,
2686
+ initiatorType: "secondary",
2687
+ protocol: "unknown"
2688
+ },
2689
+ {
2690
+ url: "https://c.paypal.com/da/r/fb.js",
2691
+ transferKb: 23.3,
2692
+ decodedKb: 70.6,
2693
+ encoding: "gzip",
2694
+ durationMs: 0,
2695
+ initiatorType: "secondary",
2696
+ protocol: "unknown"
2697
+ }
2698
+ ]
2699
+ };
2700
+ const vimeoPlayer = {
2701
+ totalTransferKb: 8.9,
2702
+ totalDecodedKb: 23.8,
2703
+ loadTimeMs: 97,
2704
+ collectsWebVitals: false,
2705
+ apis: {
2706
+ cookies: false,
2707
+ localStorage: false,
2708
+ sessionStorage: false,
2709
+ indexedDB: false,
2710
+ canvas: false,
2711
+ webgl: false,
2712
+ audioContext: false,
2713
+ userAgent: true,
2714
+ doNotTrack: false,
2715
+ hardwareConcurrency: false,
2716
+ deviceMemory: false,
2717
+ plugins: false,
2718
+ languages: false,
2719
+ screen: false,
2720
+ timezone: false,
2721
+ platform: false,
2722
+ vendor: false,
2723
+ connection: false,
2724
+ maxTouchPoints: false,
2725
+ devicePixelRatio: false,
2726
+ mediaDevices: false,
2727
+ getBattery: false,
2728
+ referrer: false,
2729
+ windowName: false,
2730
+ rtcPeerConnection: false,
2731
+ geolocation: false,
2732
+ serviceWorker: false,
2733
+ cacheApi: false,
2734
+ sendBeacon: false,
2735
+ fetch: false,
2736
+ xhr: true,
2737
+ websocket: false,
2738
+ mutationObserver: false,
2739
+ performanceObserver: false,
2740
+ intersectionObserver: false
2741
+ },
2742
+ cookies: [
2743
+ {
2744
+ name: "__cf_bm",
2745
+ domain: ".vimeo.com",
2746
+ path: "/",
2747
+ httpOnly: true,
2748
+ secure: true,
2749
+ sameSite: "None",
2750
+ session: false,
2751
+ lifetimeDays: 0,
2752
+ firstParty: false
2753
+ },
2754
+ {
2755
+ name: "_cfuvid",
2756
+ domain: ".vimeo.com",
2757
+ path: "/",
2758
+ httpOnly: true,
2759
+ secure: true,
2760
+ sameSite: "None",
2761
+ session: true,
2762
+ lifetimeDays: -1,
2763
+ firstParty: false
2764
+ }
2765
+ ],
2766
+ network: {
2767
+ requestCount: 1,
2768
+ domains: [
2769
+ "player.vimeo.com"
2770
+ ],
2771
+ outboundBytes: 0,
2772
+ inboundBytes: 9084,
2773
+ injectedElements: [
2774
+ ]
2775
+ },
2776
+ performance: {
2777
+ taskDurationMs: 6,
2778
+ scriptDurationMs: 0,
2779
+ heapDeltaKb: 741
2780
+ },
2781
+ scripts: [
2782
+ {
2783
+ url: "https://player.vimeo.com/api/player.js",
2784
+ transferKb: 8.9,
2785
+ decodedKb: 23.8,
2786
+ encoding: "gzip",
2787
+ durationMs: 97,
2788
+ initiatorType: "script",
2789
+ protocol: "unknown"
2790
+ }
2791
+ ]
2792
+ };
2793
+ const youtubePlayer = {
2794
+ totalTransferKb: 13.7,
2795
+ totalDecodedKb: 32.4,
2796
+ loadTimeMs: 320,
2797
+ collectsWebVitals: false,
2798
+ apis: {
2799
+ cookies: false,
2800
+ localStorage: false,
2801
+ sessionStorage: false,
2802
+ indexedDB: false,
2803
+ canvas: false,
2804
+ webgl: false,
2805
+ audioContext: false,
2806
+ userAgent: false,
2807
+ doNotTrack: false,
2808
+ hardwareConcurrency: false,
2809
+ deviceMemory: false,
2810
+ plugins: false,
2811
+ languages: false,
2812
+ screen: false,
2813
+ timezone: false,
2814
+ platform: false,
2815
+ vendor: false,
2816
+ connection: false,
2817
+ maxTouchPoints: false,
2818
+ devicePixelRatio: false,
2819
+ mediaDevices: false,
2820
+ getBattery: false,
2821
+ referrer: true,
2822
+ windowName: false,
2823
+ rtcPeerConnection: false,
2824
+ geolocation: false,
2825
+ serviceWorker: false,
2826
+ cacheApi: false,
2827
+ sendBeacon: false,
2828
+ fetch: false,
2829
+ xhr: false,
2830
+ websocket: false,
2831
+ mutationObserver: false,
2832
+ performanceObserver: false,
2833
+ intersectionObserver: false
2834
+ },
2835
+ cookies: [
2836
+ {
2837
+ name: "__Secure-YNID",
2838
+ domain: ".youtube.com",
2839
+ path: "/",
2840
+ httpOnly: true,
2841
+ secure: true,
2842
+ sameSite: "None",
2843
+ session: false,
2844
+ lifetimeDays: 180,
2845
+ firstParty: false
2846
+ },
2847
+ {
2848
+ name: "YSC",
2849
+ domain: ".youtube.com",
2850
+ path: "/",
2851
+ httpOnly: true,
2852
+ secure: true,
2853
+ sameSite: "None",
2854
+ session: true,
2855
+ lifetimeDays: -1,
2856
+ firstParty: false
2857
+ },
2858
+ {
2859
+ name: "VISITOR_INFO1_LIVE",
2860
+ domain: ".youtube.com",
2861
+ path: "/",
2862
+ httpOnly: true,
2863
+ secure: true,
2864
+ sameSite: "None",
2865
+ session: false,
2866
+ lifetimeDays: 180,
2867
+ firstParty: false
2868
+ },
2869
+ {
2870
+ name: "VISITOR_PRIVACY_METADATA",
2871
+ domain: ".youtube.com",
2872
+ path: "/",
2873
+ httpOnly: true,
2874
+ secure: true,
2875
+ sameSite: "None",
2876
+ session: false,
2877
+ lifetimeDays: 180,
2878
+ firstParty: false
2879
+ },
2880
+ {
2881
+ name: "__Secure-ROLLOUT_TOKEN",
2882
+ domain: ".youtube.com",
2883
+ path: "/",
2884
+ httpOnly: true,
2885
+ secure: true,
2886
+ sameSite: "None",
2887
+ session: false,
2888
+ lifetimeDays: 180,
2889
+ firstParty: false
2890
+ }
2891
+ ],
2892
+ network: {
2893
+ requestCount: 2,
2894
+ domains: [
2895
+ "www.youtube.com"
2896
+ ],
2897
+ outboundBytes: 0,
2898
+ inboundBytes: 14031,
2899
+ injectedElements: [
2900
+ {
2901
+ tag: "script",
2902
+ src: "https://www.youtube.com/s/player/5e4f1adf/www-widgetapi.vflset/www-widgetapi.js"
2903
+ }
2904
+ ]
2905
+ },
2906
+ performance: {
2907
+ taskDurationMs: 8,
2908
+ scriptDurationMs: 1,
2909
+ heapDeltaKb: 811
2910
+ },
2911
+ scripts: [
2912
+ {
2913
+ url: "https://www.youtube.com/iframe_api",
2914
+ transferKb: 3.1,
2915
+ decodedKb: 1,
2916
+ encoding: "br",
2917
+ durationMs: 320,
2918
+ initiatorType: "script",
2919
+ protocol: "unknown"
2920
+ },
2921
+ {
2922
+ url: "https://www.youtube.com/s/player/5e4f1adf/www-widgetapi.vflset/www-widgetapi.js",
2923
+ transferKb: 10.6,
2924
+ decodedKb: 31.4,
2925
+ encoding: "br",
2926
+ durationMs: 19,
2927
+ initiatorType: "script",
2928
+ protocol: "unknown"
2929
+ }
2930
+ ]
2931
+ };
2932
+ const googleMaps = {
2933
+ totalTransferKb: 0,
2934
+ totalDecodedKb: 0,
2935
+ loadTimeMs: 0,
2936
+ collectsWebVitals: false,
2937
+ apis: {
2938
+ cookies: false,
2939
+ localStorage: false,
2940
+ sessionStorage: false,
2941
+ indexedDB: false,
2942
+ canvas: false,
2943
+ webgl: false,
2944
+ audioContext: false,
2945
+ userAgent: false,
2946
+ doNotTrack: false,
2947
+ hardwareConcurrency: false,
2948
+ deviceMemory: false,
2949
+ plugins: false,
2950
+ languages: false,
2951
+ screen: false,
2952
+ timezone: false,
2953
+ platform: false,
2954
+ vendor: false,
2955
+ connection: false,
2956
+ maxTouchPoints: false,
2957
+ devicePixelRatio: false,
2958
+ mediaDevices: false,
2959
+ getBattery: false,
2960
+ referrer: false,
2961
+ windowName: false,
2962
+ rtcPeerConnection: false,
2963
+ geolocation: false,
2964
+ serviceWorker: false,
2965
+ cacheApi: false,
2966
+ sendBeacon: false,
2967
+ fetch: false,
2968
+ xhr: false,
2969
+ websocket: false,
2970
+ mutationObserver: false,
2971
+ performanceObserver: false,
2972
+ intersectionObserver: false
2973
+ },
2974
+ cookies: [
2975
+ ],
2976
+ network: {
2977
+ requestCount: 0,
2978
+ domains: [
2979
+ ],
2980
+ outboundBytes: 0,
2981
+ inboundBytes: 0,
2982
+ injectedElements: [
2983
+ ]
2984
+ },
2985
+ performance: {
2986
+ taskDurationMs: 0,
2987
+ scriptDurationMs: 0,
2988
+ heapDeltaKb: 0
2989
+ },
2990
+ scripts: [
2991
+ ]
2992
+ };
2993
+ const npm = {
2994
+ totalTransferKb: 0,
2995
+ totalDecodedKb: 0,
2996
+ loadTimeMs: 0,
2997
+ collectsWebVitals: false,
2998
+ apis: {
2999
+ cookies: false,
3000
+ localStorage: false,
3001
+ sessionStorage: false,
3002
+ indexedDB: false,
3003
+ canvas: false,
3004
+ webgl: false,
3005
+ audioContext: false,
3006
+ userAgent: false,
3007
+ doNotTrack: false,
3008
+ hardwareConcurrency: false,
3009
+ deviceMemory: false,
3010
+ plugins: false,
3011
+ languages: false,
3012
+ screen: false,
3013
+ timezone: false,
3014
+ platform: false,
3015
+ vendor: false,
3016
+ connection: false,
3017
+ maxTouchPoints: false,
3018
+ devicePixelRatio: false,
3019
+ mediaDevices: false,
3020
+ getBattery: false,
3021
+ referrer: false,
3022
+ windowName: false,
3023
+ rtcPeerConnection: false,
3024
+ geolocation: false,
3025
+ serviceWorker: false,
3026
+ cacheApi: false,
3027
+ sendBeacon: false,
3028
+ fetch: false,
3029
+ xhr: false,
3030
+ websocket: false,
3031
+ mutationObserver: false,
3032
+ performanceObserver: false,
3033
+ intersectionObserver: false
3034
+ },
3035
+ cookies: [
3036
+ ],
3037
+ network: {
3038
+ requestCount: 0,
3039
+ domains: [
3040
+ ],
3041
+ outboundBytes: 0,
3042
+ inboundBytes: 0,
3043
+ injectedElements: [
3044
+ ]
3045
+ },
3046
+ performance: {
3047
+ taskDurationMs: 0,
3048
+ scriptDurationMs: 0,
3049
+ heapDeltaKb: 0
3050
+ },
3051
+ scripts: [
3052
+ ]
3053
+ };
3054
+ const googleRecaptcha = {
3055
+ totalTransferKb: 363.9,
3056
+ totalDecodedKb: 852,
3057
+ loadTimeMs: 248,
3058
+ collectsWebVitals: false,
3059
+ apis: {
3060
+ cookies: false,
3061
+ localStorage: false,
3062
+ sessionStorage: true,
3063
+ indexedDB: false,
3064
+ canvas: false,
3065
+ webgl: false,
3066
+ audioContext: false,
3067
+ userAgent: true,
3068
+ doNotTrack: false,
3069
+ hardwareConcurrency: false,
3070
+ deviceMemory: true,
3071
+ plugins: false,
3072
+ languages: false,
3073
+ screen: true,
3074
+ timezone: true,
3075
+ platform: false,
3076
+ vendor: false,
3077
+ connection: false,
3078
+ maxTouchPoints: true,
3079
+ devicePixelRatio: false,
3080
+ mediaDevices: true,
3081
+ getBattery: false,
3082
+ referrer: false,
3083
+ windowName: false,
3084
+ rtcPeerConnection: false,
3085
+ geolocation: false,
3086
+ serviceWorker: false,
3087
+ cacheApi: false,
3088
+ sendBeacon: true,
3089
+ fetch: true,
3090
+ xhr: true,
3091
+ websocket: false,
3092
+ mutationObserver: true,
3093
+ performanceObserver: true,
3094
+ intersectionObserver: false
3095
+ },
3096
+ cookies: [
3097
+ ],
3098
+ network: {
3099
+ requestCount: 2,
3100
+ domains: [
3101
+ "www.google.com",
3102
+ "www.gstatic.com"
3103
+ ],
3104
+ outboundBytes: 0,
3105
+ inboundBytes: 373011,
3106
+ injectedElements: [
3107
+ {
3108
+ tag: "script",
3109
+ src: "https://www.gstatic.com/recaptcha/releases/qm3PSRIx10pekcnS9DjGnjPW/recaptcha__en.js"
3110
+ }
3111
+ ]
3112
+ },
3113
+ performance: {
3114
+ taskDurationMs: 78,
3115
+ scriptDurationMs: 42,
3116
+ heapDeltaKb: 3066
3117
+ },
3118
+ scripts: [
3119
+ {
3120
+ url: "https://www.google.com/recaptcha/api.js",
3121
+ transferKb: 1.5,
3122
+ decodedKb: 1.5,
3123
+ encoding: "gzip",
3124
+ durationMs: 248,
3125
+ initiatorType: "script",
3126
+ protocol: "unknown"
3127
+ },
3128
+ {
3129
+ url: "https://www.gstatic.com/recaptcha/releases/qm3PSRIx10pekcnS9DjGnjPW/recaptcha__en.js",
3130
+ transferKb: 362.4,
3131
+ decodedKb: 850.5,
3132
+ encoding: "gzip",
3133
+ durationMs: 239,
3134
+ initiatorType: "script",
3135
+ protocol: "h2"
3136
+ }
3137
+ ]
3138
+ };
3139
+ const googleSignIn = {
3140
+ totalTransferKb: 93.4,
3141
+ totalDecodedKb: 251.5,
3142
+ loadTimeMs: 587,
3143
+ collectsWebVitals: false,
3144
+ apis: {
3145
+ cookies: false,
3146
+ localStorage: false,
3147
+ sessionStorage: true,
3148
+ indexedDB: false,
3149
+ canvas: false,
3150
+ webgl: false,
3151
+ audioContext: false,
3152
+ userAgent: true,
3153
+ doNotTrack: false,
3154
+ hardwareConcurrency: false,
3155
+ deviceMemory: false,
3156
+ plugins: false,
3157
+ languages: false,
3158
+ screen: true,
3159
+ timezone: false,
3160
+ platform: false,
3161
+ vendor: false,
3162
+ connection: false,
3163
+ maxTouchPoints: false,
3164
+ devicePixelRatio: false,
3165
+ mediaDevices: false,
3166
+ getBattery: false,
3167
+ referrer: false,
3168
+ windowName: false,
3169
+ rtcPeerConnection: false,
3170
+ geolocation: false,
3171
+ serviceWorker: false,
3172
+ cacheApi: false,
3173
+ sendBeacon: false,
3174
+ fetch: false,
3175
+ xhr: true,
3176
+ websocket: false,
3177
+ mutationObserver: false,
3178
+ performanceObserver: false,
3179
+ intersectionObserver: false
3180
+ },
3181
+ cookies: [
3182
+ ],
3183
+ network: {
3184
+ requestCount: 1,
3185
+ domains: [
3186
+ "accounts.google.com"
3187
+ ],
3188
+ outboundBytes: 0,
3189
+ inboundBytes: 95605,
3190
+ injectedElements: [
3191
+ ]
3192
+ },
3193
+ performance: {
3194
+ taskDurationMs: 13,
3195
+ scriptDurationMs: 3,
3196
+ heapDeltaKb: 1211
3197
+ },
3198
+ scripts: [
3199
+ {
3200
+ url: "https://accounts.google.com/gsi/client",
3201
+ transferKb: 93.4,
3202
+ decodedKb: 251.5,
3203
+ encoding: "gzip",
3204
+ durationMs: 587,
3205
+ initiatorType: "script",
3206
+ protocol: "unknown"
3207
+ }
3208
+ ]
3209
+ };
3210
+ const blueskyEmbed = {
3211
+ totalTransferKb: 0,
3212
+ totalDecodedKb: 0,
3213
+ loadTimeMs: 0,
3214
+ collectsWebVitals: false,
3215
+ apis: {
3216
+ cookies: false,
3217
+ localStorage: false,
3218
+ sessionStorage: false,
3219
+ indexedDB: false,
3220
+ canvas: false,
3221
+ webgl: false,
3222
+ audioContext: false,
3223
+ userAgent: false,
3224
+ doNotTrack: false,
3225
+ hardwareConcurrency: false,
3226
+ deviceMemory: false,
3227
+ plugins: false,
3228
+ languages: false,
3229
+ screen: false,
3230
+ timezone: false,
3231
+ platform: false,
3232
+ vendor: false,
3233
+ connection: false,
3234
+ maxTouchPoints: false,
3235
+ devicePixelRatio: false,
3236
+ mediaDevices: false,
3237
+ getBattery: false,
3238
+ referrer: false,
3239
+ windowName: false,
3240
+ rtcPeerConnection: false,
3241
+ geolocation: false,
3242
+ serviceWorker: false,
3243
+ cacheApi: false,
3244
+ sendBeacon: false,
3245
+ fetch: false,
3246
+ xhr: false,
3247
+ websocket: false,
3248
+ mutationObserver: false,
3249
+ performanceObserver: false,
3250
+ intersectionObserver: false
3251
+ },
3252
+ cookies: [
3253
+ ],
3254
+ network: {
3255
+ requestCount: 0,
3256
+ domains: [
3257
+ ],
3258
+ outboundBytes: 0,
3259
+ inboundBytes: 0,
3260
+ injectedElements: [
3261
+ ]
3262
+ },
3263
+ performance: {
3264
+ taskDurationMs: 0,
3265
+ scriptDurationMs: 0,
3266
+ heapDeltaKb: 0
3267
+ },
3268
+ scripts: [
3269
+ ]
3270
+ };
3271
+ const instagramEmbed = {
3272
+ totalTransferKb: 33.9,
3273
+ totalDecodedKb: 102.2,
3274
+ loadTimeMs: 340,
3275
+ collectsWebVitals: false,
3276
+ apis: {
3277
+ cookies: false,
3278
+ localStorage: false,
3279
+ sessionStorage: false,
3280
+ indexedDB: false,
3281
+ canvas: false,
3282
+ webgl: false,
3283
+ audioContext: false,
3284
+ userAgent: true,
3285
+ doNotTrack: false,
3286
+ hardwareConcurrency: false,
3287
+ deviceMemory: false,
3288
+ plugins: false,
3289
+ languages: false,
3290
+ screen: false,
3291
+ timezone: false,
3292
+ platform: false,
3293
+ vendor: false,
3294
+ connection: false,
3295
+ maxTouchPoints: false,
3296
+ devicePixelRatio: true,
3297
+ mediaDevices: false,
3298
+ getBattery: false,
3299
+ referrer: false,
3300
+ windowName: false,
3301
+ rtcPeerConnection: false,
3302
+ geolocation: false,
3303
+ serviceWorker: false,
3304
+ cacheApi: false,
3305
+ sendBeacon: false,
3306
+ fetch: false,
3307
+ xhr: false,
3308
+ websocket: false,
3309
+ mutationObserver: false,
3310
+ performanceObserver: false,
3311
+ intersectionObserver: false
3312
+ },
3313
+ cookies: [
3314
+ ],
3315
+ network: {
3316
+ requestCount: 1,
3317
+ domains: [
3318
+ "www.instagram.com"
3319
+ ],
3320
+ outboundBytes: 0,
3321
+ inboundBytes: 36790,
3322
+ injectedElements: [
3323
+ ]
3324
+ },
3325
+ performance: {
3326
+ taskDurationMs: 12,
3327
+ scriptDurationMs: 5,
3328
+ heapDeltaKb: 886
3329
+ },
3330
+ scripts: [
3331
+ {
3332
+ url: "https://www.instagram.com/embed.js",
3333
+ transferKb: 33.9,
3334
+ decodedKb: 102.2,
3335
+ encoding: "zstd",
3336
+ durationMs: 340,
3337
+ initiatorType: "script",
3338
+ protocol: "h2"
3339
+ }
3340
+ ]
3341
+ };
3342
+ const xEmbed = {
3343
+ totalTransferKb: 130.5,
3344
+ totalDecodedKb: 410.4,
3345
+ loadTimeMs: 73,
3346
+ collectsWebVitals: false,
3347
+ apis: {
3348
+ cookies: false,
3349
+ localStorage: false,
3350
+ sessionStorage: false,
3351
+ indexedDB: false,
3352
+ canvas: false,
3353
+ webgl: false,
3354
+ audioContext: false,
3355
+ userAgent: true,
3356
+ doNotTrack: false,
3357
+ hardwareConcurrency: false,
3358
+ deviceMemory: false,
3359
+ plugins: false,
3360
+ languages: false,
3361
+ screen: false,
3362
+ timezone: false,
3363
+ platform: false,
3364
+ vendor: false,
3365
+ connection: false,
3366
+ maxTouchPoints: false,
3367
+ devicePixelRatio: true,
3368
+ mediaDevices: false,
3369
+ getBattery: false,
3370
+ referrer: true,
3371
+ windowName: false,
3372
+ rtcPeerConnection: false,
3373
+ geolocation: false,
3374
+ serviceWorker: false,
3375
+ cacheApi: false,
3376
+ sendBeacon: false,
3377
+ fetch: false,
3378
+ xhr: false,
3379
+ websocket: false,
3380
+ mutationObserver: true,
3381
+ performanceObserver: false,
3382
+ intersectionObserver: true
3383
+ },
3384
+ cookies: [
3385
+ ],
3386
+ network: {
3387
+ requestCount: 3,
3388
+ domains: [
3389
+ "platform.twitter.com",
3390
+ "syndication.twitter.com"
3391
+ ],
3392
+ outboundBytes: 0,
3393
+ inboundBytes: 134602,
3394
+ injectedElements: [
3395
+ {
3396
+ tag: "iframe",
3397
+ src: "https://platform.twitter.com/widgets/widget_iframe.2f70fb173b9000da126c79afe2098f02.html?origin=http%3A%2F%2F127.0.0.1%3A41347"
3398
+ }
3399
+ ]
3400
+ },
3401
+ performance: {
3402
+ taskDurationMs: 47,
3403
+ scriptDurationMs: 16,
3404
+ heapDeltaKb: 2476
3405
+ },
3406
+ scripts: [
3407
+ {
3408
+ url: "https://platform.twitter.com/widgets.js",
3409
+ transferKb: 27.3,
3410
+ decodedKb: 90.9,
3411
+ encoding: "gzip",
3412
+ durationMs: 73,
3413
+ initiatorType: "script",
3414
+ protocol: "unknown"
3415
+ },
3416
+ {
3417
+ url: "https://platform.twitter.com/widgets/widget_iframe.2f70fb173b9000da126c79afe2098f02.html?origin=http%3A%2F%2F127.0.0.1%3A41347",
3418
+ transferKb: 103.2,
3419
+ decodedKb: 319.5,
3420
+ encoding: "gzip",
3421
+ durationMs: 51,
3422
+ initiatorType: "iframe",
3423
+ protocol: "unknown"
3424
+ }
3425
+ ]
3426
+ };
3427
+ const gravatar = {
3428
+ totalTransferKb: 7.1,
3429
+ totalDecodedKb: 21.4,
3430
+ loadTimeMs: 69,
3431
+ collectsWebVitals: false,
3432
+ apis: {
3433
+ cookies: false,
3434
+ localStorage: false,
3435
+ sessionStorage: false,
3436
+ indexedDB: false,
3437
+ canvas: false,
3438
+ webgl: false,
3439
+ audioContext: false,
3440
+ userAgent: false,
3441
+ doNotTrack: false,
3442
+ hardwareConcurrency: false,
3443
+ deviceMemory: false,
3444
+ plugins: false,
3445
+ languages: false,
3446
+ screen: false,
3447
+ timezone: false,
3448
+ platform: false,
3449
+ vendor: false,
3450
+ connection: false,
3451
+ maxTouchPoints: false,
3452
+ devicePixelRatio: false,
3453
+ mediaDevices: false,
3454
+ getBattery: false,
3455
+ referrer: false,
3456
+ windowName: false,
3457
+ rtcPeerConnection: false,
3458
+ geolocation: false,
3459
+ serviceWorker: false,
3460
+ cacheApi: false,
3461
+ sendBeacon: false,
3462
+ fetch: true,
3463
+ xhr: false,
3464
+ websocket: false,
3465
+ mutationObserver: false,
3466
+ performanceObserver: false,
3467
+ intersectionObserver: false
3468
+ },
3469
+ cookies: [
3470
+ ],
3471
+ network: {
3472
+ requestCount: 1,
3473
+ domains: [
3474
+ "secure.gravatar.com"
3475
+ ],
3476
+ outboundBytes: 0,
3477
+ inboundBytes: 7313,
3478
+ injectedElements: [
3479
+ ]
3480
+ },
3481
+ performance: {
3482
+ taskDurationMs: 6,
3483
+ scriptDurationMs: 0,
3484
+ heapDeltaKb: 717
3485
+ },
3486
+ scripts: [
3487
+ {
3488
+ url: "https://secure.gravatar.com/js/gprofiles.js",
3489
+ transferKb: 7.1,
3490
+ decodedKb: 21.4,
3491
+ encoding: "br",
3492
+ durationMs: 69,
3493
+ initiatorType: "script",
3494
+ protocol: "unknown"
3495
+ }
3496
+ ]
3497
+ };
3498
+ const scriptSizes = {
3499
+ plausibleAnalytics: plausibleAnalytics,
3500
+ cloudflareWebAnalytics: cloudflareWebAnalytics,
3501
+ posthog: posthog,
3502
+ fathomAnalytics: fathomAnalytics,
3503
+ matomoAnalytics: matomoAnalytics,
3504
+ rybbitAnalytics: rybbitAnalytics,
3505
+ databuddyAnalytics: databuddyAnalytics,
3506
+ mixpanelAnalytics: mixpanelAnalytics,
3507
+ segment: segment,
3508
+ googleAnalytics: googleAnalytics,
3509
+ umamiAnalytics: umamiAnalytics,
3510
+ vercelAnalytics: vercelAnalytics,
3511
+ bingUet: bingUet,
3512
+ metaPixel: metaPixel,
3513
+ xPixel: xPixel,
3514
+ tiktokPixel: tiktokPixel,
3515
+ snapchatPixel: snapchatPixel,
3516
+ redditPixel: redditPixel,
3517
+ googleAdsense: googleAdsense,
3518
+ carbonAds: carbonAds,
3519
+ hotjar: hotjar,
3520
+ clarity: clarity,
3521
+ googleTagManager: googleTagManager,
3522
+ intercom: intercom,
3523
+ crisp: crisp,
3524
+ stripe: stripe,
3525
+ lemonSqueezy: lemonSqueezy,
3526
+ paypal: paypal,
3527
+ vimeoPlayer: vimeoPlayer,
3528
+ youtubePlayer: youtubePlayer,
3529
+ googleMaps: googleMaps,
3530
+ npm: npm,
3531
+ googleRecaptcha: googleRecaptcha,
3532
+ googleSignIn: googleSignIn,
3533
+ blueskyEmbed: blueskyEmbed,
3534
+ instagramEmbed: instagramEmbed,
3535
+ xEmbed: xEmbed,
3536
+ gravatar: gravatar
3537
+ };
3538
+
3539
+ const FINGERPRINT_ENTROPY = {
3540
+ canvas: 6,
3541
+ // ~17 bits — renders unique per GPU/driver/font stack
3542
+ webgl: 6,
3543
+ // ~15 bits — GPU renderer string uniquely identifies hardware
3544
+ audioContext: 5,
3545
+ // ~12 bits — audio processing stack fingerprint
3546
+ rtcPeerConnection: 4,
3547
+ // leaks real IP behind VPN, enables WebRTC fingerprinting
3548
+ mediaDevices: 3,
3549
+ // enumerates cameras/mics — hardware inventory
3550
+ plugins: 3,
3551
+ // historically ~15 bits, declining in modern browsers
3552
+ screen: 3,
3553
+ // ~8 bits — resolution + colorDepth
3554
+ geolocation: 3,
3555
+ // precise location (requires permission but very invasive)
3556
+ timezone: 2,
3557
+ // ~5 bits
3558
+ languages: 2,
3559
+ // ~5 bits
3560
+ hardwareConcurrency: 2,
3561
+ // ~3.5 bits — CPU core count
3562
+ deviceMemory: 2,
3563
+ // ~2.5 bits — RAM bucket
3564
+ userAgent: 1,
3565
+ // being frozen by UA-CH, declining utility
3566
+ platform: 1,
3567
+ // ~3 bits but highly correlated with userAgent
3568
+ vendor: 1,
3569
+ // low entropy, mostly "Google Inc."
3570
+ maxTouchPoints: 1,
3571
+ // ~2 bits
3572
+ devicePixelRatio: 1,
3573
+ // ~3 bits but correlated with screen
3574
+ connection: 1,
3575
+ // network type — low entropy
3576
+ getBattery: 1
3577
+ // low entropy but privacy concern (removed from most browsers)
3578
+ };
3579
+ const MAX_FINGERPRINT = Object.values(FINGERPRINT_ENTROPY).reduce((a, b) => a + b, 0);
3580
+ const STORAGE_API_WEIGHT = {
3581
+ cookies: 4,
3582
+ // cross-domain capable, most abused
3583
+ localStorage: 3,
3584
+ // persistent, survives tab close
3585
+ indexedDB: 3,
3586
+ // large persistent storage
3587
+ sessionStorage: 1
3588
+ // session-scoped, less invasive
3589
+ };
3590
+ const MAX_STORAGE_API = Object.values(STORAGE_API_WEIGHT).reduce((a, b) => a + b, 0);
3591
+ const MONITOR_WEIGHT = {
3592
+ mutationObserver: 5,
3593
+ // sees all DOM changes — behavioral tracking
3594
+ intersectionObserver: 3,
3595
+ // viewport/scroll tracking
3596
+ windowName: 2
3597
+ // cross-origin data channel
3598
+ };
3599
+ const MAX_MONITOR = Object.values(MONITOR_WEIGHT).reduce((a, b) => a + b, 0);
3600
+ const DATA_SCOPE_WEIGHT = {
3601
+ "session-replay": 5,
3602
+ // records entire user session
3603
+ "heatmaps": 4,
3604
+ // tracks mouse movement / attention
3605
+ "user-identity": 4,
3606
+ // PII-adjacent
3607
+ "retargeting": 3,
3608
+ // cross-site ad following
3609
+ "audiences": 3,
3610
+ // user profiling
3611
+ "ab-testing": 2,
3612
+ // behavioral segmentation
3613
+ "form-submissions": 2,
3614
+ // captures input data
3615
+ "clicks": 1,
3616
+ "scrolls": 1,
3617
+ "conversions": 1,
3618
+ "events": 0,
3619
+ // basic analytics, expected
3620
+ "page-views": 0,
3621
+ // basic analytics, expected
3622
+ "transactions": 1,
3623
+ "errors": 0,
3624
+ // functional
3625
+ "video-engagement": 0,
3626
+ "tag-injection": 5
3627
+ // loads unknown third-party code — wildcard privacy risk
3628
+ };
3629
+ const KNOWN_UNDETECTED_APIS = {
3630
+ // reCAPTCHA: bot detection fingerprints via canvas, webgl, audio — heavily obfuscated
3631
+ googleRecaptcha: ["canvas", "webgl", "audioContext"]
3632
+ };
3633
+ const HEAVY_FP_APIS = ["canvas", "webgl", "audioContext", "rtcPeerConnection"];
3634
+ const KNOWN_FUNCTIONAL_APIS = {
3635
+ // Crisp: voice/video chat requires audio, WebRTC, and camera/mic enumeration
3636
+ crisp: ["audioContext", "rtcPeerConnection", "mediaDevices"],
3637
+ // Intercom: canvas used for UI rendering, not fingerprinting
3638
+ intercom: ["canvas"]
3639
+ };
3640
+ function computePrivacyRating(apis, cookies, network, trackedData, functionalApis) {
3641
+ const fingerprintApis = [];
3642
+ let fingerprintRaw = 0;
3643
+ for (const [api, weight] of Object.entries(FINGERPRINT_ENTROPY)) {
3644
+ if (apis[api]) {
3645
+ fingerprintRaw += weight;
3646
+ fingerprintApis.push(api);
3647
+ }
3648
+ }
3649
+ const fingerprintScore = Math.round(fingerprintRaw / MAX_FINGERPRINT * 30);
3650
+ const storageApis = [];
3651
+ let storageRaw = 0;
3652
+ for (const [api, weight] of Object.entries(STORAGE_API_WEIGHT)) {
3653
+ if (apis[api]) {
3654
+ storageRaw += weight;
3655
+ storageApis.push(api);
3656
+ }
3657
+ }
3658
+ const storageScore = Math.round(storageRaw / MAX_STORAGE_API * 10);
3659
+ const thirdPartyCookies = cookies.filter((c) => !c.firstParty).length;
3660
+ const longLivedCookies = cookies.filter((c) => c.lifetimeDays > 30).length;
3661
+ const cookieScore = Math.min(9, thirdPartyCookies * 3) + Math.min(6, longLivedCookies * 2);
3662
+ const persistenceScore = Math.min(25, storageScore + cookieScore);
3663
+ const domainCount = network.domains.length;
3664
+ const domainScore = Math.min(12, Math.max(0, domainCount - 1) * 4);
3665
+ const pixelQueryBytes = network.injectedElements.filter((e) => e.tag === "img" && e.src.includes("?")).reduce((sum, e) => sum + new URL(e.src).search.length, 0);
3666
+ const totalOutbound = network.outboundBytes + pixelQueryBytes;
3667
+ const outboundScore = totalOutbound === 0 ? 0 : Math.min(8, Math.ceil(totalOutbound / 250));
3668
+ const trackingPixels = network.injectedElements.filter((e) => e.tag === "img").length;
3669
+ const injectedIframes = network.injectedElements.filter((e) => e.tag === "iframe").length;
3670
+ const injectionScore = Math.min(5, trackingPixels * 3 + injectedIframes * 2);
3671
+ const networkScore = Math.min(25, domainScore + outboundScore + injectionScore);
3672
+ const monitorApis = [];
3673
+ let monitorRaw = 0;
3674
+ for (const [api, weight] of Object.entries(MONITOR_WEIGHT)) {
3675
+ if (apis[api]) {
3676
+ monitorRaw += weight;
3677
+ monitorApis.push(api);
3678
+ }
3679
+ }
3680
+ const monitorScore = Math.round(monitorRaw / MAX_MONITOR * 10);
3681
+ const scopeTypes = trackedData.filter((t) => (DATA_SCOPE_WEIGHT[t] ?? 0) > 0);
3682
+ const scopeRaw = trackedData.reduce((sum, t) => sum + (DATA_SCOPE_WEIGHT[t] ?? 0), 0);
3683
+ const scopeScore = Math.min(10, scopeRaw);
3684
+ const heavyFpApis = HEAVY_FP_APIS.filter((api) => apis[api] && !functionalApis?.has(api));
3685
+ const hasExfiltration = totalOutbound > 0 || domainCount > 1 || trackingPixels > 0 || apis.sendBeacon;
3686
+ const fpExfilScore = heavyFpApis.length > 0 && hasExfiltration ? Math.min(25, heavyFpApis.length * 9) : 0;
3687
+ const score = fingerprintScore + persistenceScore + networkScore + monitorScore + scopeScore + fpExfilScore;
3688
+ let grade;
3689
+ if (score <= 5)
3690
+ grade = "A+";
3691
+ else if (score <= 15)
3692
+ grade = "A";
3693
+ else if (score <= 30)
3694
+ grade = "B";
3695
+ else if (score <= 50)
3696
+ grade = "C";
3697
+ else if (score <= 70)
3698
+ grade = "D";
3699
+ else grade = "F";
3700
+ return {
3701
+ grade,
3702
+ score,
3703
+ breakdown: {
3704
+ fingerprinting: { score: fingerprintScore, apis: fingerprintApis },
3705
+ persistence: { score: persistenceScore, thirdPartyCookies, longLivedCookies, storageApis },
3706
+ network: { score: networkScore, domains: domainCount, outboundBytes: totalOutbound, trackingPixels },
3707
+ monitoring: { score: monitorScore, apis: monitorApis },
3708
+ dataScope: { score: scopeScore, types: scopeTypes },
3709
+ fpExfiltration: { score: fpExfilScore, heavyApis: heavyFpApis }
3710
+ }
3711
+ };
3712
+ }
3713
+ const CLS_RISK_TAGS = /* @__PURE__ */ new Set(["iframe", "img", "div", "video"]);
3714
+ function computeCwvEstimate(perf, network, apis) {
3715
+ const lcpImpactMs = perf.scriptDurationMs;
3716
+ const clsElements = network.injectedElements.filter((e) => CLS_RISK_TAGS.has(e.tag)).length;
3717
+ const clsRisk = clsElements > 0;
3718
+ const heavyScript = perf.scriptDurationMs > 15;
3719
+ const domObserver = apis.mutationObserver;
3720
+ const inpRiskLevel = heavyScript && domObserver ? "high" : heavyScript || domObserver ? "medium" : "low";
3721
+ return { lcpImpactMs, clsRisk, clsElements, inpRiskLevel };
3722
+ }
3723
+ function scoreSteps(value, steps) {
3724
+ let score = 0;
3725
+ for (const [threshold, points] of steps) {
3726
+ if (value >= threshold)
3727
+ score = points;
3728
+ }
3729
+ return score;
3730
+ }
3731
+ function computePerformanceRating(perf, transferKb, network, cwv) {
3732
+ const networkScore = scoreSteps(transferKb, [
3733
+ [5, 5],
3734
+ [15, 10],
3735
+ [30, 15],
3736
+ [60, 20],
3737
+ [120, 25],
3738
+ [250, 30]
3739
+ ]);
3740
+ const mainThreadScore = scoreSteps(perf.taskDurationMs, [
3741
+ [10, 5],
3742
+ [20, 10],
3743
+ [30, 18],
3744
+ [50, 25],
3745
+ [75, 30]
3746
+ ]);
3747
+ const memoryScore = scoreSteps(perf.heapDeltaKb, [
3748
+ [750, 5],
3749
+ [1e3, 10],
3750
+ [1500, 15],
3751
+ [2e3, 20]
3752
+ ]);
3753
+ const connectionScore = scoreSteps(network.requestCount, [
3754
+ [2, 3],
3755
+ [3, 5],
3756
+ [4, 7],
3757
+ [6, 10]
3758
+ ]);
3759
+ const cwvScore = (cwv.lcpImpactMs > 15 ? 3 : 0) + (cwv.clsRisk ? Math.min(4, cwv.clsElements * 2) : 0) + (cwv.inpRiskLevel === "high" ? 3 : cwv.inpRiskLevel === "medium" ? 1 : 0);
3760
+ const score = networkScore + mainThreadScore + memoryScore + connectionScore + cwvScore;
3761
+ let grade;
3762
+ if (score <= 5)
3763
+ grade = "A+";
3764
+ else if (score <= 15)
3765
+ grade = "A";
3766
+ else if (score <= 30)
3767
+ grade = "B";
3768
+ else if (score <= 50)
3769
+ grade = "C";
3770
+ else if (score <= 70)
3771
+ grade = "D";
3772
+ else grade = "F";
3773
+ return {
3774
+ grade,
3775
+ score,
3776
+ breakdown: {
3777
+ networkCost: { score: networkScore, transferKb },
3778
+ mainThread: { score: mainThreadScore, taskDurationMs: perf.taskDurationMs, scriptDurationMs: perf.scriptDurationMs },
3779
+ memory: { score: memoryScore, heapDeltaKb: perf.heapDeltaKb },
3780
+ connections: { score: connectionScore, requestCount: network.requestCount },
3781
+ cwvRisk: { score: cwvScore, lcpImpactMs: cwv.lcpImpactMs, clsRisk: cwv.clsRisk, inpRiskLevel: cwv.inpRiskLevel }
3782
+ }
3783
+ };
3784
+ }
3785
+ const USE_SCRIPT_RE = /^useScript/;
3786
+ const WORD_SPLIT_RE = /[\s-]+/;
3787
+ function computePrivacyLevel(privacy) {
3788
+ if (!privacy)
3789
+ return "unknown";
3790
+ const flags = Object.values(privacy);
3791
+ if (flags.every(Boolean))
3792
+ return "full";
3793
+ if (flags.some(Boolean))
3794
+ return "partial";
3795
+ return "none";
3796
+ }
3797
+ function extractDomains(proxyDomains) {
3798
+ return [...proxyDomains].sort();
3799
+ }
3800
+ function deriveMetaKey(importName, label) {
3801
+ if (importName) {
3802
+ const stripped = importName.replace(USE_SCRIPT_RE, "");
3803
+ return stripped.charAt(0).toLowerCase() + stripped.slice(1);
3804
+ }
3805
+ if (label) {
3806
+ const words = label.split(WORD_SPLIT_RE);
3807
+ return words.map(
3808
+ (w, i) => i === 0 ? w.toLowerCase() : w.charAt(0).toUpperCase() + w.slice(1).toLowerCase()
3809
+ ).join("");
3810
+ }
3811
+ return "";
3812
+ }
3813
+ async function getScriptStats() {
3814
+ const { registry } = await import('./registry.mjs');
3815
+ const entries = await registry();
3816
+ const proxyConfigs = buildProxyConfigsFromRegistry(entries);
3817
+ const sizes = scriptSizes;
3818
+ return entries.map((entry) => {
3819
+ const id = entry.registryKey || deriveMetaKey(entry.import?.name, entry.label);
3820
+ const meta = id && id in scriptMeta ? scriptMeta[id] : void 0;
3821
+ const size = sizes[id || ""];
3822
+ const proxyConfigKey = !entry.proxy ? void 0 : typeof entry.proxy === "string" ? entry.proxy : entry.registryKey;
3823
+ const proxyConfig = proxyConfigKey ? proxyConfigs[proxyConfigKey] : void 0;
3824
+ let loadingMethod = "cdn";
3825
+ if (entry.src === false)
3826
+ loadingMethod = "npm";
3827
+ else if (!entry.src && typeof entry.bundle === "object" && entry.bundle?.resolve)
3828
+ loadingMethod = "dynamic";
3829
+ const privacy = proxyConfig?.privacy ?? null;
3830
+ const domains = extractDomains(proxyConfig?.domains ?? []);
3831
+ const endpoints = domains.length;
3832
+ const emptyApis = {};
3833
+ const emptyNetwork = { requestCount: 0, domains: [], outboundBytes: 0, inboundBytes: 0, injectedElements: [] };
3834
+ const emptyPerf = { taskDurationMs: 0, scriptDurationMs: 0, heapDeltaKb: 0 };
3835
+ const apis = { ...size?.apis ?? emptyApis };
3836
+ const knownApis = KNOWN_UNDETECTED_APIS[id];
3837
+ if (knownApis) {
3838
+ for (const api of knownApis) apis[api] = true;
3839
+ }
3840
+ const cookies = size?.cookies ?? [];
3841
+ const network = size?.network ?? emptyNetwork;
3842
+ const perf = size?.performance ?? emptyPerf;
3843
+ const trackedData = meta?.trackedData ?? [];
3844
+ const scripts = size?.scripts ?? [];
3845
+ const transferKb = size?.totalTransferKb ?? 0;
3846
+ const primaryTransferKb = scripts.length > 0 ? Number.parseFloat(scripts.filter((s) => s.initiatorType !== "secondary").reduce((sum, s) => sum + s.transferKb, 0).toFixed(1)) : transferKb;
3847
+ const cwvEstimate = computeCwvEstimate(perf, network, apis);
3848
+ return {
3849
+ id,
3850
+ label: entry.label || id || "",
3851
+ category: entry.category || "unknown",
3852
+ scripts,
3853
+ totalTransferKb: transferKb,
3854
+ totalDecodedKb: size?.totalDecodedKb ?? 0,
3855
+ trackedData,
3856
+ collectsWebVitals: size?.collectsWebVitals ?? false,
3857
+ apis,
3858
+ privacyRating: computePrivacyRating(apis, cookies, network, trackedData, KNOWN_FUNCTIONAL_APIS[id] ? new Set(KNOWN_FUNCTIONAL_APIS[id]) : void 0),
3859
+ cookies,
3860
+ network,
3861
+ performance: perf,
3862
+ performanceRating: computePerformanceRating(perf, primaryTransferKb, network, cwvEstimate),
3863
+ cwvEstimate,
3864
+ hasBundling: !!entry.bundle,
3865
+ hasProxy: !!proxyConfig,
3866
+ proxyDomains: domains,
3867
+ proxyEndpoints: endpoints,
3868
+ privacy,
3869
+ privacyLevel: computePrivacyLevel(privacy),
3870
+ loadingMethod
3871
+ };
3872
+ });
3873
+ }
3874
+
3875
+ export { getScriptStats };