{"_id":"@arguslog/sdk-browser","_rev":"9-6c336577eab43d95118a6b3b12d7ac53","name":"@arguslog/sdk-browser","dist-tags":{"latest":"2.0.1"},"versions":{"0.1.0":{"name":"@arguslog/sdk-browser","version":"0.1.0","license":"MIT","_id":"@arguslog/sdk-browser@0.1.0","maintainers":[{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"}],"dist":{"shasum":"9e37b3b27b053f84823ce681a80775b30767b8a9","tarball":"https://registry.npmjs.org/@arguslog/sdk-browser/-/sdk-browser-0.1.0.tgz","fileCount":38,"integrity":"sha512-g+Fn8ApsWBwFWAeI2Z/hkJ3NSwNKPZlUwp3LfvGpFvIPjy8U1yop4NJXBR2kDa6tUWA3ctzLRtykLy/KXF6Drw==","signatures":[{"sig":"MEYCIQD91GCyOKBqOjkglvNhXca8iaiUYE5TGM/mgYi+HQL8MQIhAJi0sKix5a12qh/4CGnjLTi5vnCPos8e5lDN5gMwGfab","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":45462},"main":"./dist/index.js","type":"module","_from":"file:arguslog-sdk-browser-0.1.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -p tsconfig.build.json --watch","lint":"eslint src","test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist .turbo","test:pact":"vitest run --config vitest.pact.config.ts","typecheck":"tsc --noEmit","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"},"_resolved":"/tmp/3d36c6dde572bbe088ebf010d830a430/arguslog-sdk-browser-0.1.0.tgz","_integrity":"sha512-g+Fn8ApsWBwFWAeI2Z/hkJ3NSwNKPZlUwp3LfvGpFvIPjy8U1yop4NJXBR2kDa6tUWA3ctzLRtykLy/KXF6Drw==","_npmVersion":"10.9.7","description":"Arguslog browser SDK — error tracking for vanilla JS/TS apps","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"devDependencies":{"jsdom":"^25.0.1","eslint":"^9.18.0","vitest":"^3.2.4","typescript":"^5.7.0","@arguslog/tsconfig":"0.0.0","@vitest/coverage-v8":"^3.2.4","@pact-foundation/pact":"^13.2.0","@arguslog/eslint-config":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk-browser_0.1.0_1778109371586_0.5165069449002304","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@arguslog/sdk-browser","version":"0.1.1","license":"MIT","_id":"@arguslog/sdk-browser@0.1.1","maintainers":[{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"}],"dist":{"shasum":"4da174192edbf954f0f710960c2cfda0032e1c20","tarball":"https://registry.npmjs.org/@arguslog/sdk-browser/-/sdk-browser-0.1.1.tgz","fileCount":39,"integrity":"sha512-GxGE8iXizXhPGh14OMV8OaBlwiSBwA4VG+Sx2dVyWipg0CP2n01+I9W+kmoWB3PChbw7a2aozz1fqWP6sFipFQ==","signatures":[{"sig":"MEYCIQC3XAdnNEtGZc0OMDN6oS4l9ZxaAQHKJ8N/t0BUL6fT/AIhAODoCcUboAJeAUV5o/IJLmCjitI49zcuVbwzLYLXiG9d","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52031},"main":"./dist/index.js","type":"module","_from":"file:arguslog-sdk-browser-0.1.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -p tsconfig.build.json --watch","lint":"eslint src","test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist .turbo","test:pact":"vitest run --config vitest.pact.config.ts","typecheck":"tsc --noEmit","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"},"_resolved":"/tmp/e4204eefc92203fc485871ad40c2c302/arguslog-sdk-browser-0.1.1.tgz","_integrity":"sha512-GxGE8iXizXhPGh14OMV8OaBlwiSBwA4VG+Sx2dVyWipg0CP2n01+I9W+kmoWB3PChbw7a2aozz1fqWP6sFipFQ==","_npmVersion":"10.9.7","description":"Arguslog browser SDK — error tracking for vanilla JS/TS apps","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"devDependencies":{"jsdom":"^25.0.1","eslint":"^9.18.0","vitest":"^3.2.4","typescript":"^5.7.0","@arguslog/tsconfig":"0.0.0","@vitest/coverage-v8":"^3.2.4","@pact-foundation/pact":"^13.2.0","@arguslog/eslint-config":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk-browser_0.1.1_1778109947038_0.09652370873933713","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@arguslog/sdk-browser","version":"1.0.0","license":"MIT","_id":"@arguslog/sdk-browser@1.0.0","maintainers":[{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"}],"dist":{"shasum":"4b40146a8351d30916e134447d1a1cee343ea159","tarball":"https://registry.npmjs.org/@arguslog/sdk-browser/-/sdk-browser-1.0.0.tgz","fileCount":39,"integrity":"sha512-FxkpOylONAm4EFuQnp/qD/SpqAjAgOYAVVHi15KnYFaVP7CmCiJ4Ahat/hlp2Fw+q52TOGjECcEDKPvgvElHZQ==","signatures":[{"sig":"MEQCIGCo5nCVMIsf22B9lK38MwanYmLsoZkT9ebILBgxr0lEAiBkz5PknA2ndWvlWphIE+1VyDTxRwrp2SBqRieiFAfXCg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52102},"main":"./dist/index.js","type":"module","_from":"file:arguslog-sdk-browser-1.0.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -p tsconfig.build.json --watch","lint":"eslint src","test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist .turbo","test:pact":"vitest run --config vitest.pact.config.ts","typecheck":"tsc --noEmit","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"},"_resolved":"/tmp/48e130081fd2436866063124a4603493/arguslog-sdk-browser-1.0.0.tgz","_integrity":"sha512-FxkpOylONAm4EFuQnp/qD/SpqAjAgOYAVVHi15KnYFaVP7CmCiJ4Ahat/hlp2Fw+q52TOGjECcEDKPvgvElHZQ==","_npmVersion":"10.9.7","description":"Arguslog browser SDK — error tracking for vanilla JS/TS apps","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"devDependencies":{"jsdom":"^25.0.1","eslint":"^9.18.0","vitest":"^3.2.4","typescript":"^5.7.0","@arguslog/tsconfig":"0.0.0","@vitest/coverage-v8":"^3.2.4","@pact-foundation/pact":"^13.2.0","@arguslog/eslint-config":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk-browser_1.0.0_1778181657696_0.44831335765795566","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@arguslog/sdk-browser","version":"1.1.0","license":"MIT","_id":"@arguslog/sdk-browser@1.1.0","maintainers":[{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"}],"dist":{"shasum":"e5bd7c46995edf9f1e8631b15bf02bd11b68f326","tarball":"https://registry.npmjs.org/@arguslog/sdk-browser/-/sdk-browser-1.1.0.tgz","fileCount":19,"integrity":"sha512-QlvjUPr1v700AjMzkMLEY7UpJhg07Dv2OG8Mj8iilaxyJzUJm9AO/LMuDXfFH98L169F2DnRWY+x8/TGs/BKsg==","signatures":[{"sig":"MEUCIQD+TkXSepgPMh3JTXvYwPt3KX89BfOtc+dsgcxbO5PBsgIgW7BZYtVTaUlOvW1w72aPmF56jmdpgWpkv2V2HUw35n0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23012},"main":"./dist/index.js","type":"module","_from":"file:arguslog-sdk-browser-1.1.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -p tsconfig.build.json --watch","lint":"eslint src","test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist .turbo","test:pact":"vitest run --config vitest.pact.config.ts","typecheck":"tsc --noEmit","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"},"_resolved":"/tmp/5cb70c218e853acf91858e5ea108b069/arguslog-sdk-browser-1.1.0.tgz","_integrity":"sha512-QlvjUPr1v700AjMzkMLEY7UpJhg07Dv2OG8Mj8iilaxyJzUJm9AO/LMuDXfFH98L169F2DnRWY+x8/TGs/BKsg==","_npmVersion":"10.9.7","description":"Arguslog browser SDK — error tracking for vanilla JS/TS apps","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","dependencies":{"@arguslog/sdk-core":"1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^25.0.1","eslint":"^9.18.0","vitest":"^3.2.4","typescript":"^5.7.0","@arguslog/tsconfig":"0.0.0","@vitest/coverage-v8":"^3.2.4","@pact-foundation/pact":"^13.2.0","@arguslog/eslint-config":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk-browser_1.1.0_1778254158941_0.3967518820860423","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@arguslog/sdk-browser","version":"1.1.1","license":"MIT","_id":"@arguslog/sdk-browser@1.1.1","maintainers":[{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"}],"dist":{"shasum":"af7b6b8f5ee6949a75b7a5925a54a600b8a87ba6","tarball":"https://registry.npmjs.org/@arguslog/sdk-browser/-/sdk-browser-1.1.1.tgz","fileCount":23,"integrity":"sha512-cpTGJ9ytSPTo0iw12PDZ70wwM4Y4xundFqCXRWlLhNH3gUA4ha8TFXFWX9bvRdEYSNGpyBFLMEK6pzVW4ar3fw==","signatures":[{"sig":"MEUCIGsjJdgxkzWcYKuV1vQxGhwt/cftfo/s3Tg7Rzm5/VyQAiEAtxCUkfav4G8JOiA8oO2pJSorbBxaocwg48lhW7CoLOw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24360},"main":"./dist/index.js","type":"module","_from":"file:arguslog-sdk-browser-1.1.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -p tsconfig.build.json --watch","lint":"eslint src","test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist .turbo","predev":"node scripts/gen-version.mjs","pretest":"node scripts/gen-version.mjs","prebuild":"node scripts/gen-version.mjs","test:pact":"vitest run --config vitest.pact.config.ts","typecheck":"tsc --noEmit","gen-version":"node scripts/gen-version.mjs","pretest:pact":"node scripts/gen-version.mjs","pretypecheck":"node scripts/gen-version.mjs","test:coverage":"vitest run --coverage","pretest:coverage":"node scripts/gen-version.mjs"},"_npmUser":{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"},"_resolved":"/tmp/f56383c6e561b560ead0063706faf016/arguslog-sdk-browser-1.1.1.tgz","_integrity":"sha512-cpTGJ9ytSPTo0iw12PDZ70wwM4Y4xundFqCXRWlLhNH3gUA4ha8TFXFWX9bvRdEYSNGpyBFLMEK6pzVW4ar3fw==","_npmVersion":"10.9.7","description":"Arguslog browser SDK — error tracking for vanilla JS/TS apps","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","dependencies":{"@arguslog/sdk-core":"1.0.2"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^25.0.1","eslint":"^9.18.0","vitest":"^3.2.4","typescript":"^5.7.0","@arguslog/tsconfig":"0.0.0","@vitest/coverage-v8":"^3.2.4","@pact-foundation/pact":"^13.2.0","@arguslog/eslint-config":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk-browser_1.1.1_1778358070349_0.8255170217561953","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@arguslog/sdk-browser","version":"1.1.2","license":"MIT","_id":"@arguslog/sdk-browser@1.1.2","maintainers":[{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"}],"dist":{"shasum":"58ceb31183d29a35a6f165fc8a46ba263550e063","tarball":"https://registry.npmjs.org/@arguslog/sdk-browser/-/sdk-browser-1.1.2.tgz","fileCount":43,"integrity":"sha512-Dp5UpGk7Br1JkrHuD2xbRSONyDjPaJ43abv7yhpalZJM77aaL58To5rvW7hV9BdbPA8XghtI+09Gy4tmd5zMnA==","signatures":[{"sig":"MEUCIQCHpHpfFnnbyLogq3utKulK4nnt09b5LE1LIqHuMNR6ewIgNkhVp5uetJQwRCM6jcNLpj23r8UhlyuRoDipTBJC3w0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59386},"main":"./dist/index.js","type":"module","_from":"file:arguslog-sdk-browser-1.1.2.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -p tsconfig.build.json --watch","lint":"eslint src","test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist .turbo","predev":"node scripts/gen-version.mjs","pretest":"node scripts/gen-version.mjs","prebuild":"node scripts/gen-version.mjs","test:pact":"vitest run --config vitest.pact.config.ts","typecheck":"tsc --noEmit","gen-version":"node scripts/gen-version.mjs","pretest:pact":"node scripts/gen-version.mjs","pretypecheck":"node scripts/gen-version.mjs","test:coverage":"vitest run --coverage","pretest:coverage":"node scripts/gen-version.mjs"},"_npmUser":{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"},"_resolved":"/tmp/80aab262e70768e3d5ac9300155575ae/arguslog-sdk-browser-1.1.2.tgz","_integrity":"sha512-Dp5UpGk7Br1JkrHuD2xbRSONyDjPaJ43abv7yhpalZJM77aaL58To5rvW7hV9BdbPA8XghtI+09Gy4tmd5zMnA==","_npmVersion":"10.9.7","description":"Arguslog browser SDK — error tracking for vanilla JS/TS apps","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","dependencies":{"@arguslog/sdk-core":"1.0.2"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^25.0.1","eslint":"^9.18.0","vitest":"^3.2.4","typescript":"^5.7.0","@arguslog/tsconfig":"0.0.0","@vitest/coverage-v8":"^3.2.4","@pact-foundation/pact":"^13.2.0","@arguslog/eslint-config":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk-browser_1.1.2_1778361087625_0.600706419535781","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@arguslog/sdk-browser","version":"1.1.3","license":"MIT","_id":"@arguslog/sdk-browser@1.1.3","maintainers":[{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"}],"dist":{"shasum":"2fed6ca8db45ff47cbee2709173b6d895c0af6df","tarball":"https://registry.npmjs.org/@arguslog/sdk-browser/-/sdk-browser-1.1.3.tgz","fileCount":63,"integrity":"sha512-eAa+MNHx2KjBRyrADehKSKA4xyB3m4QSqapkZgxuhyx6Ym6yENmRx/kqbLdDJMPAtQx+h1qQR/S8lHsj1TNngw==","signatures":[{"sig":"MEQCIE0WcoHcYNPhDfDvEwHcY5U/R2lyNVJ0Y/6UfUpQPcExAiA7PZoTOUtZfKKx/gpjc+PuV7KFaB9hLqcrKNqn35W5qA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100824},"main":"./dist/index.js","type":"module","_from":"file:arguslog-sdk-browser-1.1.3.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -p tsconfig.build.json --watch","lint":"eslint src","test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist .turbo","predev":"node scripts/gen-version.mjs","pretest":"node scripts/gen-version.mjs","prebuild":"node scripts/gen-version.mjs","test:pact":"vitest run --config vitest.pact.config.ts","typecheck":"tsc --noEmit","gen-version":"node scripts/gen-version.mjs","pretest:pact":"node scripts/gen-version.mjs","pretypecheck":"node scripts/gen-version.mjs","test:coverage":"vitest run --coverage","pretest:coverage":"node scripts/gen-version.mjs"},"_npmUser":{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"},"_resolved":"/tmp/ba9bb25a9e462eb517074fce296ce1ef/arguslog-sdk-browser-1.1.3.tgz","_integrity":"sha512-eAa+MNHx2KjBRyrADehKSKA4xyB3m4QSqapkZgxuhyx6Ym6yENmRx/kqbLdDJMPAtQx+h1qQR/S8lHsj1TNngw==","_npmVersion":"10.9.7","description":"Arguslog browser SDK — error tracking for vanilla JS/TS apps","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","dependencies":{"web-vitals":"^5.2.0","@arguslog/sdk-core":"1.0.2"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^25.0.1","eslint":"^9.18.0","vitest":"^3.2.4","typescript":"^5.7.0","@arguslog/tsconfig":"0.0.0","@vitest/coverage-v8":"^3.2.4","@pact-foundation/pact":"^13.2.0","@arguslog/eslint-config":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk-browser_1.1.3_1778363804408_0.3697211009160337","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@arguslog/sdk-browser","version":"2.0.0","license":"MIT","_id":"@arguslog/sdk-browser@2.0.0","maintainers":[{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"}],"homepage":"https://arguslog.org","bugs":{"url":"https://github.com/petarnenov/arguslog-sdks/issues"},"dist":{"shasum":"e67ceaf1c8e10bdc049e700f4625b87fda777c72","tarball":"https://registry.npmjs.org/@arguslog/sdk-browser/-/sdk-browser-2.0.0.tgz","fileCount":64,"integrity":"sha512-hjj+xIaMOCC0h7eG7wYMWHz+dMSyfUeu4ZotlbGaZtVbvqSJQ5nxKuHPUvjDuwJ2NdeN7evqF40T4vHS/19xgQ==","signatures":[{"sig":"MEYCIQDdA6pD162CjPX4lAO+bR7If20qMj6wAamcTIgmgTgTmAIhAJnJJMhtQQ+ik/sHe7quWZS9GtygRXK03OtWPP5kQCKv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105389},"main":"./dist/index.js","type":"module","_from":"file:arguslog-sdk-browser-2.0.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -p tsconfig.build.json --watch","lint":"eslint src","test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist .turbo","predev":"node scripts/gen-version.mjs","pretest":"node scripts/gen-version.mjs","prebuild":"node scripts/gen-version.mjs","test:pact":"vitest run --config vitest.pact.config.ts","typecheck":"tsc --noEmit","gen-version":"node scripts/gen-version.mjs","pretest:pact":"node scripts/gen-version.mjs","pretypecheck":"node scripts/gen-version.mjs","test:coverage":"vitest run --coverage","pretest:coverage":"node scripts/gen-version.mjs"},"_npmUser":{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"},"_resolved":"/tmp/1f117716c65cf2026f3a9033a77b3a74/arguslog-sdk-browser-2.0.0.tgz","_integrity":"sha512-hjj+xIaMOCC0h7eG7wYMWHz+dMSyfUeu4ZotlbGaZtVbvqSJQ5nxKuHPUvjDuwJ2NdeN7evqF40T4vHS/19xgQ==","repository":{"url":"git+https://github.com/petarnenov/arguslog-sdks.git","type":"git","directory":"packages/sdk-browser"},"_npmVersion":"10.9.7","description":"Arguslog browser SDK — error tracking for vanilla JS/TS apps","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","dependencies":{"web-vitals":"^5.2.0","@arguslog/sdk-core":"2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^25.0.1","eslint":"^9.18.0","vitest":"^3.2.4","typescript":"^5.7.0","@arguslog/tsconfig":"0.0.0","@vitest/coverage-v8":"^3.2.4","@pact-foundation/pact":"^13.2.0","@arguslog/eslint-config":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk-browser_2.0.0_1778619538171_0.10388697390036006","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@arguslog/sdk-browser","version":"2.0.1","description":"Arguslog browser SDK — error tracking for vanilla JS/TS apps","license":"MIT","type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"sideEffects":false,"dependencies":{"web-vitals":"^5.2.0","@arguslog/sdk-core":"2.0.1"},"devDependencies":{"@pact-foundation/pact":"^13.2.0","@vitest/coverage-v8":"^3.2.4","eslint":"^9.18.0","jsdom":"^25.0.1","typescript":"^5.7.0","vitest":"^3.2.4","@arguslog/tsconfig":"0.0.0","@arguslog/eslint-config":"0.0.0"},"repository":{"type":"git","url":"git+https://github.com/petarnenov/arguslog-sdks.git","directory":"packages/sdk-browser"},"homepage":"https://arguslog.org","bugs":{"url":"https://github.com/petarnenov/arguslog-sdks/issues"},"scripts":{"gen-version":"node scripts/gen-version.mjs","prebuild":"node scripts/gen-version.mjs","predev":"node scripts/gen-version.mjs","pretest":"node scripts/gen-version.mjs","pretest:coverage":"node scripts/gen-version.mjs","pretest:pact":"node scripts/gen-version.mjs","pretypecheck":"node scripts/gen-version.mjs","build":"tsc -p tsconfig.build.json","dev":"tsc -p tsconfig.build.json --watch","lint":"eslint src","typecheck":"tsc --noEmit","test":"vitest run","test:coverage":"vitest run --coverage","test:pact":"vitest run --config vitest.pact.config.ts","clean":"rm -rf dist .turbo"},"_id":"@arguslog/sdk-browser@2.0.1","_integrity":"sha512-JvFTayE0MeWHnPd/Xu25odBlGwq1qdmy537dgxX9436RzEX/JQp/OE8a23YO3bwuUATtBANvvjblTjqFghNPnw==","_resolved":"/tmp/4ecf9f3e7fb206004b6b7d8b14c53e95/arguslog-sdk-browser-2.0.1.tgz","_from":"file:arguslog-sdk-browser-2.0.1.tgz","_nodeVersion":"22.22.2","_npmVersion":"10.9.7","dist":{"integrity":"sha512-JvFTayE0MeWHnPd/Xu25odBlGwq1qdmy537dgxX9436RzEX/JQp/OE8a23YO3bwuUATtBANvvjblTjqFghNPnw==","shasum":"b8465370ad12e843dd48e80a9d03912c336e6e09","tarball":"https://registry.npmjs.org/@arguslog/sdk-browser/-/sdk-browser-2.0.1.tgz","fileCount":64,"unpackedSize":105455,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDkMF+5WprsRfQbqoKb0/dkU14QSLZ3exjR4LxI28GAWAIhAM3rGKMRDHCTYgrcLchG4bkuDuMFvtJqFeXKbBLArqGH"}]},"_npmUser":{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"},"directories":{},"maintainers":[{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk-browser_2.0.1_1778780558260_0.9116249711641418"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-06T23:16:11.474Z","modified":"2026-05-14T17:42:38.547Z","0.1.0":"2026-05-06T23:16:11.751Z","0.1.1":"2026-05-06T23:25:47.228Z","1.0.0":"2026-05-07T19:20:57.863Z","1.1.0":"2026-05-08T15:29:19.116Z","1.1.1":"2026-05-09T20:21:10.501Z","1.1.2":"2026-05-09T21:11:27.777Z","1.1.3":"2026-05-09T21:56:44.543Z","2.0.0":"2026-05-12T20:58:58.319Z","2.0.1":"2026-05-14T17:42:38.409Z"},"bugs":{"url":"https://github.com/petarnenov/arguslog-sdks/issues"},"license":"MIT","homepage":"https://arguslog.org","repository":{"type":"git","url":"git+https://github.com/petarnenov/arguslog-sdks.git","directory":"packages/sdk-browser"},"description":"Arguslog browser SDK — error tracking for vanilla JS/TS apps","maintainers":[{"name":"petar.nenov","email":"petarnenovpetrov@gmail.com"}],"readme":"# @arguslog/sdk-browser\n\n[![npm version](https://img.shields.io/npm/v/@arguslog/sdk-browser.svg)](https://www.npmjs.com/package/@arguslog/sdk-browser)\n[![license](https://img.shields.io/npm/l/@arguslog/sdk-browser.svg)](https://github.com/petarnenov/arguslog/blob/main/LICENSE)\n\nBrowser SDK for [Arguslog](https://arguslog.org) — a multi-tenant error tracking platform.\nCaptures unhandled exceptions, promise rejections, and manually-reported errors from any\nJavaScript app, then ships them to the Arguslog ingest endpoint where they're fingerprinted,\nstored, and surfaced on the dashboard.\n\nShips ESM only. Tested against modern browsers and TypeScript 5.x. No runtime dependencies.\n\n## Install\n\n```bash\npnpm add @arguslog/sdk-browser\n# or\nnpm install @arguslog/sdk-browser\n# or\nyarn add @arguslog/sdk-browser\n```\n\n## Quick start\n\nInitialize once at the top of your app — typically in `main.ts` or wherever your bootstrap\nlives. The SDK is a no-op until `init` runs, so it's safe to import in modules that load\nbefore bootstrap.\n\n```ts\nimport { init } from '@arguslog/sdk-browser';\n\ninit({\n  dsn: 'arguslog://<publicKey>@<ingestHost>/api/<projectId>',\n  environment: 'production',\n  release: '1.4.0',\n  integrations: ['globalHandlers', 'autoBreadcrumbs'],\n});\n```\n\nAfter `init`, unhandled `window.onerror` and `unhandledrejection` events are captured\nautomatically (when the `globalHandlers` integration is enabled). The\n`autoBreadcrumbs` flag turns on every breadcrumb integration the SDK ships\n(`console`, `fetch`, `xhr`, `history`, `dom`, `resourceErrors`, `webVitals`,\n`longTasks`, `visibility`, `workerErrors`) so the dashboard timeline carries the\ntrail of clicks, network calls (including 4xx/5xx response body previews), route\nchanges, resource load failures, Core Web Vitals, main-thread freezes, page\nvisibility transitions and worker errors leading up to the exception. Every event\nalso picks up an auto-context bag with viewport, online status, locale, timezone,\ncolor scheme and effective connection type. Manual reporting is always available\nvia `captureException` / `captureMessage`.\n\n## DSN format\n\n```\narguslog://<publicKey>@<ingestHost>/api/<projectId>\n```\n\nGet yours from your Arguslog project settings page. The `publicKey` is safe to embed in a\npublic bundle — it's a project-scoped token, not a secret. Ingest authenticates the request\nagainst the project ID + key combo and rejects unknown pairs with HTTP 401.\n\n## API\n\n### `init(options): ArguslogClient`\n\nConfigures and starts the client. Re-initializing tears down the previous handlers cleanly,\nso hot-reload during dev doesn't accumulate stale listeners.\n\n| Option           | Type                                              | Default      | Notes                                                                                                          |\n| ---------------- | ------------------------------------------------- | ------------ | -------------------------------------------------------------------------------------------------------------- |\n| `dsn`            | `string`                                          | _required_   | See \"DSN format\" above.                                                                                        |\n| `release`        | `string`                                          | _none_       | Free-form version tag — git sha, semver, etc. Stamped on every event.                                          |\n| `environment`    | `string`                                          | _none_       | E.g. `production`, `staging`, `dev`.                                                                           |\n| `sampleRate`     | `number` 0–1                                      | `1.0`        | Fraction of events kept; useful for high-traffic apps.                                                         |\n| `maxBreadcrumbs` | `number`                                          | `50`         | Ring-buffer size.                                                                                              |\n| `beforeSend`     | `(event) => event \\| null \\| Promise<...>`        | _identity_   | Last-mile mutation / drop hook.                                                                                |\n| `scrubbing`      | `{ enabled?: boolean; extraPatterns?: RegExp[] }` | enabled      | PII redaction in messages and URLs.                                                                            |\n| `transport`      | `{ fetch?: typeof fetch; maxRetries?: number }`   | global fetch | Inject a custom fetch (testing) or bump retry budget.                                                          |\n| `integrations`   | `IntegrationId[]` (see below)                     | _none_       | Opt in to auto-instrumentation. `'autoBreadcrumbs'` is a meta-flag that turns on every breadcrumb integration. |\n| `debug`          | `boolean`                                         | `false`      | Logs every send to the console — never enable in production.                                                   |\n\n### `captureException(error, hint?): string | undefined`\n\nReports a thrown value. Returns the generated event id, or `undefined` if the SDK isn't\ninitialized. The `hint` lets you tag the event without mutating client-wide state.\n\n```ts\nimport { captureException } from '@arguslog/sdk-browser';\n\ntry {\n  riskyThing();\n} catch (err) {\n  captureException(err, { level: 'error', tags: { feature: 'checkout' } });\n}\n```\n\nNon-Error values (strings, plain objects, symbols) are wrapped synthetically so you don't\nhave to coerce upstream.\n\n### `captureMessage(message, level?): string | undefined`\n\nSends a string event without a stack trace. Useful for breadcrumb-level signals.\n\n```ts\ncaptureMessage('Cart abandoned at step 3', 'warning');\n```\n\n### `setUser(user | undefined)`\n\nAttaches user identity to subsequent events. Pass `undefined` to clear (e.g. on logout).\n\n```ts\nsetUser({ id: '42', email: 'jane@example.com' });\n// later\nsetUser(undefined);\n```\n\n### `setTag(key, value)` / `setContext(name, ctx)`\n\n`setTag` adds a single key/value to every event going forward; `setContext` attaches an\narbitrary object under a named bucket (think \"request\", \"feature flags\", etc.).\n\n### `addBreadcrumb(crumb)`\n\nRecords a navigation / click / network / custom event. The last `maxBreadcrumbs` are attached\nto every captured exception, so debugging gets the trail leading up to the error.\n\n```ts\naddBreadcrumb({\n  category: 'navigation',\n  message: 'User clicked Buy',\n  level: 'info',\n  data: { sku: 'A-123' },\n});\n```\n\n### `flush(): Promise<void>`\n\nAwaits the in-flight queue. Useful before `window.unload` or in service workers.\n\n## Integrations\n\nEvery integration is opt-in via the `integrations` array, returns a no-op when `window` is\nnot defined (SSR), and installs an uninstaller that runs on the next `init` so hot-reload\nduring dev never accumulates duplicate listeners. Pass `'autoBreadcrumbs'` to turn on every\nbreadcrumb integration in one go, or list them individually.\n\n```ts\ninit({\n  dsn: '...',\n  integrations: [\n    'globalHandlers',\n    'autoBreadcrumbs',\n    // …or pick à la carte:\n    // 'console', 'fetch', 'xhr', 'history', 'dom',\n    // 'resourceErrors', 'webVitals',\n    // 'longTasks', 'visibility', 'workerErrors',\n  ],\n});\n```\n\n| ID                | Captures                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |\n| ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `globalHandlers`  | `window.onerror` + `unhandledrejection`. The \"actual error capture\" integration — without it nothing reaches `captureException` automatically.                                                                                                                                                                                                                                                                                                                             |\n| `console`         | Every `console.log/info/warn/error/debug` becomes a breadcrumb. The original console call is preserved. Levels map to `info/info/warning/error/debug`.                                                                                                                                                                                                                                                                                                                     |\n| `fetch`           | Patches `window.fetch`. Every request leaves a breadcrumb with method, URL, status, duration. 2xx → info, 4xx → warning, 5xx → error. Network failures are recorded and re-thrown. **For 4xx/5xx with a JSON / text content type**, the first 4KB of the response body is captured into `data.responsePreview` so error messages from your own backend show up next to the status. Body is read via `response.clone()` so user code's `await response.json()` still works. |\n| `xhr`             | Same payload shape as `fetch` but for legacy `XMLHttpRequest` traffic (jQuery AJAX, axios's xhr adapter, hand-rolled XHR). Same 4KB response preview on 4xx/5xx when `responseType` is `''` or `'text'`.                                                                                                                                                                                                                                                                   |\n| `history`         | Patches `history.pushState` / `replaceState` and listens for `popstate` / `hashchange`. Single-page-app routers leave a navigation trail (`/start → /billing`).                                                                                                                                                                                                                                                                                                            |\n| `resourceErrors`  | `<img>`, `<script>`, `<link>`, `<audio>`, `<video>`, `<iframe>` load failures. These never reach `window.onerror` — common cause of \"image silently missing\" / \"ad blocker killed third-party script\" bugs.                                                                                                                                                                                                                                                                |\n| `webVitals`       | Core Web Vitals as breadcrumbs (LCP / INP / CLS / FCP / TTFB) via the [`web-vitals`](https://github.com/GoogleChrome/web-vitals) library. Poor ratings show as `warning` so a slow LCP next to a crash is visible at a glance.                                                                                                                                                                                                                                             |\n| `dom`             | Document-level capture-phase listeners for `click` and `submit`. Only interactive targets are recorded (`<button>`, `<a>`, `<input>`, `<select>`, `<textarea>`, `<label>`, `[role=button \\| link \\| checkbox \\| menuitem]`, `[data-arguslog-track]`). The closest interactive ancestor of the click target is used so a click on a `<span>` inside a `<button>` reports the button.                                                                                        |\n| `longTasks`       | `PerformanceObserver` for `longtask` entries — main thread blocked >50ms. 50–200ms → info, 200–500ms → warning, 500ms+ → error. Reveals \"the UI froze right before the click stopped responding\" patterns. Source attribution (`containerType` / `containerSrc`) is included where Chromium supplies it.                                                                                                                                                                   |\n| `visibility`      | `visibilitychange`, `pagehide`, `online`, `offline` events. Distinguishes \"error fired while user was on another tab\" from \"error fired during interaction\" — different debugging stories.                                                                                                                                                                                                                                                                                 |\n| `workerErrors`    | Forwards Web Worker + Service Worker errors into the main-thread client. Patches the global `Worker` constructor to attach an `error` listener on every new instance; service workers can also opt in by `postMessage({ __arguslog: 'error', message, stack })`.                                                                                                                                                                                                           |\n| `autoBreadcrumbs` | Convenience meta-flag — turns on every breadcrumb integration (`console`, `fetch`, `xhr`, `history`, `dom`, `resourceErrors`, `webVitals`, `longTasks`, `visibility`, `workerErrors`).                                                                                                                                                                                                                                                                                     |\n\n### Customizing the DOM breadcrumb label\n\nThe `dom` integration auto-derives a label like `button#pay.primary \"Pay\"`. Override with\n`data-arguslog-label` on any tracked element:\n\n```html\n<button data-arguslog-label=\"Upgrade to Pro — annual\">Upgrade <span>(save 33%)</span></button>\n```\n\nThe breadcrumb message becomes exactly `Upgrade to Pro — annual` instead of an auto-derived\nselector.\n\n## Privacy / scrubbing\n\nBuilt-in regex patterns redact common PII (emails, IPs, US-style SSNs, JWT-ish tokens) from\nmessage strings and URLs before send. Add custom patterns via\n`scrubbing.extraPatterns: [/\\bUSR-\\d+\\b/]`. Disable entirely with `scrubbing.enabled: false`\nwhen you control the input shape and want full fidelity.\n\n## React?\n\nUse [`@arguslog/sdk-react`](https://www.npmjs.com/package/@arguslog/sdk-react) — it\nre-exports this SDK plus a `<ArguslogErrorBoundary>` and `useArguslog()` hook.\n\n## License\n\nMIT — see [LICENSE](https://github.com/petarnenov/arguslog/blob/main/LICENSE).\n","readmeFilename":"README.md"}