{"_id":"@adpharm/silo-analytics","_rev":"18-73e258c59c18c5ad0e777efc60477fd2","name":"@adpharm/silo-analytics","dist-tags":{"latest":"2.2.1"},"versions":{"1.0.0":{"name":"@adpharm/silo-analytics","version":"1.0.0","_id":"@adpharm/silo-analytics@1.0.0","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://github.com/adpharm/silo-analytics#readme","bugs":{"url":"https://github.com/adpharm/silo-analytics/issues"},"dist":{"shasum":"d3d44d17d548a24d6a5e902c15f422483e32ee35","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-1.0.0.tgz","fileCount":4,"integrity":"sha512-9e1ebmRrB3BgjdI/ooEdpOukRLMNfju938OshUhkwnTF6mdvOKLa4aOVkw+P5v0egbLg+MrbBH4g7TcgwAsbBQ==","signatures":[{"sig":"MEUCIQDN1sQ6f8tSGPqFUxo8lQA2KjILsus2g4B/73h+eaPLTAIgEb0V6z8piWZl54tZFPTVyOIAxpBoU72hA+v8XZ6mAWU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":299779},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"9d605b7408b8fd19494e37286c7e252353b4d61e","scripts":{"build":"bun build ./index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","prepublishOnly":"bun run build"},"_npmUser":{"name":"bentejas","email":"bentejas@hotmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-analytics.git","type":"git"},"_npmVersion":"11.11.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"latest","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_1.0.0_1774552916021_0.5061033411020026","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@adpharm/silo-analytics","version":"1.0.1","_id":"@adpharm/silo-analytics@1.0.1","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://github.com/adpharm/silo-analytics#readme","bugs":{"url":"https://github.com/adpharm/silo-analytics/issues"},"dist":{"shasum":"08e210ca994c4a644b63f95c20b8e9d50cbc920f","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-1.0.1.tgz","fileCount":4,"integrity":"sha512-1LSZN1xhUB2i7M3Xxj6FTGXavPc0FNIHACoM101nKxfz38Zf+4nN/w7pMqMqkOkD+5iv7dD1Q0JTTY9+/kMwEA==","signatures":[{"sig":"MEUCIHVP0Fvz5yLGi0eGwZIwlkIgoUlsic73QJS29hlyQc1gAiEAlMIuM7E7XPdHG9LtC+37rZt1J3bAup5AfyyWd7iigf8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":299804},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"11b992f9467c26693c41012040bb49687d293322","scripts":{"build":"bun build ./index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","prepublishOnly":"bun run build"},"_npmUser":{"name":"bentejas","email":"bentejas@hotmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-analytics.git","type":"git"},"_npmVersion":"11.11.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"latest","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_1.0.1_1774554827331_0.6813357490035901","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@adpharm/silo-analytics","version":"1.0.2","_id":"@adpharm/silo-analytics@1.0.2","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://github.com/adpharm/silo-analytics#readme","bugs":{"url":"https://github.com/adpharm/silo-analytics/issues"},"dist":{"shasum":"d06b54ba4bee5b55be85c62c59a015553dc2c942","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-1.0.2.tgz","fileCount":4,"integrity":"sha512-hTEHzrdNg1KJwYsR0UkarKKN/G04BRno6yezDqEA7AEWqxY4S5YVJySWdDQnhtOkiEmw2M2hut8yq6wOaFxhcA==","signatures":[{"sig":"MEYCIQCAk9Cbp8B+971JkgYben/EAWBSl4fACbytla5c17/B9gIhAOSUBee/gIS9MOid5cdOXEFymDpRqogKDym4DANFKkS/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":299923},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"40ca27fa12d0985482044c027771d6dbfc89d7d3","scripts":{"build":"bun build ./index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","prepublishOnly":"bun run build"},"_npmUser":{"name":"bentejas","email":"bentejas@hotmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-analytics.git","type":"git"},"_npmVersion":"11.11.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"latest","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_1.0.2_1774555696912_0.9150845641837411","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@adpharm/silo-analytics","version":"1.0.3","_id":"@adpharm/silo-analytics@1.0.3","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://github.com/adpharm/silo-analytics#readme","bugs":{"url":"https://github.com/adpharm/silo-analytics/issues"},"dist":{"shasum":"81e1d8b04f64c3054dc7473d887bdad27dcc914f","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-1.0.3.tgz","fileCount":4,"integrity":"sha512-wtOX9/brYbIRLl927jW6Yf/BHBZqGgKH0PwZ8OkxlKeMa0ZCLPKzaytKlC4lSlJd/CfdlTg49bb1uW/hOdsjzg==","signatures":[{"sig":"MEYCIQDle/hJl2EzjEQww49TdqEIcLbaNQMnV1xQRKuTI7FeMQIhAKUIB4ngCW4xjCig8jg5usLeDGJfAerO70uLmcaOozV/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":302636},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"b12510f4ff282c64e1996ae213fbd4cb8aef7ee6","scripts":{"build":"bun build ./index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","prepublishOnly":"bun run build"},"_npmUser":{"name":"bentejas","email":"bentejas@hotmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-analytics.git","type":"git"},"_npmVersion":"11.11.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"latest","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_1.0.3_1774558983135_0.3677575363415817","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@adpharm/silo-analytics","version":"1.0.4","_id":"@adpharm/silo-analytics@1.0.4","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://github.com/adpharm/silo-analytics#readme","bugs":{"url":"https://github.com/adpharm/silo-analytics/issues"},"dist":{"shasum":"6c84ac030f5c8f87976c2b91088eecce8cf72284","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-1.0.4.tgz","fileCount":4,"integrity":"sha512-p+EN+kAmEQUJbmUz1rl8qkcqW7/kuvcMSUVS/u1SeA2K//51L65cTl8b0HdGvJBuCMvbCViO2ix8CAIXhRmQcA==","signatures":[{"sig":"MEUCIEYFsgP1ND3th7tUuPJgYr0CKR+qhU8Wq0o0E3lHLzJIAiEAzEw2ZG8FQjuUO+oqnAJXGEQaXVvJchvKg0p6H2GRzLI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":302731},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"ef89621c4816cb8e204f5771d8d670f0f0468e5e","scripts":{"build":"bun build ./index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","prepublishOnly":"bun run build"},"_npmUser":{"name":"bentejas","email":"bentejas@hotmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-analytics.git","type":"git"},"_npmVersion":"11.11.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"latest","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_1.0.4_1774560097230_0.6139082837395688","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@adpharm/silo-analytics","version":"1.0.5","_id":"@adpharm/silo-analytics@1.0.5","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://github.com/adpharm/silo-analytics#readme","bugs":{"url":"https://github.com/adpharm/silo-analytics/issues"},"dist":{"shasum":"af11b2f8e4ef7bfcea48cd95aa0eceab980ae888","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-1.0.5.tgz","fileCount":4,"integrity":"sha512-4sigSzQ5T8Vsn2sMzE0z7kgJTtgwhcYzlo68/WD27Kj9BzlbnnMzpJt3ixVPFpvSx1k/usOTKl7KqOh0gICz7Q==","signatures":[{"sig":"MEYCIQCd752U753qOJEv1ghmHLGJKuIKsx7kbuGb9tTzoxe4MQIhALeHOHZiAPkw/AXOof45pVRRoYukBtYkxWSQtyFmaDIL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":303148},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"0d33ba787fe0f7432caacf540bf4279978375f46","scripts":{"build":"bun build ./index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","prepublishOnly":"bun run build"},"_npmUser":{"name":"bentejas","email":"bentejas@hotmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-analytics.git","type":"git"},"_npmVersion":"11.11.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"latest","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_1.0.5_1774561000478_0.5594366004820579","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@adpharm/silo-analytics","version":"1.0.6","_id":"@adpharm/silo-analytics@1.0.6","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://github.com/adpharm/silo-analytics#readme","bugs":{"url":"https://github.com/adpharm/silo-analytics/issues"},"dist":{"shasum":"d586729a822715719a2a9acf9094a71406a44978","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-1.0.6.tgz","fileCount":4,"integrity":"sha512-nLSNcuUcKtaDC1bJeBV1x9fZ+cHr6QU8ZGsHJ9ScQKmUb2p0yKa9N+9k/bOn+q/IZZyLqFUjYZ4/M/fggkGtGw==","signatures":[{"sig":"MEYCIQDAdOi5n2zdX35A/ef6Sc6Bm8B9fuHVbVDo9aBMPnDCFwIhAK9nQ81K2O77Hc1tdcn0GWtbEx9FE9yqNI3Ka7WUrm/F","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":303495},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"e98849a6899a5cc775158b4de74ed7d09d96ab09","scripts":{"build":"bun build ./index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","prepublishOnly":"bun run build"},"_npmUser":{"name":"bentejas","email":"bentejas@hotmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-analytics.git","type":"git"},"_npmVersion":"11.11.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"latest","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_1.0.6_1774632297336_0.7238713635561598","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@adpharm/silo-analytics","version":"2.0.0","_id":"@adpharm/silo-analytics@2.0.0","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://github.com/adpharm/silo-analytics#readme","bugs":{"url":"https://github.com/adpharm/silo-analytics/issues"},"dist":{"shasum":"501ed3dad6211a193ccf1b16e8b36ecb3efea855","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-2.0.0.tgz","fileCount":10,"integrity":"sha512-mEIxsVwyf4ASyGMDsjMo7imwVkj0BDu3ep2/BS/JKvwUjDZOctU5wbCCyu0QC+LmVerXS8OPlMdkibNl8dYAlQ==","signatures":[{"sig":"MEYCIQCDDP8kvHd9XbgZSYgNuCTfp/CtLd6bmwLaEJPHbaGi+gIhALFnCTer3HJwQ5yPFcvDQAQIiz+wtTDJWJTlca5IUrk3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":347147},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"4b54b7ebb0b4fd88f0433bd946ac0697ceb8a831","scripts":{"build":"rm -rf dist && bun build ./src/index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","prepublishOnly":"bun run build"},"_npmUser":{"name":"bh1","email":"bhonda89@gmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-analytics.git","type":"git"},"_npmVersion":"11.13.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@segment/analytics-consent-tools":"^2.0.3"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"latest","@playwright/test":"^1.60.0","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_2.0.0_1780682573634_0.847305528624799","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@adpharm/silo-analytics","version":"2.0.1","_id":"@adpharm/silo-analytics@2.0.1","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://silo.docs.adpharm.digital","bugs":{"url":"https://github.com/adpharm/silo-analytics/issues"},"dist":{"shasum":"42d86cf2a645463df16e163b3cba2cf15926fb57","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-2.0.1.tgz","fileCount":11,"integrity":"sha512-o6t9cbylnGtBba4K2JGUCqW+IGC//c9IYeegOvbke4IWkJj8TrOP9iZEOwdUBG7RWou0bUbZGXtl9cABB7Id1A==","signatures":[{"sig":"MEUCIBwmeOT8MHjwtTudHPUzHUBEtEf2eaI+p+H3bc3OPqRgAiEAhmfv3qlZ2JDsgzDYvlhMo2tm0Fjln7YBawF5wlogS3A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":353755},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"f28c5f513986a14f689d1f5755d653b69e0b55aa","scripts":{"build":"rm -rf dist && bun build ./src/index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","prepublishOnly":"bun run build"},"_npmUser":{"name":"bh1","email":"bhonda89@gmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-analytics.git","type":"git"},"_npmVersion":"11.13.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@segment/analytics-consent-tools":"^2.0.3"},"_hasShrinkwrap":false,"devDependencies":{"postgres":"^3.4.9","@types/bun":"latest","typescript":"latest","@playwright/test":"^1.60.0","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_2.0.1_1781013642598_0.9070487596153367","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@adpharm/silo-analytics","version":"2.1.0","_id":"@adpharm/silo-analytics@2.1.0","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://silo.docs.adpharm.digital","bugs":{"url":"https://github.com/adpharm/silo-analytics/issues"},"dist":{"shasum":"b726d65372144bcba918188d2c46dd651957c456","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-2.1.0.tgz","fileCount":12,"integrity":"sha512-X5IvG/0SHqo1QiDU2rjHrxlz9pwXP0TAcu6hWk6oqkhWjP32uKgfllBH+8/hwRukEz3uXiUib5LsezpG1Vp0lA==","signatures":[{"sig":"MEUCIQDdzwZlbCX/isnqJwpuopWcJrqkiS+793wny++0CSBzeQIgHlx9ZLUJmH5pHEKAKrXvgAqLvZOTtnB6BJ6du2oLyBw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":361872},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"7b3a52ab47daeacdd45e3618ae3486aee7c51be8","scripts":{"build":"rm -rf dist && bun build ./src/index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","prepublishOnly":"bun run build"},"_npmUser":{"name":"bh1","email":"bhonda89@gmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-analytics.git","type":"git"},"_npmVersion":"11.13.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@segment/analytics-consent-tools":"^2.0.3"},"_hasShrinkwrap":false,"devDependencies":{"postgres":"^3.4.9","@types/bun":"latest","typescript":"latest","@playwright/test":"^1.60.0","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_2.1.0_1781292161102_0.4014861602937312","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"@adpharm/silo-analytics","version":"2.1.1","_id":"@adpharm/silo-analytics@2.1.1","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://silo.docs.adpharm.digital","bugs":{"url":"https://github.com/adpharm/silo-analytics/issues"},"dist":{"shasum":"c1a5120201e3565a83eac0fe7754ea43fefe55df","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-2.1.1.tgz","fileCount":13,"integrity":"sha512-FmAhG1v+MFJku7EHc+iIp1DHmfb5jxxdAei8NLBgbeQ9nl1uGpvtpr+0TqbPhDczH25looxNup1B3CQXydFQtQ==","signatures":[{"sig":"MEUCIQCW9f08S4eauKRzgas8+NnbhdhUTPwu9XFUSSYywKdixAIgYfGXG+7bl8qL/fTAgpN0vmFiJRWI8wSV6yOCbLcnnWM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":363020},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"4868a0edcd64c06c013a8a7db085e5fd68840ce0","scripts":{"build":"rm -rf dist && bun build ./src/index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","build:cdn":"rm -rf dist-cdn && bun build ./src/cdn-entry.ts --target browser --format=iife --minify --outfile ./dist-cdn/silo-analytics.min.js && bun build ./src/index.ts --target browser --minify --outfile ./dist-cdn/silo-analytics.esm.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"bh1","email":"bhonda89@gmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-analytics.git","type":"git"},"_npmVersion":"11.13.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@segment/analytics-consent-tools":"^2.0.3"},"_hasShrinkwrap":false,"devDependencies":{"postgres":"^3.4.9","@types/bun":"latest","typescript":"latest","@playwright/test":"^1.60.0","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_2.1.1_1781554021560_0.7362543847557232","host":"s3://npm-registry-packages-npm-production"}},"2.1.2":{"name":"@adpharm/silo-analytics","version":"2.1.2","_id":"@adpharm/silo-analytics@2.1.2","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://silo.docs.adpharm.digital","bugs":{"url":"https://github.com/adpharm/silo-analytics/issues"},"dist":{"shasum":"cb79b5d6d1f8ce5a789453ee943ab4020334e82e","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-2.1.2.tgz","fileCount":14,"integrity":"sha512-c5NkdiV7BuApUN3h1pCdnqm/5ryiqRcvyptt9HifRn3ATWmncI2yFQnHCH3b2yV+o6n4uhgAZGmTa0IOJTeyww==","signatures":[{"sig":"MEUCIQCqC1uTW3Y1XBFuwg0tdM6D6LLCxZOpRU1aLvhJaB/2KwIgVTER6Vss0JEiDqNQaX6dPn2zMr5PHNn+4NerCITlrB4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":365654},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"05e0dc07193a170cbd3e1a546fc1a7f04514ed5a","scripts":{"build":"rm -rf dist && bun build ./src/index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","build:cdn":"rm -rf dist-cdn && bun build ./src/cdn-entry.ts --target browser --format=iife --minify --outfile ./dist-cdn/silo-analytics.min.js && bun build ./src/index.ts --target browser --minify --outfile ./dist-cdn/silo-analytics.esm.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"bh1","email":"bhonda89@gmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-analytics.git","type":"git"},"_npmVersion":"11.13.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@segment/analytics-consent-tools":"^2.0.3"},"_hasShrinkwrap":false,"devDependencies":{"postgres":"^3.4.9","@types/bun":"latest","typescript":"latest","@playwright/test":"^1.60.0","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_2.1.2_1781555181591_0.34850758278690686","host":"s3://npm-registry-packages-npm-production"}},"2.1.3":{"name":"@adpharm/silo-analytics","version":"2.1.3","_id":"@adpharm/silo-analytics@2.1.3","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://silo.docs.adpharm.digital","bugs":{"url":"https://github.com/adpharm/silo-services/issues"},"dist":{"shasum":"53051af5707cfc32ff7bcb06c6928dcca0dd10e9","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-2.1.3.tgz","fileCount":17,"integrity":"sha512-HdAV6Sv07BB+4h3V2rINpYLiqszjxPa8p7hpm+OirxG4lTTJ10qGNG1woHMyRidbpAD8sDxV4YxPnkgWIyMYhg==","signatures":[{"sig":"MEQCIBqY6rfFOtxfXHKx+VKjTP1Wnkr66gP4llWvZazYZZsvAiBfATyZfCqSXduntUlz9mF62va5CvuvlkYWESFyQe+slg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":438152},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"e96e21417c96c8bc8dab3e07460990958c1bde46","scripts":{"build":"rm -rf dist && bun build ./src/index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","build:cdn":"rm -rf dist-cdn && bun build ./src/cdn-entry.ts --target browser --format=iife --minify --outfile ./dist-cdn/silo-analytics.min.js && bun build ./src/index.ts --target browser --minify --outfile ./dist-cdn/silo-analytics.esm.js","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"bh1","email":"bhonda89@gmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-services.git","type":"git","directory":"packages/silo-analytics"},"_npmVersion":"11.13.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@thumbmarkjs/thumbmarkjs":"^1.9.1","@segment/analytics-consent-tools":"^2.0.3"},"_hasShrinkwrap":false,"devDependencies":{"postgres":"^3.4.9","bun-types":"^1.3.14","@types/bun":"latest","typescript":"latest","@playwright/test":"^1.60.0","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_2.1.3_1781620153465_0.9412758710732045","host":"s3://npm-registry-packages-npm-production"}},"2.1.4":{"name":"@adpharm/silo-analytics","version":"2.1.4","_id":"@adpharm/silo-analytics@2.1.4","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://silo.docs.adpharm.digital","bugs":{"url":"https://github.com/adpharm/silo-services/issues"},"dist":{"shasum":"1aea4427447692ffd05c2410b0a146d22ad6f104","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-2.1.4.tgz","fileCount":19,"integrity":"sha512-KDDyaYmwn6gyx9eGBslUZZocOIGChQEm/bnZmuCMSU8dF5ttgFuA8C9hxohUWy7JxfQU3rAsqCcYMRLOkDY+Iw==","signatures":[{"sig":"MEYCIQDbcMZ6O9G2ltNIyqEB2NO5unVTC18zzDDW984WcSFeqwIhALyqE2NQEiyDptev8KYP0VEZr9JcWq4gSO2f9v0eVMBu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":443699},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"2d4e0c49ecea99e42ad0fd16a4c980cbf4f44375","scripts":{"build":"rm -rf dist && bun build ./src/index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","build:cdn":"rm -rf dist-cdn && bun build ./src/cdn-entry.ts --target browser --format=iife --minify --outfile ./dist-cdn/silo-analytics.min.js && bun build ./src/index.ts --target browser --minify --outfile ./dist-cdn/silo-analytics.esm.js","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"bh1","email":"bhonda89@gmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-services.git","type":"git","directory":"packages/silo-analytics"},"_npmVersion":"11.13.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@thumbmarkjs/thumbmarkjs":"^1.9.1","@segment/analytics-consent-tools":"^2.0.3"},"_hasShrinkwrap":false,"devDependencies":{"postgres":"^3.4.9","bun-types":"^1.3.14","@types/bun":"latest","typescript":"latest","@playwright/test":"^1.60.0","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_2.1.4_1781633519645_0.18726588822153611","host":"s3://npm-registry-packages-npm-production"}},"2.1.5":{"name":"@adpharm/silo-analytics","version":"2.1.5","_id":"@adpharm/silo-analytics@2.1.5","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://silo.docs.adpharm.digital","bugs":{"url":"https://github.com/adpharm/silo-services/issues"},"dist":{"shasum":"779f39dec5c86d49939fd8a782f84a95611a8097","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-2.1.5.tgz","fileCount":19,"integrity":"sha512-T8vv0Oas8Ho0k00jllTCv7iA7QsADCXVxv8DN2vXQTNyKOD0mrT8CtMBxetZi/Qr5TmHJ3kYilIKG2OrBOwkZA==","signatures":[{"sig":"MEUCICP/TvQnb6UmarGgw9X+JFtJy/7zHAssmXP+mtwFjBcQAiEA5BcCszI+5z/V3BjO0wX8oNkdi7XjgBD3uGPT/nLniIU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":443132},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"caeb81b2d91b874fd0ff321e0d8cf85a8a1cb029","scripts":{"build":"rm -rf dist && bun build ./src/index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly","build:cdn":"rm -rf dist-cdn && bun build ./src/cdn-entry.ts --target browser --format=iife --minify --outfile ./dist-cdn/silo-analytics.min.js && bun build ./src/index.ts --target browser --minify --outfile ./dist-cdn/silo-analytics.esm.js","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"bh1","email":"bhonda89@gmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-services.git","type":"git","directory":"packages/silo-analytics"},"_npmVersion":"11.13.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@thumbmarkjs/thumbmarkjs":"^1.9.1","@segment/analytics-consent-tools":"^2.0.3"},"_hasShrinkwrap":false,"devDependencies":{"postgres":"^3.4.9","bun-types":"^1.3.14","@types/bun":"latest","typescript":"latest","@playwright/test":"^1.60.0","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_2.1.5_1781637830782_0.5399920961167075","host":"s3://npm-registry-packages-npm-production"}},"2.1.6":{"name":"@adpharm/silo-analytics","version":"2.1.6","_id":"@adpharm/silo-analytics@2.1.6","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://silo.docs.adpharm.digital","bugs":{"url":"https://github.com/adpharm/silo-services/issues"},"dist":{"shasum":"03da12fb1c36988f1307c8eea7bad3fabee5d470","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-2.1.6.tgz","fileCount":21,"integrity":"sha512-v5EZE7Y7LDfHFDK9dHIlPbYtqPI40H8sRksjKHUHFGxmU+QJmGiQ2/GIqQjqP/ePRbOwBTvXHedb5dsmfBM+pg==","signatures":[{"sig":"MEQCIBsltP1tZUMOr56pWBGH0W9kNCd7o3iRKizgfh9+IhCaAiAi4oMXcM+pMGLiVhConDMLv03J+aRldHD+bVVTKtQTIw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":445722},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"720aea12728d9b1a644dff60415183ed52fc00f3","scripts":{"build":"rm -rf dist && bun build ./src/index.ts --outdir ./dist --target browser --define __SILO_VERSION__=\"\\\"$npm_package_version\\\"\" && tsc --emitDeclarationOnly","build:cdn":"rm -rf dist-cdn && bun build ./src/cdn-entry.ts --target browser --format=iife --minify --define __SILO_VERSION__=\"\\\"$npm_package_version\\\"\" --outfile ./dist-cdn/silo-analytics.min.js && bun build ./src/index.ts --target browser --minify --define __SILO_VERSION__=\"\\\"$npm_package_version\\\"\" --outfile ./dist-cdn/silo-analytics.esm.js","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"bh1","email":"bhonda89@gmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-services.git","type":"git","directory":"packages/silo-analytics"},"_npmVersion":"11.13.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@thumbmarkjs/thumbmarkjs":"^1.9.1","@segment/analytics-consent-tools":"^2.0.3"},"_hasShrinkwrap":false,"devDependencies":{"postgres":"^3.4.9","bun-types":"^1.3.14","@types/bun":"latest","typescript":"latest","@playwright/test":"^1.60.0","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_2.1.6_1781723053904_0.9173037576597287","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@adpharm/silo-analytics","version":"2.2.0","_id":"@adpharm/silo-analytics@2.2.0","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"homepage":"https://silo.docs.adpharm.digital","bugs":{"url":"https://github.com/adpharm/silo-services/issues"},"dist":{"shasum":"1dca0301ada50509bd198b77f63a05844947654e","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-2.2.0.tgz","fileCount":23,"integrity":"sha512-emFCrdVhn2u/AmIEkqFoqS5mO2axJONQKaAiUpTqkwPe3PvvzRr1pC1MCZ5Im6/w6EjQR/Qgcz+WLtaK5VMbfw==","signatures":[{"sig":"MEQCIFvexoRgJ47OStgs8gPu+oVcDY7ksNbtrNa5S6n6SKhGAiATbtPiPLbdUycRs3yt6Ib8NnNJeObkKhaOLdzpj7omfg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":449344},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"4b64157d0b5d5e75181714befc6e0ceecd3c5a18","scripts":{"build":"rm -rf dist && bun build ./src/index.ts --outdir ./dist --target browser --define __SILO_VERSION__=\"\\\"$npm_package_version\\\"\" && tsc --emitDeclarationOnly","build:cdn":"rm -rf dist-cdn && bun build ./src/cdn-entry.ts --target browser --format=iife --minify --define __SILO_VERSION__=\"\\\"$npm_package_version\\\"\" --outfile ./dist-cdn/silo-analytics.min.js && bun build ./src/index.ts --target browser --minify --define __SILO_VERSION__=\"\\\"$npm_package_version\\\"\" --outfile ./dist-cdn/silo-analytics.esm.js","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"bh1","email":"bhonda89@gmail.com"},"repository":{"url":"git+https://github.com/adpharm/silo-services.git","type":"git","directory":"packages/silo-analytics"},"_npmVersion":"11.13.0","description":"Custom Segment wrapper with automatic Time on Page tracking","directories":{},"_nodeVersion":"24.17.0","dependencies":{"@thumbmarkjs/thumbmarkjs":"^1.9.1","@segment/analytics-consent-tools":"^2.0.3"},"_hasShrinkwrap":false,"devDependencies":{"postgres":"^3.4.9","bun-types":"^1.3.14","@types/bun":"latest","typescript":"latest","@types/node":"^26.0.0","@playwright/test":"^1.60.0","@segment/analytics-next":"^1.82.0"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"_npmOperationalInternal":{"tmp":"tmp/silo-analytics_2.2.0_1782502905046_0.12722776417912618","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"@adpharm/silo-analytics","version":"2.2.1","description":"Custom Segment wrapper with automatic Time on Page tracking","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","type":"module","scripts":{"build":"rm -rf dist && bun build ./src/index.ts --outdir ./dist --target browser --define __SILO_VERSION__=\"\\\"$npm_package_version\\\"\" && tsc --emitDeclarationOnly","build:cdn":"rm -rf dist-cdn && bun build ./src/cdn-entry.ts --target browser --format=iife --minify --define __SILO_VERSION__=\"\\\"$npm_package_version\\\"\" --outfile ./dist-cdn/silo-analytics.min.js && bun build ./src/index.ts --target browser --minify --define __SILO_VERSION__=\"\\\"$npm_package_version\\\"\" --outfile ./dist-cdn/silo-analytics.esm.js","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"peerDependencies":{"@segment/analytics-next":"^1.82.0"},"devDependencies":{"@playwright/test":"^1.60.0","@segment/analytics-next":"^1.82.0","@types/bun":"latest","@types/node":"^26.0.0","bun-types":"^1.3.14","postgres":"^3.4.9","typescript":"latest"},"homepage":"https://silo.docs.adpharm.digital","repository":{"type":"git","url":"git+https://github.com/adpharm/silo-services.git","directory":"packages/silo-analytics"},"dependencies":{"@segment/analytics-consent-tools":"^2.0.3","@thumbmarkjs/thumbmarkjs":"^1.9.1"},"gitHead":"53b5d607c7270fb3634881099d59451be647c13f","_id":"@adpharm/silo-analytics@2.2.1","bugs":{"url":"https://github.com/adpharm/silo-services/issues"},"_nodeVersion":"24.17.0","_npmVersion":"11.13.0","dist":{"integrity":"sha512-XAGPaWgHp2FAXpiaIoH5A9uDvUPnqJUyoXLP74Gc0qAQF6oqzya/EbsHrmXbUy0/37IsE5bFvgU+nh73UCNsAQ==","shasum":"a7aecf129b0dfc8eda72b17a8205c418dfbc84c3","tarball":"https://registry.npmjs.org/@adpharm/silo-analytics/-/silo-analytics-2.2.1.tgz","fileCount":24,"unpackedSize":454008,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGTscJWk3hSRHDnHaBETTK7CN/S6pcbhADgMf1NZdNDDAiEAmmDhsoNpd3Sq3HqnAs2tAcBlyHJUx3txDf6tyCilE6k="}]},"_npmUser":{"name":"bh1","email":"bhonda89@gmail.com"},"directories":{},"maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/silo-analytics_2.2.1_1782919216011_0.21145062134311088"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-26T19:21:55.917Z","modified":"2026-07-01T15:20:16.456Z","1.0.0":"2026-03-26T19:21:56.200Z","1.0.1":"2026-03-26T19:53:47.486Z","1.0.2":"2026-03-26T20:08:17.064Z","1.0.3":"2026-03-26T21:03:03.313Z","1.0.4":"2026-03-26T21:21:37.378Z","1.0.5":"2026-03-26T21:36:40.642Z","1.0.6":"2026-03-27T17:24:57.497Z","2.0.0":"2026-06-05T18:02:53.785Z","2.0.1":"2026-06-09T14:00:42.738Z","2.1.0":"2026-06-12T19:22:41.247Z","2.1.1":"2026-06-15T20:07:01.729Z","2.1.2":"2026-06-15T20:26:21.778Z","2.1.3":"2026-06-16T14:29:13.611Z","2.1.4":"2026-06-16T18:11:59.809Z","2.1.5":"2026-06-16T19:23:50.919Z","2.1.6":"2026-06-17T19:04:14.076Z","2.2.0":"2026-06-26T19:41:45.198Z","2.2.1":"2026-07-01T15:20:16.250Z"},"bugs":{"url":"https://github.com/adpharm/silo-services/issues"},"homepage":"https://silo.docs.adpharm.digital","repository":{"type":"git","url":"git+https://github.com/adpharm/silo-services.git","directory":"packages/silo-analytics"},"description":"Custom Segment wrapper with automatic Time on Page tracking","maintainers":[{"name":"bentejas","email":"bentejas@hotmail.com"},{"name":"bh1","email":"bhonda89@gmail.com"}],"readme":"# @adpharm/silo-analytics\n\nA drop-in replacement for `@segment/analytics-next` that adds automatic **Time on Page** tracking with built-in guardrails for SPAs (React Router) and SSR environments.\n\n📖 **Documentation: [silo.docs.adpharm.digital](https://silo.docs.adpharm.digital/)**\n\n## Features\n\n- **Zero-Config Tracking**: Automatically tracks `Page Time Spent` events.\n- **SPA Ready**: Smartly handles internal route changes by listening to Segment `page` events + browser back/forward via `popstate`.\n- **Tab & Visibility Aware**: Pauses/resumes tracking when users switch tabs or minimize the browser; honors the GA4 three-condition rule (visible AND focused AND in pageshow→pagehide).\n- **Bounded-Exponential Heartbeat**: Periodic dispatches on a 30→60→120→240→480→600s schedule cap data loss on browser crash / mobile tab-kill to ≤ one schedule-step.\n- **Scroll Depth**: Each beacon carries `scroll_depth_max_px` (deterministic peak `scrollY`) plus, when the page is scrollable, `est_scroll_depth_max_pct` + `est_scroll_depth_pct`. The `est_` prefix encodes lossiness — see Scroll Depth section.\n- **Consent-Gated**: Client-side consent gate — when the visitor denies the analytics category (or sends GPC), silo collects nothing (no events, beacons, or ubid). Per-writeKey opt-in / opt-out regime. `@segment/analytics-consent-tools` still gates third-party device-mode pixels.\n- **Data Quality Guardrails**:\n  - **5s Threshold**: Ignores \"bounces\" (sessions under 5 seconds).\n  - **15m Cap**: Prevents skewed data from \"zombie tabs\" by capping events at 900 seconds.\n  - **Idle Detection**: Engagement timer pauses after 30s of zero user input (GA4 \"AFK reading\" weakness).\n- **Reliable Delivery**: `pagehide` + `visibilitychange` + Safari-only `beforeunload`; failed beacons persist to `localStorage` and replay on next page load (50-entry cap).\n\n## Installation\n\nRemove the standard Segment package and replace it with this wrapper:\n\n```bash\nbun remove @segment/analytics-next\nbun add @adpharm/silo-analytics\n```\n\n> `@segment/analytics-next` is a **peer dependency** — removing your direct install is fine, the package manager keeps it present transitively. You import everything from `@adpharm/silo-analytics` instead (it re-exports the full analytics-next surface unchanged).\n\n## Usage\n\nThe minimum setup — one call, plugin auto-registered with sensible defaults:\n\n```ts\nimport { AnalyticsBrowser } from \"@adpharm/silo-analytics\";\n\nexport const analytics = AnalyticsBrowser.load({\n  writeKey: \"your-write-key\",\n  env: window.env.PUBLIC_APP_ENV, // optional, namespaces storage keys per env\n});\n```\n\n> **Pass `env` if your environments share an apex domain** (e.g. `app.example.com` and `staging.example.com`). Without it, all envs read the same cookie key and you'll see anonymousIds bleed across deployments. Single-env or different-apex setups don't need it.\n\nDefaults applied internally:\n\n- `cdnURL` → `https://cdn.silo.adpharm.digital`\n- `timeOnPage.apiHost` → `https://event-gateway.silo.adpharm.digital/v1/t`\n- `timeOnPage.writeKey` → inherits from the top-level `writeKey`\n- Storage keys → `ajs_user_id_${writeKey}_${env}` and `ajs_user_traits_${writeKey}_${env}` (no suffix if `env` is omitted)\n\n### Overrides\n\nPass anything you want to customize. `timeOnPage` is `Partial<>` — only override the fields you care about.\n\n```ts\nconst analytics = AnalyticsBrowser.load({\n  writeKey: \"your-write-key\",\n  env: \"production\",\n  cdnURL: \"https://your-cdn.example.com\", // override\n  timeOnPage: {\n    minSeconds: 10, // partial override; apiHost + writeKey still default\n    maxSeconds: 1800, // cap events at 30m instead of the 900s default\n    idleSeconds: 60, // pause engagement after 60s of no input (0 disables)\n    eventName: \"Engagement\", // beacon event name (default \"Page Time Spent\")\n    heartbeatSchedule: [60, 120, 240], // custom backoff (false disables)\n    scrollTracking: false, // opt out of scroll-depth fields\n  },\n  user: { cookie: { key: \"custom_cookie_key\" } }, // full override\n});\n```\n\n## Scroll Depth\n\nEvery beacon (heartbeat, internal_nav, terminal) carries up to three scroll fields:\n\n| Field | Type | Always emitted? |\n|---|---|---|\n| `scroll_depth_max_px` | integer | yes (when `scrollTracking !== false`) |\n| `est_scroll_depth_max_pct` | integer | only when page is real-scrollable |\n| `est_scroll_depth_pct` | integer | only when page is real-scrollable |\n\n**Convention: `est_` prefix means \"denominator can shift.\"** The pct fields are computed as `scrollY / (scrollHeight - viewportHeight)`. Both terms can change mid-session — lazy images, font swap, ad injection, infinite scroll. The `est_` prefix encodes that lossiness in the field name so analysts can't accidentally build KPIs on the noisy signal without seeing the warning.\n\nThe `_px` field doesn't carry the prefix because `scrollY` is a deterministic browser-API integer. Trust it. Use it for absolute thresholds (\"user scrolled past 2400px\").\n\n**Reset boundaries.** Scroll state resets when `page_view_id` rolls — i.e. SPA navigation (`analytics.page()` or popstate) and bfcache restore. Tab-switch-back does NOT reset (same page-view from the server's perspective). \n\n**Reliability across rendering modes** (rough estimates, not measured):\n- Static / classic MPA: `_px` ~95% reliable, `_pct` ~90%.\n- SSR with client-routing (Next App Router, Remix): same as MPA for first page, ~80% on subsequent SPA navs — requires `analytics.page()` on route change.\n- Client-only SPA: `_px` ~85%, `_pct` ~70% (denominator unstable longer post-load).\n- Infinite-scroll feeds: `_px` reliable, `_pct` near-meaningless — the prefix is doing its job here.\n\n**To disable entirely:** `timeOnPage: { scrollTracking: false }`. All three fields are then suppressed on every beacon.\n\n## Server-Side Deduplication\n\nEvery beacon carries three identifiers so your server can collapse retries that the in-process dedup flag can't catch (e.g. a `sendBeacon` that the browser silently re-delivers, or a heartbeat racing its successor):\n\n| Field | Location | Meaning |\n|---|---|---|\n| `messageId` | top-level | UUID, unique per beacon — the dedup key for \"is this the same physical send?\" |\n| `properties.page_view_id` | per beacon | UUID, stable for one view of one URL; rolls on SPA nav (`analytics.page()` / popstate) and bfcache restore, **not** on tab-switch-back |\n| `properties.sequence` | per beacon | integer counter, increments per beacon within a `page_view_id` |\n\nCollapse on `messageId` for exact-retry dedup; group by `(page_view_id, sequence)` to reconstruct a single page-view's beacon stream in order.\n\n> The full beacon shape is exported as the `SiloBeacon` / `SiloBeaconProperties` / `SiloBeaconContext` TypeScript types — import them into your server-side ingestion code so the wire contract stays in sync with the library.\n\n## Consent\n\nConsent is a **client-side gate**: when the visitor's CMP denies the `analytics` category (or GPC is on), silo sends nothing — no events, beacons, or ubid. Per-writeKey opt-in / opt-out regime; `@segment/analytics-consent-tools` still gates third-party device-mode pixels. Wire it once with `consent.getCategories` (+ `onConsentChanged` for live updates).\n\n**The full guide is the single source of truth — how it works, precedence, opt-in/out, `map`, `offlineFallbackMode`, ubid, and CMP recipes (OneTrust / TCF / custom): [Consent docs](https://silo.docs.adpharm.digital/consent/).**\n\n## Remote Settings\n\nOn boot, `load()` fetches the CDN settings JSON for your writeKey itself, hands it to `analytics-next` (which then skips its own fetch — request count unchanged), and reads a custom `silo` block out of it. Features can be toggled and tuned per writeKey from the settings document, with **no redeploy** of the consuming site:\n\n```jsonc\n{\n  \"integrations\": { \"...\": \"standard Segment fields\" },\n  \"silo\": {\n    \"timeOnPage\": { \"enabled\": true, \"idleSeconds\": 60 },\n    \"consent\": { \"mode\": \"opt-out\" }\n  }\n}\n```\n\nPrecedence: plugin defaults < code config < **remote settings** (remote wins). The block is partial — omitted fields fall through to code config. If the settings fetch fails, the library loads with pure code config and lets `analytics-next` fetch the settings itself — remote unreachable behaves exactly like a library without remote settings.\n\nThe block's shape is exported as the `SiloRemoteSettings` / `SiloRemoteTimeOnPage` / `SiloRemoteConsent` types. Full option tables: [Remote Settings docs](https://silo.docs.adpharm.digital/remote-settings/).\n","readmeFilename":"README.md"}