@customerio/cdp-analytics-browser 0.0.0-test-oidc
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.MD +22 -0
- package/README.md +36 -0
- package/dist/cjs/browser/browser-umd.js +20 -0
- package/dist/cjs/browser/browser-umd.js.map +1 -0
- package/dist/cjs/browser/index.js +334 -0
- package/dist/cjs/browser/index.js.map +1 -0
- package/dist/cjs/browser/standalone-analytics.js +62 -0
- package/dist/cjs/browser/standalone-analytics.js.map +1 -0
- package/dist/cjs/browser/standalone-interface.js +3 -0
- package/dist/cjs/browser/standalone-interface.js.map +1 -0
- package/dist/cjs/browser/standalone.js +90 -0
- package/dist/cjs/browser/standalone.js.map +1 -0
- package/dist/cjs/core/analytics/index.js +545 -0
- package/dist/cjs/core/analytics/index.js.map +1 -0
- package/dist/cjs/core/analytics/interfaces.js +3 -0
- package/dist/cjs/core/analytics/interfaces.js.map +1 -0
- package/dist/cjs/core/arguments-resolver/index.js +106 -0
- package/dist/cjs/core/arguments-resolver/index.js.map +1 -0
- package/dist/cjs/core/auto-track.js +108 -0
- package/dist/cjs/core/auto-track.js.map +1 -0
- package/dist/cjs/core/buffer/index.js +237 -0
- package/dist/cjs/core/buffer/index.js.map +1 -0
- package/dist/cjs/core/buffer/snippet.js +32 -0
- package/dist/cjs/core/buffer/snippet.js.map +1 -0
- package/dist/cjs/core/callback/index.js +7 -0
- package/dist/cjs/core/callback/index.js.map +1 -0
- package/dist/cjs/core/connection/index.js +16 -0
- package/dist/cjs/core/connection/index.js.map +1 -0
- package/dist/cjs/core/context/index.js +19 -0
- package/dist/cjs/core/context/index.js.map +1 -0
- package/dist/cjs/core/environment/index.js +12 -0
- package/dist/cjs/core/environment/index.js.map +1 -0
- package/dist/cjs/core/events/index.js +134 -0
- package/dist/cjs/core/events/index.js.map +1 -0
- package/dist/cjs/core/events/interfaces.js +3 -0
- package/dist/cjs/core/events/interfaces.js.map +1 -0
- package/dist/cjs/core/inspector/index.js +14 -0
- package/dist/cjs/core/inspector/index.js.map +1 -0
- package/dist/cjs/core/plugin/index.js +3 -0
- package/dist/cjs/core/plugin/index.js.map +1 -0
- package/dist/cjs/core/query-string/gracefulDecodeURIComponent.js +20 -0
- package/dist/cjs/core/query-string/gracefulDecodeURIComponent.js.map +1 -0
- package/dist/cjs/core/query-string/index.js +48 -0
- package/dist/cjs/core/query-string/index.js.map +1 -0
- package/dist/cjs/core/query-string/pickPrefix.js +20 -0
- package/dist/cjs/core/query-string/pickPrefix.js.map +1 -0
- package/dist/cjs/core/queue/event-queue.js +15 -0
- package/dist/cjs/core/queue/event-queue.js.map +1 -0
- package/dist/cjs/core/stats/index.js +23 -0
- package/dist/cjs/core/stats/index.js.map +1 -0
- package/dist/cjs/core/stats/remote-metrics.js +107 -0
- package/dist/cjs/core/stats/remote-metrics.js.map +1 -0
- package/dist/cjs/core/user/index.js +422 -0
- package/dist/cjs/core/user/index.js.map +1 -0
- package/dist/cjs/core/user/tld.js +64 -0
- package/dist/cjs/core/user/tld.js.map +1 -0
- package/dist/cjs/generated/version.js +6 -0
- package/dist/cjs/generated/version.js.map +1 -0
- package/dist/cjs/index.js +15 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/lib/bind-all.js +17 -0
- package/dist/cjs/lib/bind-all.js.map +1 -0
- package/dist/cjs/lib/browser-polyfill.js +22 -0
- package/dist/cjs/lib/browser-polyfill.js.map +1 -0
- package/dist/cjs/lib/create-deferred.js +21 -0
- package/dist/cjs/lib/create-deferred.js.map +1 -0
- package/dist/cjs/lib/csp-detection.js +33 -0
- package/dist/cjs/lib/csp-detection.js.map +1 -0
- package/dist/cjs/lib/embedded-write-key.js +22 -0
- package/dist/cjs/lib/embedded-write-key.js.map +1 -0
- package/dist/cjs/lib/fetch.js +19 -0
- package/dist/cjs/lib/fetch.js.map +1 -0
- package/dist/cjs/lib/get-global.js +21 -0
- package/dist/cjs/lib/get-global.js.map +1 -0
- package/dist/cjs/lib/get-process-env.js +15 -0
- package/dist/cjs/lib/get-process-env.js.map +1 -0
- package/dist/cjs/lib/global-analytics-helper.js +34 -0
- package/dist/cjs/lib/global-analytics-helper.js.map +1 -0
- package/dist/cjs/lib/group-by.js +28 -0
- package/dist/cjs/lib/group-by.js.map +1 -0
- package/dist/cjs/lib/is-plan-event-enabled.js +20 -0
- package/dist/cjs/lib/is-plan-event-enabled.js.map +1 -0
- package/dist/cjs/lib/is-thenable.js +15 -0
- package/dist/cjs/lib/is-thenable.js.map +1 -0
- package/dist/cjs/lib/load-script.js +56 -0
- package/dist/cjs/lib/load-script.js.map +1 -0
- package/dist/cjs/lib/merged-options.js +31 -0
- package/dist/cjs/lib/merged-options.js.map +1 -0
- package/dist/cjs/lib/on-page-leave.js +35 -0
- package/dist/cjs/lib/on-page-leave.js.map +1 -0
- package/dist/cjs/lib/p-while.js +25 -0
- package/dist/cjs/lib/p-while.js.map +1 -0
- package/dist/cjs/lib/parse-cdn.js +86 -0
- package/dist/cjs/lib/parse-cdn.js.map +1 -0
- package/dist/cjs/lib/priority-queue/backoff.js +10 -0
- package/dist/cjs/lib/priority-queue/backoff.js.map +1 -0
- package/dist/cjs/lib/priority-queue/index.js +7 -0
- package/dist/cjs/lib/priority-queue/index.js.map +1 -0
- package/dist/cjs/lib/priority-queue/persisted.js +108 -0
- package/dist/cjs/lib/priority-queue/persisted.js.map +1 -0
- package/dist/cjs/lib/sleep.js +10 -0
- package/dist/cjs/lib/sleep.js.map +1 -0
- package/dist/cjs/lib/to-facade.js +32 -0
- package/dist/cjs/lib/to-facade.js.map +1 -0
- package/dist/cjs/node/index.js +43 -0
- package/dist/cjs/node/index.js.map +1 -0
- package/dist/cjs/node/node.browser.js +13 -0
- package/dist/cjs/node/node.browser.js.map +1 -0
- package/dist/cjs/plugins/ajs-destination/index.js +345 -0
- package/dist/cjs/plugins/ajs-destination/index.js.map +1 -0
- package/dist/cjs/plugins/ajs-destination/loader.js +110 -0
- package/dist/cjs/plugins/ajs-destination/loader.js.map +1 -0
- package/dist/cjs/plugins/ajs-destination/types.js +3 -0
- package/dist/cjs/plugins/ajs-destination/types.js.map +1 -0
- package/dist/cjs/plugins/ajs-destination/utils.js +23 -0
- package/dist/cjs/plugins/ajs-destination/utils.js.map +1 -0
- package/dist/cjs/plugins/analytics-node/index.js +65 -0
- package/dist/cjs/plugins/analytics-node/index.js.map +1 -0
- package/dist/cjs/plugins/customerio/batched-dispatcher.js +102 -0
- package/dist/cjs/plugins/customerio/batched-dispatcher.js.map +1 -0
- package/dist/cjs/plugins/customerio/fetch-dispatcher.js +18 -0
- package/dist/cjs/plugins/customerio/fetch-dispatcher.js.map +1 -0
- package/dist/cjs/plugins/customerio/index.js +98 -0
- package/dist/cjs/plugins/customerio/index.js.map +1 -0
- package/dist/cjs/plugins/customerio/normalize.js +176 -0
- package/dist/cjs/plugins/customerio/normalize.js.map +1 -0
- package/dist/cjs/plugins/customerio/schedule-flush.js +76 -0
- package/dist/cjs/plugins/customerio/schedule-flush.js.map +1 -0
- package/dist/cjs/plugins/in-app-plugin/events.js +41 -0
- package/dist/cjs/plugins/in-app-plugin/events.js.map +1 -0
- package/dist/cjs/plugins/in-app-plugin/index.js +237 -0
- package/dist/cjs/plugins/in-app-plugin/index.js.map +1 -0
- package/dist/cjs/plugins/legacy-video-plugins/index.js +25 -0
- package/dist/cjs/plugins/legacy-video-plugins/index.js.map +1 -0
- package/dist/cjs/plugins/middleware/index.js +124 -0
- package/dist/cjs/plugins/middleware/index.js.map +1 -0
- package/dist/cjs/plugins/page-enrichment/index.js +98 -0
- package/dist/cjs/plugins/page-enrichment/index.js.map +1 -0
- package/dist/cjs/plugins/remote-loader/index.js +211 -0
- package/dist/cjs/plugins/remote-loader/index.js.map +1 -0
- package/dist/cjs/plugins/remote-middleware/index.js +70 -0
- package/dist/cjs/plugins/remote-middleware/index.js.map +1 -0
- package/dist/cjs/plugins/routing-middleware/index.js +27 -0
- package/dist/cjs/plugins/routing-middleware/index.js.map +1 -0
- package/dist/cjs/plugins/schema-filter/index.js +67 -0
- package/dist/cjs/plugins/schema-filter/index.js.map +1 -0
- package/dist/cjs/plugins/validation/index.js +70 -0
- package/dist/cjs/plugins/validation/index.js.map +1 -0
- package/dist/cjs/vendor/tsub/tsub.js +645 -0
- package/dist/cjs/vendor/tsub/tsub.js.map +1 -0
- package/dist/cjs/vendor/tsub/types.js +3 -0
- package/dist/cjs/vendor/tsub/types.js.map +1 -0
- package/dist/pkg/browser/browser-umd.js +17 -0
- package/dist/pkg/browser/browser-umd.js.map +1 -0
- package/dist/pkg/browser/index.js +330 -0
- package/dist/pkg/browser/index.js.map +1 -0
- package/dist/pkg/browser/standalone-analytics.js +58 -0
- package/dist/pkg/browser/standalone-analytics.js.map +1 -0
- package/dist/pkg/browser/standalone-interface.js +2 -0
- package/dist/pkg/browser/standalone-interface.js.map +1 -0
- package/dist/pkg/browser/standalone.js +88 -0
- package/dist/pkg/browser/standalone.js.map +1 -0
- package/dist/pkg/core/analytics/index.js +542 -0
- package/dist/pkg/core/analytics/index.js.map +1 -0
- package/dist/pkg/core/analytics/interfaces.js +2 -0
- package/dist/pkg/core/analytics/interfaces.js.map +1 -0
- package/dist/pkg/core/arguments-resolver/index.js +99 -0
- package/dist/pkg/core/arguments-resolver/index.js.map +1 -0
- package/dist/pkg/core/auto-track.js +103 -0
- package/dist/pkg/core/auto-track.js.map +1 -0
- package/dist/pkg/core/buffer/index.js +231 -0
- package/dist/pkg/core/buffer/index.js.map +1 -0
- package/dist/pkg/core/buffer/snippet.js +27 -0
- package/dist/pkg/core/buffer/snippet.js.map +1 -0
- package/dist/pkg/core/callback/index.js +2 -0
- package/dist/pkg/core/callback/index.js.map +1 -0
- package/dist/pkg/core/connection/index.js +11 -0
- package/dist/pkg/core/connection/index.js.map +1 -0
- package/dist/pkg/core/context/index.js +16 -0
- package/dist/pkg/core/context/index.js.map +1 -0
- package/dist/pkg/core/environment/index.js +7 -0
- package/dist/pkg/core/environment/index.js.map +1 -0
- package/dist/pkg/core/events/index.js +131 -0
- package/dist/pkg/core/events/index.js.map +1 -0
- package/dist/pkg/core/events/interfaces.js +2 -0
- package/dist/pkg/core/events/interfaces.js.map +1 -0
- package/dist/pkg/core/inspector/index.js +10 -0
- package/dist/pkg/core/inspector/index.js.map +1 -0
- package/dist/pkg/core/plugin/index.js +2 -0
- package/dist/pkg/core/plugin/index.js.map +1 -0
- package/dist/pkg/core/query-string/gracefulDecodeURIComponent.js +16 -0
- package/dist/pkg/core/query-string/gracefulDecodeURIComponent.js.map +1 -0
- package/dist/pkg/core/query-string/index.js +44 -0
- package/dist/pkg/core/query-string/index.js.map +1 -0
- package/dist/pkg/core/query-string/pickPrefix.js +16 -0
- package/dist/pkg/core/query-string/pickPrefix.js.map +1 -0
- package/dist/pkg/core/queue/event-queue.js +12 -0
- package/dist/pkg/core/queue/event-queue.js.map +1 -0
- package/dist/pkg/core/stats/index.js +20 -0
- package/dist/pkg/core/stats/index.js.map +1 -0
- package/dist/pkg/core/stats/remote-metrics.js +104 -0
- package/dist/pkg/core/stats/remote-metrics.js.map +1 -0
- package/dist/pkg/core/user/index.js +418 -0
- package/dist/pkg/core/user/index.js.map +1 -0
- package/dist/pkg/core/user/tld.js +59 -0
- package/dist/pkg/core/user/tld.js.map +1 -0
- package/dist/pkg/generated/version.js +3 -0
- package/dist/pkg/generated/version.js.map +1 -0
- package/dist/pkg/index.js +10 -0
- package/dist/pkg/index.js.map +1 -0
- package/dist/pkg/lib/bind-all.js +14 -0
- package/dist/pkg/lib/bind-all.js.map +1 -0
- package/dist/pkg/lib/browser-polyfill.js +18 -0
- package/dist/pkg/lib/browser-polyfill.js.map +1 -0
- package/dist/pkg/lib/create-deferred.js +17 -0
- package/dist/pkg/lib/create-deferred.js.map +1 -0
- package/dist/pkg/lib/csp-detection.js +29 -0
- package/dist/pkg/lib/csp-detection.js.map +1 -0
- package/dist/pkg/lib/embedded-write-key.js +18 -0
- package/dist/pkg/lib/embedded-write-key.js.map +1 -0
- package/dist/pkg/lib/fetch.js +14 -0
- package/dist/pkg/lib/fetch.js.map +1 -0
- package/dist/pkg/lib/get-global.js +17 -0
- package/dist/pkg/lib/get-global.js.map +1 -0
- package/dist/pkg/lib/get-process-env.js +11 -0
- package/dist/pkg/lib/get-process-env.js.map +1 -0
- package/dist/pkg/lib/global-analytics-helper.js +28 -0
- package/dist/pkg/lib/global-analytics-helper.js.map +1 -0
- package/dist/pkg/lib/group-by.js +24 -0
- package/dist/pkg/lib/group-by.js.map +1 -0
- package/dist/pkg/lib/is-plan-event-enabled.js +16 -0
- package/dist/pkg/lib/is-plan-event-enabled.js.map +1 -0
- package/dist/pkg/lib/is-thenable.js +11 -0
- package/dist/pkg/lib/is-thenable.js.map +1 -0
- package/dist/pkg/lib/load-script.js +51 -0
- package/dist/pkg/lib/load-script.js.map +1 -0
- package/dist/pkg/lib/merged-options.js +27 -0
- package/dist/pkg/lib/merged-options.js.map +1 -0
- package/dist/pkg/lib/on-page-leave.js +31 -0
- package/dist/pkg/lib/on-page-leave.js.map +1 -0
- package/dist/pkg/lib/p-while.js +21 -0
- package/dist/pkg/lib/p-while.js.map +1 -0
- package/dist/pkg/lib/parse-cdn.js +79 -0
- package/dist/pkg/lib/parse-cdn.js.map +1 -0
- package/dist/pkg/lib/priority-queue/backoff.js +6 -0
- package/dist/pkg/lib/priority-queue/backoff.js.map +1 -0
- package/dist/pkg/lib/priority-queue/index.js +3 -0
- package/dist/pkg/lib/priority-queue/index.js.map +1 -0
- package/dist/pkg/lib/priority-queue/persisted.js +105 -0
- package/dist/pkg/lib/priority-queue/persisted.js.map +1 -0
- package/dist/pkg/lib/sleep.js +6 -0
- package/dist/pkg/lib/sleep.js.map +1 -0
- package/dist/pkg/lib/to-facade.js +28 -0
- package/dist/pkg/lib/to-facade.js.map +1 -0
- package/dist/pkg/node/index.js +40 -0
- package/dist/pkg/node/index.js.map +1 -0
- package/dist/pkg/node/node.browser.js +10 -0
- package/dist/pkg/node/node.browser.js.map +1 -0
- package/dist/pkg/plugins/ajs-destination/index.js +341 -0
- package/dist/pkg/plugins/ajs-destination/index.js.map +1 -0
- package/dist/pkg/plugins/ajs-destination/loader.js +102 -0
- package/dist/pkg/plugins/ajs-destination/loader.js.map +1 -0
- package/dist/pkg/plugins/ajs-destination/types.js +2 -0
- package/dist/pkg/plugins/ajs-destination/types.js.map +1 -0
- package/dist/pkg/plugins/ajs-destination/utils.js +18 -0
- package/dist/pkg/plugins/ajs-destination/utils.js.map +1 -0
- package/dist/pkg/plugins/analytics-node/index.js +60 -0
- package/dist/pkg/plugins/analytics-node/index.js.map +1 -0
- package/dist/pkg/plugins/customerio/batched-dispatcher.js +99 -0
- package/dist/pkg/plugins/customerio/batched-dispatcher.js.map +1 -0
- package/dist/pkg/plugins/customerio/fetch-dispatcher.js +15 -0
- package/dist/pkg/plugins/customerio/fetch-dispatcher.js.map +1 -0
- package/dist/pkg/plugins/customerio/index.js +94 -0
- package/dist/pkg/plugins/customerio/index.js.map +1 -0
- package/dist/pkg/plugins/customerio/normalize.js +168 -0
- package/dist/pkg/plugins/customerio/normalize.js.map +1 -0
- package/dist/pkg/plugins/customerio/schedule-flush.js +72 -0
- package/dist/pkg/plugins/customerio/schedule-flush.js.map +1 -0
- package/dist/pkg/plugins/in-app-plugin/events.js +36 -0
- package/dist/pkg/plugins/in-app-plugin/events.js.map +1 -0
- package/dist/pkg/plugins/in-app-plugin/index.js +233 -0
- package/dist/pkg/plugins/in-app-plugin/index.js.map +1 -0
- package/dist/pkg/plugins/legacy-video-plugins/index.js +25 -0
- package/dist/pkg/plugins/legacy-video-plugins/index.js.map +1 -0
- package/dist/pkg/plugins/middleware/index.js +119 -0
- package/dist/pkg/plugins/middleware/index.js.map +1 -0
- package/dist/pkg/plugins/page-enrichment/index.js +93 -0
- package/dist/pkg/plugins/page-enrichment/index.js.map +1 -0
- package/dist/pkg/plugins/remote-loader/index.js +207 -0
- package/dist/pkg/plugins/remote-loader/index.js.map +1 -0
- package/dist/pkg/plugins/remote-middleware/index.js +66 -0
- package/dist/pkg/plugins/remote-middleware/index.js.map +1 -0
- package/dist/pkg/plugins/routing-middleware/index.js +22 -0
- package/dist/pkg/plugins/routing-middleware/index.js.map +1 -0
- package/dist/pkg/plugins/schema-filter/index.js +63 -0
- package/dist/pkg/plugins/schema-filter/index.js.map +1 -0
- package/dist/pkg/plugins/validation/index.js +63 -0
- package/dist/pkg/plugins/validation/index.js.map +1 -0
- package/dist/pkg/vendor/tsub/tsub.js +645 -0
- package/dist/pkg/vendor/tsub/tsub.js.map +1 -0
- package/dist/pkg/vendor/tsub/types.js +2 -0
- package/dist/pkg/vendor/tsub/types.js.map +1 -0
- package/dist/types/browser/browser-umd.d.ts +2 -0
- package/dist/types/browser/browser-umd.d.ts.map +1 -0
- package/dist/types/browser/index.d.ts +86 -0
- package/dist/types/browser/index.d.ts.map +1 -0
- package/dist/types/browser/standalone-analytics.d.ts +2 -0
- package/dist/types/browser/standalone-analytics.d.ts.map +1 -0
- package/dist/types/browser/standalone-interface.d.ts +10 -0
- package/dist/types/browser/standalone-interface.d.ts.map +1 -0
- package/dist/types/browser/standalone.d.ts +2 -0
- package/dist/types/browser/standalone.d.ts.map +1 -0
- package/dist/types/core/analytics/index.d.ts +121 -0
- package/dist/types/core/analytics/index.d.ts.map +1 -0
- package/dist/types/core/analytics/interfaces.d.ts +77 -0
- package/dist/types/core/analytics/interfaces.d.ts.map +1 -0
- package/dist/types/core/arguments-resolver/index.d.ts +34 -0
- package/dist/types/core/arguments-resolver/index.d.ts.map +1 -0
- package/dist/types/core/auto-track.d.ts +10 -0
- package/dist/types/core/auto-track.d.ts.map +1 -0
- package/dist/types/core/buffer/index.d.ts +86 -0
- package/dist/types/core/buffer/index.d.ts.map +1 -0
- package/dist/types/core/buffer/snippet.d.ts +15 -0
- package/dist/types/core/buffer/snippet.d.ts.map +1 -0
- package/dist/types/core/callback/index.d.ts +2 -0
- package/dist/types/core/callback/index.d.ts.map +1 -0
- package/dist/types/core/connection/index.d.ts +3 -0
- package/dist/types/core/connection/index.d.ts.map +1 -0
- package/dist/types/core/context/index.d.ts +9 -0
- package/dist/types/core/context/index.d.ts.map +1 -0
- package/dist/types/core/environment/index.d.ts +3 -0
- package/dist/types/core/environment/index.d.ts.map +1 -0
- package/dist/types/core/events/index.d.ts +21 -0
- package/dist/types/core/events/index.d.ts.map +1 -0
- package/dist/types/core/events/interfaces.d.ts +9 -0
- package/dist/types/core/events/interfaces.d.ts.map +1 -0
- package/dist/types/core/inspector/index.d.ts +3 -0
- package/dist/types/core/inspector/index.d.ts.map +1 -0
- package/dist/types/core/plugin/index.d.ts +11 -0
- package/dist/types/core/plugin/index.d.ts.map +1 -0
- package/dist/types/core/query-string/gracefulDecodeURIComponent.d.ts +9 -0
- package/dist/types/core/query-string/gracefulDecodeURIComponent.d.ts.map +1 -0
- package/dist/types/core/query-string/index.d.ts +7 -0
- package/dist/types/core/query-string/index.d.ts.map +1 -0
- package/dist/types/core/query-string/pickPrefix.d.ts +9 -0
- package/dist/types/core/query-string/pickPrefix.d.ts.map +1 -0
- package/dist/types/core/queue/event-queue.d.ts +8 -0
- package/dist/types/core/queue/event-queue.d.ts.map +1 -0
- package/dist/types/core/stats/index.d.ts +7 -0
- package/dist/types/core/stats/index.d.ts.map +1 -0
- package/dist/types/core/stats/remote-metrics.d.ts +29 -0
- package/dist/types/core/stats/remote-metrics.d.ts.map +1 -0
- package/dist/types/core/user/index.d.ts +128 -0
- package/dist/types/core/user/index.d.ts.map +1 -0
- package/dist/types/core/user/tld.d.ts +2 -0
- package/dist/types/core/user/tld.d.ts.map +1 -0
- package/dist/types/generated/version.d.ts +2 -0
- package/dist/types/generated/version.d.ts.map +1 -0
- package/dist/types/index.d.ts +11 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/lib/bind-all.d.ts +4 -0
- package/dist/types/lib/bind-all.d.ts.map +1 -0
- package/dist/types/lib/browser-polyfill.d.ts +2 -0
- package/dist/types/lib/browser-polyfill.d.ts.map +1 -0
- package/dist/types/lib/create-deferred.d.ts +9 -0
- package/dist/types/lib/create-deferred.d.ts.map +1 -0
- package/dist/types/lib/csp-detection.d.ts +4 -0
- package/dist/types/lib/csp-detection.d.ts.map +1 -0
- package/dist/types/lib/embedded-write-key.d.ts +7 -0
- package/dist/types/lib/embedded-write-key.d.ts.map +1 -0
- package/dist/types/lib/fetch.d.ts +5 -0
- package/dist/types/lib/fetch.d.ts.map +1 -0
- package/dist/types/lib/get-global.d.ts +2 -0
- package/dist/types/lib/get-global.d.ts.map +1 -0
- package/dist/types/lib/get-process-env.d.ts +8 -0
- package/dist/types/lib/get-process-env.d.ts.map +1 -0
- package/dist/types/lib/global-analytics-helper.d.ts +18 -0
- package/dist/types/lib/global-analytics-helper.d.ts.map +1 -0
- package/dist/types/lib/group-by.d.ts +4 -0
- package/dist/types/lib/group-by.d.ts.map +1 -0
- package/dist/types/lib/is-plan-event-enabled.d.ts +9 -0
- package/dist/types/lib/is-plan-event-enabled.d.ts.map +1 -0
- package/dist/types/lib/is-thenable.d.ts +6 -0
- package/dist/types/lib/is-thenable.d.ts.map +1 -0
- package/dist/types/lib/load-script.d.ts +3 -0
- package/dist/types/lib/load-script.d.ts.map +1 -0
- package/dist/types/lib/merged-options.d.ts +13 -0
- package/dist/types/lib/merged-options.d.ts.map +1 -0
- package/dist/types/lib/on-page-leave.d.ts +11 -0
- package/dist/types/lib/on-page-leave.d.ts.map +1 -0
- package/dist/types/lib/p-while.d.ts +2 -0
- package/dist/types/lib/p-while.d.ts.map +1 -0
- package/dist/types/lib/parse-cdn.d.ts +10 -0
- package/dist/types/lib/parse-cdn.d.ts.map +1 -0
- package/dist/types/lib/priority-queue/backoff.d.ts +13 -0
- package/dist/types/lib/priority-queue/backoff.d.ts.map +1 -0
- package/dist/types/lib/priority-queue/index.d.ts +3 -0
- package/dist/types/lib/priority-queue/index.d.ts.map +1 -0
- package/dist/types/lib/priority-queue/persisted.d.ts +6 -0
- package/dist/types/lib/priority-queue/persisted.d.ts.map +1 -0
- package/dist/types/lib/sleep.d.ts +2 -0
- package/dist/types/lib/sleep.d.ts.map +1 -0
- package/dist/types/lib/to-facade.d.ts +7 -0
- package/dist/types/lib/to-facade.d.ts.map +1 -0
- package/dist/types/node/index.d.ts +8 -0
- package/dist/types/node/index.d.ts.map +1 -0
- package/dist/types/node/node.browser.d.ts +4 -0
- package/dist/types/node/node.browser.d.ts.map +1 -0
- package/dist/types/plugins/ajs-destination/index.d.ts +42 -0
- package/dist/types/plugins/ajs-destination/index.d.ts.map +1 -0
- package/dist/types/plugins/ajs-destination/loader.d.ts +12 -0
- package/dist/types/plugins/ajs-destination/loader.d.ts.map +1 -0
- package/dist/types/plugins/ajs-destination/types.d.ts +36 -0
- package/dist/types/plugins/ajs-destination/types.d.ts.map +1 -0
- package/dist/types/plugins/ajs-destination/utils.d.ts +5 -0
- package/dist/types/plugins/ajs-destination/utils.d.ts.map +1 -0
- package/dist/types/plugins/analytics-node/index.d.ts +12 -0
- package/dist/types/plugins/analytics-node/index.d.ts.map +1 -0
- package/dist/types/plugins/customerio/batched-dispatcher.d.ts +8 -0
- package/dist/types/plugins/customerio/batched-dispatcher.d.ts.map +1 -0
- package/dist/types/plugins/customerio/fetch-dispatcher.d.ts +8 -0
- package/dist/types/plugins/customerio/fetch-dispatcher.d.ts.map +1 -0
- package/dist/types/plugins/customerio/index.d.ts +26 -0
- package/dist/types/plugins/customerio/index.d.ts.map +1 -0
- package/dist/types/plugins/customerio/normalize.d.ts +12 -0
- package/dist/types/plugins/customerio/normalize.d.ts.map +1 -0
- package/dist/types/plugins/customerio/schedule-flush.d.ts +5 -0
- package/dist/types/plugins/customerio/schedule-flush.d.ts.map +1 -0
- package/dist/types/plugins/in-app-plugin/events.d.ts +19 -0
- package/dist/types/plugins/in-app-plugin/events.d.ts.map +1 -0
- package/dist/types/plugins/in-app-plugin/index.d.ts +12 -0
- package/dist/types/plugins/in-app-plugin/index.d.ts.map +1 -0
- package/dist/types/plugins/legacy-video-plugins/index.d.ts +3 -0
- package/dist/types/plugins/legacy-video-plugins/index.d.ts.map +1 -0
- package/dist/types/plugins/middleware/index.d.ts +18 -0
- package/dist/types/plugins/middleware/index.d.ts.map +1 -0
- package/dist/types/plugins/page-enrichment/index.d.ts +21 -0
- package/dist/types/plugins/page-enrichment/index.d.ts.map +1 -0
- package/dist/types/plugins/remote-loader/index.d.ts +43 -0
- package/dist/types/plugins/remote-loader/index.d.ts.map +1 -0
- package/dist/types/plugins/remote-middleware/index.d.ts +5 -0
- package/dist/types/plugins/remote-middleware/index.d.ts.map +1 -0
- package/dist/types/plugins/routing-middleware/index.d.ts +13 -0
- package/dist/types/plugins/routing-middleware/index.d.ts.map +1 -0
- package/dist/types/plugins/schema-filter/index.d.ts +5 -0
- package/dist/types/plugins/schema-filter/index.d.ts.map +1 -0
- package/dist/types/plugins/validation/index.d.ts +7 -0
- package/dist/types/plugins/validation/index.d.ts.map +1 -0
- package/dist/types/vendor/tsub/tsub.d.ts +1 -0
- package/dist/types/vendor/tsub/tsub.d.ts.map +1 -0
- package/dist/types/vendor/tsub/types.d.ts +20 -0
- package/dist/types/vendor/tsub/types.d.ts.map +1 -0
- package/dist/umd/407.js +1 -0
- package/dist/umd/407.js.gz +0 -0
- package/dist/umd/852.js +1 -0
- package/dist/umd/852.js.gz +0 -0
- package/dist/umd/ajs-destination.js +1 -0
- package/dist/umd/ajs-destination.js.gz +0 -0
- package/dist/umd/auto-track.js +1 -0
- package/dist/umd/auto-track.js.gz +0 -0
- package/dist/umd/inAppPlugin.js +1 -0
- package/dist/umd/inAppPlugin.js.gz +0 -0
- package/dist/umd/index.js +1 -0
- package/dist/umd/index.js.gz +0 -0
- package/dist/umd/legacyVideos.js +1 -0
- package/dist/umd/legacyVideos.js.gz +0 -0
- package/dist/umd/queryString.js +1 -0
- package/dist/umd/queryString.js.gz +0 -0
- package/dist/umd/remoteMiddleware.js +1 -0
- package/dist/umd/remoteMiddleware.js.gz +0 -0
- package/dist/umd/schemaFilter.js +1 -0
- package/dist/umd/schemaFilter.js.gz +0 -0
- package/dist/umd/standalone.js +1 -0
- package/dist/umd/standalone.js.gz +0 -0
- package/dist/umd/tsub-middleware.js +1 -0
- package/dist/umd/tsub-middleware.js.gz +0 -0
- package/package.json +106 -0
- package/src/browser/browser-umd.ts +19 -0
- package/src/browser/index.ts +423 -0
- package/src/browser/standalone-analytics.ts +62 -0
- package/src/browser/standalone-interface.ts +11 -0
- package/src/browser/standalone.ts +90 -0
- package/src/core/analytics/index.ts +573 -0
- package/src/core/analytics/interfaces.ts +100 -0
- package/src/core/arguments-resolver/index.ts +166 -0
- package/src/core/auto-track.ts +152 -0
- package/src/core/buffer/index.ts +289 -0
- package/src/core/buffer/snippet.ts +46 -0
- package/src/core/callback/index.ts +1 -0
- package/src/core/connection/index.ts +13 -0
- package/src/core/context/index.ts +21 -0
- package/src/core/environment/index.ts +7 -0
- package/src/core/events/index.ts +254 -0
- package/src/core/events/interfaces.ts +36 -0
- package/src/core/inspector/index.ts +14 -0
- package/src/core/plugin/index.ts +12 -0
- package/src/core/query-string/gracefulDecodeURIComponent.ts +16 -0
- package/src/core/query-string/index.ts +64 -0
- package/src/core/query-string/pickPrefix.ts +20 -0
- package/src/core/queue/event-queue.ts +11 -0
- package/src/core/stats/index.ts +15 -0
- package/src/core/stats/remote-metrics.ts +137 -0
- package/src/core/user/index.ts +534 -0
- package/src/core/user/tld.ts +65 -0
- package/src/generated/version.ts +2 -0
- package/src/index.ts +12 -0
- package/src/lib/bind-all.ts +19 -0
- package/src/lib/browser-polyfill.ts +23 -0
- package/src/lib/create-deferred.ts +16 -0
- package/src/lib/csp-detection.ts +26 -0
- package/src/lib/embedded-write-key.ts +24 -0
- package/src/lib/fetch.ts +10 -0
- package/src/lib/get-global.ts +16 -0
- package/src/lib/get-process-env.ts +11 -0
- package/src/lib/global-analytics-helper.ts +31 -0
- package/src/lib/group-by.ts +30 -0
- package/src/lib/is-plan-event-enabled.ts +20 -0
- package/src/lib/is-thenable.ts +9 -0
- package/src/lib/load-script.ts +66 -0
- package/src/lib/merged-options.ts +46 -0
- package/src/lib/on-page-leave.ts +29 -0
- package/src/lib/p-while.ts +12 -0
- package/src/lib/parse-cdn.ts +93 -0
- package/src/lib/priority-queue/backoff.ts +24 -0
- package/src/lib/priority-queue/index.ts +6 -0
- package/src/lib/priority-queue/persisted.ts +127 -0
- package/src/lib/sleep.ts +4 -0
- package/src/lib/to-facade.ts +53 -0
- package/src/node/index.ts +36 -0
- package/src/node/node.browser.ts +7 -0
- package/src/plugins/ajs-destination/index.ts +388 -0
- package/src/plugins/ajs-destination/loader.ts +127 -0
- package/src/plugins/ajs-destination/types.ts +44 -0
- package/src/plugins/ajs-destination/utils.ts +34 -0
- package/src/plugins/analytics-node/index.ts +64 -0
- package/src/plugins/customerio/batched-dispatcher.ts +112 -0
- package/src/plugins/customerio/fetch-dispatcher.ts +24 -0
- package/src/plugins/customerio/index.ts +143 -0
- package/src/plugins/customerio/normalize.ts +223 -0
- package/src/plugins/customerio/schedule-flush.ts +58 -0
- package/src/plugins/in-app-plugin/events.ts +38 -0
- package/src/plugins/in-app-plugin/index.ts +241 -0
- package/src/plugins/legacy-video-plugins/index.ts +16 -0
- package/src/plugins/middleware/index.ts +131 -0
- package/src/plugins/page-enrichment/index.ts +127 -0
- package/src/plugins/remote-loader/index.ts +240 -0
- package/src/plugins/remote-middleware/index.ts +44 -0
- package/src/plugins/routing-middleware/index.ts +38 -0
- package/src/plugins/schema-filter/index.ts +90 -0
- package/src/plugins/validation/index.ts +80 -0
- package/src/test-helpers/browser-storage.ts +72 -0
- package/src/test-helpers/factories.ts +18 -0
- package/src/test-helpers/fetch-parse.ts +8 -0
- package/src/test-helpers/fixtures/cdn-settings.ts +299 -0
- package/src/test-helpers/fixtures/classic-destination.ts +25 -0
- package/src/test-helpers/fixtures/create-fetch-method.ts +24 -0
- package/src/test-helpers/test-writekeys.ts +5 -0
- package/src/test-helpers/type-assertions.ts +11 -0
- package/src/vendor/tsub/tsub.js.LICENSE.txt +53 -0
- package/src/vendor/tsub/tsub.ts +7 -0
- package/src/vendor/tsub/types.ts +19 -0
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import { __assign, __awaiter, __generator } from "tslib";
|
|
2
|
+
import { loadScript } from '../../lib/load-script';
|
|
3
|
+
import { getCDN } from '../../lib/parse-cdn';
|
|
4
|
+
import { applyDestinationMiddleware, } from '../middleware';
|
|
5
|
+
import { Context, ContextCancelation } from '../../core/context';
|
|
6
|
+
var ActionDestination = /** @class */ (function () {
|
|
7
|
+
function ActionDestination(name, action) {
|
|
8
|
+
this.version = '1.0.0';
|
|
9
|
+
this.alternativeNames = [];
|
|
10
|
+
this.middleware = [];
|
|
11
|
+
this.alias = this._createMethod('alias');
|
|
12
|
+
this.group = this._createMethod('group');
|
|
13
|
+
this.identify = this._createMethod('identify');
|
|
14
|
+
this.page = this._createMethod('page');
|
|
15
|
+
this.screen = this._createMethod('screen');
|
|
16
|
+
this.track = this._createMethod('track');
|
|
17
|
+
this.action = action;
|
|
18
|
+
this.name = name;
|
|
19
|
+
this.type = action.type;
|
|
20
|
+
this.alternativeNames.push(action.name);
|
|
21
|
+
}
|
|
22
|
+
ActionDestination.prototype.addMiddleware = function () {
|
|
23
|
+
var _a;
|
|
24
|
+
var fn = [];
|
|
25
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
26
|
+
fn[_i] = arguments[_i];
|
|
27
|
+
}
|
|
28
|
+
if (this.type === 'destination') {
|
|
29
|
+
(_a = this.middleware).push.apply(_a, fn);
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
ActionDestination.prototype.transform = function (ctx) {
|
|
33
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
34
|
+
var modifiedEvent;
|
|
35
|
+
return __generator(this, function (_a) {
|
|
36
|
+
switch (_a.label) {
|
|
37
|
+
case 0: return [4 /*yield*/, applyDestinationMiddleware(this.name, ctx.event, this.middleware)];
|
|
38
|
+
case 1:
|
|
39
|
+
modifiedEvent = _a.sent();
|
|
40
|
+
if (modifiedEvent === null) {
|
|
41
|
+
ctx.cancel(new ContextCancelation({
|
|
42
|
+
retry: false,
|
|
43
|
+
reason: 'dropped by destination middleware',
|
|
44
|
+
}));
|
|
45
|
+
}
|
|
46
|
+
return [2 /*return*/, new Context(modifiedEvent)];
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
ActionDestination.prototype._createMethod = function (methodName) {
|
|
52
|
+
var _this = this;
|
|
53
|
+
return function (ctx) { return __awaiter(_this, void 0, void 0, function () {
|
|
54
|
+
var transformedContext;
|
|
55
|
+
return __generator(this, function (_a) {
|
|
56
|
+
switch (_a.label) {
|
|
57
|
+
case 0:
|
|
58
|
+
if (!this.action[methodName])
|
|
59
|
+
return [2 /*return*/, ctx];
|
|
60
|
+
transformedContext = ctx;
|
|
61
|
+
if (!(this.type === 'destination')) return [3 /*break*/, 2];
|
|
62
|
+
return [4 /*yield*/, this.transform(ctx)];
|
|
63
|
+
case 1:
|
|
64
|
+
transformedContext = _a.sent();
|
|
65
|
+
_a.label = 2;
|
|
66
|
+
case 2: return [4 /*yield*/, this.action[methodName](transformedContext)];
|
|
67
|
+
case 3:
|
|
68
|
+
_a.sent();
|
|
69
|
+
return [2 /*return*/, ctx];
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
}); };
|
|
73
|
+
};
|
|
74
|
+
/* --- PASSTHROUGH METHODS --- */
|
|
75
|
+
ActionDestination.prototype.isLoaded = function () {
|
|
76
|
+
return this.action.isLoaded();
|
|
77
|
+
};
|
|
78
|
+
ActionDestination.prototype.ready = function () {
|
|
79
|
+
return this.action.ready ? this.action.ready() : Promise.resolve();
|
|
80
|
+
};
|
|
81
|
+
ActionDestination.prototype.load = function (ctx, analytics) {
|
|
82
|
+
return this.action.load(ctx, analytics);
|
|
83
|
+
};
|
|
84
|
+
ActionDestination.prototype.unload = function (ctx, analytics) {
|
|
85
|
+
var _a, _b;
|
|
86
|
+
return (_b = (_a = this.action).unload) === null || _b === void 0 ? void 0 : _b.call(_a, ctx, analytics);
|
|
87
|
+
};
|
|
88
|
+
return ActionDestination;
|
|
89
|
+
}());
|
|
90
|
+
export { ActionDestination };
|
|
91
|
+
function validate(pluginLike) {
|
|
92
|
+
if (!Array.isArray(pluginLike)) {
|
|
93
|
+
throw new Error('Not a valid list of plugins');
|
|
94
|
+
}
|
|
95
|
+
var required = ['load', 'isLoaded', 'name', 'version', 'type'];
|
|
96
|
+
pluginLike.forEach(function (plugin) {
|
|
97
|
+
required.forEach(function (method) {
|
|
98
|
+
var _a;
|
|
99
|
+
if (plugin[method] === undefined) {
|
|
100
|
+
throw new Error("Plugin: ".concat((_a = plugin.name) !== null && _a !== void 0 ? _a : 'unknown', " missing required function ").concat(method));
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
return true;
|
|
105
|
+
}
|
|
106
|
+
function isPluginDisabled(userIntegrations, remotePlugin) {
|
|
107
|
+
var creationNameEnabled = userIntegrations[remotePlugin.creationName];
|
|
108
|
+
var currentNameEnabled = userIntegrations[remotePlugin.name];
|
|
109
|
+
// Check that the plugin isn't explicitly enabled when All: false
|
|
110
|
+
if (userIntegrations.All === false &&
|
|
111
|
+
!creationNameEnabled &&
|
|
112
|
+
!currentNameEnabled) {
|
|
113
|
+
return true;
|
|
114
|
+
}
|
|
115
|
+
// Check that the plugin isn't explicitly disabled
|
|
116
|
+
if (creationNameEnabled === false || currentNameEnabled === false) {
|
|
117
|
+
return true;
|
|
118
|
+
}
|
|
119
|
+
return false;
|
|
120
|
+
}
|
|
121
|
+
export function remoteLoader(settings, userIntegrations, mergedIntegrations, obfuscate, routingMiddleware) {
|
|
122
|
+
var _a, _b, _c;
|
|
123
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
124
|
+
var allPlugins, cdn, routingRules, pluginPromises;
|
|
125
|
+
var _this = this;
|
|
126
|
+
return __generator(this, function (_d) {
|
|
127
|
+
switch (_d.label) {
|
|
128
|
+
case 0:
|
|
129
|
+
allPlugins = [];
|
|
130
|
+
cdn = getCDN();
|
|
131
|
+
routingRules = (_b = (_a = settings.middlewareSettings) === null || _a === void 0 ? void 0 : _a.routingRules) !== null && _b !== void 0 ? _b : [];
|
|
132
|
+
pluginPromises = ((_c = settings.remotePlugins) !== null && _c !== void 0 ? _c : []).map(function (remotePlugin) { return __awaiter(_this, void 0, void 0, function () {
|
|
133
|
+
var defaultCdn, urlSplit, name_1, obfuscatedURL, error_1, libraryName, pluginFactory, plugin, plugins, routing_1, error_2;
|
|
134
|
+
return __generator(this, function (_a) {
|
|
135
|
+
switch (_a.label) {
|
|
136
|
+
case 0:
|
|
137
|
+
if (isPluginDisabled(userIntegrations, remotePlugin))
|
|
138
|
+
return [2 /*return*/];
|
|
139
|
+
_a.label = 1;
|
|
140
|
+
case 1:
|
|
141
|
+
_a.trys.push([1, 12, , 13]);
|
|
142
|
+
defaultCdn = new RegExp('https://cdp.customer.io');
|
|
143
|
+
if (!obfuscate) return [3 /*break*/, 7];
|
|
144
|
+
urlSplit = remotePlugin.url.split('/');
|
|
145
|
+
name_1 = urlSplit[urlSplit.length - 2];
|
|
146
|
+
obfuscatedURL = remotePlugin.url.replace(name_1, btoa(name_1).replace(/=/g, ''));
|
|
147
|
+
_a.label = 2;
|
|
148
|
+
case 2:
|
|
149
|
+
_a.trys.push([2, 4, , 6]);
|
|
150
|
+
return [4 /*yield*/, loadScript(obfuscatedURL.replace(defaultCdn, cdn))];
|
|
151
|
+
case 3:
|
|
152
|
+
_a.sent();
|
|
153
|
+
return [3 /*break*/, 6];
|
|
154
|
+
case 4:
|
|
155
|
+
error_1 = _a.sent();
|
|
156
|
+
// Due to syncing concerns it is possible that the obfuscated action destination (or requested version) might not exist.
|
|
157
|
+
// We should use the unobfuscated version as a fallback.
|
|
158
|
+
return [4 /*yield*/, loadScript(remotePlugin.url.replace(defaultCdn, cdn))];
|
|
159
|
+
case 5:
|
|
160
|
+
// Due to syncing concerns it is possible that the obfuscated action destination (or requested version) might not exist.
|
|
161
|
+
// We should use the unobfuscated version as a fallback.
|
|
162
|
+
_a.sent();
|
|
163
|
+
return [3 /*break*/, 6];
|
|
164
|
+
case 6: return [3 /*break*/, 9];
|
|
165
|
+
case 7: return [4 /*yield*/, loadScript(remotePlugin.url.replace(defaultCdn, cdn))];
|
|
166
|
+
case 8:
|
|
167
|
+
_a.sent();
|
|
168
|
+
_a.label = 9;
|
|
169
|
+
case 9:
|
|
170
|
+
libraryName = remotePlugin.libraryName;
|
|
171
|
+
if (!(typeof window[libraryName] === 'function')) return [3 /*break*/, 11];
|
|
172
|
+
pluginFactory = window[libraryName];
|
|
173
|
+
return [4 /*yield*/, pluginFactory(__assign(__assign({}, remotePlugin.settings), mergedIntegrations[remotePlugin.name]))];
|
|
174
|
+
case 10:
|
|
175
|
+
plugin = _a.sent();
|
|
176
|
+
plugins = Array.isArray(plugin) ? plugin : [plugin];
|
|
177
|
+
validate(plugins);
|
|
178
|
+
routing_1 = routingRules.filter(function (rule) { return rule.destinationName === remotePlugin.creationName; });
|
|
179
|
+
plugins.forEach(function (plugin) {
|
|
180
|
+
var wrapper = new ActionDestination(remotePlugin.creationName, plugin);
|
|
181
|
+
/** Make sure we only apply destination filters to actions of the "destination" type to avoid causing issues for hybrid destinations */
|
|
182
|
+
if (routing_1.length &&
|
|
183
|
+
routingMiddleware &&
|
|
184
|
+
plugin.type === 'destination') {
|
|
185
|
+
wrapper.addMiddleware(routingMiddleware);
|
|
186
|
+
}
|
|
187
|
+
allPlugins.push(wrapper);
|
|
188
|
+
});
|
|
189
|
+
_a.label = 11;
|
|
190
|
+
case 11: return [3 /*break*/, 13];
|
|
191
|
+
case 12:
|
|
192
|
+
error_2 = _a.sent();
|
|
193
|
+
console.warn('Failed to load Remote Plugin', error_2);
|
|
194
|
+
return [3 /*break*/, 13];
|
|
195
|
+
case 13: return [2 /*return*/];
|
|
196
|
+
}
|
|
197
|
+
});
|
|
198
|
+
}); });
|
|
199
|
+
return [4 /*yield*/, Promise.all(pluginPromises)];
|
|
200
|
+
case 1:
|
|
201
|
+
_d.sent();
|
|
202
|
+
return [2 /*return*/, allPlugins.filter(Boolean)];
|
|
203
|
+
}
|
|
204
|
+
});
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/remote-loader/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { __awaiter, __generator } from "tslib";
|
|
2
|
+
import { isServer } from '../../core/environment';
|
|
3
|
+
import { loadScript } from '../../lib/load-script';
|
|
4
|
+
import { getNextIntegrationsURL } from '../../lib/parse-cdn';
|
|
5
|
+
export function remoteMiddlewares(ctx, settings, obfuscate) {
|
|
6
|
+
var _a;
|
|
7
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
8
|
+
var path, remoteMiddleware, names, scripts, middleware;
|
|
9
|
+
var _this = this;
|
|
10
|
+
return __generator(this, function (_b) {
|
|
11
|
+
switch (_b.label) {
|
|
12
|
+
case 0:
|
|
13
|
+
if (isServer()) {
|
|
14
|
+
return [2 /*return*/, []];
|
|
15
|
+
}
|
|
16
|
+
path = getNextIntegrationsURL();
|
|
17
|
+
remoteMiddleware = (_a = settings.enabledMiddleware) !== null && _a !== void 0 ? _a : {};
|
|
18
|
+
names = Object.entries(remoteMiddleware)
|
|
19
|
+
.filter(function (_a) {
|
|
20
|
+
var _ = _a[0], enabled = _a[1];
|
|
21
|
+
return enabled;
|
|
22
|
+
})
|
|
23
|
+
.map(function (_a) {
|
|
24
|
+
var name = _a[0];
|
|
25
|
+
return name;
|
|
26
|
+
});
|
|
27
|
+
scripts = names.map(function (name) { return __awaiter(_this, void 0, void 0, function () {
|
|
28
|
+
var nonNamespaced, bundleName, fullPath, error_1;
|
|
29
|
+
return __generator(this, function (_a) {
|
|
30
|
+
switch (_a.label) {
|
|
31
|
+
case 0:
|
|
32
|
+
nonNamespaced = name.replace('@segment/', '');
|
|
33
|
+
bundleName = nonNamespaced;
|
|
34
|
+
if (obfuscate) {
|
|
35
|
+
bundleName = btoa(nonNamespaced).replace(/=/g, '');
|
|
36
|
+
}
|
|
37
|
+
fullPath = "".concat(path, "/middleware/").concat(bundleName, "/latest/").concat(bundleName, ".js.gz");
|
|
38
|
+
_a.label = 1;
|
|
39
|
+
case 1:
|
|
40
|
+
_a.trys.push([1, 3, , 4]);
|
|
41
|
+
return [4 /*yield*/, loadScript(fullPath)
|
|
42
|
+
// @ts-ignore
|
|
43
|
+
];
|
|
44
|
+
case 2:
|
|
45
|
+
_a.sent();
|
|
46
|
+
// @ts-ignore
|
|
47
|
+
return [2 /*return*/, window["".concat(nonNamespaced, "Middleware")]];
|
|
48
|
+
case 3:
|
|
49
|
+
error_1 = _a.sent();
|
|
50
|
+
ctx.log('error', error_1);
|
|
51
|
+
ctx.stats.increment('failed_remote_middleware');
|
|
52
|
+
return [3 /*break*/, 4];
|
|
53
|
+
case 4: return [2 /*return*/];
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
}); });
|
|
57
|
+
return [4 /*yield*/, Promise.all(scripts)];
|
|
58
|
+
case 1:
|
|
59
|
+
middleware = _b.sent();
|
|
60
|
+
middleware = middleware.filter(Boolean);
|
|
61
|
+
return [2 /*return*/, middleware];
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/remote-middleware/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAG5D,MAAM,UAAgB,iBAAiB,CACrC,GAAY,EACZ,QAAwB,EACxB,SAAmB;;;;;;;;oBAEnB,IAAI,QAAQ,EAAE,EAAE;wBACd,sBAAO,EAAE,EAAA;qBACV;oBACK,IAAI,GAAG,sBAAsB,EAAE,CAAA;oBAC/B,gBAAgB,GAAG,MAAA,QAAQ,CAAC,iBAAiB,mCAAI,EAAE,CAAA;oBACnD,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;yBAC3C,MAAM,CAAC,UAAC,EAAY;4BAAX,CAAC,QAAA,EAAE,OAAO,QAAA;wBAAM,OAAA,OAAO;oBAAP,CAAO,CAAC;yBACjC,GAAG,CAAC,UAAC,EAAM;4BAAL,IAAI,QAAA;wBAAM,OAAA,IAAI;oBAAJ,CAAI,CAAC,CAAA;oBAElB,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,UAAO,IAAI;;;;;oCAC7B,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;oCAC/C,UAAU,GAAG,aAAa,CAAA;oCAC9B,IAAI,SAAS,EAAE;wCACb,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;qCACnD;oCACK,QAAQ,GAAG,UAAG,IAAI,yBAAe,UAAU,qBAAW,UAAU,WAAQ,CAAA;;;;oCAG5E,qBAAM,UAAU,CAAC,QAAQ,CAAC;wCAC1B,aAAa;sCADa;;oCAA1B,SAA0B,CAAA;oCAC1B,aAAa;oCACb,sBAAO,MAAM,CAAC,UAAG,aAAa,eAAY,CAAuB,EAAA;;;oCAEjE,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,OAAK,CAAC,CAAA;oCACvB,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAA;;;;;yBAElD,CAAC,CAAA;oBAEe,qBAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAA;;oBAAvC,UAAU,GAAG,SAA0B;oBAC3C,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;oBAEvC,sBAAO,UAAkC,EAAA;;;;CAC1C"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// @ts-ignore
|
|
2
|
+
import * as tsub from '../../vendor/tsub/tsub';
|
|
3
|
+
export var tsubMiddleware = function (rules) {
|
|
4
|
+
return function (_a) {
|
|
5
|
+
var payload = _a.payload, integration = _a.integration, next = _a.next;
|
|
6
|
+
var store = new tsub.Store(rules);
|
|
7
|
+
var rulesToApply = store.getRulesByDestinationName(integration);
|
|
8
|
+
rulesToApply.forEach(function (rule) {
|
|
9
|
+
var matchers = rule.matchers, transformers = rule.transformers;
|
|
10
|
+
for (var i = 0; i < matchers.length; i++) {
|
|
11
|
+
if (tsub.matches(payload.obj, matchers[i])) {
|
|
12
|
+
payload.obj = tsub.transform(payload.obj, transformers[i]);
|
|
13
|
+
if (payload.obj === null) {
|
|
14
|
+
return next(null);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
next(payload);
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/routing-middleware/index.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,OAAO,KAAK,IAAI,MAAM,wBAAwB,CAAA;AAe9C,MAAM,CAAC,IAAM,cAAc,GACzB,UAAC,KAAoB;IACrB,OAAA,UAAC,EAA8B;YAA5B,OAAO,aAAA,EAAE,WAAW,iBAAA,EAAE,IAAI,UAAA;QAC3B,IAAM,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAU,CAAA;QAC5C,IAAM,YAAY,GAAG,KAAK,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAA;QAEjE,YAAY,CAAC,OAAO,CAAC,UAAC,IAAU;YACtB,IAAA,QAAQ,GAAmB,IAAI,SAAvB,EAAE,YAAY,GAAK,IAAI,aAAT,CAAS;YAEvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACxC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;oBAC1C,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAA;oBAE1D,IAAI,OAAO,CAAC,GAAG,KAAK,IAAI,EAAE;wBACxB,OAAO,IAAI,CAAC,IAAI,CAAC,CAAA;qBAClB;iBACF;aACF;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,OAAO,CAAC,CAAA;IACf,CAAC;AAnBD,CAmBC,CAAA"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { __assign } from "tslib";
|
|
2
|
+
import { isPlanEventEnabled } from '../../lib/is-plan-event-enabled';
|
|
3
|
+
function disabledActionDestinations(plan, settings) {
|
|
4
|
+
var _a, _b;
|
|
5
|
+
if (!plan || !Object.keys(plan)) {
|
|
6
|
+
return {};
|
|
7
|
+
}
|
|
8
|
+
var disabledIntegrations = plan.integrations
|
|
9
|
+
? Object.keys(plan.integrations).filter(function (i) { return plan.integrations[i] === false; })
|
|
10
|
+
: [];
|
|
11
|
+
// This accounts for cases like Fullstory, where the settings.integrations
|
|
12
|
+
// contains a "Fullstory" object but settings.remotePlugins contains "Fullstory (Actions)"
|
|
13
|
+
var disabledRemotePlugins = [];
|
|
14
|
+
((_a = settings.remotePlugins) !== null && _a !== void 0 ? _a : []).forEach(function (p) {
|
|
15
|
+
disabledIntegrations.forEach(function (int) {
|
|
16
|
+
if (p.name.includes(int) || int.includes(p.name)) {
|
|
17
|
+
disabledRemotePlugins.push(p.name);
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
});
|
|
21
|
+
return ((_b = settings.remotePlugins) !== null && _b !== void 0 ? _b : []).reduce(function (acc, p) {
|
|
22
|
+
if (p.settings['subscriptions']) {
|
|
23
|
+
if (disabledRemotePlugins.includes(p.name)) {
|
|
24
|
+
// @ts-expect-error element implicitly has an 'any' type because p.settings is a JSONObject
|
|
25
|
+
p.settings['subscriptions'].forEach(
|
|
26
|
+
// @ts-expect-error parameter 'sub' implicitly has an 'any' type
|
|
27
|
+
function (sub) { return (acc["".concat(p.name, " ").concat(sub.partnerAction)] = false); });
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return acc;
|
|
31
|
+
}, {});
|
|
32
|
+
}
|
|
33
|
+
export function schemaFilter(track, settings) {
|
|
34
|
+
function filter(ctx) {
|
|
35
|
+
var plan = track;
|
|
36
|
+
var ev = ctx.event.event;
|
|
37
|
+
if (plan && ev) {
|
|
38
|
+
var planEvent = plan[ev];
|
|
39
|
+
if (!isPlanEventEnabled(plan, planEvent)) {
|
|
40
|
+
ctx.updateEvent('integrations', __assign(__assign({}, ctx.event.integrations), { All: false, 'Customer.io Data Pipelines': true }));
|
|
41
|
+
return ctx;
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
var disabledActions = disabledActionDestinations(planEvent, settings);
|
|
45
|
+
ctx.updateEvent('integrations', __assign(__assign(__assign({}, ctx.event.integrations), planEvent === null || planEvent === void 0 ? void 0 : planEvent.integrations), disabledActions));
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return ctx;
|
|
49
|
+
}
|
|
50
|
+
return {
|
|
51
|
+
name: 'Schema Filter',
|
|
52
|
+
version: '0.1.0',
|
|
53
|
+
isLoaded: function () { return true; },
|
|
54
|
+
load: function () { return Promise.resolve(); },
|
|
55
|
+
type: 'before',
|
|
56
|
+
page: filter,
|
|
57
|
+
alias: filter,
|
|
58
|
+
track: filter,
|
|
59
|
+
identify: filter,
|
|
60
|
+
group: filter,
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/schema-filter/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { __extends } from "tslib";
|
|
2
|
+
export function isString(obj) {
|
|
3
|
+
return typeof obj === 'string';
|
|
4
|
+
}
|
|
5
|
+
export function isNumber(obj) {
|
|
6
|
+
return typeof obj === 'number';
|
|
7
|
+
}
|
|
8
|
+
export function isFunction(obj) {
|
|
9
|
+
return typeof obj === 'function';
|
|
10
|
+
}
|
|
11
|
+
export function isPlainObject(obj) {
|
|
12
|
+
return (Object.prototype.toString.call(obj).slice(8, -1).toLowerCase() === 'object');
|
|
13
|
+
}
|
|
14
|
+
function hasUser(event) {
|
|
15
|
+
var _a, _b, _c;
|
|
16
|
+
var id = (_c = (_b = (_a = event.userId) !== null && _a !== void 0 ? _a : event.anonymousId) !== null && _b !== void 0 ? _b : event.groupId) !== null && _c !== void 0 ? _c : event.previousId;
|
|
17
|
+
return isString(id);
|
|
18
|
+
}
|
|
19
|
+
var ValidationError = /** @class */ (function (_super) {
|
|
20
|
+
__extends(ValidationError, _super);
|
|
21
|
+
function ValidationError(field, message) {
|
|
22
|
+
var _this = _super.call(this, message) || this;
|
|
23
|
+
_this.field = field;
|
|
24
|
+
return _this;
|
|
25
|
+
}
|
|
26
|
+
return ValidationError;
|
|
27
|
+
}(Error));
|
|
28
|
+
function validate(ctx) {
|
|
29
|
+
var _a;
|
|
30
|
+
var eventType = ctx && ctx.event && ctx.event.type;
|
|
31
|
+
var event = ctx.event;
|
|
32
|
+
if (event === undefined) {
|
|
33
|
+
throw new ValidationError('event', 'Event is missing');
|
|
34
|
+
}
|
|
35
|
+
if (!isString(eventType)) {
|
|
36
|
+
throw new ValidationError('event', 'Event is not a string');
|
|
37
|
+
}
|
|
38
|
+
if (eventType === 'track' && !isString(event.event)) {
|
|
39
|
+
throw new ValidationError('event', 'Event is not a string');
|
|
40
|
+
}
|
|
41
|
+
var props = (_a = event.properties) !== null && _a !== void 0 ? _a : event.traits;
|
|
42
|
+
if (eventType !== 'alias' && !isPlainObject(props)) {
|
|
43
|
+
throw new ValidationError('properties', 'properties is not an object');
|
|
44
|
+
}
|
|
45
|
+
if (!hasUser(event)) {
|
|
46
|
+
throw new ValidationError('userId', 'Missing userId or anonymousId');
|
|
47
|
+
}
|
|
48
|
+
return ctx;
|
|
49
|
+
}
|
|
50
|
+
export var validation = {
|
|
51
|
+
name: 'Event Validation',
|
|
52
|
+
type: 'before',
|
|
53
|
+
version: '1.0.0',
|
|
54
|
+
isLoaded: function () { return true; },
|
|
55
|
+
load: function () { return Promise.resolve(); },
|
|
56
|
+
track: validate,
|
|
57
|
+
identify: validate,
|
|
58
|
+
page: validate,
|
|
59
|
+
alias: validate,
|
|
60
|
+
group: validate,
|
|
61
|
+
screen: validate,
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/validation/index.ts"],"names":[],"mappings":";AAIA,MAAM,UAAU,QAAQ,CAAC,GAAY;IACnC,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAA;AAChC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,GAAY;IACnC,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAA;AAChC,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAY;IACrC,OAAO,OAAO,GAAG,KAAK,UAAU,CAAA;AAClC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAY;IACxC,OAAO,CACL,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,QAAQ,CAC5E,CAAA;AACH,CAAC;AAED,SAAS,OAAO,CAAC,KAAsB;;IACrC,IAAM,EAAE,GACN,MAAA,MAAA,MAAA,KAAK,CAAC,MAAM,mCAAI,KAAK,CAAC,WAAW,mCAAI,KAAK,CAAC,OAAO,mCAAI,KAAK,CAAC,UAAU,CAAA;IACxE,OAAO,QAAQ,CAAC,EAAE,CAAC,CAAA;AACrB,CAAC;AAED;IAA8B,mCAAK;IAGjC,yBAAY,KAAa,EAAE,OAAe;QAA1C,YACE,kBAAM,OAAO,CAAC,SAEf;QADC,KAAI,CAAC,KAAK,GAAG,KAAK,CAAA;;IACpB,CAAC;IACH,sBAAC;AAAD,CAAC,AAPD,CAA8B,KAAK,GAOlC;AAED,SAAS,QAAQ,CAAC,GAAY;;IAC5B,IAAM,SAAS,GAAY,GAAG,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAA;IAC7D,IAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;IAEvB,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,MAAM,IAAI,eAAe,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAA;KACvD;IAED,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;QACxB,MAAM,IAAI,eAAe,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAA;KAC5D;IAED,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;QACnD,MAAM,IAAI,eAAe,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAA;KAC5D;IAED,IAAM,KAAK,GAAG,MAAA,KAAK,CAAC,UAAU,mCAAI,KAAK,CAAC,MAAM,CAAA;IAC9C,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;QAClD,MAAM,IAAI,eAAe,CAAC,YAAY,EAAE,6BAA6B,CAAC,CAAA;KACvE;IAED,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACnB,MAAM,IAAI,eAAe,CAAC,QAAQ,EAAE,+BAA+B,CAAC,CAAA;KACrE;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,CAAC,IAAM,UAAU,GAAW;IAChC,IAAI,EAAE,kBAAkB;IACxB,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,OAAO;IAEhB,QAAQ,EAAE,cAAM,OAAA,IAAI,EAAJ,CAAI;IACpB,IAAI,EAAE,cAAM,OAAA,OAAO,CAAC,OAAO,EAAE,EAAjB,CAAiB;IAE7B,KAAK,EAAE,QAAQ;IACf,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;CACjB,CAAA"}
|