{"_id":"@tracetail/angular","_rev":"13-c142585b6dd087849c98115605dd77c9","name":"@tracetail/angular","dist-tags":{"latest":"2.3.15"},"versions":{"2.3.3":{"name":"@tracetail/angular","version":"2.3.3","keywords":["tracetail","fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification"],"author":{"name":"TraceTail Inc."},"license":"MIT","_id":"@tracetail/angular@2.3.3","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"homepage":"https://github.com/tracetail/tracetail#readme","bugs":{"url":"https://github.com/tracetail/tracetail/issues"},"dist":{"shasum":"316326e78da29345d5c5ab9785c04aff16d29be9","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.3.tgz","fileCount":23,"integrity":"sha512-o62veAg9NSDrQTRV6n/HEVGCKfJSnuFpHBcfgdFbxIdySbR9rm74Fv7qC+l3p52pyxBSoEdZdNq0MEjfbeWt8w==","signatures":[{"sig":"MEUCIQCarc3S4eaIZ9d8a1QD7PQD/5RU6LpIWKQ66tKy1OpN3QIgZ330Q88GPj5CxXBYU5JPfzc4gCSTtRPTaSYA9qyvzR4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107827},"main":"dist/index.js","module":"dist/index.esm.js","gitHead":"c0f4f3f9acedaa39413251b58bfe3e8415a04454","scripts":{"lint":"ng lint","test":"ng test","build":"ng-packagr -p ng-package.json","prepublishOnly":"npm run build"},"typings":"dist/index.d.ts","_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"repository":{"url":"git+https://github.com/tracetail/tracetail.git","type":"git"},"_npmVersion":"11.4.2","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@tracetail/js":"^2.3.3"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"rxjs":"^7.8.0","tslib":"^2.6.0","zone.js":"^0.14.0","ng-packagr":"^17.0.0","typescript":"~5.2.0","@angular/core":"^17.0.0","@angular/common":"^17.0.0","@angular/router":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/angular_2.3.3_1754929761309_0.20085894756104428","host":"s3://npm-registry-packages-npm-production"}},"2.3.4":{"name":"@tracetail/angular","version":"2.3.4","keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"author":{"name":"TraceTail Inc."},"license":"MIT","_id":"@tracetail/angular@2.3.4","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"homepage":"https://demo-angular.tracetail.io","bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"dist":{"shasum":"dc8d9f9f8a6bc36d9030ea41dbba712a429da9f7","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.4.tgz","fileCount":23,"integrity":"sha512-z4TGqB3p7ERE4n2RBnM5ehGUohLnGAmTLA+aDGeWUcye+6IhinzYfWC+6pdHIQCDoVXdDJJwidWYULTxkEq8VA==","signatures":[{"sig":"MEUCIAptGlkbk/AD2nY2VAN67GkL5pseG+PsCCIiHx4SKlhVAiEAkgR+k7NY8nKm10i09Hd/YQfAjSs3sfOOQehSZ2QsHsQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":108044},"main":"dist/index.js","module":"dist/index.esm.js","gitHead":"399db2ce5bf979fdbf3c716d6f5cea2b742dea3d","scripts":{"lint":"ng lint","test":"ng test","build":"ng-packagr -p ng-package.json","prepublishOnly":"npm run build"},"typings":"dist/index.d.ts","_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"repository":{"url":"git+https://github.com/tracetail/tracetail-js.git","type":"git","directory":"packages/angular"},"_npmVersion":"11.4.2","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@tracetail/js":"^2.3.4"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"rxjs":"^7.8.0","tslib":"^2.6.0","zone.js":"^0.14.0","ng-packagr":"^17.0.0","typescript":"~5.2.0","@angular/core":"^17.0.0","@angular/common":"^17.0.0","@angular/router":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/angular_2.3.4_1760270503566_0.09790472748925305","host":"s3://npm-registry-packages-npm-production"}},"2.3.5":{"name":"@tracetail/angular","version":"2.3.5","keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"author":{"name":"TraceTail Inc."},"license":"MIT","_id":"@tracetail/angular@2.3.5","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"homepage":"https://demo-angular.tracetail.io","bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"dist":{"shasum":"bb51662adabb02a80b24766c5317e43b5315cbab","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.5.tgz","fileCount":23,"integrity":"sha512-vXRnyq5Eru4nlMEQF5LJOgxuI/AoUDvJnA9JHSrarKB2VkOZNElH9QX+P/XXsSUNOB3uyOibhGAFRdi1xw93IA==","signatures":[{"sig":"MEUCIBX13c28QaYba5UwFc0pm5sld7WihT7QZGSA2qZtC60HAiEA94tAOZTdvILf2hZj2AO3BnvF6qqqdWjgQYdEpQYHzmw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":108899},"main":"dist/index.js","module":"dist/index.esm.js","gitHead":"4b870ab7bdb878499bb22ccd6403faf7eeb65acc","scripts":{"lint":"ng lint","test":"ng test","build":"ng-packagr -p ng-package.json","prepublishOnly":"npm run build"},"typings":"dist/index.d.ts","_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"repository":{"url":"git+https://github.com/tracetail/tracetail-js.git","type":"git","directory":"packages/angular"},"_npmVersion":"11.4.2","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@tracetail/js":"^2.3.3"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"rxjs":"^7.8.0","tslib":"^2.6.0","zone.js":"^0.14.0","ng-packagr":"^17.0.0","typescript":"~5.2.0","@angular/core":"^17.0.0","@angular/common":"^17.0.0","@angular/router":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/angular_2.3.5_1760434848590_0.7109530421085166","host":"s3://npm-registry-packages-npm-production"}},"2.3.6":{"name":"@tracetail/angular","version":"2.3.6","keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"author":{"name":"TraceTail Inc."},"license":"MIT","_id":"@tracetail/angular@2.3.6","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"homepage":"https://demo-angular.tracetail.io","bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"dist":{"shasum":"af9d0d56622210163febc5c6400e269b904e04a3","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.6.tgz","fileCount":23,"integrity":"sha512-z1qj2X4ABO1SA1wBAdophn8NOUygVZAwBgPKp5IIztAX5mFQ9UB8IaLyCJ6egn3umxWQSZeOSc/onqlwrYUleg==","signatures":[{"sig":"MEYCIQDuvca/TnxYDsXkcSOjaxzBqUBSojDfAbw8P+X2CKsFiQIhAOP/WMqiYjGqdYTr5ehmXIOJrlZVwZ2S/79e1hPgUDbL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":109503},"main":"dist/fesm2022/tracetail-angular.mjs","es2020":"dist/fesm2022/tracetail-angular.mjs","module":"dist/fesm2022/tracetail-angular.mjs","esm2020":"dist/esm2022/tracetail-angular.mjs","exports":{".":{"node":"./dist/fesm2022/tracetail-angular.mjs","types":"./dist/index.d.ts","es2015":"./dist/fesm2022/tracetail-angular.mjs","es2020":"./dist/fesm2022/tracetail-angular.mjs","default":"./dist/fesm2022/tracetail-angular.mjs","esm2020":"./dist/esm2022/tracetail-angular.mjs"}},"gitHead":"4b870ab7bdb878499bb22ccd6403faf7eeb65acc","scripts":{"lint":"ng lint","test":"ng test","build":"ng-packagr -p ng-package.json","prepublishOnly":"npm run build"},"typings":"dist/index.d.ts","_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"fesm2015":"dist/fesm2022/tracetail-angular.mjs","fesm2020":"dist/fesm2022/tracetail-angular.mjs","repository":{"url":"git+https://github.com/tracetail/tracetail-js.git","type":"git","directory":"packages/angular"},"_npmVersion":"11.4.2","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@tracetail/js":"^2.3.3"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"rxjs":"^7.8.0","tslib":"^2.6.0","zone.js":"^0.14.0","ng-packagr":"^17.0.0","typescript":"~5.2.0","@angular/core":"^17.0.0","@angular/common":"^17.0.0","@angular/router":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/angular_2.3.6_1760435118745_0.13659496572330942","host":"s3://npm-registry-packages-npm-production"}},"2.3.7":{"name":"@tracetail/angular","version":"2.3.7","keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"author":{"name":"TraceTail Inc."},"license":"MIT","_id":"@tracetail/angular@2.3.7","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"homepage":"https://demo.tracetail.io/angular","bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"dist":{"shasum":"fc2bfc8c772bf6d2ed53b8c5a6936e2d7214e790","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.7.tgz","fileCount":23,"integrity":"sha512-LvKXnQN/mcBwNUpjeUH/kHO8RxLZ7CM7S38F5/ql1YPnD8tOv6r+3Cm7um/Aruocog9eyH84mnHjVp6R4u7G+g==","signatures":[{"sig":"MEQCIGb5YiSV8CC0PmQvbPuOLPi9hQRs3/Orv9HSFvti4iXRAiBggz2a+2vL91NT882CcbDtzEkPK3j9+xlI4oRAkQTOzQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":109771},"main":"dist/fesm2022/tracetail-angular.mjs","es2020":"dist/fesm2022/tracetail-angular.mjs","module":"dist/fesm2022/tracetail-angular.mjs","esm2020":"dist/esm2022/tracetail-angular.mjs","exports":{".":{"node":"./dist/fesm2022/tracetail-angular.mjs","types":"./dist/index.d.ts","es2015":"./dist/fesm2022/tracetail-angular.mjs","es2020":"./dist/fesm2022/tracetail-angular.mjs","default":"./dist/fesm2022/tracetail-angular.mjs","esm2020":"./dist/esm2022/tracetail-angular.mjs"}},"gitHead":"b789e57b7716b0c8c54da142274932fbbbf6fef2","scripts":{"lint":"ng lint","test":"ng test","build":"ng-packagr -p ng-package.json","prepublishOnly":"npm run build"},"typings":"dist/index.d.ts","_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"fesm2015":"dist/fesm2022/tracetail-angular.mjs","fesm2020":"dist/fesm2022/tracetail-angular.mjs","repository":{"url":"git+https://github.com/tracetail/tracetail-js.git","type":"git","directory":"packages/angular"},"_npmVersion":"11.4.2","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@tracetail/js":"^2.3.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"rxjs":"^7.8.0","tslib":"^2.6.0","zone.js":"^0.14.0","ng-packagr":"^17.0.0","typescript":"~5.2.0","@angular/core":"^17.0.0","@angular/common":"^17.0.0","@angular/router":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/angular_2.3.7_1761232333617_0.30865367084740836","host":"s3://npm-registry-packages-npm-production"}},"2.3.8":{"name":"@tracetail/angular","version":"2.3.8","keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"author":{"name":"TraceTail Inc."},"license":"MIT","_id":"@tracetail/angular@2.3.8","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"homepage":"https://demo.tracetail.io/angular","bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"dist":{"shasum":"1b81063e47d7068bef8c0fcc9216798fbfce4473","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.8.tgz","fileCount":23,"integrity":"sha512-cWEUe4KFEW4z/GNnQuVkoVa9Kk4MxFH+wUZ2KJmfLSQuQx20TTFvF+zWtmUyN6+t4eHEKP+7epfRQXveQ1DQ2g==","signatures":[{"sig":"MEQCIBJU5puZJh//YI2bYgaVOBjaKAMbJHy0bG2Ne1PsxAxrAiA3X280UwY2CvG8O3VTdFptOScRVTXOz8xKp40hMWuRYA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110407},"main":"dist/fesm2022/tracetail-angular.mjs","es2020":"dist/fesm2022/tracetail-angular.mjs","module":"dist/fesm2022/tracetail-angular.mjs","esm2020":"dist/esm2022/tracetail-angular.mjs","exports":{".":{"node":"./dist/fesm2022/tracetail-angular.mjs","types":"./dist/index.d.ts","es2015":"./dist/fesm2022/tracetail-angular.mjs","es2020":"./dist/fesm2022/tracetail-angular.mjs","default":"./dist/fesm2022/tracetail-angular.mjs","esm2020":"./dist/esm2022/tracetail-angular.mjs"}},"gitHead":"2c3c4ccf8e5146bc3152888e82fc768afb293d16","scripts":{"lint":"ng lint","test":"ng test","build":"ng-packagr -p ng-package.json","prepublishOnly":"npm run build"},"typings":"dist/index.d.ts","_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"fesm2015":"dist/fesm2022/tracetail-angular.mjs","fesm2020":"dist/fesm2022/tracetail-angular.mjs","repository":{"url":"git+https://github.com/tracetail/tracetail-js.git","type":"git","directory":"packages/angular"},"_npmVersion":"11.4.2","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@tracetail/js":"^2.3.8"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"rxjs":"^7.8.0","tslib":"^2.6.0","zone.js":"^0.14.0","ng-packagr":"^17.0.0","typescript":"~5.2.0","@angular/core":"^17.0.0","@angular/common":"^17.0.0","@angular/router":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/angular_2.3.8_1763118015760_0.9948994516262546","host":"s3://npm-registry-packages-npm-production"}},"2.3.9":{"name":"@tracetail/angular","version":"2.3.9","keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"author":{"name":"TraceTail Inc."},"license":"MIT","_id":"@tracetail/angular@2.3.9","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"homepage":"https://demo.tracetail.io/angular","bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"dist":{"shasum":"b3649a4f802a608b6fd81700f82080518381dd45","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.9.tgz","fileCount":23,"integrity":"sha512-KqwKaGI3xFSgD+s6Jkr48un91s4nbbe5ehBCASo6JLNbkbioOcpNBkQfXFLndWqMz57TV7pTC8eX1QFcEhGvbg==","signatures":[{"sig":"MEUCIDMwifOFugv5zj4Z/l5cO/9fZ/fUunq+VsCagnSDHmqAAiEA6tnPn11f5PcgCoiNirKjxhLk2gKdRT/7SSwkvi3WXNg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110407},"main":"dist/fesm2022/tracetail-angular.mjs","es2020":"dist/fesm2022/tracetail-angular.mjs","module":"dist/fesm2022/tracetail-angular.mjs","esm2020":"dist/esm2022/tracetail-angular.mjs","exports":{".":{"node":"./dist/fesm2022/tracetail-angular.mjs","types":"./dist/index.d.ts","es2015":"./dist/fesm2022/tracetail-angular.mjs","es2020":"./dist/fesm2022/tracetail-angular.mjs","default":"./dist/fesm2022/tracetail-angular.mjs","esm2020":"./dist/esm2022/tracetail-angular.mjs"}},"gitHead":"821d42df589b77face8ae67c23edf01ad7dd41d5","scripts":{"lint":"ng lint","test":"ng test","build":"ng-packagr -p ng-package.json","prepublishOnly":"npm run build"},"typings":"dist/index.d.ts","_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"fesm2015":"dist/fesm2022/tracetail-angular.mjs","fesm2020":"dist/fesm2022/tracetail-angular.mjs","repository":{"url":"git+https://github.com/tracetail/tracetail-js.git","type":"git","directory":"packages/angular"},"_npmVersion":"11.4.2","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@tracetail/js":"^2.3.9"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"rxjs":"^7.8.0","tslib":"^2.6.0","zone.js":"^0.14.0","ng-packagr":"^17.0.0","typescript":"~5.2.0","@angular/core":"^17.0.0","@angular/common":"^17.0.0","@angular/router":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/angular_2.3.9_1768210829232_0.7940750073810476","host":"s3://npm-registry-packages-npm-production"}},"2.3.10":{"name":"@tracetail/angular","version":"2.3.10","keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"author":{"name":"TraceTail Inc."},"license":"MIT","_id":"@tracetail/angular@2.3.10","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"homepage":"https://demo.tracetail.io/angular","bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"dist":{"shasum":"e2180bf101a3b085ceb488182ed3f9e3e3557a4c","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.10.tgz","fileCount":23,"integrity":"sha512-sHHT9s/DmbAEztHkUtI1XmRcOkmDWEnCoELC4gv2tOKeKRWP4OUYgiv10+5fzZ2EWEZ/wHwlnDGQFBkONe9tTQ==","signatures":[{"sig":"MEUCIQCViG96gku2q3d0C97ZOB7imcsiUl5ge+WuZVa53CYb0wIgVeFT9iGnljrCr0/zfVNhE4yTVVM40OqyqM18euS6kz0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110408},"main":"dist/fesm2022/tracetail-angular.mjs","es2020":"dist/fesm2022/tracetail-angular.mjs","module":"dist/fesm2022/tracetail-angular.mjs","esm2020":"dist/esm2022/tracetail-angular.mjs","exports":{".":{"node":"./dist/fesm2022/tracetail-angular.mjs","types":"./dist/index.d.ts","es2015":"./dist/fesm2022/tracetail-angular.mjs","es2020":"./dist/fesm2022/tracetail-angular.mjs","default":"./dist/fesm2022/tracetail-angular.mjs","esm2020":"./dist/esm2022/tracetail-angular.mjs"}},"gitHead":"d3a6a53e3c8fc84ea4e38dc99b1937b26ba08408","scripts":{"lint":"ng lint","test":"ng test","build":"ng-packagr -p ng-package.json","prepublishOnly":"npm run build"},"typings":"dist/index.d.ts","_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"fesm2015":"dist/fesm2022/tracetail-angular.mjs","fesm2020":"dist/fesm2022/tracetail-angular.mjs","repository":{"url":"git+https://github.com/tracetail/tracetail-js.git","type":"git","directory":"packages/angular"},"_npmVersion":"10.9.4","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","directories":{},"_nodeVersion":"22.22.0","dependencies":{"@tracetail/js":"^2.3.9"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"rxjs":"^7.8.0","tslib":"^2.6.0","zone.js":"^0.14.0","ng-packagr":"^17.0.0","typescript":"~5.2.0","@angular/core":"^17.0.0","@angular/common":"^17.0.0","@angular/router":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/angular_2.3.10_1771365483309_0.35422309964153764","host":"s3://npm-registry-packages-npm-production"}},"2.3.11":{"name":"@tracetail/angular","version":"2.3.11","keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"author":{"name":"TraceTail Inc."},"license":"MIT","_id":"@tracetail/angular@2.3.11","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"homepage":"https://demo.tracetail.io/angular","bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"dist":{"shasum":"b956374dc2082c66a90477818d29b8f7939c696a","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.11.tgz","fileCount":23,"integrity":"sha512-i3ta57Oi2Ep2mOTgYiCRl2tw/GnFv3Qq2j6qCgPQlG19/mhmuDWPTTVN9fJV3ZNgJJ7Uf1IZcHTvk9CdAdCAuw==","signatures":[{"sig":"MEUCIAJieUwlH1PSAJfawLWB1xcZk3tWv3RL5b1HE7FOABJMAiEA4q1B1ilqhH/g2M2K6Oo00i9EdywjptqPKtjxYKNi/7s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110408},"main":"dist/fesm2022/tracetail-angular.mjs","es2020":"dist/fesm2022/tracetail-angular.mjs","module":"dist/fesm2022/tracetail-angular.mjs","esm2020":"dist/esm2022/tracetail-angular.mjs","exports":{".":{"node":"./dist/fesm2022/tracetail-angular.mjs","types":"./dist/index.d.ts","es2015":"./dist/fesm2022/tracetail-angular.mjs","es2020":"./dist/fesm2022/tracetail-angular.mjs","default":"./dist/fesm2022/tracetail-angular.mjs","esm2020":"./dist/esm2022/tracetail-angular.mjs"}},"gitHead":"2d9f0a52a81affa641a6c696d45db8767b54f027","scripts":{"lint":"ng lint","test":"ng test","build":"ng-packagr -p ng-package.json","prepublishOnly":"npm run build"},"typings":"dist/index.d.ts","_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"fesm2015":"dist/fesm2022/tracetail-angular.mjs","fesm2020":"dist/fesm2022/tracetail-angular.mjs","repository":{"url":"git+https://github.com/tracetail/tracetail-js.git","type":"git","directory":"packages/angular"},"_npmVersion":"10.9.4","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","directories":{},"_nodeVersion":"22.22.0","dependencies":{"@tracetail/js":"^2.3.9"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"rxjs":"^7.8.0","tslib":"^2.6.0","zone.js":"^0.14.0","ng-packagr":"^17.0.0","typescript":"~5.2.0","@angular/core":"^17.0.0","@angular/common":"^17.0.0","@angular/router":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/angular_2.3.11_1771366115417_0.9327663034789406","host":"s3://npm-registry-packages-npm-production"}},"2.3.12":{"name":"@tracetail/angular","version":"2.3.12","keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"author":{"name":"TraceTail Inc."},"license":"MIT","_id":"@tracetail/angular@2.3.12","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"homepage":"https://demo.tracetail.io/angular","bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"dist":{"shasum":"c1a4ba9c1bc2e007fcd111c1a454bc5917151bef","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.12.tgz","fileCount":23,"integrity":"sha512-8qEe89ZndWBAmFDfDCKL4P0iqaGqleTUHb82E6jbUaR3j/io2Ul6WE9zRPm+SeiMeFtToHijFGqh1Z++SVCrPg==","signatures":[{"sig":"MEUCIC0h6E1NuggC4qO/QQnfEYtTN9p2Ts2sNzpbnt9KFZOAAiEAzdxRkqzwv7f6Rcb9Ro0tb+AtLaA+fQqTvhifxh5HzPU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":109572},"main":"dist/fesm2022/tracetail-angular.mjs","es2020":"dist/fesm2022/tracetail-angular.mjs","module":"dist/fesm2022/tracetail-angular.mjs","esm2020":"dist/esm2022/tracetail-angular.mjs","exports":{".":{"node":"./dist/fesm2022/tracetail-angular.mjs","types":"./dist/index.d.ts","es2015":"./dist/fesm2022/tracetail-angular.mjs","es2020":"./dist/fesm2022/tracetail-angular.mjs","default":"./dist/fesm2022/tracetail-angular.mjs","esm2020":"./dist/esm2022/tracetail-angular.mjs"}},"gitHead":"413872feaa46096eb0d9a3ceba442493f9b6c6fb","scripts":{"lint":"ng lint","test":"ng test","build":"ng-packagr -p ng-package.json","prepublishOnly":"npm run build"},"typings":"dist/index.d.ts","_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"fesm2015":"dist/fesm2022/tracetail-angular.mjs","fesm2020":"dist/fesm2022/tracetail-angular.mjs","repository":{"url":"git+https://github.com/tracetail/tracetail-js.git","type":"git","directory":"packages/angular"},"_npmVersion":"11.4.2","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@tracetail/js":"^2.3.12"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"rxjs":"^7.8.0","tslib":"^2.6.0","zone.js":"^0.14.0","ng-packagr":"^17.0.0","typescript":"~5.2.0","@angular/core":"^17.0.0","@angular/common":"^17.0.0","@angular/router":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/angular_2.3.12_1780437187840_0.3205439964128374","host":"s3://npm-registry-packages-npm-production"}},"2.3.13":{"name":"@tracetail/angular","version":"2.3.13","keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"author":{"name":"TraceTail Inc."},"license":"MIT","_id":"@tracetail/angular@2.3.13","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"homepage":"https://demo.tracetail.io/angular","bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"dist":{"shasum":"a8527b212f9796480b2b020f742e66af1dabd107","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.13.tgz","fileCount":23,"integrity":"sha512-HtXvTGbO+ym2W87O6wbMgMyotFiEoEJogLBnxsYXjHhmTzjlHLALkvO0YrWHvkFf2vPdPYrI3Ddd18Zj2sSEoA==","signatures":[{"sig":"MEYCIQDNjKSd0I+2IpduQOGrLcTA2svex16+NOE7wmbRseOrdQIhAP3PmMElr22iHZ8Nk8MuFTHmgn3YYFcbCLXy65WX0Uc5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110890},"main":"dist/fesm2022/tracetail-angular.mjs","es2020":"dist/fesm2022/tracetail-angular.mjs","module":"dist/fesm2022/tracetail-angular.mjs","esm2020":"dist/esm2022/tracetail-angular.mjs","exports":{".":{"node":"./dist/fesm2022/tracetail-angular.mjs","types":"./dist/index.d.ts","es2015":"./dist/fesm2022/tracetail-angular.mjs","es2020":"./dist/fesm2022/tracetail-angular.mjs","default":"./dist/fesm2022/tracetail-angular.mjs","esm2020":"./dist/esm2022/tracetail-angular.mjs"}},"gitHead":"ba59f898fde0011f1ec44c1402a95b93c5da2f79","scripts":{"lint":"ng lint","test":"ng test","build":"ng-packagr -p ng-package.json","prepublishOnly":"npm run build"},"typings":"dist/index.d.ts","_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"fesm2015":"dist/fesm2022/tracetail-angular.mjs","fesm2020":"dist/fesm2022/tracetail-angular.mjs","repository":{"url":"git+https://github.com/tracetail/tracetail-js.git","type":"git","directory":"packages/angular"},"_npmVersion":"11.4.2","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@tracetail/js":"^2.3.13"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"rxjs":"^7.8.0","tslib":"^2.6.0","zone.js":"^0.14.0","ng-packagr":"^17.0.0","typescript":"~5.2.0","@angular/core":"^17.0.0","@angular/common":"^17.0.0","@angular/router":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/angular_2.3.13_1780774592991_0.11959324228315737","host":"s3://npm-registry-packages-npm-production"}},"2.3.14":{"name":"@tracetail/angular","version":"2.3.14","keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"author":{"name":"TraceTail Inc."},"license":"MIT","_id":"@tracetail/angular@2.3.14","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"homepage":"https://demo.tracetail.io/angular","bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"dist":{"shasum":"b1b9c7efe897df714d1e185e8be1c27807065826","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.14.tgz","fileCount":23,"integrity":"sha512-zliuhhBnNKWr1QVi0r26e30eJ0nr0cLA8fmoiWVN68l0zt9/XaMuqQabom0hiBaTSbcVCx3Aup4prkU3x3J5Lw==","signatures":[{"sig":"MEYCIQDhflKbBvTIwoVyS9C3X3PBviW0mmjdoWA4zcKUzYyMmAIhALX6zUdyUF6QvL5ih6gwbBExuEOqU2//YMX8VqjCYNyN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110890},"main":"dist/fesm2022/tracetail-angular.mjs","es2020":"dist/fesm2022/tracetail-angular.mjs","module":"dist/fesm2022/tracetail-angular.mjs","esm2020":"dist/esm2022/tracetail-angular.mjs","exports":{".":{"node":"./dist/fesm2022/tracetail-angular.mjs","types":"./dist/index.d.ts","es2015":"./dist/fesm2022/tracetail-angular.mjs","es2020":"./dist/fesm2022/tracetail-angular.mjs","default":"./dist/fesm2022/tracetail-angular.mjs","esm2020":"./dist/esm2022/tracetail-angular.mjs"}},"gitHead":"43f9935ad40527531c3434b25aebf23fcbac99c4","scripts":{"lint":"ng lint","test":"ng test","build":"ng-packagr -p ng-package.json","prepublishOnly":"npm run build"},"typings":"dist/index.d.ts","_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"fesm2015":"dist/fesm2022/tracetail-angular.mjs","fesm2020":"dist/fesm2022/tracetail-angular.mjs","repository":{"url":"git+https://github.com/tracetail/tracetail-js.git","type":"git","directory":"packages/angular"},"_npmVersion":"11.4.2","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@tracetail/js":"^2.3.14"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"rxjs":"^7.8.0","tslib":"^2.6.0","zone.js":"^0.14.0","ng-packagr":"^17.0.0","typescript":"~5.2.0","@angular/core":"^17.0.0","@angular/common":"^17.0.0","@angular/router":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/angular_2.3.14_1780831992518_0.6518788244005267","host":"s3://npm-registry-packages-npm-production"}},"2.3.15":{"name":"@tracetail/angular","version":"2.3.15","description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","main":"dist/fesm2022/tracetail-angular.mjs","module":"dist/fesm2022/tracetail-angular.mjs","es2020":"dist/fesm2022/tracetail-angular.mjs","esm2020":"dist/esm2022/tracetail-angular.mjs","fesm2020":"dist/fesm2022/tracetail-angular.mjs","fesm2015":"dist/fesm2022/tracetail-angular.mjs","typings":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","esm2020":"./dist/esm2022/tracetail-angular.mjs","es2020":"./dist/fesm2022/tracetail-angular.mjs","es2015":"./dist/fesm2022/tracetail-angular.mjs","node":"./dist/fesm2022/tracetail-angular.mjs","default":"./dist/fesm2022/tracetail-angular.mjs"}},"scripts":{"build":"ng-packagr -p ng-package.json","test":"ng test","lint":"ng lint","prepublishOnly":"npm run build"},"homepage":"https://demo.tracetail.io/angular","repository":{"type":"git","url":"git+https://github.com/tracetail/tracetail-js.git","directory":"packages/angular"},"bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"author":{"name":"TraceTail Inc."},"license":"MIT","peerDependencies":{"@angular/common":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","@angular/core":"^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0","rxjs":"^7.0.0"},"dependencies":{"@tracetail/js":"^2.3.15"},"devDependencies":{"@angular/common":"^17.0.0","@angular/compiler":"^17.0.0","@angular/compiler-cli":"^17.0.0","@angular/core":"^17.0.0","@angular/platform-browser":"^17.0.0","@angular/platform-browser-dynamic":"^17.0.0","@angular/router":"^17.0.0","ng-packagr":"^17.0.0","rxjs":"^7.8.0","tslib":"^2.6.0","typescript":"~5.2.0","zone.js":"^0.14.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_id":"@tracetail/angular@2.3.15","gitHead":"cf4856615a7b2e6ea2c8b9b41e4a3a0f3306a000","_nodeVersion":"24.2.0","_npmVersion":"11.4.2","dist":{"integrity":"sha512-/9JdeH3Qcww4hvAe2GLC37174FRPkt+u3NoBgDT4uNWaZvzEVISENnx6TriyzDxoDdgZb5f4mwLEGwlVvsbceg==","shasum":"cdefb7217cf19287a4579cf4b989d7656a4aa570","tarball":"https://registry.npmjs.org/@tracetail/angular/-/angular-2.3.15.tgz","fileCount":23,"unpackedSize":115574,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCID44wW2s0X3PQCLnHBnwKRS4V50Wlh/lNRXCR27tMXztAiEArQtODwh6cxkaXkYUwRzmh+hE0pe5JZ079IsDUuvs/UE="}]},"_npmUser":{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"},"directories":{},"maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/angular_2.3.15_1780833940277_0.4342730068252443"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-11T16:29:21.202Z","modified":"2026-06-07T12:05:40.589Z","2.3.3":"2025-08-11T16:29:21.481Z","2.3.4":"2025-10-12T12:01:43.776Z","2.3.5":"2025-10-14T09:40:48.761Z","2.3.6":"2025-10-14T09:45:18.926Z","2.3.7":"2025-10-23T15:12:13.829Z","2.3.8":"2025-11-14T11:00:15.957Z","2.3.9":"2026-01-12T09:40:29.367Z","2.3.10":"2026-02-17T21:58:03.452Z","2.3.11":"2026-02-17T22:08:35.565Z","2.3.12":"2026-06-02T21:53:07.961Z","2.3.13":"2026-06-06T19:36:33.128Z","2.3.14":"2026-06-07T11:33:12.667Z","2.3.15":"2026-06-07T12:05:40.450Z"},"bugs":{"url":"https://github.com/tracetail/tracetail-js/issues"},"author":{"name":"TraceTail Inc."},"license":"MIT","homepage":"https://demo.tracetail.io/angular","keywords":["tracetail","fingerprinting","browser-fingerprinting","browser-fingerprint","device-fingerprint","fraud-detection","angular","security","identification","live-demo"],"repository":{"type":"git","url":"git+https://github.com/tracetail/tracetail-js.git","directory":"packages/angular"},"description":"Angular SDK for TraceTail browser fingerprinting - over 99.5% accuracy","maintainers":[{"name":"tracetail-publisher","email":"grubs_nurses09@icloud.com"}],"readme":"# @tracetail/angular\n\nOfficial Angular SDK for TraceTail - Enterprise Browser Fingerprinting with over 99.5% accuracy.\n\n[![npm version](https://img.shields.io/npm/v/@tracetail/angular.svg)](https://www.npmjs.com/package/@tracetail/angular)\n[![Downloads](https://img.shields.io/npm/dm/@tracetail/angular)](https://www.npmjs.com/package/@tracetail/angular)\n[![TypeScript](https://img.shields.io/badge/TypeScript-Ready-blue.svg)](https://www.typescriptlang.org/)\n[![Angular](https://img.shields.io/badge/Angular-14%2B-red.svg)](https://angular.io/)\n\n## Features\n\n- 🎯 **Over 99.5% Accuracy** - Industry-leading browser fingerprinting\n- ⚡ **<25ms Performance** - Lightning-fast fingerprint generation\n- 🛡️ **Fraud Detection** - Built-in risk scoring and fraud prevention\n- 🔄 **Real-time Updates** - Live visitor tracking and analytics\n- 📦 **27KB Bundle** - Lightweight and optimized\n- 🏗️ **Angular 14+** - Full support for modern Angular versions\n\n## Installation\n\n```bash\nnpm install @tracetail/angular\n```\n\n## Quick Start\n\n### 1. Import TraceTailModule\n\n```typescript\nimport { TraceTailModule } from '@tracetail/angular';\n\n@NgModule({\n  imports: [\n    TraceTailModule.forRoot({\n      apiKey: 'your-api-key-here',\n      config: {\n        enhanced: true\n      }\n    })\n  ]\n})\nexport class AppModule { }\n```\n\n### 2. Use in Components\n\n```typescript\nimport { TraceTailService } from '@tracetail/angular';\n\n@Component({\n  template: `\n    <div *ngIf=\"fingerprint$ | async as fp\">\n      Visitor: {{ fp.visitorId }}\n      Risk: {{ fp.riskScore }}\n    </div>\n  `\n})\nexport class MyComponent {\n  fingerprint$ = this.traceTail.fingerprint$;\n  \n  constructor(private traceTail: TraceTailService) {}\n}\n```\n\n## Features\n\n### 🔐 Fraud Detection Guard\n\nProtect routes from high-risk visitors:\n\n```typescript\nconst routes: Routes = [\n  {\n    path: 'checkout',\n    component: CheckoutComponent,\n    canActivate: [FraudProtectionGuard],\n    data: { maxRiskScore: 0.5 }\n  }\n];\n```\n\n### 🎨 Fraud Detection Directive\n\nApply fraud detection to any element:\n\n```html\n<button \n  appFraudDetection=\"high\" \n  [disableOnRisk]=\"true\"\n  class=\"purchase-btn\"\n>\n  Complete Purchase\n</button>\n```\n\n### 🔄 HTTP Interceptor\n\nAutomatically add visitor ID to all API requests:\n\n```typescript\n// Automatically included when using forRoot()\n// Adds X-TraceTail-Visitor-ID header to requests\n```\n\n### 📊 Sending app events\n\n`@tracetail/angular` does **not** implement a hosted event-tracking API. Instead, collect a fingerprint and send the identifiers you need to your own backend:\n\n```typescript\nasync onLogin(credentials: any) {\n  const fp = await this.traceTail.getFingerprint();\n\n  await this.http.post('/api/events/login', {\n    visitorId: fp.visitorId,\n    requestId: (fp as any).requestId,\n    username: credentials.username\n  }).toPromise();\n}\n```\n\n## API Reference\n\n### TraceTailService\n\n- `fingerprint$: Observable<Fingerprint>` - Current fingerprint data\n- `loading$: Observable<boolean>` - Loading state\n- `error$: Observable<Error>` - Error state\n- `getFingerprint(): Promise<Fingerprint>` - Get fingerprint as promise\n- `trackEvent(event, data?): Promise<TrackingResult>` - Throws a descriptive error because event ingestion must be implemented in your own backend or analytics pipeline\n- `checkFraud(data): Promise<FraudResult>` - Check fraud risk\n- `retry(): void` - Retry fingerprinting\n- `refresh(): Promise<void>` - Force refresh\n\n### Types\n\n```typescript\ninterface Fingerprint {\n  visitorId: string;\n  confidence: number;      // 0-1\n  riskScore: number;      // 0-1  \n  fraudulent: boolean;\n  signals: SignalData;\n  timestamp: Date;\n}\n```\n\n## Examples\n\n### Authentication Protection\n\n```typescript\n@Component({\n  template: `\n    <form (ngSubmit)=\"login()\">\n      <div *ngIf=\"(riskScore$ | async) > 0.7\" class=\"warning\">\n        High risk detected - additional verification required\n      </div>\n      <!-- form fields -->\n    </form>\n  `\n})\nexport class LoginComponent {\n  riskScore$ = this.traceTail.fingerprint$.pipe(\n    map(fp => fp?.riskScore || 0)\n  );\n  \n  constructor(private traceTail: TraceTailService) {}\n  \n  async login() {\n    const fp = await this.traceTail.getFingerprint();\n    if (fp.riskScore > 0.7) {\n      // Require 2FA\n    }\n  }\n}\n```\n\n### Personalization\n\n```typescript\n@Injectable()\nexport class PersonalizationService {\n  preferences$ = this.traceTail.fingerprint$.pipe(\n    switchMap(fp => fp ? \n      this.http.get(`/api/preferences/${fp.visitorId}`) :\n      of(null)\n    )\n  );\n  \n  constructor(\n    private traceTail: TraceTailService,\n    private http: HttpClient\n  ) {}\n}\n```\n\n## Support\n\n- 📚 [Documentation](https://docs.tracetail.com/angular)\n- 💬 [Discord Community](https://discord.gg/tracetail)\n- 📧 [Email Support](mailto:support@tracetail.io)\n- 🐛 [Issue Tracker](https://github.com/tracetail/tracetail/issues)\n\n## License\n\nMIT - see [LICENSE](LICENSE) for details.com/tracetail/tracetail/issues)\n\n## License\n\nMIT - see [LICENSE](LICENSE) for details.","readmeFilename":"README.md"}