iureiure 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- package/.editorconfig +21 -0
- package/.env.example +8 -0
- package/.eslintignore +19 -0
- package/.eslintrc.json +155 -0
- package/.github/ISSUE_TEMPLATE/bug_report.md +50 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +19 -0
- package/.github/dependabot.yml +6 -0
- package/.github/pull_request_template.md +23 -0
- package/.github/workflows/build-and-quality-checks-v3.yml +51 -0
- package/.github/workflows/check_pr_title.yml +17 -0
- package/.github/workflows/codeql-analysis.yml +70 -0
- package/.github/workflows/create-hotfix-branch-v3.yml +21 -0
- package/.github/workflows/deploy-beta-v3.yml +82 -0
- package/.github/workflows/deploy-dev-v3.yml +71 -0
- package/.github/workflows/deploy-npm-v3.yml +169 -0
- package/.github/workflows/deploy-prod-v3.yml +194 -0
- package/.github/workflows/deploy-sanity-suite.yml +80 -0
- package/.github/workflows/deploy-staging-v3.yml +99 -0
- package/.github/workflows/draft-new-release-v3.yml +103 -0
- package/.github/workflows/housekeeping.yaml +40 -0
- package/.github/workflows/publish-new-release-v3.yml +136 -0
- package/.github/workflows/rollback-v3.yml +190 -0
- package/.github/workflows/test-v3.yml +60 -0
- package/.husky/commit-msg +1 -0
- package/.husky/pre-commit +1 -0
- package/.jscpd.json +17 -0
- package/.nvmrc +1 -0
- package/.nxignore +3 -0
- package/.prettierignore +18 -0
- package/.prettierrc +13 -0
- package/.versionrc +8 -0
- package/CODEOWNERS +2 -0
- package/__mocks__/BraveBrowser.js +9 -0
- package/assets/integrations/AdobeAnalytics/adobe-analytics-js-heartbeat.js +193 -0
- package/assets/integrations/AdobeAnalytics/adobe-analytics-js.js +116 -0
- package/assets/rs-logo-full-light.jpg +0 -0
- package/babel.config.json +14 -0
- package/commitlint.config.js +27 -0
- package/examples/angular/sample-app/.editorconfig +16 -0
- package/examples/angular/sample-app/README.md +27 -0
- package/examples/angular/sample-app/angular.json +83 -0
- package/examples/angular/sample-app/package-lock.json +12552 -0
- package/examples/angular/sample-app/package.json +39 -0
- package/examples/angular/sample-app/src/app/app-routing.module.ts +10 -0
- package/examples/angular/sample-app/src/app/app.component.css +0 -0
- package/examples/angular/sample-app/src/app/app.component.html +508 -0
- package/examples/angular/sample-app/src/app/app.component.spec.ts +33 -0
- package/examples/angular/sample-app/src/app/app.component.ts +104 -0
- package/examples/angular/sample-app/src/app/app.module.ts +12 -0
- package/examples/angular/sample-app/src/assets/.gitkeep +0 -0
- package/examples/angular/sample-app/src/favicon.ico +0 -0
- package/examples/angular/sample-app/src/index.html +45 -0
- package/examples/angular/sample-app/src/main.ts +7 -0
- package/examples/angular/sample-app/src/styles.css +1 -0
- package/examples/angular/sample-app/tsconfig.app.json +10 -0
- package/examples/angular/sample-app/tsconfig.json +30 -0
- package/examples/angular/sample-app/tsconfig.spec.json +9 -0
- package/examples/chrome-extension/USAGE.md +140 -0
- package/examples/chrome-extension/background-script/LICENSE +21 -0
- package/examples/chrome-extension/background-script/README.md +105 -0
- package/examples/chrome-extension/background-script/foreground.js +7 -0
- package/examples/chrome-extension/background-script/logo/logo-128.png +0 -0
- package/examples/chrome-extension/background-script/logo/logo-16.png +0 -0
- package/examples/chrome-extension/background-script/logo/logo-48.png +0 -0
- package/examples/chrome-extension/background-script/logo/logo.svg +138 -0
- package/examples/chrome-extension/background-script/manifest.json +36 -0
- package/examples/chrome-extension/background-script/popup/popup.css +11 -0
- package/examples/chrome-extension/background-script/popup/popup.html +11 -0
- package/examples/chrome-extension/background-script/rudderAnalytics.js +5133 -0
- package/examples/chrome-extension/background-script/service-worker.js +28 -0
- package/examples/chrome-extension/background-script/settings/settings.css +8 -0
- package/examples/chrome-extension/background-script/settings/settings.html +12 -0
- package/examples/chrome-extension/background-script-websockets/LICENSE +21 -0
- package/examples/chrome-extension/background-script-websockets/README.md +101 -0
- package/examples/chrome-extension/background-script-websockets/foreground.js +7 -0
- package/examples/chrome-extension/background-script-websockets/logo/logo-128.png +0 -0
- package/examples/chrome-extension/background-script-websockets/logo/logo-16.png +0 -0
- package/examples/chrome-extension/background-script-websockets/logo/logo-48.png +0 -0
- package/examples/chrome-extension/background-script-websockets/logo/logo.svg +138 -0
- package/examples/chrome-extension/background-script-websockets/manifest.json +37 -0
- package/examples/chrome-extension/background-script-websockets/popup/popup.css +11 -0
- package/examples/chrome-extension/background-script-websockets/popup/popup.html +11 -0
- package/examples/chrome-extension/background-script-websockets/rudderAnalytics.js +5133 -0
- package/examples/chrome-extension/background-script-websockets/service-worker.js +60 -0
- package/examples/chrome-extension/background-script-websockets/settings/settings.css +8 -0
- package/examples/chrome-extension/background-script-websockets/settings/settings.html +12 -0
- package/examples/chrome-extension/content-script-v1.1/LICENSE +21 -0
- package/examples/chrome-extension/content-script-v1.1/README.md +105 -0
- package/examples/chrome-extension/content-script-v1.1/foreground.js +65 -0
- package/examples/chrome-extension/content-script-v1.1/logo/logo-128.png +0 -0
- package/examples/chrome-extension/content-script-v1.1/logo/logo-16.png +0 -0
- package/examples/chrome-extension/content-script-v1.1/logo/logo-48.png +0 -0
- package/examples/chrome-extension/content-script-v1.1/logo/logo.svg +138 -0
- package/examples/chrome-extension/content-script-v1.1/manifest.json +35 -0
- package/examples/chrome-extension/content-script-v1.1/popup/popup.css +11 -0
- package/examples/chrome-extension/content-script-v1.1/popup/popup.html +11 -0
- package/examples/chrome-extension/content-script-v1.1/service-worker-utils.js +17 -0
- package/examples/chrome-extension/content-script-v1.1/service-worker.js +12 -0
- package/examples/chrome-extension/content-script-v1.1/settings/settings.css +8 -0
- package/examples/chrome-extension/content-script-v1.1/settings/settings.html +12 -0
- package/examples/chrome-extension/content-script-v3/LICENSE +21 -0
- package/examples/chrome-extension/content-script-v3/README.md +105 -0
- package/examples/chrome-extension/content-script-v3/foreground.js +3875 -0
- package/examples/chrome-extension/content-script-v3/logo/logo-128.png +0 -0
- package/examples/chrome-extension/content-script-v3/logo/logo-16.png +0 -0
- package/examples/chrome-extension/content-script-v3/logo/logo-48.png +0 -0
- package/examples/chrome-extension/content-script-v3/logo/logo.svg +138 -0
- package/examples/chrome-extension/content-script-v3/manifest.json +35 -0
- package/examples/chrome-extension/content-script-v3/popup/popup.css +11 -0
- package/examples/chrome-extension/content-script-v3/popup/popup.html +11 -0
- package/examples/chrome-extension/content-script-v3/service-worker-utils.js +17 -0
- package/examples/chrome-extension/content-script-v3/service-worker.js +12 -0
- package/examples/chrome-extension/content-script-v3/settings/settings.css +8 -0
- package/examples/chrome-extension/content-script-v3/settings/settings.html +12 -0
- package/examples/chrome-extension/websocket-server/server.mjs +19 -0
- package/examples/gatsby/sample-gatsby-plugin-usage/README.md +49 -0
- package/examples/gatsby/sample-gatsby-plugin-usage/gatsby-config.ts +27 -0
- package/examples/gatsby/sample-gatsby-plugin-usage/package-lock.json +16070 -0
- package/examples/gatsby/sample-gatsby-plugin-usage/package.json +31 -0
- package/examples/gatsby/sample-gatsby-plugin-usage/src/images/icon.png +0 -0
- package/examples/gatsby/sample-gatsby-plugin-usage/src/pages/404.tsx +49 -0
- package/examples/gatsby/sample-gatsby-plugin-usage/src/pages/index.tsx +193 -0
- package/examples/gatsby/sample-gatsby-plugin-usage/tsconfig.json +105 -0
- package/examples/gatsby/sample-gatsby-site/README.md +49 -0
- package/examples/gatsby/sample-gatsby-site/gatsby-config.ts +15 -0
- package/examples/gatsby/sample-gatsby-site/package-lock.json +15916 -0
- package/examples/gatsby/sample-gatsby-site/package.json +37 -0
- package/examples/gatsby/sample-gatsby-site/src/images/icon.png +0 -0
- package/examples/gatsby/sample-gatsby-site/src/pages/404.tsx +49 -0
- package/examples/gatsby/sample-gatsby-site/src/pages/index.tsx +209 -0
- package/examples/gatsby/sample-gatsby-site/tsconfig.json +105 -0
- package/examples/html/autotrack-test.html +94 -0
- package/examples/html/ecomm_test.html +358 -0
- package/examples/html/script-test.html +968 -0
- package/examples/html/segment.html +177 -0
- package/examples/html/test_poster.jpg +0 -0
- package/examples/nextjs/hooks/sample-app/.eslintrc.json +3 -0
- package/examples/nextjs/hooks/sample-app/README.md +36 -0
- package/examples/nextjs/hooks/sample-app/next.config.js +4 -0
- package/examples/nextjs/hooks/sample-app/package-lock.json +4766 -0
- package/examples/nextjs/hooks/sample-app/package.json +28 -0
- package/examples/nextjs/hooks/sample-app/postcss.config.js +6 -0
- package/examples/nextjs/hooks/sample-app/public/next.svg +1 -0
- package/examples/nextjs/hooks/sample-app/public/vercel.svg +1 -0
- package/examples/nextjs/hooks/sample-app/src/app/favicon.ico +0 -0
- package/examples/nextjs/hooks/sample-app/src/app/globals.css +27 -0
- package/examples/nextjs/hooks/sample-app/src/app/layout.tsx +55 -0
- package/examples/nextjs/hooks/sample-app/src/app/page.tsx +137 -0
- package/examples/nextjs/hooks/sample-app/src/app/useRudderAnalytics.ts +29 -0
- package/examples/nextjs/hooks/sample-app/tailwind.config.ts +19 -0
- package/examples/nextjs/hooks/sample-app/tsconfig.json +27 -0
- package/examples/nextjs/js/sample-app/.eslintrc.json +3 -0
- package/examples/nextjs/js/sample-app/README.md +36 -0
- package/examples/nextjs/js/sample-app/jsconfig.json +7 -0
- package/examples/nextjs/js/sample-app/next.config.js +4 -0
- package/examples/nextjs/js/sample-app/package-lock.json +4710 -0
- package/examples/nextjs/js/sample-app/package.json +24 -0
- package/examples/nextjs/js/sample-app/postcss.config.js +6 -0
- package/examples/nextjs/js/sample-app/public/next.svg +1 -0
- package/examples/nextjs/js/sample-app/public/vercel.svg +1 -0
- package/examples/nextjs/js/sample-app/src/app/favicon.ico +0 -0
- package/examples/nextjs/js/sample-app/src/app/globals.css +27 -0
- package/examples/nextjs/js/sample-app/src/app/layout.js +54 -0
- package/examples/nextjs/js/sample-app/src/app/page.js +146 -0
- package/examples/nextjs/js/sample-app/tailwind.config.js +17 -0
- package/examples/nextjs/page-router/sample-app/.eslintrc.json +3 -0
- package/examples/nextjs/page-router/sample-app/README.md +40 -0
- package/examples/nextjs/page-router/sample-app/next.config.js +6 -0
- package/examples/nextjs/page-router/sample-app/package-lock.json +4270 -0
- package/examples/nextjs/page-router/sample-app/package.json +28 -0
- package/examples/nextjs/page-router/sample-app/postcss.config.js +6 -0
- package/examples/nextjs/page-router/sample-app/public/favicon.ico +0 -0
- package/examples/nextjs/page-router/sample-app/public/next.svg +1 -0
- package/examples/nextjs/page-router/sample-app/public/vercel.svg +1 -0
- package/examples/nextjs/page-router/sample-app/src/pages/_app.tsx +35 -0
- package/examples/nextjs/page-router/sample-app/src/pages/_document.tsx +49 -0
- package/examples/nextjs/page-router/sample-app/src/pages/api/hello.ts +10 -0
- package/examples/nextjs/page-router/sample-app/src/pages/index.tsx +138 -0
- package/examples/nextjs/page-router/sample-app/src/pages/page2.tsx +18 -0
- package/examples/nextjs/page-router/sample-app/src/styles/globals.css +27 -0
- package/examples/nextjs/page-router/sample-app/src/useRudderAnalytics.ts +29 -0
- package/examples/nextjs/page-router/sample-app/tailwind.config.ts +19 -0
- package/examples/nextjs/page-router/sample-app/tsconfig.json +22 -0
- package/examples/nextjs/ts/sample-app/.eslintrc.json +3 -0
- package/examples/nextjs/ts/sample-app/README.md +36 -0
- package/examples/nextjs/ts/sample-app/next.config.js +4 -0
- package/examples/nextjs/ts/sample-app/package-lock.json +4766 -0
- package/examples/nextjs/ts/sample-app/package.json +28 -0
- package/examples/nextjs/ts/sample-app/postcss.config.js +6 -0
- package/examples/nextjs/ts/sample-app/public/next.svg +1 -0
- package/examples/nextjs/ts/sample-app/public/vercel.svg +1 -0
- package/examples/nextjs/ts/sample-app/src/app/favicon.ico +0 -0
- package/examples/nextjs/ts/sample-app/src/app/globals.css +27 -0
- package/examples/nextjs/ts/sample-app/src/app/layout.tsx +55 -0
- package/examples/nextjs/ts/sample-app/src/app/page.tsx +147 -0
- package/examples/nextjs/ts/sample-app/tailwind.config.ts +19 -0
- package/examples/nextjs/ts/sample-app/tsconfig.json +27 -0
- package/examples/reactjs/hooks/sample-app/README.md +46 -0
- package/examples/reactjs/hooks/sample-app/package-lock.json +16203 -0
- package/examples/reactjs/hooks/sample-app/package.json +47 -0
- package/examples/reactjs/hooks/sample-app/public/favicon.ico +0 -0
- package/examples/reactjs/hooks/sample-app/public/index.html +75 -0
- package/examples/reactjs/hooks/sample-app/public/logo192.png +0 -0
- package/examples/reactjs/hooks/sample-app/public/logo512.png +0 -0
- package/examples/reactjs/hooks/sample-app/public/manifest.json +25 -0
- package/examples/reactjs/hooks/sample-app/public/robots.txt +3 -0
- package/examples/reactjs/hooks/sample-app/src/App.css +38 -0
- package/examples/reactjs/hooks/sample-app/src/App.test.tsx +9 -0
- package/examples/reactjs/hooks/sample-app/src/App.tsx +95 -0
- package/examples/reactjs/hooks/sample-app/src/index.css +32 -0
- package/examples/reactjs/hooks/sample-app/src/index.tsx +19 -0
- package/examples/reactjs/hooks/sample-app/src/logo.svg +1 -0
- package/examples/reactjs/hooks/sample-app/src/react-app-env.d.ts +1 -0
- package/examples/reactjs/hooks/sample-app/src/reportWebVitals.ts +15 -0
- package/examples/reactjs/hooks/sample-app/src/setupTests.ts +5 -0
- package/examples/reactjs/hooks/sample-app/src/useRudderAnalytics.ts +23 -0
- package/examples/reactjs/hooks/sample-app/tsconfig.json +20 -0
- package/examples/reactjs/js/sample-app/README.md +70 -0
- package/examples/reactjs/js/sample-app/package-lock.json +17665 -0
- package/examples/reactjs/js/sample-app/package.json +42 -0
- package/examples/reactjs/js/sample-app/public/favicon.ico +0 -0
- package/examples/reactjs/js/sample-app/public/index.html +75 -0
- package/examples/reactjs/js/sample-app/public/logo192.png +0 -0
- package/examples/reactjs/js/sample-app/public/logo512.png +0 -0
- package/examples/reactjs/js/sample-app/public/manifest.json +25 -0
- package/examples/reactjs/js/sample-app/public/robots.txt +3 -0
- package/examples/reactjs/js/sample-app/src/App.css +38 -0
- package/examples/reactjs/js/sample-app/src/App.js +101 -0
- package/examples/reactjs/js/sample-app/src/App.test.js +8 -0
- package/examples/reactjs/js/sample-app/src/index.css +34 -0
- package/examples/reactjs/js/sample-app/src/index.js +17 -0
- package/examples/reactjs/js/sample-app/src/logo.svg +1 -0
- package/examples/reactjs/js/sample-app/src/reportWebVitals.js +13 -0
- package/examples/reactjs/js/sample-app/src/setupTests.js +5 -0
- package/examples/reactjs/ts/sample-app/README.md +46 -0
- package/examples/reactjs/ts/sample-app/package-lock.json +17653 -0
- package/examples/reactjs/ts/sample-app/package.json +47 -0
- package/examples/reactjs/ts/sample-app/public/favicon.ico +0 -0
- package/examples/reactjs/ts/sample-app/public/index.html +75 -0
- package/examples/reactjs/ts/sample-app/public/logo192.png +0 -0
- package/examples/reactjs/ts/sample-app/public/logo512.png +0 -0
- package/examples/reactjs/ts/sample-app/public/manifest.json +25 -0
- package/examples/reactjs/ts/sample-app/public/robots.txt +3 -0
- package/examples/reactjs/ts/sample-app/src/App.css +38 -0
- package/examples/reactjs/ts/sample-app/src/App.test.tsx +9 -0
- package/examples/reactjs/ts/sample-app/src/App.tsx +101 -0
- package/examples/reactjs/ts/sample-app/src/index.css +34 -0
- package/examples/reactjs/ts/sample-app/src/index.tsx +19 -0
- package/examples/reactjs/ts/sample-app/src/logo.svg +1 -0
- package/examples/reactjs/ts/sample-app/src/react-app-env.d.ts +1 -0
- package/examples/reactjs/ts/sample-app/src/reportWebVitals.ts +15 -0
- package/examples/reactjs/ts/sample-app/src/setupTests.ts +5 -0
- package/examples/reactjs/ts/sample-app/tsconfig.json +20 -0
- package/examples/reactjs/vite/sample-app/.eslintrc.cjs +18 -0
- package/examples/reactjs/vite/sample-app/README.md +27 -0
- package/examples/reactjs/vite/sample-app/index.html +45 -0
- package/examples/reactjs/vite/sample-app/package-lock.json +3427 -0
- package/examples/reactjs/vite/sample-app/package.json +29 -0
- package/examples/reactjs/vite/sample-app/public/vite.svg +1 -0
- package/examples/reactjs/vite/sample-app/src/App.css +42 -0
- package/examples/reactjs/vite/sample-app/src/App.tsx +105 -0
- package/examples/reactjs/vite/sample-app/src/assets/react.svg +1 -0
- package/examples/reactjs/vite/sample-app/src/index.css +70 -0
- package/examples/reactjs/vite/sample-app/src/main.tsx +10 -0
- package/examples/reactjs/vite/sample-app/src/vite-env.d.ts +1 -0
- package/examples/reactjs/vite/sample-app/tsconfig.json +25 -0
- package/examples/reactjs/vite/sample-app/tsconfig.node.json +10 -0
- package/examples/reactjs/vite/sample-app/vite.config.ts +7 -0
- package/examples/serverless/USAGE.md +85 -0
- package/examples/serverless/cloudflare-worker/.editorconfig +13 -0
- package/examples/serverless/cloudflare-worker/.prettierrc +6 -0
- package/examples/serverless/cloudflare-worker/package-lock.json +2646 -0
- package/examples/serverless/cloudflare-worker/package.json +18 -0
- package/examples/serverless/cloudflare-worker/src/worker.js +54 -0
- package/examples/serverless/cloudflare-worker/wrangler.toml +52 -0
- package/examples/serverless/vercel-edge/.eslintrc.json +3 -0
- package/examples/serverless/vercel-edge/README.md +34 -0
- package/examples/serverless/vercel-edge/app/api/edge-function-example/route.ts +32 -0
- package/examples/serverless/vercel-edge/app/favicon.ico +0 -0
- package/examples/serverless/vercel-edge/app/globals.css +27 -0
- package/examples/serverless/vercel-edge/app/layout.tsx +22 -0
- package/examples/serverless/vercel-edge/app/page.tsx +113 -0
- package/examples/serverless/vercel-edge/next.config.js +4 -0
- package/examples/serverless/vercel-edge/package-lock.json +5351 -0
- package/examples/serverless/vercel-edge/package.json +26 -0
- package/examples/serverless/vercel-edge/postcss.config.js +6 -0
- package/examples/serverless/vercel-edge/public/next.svg +1 -0
- package/examples/serverless/vercel-edge/public/vercel.svg +1 -0
- package/examples/serverless/vercel-edge/tailwind.config.ts +19 -0
- package/examples/serverless/vercel-edge/tsconfig.json +27 -0
- package/examples/symfony/USAGE.md +57 -0
- package/examples/symfony/sample/.env.test +6 -0
- package/examples/symfony/sample/assets/app.js +15 -0
- package/examples/symfony/sample/assets/styles/app.css +3 -0
- package/examples/symfony/sample/compose.override.yaml +14 -0
- package/examples/symfony/sample/compose.yaml +21 -0
- package/examples/symfony/sample/composer.json +104 -0
- package/examples/symfony/sample/composer.lock +9921 -0
- package/examples/symfony/sample/config/bundles.php +15 -0
- package/examples/symfony/sample/config/packages/cache.yaml +19 -0
- package/examples/symfony/sample/config/packages/debug.yaml +5 -0
- package/examples/symfony/sample/config/packages/doctrine.yaml +43 -0
- package/examples/symfony/sample/config/packages/doctrine_migrations.yaml +6 -0
- package/examples/symfony/sample/config/packages/framework.yaml +24 -0
- package/examples/symfony/sample/config/packages/mailer.yaml +3 -0
- package/examples/symfony/sample/config/packages/messenger.yaml +24 -0
- package/examples/symfony/sample/config/packages/monolog.yaml +61 -0
- package/examples/symfony/sample/config/packages/notifier.yaml +12 -0
- package/examples/symfony/sample/config/packages/routing.yaml +12 -0
- package/examples/symfony/sample/config/packages/security.yaml +40 -0
- package/examples/symfony/sample/config/packages/translation.yaml +13 -0
- package/examples/symfony/sample/config/packages/twig.yaml +6 -0
- package/examples/symfony/sample/config/packages/validator.yaml +13 -0
- package/examples/symfony/sample/config/packages/web_profiler.yaml +15 -0
- package/examples/symfony/sample/config/packages/webpack_encore.yaml +45 -0
- package/examples/symfony/sample/config/preload.php +5 -0
- package/examples/symfony/sample/config/routes/framework.yaml +4 -0
- package/examples/symfony/sample/config/routes/web_profiler.yaml +8 -0
- package/examples/symfony/sample/config/routes.yaml +7 -0
- package/examples/symfony/sample/config/services.yaml +24 -0
- package/examples/symfony/sample/package-lock.json +8082 -0
- package/examples/symfony/sample/package.json +23 -0
- package/examples/symfony/sample/phpunit.xml.dist +38 -0
- package/examples/symfony/sample/public/index.php +9 -0
- package/examples/symfony/sample/src/Controller/LuckyController.php +18 -0
- package/examples/symfony/sample/src/Kernel.php +11 -0
- package/examples/symfony/sample/symfony.lock +277 -0
- package/examples/symfony/sample/templates/base.html.twig +19 -0
- package/examples/symfony/sample/templates/lucky/number.html.twig +20 -0
- package/examples/symfony/sample/tests/bootstrap.php +11 -0
- package/examples/symfony/sample/webpack.config.js +72 -0
- package/examples/v1/index.html +229 -0
- package/examples/v1.1/index.html +229 -0
- package/examples/v2-beacon/index.html +229 -0
- package/examples/v3/index.html +266 -0
- package/examples/v3-beacon/index.html +270 -0
- package/examples/v3-legacy/index.html +266 -0
- package/examples/v3-legacy-minimum-plugins/index.html +270 -0
- package/examples/v3-minimum-plugins/index.html +270 -0
- package/jest/jest.global-setup.js +3 -0
- package/jest/jest.polyfills.js +18 -0
- package/jest/jest.setup-dom.js +54 -0
- package/jest/jsdom-extended.js +26 -0
- package/jest.config.ts +5 -0
- package/jest.preset.js +83 -0
- package/migrations.json +34 -0
- package/nx.json +69 -0
- package/package.json +170 -0
- package/packages/analytics-js/.env.example +9 -0
- package/packages/analytics-js/.jscpd.json +17 -0
- package/packages/analytics-js/.size-limit.js +31 -0
- package/packages/analytics-js/CHANGELOG.md +283 -0
- package/packages/analytics-js/CHANGELOG_LATEST.md +2 -0
- package/packages/analytics-js/LICENSE +21 -0
- package/packages/analytics-js/README.md +100 -0
- package/packages/analytics-js/__fixtures__/fixtures.ts +765 -0
- package/packages/analytics-js/__fixtures__/msw.handlers.ts +82 -0
- package/packages/analytics-js/__fixtures__/msw.server.ts +6 -0
- package/packages/analytics-js/__mocks__/remotePlugins/BeaconQueue.ts +9 -0
- package/packages/analytics-js/__mocks__/remotePlugins/Bugsnag.ts +10 -0
- package/packages/analytics-js/__mocks__/remotePlugins/CustomConsentManager.ts +10 -0
- package/packages/analytics-js/__mocks__/remotePlugins/DeviceModeDestinations.ts +9 -0
- package/packages/analytics-js/__mocks__/remotePlugins/DeviceModeTransformation.ts +9 -0
- package/packages/analytics-js/__mocks__/remotePlugins/ErrorReporting.ts +10 -0
- package/packages/analytics-js/__mocks__/remotePlugins/ExternalAnonymousId.ts +10 -0
- package/packages/analytics-js/__mocks__/remotePlugins/GoogleLinker.ts +8 -0
- package/packages/analytics-js/__mocks__/remotePlugins/KetchConsentManager.ts +10 -0
- package/packages/analytics-js/__mocks__/remotePlugins/NativeDestinationQueue.ts +10 -0
- package/packages/analytics-js/__mocks__/remotePlugins/OneTrustConsentManager.ts +10 -0
- package/packages/analytics-js/__mocks__/remotePlugins/StorageEncryption.ts +9 -0
- package/packages/analytics-js/__mocks__/remotePlugins/StorageEncryptionLegacy.ts +9 -0
- package/packages/analytics-js/__mocks__/remotePlugins/StorageMigrator.ts +8 -0
- package/packages/analytics-js/__mocks__/remotePlugins/XhrQueue.ts +9 -0
- package/packages/analytics-js/__tests__/app/RudderAnalytics.test.ts +286 -0
- package/packages/analytics-js/__tests__/components/capabilitiesManager/detection/adBlockers.test.ts +78 -0
- package/packages/analytics-js/__tests__/components/capabilitiesManager/detection/browser.test.ts +24 -0
- package/packages/analytics-js/__tests__/components/capabilitiesManager/detection/clientHint.test.ts +87 -0
- package/packages/analytics-js/__tests__/components/capabilitiesManager/detection/dom.test.ts +13 -0
- package/packages/analytics-js/__tests__/components/capabilitiesManager/detection/screen.test.ts +13 -0
- package/packages/analytics-js/__tests__/components/capabilitiesManager/detection/storage.test.ts +27 -0
- package/packages/analytics-js/__tests__/components/configManager/ConfigManager.test.ts +222 -0
- package/packages/analytics-js/__tests__/components/configManager/cdnPaths.test.ts +70 -0
- package/packages/analytics-js/__tests__/components/configManager/commonUtil.test.ts +531 -0
- package/packages/analytics-js/__tests__/components/configManager/dataPlaneResolver.test.ts +163 -0
- package/packages/analytics-js/__tests__/components/configManager/validate.test.ts +31 -0
- package/packages/analytics-js/__tests__/components/core/Analytics.test.ts +628 -0
- package/packages/analytics-js/__tests__/components/eventManager/EventManager.test.ts +78 -0
- package/packages/analytics-js/__tests__/components/eventManager/RudderEventFactory.test.ts +514 -0
- package/packages/analytics-js/__tests__/components/eventManager/utilities.test.ts +1043 -0
- package/packages/analytics-js/__tests__/components/eventRepository/EventRepository.test.ts +324 -0
- package/packages/analytics-js/__tests__/components/pluginsManager/.gitkeep +0 -0
- package/packages/analytics-js/__tests__/components/preloadBuffer/index.test.ts +130 -0
- package/packages/analytics-js/__tests__/components/userSessionManager/UserSessionManager.test.ts +1386 -0
- package/packages/analytics-js/__tests__/components/userSessionManager/utils.test.ts +103 -0
- package/packages/analytics-js/__tests__/components/utilities/consent.test.ts +192 -0
- package/packages/analytics-js/__tests__/components/utilities/destinations.test.ts +201 -0
- package/packages/analytics-js/__tests__/components/utilities/event.test.ts +8 -0
- package/packages/analytics-js/__tests__/components/utilities/globals.test.ts +42 -0
- package/packages/analytics-js/__tests__/components/utilities/page.test.ts +235 -0
- package/packages/analytics-js/__tests__/components/utilities/sort.test.ts +17 -0
- package/packages/analytics-js/__tests__/components/utilities/statsCollection.test.ts +84 -0
- package/packages/analytics-js/__tests__/components/utilities/url.test.ts +51 -0
- package/packages/analytics-js/__tests__/services/ErrorHandler/ErrorHandler.test.ts +272 -0
- package/packages/analytics-js/__tests__/services/ErrorHandler/processError.test.ts +33 -0
- package/packages/analytics-js/__tests__/services/HttpClient/HttpClient.test.ts +255 -0
- package/packages/analytics-js/__tests__/services/Logger/Logger.test.ts +204 -0
- package/packages/analytics-js/__tests__/services/PluginEngine/PluginEngine.test.ts +206 -0
- package/packages/analytics-js/__tests__/services/StoreManager/Store.test.ts +152 -0
- package/packages/analytics-js/__tests__/services/StoreManager/StoreManager.test.ts +272 -0
- package/packages/analytics-js/__tests__/services/StoreManager/component-cookie/index.test.ts +65 -0
- package/packages/analytics-js/__tests__/services/StoreManager/storages/CookieStorage.test.ts +42 -0
- package/packages/analytics-js/__tests__/services/StoreManager/storages/InMemoryStorage.test.ts +26 -0
- package/packages/analytics-js/__tests__/services/StoreManager/storages/LocalStorage.test.ts +26 -0
- package/packages/analytics-js/__tests__/services/StoreManager/storages/sessionStorage.test.ts +26 -0
- package/packages/analytics-js/__tests__/services/StoreManager/top-domain/index.test.ts +60 -0
- package/packages/analytics-js/babel.config.json +15 -0
- package/packages/analytics-js/jest.config.mjs +14 -0
- package/packages/analytics-js/package.json +114 -0
- package/packages/analytics-js/project.json +138 -0
- package/packages/analytics-js/public/index-legacy-only.html +308 -0
- package/packages/analytics-js/public/index.html +324 -0
- package/packages/analytics-js/public/list_integration_sdks.html +408 -0
- package/packages/analytics-js/rollup.config.mjs +387 -0
- package/packages/analytics-js/src/app/IRudderStackGlobals.ts +21 -0
- package/packages/analytics-js/src/app/RudderAnalytics.ts +296 -0
- package/packages/analytics-js/src/browser.ts +55 -0
- package/packages/analytics-js/src/components/capabilitiesManager/CapabilitiesManager.ts +199 -0
- package/packages/analytics-js/src/components/capabilitiesManager/detection/adBlockers.ts +38 -0
- package/packages/analytics-js/src/components/capabilitiesManager/detection/browser.ts +24 -0
- package/packages/analytics-js/src/components/capabilitiesManager/detection/clientHint.ts +31 -0
- package/packages/analytics-js/src/components/capabilitiesManager/detection/dom.ts +54 -0
- package/packages/analytics-js/src/components/capabilitiesManager/detection/index.ts +6 -0
- package/packages/analytics-js/src/components/capabilitiesManager/detection/screen.ts +23 -0
- package/packages/analytics-js/src/components/capabilitiesManager/detection/storage.ts +77 -0
- package/packages/analytics-js/src/components/capabilitiesManager/index.ts +1 -0
- package/packages/analytics-js/src/components/capabilitiesManager/polyfill/index.ts +14 -0
- package/packages/analytics-js/src/components/capabilitiesManager/types.ts +14 -0
- package/packages/analytics-js/src/components/configManager/ConfigManager.ts +218 -0
- package/packages/analytics-js/src/components/configManager/constants.ts +21 -0
- package/packages/analytics-js/src/components/configManager/index.ts +1 -0
- package/packages/analytics-js/src/components/configManager/types.ts +90 -0
- package/packages/analytics-js/src/components/configManager/util/cdnPaths.ts +80 -0
- package/packages/analytics-js/src/components/configManager/util/commonUtil.ts +262 -0
- package/packages/analytics-js/src/components/configManager/util/dataPlaneResolver.ts +79 -0
- package/packages/analytics-js/src/components/configManager/util/validate.ts +46 -0
- package/packages/analytics-js/src/components/core/Analytics.ts +824 -0
- package/packages/analytics-js/src/components/core/IAnalytics.ts +218 -0
- package/packages/analytics-js/src/components/core/utilities.ts +12 -0
- package/packages/analytics-js/src/components/eventManager/EventManager.ts +80 -0
- package/packages/analytics-js/src/components/eventManager/RudderEventFactory.ts +171 -0
- package/packages/analytics-js/src/components/eventManager/constants.ts +29 -0
- package/packages/analytics-js/src/components/eventManager/index.ts +1 -0
- package/packages/analytics-js/src/components/eventManager/types.ts +7 -0
- package/packages/analytics-js/src/components/eventManager/utilities.ts +341 -0
- package/packages/analytics-js/src/components/eventRepository/EventRepository.ts +225 -0
- package/packages/analytics-js/src/components/eventRepository/constants.ts +9 -0
- package/packages/analytics-js/src/components/eventRepository/index.ts +1 -0
- package/packages/analytics-js/src/components/eventRepository/types.ts +10 -0
- package/packages/analytics-js/src/components/eventRepository/utils.ts +53 -0
- package/packages/analytics-js/src/components/pluginsManager/PluginsManager.ts +332 -0
- package/packages/analytics-js/src/components/pluginsManager/bundledBuildPluginImports.ts +39 -0
- package/packages/analytics-js/src/components/pluginsManager/defaultPluginsList.ts +24 -0
- package/packages/analytics-js/src/components/pluginsManager/federatedModulesBuildPluginImports.ts +68 -0
- package/packages/analytics-js/src/components/pluginsManager/index.ts +1 -0
- package/packages/analytics-js/src/components/pluginsManager/pluginNames.ts +29 -0
- package/packages/analytics-js/src/components/pluginsManager/pluginsInventory.ts +47 -0
- package/packages/analytics-js/src/components/pluginsManager/types.ts +4 -0
- package/packages/analytics-js/src/components/preloadBuffer/index.ts +187 -0
- package/packages/analytics-js/src/components/preloadBuffer/types.ts +5 -0
- package/packages/analytics-js/src/components/userSessionManager/UserSessionManager.ts +642 -0
- package/packages/analytics-js/src/components/userSessionManager/constants.ts +25 -0
- package/packages/analytics-js/src/components/userSessionManager/index.ts +1 -0
- package/packages/analytics-js/src/components/userSessionManager/types.ts +29 -0
- package/packages/analytics-js/src/components/userSessionManager/utils.ts +109 -0
- package/packages/analytics-js/src/components/utilities/consent.ts +163 -0
- package/packages/analytics-js/src/components/utilities/destinations.ts +31 -0
- package/packages/analytics-js/src/components/utilities/event.ts +3 -0
- package/packages/analytics-js/src/components/utilities/globals.ts +54 -0
- package/packages/analytics-js/src/components/utilities/loadOptions.ts +176 -0
- package/packages/analytics-js/src/components/utilities/number.ts +23 -0
- package/packages/analytics-js/src/components/utilities/page.ts +103 -0
- package/packages/analytics-js/src/components/utilities/sort.ts +15 -0
- package/packages/analytics-js/src/components/utilities/statsCollection.ts +16 -0
- package/packages/analytics-js/src/components/utilities/url.ts +90 -0
- package/packages/analytics-js/src/constants/app.ts +24 -0
- package/packages/analytics-js/src/constants/encryption.ts +6 -0
- package/packages/analytics-js/src/constants/errors.ts +4 -0
- package/packages/analytics-js/src/constants/logMessages.ts +282 -0
- package/packages/analytics-js/src/constants/queryParams.ts +13 -0
- package/packages/analytics-js/src/constants/storage.ts +40 -0
- package/packages/analytics-js/src/constants/timeouts.ts +15 -0
- package/packages/analytics-js/src/constants/urls.ts +21 -0
- package/packages/analytics-js/src/index.ts +40 -0
- package/packages/analytics-js/src/services/ErrorHandler/ErrorHandler.ts +204 -0
- package/packages/analytics-js/src/services/ErrorHandler/constant.ts +3 -0
- package/packages/analytics-js/src/services/ErrorHandler/index.ts +1 -0
- package/packages/analytics-js/src/services/ErrorHandler/processError.ts +61 -0
- package/packages/analytics-js/src/services/HttpClient/HttpClient.ts +112 -0
- package/packages/analytics-js/src/services/HttpClient/index.ts +7 -0
- package/packages/analytics-js/src/services/HttpClient/xhr/xhrRequestHandler.ts +140 -0
- package/packages/analytics-js/src/services/HttpClient/xhr/xhrResponseHandler.ts +25 -0
- package/packages/analytics-js/src/services/Logger/Logger.ts +123 -0
- package/packages/analytics-js/src/services/Logger/index.ts +1 -0
- package/packages/analytics-js/src/services/Logger/types.ts +6 -0
- package/packages/analytics-js/src/services/PluginEngine/PluginEngine.ts +200 -0
- package/packages/analytics-js/src/services/PluginEngine/README.md +152 -0
- package/packages/analytics-js/src/services/PluginEngine/index.ts +1 -0
- package/packages/analytics-js/src/services/StoreManager/Store.ts +218 -0
- package/packages/analytics-js/src/services/StoreManager/StoreManager.ts +231 -0
- package/packages/analytics-js/src/services/StoreManager/component-cookie/README.md +23 -0
- package/packages/analytics-js/src/services/StoreManager/component-cookie/index.ts +138 -0
- package/packages/analytics-js/src/services/StoreManager/index.ts +2 -0
- package/packages/analytics-js/src/services/StoreManager/storages/CookieStorage.ts +80 -0
- package/packages/analytics-js/src/services/StoreManager/storages/InMemoryStorage.ts +66 -0
- package/packages/analytics-js/src/services/StoreManager/storages/LocalStorage.ts +68 -0
- package/packages/analytics-js/src/services/StoreManager/storages/defaultOptions.ts +39 -0
- package/packages/analytics-js/src/services/StoreManager/storages/index.ts +18 -0
- package/packages/analytics-js/src/services/StoreManager/storages/sessionStorage.ts +64 -0
- package/packages/analytics-js/src/services/StoreManager/storages/storageEngine.ts +91 -0
- package/packages/analytics-js/src/services/StoreManager/top-domain/README.md +21 -0
- package/packages/analytics-js/src/services/StoreManager/top-domain/index.ts +83 -0
- package/packages/analytics-js/src/services/StoreManager/types.ts +32 -0
- package/packages/analytics-js/src/services/StoreManager/utils.ts +33 -0
- package/packages/analytics-js/src/state/index.ts +53 -0
- package/packages/analytics-js/src/state/slices/capabilities.ts +19 -0
- package/packages/analytics-js/src/state/slices/consents.ts +16 -0
- package/packages/analytics-js/src/state/slices/context.ts +36 -0
- package/packages/analytics-js/src/state/slices/eventBuffer.ts +9 -0
- package/packages/analytics-js/src/state/slices/lifecycle.ts +19 -0
- package/packages/analytics-js/src/state/slices/loadOptions.ts +44 -0
- package/packages/analytics-js/src/state/slices/metrics.ts +12 -0
- package/packages/analytics-js/src/state/slices/nativeDestinations.ts +15 -0
- package/packages/analytics-js/src/state/slices/plugins.ts +13 -0
- package/packages/analytics-js/src/state/slices/reporting.ts +11 -0
- package/packages/analytics-js/src/state/slices/session.ts +24 -0
- package/packages/analytics-js/src/state/slices/source.ts +6 -0
- package/packages/analytics-js/src/state/slices/storage.ts +13 -0
- package/packages/analytics-js/src/types/index.ts +1 -0
- package/packages/analytics-js/src/types/remote-plugins.d.ts +15 -0
- package/packages/analytics-js/src/types/rudderanalytics.d.ts +16 -0
- package/packages/analytics-js/tsconfig.json +14 -0
- package/packages/analytics-js/tsconfig.spec.json +26 -0
- package/packages/analytics-js-common/.jscpd.json +17 -0
- package/packages/analytics-js-common/.size-limit.js +11 -0
- package/packages/analytics-js-common/CHANGELOG.md +180 -0
- package/packages/analytics-js-common/CHANGELOG_LATEST.md +7 -0
- package/packages/analytics-js-common/LICENSE +21 -0
- package/packages/analytics-js-common/README.md +42 -0
- package/packages/analytics-js-common/__fixtures__/fixtures.ts +161 -0
- package/packages/analytics-js-common/__fixtures__/msw.handlers.ts +82 -0
- package/packages/analytics-js-common/__fixtures__/msw.server.ts +6 -0
- package/packages/analytics-js-common/__mocks__/.gitkeep +0 -0
- package/packages/analytics-js-common/__tests__/services/BufferQueue/BufferQueue.test.ts +55 -0
- package/packages/analytics-js-common/__tests__/services/ExternalSrcLoader/ExternalSrcLoader.test.ts +170 -0
- package/packages/analytics-js-common/__tests__/utilities/checks.test.ts +95 -0
- package/packages/analytics-js-common/__tests__/utilities/destinations.test.ts +44 -0
- package/packages/analytics-js-common/__tests__/utilities/detect.test.ts +22 -0
- package/packages/analytics-js-common/__tests__/utilities/eventMethodOverloads.test.ts +260 -0
- package/packages/analytics-js-common/__tests__/utilities/json.test.ts +155 -0
- package/packages/analytics-js-common/__tests__/utilities/object.test.ts +287 -0
- package/packages/analytics-js-common/__tests__/utilities/string.test.ts +104 -0
- package/packages/analytics-js-common/__tests__/utilities/timezone.test.ts +9 -0
- package/packages/analytics-js-common/__tests__/utilities/uuid.test.ts +35 -0
- package/packages/analytics-js-common/__tests__/v1.1/utils/ObjectUtils.test.js +113 -0
- package/packages/analytics-js-common/__tests__/v1.1/utils/errorHandler.test.js +60 -0
- package/packages/analytics-js-common/babel.config.json +14 -0
- package/packages/analytics-js-common/jest.config.mjs +14 -0
- package/packages/analytics-js-common/package.json +92 -0
- package/packages/analytics-js-common/project.json +107 -0
- package/packages/analytics-js-common/src/constants/QueueStatuses.ts +10 -0
- package/packages/analytics-js-common/src/constants/consent.ts +6 -0
- package/packages/analytics-js-common/src/constants/destDisplayNamesToFileNamesMap.ts +243 -0
- package/packages/analytics-js-common/src/constants/destinationNames.ts +312 -0
- package/packages/analytics-js-common/src/constants/htmlAttributes.ts +3 -0
- package/packages/analytics-js-common/src/constants/index.ts +11 -0
- package/packages/analytics-js-common/src/constants/integrations/ActiveCampaign/constants.js +18 -0
- package/packages/analytics-js-common/src/constants/integrations/AdobeAnalytics/constants.ts +18 -0
- package/packages/analytics-js-common/src/constants/integrations/Adroll/constants.ts +14 -0
- package/packages/analytics-js-common/src/constants/integrations/Amplitude/constants.ts +13 -0
- package/packages/analytics-js-common/src/constants/integrations/Appcues/constants.ts +13 -0
- package/packages/analytics-js-common/src/constants/integrations/Axeptio/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/BingAds/constants.ts +16 -0
- package/packages/analytics-js-common/src/constants/integrations/Braze/constants.ts +22 -0
- package/packages/analytics-js-common/src/constants/integrations/Bugsnag/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Chartbeat/constants.ts +14 -0
- package/packages/analytics-js-common/src/constants/integrations/Clevertap/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/CommandBar/constants.ts +21 -0
- package/packages/analytics-js-common/src/constants/integrations/CommonIntegrationsConstant/constants.ts +194 -0
- package/packages/analytics-js-common/src/constants/integrations/Comscore/constants.ts +15 -0
- package/packages/analytics-js-common/src/constants/integrations/ConvertFlow/constants.ts +19 -0
- package/packages/analytics-js-common/src/constants/integrations/Criteo/constants.ts +22 -0
- package/packages/analytics-js-common/src/constants/integrations/CustomerIO/constants.ts +14 -0
- package/packages/analytics-js-common/src/constants/integrations/DCMFloodlight/constants.ts +19 -0
- package/packages/analytics-js-common/src/constants/integrations/Drip/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Engage/constants.ts +27 -0
- package/packages/analytics-js-common/src/constants/integrations/FacebookPixel/constants.ts +89 -0
- package/packages/analytics-js-common/src/constants/integrations/Fullstory/constants.ts +17 -0
- package/packages/analytics-js-common/src/constants/integrations/GA/constants.ts +14 -0
- package/packages/analytics-js-common/src/constants/integrations/GA360/constants.ts +18 -0
- package/packages/analytics-js-common/src/constants/integrations/GA4/constants.ts +19 -0
- package/packages/analytics-js-common/src/constants/integrations/GoogleAds/constants.ts +15 -0
- package/packages/analytics-js-common/src/constants/integrations/GoogleOptimize/constants.ts +17 -0
- package/packages/analytics-js-common/src/constants/integrations/GoogleTagManager/constants.ts +14 -0
- package/packages/analytics-js-common/src/constants/integrations/Heap/constants.ts +13 -0
- package/packages/analytics-js-common/src/constants/integrations/Hotjar/constants.ts +14 -0
- package/packages/analytics-js-common/src/constants/integrations/HubSpot/constants.ts +15 -0
- package/packages/analytics-js-common/src/constants/integrations/INTERCOM/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Iterable/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/June/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Keen/constants.ts +14 -0
- package/packages/analytics-js-common/src/constants/integrations/Kissmetrics/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Klaviyo/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/LaunchDarkly/constants.ts +15 -0
- package/packages/analytics-js-common/src/constants/integrations/Lemnisk/constants.ts +17 -0
- package/packages/analytics-js-common/src/constants/integrations/LinkedInInsightTag/constants.ts +20 -0
- package/packages/analytics-js-common/src/constants/integrations/LiveChat/constants.ts +16 -0
- package/packages/analytics-js-common/src/constants/integrations/Lotame/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Lytics/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Matomo/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/MicrosoftClarity/constants.ts +18 -0
- package/packages/analytics-js-common/src/constants/integrations/Mixpanel/constants.ts +15 -0
- package/packages/analytics-js-common/src/constants/integrations/MoEngage/constants.ts +16 -0
- package/packages/analytics-js-common/src/constants/integrations/Mouseflow/constants.ts +18 -0
- package/packages/analytics-js-common/src/constants/integrations/Ninetailed/constants.ts +13 -0
- package/packages/analytics-js-common/src/constants/integrations/Olark/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Optimizely/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Pendo/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/PinterestTag/constants.ts +23 -0
- package/packages/analytics-js-common/src/constants/integrations/Podsights/constants.ts +24 -0
- package/packages/analytics-js-common/src/constants/integrations/PostAffiliatePro/constants.ts +17 -0
- package/packages/analytics-js-common/src/constants/integrations/Posthog/constants.ts +16 -0
- package/packages/analytics-js-common/src/constants/integrations/ProfitWell/constants.ts +16 -0
- package/packages/analytics-js-common/src/constants/integrations/Qualaroo/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Qualtrics/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/QuantumMetric/constants.ts +17 -0
- package/packages/analytics-js-common/src/constants/integrations/QuoraPixel/constants.ts +19 -0
- package/packages/analytics-js-common/src/constants/integrations/RedditPixel/constants.ts +17 -0
- package/packages/analytics-js-common/src/constants/integrations/Refiner/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Rockerbox/constants.ts +16 -0
- package/packages/analytics-js-common/src/constants/integrations/RollBar/constants.ts +17 -0
- package/packages/analytics-js-common/src/constants/integrations/Satismeter/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Sendinblue/constants.ts +37 -0
- package/packages/analytics-js-common/src/constants/integrations/Sentry/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Shynet/constants.ts +18 -0
- package/packages/analytics-js-common/src/constants/integrations/SnapEngage/constants.ts +16 -0
- package/packages/analytics-js-common/src/constants/integrations/SnapPixel/constants.ts +17 -0
- package/packages/analytics-js-common/src/constants/integrations/SpotifyPixel/constants.ts +20 -0
- package/packages/analytics-js-common/src/constants/integrations/Sprig/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/TVSquared/constants.ts +18 -0
- package/packages/analytics-js-common/src/constants/integrations/TiktokAds/constants.ts +97 -0
- package/packages/analytics-js-common/src/constants/integrations/VWO/constants.ts +17 -0
- package/packages/analytics-js-common/src/constants/integrations/Vero/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/Woopra/constants.ts +12 -0
- package/packages/analytics-js-common/src/constants/integrations/YandexMetrica/constants.ts +14 -0
- package/packages/analytics-js-common/src/constants/integrationsConfig.ts +5 -0
- package/packages/analytics-js-common/src/constants/logMessages.ts +24 -0
- package/packages/analytics-js-common/src/constants/loggerContexts.ts +33 -0
- package/packages/analytics-js-common/src/constants/storages.ts +9 -0
- package/packages/analytics-js-common/src/constants/timeouts.ts +3 -0
- package/packages/analytics-js-common/src/constants/urls.ts +4 -0
- package/packages/analytics-js-common/src/index.ts +4 -0
- package/packages/analytics-js-common/src/services/BufferQueue/BufferQueue.ts +37 -0
- package/packages/analytics-js-common/src/services/ExternalSrcLoader/ExternalSrcLoader.ts +63 -0
- package/packages/analytics-js-common/src/services/ExternalSrcLoader/index.ts +1 -0
- package/packages/analytics-js-common/src/services/ExternalSrcLoader/jsFileLoader.ts +124 -0
- package/packages/analytics-js-common/src/services/ExternalSrcLoader/types.ts +26 -0
- package/packages/analytics-js-common/src/types/ApiObject.ts +14 -0
- package/packages/analytics-js-common/src/types/ApplicationLifecycle.ts +12 -0
- package/packages/analytics-js-common/src/types/ApplicationState.ts +172 -0
- package/packages/analytics-js-common/src/types/Consent.ts +47 -0
- package/packages/analytics-js-common/src/types/DataResidency.ts +9 -0
- package/packages/analytics-js-common/src/types/Destination.ts +85 -0
- package/packages/analytics-js-common/src/types/ErrorHandler.ts +39 -0
- package/packages/analytics-js-common/src/types/Event.ts +54 -0
- package/packages/analytics-js-common/src/types/EventApi.ts +45 -0
- package/packages/analytics-js-common/src/types/EventContext.ts +26 -0
- package/packages/analytics-js-common/src/types/HttpClient.ts +63 -0
- package/packages/analytics-js-common/src/types/IRudderAnalytics.ts +204 -0
- package/packages/analytics-js-common/src/types/Integration.ts +18 -0
- package/packages/analytics-js-common/src/types/LoadOptions.ts +159 -0
- package/packages/analytics-js-common/src/types/Logger.ts +19 -0
- package/packages/analytics-js-common/src/types/Nullable.ts +1 -0
- package/packages/analytics-js-common/src/types/PluginEngine.ts +41 -0
- package/packages/analytics-js-common/src/types/PluginsManager.ts +29 -0
- package/packages/analytics-js-common/src/types/Session.ts +8 -0
- package/packages/analytics-js-common/src/types/Source.ts +21 -0
- package/packages/analytics-js-common/src/types/Storage.ts +49 -0
- package/packages/analytics-js-common/src/types/Store.ts +82 -0
- package/packages/analytics-js-common/src/types/UserSessionStorage.ts +10 -0
- package/packages/analytics-js-common/src/types/traits.ts +91 -0
- package/packages/analytics-js-common/src/utilities/checks.ts +77 -0
- package/packages/analytics-js-common/src/utilities/crypto.ts +6 -0
- package/packages/analytics-js-common/src/utilities/destinations.ts +31 -0
- package/packages/analytics-js-common/src/utilities/detect.ts +8 -0
- package/packages/analytics-js-common/src/utilities/errors.ts +20 -0
- package/packages/analytics-js-common/src/utilities/eventMethodOverloads.ts +407 -0
- package/packages/analytics-js-common/src/utilities/http.ts +13 -0
- package/packages/analytics-js-common/src/utilities/index.ts +14 -0
- package/packages/analytics-js-common/src/utilities/json.ts +69 -0
- package/packages/analytics-js-common/src/utilities/object.ts +119 -0
- package/packages/analytics-js-common/src/utilities/string.ts +64 -0
- package/packages/analytics-js-common/src/utilities/timestamp.ts +10 -0
- package/packages/analytics-js-common/src/utilities/timezone.ts +11 -0
- package/packages/analytics-js-common/src/utilities/url.ts +3 -0
- package/packages/analytics-js-common/src/utilities/uuId.ts +13 -0
- package/packages/analytics-js-common/src/v1.1/utils/ObjectUtils.js +54 -0
- package/packages/analytics-js-common/src/v1.1/utils/ScriptLoader.js +51 -0
- package/packages/analytics-js-common/src/v1.1/utils/client_server_name.js +82 -0
- package/packages/analytics-js-common/src/v1.1/utils/config_to_integration_names.js +83 -0
- package/packages/analytics-js-common/src/v1.1/utils/constants.js +15 -0
- package/packages/analytics-js-common/src/v1.1/utils/errorHandler.js +88 -0
- package/packages/analytics-js-common/src/v1.1/utils/index.ts +10 -0
- package/packages/analytics-js-common/src/v1.1/utils/integration_cname.js +164 -0
- package/packages/analytics-js-common/src/v1.1/utils/logUtil.js +51 -0
- package/packages/analytics-js-common/src/v1.1/utils/notifyError.js +16 -0
- package/packages/analytics-js-common/src/v1.1/utils/storage/cookie.js +98 -0
- package/packages/analytics-js-common/src/v1.1/utils/storage/index.js +5 -0
- package/packages/analytics-js-common/src/v1.1/utils/storage/storage.js +384 -0
- package/packages/analytics-js-common/src/v1.1/utils/storage/store.js +79 -0
- package/packages/analytics-js-common/src/v1.1/utils/storage/v3DecryptionUtils.js +19 -0
- package/packages/analytics-js-common/tsconfig.json +14 -0
- package/packages/analytics-js-common/tsconfig.spec.json +23 -0
- package/packages/analytics-js-common/types/rudderanalytics.d.ts +16 -0
- package/packages/analytics-js-integrations/.jscpd.json +17 -0
- package/packages/analytics-js-integrations/.size-limit.js +11 -0
- package/packages/analytics-js-integrations/CHANGELOG.md +241 -0
- package/packages/analytics-js-integrations/CHANGELOG_LATEST.md +12 -0
- package/packages/analytics-js-integrations/LICENSE +21 -0
- package/packages/analytics-js-integrations/README.md +35 -0
- package/packages/analytics-js-integrations/__fixtures__/.gitkeep +0 -0
- package/packages/analytics-js-integrations/__mocks__/.gitkeep +0 -0
- package/packages/analytics-js-integrations/__tests__/common/common.test.js +49 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Amplitude/browser.test.js +926 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Amplitude/util.test.js +190 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Appcues/appcues.test.js +163 -0
- package/packages/analytics-js-integrations/__tests__/integrations/BingAds/__fixtures__/data.js +17 -0
- package/packages/analytics-js-integrations/__tests__/integrations/BingAds/browser.test.js +166 -0
- package/packages/analytics-js-integrations/__tests__/integrations/BingAds/utils.test.js +138 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Braze/browser.test.js +1077 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Clevertap/browser.test.js +43 -0
- package/packages/analytics-js-integrations/__tests__/integrations/CommandBar/browser.test.js +115 -0
- package/packages/analytics-js-integrations/__tests__/integrations/FacebookPixel/browser.test.js +410 -0
- package/packages/analytics-js-integrations/__tests__/integrations/FacebookPixel/utils.test.js +775 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Fullstory/browser.test.js +173 -0
- package/packages/analytics-js-integrations/__tests__/integrations/GA/browser.test.js +179 -0
- package/packages/analytics-js-integrations/__tests__/integrations/GA4/__mocks__/data.js +1563 -0
- package/packages/analytics-js-integrations/__tests__/integrations/GA4/browser.test.js +212 -0
- package/packages/analytics-js-integrations/__tests__/integrations/GA4/utils.test.js +380 -0
- package/packages/analytics-js-integrations/__tests__/integrations/GoogleAds/__fixtures__/data.js +256 -0
- package/packages/analytics-js-integrations/__tests__/integrations/GoogleAds/browser.test.js +372 -0
- package/packages/analytics-js-integrations/__tests__/integrations/GoogleAds/utils.test.js +121 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Hotjar/browser.test.js +108 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Intercom/browser.test.js +135 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Intercom/util.test.js +69 -0
- package/packages/analytics-js-integrations/__tests__/integrations/LaunchDarkly/__fixtures__/data.js +61 -0
- package/packages/analytics-js-integrations/__tests__/integrations/LaunchDarkly/browser.test.js +151 -0
- package/packages/analytics-js-integrations/__tests__/integrations/LaunchDarkly/utils.test.js +36 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Lemnisk/browser.test.js +172 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Matomo/browser.test.js +208 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Mixpanel/browser.test.js +117 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Mixpanel/util.test.js +504 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Ninetailed/browser.test.js +148 -0
- package/packages/analytics-js-integrations/__tests__/integrations/PinterestTag/__fixtures__/data.js +24 -0
- package/packages/analytics-js-integrations/__tests__/integrations/PinterestTag/utils.test.js +19 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Podsights/utils.test.js +394 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Posthog/browser.test.js +420 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Posthog/utils.test.js +111 -0
- package/packages/analytics-js-integrations/__tests__/integrations/SpotifyPixel/browser.test.js +630 -0
- package/packages/analytics-js-integrations/__tests__/integrations/Sprig/browser.test.js +85 -0
- package/packages/analytics-js-integrations/__tests__/integrations/TikTokAds/browser.test.js +421 -0
- package/packages/analytics-js-integrations/__tests__/integrations/VWO/browser.test.js +143 -0
- package/packages/analytics-js-integrations/__tests__/integrations/VWO/utils.test.js +36 -0
- package/packages/analytics-js-integrations/__tests__/utils/camelcase.test.js +29 -0
- package/packages/analytics-js-integrations/__tests__/utils/commonUtils.test.js +347 -0
- package/packages/analytics-js-integrations/__tests__/utils/utils.test.js +337 -0
- package/packages/analytics-js-integrations/babel.config.json +14 -0
- package/packages/analytics-js-integrations/jest.config.mjs +21 -0
- package/packages/analytics-js-integrations/package.json +143 -0
- package/packages/analytics-js-integrations/project.json +106 -0
- package/packages/analytics-js-integrations/public/list_integration_sdks.html +408 -0
- package/packages/analytics-js-integrations/rollup.config.mjs +151 -0
- package/packages/analytics-js-integrations/scripts/integrationBuildScript.js +79 -0
- package/packages/analytics-js-integrations/src/integrations/ActiveCampaign/browser.js +53 -0
- package/packages/analytics-js-integrations/src/integrations/ActiveCampaign/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/ActiveCampaign/nativeSdkLoader.js +24 -0
- package/packages/analytics-js-integrations/src/integrations/AdobeAnalytics/browser.js +279 -0
- package/packages/analytics-js-integrations/src/integrations/AdobeAnalytics/eCommHandle.js +56 -0
- package/packages/analytics-js-integrations/src/integrations/AdobeAnalytics/heartbeatHandle.js +268 -0
- package/packages/analytics-js-integrations/src/integrations/AdobeAnalytics/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/AdobeAnalytics/util.js +681 -0
- package/packages/analytics-js-integrations/src/integrations/Adroll/browser.js +123 -0
- package/packages/analytics-js-integrations/src/integrations/Adroll/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Adroll/util.js +48 -0
- package/packages/analytics-js-integrations/src/integrations/Amplitude/browser.js +374 -0
- package/packages/analytics-js-integrations/src/integrations/Amplitude/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Amplitude/nativeSdkLoader.js +114 -0
- package/packages/analytics-js-integrations/src/integrations/Amplitude/test/test_amplitude.html +157 -0
- package/packages/analytics-js-integrations/src/integrations/Amplitude/utils.js +67 -0
- package/packages/analytics-js-integrations/src/integrations/Appcues/browser.js +89 -0
- package/packages/analytics-js-integrations/src/integrations/Appcues/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Axeptio/browser.js +61 -0
- package/packages/analytics-js-integrations/src/integrations/Axeptio/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Axeptio/nativeSdkLoader.js +14 -0
- package/packages/analytics-js-integrations/src/integrations/Axeptio/utils.js +16 -0
- package/packages/analytics-js-integrations/src/integrations/BingAds/browser.js +81 -0
- package/packages/analytics-js-integrations/src/integrations/BingAds/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/BingAds/nativeSdkLoader.js +30 -0
- package/packages/analytics-js-integrations/src/integrations/BingAds/utils.js +100 -0
- package/packages/analytics-js-integrations/src/integrations/Braze/browser.js +297 -0
- package/packages/analytics-js-integrations/src/integrations/Braze/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Braze/nativeSdkLoader.js +35 -0
- package/packages/analytics-js-integrations/src/integrations/Braze/utils.js +51 -0
- package/packages/analytics-js-integrations/src/integrations/Bugsnag/browser.js +62 -0
- package/packages/analytics-js-integrations/src/integrations/Bugsnag/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Chartbeat/browser.js +143 -0
- package/packages/analytics-js-integrations/src/integrations/Chartbeat/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Chartbeat/nativeSdkLoader.js +7 -0
- package/packages/analytics-js-integrations/src/integrations/Clevertap/browser.js +202 -0
- package/packages/analytics-js-integrations/src/integrations/Clevertap/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Clevertap/utils.js +17 -0
- package/packages/analytics-js-integrations/src/integrations/CommandBar/browser.js +78 -0
- package/packages/analytics-js-integrations/src/integrations/CommandBar/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/CommandBar/nativeSdkLoader.js +85 -0
- package/packages/analytics-js-integrations/src/integrations/Comscore/browser.js +126 -0
- package/packages/analytics-js-integrations/src/integrations/Comscore/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Comscore/nativeSdkLoader.js +10 -0
- package/packages/analytics-js-integrations/src/integrations/ConvertFlow/browser.js +60 -0
- package/packages/analytics-js-integrations/src/integrations/ConvertFlow/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/ConvertFlow/utils.js +107 -0
- package/packages/analytics-js-integrations/src/integrations/Criteo/browser.js +144 -0
- package/packages/analytics-js-integrations/src/integrations/Criteo/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Criteo/utils.js +346 -0
- package/packages/analytics-js-integrations/src/integrations/CustomerIO/browser.js +85 -0
- package/packages/analytics-js-integrations/src/integrations/CustomerIO/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/CustomerIO/nativeSdkLoader.js +33 -0
- package/packages/analytics-js-integrations/src/integrations/DCMFloodlight/browser.js +228 -0
- package/packages/analytics-js-integrations/src/integrations/DCMFloodlight/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/DCMFloodlight/utils.js +353 -0
- package/packages/analytics-js-integrations/src/integrations/Drip/browser.js +165 -0
- package/packages/analytics-js-integrations/src/integrations/Drip/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Drip/nativeSdkLoader.js +10 -0
- package/packages/analytics-js-integrations/src/integrations/Drip/utils.js +29 -0
- package/packages/analytics-js-integrations/src/integrations/Engage/browser.js +119 -0
- package/packages/analytics-js-integrations/src/integrations/Engage/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Engage/nativeSdkLoader.js +25 -0
- package/packages/analytics-js-integrations/src/integrations/Engage/utils.js +69 -0
- package/packages/analytics-js-integrations/src/integrations/FacebookPixel/browser.js +326 -0
- package/packages/analytics-js-integrations/src/integrations/FacebookPixel/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/FacebookPixel/utils.js +332 -0
- package/packages/analytics-js-integrations/src/integrations/Fullstory/browser.js +175 -0
- package/packages/analytics-js-integrations/src/integrations/Fullstory/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Fullstory/nativeSdkLoader.js +69 -0
- package/packages/analytics-js-integrations/src/integrations/Fullstory/utils.js +17 -0
- package/packages/analytics-js-integrations/src/integrations/GA/browser.js +817 -0
- package/packages/analytics-js-integrations/src/integrations/GA/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/GA360/browser.js +58 -0
- package/packages/analytics-js-integrations/src/integrations/GA360/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/GA4/browser.js +264 -0
- package/packages/analytics-js-integrations/src/integrations/GA4/config.js +296 -0
- package/packages/analytics-js-integrations/src/integrations/GA4/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/GA4/utils.js +374 -0
- package/packages/analytics-js-integrations/src/integrations/GoogleAds/browser.js +219 -0
- package/packages/analytics-js-integrations/src/integrations/GoogleAds/browser.test.js +16 -0
- package/packages/analytics-js-integrations/src/integrations/GoogleAds/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/GoogleAds/nativeSdkLoader.js +28 -0
- package/packages/analytics-js-integrations/src/integrations/GoogleAds/utils.js +135 -0
- package/packages/analytics-js-integrations/src/integrations/GoogleOptimize/browser.js +81 -0
- package/packages/analytics-js-integrations/src/integrations/GoogleOptimize/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/GoogleTagManager/browser.js +96 -0
- package/packages/analytics-js-integrations/src/integrations/GoogleTagManager/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/GoogleTagManager/nativeSdkLoader.js +21 -0
- package/packages/analytics-js-integrations/src/integrations/Heap/browser.js +64 -0
- package/packages/analytics-js-integrations/src/integrations/Heap/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Heap/nativeSdkLoader.js +40 -0
- package/packages/analytics-js-integrations/src/integrations/Heap/util.js +23 -0
- package/packages/analytics-js-integrations/src/integrations/Hotjar/browser.js +79 -0
- package/packages/analytics-js-integrations/src/integrations/Hotjar/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Hotjar/nativeSdkLoader.js +21 -0
- package/packages/analytics-js-integrations/src/integrations/HubSpot/browser.js +91 -0
- package/packages/analytics-js-integrations/src/integrations/HubSpot/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/INTERCOM/browser.js +112 -0
- package/packages/analytics-js-integrations/src/integrations/INTERCOM/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/INTERCOM/nativeSdkLoader.js +46 -0
- package/packages/analytics-js-integrations/src/integrations/INTERCOM/utils.js +68 -0
- package/packages/analytics-js-integrations/src/integrations/Iterable/browser.js +179 -0
- package/packages/analytics-js-integrations/src/integrations/Iterable/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Iterable/utils.js +127 -0
- package/packages/analytics-js-integrations/src/integrations/June/browser.js +96 -0
- package/packages/analytics-js-integrations/src/integrations/June/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Keen/browser.js +150 -0
- package/packages/analytics-js-integrations/src/integrations/Keen/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Kissmetrics/browser.js +245 -0
- package/packages/analytics-js-integrations/src/integrations/Kissmetrics/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Kissmetrics/nativeSdkLoader.js +23 -0
- package/packages/analytics-js-integrations/src/integrations/Klaviyo/browser.js +197 -0
- package/packages/analytics-js-integrations/src/integrations/Klaviyo/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Klaviyo/util.js +91 -0
- package/packages/analytics-js-integrations/src/integrations/LaunchDarkly/browser.js +75 -0
- package/packages/analytics-js-integrations/src/integrations/LaunchDarkly/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/LaunchDarkly/utils.js +40 -0
- package/packages/analytics-js-integrations/src/integrations/Lemnisk/browser.js +81 -0
- package/packages/analytics-js-integrations/src/integrations/Lemnisk/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Lemnisk/nativeSdkLoader.js +34 -0
- package/packages/analytics-js-integrations/src/integrations/LinkedInInsightTag/browser.js +79 -0
- package/packages/analytics-js-integrations/src/integrations/LinkedInInsightTag/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/LiveChat/browser.js +81 -0
- package/packages/analytics-js-integrations/src/integrations/LiveChat/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/LiveChat/nativeSdkLoader.js +40 -0
- package/packages/analytics-js-integrations/src/integrations/LiveChat/util.js +71 -0
- package/packages/analytics-js-integrations/src/integrations/Lotame/LotameStorage.js +21 -0
- package/packages/analytics-js-integrations/src/integrations/Lotame/browser.js +152 -0
- package/packages/analytics-js-integrations/src/integrations/Lotame/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Lytics/browser.js +103 -0
- package/packages/analytics-js-integrations/src/integrations/Lytics/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Lytics/nativeSdkLoader.js +77 -0
- package/packages/analytics-js-integrations/src/integrations/Lytics/test/script-test-lytics.html +250 -0
- package/packages/analytics-js-integrations/src/integrations/Matomo/browser.js +184 -0
- package/packages/analytics-js-integrations/src/integrations/Matomo/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Matomo/nativeSdkLoader.js +20 -0
- package/packages/analytics-js-integrations/src/integrations/Matomo/util.js +433 -0
- package/packages/analytics-js-integrations/src/integrations/MicrosoftClarity/browser.js +69 -0
- package/packages/analytics-js-integrations/src/integrations/MicrosoftClarity/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/MicrosoftClarity/nativeSdkLoader.js +22 -0
- package/packages/analytics-js-integrations/src/integrations/Mixpanel/browser.js +353 -0
- package/packages/analytics-js-integrations/src/integrations/Mixpanel/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Mixpanel/nativeSdkLoader.js +71 -0
- package/packages/analytics-js-integrations/src/integrations/Mixpanel/util.js +288 -0
- package/packages/analytics-js-integrations/src/integrations/MoEngage/browser.js +131 -0
- package/packages/analytics-js-integrations/src/integrations/MoEngage/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/MoEngage/nativeSdkLoader.js +65 -0
- package/packages/analytics-js-integrations/src/integrations/MoEngage/test/script-test-moengage.html +216 -0
- package/packages/analytics-js-integrations/src/integrations/Mouseflow/browser.js +97 -0
- package/packages/analytics-js-integrations/src/integrations/Mouseflow/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Mouseflow/utils.js +41 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/browser.js +65 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/README.md +70 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/package-lock.json +17843 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/package.json +43 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/public/favicon.ico +0 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/public/index.html +75 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/public/logo192.png +0 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/public/logo512.png +0 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/public/manifest.json +25 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/public/robots.txt +3 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/src/App.css +38 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/src/App.js +108 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/src/index.css +34 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/src/index.js +17 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/src/logo.svg +1 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/src/reportWebVitals.js +13 -0
- package/packages/analytics-js-integrations/src/integrations/Ninetailed/sample-app/src/setupTests.js +5 -0
- package/packages/analytics-js-integrations/src/integrations/Olark/browser.js +92 -0
- package/packages/analytics-js-integrations/src/integrations/Olark/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Olark/nativeSdkLoader.js +31 -0
- package/packages/analytics-js-integrations/src/integrations/Olark/utils.js +51 -0
- package/packages/analytics-js-integrations/src/integrations/Optimizely/browser.js +244 -0
- package/packages/analytics-js-integrations/src/integrations/Optimizely/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Optimizely/utils.js +23 -0
- package/packages/analytics-js-integrations/src/integrations/Pendo/browser.js +123 -0
- package/packages/analytics-js-integrations/src/integrations/Pendo/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Pendo/nativeSdkLoader.js +32 -0
- package/packages/analytics-js-integrations/src/integrations/PinterestTag/browser.js +240 -0
- package/packages/analytics-js-integrations/src/integrations/PinterestTag/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/PinterestTag/nativeSdkLoader.js +19 -0
- package/packages/analytics-js-integrations/src/integrations/PinterestTag/propertyMappingConfig.js +57 -0
- package/packages/analytics-js-integrations/src/integrations/PinterestTag/test/input.js +180 -0
- package/packages/analytics-js-integrations/src/integrations/PinterestTag/test/output.js +129 -0
- package/packages/analytics-js-integrations/src/integrations/PinterestTag/utils.js +50 -0
- package/packages/analytics-js-integrations/src/integrations/Podsights/browser.js +179 -0
- package/packages/analytics-js-integrations/src/integrations/Podsights/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Podsights/utils.js +64 -0
- package/packages/analytics-js-integrations/src/integrations/PostAffiliatePro/browser.js +132 -0
- package/packages/analytics-js-integrations/src/integrations/PostAffiliatePro/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/PostAffiliatePro/utils.js +40 -0
- package/packages/analytics-js-integrations/src/integrations/Posthog/browser.js +147 -0
- package/packages/analytics-js-integrations/src/integrations/Posthog/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Posthog/nativeSdkLoader.js +48 -0
- package/packages/analytics-js-integrations/src/integrations/Posthog/test/test_posthog.html +77 -0
- package/packages/analytics-js-integrations/src/integrations/Posthog/utils.js +52 -0
- package/packages/analytics-js-integrations/src/integrations/ProfitWell/browser.js +71 -0
- package/packages/analytics-js-integrations/src/integrations/ProfitWell/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/ProfitWell/nativeSdkLoader.js +25 -0
- package/packages/analytics-js-integrations/src/integrations/Qualaroo/browser.js +116 -0
- package/packages/analytics-js-integrations/src/integrations/Qualaroo/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Qualaroo/utils.js +83 -0
- package/packages/analytics-js-integrations/src/integrations/Qualtrics/browser.js +92 -0
- package/packages/analytics-js-integrations/src/integrations/Qualtrics/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Qualtrics/nativeSdkLoader.js +79 -0
- package/packages/analytics-js-integrations/src/integrations/QuantumMetric/browser.js +54 -0
- package/packages/analytics-js-integrations/src/integrations/QuantumMetric/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/QuoraPixel/browser.js +77 -0
- package/packages/analytics-js-integrations/src/integrations/QuoraPixel/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/QuoraPixel/nativeSdkLoader.js +21 -0
- package/packages/analytics-js-integrations/src/integrations/RedditPixel/browser.js +103 -0
- package/packages/analytics-js-integrations/src/integrations/RedditPixel/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/RedditPixel/nativeSdkLoader.js +21 -0
- package/packages/analytics-js-integrations/src/integrations/Refiner/browser.js +117 -0
- package/packages/analytics-js-integrations/src/integrations/Refiner/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Refiner/nativeSdkLoader.js +20 -0
- package/packages/analytics-js-integrations/src/integrations/Refiner/utils.js +44 -0
- package/packages/analytics-js-integrations/src/integrations/Rockerbox/browser.js +90 -0
- package/packages/analytics-js-integrations/src/integrations/Rockerbox/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Rockerbox/nativeSdkLoader.js +32 -0
- package/packages/analytics-js-integrations/src/integrations/RollBar/browser.js +93 -0
- package/packages/analytics-js-integrations/src/integrations/RollBar/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/RollBar/nativeSdkLoader.js +383 -0
- package/packages/analytics-js-integrations/src/integrations/Satismeter/browser.js +92 -0
- package/packages/analytics-js-integrations/src/integrations/Satismeter/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Satismeter/nativeSdkLoader.js +23 -0
- package/packages/analytics-js-integrations/src/integrations/Satismeter/util.js +54 -0
- package/packages/analytics-js-integrations/src/integrations/Sendinblue/browser.js +111 -0
- package/packages/analytics-js-integrations/src/integrations/Sendinblue/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Sendinblue/nativeSdkLoader.js +36 -0
- package/packages/analytics-js-integrations/src/integrations/Sendinblue/utils.js +129 -0
- package/packages/analytics-js-integrations/src/integrations/Sentry/browser.js +120 -0
- package/packages/analytics-js-integrations/src/integrations/Sentry/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Sentry/utils.js +84 -0
- package/packages/analytics-js-integrations/src/integrations/Shynet/browser.js +99 -0
- package/packages/analytics-js-integrations/src/integrations/Shynet/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/SnapEngage/browser.js +74 -0
- package/packages/analytics-js-integrations/src/integrations/SnapEngage/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/SnapEngage/nativeSdkLoader.js +24 -0
- package/packages/analytics-js-integrations/src/integrations/SnapEngage/util.js +63 -0
- package/packages/analytics-js-integrations/src/integrations/SnapPixel/browser.js +226 -0
- package/packages/analytics-js-integrations/src/integrations/SnapPixel/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/SnapPixel/nativeSdkLoader.js +20 -0
- package/packages/analytics-js-integrations/src/integrations/SnapPixel/util.js +214 -0
- package/packages/analytics-js-integrations/src/integrations/SpotifyPixel/browser.js +180 -0
- package/packages/analytics-js-integrations/src/integrations/SpotifyPixel/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Sprig/browser.js +89 -0
- package/packages/analytics-js-integrations/src/integrations/Sprig/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Sprig/nativeSdkLoader.js +19 -0
- package/packages/analytics-js-integrations/src/integrations/TVSquared/browser.js +99 -0
- package/packages/analytics-js-integrations/src/integrations/TVSquared/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/TVSquared/utils.js +41 -0
- package/packages/analytics-js-integrations/src/integrations/TiktokAds/browser.js +111 -0
- package/packages/analytics-js-integrations/src/integrations/TiktokAds/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/TiktokAds/nativeSdkLoader.js +52 -0
- package/packages/analytics-js-integrations/src/integrations/TiktokAds/util.js +70 -0
- package/packages/analytics-js-integrations/src/integrations/VWO/browser.js +155 -0
- package/packages/analytics-js-integrations/src/integrations/VWO/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/VWO/nativeSdkLoader.js +64 -0
- package/packages/analytics-js-integrations/src/integrations/VWO/utils.js +42 -0
- package/packages/analytics-js-integrations/src/integrations/Vero/browser.js +166 -0
- package/packages/analytics-js-integrations/src/integrations/Vero/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Vero/utils.js +17 -0
- package/packages/analytics-js-integrations/src/integrations/Woopra/browser.js +82 -0
- package/packages/analytics-js-integrations/src/integrations/Woopra/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/Woopra/nativeSdkLoader.js +43 -0
- package/packages/analytics-js-integrations/src/integrations/YandexMetrica/browser.js +139 -0
- package/packages/analytics-js-integrations/src/integrations/YandexMetrica/index.js +1 -0
- package/packages/analytics-js-integrations/src/integrations/YandexMetrica/nativeSdkLoader.js +35 -0
- package/packages/analytics-js-integrations/src/integrations/YandexMetrica/utils.js +140 -0
- package/packages/analytics-js-integrations/src/integrations/index.js +163 -0
- package/packages/analytics-js-integrations/src/utils/camelcase.js +48 -0
- package/packages/analytics-js-integrations/src/utils/commonUtils.js +214 -0
- package/packages/analytics-js-integrations/src/utils/constants.js +4 -0
- package/packages/analytics-js-integrations/src/utils/logger.js +106 -0
- package/packages/analytics-js-integrations/src/utils/utils.js +585 -0
- package/packages/analytics-js-integrations/tsconfig.json +8 -0
- package/packages/analytics-js-integrations/tsconfig.spec.json +26 -0
- package/packages/analytics-js-plugins/.jscpd.json +17 -0
- package/packages/analytics-js-plugins/.size-limit.js +16 -0
- package/packages/analytics-js-plugins/CHANGELOG.md +212 -0
- package/packages/analytics-js-plugins/CHANGELOG_LATEST.md +7 -0
- package/packages/analytics-js-plugins/LICENSE +21 -0
- package/packages/analytics-js-plugins/README.md +57 -0
- package/packages/analytics-js-plugins/__fixtures__/.gitkeep +0 -0
- package/packages/analytics-js-plugins/__fixtures__/fixtures.ts +174 -0
- package/packages/analytics-js-plugins/__fixtures__/msw.handlers.js +45 -0
- package/packages/analytics-js-plugins/__fixtures__/msw.server.js +6 -0
- package/packages/analytics-js-plugins/__mocks__/.gitkeep +0 -0
- package/packages/analytics-js-plugins/__tests__/beaconQueue/.gitkeep +0 -0
- package/packages/analytics-js-plugins/__tests__/bugsnag/index.test.ts +116 -0
- package/packages/analytics-js-plugins/__tests__/bugsnag/utils.test.ts +555 -0
- package/packages/analytics-js-plugins/__tests__/customConsentManager/index.test.ts +264 -0
- package/packages/analytics-js-plugins/__tests__/deviceModeDestinations/utils.test.ts +260 -0
- package/packages/analytics-js-plugins/__tests__/deviceModeTransformation/.gitkeep +0 -0
- package/packages/analytics-js-plugins/__tests__/deviceModeTransformation/index.test.ts +287 -0
- package/packages/analytics-js-plugins/__tests__/deviceModeTransformation/utilities.test.ts +22 -0
- package/packages/analytics-js-plugins/__tests__/errorReporting/index.test.ts +102 -0
- package/packages/analytics-js-plugins/__tests__/externalAnonymousId/.gitkeep +0 -0
- package/packages/analytics-js-plugins/__tests__/googleLinker/.gitkeep +0 -0
- package/packages/analytics-js-plugins/__tests__/ketchConsentManager/index.test.ts +498 -0
- package/packages/analytics-js-plugins/__tests__/ketchConsentManager/utils.test.ts +189 -0
- package/packages/analytics-js-plugins/__tests__/nativeDestinationQueue/utilities.test.ts +98 -0
- package/packages/analytics-js-plugins/__tests__/oneTrustConsentManager/index.test.ts +395 -0
- package/packages/analytics-js-plugins/__tests__/storageEncryption/index.test.ts +37 -0
- package/packages/analytics-js-plugins/__tests__/storageEncryptionLegacy/index.test.ts +41 -0
- package/packages/analytics-js-plugins/__tests__/storageMigrator/.gitkeep +0 -0
- package/packages/analytics-js-plugins/__tests__/storageMigrator/index.test.ts +144 -0
- package/packages/analytics-js-plugins/__tests__/utilities/destination.test.ts +133 -0
- package/packages/analytics-js-plugins/__tests__/utilities/queue.test.ts +327 -0
- package/packages/analytics-js-plugins/__tests__/utilities/retryQueue/RetryQueue.test.ts +1077 -0
- package/packages/analytics-js-plugins/__tests__/utilities/retryQueue/Schedule.test.ts +78 -0
- package/packages/analytics-js-plugins/__tests__/xhrQueue/index.test.ts +320 -0
- package/packages/analytics-js-plugins/__tests__/xhrQueue/utilities.test.ts +388 -0
- package/packages/analytics-js-plugins/babel.config.json +14 -0
- package/packages/analytics-js-plugins/jest.config.mjs +14 -0
- package/packages/analytics-js-plugins/package.json +106 -0
- package/packages/analytics-js-plugins/project.json +131 -0
- package/packages/analytics-js-plugins/public/.gitkeep +0 -0
- package/packages/analytics-js-plugins/rollup.config.mjs +245 -0
- package/packages/analytics-js-plugins/src/beaconQueue/constants.ts +27 -0
- package/packages/analytics-js-plugins/src/beaconQueue/index.ts +146 -0
- package/packages/analytics-js-plugins/src/beaconQueue/logMessages.ts +24 -0
- package/packages/analytics-js-plugins/src/beaconQueue/types.ts +12 -0
- package/packages/analytics-js-plugins/src/beaconQueue/utilities.ts +68 -0
- package/packages/analytics-js-plugins/src/bugsnag/constants.ts +52 -0
- package/packages/analytics-js-plugins/src/bugsnag/index.ts +65 -0
- package/packages/analytics-js-plugins/src/bugsnag/logMessages.ts +19 -0
- package/packages/analytics-js-plugins/src/bugsnag/utils.ts +214 -0
- package/packages/analytics-js-plugins/src/customConsentManager/constants.ts +3 -0
- package/packages/analytics-js-plugins/src/customConsentManager/index.ts +86 -0
- package/packages/analytics-js-plugins/src/customConsentManager/logMessages.ts +3 -0
- package/packages/analytics-js-plugins/src/deviceModeDestinations/constants.ts +6 -0
- package/packages/analytics-js-plugins/src/deviceModeDestinations/index.ts +138 -0
- package/packages/analytics-js-plugins/src/deviceModeDestinations/logMessages.ts +24 -0
- package/packages/analytics-js-plugins/src/deviceModeDestinations/types.ts +28 -0
- package/packages/analytics-js-plugins/src/deviceModeDestinations/utils.ts +249 -0
- package/packages/analytics-js-plugins/src/deviceModeTransformation/constants.ts +12 -0
- package/packages/analytics-js-plugins/src/deviceModeTransformation/index.ts +111 -0
- package/packages/analytics-js-plugins/src/deviceModeTransformation/logMessages.ts +28 -0
- package/packages/analytics-js-plugins/src/deviceModeTransformation/types.ts +38 -0
- package/packages/analytics-js-plugins/src/deviceModeTransformation/utilities.ts +155 -0
- package/packages/analytics-js-plugins/src/errorReporting/index.ts +62 -0
- package/packages/analytics-js-plugins/src/errorReporting/logMessages.ts +3 -0
- package/packages/analytics-js-plugins/src/externalAnonymousId/constants.ts +5 -0
- package/packages/analytics-js-plugins/src/externalAnonymousId/index.ts +47 -0
- package/packages/analytics-js-plugins/src/externalAnonymousId/util.ts +25 -0
- package/packages/analytics-js-plugins/src/googleLinker/base64Decoder.ts +33 -0
- package/packages/analytics-js-plugins/src/googleLinker/constants.ts +1 -0
- package/packages/analytics-js-plugins/src/googleLinker/crc32.ts +44 -0
- package/packages/analytics-js-plugins/src/googleLinker/index.ts +30 -0
- package/packages/analytics-js-plugins/src/googleLinker/userLib.ts +16 -0
- package/packages/analytics-js-plugins/src/googleLinker/utils.ts +156 -0
- package/packages/analytics-js-plugins/src/index.ts +15 -0
- package/packages/analytics-js-plugins/src/ketchConsentManager/constants.ts +4 -0
- package/packages/analytics-js-plugins/src/ketchConsentManager/index.ts +120 -0
- package/packages/analytics-js-plugins/src/ketchConsentManager/logMessages.ts +15 -0
- package/packages/analytics-js-plugins/src/ketchConsentManager/types.ts +11 -0
- package/packages/analytics-js-plugins/src/ketchConsentManager/utils.ts +95 -0
- package/packages/analytics-js-plugins/src/nativeDestinationQueue/constants.ts +9 -0
- package/packages/analytics-js-plugins/src/nativeDestinationQueue/index.ts +159 -0
- package/packages/analytics-js-plugins/src/nativeDestinationQueue/logMessages.ts +14 -0
- package/packages/analytics-js-plugins/src/nativeDestinationQueue/utilities.ts +81 -0
- package/packages/analytics-js-plugins/src/oneTrustConsentManager/constants.ts +3 -0
- package/packages/analytics-js-plugins/src/oneTrustConsentManager/index.ts +131 -0
- package/packages/analytics-js-plugins/src/oneTrustConsentManager/logMessages.ts +8 -0
- package/packages/analytics-js-plugins/src/oneTrustConsentManager/types.ts +4 -0
- package/packages/analytics-js-plugins/src/shared-chunks/common.ts +13 -0
- package/packages/analytics-js-plugins/src/shared-chunks/deviceModeDestinations.ts +3 -0
- package/packages/analytics-js-plugins/src/storageEncryption/constants.ts +1 -0
- package/packages/analytics-js-plugins/src/storageEncryption/encryptionUtils.ts +14 -0
- package/packages/analytics-js-plugins/src/storageEncryption/index.ts +26 -0
- package/packages/analytics-js-plugins/src/storageEncryptionLegacy/constants.ts +2 -0
- package/packages/analytics-js-plugins/src/storageEncryptionLegacy/index.ts +26 -0
- package/packages/analytics-js-plugins/src/storageEncryptionLegacy/legacyEncryptionUtils.ts +18 -0
- package/packages/analytics-js-plugins/src/storageMigrator/constants.ts +3 -0
- package/packages/analytics-js-plugins/src/storageMigrator/index.ts +59 -0
- package/packages/analytics-js-plugins/src/storageMigrator/logMessages.ts +4 -0
- package/packages/analytics-js-plugins/src/types/plugins.ts +69 -0
- package/packages/analytics-js-plugins/src/utilities/constants.ts +3 -0
- package/packages/analytics-js-plugins/src/utilities/destination.ts +40 -0
- package/packages/analytics-js-plugins/src/utilities/eventsDelivery.ts +85 -0
- package/packages/analytics-js-plugins/src/utilities/retryQueue/README.md +135 -0
- package/packages/analytics-js-plugins/src/utilities/retryQueue/RetryQueue.ts +736 -0
- package/packages/analytics-js-plugins/src/utilities/retryQueue/Schedule.ts +101 -0
- package/packages/analytics-js-plugins/src/utilities/retryQueue/constants.ts +32 -0
- package/packages/analytics-js-plugins/src/utilities/retryQueue/logMessages.ts +9 -0
- package/packages/analytics-js-plugins/src/utilities/retryQueue/types.ts +21 -0
- package/packages/analytics-js-plugins/src/xhrQueue/constants.ts +23 -0
- package/packages/analytics-js-plugins/src/xhrQueue/index.ts +158 -0
- package/packages/analytics-js-plugins/src/xhrQueue/logMessages.ts +6 -0
- package/packages/analytics-js-plugins/src/xhrQueue/types.ts +16 -0
- package/packages/analytics-js-plugins/src/xhrQueue/utilities.ts +103 -0
- package/packages/analytics-js-plugins/tsconfig.json +14 -0
- package/packages/analytics-js-plugins/tsconfig.spec.json +24 -0
- package/packages/analytics-js-service-worker/.env.example +8 -0
- package/packages/analytics-js-service-worker/.jscpd.json +17 -0
- package/packages/analytics-js-service-worker/.size-limit.js +11 -0
- package/packages/analytics-js-service-worker/CHANGELOG.md +91 -0
- package/packages/analytics-js-service-worker/CHANGELOG_LATEST.md +7 -0
- package/packages/analytics-js-service-worker/LICENSE +21 -0
- package/packages/analytics-js-service-worker/README.md +74 -0
- package/packages/analytics-js-service-worker/__fixtures__/fixtures.ts +79 -0
- package/packages/analytics-js-service-worker/__fixtures__/msw.server.ts +13 -0
- package/packages/analytics-js-service-worker/__mocks__/.gitkeep +0 -0
- package/packages/analytics-js-service-worker/__tests__/Analytics.test.ts +120 -0
- package/packages/analytics-js-service-worker/__tests__/loosely-validate-event/index.test.ts +140 -0
- package/packages/analytics-js-service-worker/babel.config.json +15 -0
- package/packages/analytics-js-service-worker/jest.config.mjs +14 -0
- package/packages/analytics-js-service-worker/package.json +103 -0
- package/packages/analytics-js-service-worker/project.json +104 -0
- package/packages/analytics-js-service-worker/public/.gitkeep +0 -0
- package/packages/analytics-js-service-worker/rollup.config.mjs +140 -0
- package/packages/analytics-js-service-worker/src/Analytics.ts +564 -0
- package/packages/analytics-js-service-worker/src/IAnalytics.ts +141 -0
- package/packages/analytics-js-service-worker/src/index.ts +9 -0
- package/packages/analytics-js-service-worker/src/loosely-validate-event/index.ts +136 -0
- package/packages/analytics-js-service-worker/src/types.ts +67 -0
- package/packages/analytics-js-service-worker/tsconfig.json +8 -0
- package/packages/analytics-js-service-worker/tsconfig.spec.json +22 -0
- package/packages/analytics-v1.1/.env.example +8 -0
- package/packages/analytics-v1.1/.jscpd.json +17 -0
- package/packages/analytics-v1.1/.size-limit.js +16 -0
- package/packages/analytics-v1.1/.versionrc +12 -0
- package/packages/analytics-v1.1/CHANGELOG.md +3859 -0
- package/packages/analytics-v1.1/CHANGELOG_LATEST.md +5 -0
- package/packages/analytics-v1.1/LICENSE +21 -0
- package/packages/analytics-v1.1/README.md +321 -0
- package/packages/analytics-v1.1/__fixtures__/fixtures.js +130 -0
- package/packages/analytics-v1.1/__fixtures__/msw.handlers.js +51 -0
- package/packages/analytics-v1.1/__fixtures__/msw.server.js +6 -0
- package/packages/analytics-v1.1/__mocks__/.gitkeep +0 -0
- package/packages/analytics-v1.1/__tests__/data-residency.test.js +236 -0
- package/packages/analytics-v1.1/__tests__/features/core/metrics/errorReporting/ErrorReportingService.test.js +80 -0
- package/packages/analytics-v1.1/__tests__/ketchConsent.test.js +49 -0
- package/packages/analytics-v1.1/__tests__/oneTrustCookieConsent.test.js +89 -0
- package/packages/analytics-v1.1/__tests__/script.test.js +167 -0
- package/packages/analytics-v1.1/__tests__/transformationHandler.test.js +179 -0
- package/packages/analytics-v1.1/__tests__/utils/IntegrationsData.test.js +105 -0
- package/packages/analytics-v1.1/__tests__/utils/cdnPaths.test.js +63 -0
- package/packages/analytics-v1.1/__tests__/utils/clientHint.test.js +87 -0
- package/packages/analytics-v1.1/__tests__/utils/eventProcessorUtils.test.js +264 -0
- package/packages/analytics-v1.1/__tests__/utils/navigator.test.js +38 -0
- package/packages/analytics-v1.1/__tests__/utils/preProcessQueue.test.js +78 -0
- package/packages/analytics-v1.1/__tests__/utils/screenDetails.test.js +19 -0
- package/packages/analytics-v1.1/__tests__/utils/utils.test.js +69 -0
- package/packages/analytics-v1.1/babel.config.json +14 -0
- package/packages/analytics-v1.1/jest.config.mjs +14 -0
- package/packages/analytics-v1.1/package.json +115 -0
- package/packages/analytics-v1.1/project.json +119 -0
- package/packages/analytics-v1.1/public/index.html +137 -0
- package/packages/analytics-v1.1/rollup-configs/rollup.sdk.browser.mjs +32 -0
- package/packages/analytics-v1.1/rollup-configs/rollup.sdk.npm.mjs +53 -0
- package/packages/analytics-v1.1/rollup-configs/rollup.utilities.mjs +160 -0
- package/packages/analytics-v1.1/src/core/analytics.js +1669 -0
- package/packages/analytics-v1.1/src/features/core/cookieConsent/CookieConsentFactory.js +32 -0
- package/packages/analytics-v1.1/src/features/core/cookieConsent/OneTrust/browser.js +102 -0
- package/packages/analytics-v1.1/src/features/core/cookieConsent/OneTrust/index.js +1 -0
- package/packages/analytics-v1.1/src/features/core/cookieConsent/ketch/browser.js +114 -0
- package/packages/analytics-v1.1/src/features/core/cookieConsent/ketch/index.js +1 -0
- package/packages/analytics-v1.1/src/features/core/deviceModeTransformation/transformationHandler.js +196 -0
- package/packages/analytics-v1.1/src/features/core/deviceModeTransformation/util.js +23 -0
- package/packages/analytics-v1.1/src/features/core/metrics/errorReporting/ErrorReportingService.js +116 -0
- package/packages/analytics-v1.1/src/features/core/metrics/errorReporting/providers/Bugsnag.js +247 -0
- package/packages/analytics-v1.1/src/features/core/session/index.js +207 -0
- package/packages/analytics-v1.1/src/utils/EventRepository.js +79 -0
- package/packages/analytics-v1.1/src/utils/IntegrationsData.js +56 -0
- package/packages/analytics-v1.1/src/utils/JSFileLoader.js +66 -0
- package/packages/analytics-v1.1/src/utils/PreProcessQueue.js +66 -0
- package/packages/analytics-v1.1/src/utils/RudderApp.js +9 -0
- package/packages/analytics-v1.1/src/utils/RudderContext.js +23 -0
- package/packages/analytics-v1.1/src/utils/RudderElement.js +33 -0
- package/packages/analytics-v1.1/src/utils/RudderElementBuilder.js +29 -0
- package/packages/analytics-v1.1/src/utils/RudderInfo.js +41 -0
- package/packages/analytics-v1.1/src/utils/RudderMessage.js +28 -0
- package/packages/analytics-v1.1/src/utils/beaconQueue.js +140 -0
- package/packages/analytics-v1.1/src/utils/cdnPaths.js +43 -0
- package/packages/analytics-v1.1/src/utils/clientHint.js +28 -0
- package/packages/analytics-v1.1/src/utils/constants.js +70 -0
- package/packages/analytics-v1.1/src/utils/eventProcessorUtils.js +53 -0
- package/packages/analytics-v1.1/src/utils/linker/base64decoder.js +29 -0
- package/packages/analytics-v1.1/src/utils/linker/crc32.js +42 -0
- package/packages/analytics-v1.1/src/utils/linker/index.js +134 -0
- package/packages/analytics-v1.1/src/utils/linker/userLib.js +20 -0
- package/packages/analytics-v1.1/src/utils/navigator.js +32 -0
- package/packages/analytics-v1.1/src/utils/pageProperties.js +74 -0
- package/packages/analytics-v1.1/src/utils/screenDetails.js +23 -0
- package/packages/analytics-v1.1/src/utils/utils.js +423 -0
- package/packages/analytics-v1.1/src/utils/xhrModule.js +117 -0
- package/packages/analytics-v1.1/tsconfig.json +8 -0
- package/packages/analytics-v1.1/tsconfig.spec.json +26 -0
- package/packages/analytics-v1.1/types/index.d.ts +472 -0
- package/packages/analytics-v1.1/types/service-worker/index.d.ts +220 -0
- package/packages/loading-scripts/.env.example +11 -0
- package/packages/loading-scripts/.jscpd.json +17 -0
- package/packages/loading-scripts/CHANGELOG.md +130 -0
- package/packages/loading-scripts/CHANGELOG_LATEST.md +2 -0
- package/packages/loading-scripts/LICENSE +21 -0
- package/packages/loading-scripts/README.md +26 -0
- package/packages/loading-scripts/__fixtures__/.gitkeep +0 -0
- package/packages/loading-scripts/__mocks__/.gitkeep +0 -0
- package/packages/loading-scripts/__tests__/.gitkeep +0 -0
- package/packages/loading-scripts/babel.config.json +14 -0
- package/packages/loading-scripts/jest.config.mjs +14 -0
- package/packages/loading-scripts/package.json +62 -0
- package/packages/loading-scripts/project.json +101 -0
- package/packages/loading-scripts/public/index.html +180 -0
- package/packages/loading-scripts/rollup.config.mjs +112 -0
- package/packages/loading-scripts/src/index.ts +106 -0
- package/packages/loading-scripts/src/types/rudderanalytics.d.ts +16 -0
- package/packages/loading-scripts/tsconfig.json +15 -0
- package/packages/loading-scripts/tsconfig.spec.json +22 -0
- package/packages/sanity-suite/.env.example +39 -0
- package/packages/sanity-suite/.jscpd.json +17 -0
- package/packages/sanity-suite/CHANGELOG.md +154 -0
- package/packages/sanity-suite/LICENSE +21 -0
- package/packages/sanity-suite/README.md +37 -0
- package/packages/sanity-suite/__fixtures__/alias1.json +141 -0
- package/packages/sanity-suite/__fixtures__/alias2.json +101 -0
- package/packages/sanity-suite/__fixtures__/alias3.json +101 -0
- package/packages/sanity-suite/__fixtures__/alias4.json +101 -0
- package/packages/sanity-suite/__fixtures__/alias5.json +107 -0
- package/packages/sanity-suite/__fixtures__/alias6.json +141 -0
- package/packages/sanity-suite/__fixtures__/eventFiltering1.json +69 -0
- package/packages/sanity-suite/__fixtures__/eventFiltering2.json +69 -0
- package/packages/sanity-suite/__fixtures__/eventFiltering3.json +69 -0
- package/packages/sanity-suite/__fixtures__/group1.json +124 -0
- package/packages/sanity-suite/__fixtures__/group2.json +90 -0
- package/packages/sanity-suite/__fixtures__/group3.json +90 -0
- package/packages/sanity-suite/__fixtures__/group4.json +105 -0
- package/packages/sanity-suite/__fixtures__/group5.json +71 -0
- package/packages/sanity-suite/__fixtures__/group6.json +70 -0
- package/packages/sanity-suite/__fixtures__/identify1.json +140 -0
- package/packages/sanity-suite/__fixtures__/identify2.json +106 -0
- package/packages/sanity-suite/__fixtures__/identify3.json +103 -0
- package/packages/sanity-suite/__fixtures__/identify4.json +69 -0
- package/packages/sanity-suite/__fixtures__/identify5.json +106 -0
- package/packages/sanity-suite/__fixtures__/identify6.json +107 -0
- package/packages/sanity-suite/__fixtures__/identify7.json +106 -0
- package/packages/sanity-suite/__fixtures__/identify8.json +107 -0
- package/packages/sanity-suite/__fixtures__/page1.json +123 -0
- package/packages/sanity-suite/__fixtures__/page2.json +90 -0
- package/packages/sanity-suite/__fixtures__/page3.json +90 -0
- package/packages/sanity-suite/__fixtures__/page4.json +116 -0
- package/packages/sanity-suite/__fixtures__/page5.json +83 -0
- package/packages/sanity-suite/__fixtures__/page6.json +81 -0
- package/packages/sanity-suite/__fixtures__/page7.json +81 -0
- package/packages/sanity-suite/__fixtures__/page8.json +79 -0
- package/packages/sanity-suite/__fixtures__/sourceConfig1.json +1536 -0
- package/packages/sanity-suite/__fixtures__/sourceConfigDMT1.json +665 -0
- package/packages/sanity-suite/__fixtures__/sourceConfigDev1.json +892 -0
- package/packages/sanity-suite/__fixtures__/track1.json +154 -0
- package/packages/sanity-suite/__fixtures__/track2.json +122 -0
- package/packages/sanity-suite/__fixtures__/track3.json +122 -0
- package/packages/sanity-suite/__fixtures__/track4.json +138 -0
- package/packages/sanity-suite/__fixtures__/track5.json +106 -0
- package/packages/sanity-suite/__fixtures__/track6.json +85 -0
- package/packages/sanity-suite/__fixtures__/track7.json +85 -0
- package/packages/sanity-suite/babel.config.json +14 -0
- package/packages/sanity-suite/jest.config.mjs +14 -0
- package/packages/sanity-suite/package.json +83 -0
- package/packages/sanity-suite/project.json +55 -0
- package/packages/sanity-suite/public/v1.1/index-cdn.html +135 -0
- package/packages/sanity-suite/public/v1.1/index-local.html +141 -0
- package/packages/sanity-suite/public/v1.1/index-npm.html +107 -0
- package/packages/sanity-suite/public/v1.1/integrations/index-cdn.html +172 -0
- package/packages/sanity-suite/public/v1.1/integrations/index-local.html +171 -0
- package/packages/sanity-suite/public/v1.1/integrations/index-npm.html +140 -0
- package/packages/sanity-suite/public/v1.1/manualLoadCall/index-cdn.html +172 -0
- package/packages/sanity-suite/public/v1.1/manualLoadCall/index-local.html +171 -0
- package/packages/sanity-suite/public/v1.1/manualLoadCall/index-npm.html +140 -0
- package/packages/sanity-suite/public/v3/index-cdn.html +165 -0
- package/packages/sanity-suite/public/v3/index-local.html +169 -0
- package/packages/sanity-suite/public/v3/index-npm.html +99 -0
- package/packages/sanity-suite/public/v3/integrations/index-cdn.html +196 -0
- package/packages/sanity-suite/public/v3/integrations/index-local.html +198 -0
- package/packages/sanity-suite/public/v3/integrations/index-npm.html +138 -0
- package/packages/sanity-suite/public/v3/manualLoadCall/index-cdn.html +196 -0
- package/packages/sanity-suite/public/v3/manualLoadCall/index-local.html +198 -0
- package/packages/sanity-suite/public/v3/manualLoadCall/index-npm.html +138 -0
- package/packages/sanity-suite/rollup.config.mjs +247 -0
- package/packages/sanity-suite/serve.json +4 -0
- package/packages/sanity-suite/src/ignoredProperties/ignoredProperties.js +183 -0
- package/packages/sanity-suite/src/ignoredProperties/sourceConfigIgnoredProperties.js +144 -0
- package/packages/sanity-suite/src/index-npm-v1.1.ts +53 -0
- package/packages/sanity-suite/src/index-npm.ts +57 -0
- package/packages/sanity-suite/src/index.ts +6 -0
- package/packages/sanity-suite/src/testBook/ResultAssertions.js +77 -0
- package/packages/sanity-suite/src/testBook/TestBook.js +360 -0
- package/packages/sanity-suite/src/testBook/index.js +13 -0
- package/packages/sanity-suite/src/testBookSuites/alias.js +289 -0
- package/packages/sanity-suite/src/testBookSuites/eventFiltering.js +77 -0
- package/packages/sanity-suite/src/testBookSuites/group.js +241 -0
- package/packages/sanity-suite/src/testBookSuites/identify.js +455 -0
- package/packages/sanity-suite/src/testBookSuites/index.js +40 -0
- package/packages/sanity-suite/src/testBookSuites/page.js +259 -0
- package/packages/sanity-suite/src/testBookSuites/sourceConfig.js +89 -0
- package/packages/sanity-suite/src/testBookSuites/sourceConfigDev.js +20 -0
- package/packages/sanity-suite/src/testBookSuites/track.js +448 -0
- package/packages/sanity-suite/src/types/global.d.ts +2 -0
- package/packages/sanity-suite/src/types/rudderanalytics.d.ts +16 -0
- package/packages/sanity-suite/tsconfig.json +14 -0
- package/packages/sanity-suite/tsconfig.spec.json +22 -0
- package/patches/@originjs+vite-plugin-federation+1.3.5.patch +170 -0
- package/patches/@segment+localstorage-retry+1.3.0.patch +123 -0
- package/patches/@segment+top-domain+3.0.1.patch +34 -0
- package/patches/@vespaiach+axios-fetch-adapter+0.3.1.patch +43 -0
- package/patches/crypto-es+2.1.0.patch +103 -0
- package/patches/nx+18.0.5.patch +83 -0
- package/patches/rollup-plugin-generate-html-template+1.7.0.patch +46 -0
- package/scripts/commitizen.js +26 -0
- package/scripts/fix-reports-path-in-github-runner.sh +16 -0
- package/scripts/generate-last-release-changelog.sh +32 -0
- package/scripts/sync-tags-in-nx-projects.sh +24 -0
- package/sonar-project.properties +37 -0
- package/tsconfig.build.json +12 -0
- package/tsconfig.json +49 -0
- package/tsconfig.paths.json +27 -0
- package/types/clipboardJs.d.ts +1 -0
- package/types/component-querystring.d.ts +1 -0
- package/types/component-type.d.ts +1 -0
- package/types/global.d.ts +18 -0
- package/types/join-component.d.ts +1 -0
- package/types/localstorage-retry.d.ts +1 -0
- package/types/loosely-validate-event.d.ts +1 -0
- package/types/user-agent-data-types.d.ts +3 -0
@@ -0,0 +1,132 @@
|
|
1
|
+
/* eslint-disable class-methods-use-this */
|
2
|
+
/* eslint-disable no-underscore-dangle */
|
3
|
+
import get from 'get-value';
|
4
|
+
import { ScriptLoader } from '@rudderstack/analytics-js-common/v1.1/utils/ScriptLoader';
|
5
|
+
import {
|
6
|
+
NAME,
|
7
|
+
DISPLAY_NAME,
|
8
|
+
} from '@rudderstack/analytics-js-common/constants/integrations/PostAffiliatePro/constants';
|
9
|
+
import Logger from '../../utils/logger';
|
10
|
+
import { updateSaleObject, getMergedProductIds } from './utils';
|
11
|
+
|
12
|
+
const logger = new Logger(DISPLAY_NAME);
|
13
|
+
|
14
|
+
class PostAffiliatePro {
|
15
|
+
constructor(config, analytics, destinationInfo) {
|
16
|
+
if (analytics.logLevel) {
|
17
|
+
logger.setLogLevel(analytics.logLevel);
|
18
|
+
}
|
19
|
+
this.analytics = analytics;
|
20
|
+
this.name = NAME;
|
21
|
+
this.url = config.url;
|
22
|
+
this.mergeProducts = config.mergeProducts;
|
23
|
+
this.accountId = config.accountId;
|
24
|
+
this.affLinkId = config.affLinkId;
|
25
|
+
this.idName = config.idName;
|
26
|
+
this.cookieLinkId = config.cookieLinkId;
|
27
|
+
this.cookieName = config.cookieName;
|
28
|
+
this.affiliateToCustomField = config.affiliateToCustomField;
|
29
|
+
this.campaignToCustomField = config.campaignToCustomField;
|
30
|
+
this.cookieDomain = config.cookieDomain;
|
31
|
+
this.cookieToCustomField = config.cookieToCustomField;
|
32
|
+
this.disableTrackingMethod = config.disableTrackingMethod;
|
33
|
+
this.paramNameUserId = config.paramNameUserId;
|
34
|
+
this.clickEvents = config.clickEvents;
|
35
|
+
({
|
36
|
+
shouldApplyDeviceModeTransformation: this.shouldApplyDeviceModeTransformation,
|
37
|
+
propagateEventsUntransformedOnError: this.propagateEventsUntransformedOnError,
|
38
|
+
destinationId: this.destinationId,
|
39
|
+
} = destinationInfo ?? {});
|
40
|
+
}
|
41
|
+
|
42
|
+
init() {
|
43
|
+
if (!this.url) {
|
44
|
+
logger.error('URL is missing');
|
45
|
+
return;
|
46
|
+
}
|
47
|
+
ScriptLoader('pap_x2s6df8d', this.url);
|
48
|
+
}
|
49
|
+
|
50
|
+
isLoaded() {
|
51
|
+
return !!window.PostAffTracker;
|
52
|
+
}
|
53
|
+
|
54
|
+
isReady() {
|
55
|
+
if (window.PostAffTracker) {
|
56
|
+
if (!this.disableTrackingMethod) window.PostAffTracker.disableTrackingMethod('F');
|
57
|
+
if (this.paramNameUserId) window.PostAffTracker.setParamNameUserId(this.paramNameUserId);
|
58
|
+
if (this.accountId) window.PostAffTracker.setAccountId(this.accountId);
|
59
|
+
if (this.cookieDomain) window.PostAffTracker.setCookieDomain(this.cookieDomain);
|
60
|
+
if (this.cookieToCustomField)
|
61
|
+
window.PostAffTracker.writeCookieToCustomField(this.cookieToCustomField);
|
62
|
+
if (this.affiliateToCustomField)
|
63
|
+
window.PostAffTracker.writeAffiliateToCustomField(this.affiliateToCustomField);
|
64
|
+
if (this.campaignToCustomField)
|
65
|
+
window.PostAffTracker.writeCampaignToCustomField(this.campaignToCustomField);
|
66
|
+
if (this.affLinkId && this.idName)
|
67
|
+
window.PostAffTracker.writeAffiliateToLink(this.affLinkId, this.idName);
|
68
|
+
if (this.cookieName && this.cookieLinkId)
|
69
|
+
window.PostAffTracker.writeCookieToLink(this.cookieLinkId, this.cookieName);
|
70
|
+
return true;
|
71
|
+
}
|
72
|
+
return false;
|
73
|
+
}
|
74
|
+
|
75
|
+
identify(rudderElement) {
|
76
|
+
const { message } = rudderElement;
|
77
|
+
const visitorId = get(message, 'userId');
|
78
|
+
window.PostAffTracker.setVisitorId(visitorId);
|
79
|
+
}
|
80
|
+
|
81
|
+
track(rudderElement) {
|
82
|
+
const clickEventsArr = this.clickEvents ? this.clickEvents.split(',') : null;
|
83
|
+
const { message } = rudderElement;
|
84
|
+
const { event } = message;
|
85
|
+
const { properties } = message;
|
86
|
+
|
87
|
+
// We are going to call click event, for the event list given in dashboard only.
|
88
|
+
if (clickEventsArr?.includes(event)) {
|
89
|
+
if (properties) {
|
90
|
+
const rudderToWindowPropertiesMap = [
|
91
|
+
{ property: 'data1', windowProperty: 'Data1' },
|
92
|
+
{ property: 'data2', windowProperty: 'Data2' },
|
93
|
+
{ property: 'affiliateId', windowProperty: 'AffiliateID' },
|
94
|
+
{ property: 'bannerId', windowProperty: 'BannerID' },
|
95
|
+
{ property: 'campaignId', windowProperty: 'CampaignID' },
|
96
|
+
{ property: 'channel', windowProperty: 'Channel' },
|
97
|
+
];
|
98
|
+
|
99
|
+
rudderToWindowPropertiesMap.forEach(({ property, windowProperty }) => {
|
100
|
+
if (Object.prototype.hasOwnProperty.call(properties, property)) {
|
101
|
+
window[windowProperty] = properties[property];
|
102
|
+
}
|
103
|
+
});
|
104
|
+
}
|
105
|
+
window.PostAffTracker.track();
|
106
|
+
}
|
107
|
+
|
108
|
+
// We are supporting only one event for sale.
|
109
|
+
if (event === 'Order Completed') {
|
110
|
+
const productsArr = properties?.products || null;
|
111
|
+
if (productsArr && this.mergeProducts) {
|
112
|
+
window.sale = window.PostAffTracker.createSale();
|
113
|
+
if (window.sale) updateSaleObject(window.sale, properties);
|
114
|
+
const merged = getMergedProductIds(productsArr);
|
115
|
+
window.sale.setProductID(merged);
|
116
|
+
} else if (productsArr) {
|
117
|
+
productsArr.forEach((product, index) => {
|
118
|
+
window[`sale${index}`] = window.PostAffTracker.createSale();
|
119
|
+
updateSaleObject(window[`sale${index}`], properties);
|
120
|
+
if (product.product_id) {
|
121
|
+
window[`sale${index}`].setProductID(product.product_id);
|
122
|
+
}
|
123
|
+
});
|
124
|
+
} else {
|
125
|
+
// If any product is not available
|
126
|
+
window.sale = window.PostAffTracker.createSale();
|
127
|
+
}
|
128
|
+
window.PostAffTracker.register();
|
129
|
+
}
|
130
|
+
}
|
131
|
+
}
|
132
|
+
export default PostAffiliatePro;
|
@@ -0,0 +1 @@
|
|
1
|
+
export { default as PostAffiliatePro } from './browser';
|
@@ -0,0 +1,40 @@
|
|
1
|
+
// This function helps to populate the sale object
|
2
|
+
const updateSaleObject = (sale, properties) => {
|
3
|
+
const saleMethodsMap = [
|
4
|
+
{ property: 'total', method: 'setTotalCost' },
|
5
|
+
{ property: 'fixedCost', method: 'setFixedCost' },
|
6
|
+
{ property: 'order_id', method: 'setOrderID' },
|
7
|
+
{ property: 'data1', method: 'setData1' },
|
8
|
+
{ property: 'data2', method: 'setData2' },
|
9
|
+
{ property: 'data3', method: 'setData3' },
|
10
|
+
{ property: 'data4', method: 'setData4' },
|
11
|
+
{ property: 'data5', method: 'setData5' },
|
12
|
+
{ property: 'doNotDeleteCookies', method: 'doNotDeleteCookies' },
|
13
|
+
{ property: 'status', method: 'setStatus' },
|
14
|
+
{ property: 'currency', method: 'setCurrency' },
|
15
|
+
{ property: 'customCommission', method: 'setCustomCommission' },
|
16
|
+
{ property: 'channel', method: 'setChannelID' },
|
17
|
+
{ property: 'coupon', method: 'setCoupon' },
|
18
|
+
{ property: 'campaignId', method: 'setCampaignID' },
|
19
|
+
{ property: 'affiliateId', method: 'setAffiliateID' },
|
20
|
+
];
|
21
|
+
|
22
|
+
saleMethodsMap.forEach(({ property, method }) => {
|
23
|
+
if (Object.prototype.hasOwnProperty.call(properties, property)) {
|
24
|
+
if (method === 'doNotDeleteCookies') {
|
25
|
+
sale[method]();
|
26
|
+
} else {
|
27
|
+
sale[method](properties[property]);
|
28
|
+
}
|
29
|
+
}
|
30
|
+
});
|
31
|
+
};
|
32
|
+
|
33
|
+
const getMergedProductIds = productsArr => {
|
34
|
+
const mergedProductId = productsArr
|
35
|
+
.filter(product => product.product_id)
|
36
|
+
.map(product => product.product_id)
|
37
|
+
.join();
|
38
|
+
return mergedProductId;
|
39
|
+
};
|
40
|
+
export { updateSaleObject, getMergedProductIds };
|
@@ -0,0 +1,147 @@
|
|
1
|
+
/* eslint-disable no-undef */
|
2
|
+
/* eslint-disable no-underscore-dangle */
|
3
|
+
/* eslint-disable class-methods-use-this */
|
4
|
+
import get from 'get-value';
|
5
|
+
import {
|
6
|
+
NAME,
|
7
|
+
DISPLAY_NAME,
|
8
|
+
} from '@rudderstack/analytics-js-common/constants/integrations/Posthog/constants';
|
9
|
+
import Logger from '../../utils/logger';
|
10
|
+
import { removeTrailingSlashes } from '../../utils/utils';
|
11
|
+
import { getXhrHeaders, getPropertyBlackList, getDestinationOptions } from './utils';
|
12
|
+
import { loadNativeSdk } from './nativeSdkLoader';
|
13
|
+
|
14
|
+
const logger = new Logger(DISPLAY_NAME);
|
15
|
+
|
16
|
+
class Posthog {
|
17
|
+
constructor(config, analytics, destinationInfo) {
|
18
|
+
if (analytics.logLevel) {
|
19
|
+
logger.setLogLevel(analytics.logLevel);
|
20
|
+
}
|
21
|
+
this.name = NAME;
|
22
|
+
this.analytics = analytics;
|
23
|
+
this.teamApiKey = config.teamApiKey;
|
24
|
+
this.yourInstance = removeTrailingSlashes(config.yourInstance) || 'https://app.posthog.com';
|
25
|
+
this.autocapture = config.autocapture || false;
|
26
|
+
this.capturePageView = config.capturePageView || false;
|
27
|
+
this.disableSessionRecording = config.disableSessionRecording || false;
|
28
|
+
this.disableCookie = config.disableCookie || false;
|
29
|
+
this.propertyBlackList = getPropertyBlackList(config);
|
30
|
+
this.xhrHeaders = getXhrHeaders(config);
|
31
|
+
this.enableLocalStoragePersistence = config.enableLocalStoragePersistence;
|
32
|
+
({
|
33
|
+
shouldApplyDeviceModeTransformation: this.shouldApplyDeviceModeTransformation,
|
34
|
+
propagateEventsUntransformedOnError: this.propagateEventsUntransformedOnError,
|
35
|
+
destinationId: this.destinationId,
|
36
|
+
} = destinationInfo ?? {});
|
37
|
+
}
|
38
|
+
|
39
|
+
init() {
|
40
|
+
const options = getDestinationOptions(this.analytics.loadOnlyIntegrations);
|
41
|
+
if (options && !options.loadIntegration) {
|
42
|
+
return;
|
43
|
+
}
|
44
|
+
loadNativeSdk();
|
45
|
+
|
46
|
+
const configObject = {
|
47
|
+
api_host: this.yourInstance,
|
48
|
+
autocapture: this.autocapture,
|
49
|
+
capture_pageview: this.capturePageView,
|
50
|
+
disable_session_recording: this.disableSessionRecording,
|
51
|
+
property_blacklist: this.propertyBlackList,
|
52
|
+
disable_cookie: this.disableCookie,
|
53
|
+
};
|
54
|
+
|
55
|
+
if (options?.loaded) {
|
56
|
+
configObject.loaded = options.loaded;
|
57
|
+
}
|
58
|
+
if (this.xhrHeaders && Object.keys(this.xhrHeaders).length > 0) {
|
59
|
+
configObject.xhr_headers = this.xhrHeaders;
|
60
|
+
}
|
61
|
+
if (this.enableLocalStoragePersistence) {
|
62
|
+
configObject.persistence = 'localStorage+cookie';
|
63
|
+
}
|
64
|
+
|
65
|
+
posthog.init(this.teamApiKey, configObject);
|
66
|
+
}
|
67
|
+
|
68
|
+
isLoaded() {
|
69
|
+
return !!window?.posthog?.__loaded;
|
70
|
+
}
|
71
|
+
|
72
|
+
isReady() {
|
73
|
+
return this.isLoaded();
|
74
|
+
}
|
75
|
+
|
76
|
+
/**
|
77
|
+
* superproperties should be part of rudderelement.message.integrations.POSTHOG object.
|
78
|
+
* Once we call the posthog.register api, the corresponding property will be sent along with subsequent capture calls.
|
79
|
+
* To remove the superproperties, we call unregister api.
|
80
|
+
*/
|
81
|
+
processSuperProperties(rudderElement) {
|
82
|
+
const posthogIntgConfig = getDestinationOptions(rudderElement.message.integrations);
|
83
|
+
if (posthogIntgConfig) {
|
84
|
+
const { superProperties, setOnceProperties, unsetProperties } = posthogIntgConfig;
|
85
|
+
if (superProperties && Object.keys(superProperties).length > 0) {
|
86
|
+
posthog.register(superProperties);
|
87
|
+
}
|
88
|
+
if (setOnceProperties && Object.keys(setOnceProperties).length > 0) {
|
89
|
+
posthog.register_once(setOnceProperties);
|
90
|
+
}
|
91
|
+
if (unsetProperties && unsetProperties.length > 0) {
|
92
|
+
unsetProperties.forEach(property => {
|
93
|
+
if (property && property.trim() !== '') {
|
94
|
+
posthog.unregister(property);
|
95
|
+
}
|
96
|
+
});
|
97
|
+
}
|
98
|
+
}
|
99
|
+
}
|
100
|
+
|
101
|
+
identify(rudderElement) {
|
102
|
+
// rudderElement.message.context will always be present as part of identify event payload.
|
103
|
+
const { traits } = rudderElement.message.context;
|
104
|
+
const { userId } = rudderElement.message;
|
105
|
+
|
106
|
+
if (userId) {
|
107
|
+
posthog.identify(userId, traits);
|
108
|
+
}
|
109
|
+
|
110
|
+
this.processSuperProperties(rudderElement);
|
111
|
+
}
|
112
|
+
|
113
|
+
track(rudderElement) {
|
114
|
+
const { event, properties } = rudderElement.message;
|
115
|
+
this.processSuperProperties(rudderElement);
|
116
|
+
posthog.capture(event, properties);
|
117
|
+
}
|
118
|
+
|
119
|
+
/**
|
120
|
+
*
|
121
|
+
*
|
122
|
+
* @memberof Posthog
|
123
|
+
*/
|
124
|
+
page(rudderElement) {
|
125
|
+
this.processSuperProperties(rudderElement);
|
126
|
+
posthog.capture('$pageview');
|
127
|
+
}
|
128
|
+
|
129
|
+
group(rudderElement) {
|
130
|
+
const traits = get(rudderElement.message, 'traits');
|
131
|
+
const groupKey = get(rudderElement.message, 'groupId');
|
132
|
+
let groupType;
|
133
|
+
if (traits) {
|
134
|
+
groupType = get(traits, 'groupType');
|
135
|
+
delete traits.groupType;
|
136
|
+
}
|
137
|
+
if (!groupType || !groupKey) {
|
138
|
+
logger.error('groupType and groupKey is required for group call');
|
139
|
+
return;
|
140
|
+
}
|
141
|
+
posthog.group(groupType, groupKey, traits);
|
142
|
+
|
143
|
+
this.processSuperProperties(rudderElement);
|
144
|
+
}
|
145
|
+
}
|
146
|
+
|
147
|
+
export default Posthog;
|
@@ -0,0 +1 @@
|
|
1
|
+
export { default as Posthog } from './browser';
|
@@ -0,0 +1,48 @@
|
|
1
|
+
import { LOAD_ORIGIN } from '@rudderstack/analytics-js-common/v1.1/utils/constants';
|
2
|
+
|
3
|
+
function loadNativeSdk() {
|
4
|
+
!(function (t, e) {
|
5
|
+
var o, n, p, r;
|
6
|
+
e.__SV ||
|
7
|
+
((window.posthog = e),
|
8
|
+
(e._i = []),
|
9
|
+
(e.init = function (i, s, a) {
|
10
|
+
function g(t, e) {
|
11
|
+
var o = e.split('.');
|
12
|
+
2 == o.length && ((t = t[o[0]]), (e = o[1])),
|
13
|
+
(t[e] = function () {
|
14
|
+
t.push([e].concat(Array.prototype.slice.call(arguments, 0)));
|
15
|
+
});
|
16
|
+
}
|
17
|
+
((p = t.createElement('script')).type = 'text/javascript'),
|
18
|
+
(p.async = !0),
|
19
|
+
p.setAttribute('data-loader', LOAD_ORIGIN),
|
20
|
+
(p.src = s.api_host + '/static/array.js'),
|
21
|
+
(r = t.getElementsByTagName('script')[0]).parentNode.insertBefore(p, r);
|
22
|
+
var u = e;
|
23
|
+
for (
|
24
|
+
void 0 !== a ? (u = e[a] = []) : (a = 'posthog'),
|
25
|
+
u.people = u.people || [],
|
26
|
+
u.toString = function (t) {
|
27
|
+
var e = 'posthog';
|
28
|
+
return 'posthog' !== a && (e += '.' + a), t || (e += ' (stub)'), e;
|
29
|
+
},
|
30
|
+
u.people.toString = function () {
|
31
|
+
return u.toString(1) + '.people (stub)';
|
32
|
+
},
|
33
|
+
o =
|
34
|
+
'capture identify alias people.set people.set_once set_config register register_once unregister opt_out_capturing has_opted_out_capturing opt_in_capturing reset isFeatureEnabled onFeatureFlags'.split(
|
35
|
+
' ',
|
36
|
+
),
|
37
|
+
n = 0;
|
38
|
+
n < o.length;
|
39
|
+
n++
|
40
|
+
)
|
41
|
+
g(u, o[n]);
|
42
|
+
e._i.push([i, s, a]);
|
43
|
+
}),
|
44
|
+
(e.__SV = 1));
|
45
|
+
})(document, window.posthog || []);
|
46
|
+
}
|
47
|
+
|
48
|
+
export { loadNativeSdk };
|
@@ -0,0 +1,77 @@
|
|
1
|
+
<html>
|
2
|
+
<head>
|
3
|
+
<script type="text/javascript">
|
4
|
+
rudderanalytics = window.rudderanalytics = [];
|
5
|
+
var methods = ['load', 'page', 'identify', 'track', 'ready', 'group'];
|
6
|
+
for (var i = 0; i < methods.length; i++) {
|
7
|
+
var method = methods[i];
|
8
|
+
rudderanalytics[method] = (function (methodName) {
|
9
|
+
return function () {
|
10
|
+
rudderanalytics.push([methodName, ...arguments]);
|
11
|
+
};
|
12
|
+
})(method);
|
13
|
+
}
|
14
|
+
rudderanalytics.load('1l90d23mEVIDyCeoZkE7X85DH0P', 'https://hosted.rudderlabs.com', {
|
15
|
+
logLevel: 'DEBUG',
|
16
|
+
configUrl: 'http://localhost:5000/sourceConfig',
|
17
|
+
loadIntegration: false,
|
18
|
+
});
|
19
|
+
</script>
|
20
|
+
<script src="https://cdn.rudderlabs.com/staging/latest/v1.1/rudder-analytics.min.js"></script>
|
21
|
+
<script>
|
22
|
+
rudderanalytics.page();
|
23
|
+
rudderanalytics.identify(
|
24
|
+
'user123456',
|
25
|
+
{ email: 'user@email.com', age: 22 },
|
26
|
+
{
|
27
|
+
integrations: {
|
28
|
+
Posthog: { unsetProperties: ['identifysuperprop1', 'identifysuperprop2'] },
|
29
|
+
},
|
30
|
+
},
|
31
|
+
);
|
32
|
+
rudderanalytics.track('track without property');
|
33
|
+
rudderanalytics.track(
|
34
|
+
'track with property',
|
35
|
+
{ validProp: 'valid property', blackproperty: 'not valid' },
|
36
|
+
{
|
37
|
+
integrations: {
|
38
|
+
Posthog: {
|
39
|
+
superProperties: { superprop1: 'value1', superprop2: 'value2' },
|
40
|
+
setOnceProperties: { onceprop: 'value2' },
|
41
|
+
},
|
42
|
+
},
|
43
|
+
},
|
44
|
+
);
|
45
|
+
rudderanalytics.track(
|
46
|
+
'track with property2',
|
47
|
+
{ validProp: 'valid property', blackproperty: 'not valid' },
|
48
|
+
{
|
49
|
+
integrations: {
|
50
|
+
Posthog: { unsetProperties: ['identifysuperprop1', 'identifysuperprop2'] },
|
51
|
+
},
|
52
|
+
},
|
53
|
+
);
|
54
|
+
/*
|
55
|
+
The above calls will generate the following 3 base64 encoded payloads -
|
56
|
+
|
57
|
+
eyIkc2V0Ijp7IiRvcyI6Ik1hYyBPUyBYIiwiJGJyb3dzZXIiOiJDaHJvbWUiLCIkYnJvd3Nlcl92ZXJzaW9uIjo4OCwiJGluaXRpYWxfcmVmZXJyZXIiOiJodHRwOi8vbG9jYWxob3N0OjIyMjIvdGVzdHMvaHRtbC8iLCIkaW5pdGlhbF9yZWZlcnJpbmdfZG9tYWluIjoibG9jYWxob3N0OjIyMjIiLCJlbWFpbCI6InVzZXJAZW1haWwuY29tIiwiYWdlIjoyMn0sIiR0b2tlbiI6IjhuZzA2RDcxdTRXMkNYbnE5T2N2dGtWTzBrbjlsaXNnVzNLVEEyRTg1VnMiLCIkZGlzdGluY3RfaWQiOiJ1c2VyMTIzNDU2IiwiJGRldmljZV9pZCI6IjE3NzZiZTc2ZDA4NGQ4LTBmMjE4MzlkMWZlMGJjLTE2M2U2NTVjLTFhZWFhMC0xNzc2YmU3NmQwOThlOSIsIiR1c2VyX2lkIjoidXNlcjEyMzQ1NiJ9
|
58
|
+
which is decoded as -
|
59
|
+
{"$set":{"$os":"Mac OS X","$browser":"Chrome","$browser_version":88,"$initial_referrer":"http://localhost:2222/tests/html/","$initial_referring_domain":"localhost:2222","email":"user@email.com","age":22},"$token":"8ng06D71u4W2CXnq9OcvtkVO0kn9lisgW3KTA2E85Vs","$distinct_id":"user123456","$device_id":"1776be76d084d8-0f21839d1fe0bc-163e655c-1aeaa0-1776be76d098e9","$user_id":"user123456"}
|
60
|
+
|
61
|
+
|
62
|
+
eyJ0b2tlbiI6IjhuZzA2RDcxdTRXMkNYbnE5T2N2dGtWTzBrbjlsaXNnVzNLVEEyRTg1VnMiLCJkaXN0aW5jdF9pZCI6InVzZXIxMjM0NTYifQ%3D%3D
|
63
|
+
which is decoded as -
|
64
|
+
{"token":"8ng06D71u4W2CXnq9OcvtkVO0kn9lisgW3KTA2E85Vs","distinct_id":"user123456"}
|
65
|
+
|
66
|
+
|
67
|
+
W3siZXZlbnQiOiIkcGFnZXZpZXciLCJwcm9wZXJ0aWVzIjp7IiRvcyI6Ik1hYyBPUyBYIiwiJGJyb3dzZXIiOiJDaHJvbWUiLCIkY3VycmVudF91cmwiOiJodHRwOi8vbG9jYWxob3N0OjIyMjIvdGVzdHMvaHRtbC90ZXN0X3Bvc3Rob2cuaHRtbCIsIiRob3N0IjoibG9jYWxob3N0OjIyMjIiLCIkcGF0aG5hbWUiOiIvdGVzdHMvaHRtbC90ZXN0X3Bvc3Rob2cuaHRtbCIsIiRicm93c2VyX3ZlcnNpb24iOjg4LCIkc2NyZWVuX2hlaWdodCI6MTA1MCwiJHNjcmVlbl93aWR0aCI6MTY4MCwiJGxpYiI6IndlYiIsIiRsaWJfdmVyc2lvbiI6IjEuOC4zIiwiJGluc2VydF9pZCI6IjR0bmI5dTNmaDN0bjdmYzYiLCIkdGltZSI6MTYxMjQzMDQ5MC41MiwiZGlzdGluY3RfaWQiOiJ1c2VyMTIzNDU2IiwiJGRldmljZV9pZCI6IjE3NzZiZTc2ZDA4NGQ4LTBmMjE4MzlkMWZlMGJjLTE2M2U2NTVjLTFhZWFhMC0xNzc2YmU3NmQwOThlOSIsIiRpbml0aWFsX3JlZmVycmVyIjoiaHR0cDovL2xvY2FsaG9zdDoyMjIyL3Rlc3RzL2h0bWwvIiwiJGluaXRpYWxfcmVmZXJyaW5nX2RvbWFpbiI6ImxvY2FsaG9zdDoyMjIyIiwiJHJlZmVycmVyIjoiaHR0cDovL2xvY2FsaG9zdDoyMjIyL3Rlc3RzL2h0bWwvIiwiJHJlZmVycmluZ19kb21haW4iOiJsb2NhbGhvc3Q6MjIyMiIsIiR1c2VyX2lkIjoidXNlcjEyMzQ1NiIsInN1cGVycHJvcDEiOiJ2YWx1ZTEiLCJzdXBlcnByb3AyIjoidmFsdWUyIiwiJGFjdGl2ZV9mZWF0dXJlX2ZsYWdzIjpbXSwib25jZXByb3AiOiJ2YWx1ZTEiLCJpZGVudGlmeW9uY2Vwcm9wIjoidmFsdWUxIiwidG9rZW4iOiI4bmcwNkQ3MXU0VzJDWG5xOU9jdnRrVk8wa245bGlzZ1czS1RBMkU4NVZzIn0sIm9mZnNldCI6MTZ9LHsiZXZlbnQiOiJ0cmFjayB3aXRob3V0IHByb3BlcnR5IiwicHJvcGVydGllcyI6eyIkb3MiOiJNYWMgT1MgWCIsIiRicm93c2VyIjoiQ2hyb21lIiwiJGN1cnJlbnRfdXJsIjoiaHR0cDovL2xvY2FsaG9zdDoyMjIyL3Rlc3RzL2h0bWwvdGVzdF9wb3N0aG9nLmh0bWwiLCIkaG9zdCI6ImxvY2FsaG9zdDoyMjIyIiwiJHBhdGhuYW1lIjoiL3Rlc3RzL2h0bWwvdGVzdF9wb3N0aG9nLmh0bWwiLCIkYnJvd3Nlcl92ZXJzaW9uIjo4OCwiJHNjcmVlbl9oZWlnaHQiOjEwNTAsIiRzY3JlZW5fd2lkdGgiOjE2ODAsIiRsaWIiOiJ3ZWIiLCIkbGliX3ZlcnNpb24iOiIxLjguMyIsIiRpbnNlcnRfaWQiOiJmbDhnYnQ3ODVjNndkZGZzIiwiJHRpbWUiOjE2MTI0MzA0OTAuNTI2LCJkaXN0aW5jdF9pZCI6InVzZXIxMjM0NTYiLCIkZGV2aWNlX2lkIjoiMTc3NmJlNzZkMDg0ZDgtMGYyMTgzOWQxZmUwYmMtMTYzZTY1NWMtMWFlYWEwLTE3NzZiZTc2ZDA5OGU5IiwiJGluaXRpYWxfcmVmZXJyZXIiOiJodHRwOi8vbG9jYWxob3N0OjIyMjIvdGVzdHMvaHRtbC8iLCIkaW5pdGlhbF9yZWZlcnJpbmdfZG9tYWluIjoibG9jYWxob3N0OjIyMjIiLCIkcmVmZXJyZXIiOiJodHRwOi8vbG9jYWxob3N0OjIyMjIvdGVzdHMvaHRtbC8iLCIkcmVmZXJyaW5nX2RvbWFpbiI6ImxvY2FsaG9zdDoyMjIyIiwiJHVzZXJfaWQiOiJ1c2VyMTIzNDU2Iiwic3VwZXJwcm9wMSI6InZhbHVlMSIsInN1cGVycHJvcDIiOiJ2YWx1ZTIiLCIkYWN0aXZlX2ZlYXR1cmVfZmxhZ3MiOltdLCJvbmNlcHJvcCI6InZhbHVlMSIsImlkZW50aWZ5b25jZXByb3AiOiJ2YWx1ZTEiLCJ0b2tlbiI6IjhuZzA2RDcxdTRXMkNYbnE5T2N2dGtWTzBrbjlsaXNnVzNLVEEyRTg1VnMifSwib2Zmc2V0IjoxMH0seyJldmVudCI6InRyYWNrIHdpdGggcHJvcGVydHkiLCJwcm9wZXJ0aWVzIjp7IiRvcyI6Ik1hYyBPUyBYIiwiJGJyb3dzZXIiOiJDaHJvbWUiLCIkY3VycmVudF91cmwiOiJodHRwOi8vbG9jYWxob3N0OjIyMjIvdGVzdHMvaHRtbC90ZXN0X3Bvc3Rob2cuaHRtbCIsIiRob3N0IjoibG9jYWxob3N0OjIyMjIiLCIkcGF0aG5hbWUiOiIvdGVzdHMvaHRtbC90ZXN0X3Bvc3Rob2cuaHRtbCIsIiRicm93c2VyX3ZlcnNpb24iOjg4LCIkc2NyZWVuX2hlaWdodCI6MTA1MCwiJHNjcmVlbl93aWR0aCI6MTY4MCwiJGxpYiI6IndlYiIsIiRsaWJfdmVyc2lvbiI6IjEuOC4zIiwiJGluc2VydF9pZCI6IjgzNHNnM2RlZTY0NHFybXYiLCIkdGltZSI6MTYxMjQzMDQ5MC41MjgsImRpc3RpbmN0X2lkIjoidXNlcjEyMzQ1NiIsIiRkZXZpY2VfaWQiOiIxNzc2YmU3NmQwODRkOC0wZjIxODM5ZDFmZTBiYy0xNjNlNjU1Yy0xYWVhYTAtMTc3NmJlNzZkMDk4ZTkiLCIkaW5pdGlhbF9yZWZlcnJlciI6Imh0dHA6Ly9sb2NhbGhvc3Q6MjIyMi90ZXN0cy9odG1sLyIsIiRpbml0aWFsX3JlZmVycmluZ19kb21haW4iOiJsb2NhbGhvc3Q6MjIyMiIsIiRyZWZlcnJlciI6Imh0dHA6Ly9sb2NhbGhvc3Q6MjIyMi90ZXN0cy9odG1sLyIsIiRyZWZlcnJpbmdfZG9tYWluIjoibG9jYWxob3N0OjIyMjIiLCIkdXNlcl9pZCI6InVzZXIxMjM0NTYiLCJzdXBlcnByb3AxIjoidmFsdWUxIiwic3VwZXJwcm9wMiI6InZhbHVlMiIsIiRhY3RpdmVfZmVhdHVyZV9mbGFncyI6W10sIm9uY2Vwcm9wIjoidmFsdWUxIiwiaWRlbnRpZnlvbmNlcHJvcCI6InZhbHVlMSIsInZhbGlkUHJvcCI6InZhbGlkIHByb3BlcnR5IiwidG9rZW4iOiI4bmcwNkQ3MXU0VzJDWG5xOU9jdnRrVk8wa245bGlzZ1czS1RBMkU4NVZzIn0sIm9mZnNldCI6OH0seyJldmVudCI6InRyYWNrIHdpdGggcHJvcGVydHkyIiwicHJvcGVydGllcyI6eyIkb3MiOiJNYWMgT1MgWCIsIiRicm93c2VyIjoiQ2hyb21lIiwiJGN1cnJlbnRfdXJsIjoiaHR0cDovL2xvY2FsaG9zdDoyMjIyL3Rlc3RzL2h0bWwvdGVzdF9wb3N0aG9nLmh0bWwiLCIkaG9zdCI6ImxvY2FsaG9zdDoyMjIyIiwiJHBhdGhuYW1lIjoiL3Rlc3RzL2h0bWwvdGVzdF9wb3N0aG9nLmh0bWwiLCIkYnJvd3Nlcl92ZXJzaW9uIjo4OCwiJHNjcmVlbl9oZWlnaHQiOjEwNTAsIiRzY3JlZW5fd2lkdGgiOjE2ODAsIiRsaWIiOiJ3ZWIiLCIkbGliX3ZlcnNpb24iOiIxLjguMyIsIiRpbnNlcnRfaWQiOiIwbmVrb2pqMjlqeHd6NzliIiwiJHRpbWUiOjE2MTI0MzA0OTAuNTI5LCJkaXN0aW5jdF9pZCI6InVzZXIxMjM0NTYiLCIkZGV2aWNlX2lkIjoiMTc3NmJlNzZkMDg0ZDgtMGYyMTgzOWQxZmUwYmMtMTYzZTY1NWMtMWFlYWEwLTE3NzZiZTc2ZDA5OGU5IiwiJGluaXRpYWxfcmVmZXJyZXIiOiJodHRwOi8vbG9jYWxob3N0OjIyMjIvdGVzdHMvaHRtbC8iLCIkaW5pdGlhbF9yZWZlcnJpbmdfZG9tYWluIjoibG9jYWxob3N0OjIyMjIiLCIkcmVmZXJyZXIiOiJodHRwOi8vbG9jYWxob3N0OjIyMjIvdGVzdHMvaHRtbC8iLCIkcmVmZXJyaW5nX2RvbWFpbiI6ImxvY2FsaG9zdDoyMjIyIiwiJHVzZXJfaWQiOiJ1c2VyMTIzNDU2Iiwic3VwZXJwcm9wMSI6InZhbHVlMSIsInN1cGVycHJvcDIiOiJ2YWx1ZTIiLCIkYWN0aXZlX2ZlYXR1cmVfZmxhZ3MiOltdLCJvbmNlcHJvcCI6InZhbHVlMSIsImlkZW50aWZ5b25jZXByb3AiOiJ2YWx1ZTEiLCJ2YWxpZFByb3AiOiJ2YWxpZCBwcm9wZXJ0eSIsInRva2VuIjoiOG5nMDZENzF1NFcyQ1hucTlPY3Z0a1ZPMGtuOWxpc2dXM0tUQTJFODVWcyJ9LCJvZmZzZXQiOjd9XQ==
|
68
|
+
which is decoded as -
|
69
|
+
[{"event":"$pageview","properties":{"$os":"Mac OS X","$browser":"Chrome","$current_url":"http://localhost:2222/tests/html/test_posthog.html","$host":"localhost:2222","$pathname":"/tests/html/test_posthog.html","$browser_version":88,"$screen_height":1050,"$screen_width":1680,"$lib":"web","$lib_version":"1.8.3","$insert_id":"4tnb9u3fh3tn7fc6","$time":1612430490.52,"distinct_id":"user123456","$device_id":"1776be76d084d8-0f21839d1fe0bc-163e655c-1aeaa0-1776be76d098e9","$initial_referrer":"http://localhost:2222/tests/html/","$initial_referring_domain":"localhost:2222","$referrer":"http://localhost:2222/tests/html/","$referring_domain":"localhost:2222","$user_id":"user123456","superprop1":"value1","superprop2":"value2","$active_feature_flags":[],"onceprop":"value1","identifyonceprop":"value1","token":"8ng06D71u4W2CXnq9OcvtkVO0kn9lisgW3KTA2E85Vs"},"offset":16},{"event":"track without property","properties":{"$os":"Mac OS X","$browser":"Chrome","$current_url":"http://localhost:2222/tests/html/test_posthog.html","$host":"localhost:2222","$pathname":"/tests/html/test_posthog.html","$browser_version":88,"$screen_height":1050,"$screen_width":1680,"$lib":"web","$lib_version":"1.8.3","$insert_id":"fl8gbt785c6wddfs","$time":1612430490.526,"distinct_id":"user123456","$device_id":"1776be76d084d8-0f21839d1fe0bc-163e655c-1aeaa0-1776be76d098e9","$initial_referrer":"http://localhost:2222/tests/html/","$initial_referring_domain":"localhost:2222","$referrer":"http://localhost:2222/tests/html/","$referring_domain":"localhost:2222","$user_id":"user123456","superprop1":"value1","superprop2":"value2","$active_feature_flags":[],"onceprop":"value1","identifyonceprop":"value1","token":"8ng06D71u4W2CXnq9OcvtkVO0kn9lisgW3KTA2E85Vs"},"offset":10},{"event":"track with property","properties":{"$os":"Mac OS X","$browser":"Chrome","$current_url":"http://localhost:2222/tests/html/test_posthog.html","$host":"localhost:2222","$pathname":"/tests/html/test_posthog.html","$browser_version":88,"$screen_height":1050,"$screen_width":1680,"$lib":"web","$lib_version":"1.8.3","$insert_id":"834sg3dee644qrmv","$time":1612430490.528,"distinct_id":"user123456","$device_id":"1776be76d084d8-0f21839d1fe0bc-163e655c-1aeaa0-1776be76d098e9","$initial_referrer":"http://localhost:2222/tests/html/","$initial_referring_domain":"localhost:2222","$referrer":"http://localhost:2222/tests/html/","$referring_domain":"localhost:2222","$user_id":"user123456","superprop1":"value1","superprop2":"value2","$active_feature_flags":[],"onceprop":"value1","identifyonceprop":"value1","validProp":"valid property","token":"8ng06D71u4W2CXnq9OcvtkVO0kn9lisgW3KTA2E85Vs"},"offset":8},{"event":"track with property2","properties":{"$os":"Mac OS X","$browser":"Chrome","$current_url":"http://localhost:2222/tests/html/test_posthog.html","$host":"localhost:2222","$pathname":"/tests/html/test_posthog.html","$browser_version":88,"$screen_height":1050,"$screen_width":1680,"$lib":"web","$lib_version":"1.8.3","$insert_id":"0nekojj29jxwz79b","$time":1612430490.529,"distinct_id":"user123456","$device_id":"1776be76d084d8-0f21839d1fe0bc-163e655c-1aeaa0-1776be76d098e9","$initial_referrer":"http://localhost:2222/tests/html/","$initial_referring_domain":"localhost:2222","$referrer":"http://localhost:2222/tests/html/","$referring_domain":"localhost:2222","$user_id":"user123456","superprop1":"value1","superprop2":"value2","$active_feature_flags":[],"onceprop":"value1","identifyonceprop":"value1","validProp":"valid property","token":"8ng06D71u4W2CXnq9OcvtkVO0kn9lisgW3KTA2E85Vs"},"offset":7}]
|
70
|
+
|
71
|
+
*/
|
72
|
+
</script>
|
73
|
+
</head>
|
74
|
+
<body>
|
75
|
+
<h1>Relax while I finish my testing process....</h1>
|
76
|
+
</body>
|
77
|
+
</html>
|
@@ -0,0 +1,52 @@
|
|
1
|
+
import {
|
2
|
+
NAME,
|
3
|
+
DISPLAY_NAME,
|
4
|
+
} from '@rudderstack/analytics-js-common/constants/integrations/Posthog/constants';
|
5
|
+
|
6
|
+
/**
|
7
|
+
* Get destination specific options from integrations options
|
8
|
+
* By default, it will return options for the destination using its display name
|
9
|
+
* If display name is not present, it will return options for the destination using its name
|
10
|
+
* The fallback is only for backward compatibility with SDK versions < v1.1
|
11
|
+
* @param {object} integrationsOptions Integrations options object
|
12
|
+
* @returns destination specific options
|
13
|
+
*/
|
14
|
+
const getDestinationOptions = integrationsOptions =>
|
15
|
+
integrationsOptions && (integrationsOptions[DISPLAY_NAME] || integrationsOptions[NAME]);
|
16
|
+
|
17
|
+
/**
|
18
|
+
* Returns xhrHeaders object
|
19
|
+
* @param {*} config
|
20
|
+
* @returns
|
21
|
+
*/
|
22
|
+
const getXhrHeaders = config => {
|
23
|
+
const xhrHeaders = {};
|
24
|
+
if (config.xhrHeaders && config.xhrHeaders.length > 0) {
|
25
|
+
config.xhrHeaders.forEach(header => {
|
26
|
+
if (header?.key?.trim() !== '' && header?.value?.trim() !== '') {
|
27
|
+
xhrHeaders[header.key] = header.value;
|
28
|
+
}
|
29
|
+
});
|
30
|
+
}
|
31
|
+
|
32
|
+
return xhrHeaders;
|
33
|
+
};
|
34
|
+
|
35
|
+
/**
|
36
|
+
* Returns propertyBlackList array
|
37
|
+
* @param {*} config
|
38
|
+
* @returns
|
39
|
+
*/
|
40
|
+
const getPropertyBlackList = config => {
|
41
|
+
const propertyBlackList = [];
|
42
|
+
if (config.propertyBlackList && config.propertyBlackList.length > 0) {
|
43
|
+
config.propertyBlackList.forEach(element => {
|
44
|
+
if (element?.property?.trim() !== '') {
|
45
|
+
propertyBlackList.push(element.property);
|
46
|
+
}
|
47
|
+
});
|
48
|
+
}
|
49
|
+
return propertyBlackList;
|
50
|
+
};
|
51
|
+
|
52
|
+
export { getXhrHeaders, getPropertyBlackList, getDestinationOptions };
|
@@ -0,0 +1,71 @@
|
|
1
|
+
/* eslint-disable class-methods-use-this */
|
2
|
+
import get from 'get-value';
|
3
|
+
import {
|
4
|
+
NAME,
|
5
|
+
DISPLAY_NAME,
|
6
|
+
} from '@rudderstack/analytics-js-common/constants/integrations/ProfitWell/constants';
|
7
|
+
import Logger from '../../utils/logger';
|
8
|
+
import { loadNativeSdk } from './nativeSdkLoader';
|
9
|
+
|
10
|
+
const logger = new Logger(DISPLAY_NAME);
|
11
|
+
|
12
|
+
class ProfitWell {
|
13
|
+
constructor(config, analytics, destinationInfo) {
|
14
|
+
if (analytics.logLevel) {
|
15
|
+
logger.setLogLevel(analytics.logLevel);
|
16
|
+
}
|
17
|
+
this.analytics = analytics;
|
18
|
+
this.publicApiKey = config.publicApiKey;
|
19
|
+
this.siteType = config.siteType;
|
20
|
+
this.name = NAME;
|
21
|
+
({
|
22
|
+
shouldApplyDeviceModeTransformation: this.shouldApplyDeviceModeTransformation,
|
23
|
+
propagateEventsUntransformedOnError: this.propagateEventsUntransformedOnError,
|
24
|
+
destinationId: this.destinationId,
|
25
|
+
} = destinationInfo ?? {});
|
26
|
+
}
|
27
|
+
|
28
|
+
init() {
|
29
|
+
if (!this.publicApiKey) {
|
30
|
+
logger.error('Public API Key not found');
|
31
|
+
return;
|
32
|
+
}
|
33
|
+
loadNativeSdk(this.publicApiKey);
|
34
|
+
}
|
35
|
+
|
36
|
+
isLoaded() {
|
37
|
+
return !!(window.profitwell && window.profitwell.length > 0);
|
38
|
+
}
|
39
|
+
|
40
|
+
isReady() {
|
41
|
+
return this.isLoaded();
|
42
|
+
}
|
43
|
+
|
44
|
+
identify(rudderElement) {
|
45
|
+
if (this.siteType === 'marketing') {
|
46
|
+
window.profitwell('start', {});
|
47
|
+
return;
|
48
|
+
}
|
49
|
+
|
50
|
+
const { message } = rudderElement;
|
51
|
+
const email = get(message, 'context.traits.email');
|
52
|
+
if (email) {
|
53
|
+
window.profitwell('start', {
|
54
|
+
user_email: email,
|
55
|
+
});
|
56
|
+
return;
|
57
|
+
}
|
58
|
+
|
59
|
+
const userId = get(message, 'userId');
|
60
|
+
if (userId) {
|
61
|
+
window.profitwell('start', {
|
62
|
+
user_id: userId,
|
63
|
+
});
|
64
|
+
return;
|
65
|
+
}
|
66
|
+
|
67
|
+
logger.info('email or userId is required for identify');
|
68
|
+
}
|
69
|
+
}
|
70
|
+
|
71
|
+
export default ProfitWell;
|
@@ -0,0 +1 @@
|
|
1
|
+
export { default as ProfitWell } from './browser';
|
@@ -0,0 +1,25 @@
|
|
1
|
+
import { LOAD_ORIGIN } from '@rudderstack/analytics-js-common/v1.1/utils/constants';
|
2
|
+
|
3
|
+
function loadNativeSdk(publicApiKey) {
|
4
|
+
window.publicApiKey = publicApiKey;
|
5
|
+
|
6
|
+
const scriptTag = document.createElement('script');
|
7
|
+
scriptTag.setAttribute('id', 'profitwell-js');
|
8
|
+
scriptTag.setAttribute('data-pw-auth', window.publicApiKey);
|
9
|
+
document.body.appendChild(scriptTag);
|
10
|
+
(function (i, s, o, g, r, a, m) {
|
11
|
+
i[o] =
|
12
|
+
i[o] ||
|
13
|
+
function () {
|
14
|
+
(i[o].q = i[o].q || []).push(arguments);
|
15
|
+
};
|
16
|
+
a = s.createElement(g);
|
17
|
+
m = s.getElementsByTagName(g)[0];
|
18
|
+
a.async = 1;
|
19
|
+
a.setAttribute('data-loader', LOAD_ORIGIN);
|
20
|
+
a.src = `${r}?auth=${window.publicApiKey}`;
|
21
|
+
m.parentNode.insertBefore(a, m);
|
22
|
+
})(window, document, 'profitwell', 'script', 'https://public.profitwell.com/js/profitwell.js');
|
23
|
+
}
|
24
|
+
|
25
|
+
export { loadNativeSdk };
|