{"_id":"@bradsearch/analytics-core","_rev":"11-6db9615bf36ee0fdb2b4ca751abae9a7","name":"@bradsearch/analytics-core","dist-tags":{"latest":"1.4.0"},"versions":{"1.0.0":{"name":"@bradsearch/analytics-core","version":"1.0.0","keywords":["analytics","tracking","umami","bradsearch","ecommerce","search-analytics"],"author":{"name":"BradSearch","email":"hello@bradsearch.com"},"license":"MIT","_id":"@bradsearch/analytics-core@1.0.0","maintainers":[{"name":"sramanauskas","email":"st.ramanauskas@gmail.com"},{"name":"bradcommerce","email":"hello@bradsearch.com"},{"name":"steponasinvertus","email":"steponas.kaminskas@invertus.eu"}],"dist":{"shasum":"b0b9bb4192669af7f2f4f1f01e890dba84141f78","tarball":"https://registry.npmjs.org/@bradsearch/analytics-core/-/analytics-core-1.0.0.tgz","fileCount":15,"integrity":"sha512-n+Q1m67k8ILp+P4f56t+5CjR0YL0PbAj5cgM7jJ7iPW5LgYpnHLMubvfRSHDs3UjVmiOoQFRav4MNAw4Kw98Vg==","signatures":[{"sig":"MEUCIQDGAaalyVQrTMl+cFpjHx5gLawyxY4cCiZ8a+zqDjdY0gIgP4fTO141QncMNWhNEGKV2TCTigqLCQakE2mrhhZiJ8A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68790},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"8d301c67d5d7aab8dd7a25219dc422fb3c8f4f99","scripts":{"dev":"rollup -c -w","lint":"eslint src/**/*.ts","test":"vitest run","build":"rollup -c","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"bradcommerce","email":"hello@bradsearch.com"},"_npmVersion":"10.8.2","description":"Pure TypeScript analytics library for BradSearch with Umami integration","directories":{},"_nodeVersion":"20.18.2","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^4.6.1","vitest":"^1.0.0","happy-dom":"^20.0.11","typescript":"^5.3.2","@types/node":"^20.10.0","rollup-plugin-dts":"^6.1.0","@vitest/coverage-v8":"^1.0.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.12.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.12.0"},"peerDependencies":{"typescript":">=4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/analytics-core_1.0.0_1765977694645_0.1028364148281875","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@bradsearch/analytics-core","version":"1.0.1","keywords":["analytics","tracking","umami","bradsearch","ecommerce","search-analytics"],"author":{"name":"BradSearch","email":"hello@bradsearch.com"},"license":"MIT","_id":"@bradsearch/analytics-core@1.0.1","maintainers":[{"name":"sramanauskas","email":"st.ramanauskas@gmail.com"},{"name":"bradcommerce","email":"hello@bradsearch.com"},{"name":"steponasinvertus","email":"steponas.kaminskas@invertus.eu"}],"dist":{"shasum":"7faad0fa037d0821955864cc06e71941c6fa9465","tarball":"https://registry.npmjs.org/@bradsearch/analytics-core/-/analytics-core-1.0.1.tgz","fileCount":15,"integrity":"sha512-KA/JJqWKIxT9rJllLVxIrwz4AFh5A2IDorfhYmmEvuYFWE7OSah8nnlaoO2UUKInP79z3zEzHrYhj9x4yESQMw==","signatures":[{"sig":"MEUCIFqXuO5ridTK8EEnTOqextuppYqVw87ulNWWeO/hS0vbAiEAsVq38A/kMdfNFJPBFI7VjKr3rA6XKcXNVZ2MOv06amE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85292},"main":"dist/index.js","_from":"file:bradsearch-analytics-core-1.0.1.tgz","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"scripts":{"dev":"rollup -c -w","lint":"eslint src/**/*.ts","test":"vitest run","build":"rollup -c","test:watch":"vitest","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradcommerce","email":"hello@bradsearch.com"},"_resolved":"/private/var/folders/tl/fb6sc6fd57d1fxgm9s32xqvh0000gn/T/7c624a9c4b1a2d6c8da4e140b04d0d80/bradsearch-analytics-core-1.0.1.tgz","_integrity":"sha512-KA/JJqWKIxT9rJllLVxIrwz4AFh5A2IDorfhYmmEvuYFWE7OSah8nnlaoO2UUKInP79z3zEzHrYhj9x4yESQMw==","_npmVersion":"10.8.2","description":"Pure TypeScript analytics library for BradSearch with Umami integration","directories":{},"_nodeVersion":"20.18.2","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^4.6.1","vitest":"^1.0.0","happy-dom":"^20.0.11","typescript":"^5.3.2","@types/node":"^20.10.0","rollup-plugin-dts":"^6.1.0","@vitest/coverage-v8":"^1.0.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.12.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.12.0"},"peerDependencies":{"typescript":">=4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/analytics-core_1.0.1_1765982034457_0.4580503227858739","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@bradsearch/analytics-core","version":"1.0.2","keywords":["analytics","tracking","umami","bradsearch","ecommerce","search-analytics"],"author":{"name":"BradSearch","email":"hello@bradsearch.com"},"license":"MIT","_id":"@bradsearch/analytics-core@1.0.2","maintainers":[{"name":"sramanauskas","email":"st.ramanauskas@gmail.com"},{"name":"bradcommerce","email":"hello@bradsearch.com"},{"name":"steponasinvertus","email":"steponas.kaminskas@invertus.eu"}],"dist":{"shasum":"cde12b532c08449633261d80a5cd70372ba1a35d","tarball":"https://registry.npmjs.org/@bradsearch/analytics-core/-/analytics-core-1.0.2.tgz","fileCount":15,"integrity":"sha512-n7mLPynrzti4RzYmWyXkzk8cufgIFwnBVTp/BfK/ivR7qNZjHzjjULUP6NVG66MdKpUFQLXcE25CYRupY1sLbw==","signatures":[{"sig":"MEUCIG2NeZLTxf/1kRV4lSwsqVv8usFh40FeZzAJf/lFwFZUAiEA+gxW5rvNF1c6HoHSyRSoTe190g6w8fyvzk6FBtw6ItU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":155494},"main":"dist/index.js","_from":"file:bradsearch-analytics-core-1.0.2.tgz","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"scripts":{"dev":"rollup -c -w","lint":"eslint src/**/*.ts","test":"vitest run","build":"rollup -c","test:watch":"vitest","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradcommerce","email":"hello@bradsearch.com"},"_resolved":"/private/var/folders/tl/fb6sc6fd57d1fxgm9s32xqvh0000gn/T/07f673c99a613e8ed2fa773c6c1214f6/bradsearch-analytics-core-1.0.2.tgz","_integrity":"sha512-n7mLPynrzti4RzYmWyXkzk8cufgIFwnBVTp/BfK/ivR7qNZjHzjjULUP6NVG66MdKpUFQLXcE25CYRupY1sLbw==","_npmVersion":"10.8.2","description":"Pure TypeScript analytics library for BradSearch with Umami integration","directories":{},"_nodeVersion":"20.18.2","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^4.6.1","vitest":"^1.0.0","happy-dom":"^20.0.11","typescript":"^5.3.2","@types/node":"^20.10.0","rollup-plugin-dts":"^6.1.0","@vitest/coverage-v8":"^1.0.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.12.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.12.0"},"peerDependencies":{"typescript":">=4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/analytics-core_1.0.2_1765986122765_0.23215396152382084","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@bradsearch/analytics-core","version":"1.0.4","keywords":["analytics","tracking","umami","bradsearch","ecommerce","search-analytics"],"author":{"name":"BradSearch","email":"hello@bradsearch.com"},"license":"MIT","_id":"@bradsearch/analytics-core@1.0.4","maintainers":[{"name":"sramanauskas","email":"st.ramanauskas@gmail.com"},{"name":"bradcommerce","email":"hello@bradsearch.com"},{"name":"steponasinvertus","email":"steponas.kaminskas@invertus.eu"}],"dist":{"shasum":"6ec822a37a08299147029307310b41c3d4569be1","tarball":"https://registry.npmjs.org/@bradsearch/analytics-core/-/analytics-core-1.0.4.tgz","fileCount":15,"integrity":"sha512-K4a92JMzvcQNFFcaUmY8R2O5MYcJtCL9+WSZhwfoyv3rCRxAa7euVxn8vmf6wWqWnVhgGTLWNQbtXntCrqVLVw==","signatures":[{"sig":"MEQCIBRpDEevNd1G1WoQt0/uekt0ludIWlgyzs3uKX7bIlx5AiA3ljX4l86lDyk90mSI38QW3lHHXsMfDvdBBW4byaUCow==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":155224},"main":"dist/index.js","_from":"file:bradsearch-analytics-core-1.0.4.tgz","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"scripts":{"dev":"rollup -c -w","lint":"eslint src/**/*.ts","test":"vitest run","build":"rollup -c","test:watch":"vitest","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradcommerce","email":"hello@bradsearch.com"},"_resolved":"/private/var/folders/tl/fb6sc6fd57d1fxgm9s32xqvh0000gn/T/ef1fcaf4c94975353f72a64afa38de38/bradsearch-analytics-core-1.0.4.tgz","_integrity":"sha512-K4a92JMzvcQNFFcaUmY8R2O5MYcJtCL9+WSZhwfoyv3rCRxAa7euVxn8vmf6wWqWnVhgGTLWNQbtXntCrqVLVw==","_npmVersion":"10.8.2","description":"Pure TypeScript analytics library for BradSearch with Umami integration","directories":{},"_nodeVersion":"20.18.2","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^4.6.1","vitest":"^1.0.0","happy-dom":"^20.0.11","typescript":"^5.3.2","@types/node":"^20.10.0","rollup-plugin-dts":"^6.1.0","@vitest/coverage-v8":"^1.0.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.12.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.12.0"},"peerDependencies":{"typescript":">=4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/analytics-core_1.0.4_1766062787245_0.8359794946604253","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@bradsearch/analytics-core","version":"1.0.5","keywords":["analytics","tracking","umami","bradsearch","ecommerce","search-analytics"],"author":{"name":"BradSearch","email":"hello@bradsearch.com"},"license":"MIT","_id":"@bradsearch/analytics-core@1.0.5","maintainers":[{"name":"sramanauskas","email":"st.ramanauskas@gmail.com"},{"name":"bradcommerce","email":"hello@bradsearch.com"},{"name":"steponasinvertus","email":"steponas.kaminskas@invertus.eu"}],"dist":{"shasum":"6bcae82e508c59a0284af615b797c55542a08bff","tarball":"https://registry.npmjs.org/@bradsearch/analytics-core/-/analytics-core-1.0.5.tgz","fileCount":15,"integrity":"sha512-VIHJAeM16ieX8TBhbi3U0qUM9FACPnd92LlbNP/0GaEsSonat8ok5HI6bUu9KNty7KukqfsIHJT9VLBdlPZ5jw==","signatures":[{"sig":"MEUCIQCqnhqpHVkzRp+aVymrPBObJam00/ncmV3F5WpwsnmzRAIgRrzSJS+DEYq+LU6DMHuNeN8zh8cdIY1+a6iV8p8dmgw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":154970},"main":"dist/index.js","_from":"file:bradsearch-analytics-core-1.0.5.tgz","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"scripts":{"dev":"rollup -c -w","lint":"eslint src/**/*.ts","test":"vitest run","build":"rollup -c","test:watch":"vitest","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bradcommerce","email":"hello@bradsearch.com"},"_resolved":"/private/var/folders/tl/fb6sc6fd57d1fxgm9s32xqvh0000gn/T/9ed064bbbc5824f76e8d6bb4ec820094/bradsearch-analytics-core-1.0.5.tgz","_integrity":"sha512-VIHJAeM16ieX8TBhbi3U0qUM9FACPnd92LlbNP/0GaEsSonat8ok5HI6bUu9KNty7KukqfsIHJT9VLBdlPZ5jw==","_npmVersion":"10.8.2","description":"Pure TypeScript analytics library for BradSearch with Umami integration","directories":{},"_nodeVersion":"20.18.2","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^4.6.1","vitest":"^1.0.0","happy-dom":"^20.0.11","typescript":"^5.3.2","@types/node":"^20.10.0","rollup-plugin-dts":"^6.1.0","@vitest/coverage-v8":"^1.0.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.12.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.12.0"},"peerDependencies":{"typescript":">=4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/analytics-core_1.0.5_1766064087900_0.6670536023797395","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@bradsearch/analytics-core","version":"1.1.0","keywords":["analytics","tracking","umami","bradsearch","ecommerce","search-analytics"],"author":{"name":"BradSearch","email":"hello@bradsearch.com"},"license":"MIT","_id":"@bradsearch/analytics-core@1.1.0","maintainers":[{"name":"sramanauskas","email":"st.ramanauskas@gmail.com"},{"name":"bradcommerce","email":"hello@bradsearch.com"},{"name":"steponasinvertus","email":"steponas.kaminskas@invertus.eu"}],"dist":{"shasum":"a3e5a58f9c1f735b98cee157f6fb52c9f06377ea","tarball":"https://registry.npmjs.org/@bradsearch/analytics-core/-/analytics-core-1.1.0.tgz","fileCount":18,"integrity":"sha512-f3EwVSmqMlviYUxaGkIs9hJiO0axRkfbXxRkaZyth2UFb4+Oya9B7VQjKiv0OxMOjAdjXnwmjBgjdG/0m4O+Pw==","signatures":[{"sig":"MEQCIEAk1KzNuhK0GzcnMl+nCG5taUFD69K3XqP881SoJWPjAiAkgGlG/vnckRqeO9QhLG9aWeYmv6s18dD7L1V6rTmldQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":162972},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"b10320ae7bd01d505cbf92de1a303354b1476af0","scripts":{"dev":"rollup -c -w","lint":"eslint src/**/*.ts","test":"vitest run","build":"rollup -c","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"bradcommerce","email":"hello@bradsearch.com"},"_npmVersion":"10.8.2","description":"Pure TypeScript analytics library for BradSearch with Umami integration","directories":{},"_nodeVersion":"20.18.2","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^4.6.1","vitest":"^1.0.0","happy-dom":"^20.0.11","typescript":"^5.3.2","@types/node":"^20.10.0","rollup-plugin-dts":"^6.1.0","@vitest/coverage-v8":"^1.0.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.12.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.12.0"},"peerDependencies":{"typescript":">=4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/analytics-core_1.1.0_1773144174847_0.8538345139427239","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@bradsearch/analytics-core","version":"1.1.1","keywords":["analytics","tracking","umami","bradsearch","ecommerce","search-analytics"],"author":{"name":"BradSearch","email":"hello@bradsearch.com"},"license":"MIT","_id":"@bradsearch/analytics-core@1.1.1","maintainers":[{"name":"sramanauskas","email":"st.ramanauskas@gmail.com"},{"name":"bradcommerce","email":"hello@bradsearch.com"},{"name":"steponasinvertus","email":"steponas.kaminskas@invertus.eu"}],"dist":{"shasum":"f15b5b94ffd94b26e2a4c0185e236682c93ffe3b","tarball":"https://registry.npmjs.org/@bradsearch/analytics-core/-/analytics-core-1.1.1.tgz","fileCount":18,"integrity":"sha512-8w8qQsD9tGbZAgzsgVdZYMuY3JtwmNVXNqZtUtgW7/HrcTRMuGwBlyUZfR0SA9GWpotss3rIIBvr7RQsXHquYw==","signatures":[{"sig":"MEYCIQCzgR3FZ1n3GWKzfhm46Xq0Pl6QFM2GTC+HOwhiouZnSwIhAJRC73v977bZpiNCy/R/Uo8Y8v93OM834TG4+fQFSWAG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":163562},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"7e099af1825746fb0a35221957db2e04ccf6e171","scripts":{"dev":"rollup -c -w","lint":"eslint src/**/*.ts","test":"vitest run","build":"rollup -c","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"bradcommerce","email":"hello@bradsearch.com"},"_npmVersion":"10.8.2","description":"Pure TypeScript analytics library for BradSearch with Umami integration","directories":{},"_nodeVersion":"20.18.2","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^4.6.1","vitest":"^1.0.0","happy-dom":"^20.0.11","typescript":"^5.3.2","@types/node":"^20.10.0","rollup-plugin-dts":"^6.1.0","@vitest/coverage-v8":"^1.0.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.12.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.12.0"},"peerDependencies":{"typescript":">=4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/analytics-core_1.1.1_1773148212353_0.5873729196265605","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@bradsearch/analytics-core","version":"1.1.2","keywords":["analytics","tracking","umami","bradsearch","ecommerce","search-analytics"],"author":{"name":"BradSearch","email":"hello@bradsearch.com"},"license":"MIT","_id":"@bradsearch/analytics-core@1.1.2","maintainers":[{"name":"sramanauskas","email":"st.ramanauskas@gmail.com"},{"name":"bradcommerce","email":"hello@bradsearch.com"},{"name":"steponasinvertus","email":"steponas.kaminskas@invertus.eu"}],"dist":{"shasum":"ea96bbce61d201b79e2cbfff4f58b1c519f6e11a","tarball":"https://registry.npmjs.org/@bradsearch/analytics-core/-/analytics-core-1.1.2.tgz","fileCount":18,"integrity":"sha512-Cx9lLHr1X2wkF44sgkpwYM9xG9pgNcsRvc4FVq9Bq9fVoW7Da3w2l4mzN2iZzShzB+58T+6SaCA3G8sBRWuZEA==","signatures":[{"sig":"MEYCIQC1h9czcpJDZAjTrfvntHLmvfoB7nn5egYzaOwjby32GQIhAMQVVLP+ZLML16UWXtZm7MlrF8kyGHZCqdcWvtLjcSZk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":163562},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"d84c3615bde0e2ec706d448f8dc6dd1b0563b7e7","scripts":{"dev":"rollup -c -w","lint":"eslint src/**/*.ts","test":"vitest run","build":"rollup -c","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"bradcommerce","email":"hello@bradsearch.com"},"_npmVersion":"10.8.2","description":"Pure TypeScript analytics library for BradSearch with Umami integration","directories":{},"_nodeVersion":"20.18.2","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^4.6.1","vitest":"^1.0.0","happy-dom":"^20.0.11","typescript":"^5.3.2","@types/node":"^20.10.0","rollup-plugin-dts":"^6.1.0","@vitest/coverage-v8":"^1.0.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.12.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.12.0"},"peerDependencies":{"typescript":">=4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/analytics-core_1.1.2_1773148913342_0.9288974059249613","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@bradsearch/analytics-core","version":"1.2.0","keywords":["analytics","tracking","umami","bradsearch","ecommerce","search-analytics"],"author":{"name":"BradSearch","email":"hello@bradsearch.com"},"license":"MIT","_id":"@bradsearch/analytics-core@1.2.0","maintainers":[{"name":"sramanauskas","email":"st.ramanauskas@gmail.com"},{"name":"bradcommerce","email":"hello@bradsearch.com"},{"name":"steponasinvertus","email":"steponas.kaminskas@invertus.eu"}],"dist":{"shasum":"0a9d5d489b4aef590572e1f150a9cf6ad74c9fbf","tarball":"https://registry.npmjs.org/@bradsearch/analytics-core/-/analytics-core-1.2.0.tgz","fileCount":18,"integrity":"sha512-g/MwkIpaRQvJeiWsZ9Gt8uC3//R/KLZM3rA8LGjOa4QhK7URM2NeamQTmc2PuKYNk5eE4VofvAmQ2m9pH/6X6g==","signatures":[{"sig":"MEUCIQCXJJTctREZBCZx/lOLzJLOaBBV2qkrAz2cx76nHoAL8gIgO/QwsirO9Ffkg3icuk2tVusZfGyaQdb+opalzG77Bsk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":163564},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"342fbd6908476c78198cdf6aecb29612eeb8520c","scripts":{"dev":"rollup -c -w","lint":"eslint src/**/*.ts","test":"vitest run","build":"rollup -c","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"bradcommerce","email":"hello@bradsearch.com"},"_npmVersion":"10.8.2","description":"Pure TypeScript analytics library for BradSearch with Umami integration","directories":{},"_nodeVersion":"20.18.2","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^4.6.1","vitest":"^1.0.0","happy-dom":"^20.0.11","typescript":"^5.3.2","@types/node":"^20.10.0","rollup-plugin-dts":"^6.1.0","@vitest/coverage-v8":"^1.0.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.12.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.12.0"},"peerDependencies":{"typescript":">=4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/analytics-core_1.2.0_1773341821159_0.34297704333977475","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@bradsearch/analytics-core","version":"1.3.0","keywords":["analytics","tracking","umami","bradsearch","ecommerce","search-analytics"],"author":{"name":"BradSearch","email":"hello@bradsearch.com"},"license":"MIT","_id":"@bradsearch/analytics-core@1.3.0","maintainers":[{"name":"sramanauskas","email":"st.ramanauskas@gmail.com"},{"name":"bradcommerce","email":"hello@bradsearch.com"},{"name":"steponasinvertus","email":"steponas.kaminskas@invertus.eu"}],"dist":{"shasum":"bfbf695c3ac16a1eb03e5d08863c09622d282599","tarball":"https://registry.npmjs.org/@bradsearch/analytics-core/-/analytics-core-1.3.0.tgz","fileCount":18,"integrity":"sha512-5NBckthetl4eIoDYi07TJ78Vwn+7RejydfSpxK386LqnUKLZHY0M9U8keVAZKgKsgeSZxRQ7oLh9UBkI+3y2xA==","signatures":[{"sig":"MEQCIFXNll/dyN6b6z5RCH8wJOKZJzm2rvcQ9vaRuzQ1GdPaAiA/KADVvbeBHPP/lZokOKnHA7yZ0SN0nO1fwAOzKuf7+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165130},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"1f20ac8ebc468f4cae8c463975aa7eba2ea7f0d2","scripts":{"dev":"rollup -c -w","lint":"eslint src/**/*.ts","test":"vitest run","build":"rollup -c","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"bradcommerce","email":"hello@bradsearch.com"},"_npmVersion":"10.8.2","description":"Pure TypeScript analytics library for BradSearch with Umami integration","directories":{},"_nodeVersion":"20.18.2","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^4.6.1","vitest":"^1.0.0","happy-dom":"^20.0.11","typescript":"^5.3.2","@types/node":"^20.10.0","rollup-plugin-dts":"^6.1.0","@vitest/coverage-v8":"^1.0.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.12.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.12.0"},"peerDependencies":{"typescript":">=4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/analytics-core_1.3.0_1774363189797_0.8885966479451306","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@bradsearch/analytics-core","version":"1.4.0","description":"Pure TypeScript analytics library for BradSearch with Umami integration","main":"dist/index.js","module":"dist/index.esm.js","types":"dist/index.d.ts","scripts":{"build":"rollup -c","dev":"rollup -c -w","test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","lint":"eslint src/**/*.ts","prepublishOnly":"npm run build"},"keywords":["analytics","tracking","umami","bradsearch","ecommerce","search-analytics"],"author":{"name":"BradSearch","email":"hello@bradsearch.com"},"license":"MIT","engines":{"node":">=16.0.0"},"devDependencies":{"@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-node-resolve":"^15.2.3","@rollup/plugin-typescript":"^11.1.5","@types/node":"^20.10.0","@typescript-eslint/eslint-plugin":"^6.12.0","@typescript-eslint/parser":"^6.12.0","@vitest/coverage-v8":"^1.0.0","eslint":"^8.54.0","happy-dom":"^20.0.11","rollup":"^4.6.1","rollup-plugin-dts":"^6.1.0","tslib":"^2.6.2","typescript":"^5.3.2","vitest":"^1.0.0"},"peerDependencies":{"typescript":">=4.9.0"},"gitHead":"5981bf223046e9b623a6946e4e0b5658333023b8","_id":"@bradsearch/analytics-core@1.4.0","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-db1lLhiELkAJY4ncUX6wkFAuToXkXh7vz5g3mPMo17NIzJ1WCjH4rtKTQckCc9d1l2YWW/WkvANjYROrnwjcwA==","shasum":"55363405a99398c6c84e80586d80ad50cc1e9bb3","tarball":"https://registry.npmjs.org/@bradsearch/analytics-core/-/analytics-core-1.4.0.tgz","fileCount":15,"unpackedSize":168361,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDkYDog9Ikt410Kf4AD3JR3+9svv3kIA2J4Ma8+Eyt3xAiBKJQYQ9bin3tIVMccpeAaFPx+jakD+BDAD7fTrI3gZIw=="}]},"_npmUser":{"name":"bradcommerce","email":"developers@bradsearch.com"},"directories":{},"maintainers":[{"name":"sramanauskas","email":"st.ramanauskas@gmail.com"},{"name":"bradcommerce","email":"developers@bradsearch.com"},{"name":"steponasinvertus","email":"steponas.kaminskas@invertus.eu"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/analytics-core_1.4.0_1780660425856_0.8706179587180152"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-17T13:21:34.464Z","modified":"2026-06-05T11:53:46.140Z","1.0.0":"2025-12-17T13:21:34.802Z","1.0.1":"2025-12-17T14:33:54.625Z","1.0.2":"2025-12-17T15:42:02.912Z","1.0.4":"2025-12-18T12:59:47.395Z","1.0.5":"2025-12-18T13:21:28.045Z","1.1.0":"2026-03-10T12:02:55.005Z","1.1.1":"2026-03-10T13:10:12.502Z","1.1.2":"2026-03-10T13:21:53.498Z","1.2.0":"2026-03-12T18:57:01.327Z","1.3.0":"2026-03-24T14:39:49.957Z","1.4.0":"2026-06-05T11:53:45.988Z"},"author":{"name":"BradSearch","email":"hello@bradsearch.com"},"license":"MIT","keywords":["analytics","tracking","umami","bradsearch","ecommerce","search-analytics"],"description":"Pure TypeScript analytics library for BradSearch with Umami integration","maintainers":[{"name":"sramanauskas","email":"st.ramanauskas@gmail.com"},{"name":"bradcommerce","email":"developers@bradsearch.com"},{"name":"steponasinvertus","email":"steponas.kaminskas@invertus.eu"}],"readme":"# @bradsearch/analytics-core\n\nA modern, type-safe TypeScript library for analytics tracking with Umami integration. This core package provides pure JavaScript functionality for tracking search, autocomplete, and e-commerce events.\n\n## Features\n\n- **Type-Safe**: Full TypeScript support with comprehensive type definitions\n- **Flexible**: Works with Umami Analytics out of the box, easily extensible to other providers\n- **Lightweight**: Zero dependencies, small bundle size\n- **Well-Tested**: 100% test coverage on all source code\n- **Framework-Agnostic**: Pure TypeScript/JavaScript, works anywhere\n- **Enrichment**: Automatic event enrichment with identity, cart, and correlation data\n- **Debouncing**: Built-in utilities for debouncing query tracking\n\n## Installation\n\n```bash\nnpm install @bradsearch/analytics-core\n```\n\n## Quick Start\n\n```typescript\nimport { AnalyticsTracker } from \"@bradsearch/analytics-core\";\n\n// Create a tracker instance\nconst tracker = new AnalyticsTracker({\n  identity: {\n    userId: \"user-123\",\n    customerId: \"456\",\n    isRegistered: true,\n  },\n  cart: {\n    cartId: \"cart-789\",\n    cartTotal: 150.0,\n    itemCount: 3,\n  },\n  debug: true, // Enable debug logging in development\n});\n\n// Track autocomplete response\ntracker.trackAutocompleteResponse({\n  query: \"laptop\",\n  productIds: [\"prod-1\", \"prod-2\", \"prod-3\"],\n  resultCount: 3,\n});\n\n// Track product click\ntracker.trackAutocompleteProductClick({\n  productId: \"prod-1\",\n  query: \"laptop\",\n  position: 0,\n});\n\n// Track add to cart\ntracker.trackAddToCart({\n  productId: \"prod-1\",\n  quantity: 1,\n  price: 999.99,\n});\n```\n\n## API Reference\n\n### AnalyticsTracker\n\nThe main class for tracking analytics events.\n\n#### Constructor\n\n```typescript\nnew AnalyticsTracker(config?: AnalyticsConfig)\n```\n\n**Configuration Options:**\n\n```typescript\ninterface AnalyticsConfig {\n  provider?: TrackingProvider; // Custom provider (defaults to UmamiProvider)\n  identity?: IdentityData; // User identity for enrichment\n  cart?: CartData; // Cart data for enrichment\n  debug?: boolean; // Enable debug logging\n}\n```\n\n### Tracking Methods\n\n#### Autocomplete Events\n\n**trackAutocompleteResponse(data)**\nTrack when autocomplete search results are returned.\n\n```typescript\ntracker.trackAutocompleteResponse({\n  query: string;\n  productIds: string[];\n  resultCount?: number;\n});\n```\n\n**trackAutocompleteProductClick(data)**\nTrack when a user clicks a product in autocomplete results.\n\n```typescript\ntracker.trackAutocompleteProductClick({\n  productId: string;\n  query?: string;\n  position?: number;\n});\n```\n\n**trackAutocompleteSuggestedQueryClick(data)**\nTrack when a user clicks a suggested query (e.g., \"Did you mean...\").\n\n```typescript\ntracker.trackAutocompleteSuggestedQueryClick({\n  suggestedQuery: string;\n  originalQuery: string;\n  position?: number;\n});\n```\n\n**trackAutocompleteCategoryClick(data)**\nTrack when a user clicks a category in autocomplete.\n\n```typescript\ntracker.trackAutocompleteCategoryClick({\n  category: string;\n  query: string;\n  field?: string;\n});\n```\n\n**trackAutocompleteFacetClick(data)**\nTrack when a user clicks a facet/filter in autocomplete.\n\n```typescript\ntracker.trackAutocompleteFacetClick({\n  field: string;\n  value: string;\n  query: string;\n});\n```\n\n#### Search Page Events\n\n**trackViewSearch(data)**\nTrack when a search results page loads.\n\n```typescript\ntracker.trackViewSearch({\n  query: string;\n  productIds: string[];\n  resultCount?: number;\n  filters?: Record<string, string[]>;\n});\n```\n\n**trackSearchProductClick(data)**\nTrack when a user clicks a product on the search results page.\n\n```typescript\ntracker.trackSearchProductClick({\n  productId: string;\n  query: string;\n  position?: number;\n});\n```\n\n#### E-commerce Events\n\n**trackAddToCart(data)**\nTrack when a product is added to the cart.\n\n```typescript\ntracker.trackAddToCart({\n  productId: string;\n  quantity: number;\n  productAttributeId?: string;\n  cartId?: string;\n  price?: number;\n});\n```\n\n**trackRemoveFromCart(data)**\nTrack when a product is removed from the cart.\n\n```typescript\ntracker.trackRemoveFromCart({\n  productId: string;\n  productAttributeId?: string;\n  quantity?: number;\n});\n```\n\n**trackUpdateProduct(data)**\nTrack when a product's attributes are updated.\n\n```typescript\ntracker.trackUpdateProduct({\n  productAttributeId: string;\n  quantity?: number;\n  newPrice?: number;\n});\n```\n\n### Configuration Methods\n\n**updateIdentity(identity: IdentityData)**\nUpdate the user identity data.\n\n```typescript\ntracker.updateIdentity({\n  userId: \"new-user-123\",\n  isRegistered: true,\n});\n```\n\n**updateCart(cart: CartData)**\nUpdate the cart data.\n\n```typescript\ntracker.updateCart({\n  cartId: \"cart-new\",\n  cartTotal: 250.5,\n  itemCount: 5,\n});\n```\n\n**setCorrelationId(requestId: string)**\nSet a correlation ID for distributed tracing.\n\n```typescript\ntracker.setCorrelationId(\"req-abc-123\");\n```\n\n**addEnrichmentMiddleware(middleware: Function)**\nAdd custom enrichment middleware.\n\n```typescript\ntracker.addEnrichmentMiddleware((payload) => ({\n  ...payload,\n  customField: \"custom-value\",\n}));\n```\n\n## Advanced Usage\n\n### Using ConsoleProvider for Development\n\nThe ConsoleProvider logs all events to the console instead of sending to Umami:\n\n```typescript\nimport { AnalyticsTracker, ConsoleProvider } from \"@bradsearch/analytics-core\";\n\nconst tracker = new AnalyticsTracker({\n  provider: new ConsoleProvider(),\n});\n\n// Events will be logged to console instead of sent to Umami\ntracker.trackAddToCart({\n  productId: \"test-product\",\n  quantity: 1,\n});\n```\n\n### Event Enrichment\n\nAll tracked events are automatically enriched with:\n\n2. **Identity Data**: User and customer information\n3. **Cart Data**: Shopping cart state\n4. **Correlation Data**: Request correlation IDs\n\n```typescript\n// Configure enrichment at initialization\nconst tracker = new AnalyticsTracker({\n  identity: {\n    userId: \"user-123\",\n    customerId: \"456\",\n    isRegistered: true,\n    sessionId: \"session-xyz\",\n  },\n  cart: {\n    cartId: \"cart-789\",\n    cartTotal: 150.0,\n    itemCount: 3,\n  },\n});\n\n// Events will automatically include this data\ntracker.trackSearchProductClick({\n  productId: \"prod-1\",\n  query: \"laptop\",\n});\n// Tracked event will include identity, and cart data\n```\n\n### Custom Enrichment Middleware\n\nAdd custom logic to enrich all events:\n\n```typescript\ntracker.addEnrichmentMiddleware((payload) => ({\n  ...payload,\n  sessionStart: Date.now(),\n  userAgent: navigator.userAgent,\n  referrer: document.referrer,\n}));\n```\n\n## Umami Integration\n\nThis library integrates with Umami Analytics via the `window.umami` global object. Make sure Umami is loaded before tracking events:\n\n```html\n<script\n  defer\n  src=\"https://analytics.example.com/script.js\"\n  data-website-id=\"your-website-id\"\n></script>\n```\n\nThe library will automatically detect if Umami is available and log warnings in debug mode if it's not.\n\n## Event Mapping\n\n| Method                                 | Umami Event Name                            | Description                      |\n| -------------------------------------- | ------------------------------------------- | -------------------------------- |\n| `trackAutocompleteResponse`            | `search-autocomplete-response`              | Search results returned          |\n| `trackAutocompleteProductClick`        | `search-autocomplete-product-click`         | Product clicked in autocomplete  |\n| `trackAutocompleteSuggestedQueryClick` | `search-autocomplete-suggested-query-click` | Suggested query clicked          |\n| `trackAutocompleteCategoryClick`       | `search-autocomplete-category-click`        | Category clicked in autocomplete |\n| `trackAutocompleteFacetClick`          | `search-autocomplete-facet-click`           | Facet/filter clicked             |\n| `trackViewSearch`                      | `view-search`                               | Search results page viewed       |\n| `trackSearchProductClick`              | `search-product-click`                      | Product clicked on search page   |\n| `trackAddToCart`                       | `add-to-cart`                               | Product added to cart            |\n| `trackRemoveFromCart`                  | `remove-from-cart`                          | Product removed from cart        |\n| `trackUpdateProduct`                   | `update-product`                            | Product attributes updated       |\n\n## Development\n\n### Running Tests\n\n```bash\nnpm test              # Run tests once\nnpm run test:watch    # Run tests in watch mode\nnpm run test:coverage # Run tests with coverage report\n```\n\n### Building\n\n```bash\nnpm run build  # Build CommonJS and ESM bundles\nnpm run dev    # Build in watch mode\n```\n\n### Linting\n\n```bash\nnpm run lint  # Run ESLint\n```\n\n## Package Exports\n\nThe package exports both CommonJS and ESM formats:\n\n- **CommonJS**: `dist/index.js`\n- **ESM**: `dist/index.esm.js`\n- **TypeScript Types**: `dist/index.d.ts`\n\n## Browser Support\n\nWorks in all modern browsers that support ES2020. Requires `window` object for Umami integration.\n\n## License\n\nMIT\n\n## Author\n\nBradSearch - hello@bradsearch.com\n\n### Authentication\n\n#### Login to npm\n\n```bash\n# Login with your npm account\nnpm login\n\n# Verify authentication\nnpm whoami\n```\n\n#### Switch npm User\n\n```bash\n# Logout current user\nnpm logout\n\n# Login with different account\nnpm login --registry https://registry.npmjs.org/\n```\n\n### Publishing to npm\n\n#### First Time Publication\n\n```bash\n# Publish as public package (required for scoped packages)\nnpm publish --access public\n```\n\n#### Subsequent Releases\n\n```bash\n# Regular publish (after version bump)\nnpm publish\n```\n\n#### Publishing Beta/Alpha Versions\n\n```bash\n# Tag as beta\nnpm version prerelease --preid=beta\nnpm publish --tag beta\n\n# Tag as alpha\nnpm version prerelease --preid=alpha\nnpm publish --tag alpha\n```\n","readmeFilename":"README.md"}