@amplitude/plugin-page-view-tracking-browser
Advanced tools
Comparing version 1.0.0 to 2.0.0-beta.1
@@ -9,21 +9,7 @@ var _this = this; | ||
var utils_1 = require("./utils"); | ||
var pageViewTrackingPlugin = function () { | ||
var args = []; | ||
for (var _i = 0; _i < arguments.length; _i++) { | ||
args[_i] = arguments[_i]; | ||
} | ||
var pageViewTrackingPlugin = function (options) { | ||
if (options === void 0) { options = {}; } | ||
var amplitude; | ||
var options = {}; | ||
var globalScope = (0, analytics_client_common_1.getGlobalScope)(); | ||
var loggerProvider = undefined; | ||
var _a = tslib_1.__read(args, 2), clientOrOptions = _a[0], configOrUndefined = _a[1]; | ||
if (clientOrOptions && 'init' in clientOrOptions) { | ||
amplitude = clientOrOptions; | ||
if (configOrUndefined) { | ||
options = configOrUndefined; | ||
} | ||
} | ||
else if (clientOrOptions) { | ||
options = clientOrOptions; | ||
} | ||
var createPageViewEvent = function () { return tslib_1.__awaiter(_this, void 0, void 0, function () { | ||
@@ -37,7 +23,11 @@ var _a; | ||
_b = { | ||
event_type: (_c = options.eventType) !== null && _c !== void 0 ? _c : 'Page View' | ||
event_type: (_c = options.eventType) !== null && _c !== void 0 ? _c : '[Amplitude] Page Viewed' | ||
}; | ||
_a = [{}]; | ||
return [4 /*yield*/, getCampaignParams()]; | ||
case 1: return [2 /*return*/, (_b.event_properties = tslib_1.__assign.apply(void 0, [tslib_1.__assign.apply(void 0, _a.concat([(_d.sent())])), { page_domain: /* istanbul ignore next */ (typeof location !== 'undefined' && location.hostname) || '', page_location: /* istanbul ignore next */ (typeof location !== 'undefined' && location.href) || '', page_path: /* istanbul ignore next */ (typeof location !== 'undefined' && location.pathname) || '', page_title: /* istanbul ignore next */ (typeof document !== 'undefined' && document.title) || '', page_url: /* istanbul ignore next */ (typeof location !== 'undefined' && location.href.split('?')[0]) || '' }]), | ||
case 1: return [2 /*return*/, (_b.event_properties = tslib_1.__assign.apply(void 0, [tslib_1.__assign.apply(void 0, _a.concat([(_d.sent())])), { '[Amplitude] Page Domain': | ||
/* istanbul ignore next */ (typeof location !== 'undefined' && location.hostname) || '', '[Amplitude] Page Location': | ||
/* istanbul ignore next */ (typeof location !== 'undefined' && location.href) || '', '[Amplitude] Page Path': | ||
/* istanbul ignore next */ (typeof location !== 'undefined' && location.pathname) || '', '[Amplitude] Page Title': /* istanbul ignore next */ (typeof document !== 'undefined' && document.title) || '', '[Amplitude] Page URL': | ||
/* istanbul ignore next */ (typeof location !== 'undefined' && location.href.split('?')[0]) || '' }]), | ||
_b)]; | ||
@@ -80,24 +70,13 @@ } | ||
var plugin = { | ||
name: 'page-view-tracking', | ||
name: '@amplitude/plugin-page-view-tracking-browser', | ||
type: analytics_types_1.PluginType.ENRICHMENT, | ||
setup: function (config, client) { return tslib_1.__awaiter(_this, void 0, void 0, function () { | ||
var receivedType, _a, _b; | ||
var _c, _d; | ||
return tslib_1.__generator(this, function (_e) { | ||
switch (_e.label) { | ||
var _a, _b; | ||
return tslib_1.__generator(this, function (_c) { | ||
switch (_c.label) { | ||
case 0: | ||
amplitude = amplitude !== null && amplitude !== void 0 ? amplitude : client; | ||
if (!amplitude) { | ||
receivedType = clientOrOptions ? 'Options' : 'undefined'; | ||
config.loggerProvider.error("Argument of type '".concat(receivedType, "' is not assignable to parameter of type 'BrowserClient'.")); | ||
return [2 /*return*/]; | ||
} | ||
amplitude = client; | ||
loggerProvider = config.loggerProvider; | ||
loggerProvider.log('Installing @amplitude/plugin-page-view-tracking-browser'); | ||
options.trackOn = ((_c = config.attribution) === null || _c === void 0 ? void 0 : _c.trackPageViews) ? 'attribution' : options.trackOn; | ||
if (!client && ((_d = config.attribution) === null || _d === void 0 ? void 0 : _d.trackPageViews)) { | ||
loggerProvider.warn("@amplitude/plugin-page-view-tracking-browser overrides page view tracking behavior defined in @amplitude/analytics-browser. Resolve by disabling page view tracking in @amplitude/analytics-browser."); | ||
config.attribution.trackPageViews = false; | ||
} | ||
if (options.trackHistoryChanges && globalScope) { | ||
if (globalScope) { | ||
/* istanbul ignore next */ | ||
@@ -125,4 +104,4 @@ globalScope.addEventListener('popstate', function () { | ||
case 1: | ||
_b.apply(_a, [_e.sent()]); | ||
_e.label = 2; | ||
_b.apply(_a, [_c.sent()]); | ||
_c.label = 2; | ||
case 2: return [2 /*return*/]; | ||
@@ -151,5 +130,2 @@ } | ||
}; | ||
// Required for unit tests | ||
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access | ||
plugin.__trackHistoryPageView = trackHistoryPageView; | ||
return plugin; | ||
@@ -156,0 +132,0 @@ }; |
@@ -1,8 +0,6 @@ | ||
import { EnrichmentPlugin, BrowserClient, PageTrackingOptions as Options } from '@amplitude/analytics-types'; | ||
import { EnrichmentPlugin, PageTrackingOptions as Options } from '@amplitude/analytics-types'; | ||
export { PageTrackingOptions as Options, PageTrackingTrackOn, PageTrackingHistoryChanges, } from '@amplitude/analytics-types'; | ||
export interface CreatePageViewTrackingPlugin { | ||
(client: BrowserClient, options?: Options): EnrichmentPlugin; | ||
(options?: Options): EnrichmentPlugin; | ||
} | ||
export type CreatePageViewTrackingPluginParameters = [BrowserClient, Options?] | [Options?]; | ||
//# sourceMappingURL=page-view-tracking.d.ts.map |
@@ -6,21 +6,7 @@ import { __assign, __awaiter, __generator, __read, __spreadArray } from "tslib"; | ||
import { omitUndefined } from './utils'; | ||
export var pageViewTrackingPlugin = function () { | ||
var args = []; | ||
for (var _i = 0; _i < arguments.length; _i++) { | ||
args[_i] = arguments[_i]; | ||
} | ||
export var pageViewTrackingPlugin = function (options) { | ||
if (options === void 0) { options = {}; } | ||
var amplitude; | ||
var options = {}; | ||
var globalScope = getGlobalScope(); | ||
var loggerProvider = undefined; | ||
var _a = __read(args, 2), clientOrOptions = _a[0], configOrUndefined = _a[1]; | ||
if (clientOrOptions && 'init' in clientOrOptions) { | ||
amplitude = clientOrOptions; | ||
if (configOrUndefined) { | ||
options = configOrUndefined; | ||
} | ||
} | ||
else if (clientOrOptions) { | ||
options = clientOrOptions; | ||
} | ||
var createPageViewEvent = function () { return __awaiter(void 0, void 0, void 0, function () { | ||
@@ -34,7 +20,11 @@ var _a; | ||
_b = { | ||
event_type: (_c = options.eventType) !== null && _c !== void 0 ? _c : 'Page View' | ||
event_type: (_c = options.eventType) !== null && _c !== void 0 ? _c : '[Amplitude] Page Viewed' | ||
}; | ||
_a = [{}]; | ||
return [4 /*yield*/, getCampaignParams()]; | ||
case 1: return [2 /*return*/, (_b.event_properties = __assign.apply(void 0, [__assign.apply(void 0, _a.concat([(_d.sent())])), { page_domain: /* istanbul ignore next */ (typeof location !== 'undefined' && location.hostname) || '', page_location: /* istanbul ignore next */ (typeof location !== 'undefined' && location.href) || '', page_path: /* istanbul ignore next */ (typeof location !== 'undefined' && location.pathname) || '', page_title: /* istanbul ignore next */ (typeof document !== 'undefined' && document.title) || '', page_url: /* istanbul ignore next */ (typeof location !== 'undefined' && location.href.split('?')[0]) || '' }]), | ||
case 1: return [2 /*return*/, (_b.event_properties = __assign.apply(void 0, [__assign.apply(void 0, _a.concat([(_d.sent())])), { '[Amplitude] Page Domain': | ||
/* istanbul ignore next */ (typeof location !== 'undefined' && location.hostname) || '', '[Amplitude] Page Location': | ||
/* istanbul ignore next */ (typeof location !== 'undefined' && location.href) || '', '[Amplitude] Page Path': | ||
/* istanbul ignore next */ (typeof location !== 'undefined' && location.pathname) || '', '[Amplitude] Page Title': /* istanbul ignore next */ (typeof document !== 'undefined' && document.title) || '', '[Amplitude] Page URL': | ||
/* istanbul ignore next */ (typeof location !== 'undefined' && location.href.split('?')[0]) || '' }]), | ||
_b)]; | ||
@@ -77,24 +67,13 @@ } | ||
var plugin = { | ||
name: 'page-view-tracking', | ||
name: '@amplitude/plugin-page-view-tracking-browser', | ||
type: PluginType.ENRICHMENT, | ||
setup: function (config, client) { return __awaiter(void 0, void 0, void 0, function () { | ||
var receivedType, _a, _b; | ||
var _c, _d; | ||
return __generator(this, function (_e) { | ||
switch (_e.label) { | ||
var _a, _b; | ||
return __generator(this, function (_c) { | ||
switch (_c.label) { | ||
case 0: | ||
amplitude = amplitude !== null && amplitude !== void 0 ? amplitude : client; | ||
if (!amplitude) { | ||
receivedType = clientOrOptions ? 'Options' : 'undefined'; | ||
config.loggerProvider.error("Argument of type '".concat(receivedType, "' is not assignable to parameter of type 'BrowserClient'.")); | ||
return [2 /*return*/]; | ||
} | ||
amplitude = client; | ||
loggerProvider = config.loggerProvider; | ||
loggerProvider.log('Installing @amplitude/plugin-page-view-tracking-browser'); | ||
options.trackOn = ((_c = config.attribution) === null || _c === void 0 ? void 0 : _c.trackPageViews) ? 'attribution' : options.trackOn; | ||
if (!client && ((_d = config.attribution) === null || _d === void 0 ? void 0 : _d.trackPageViews)) { | ||
loggerProvider.warn("@amplitude/plugin-page-view-tracking-browser overrides page view tracking behavior defined in @amplitude/analytics-browser. Resolve by disabling page view tracking in @amplitude/analytics-browser."); | ||
config.attribution.trackPageViews = false; | ||
} | ||
if (options.trackHistoryChanges && globalScope) { | ||
if (globalScope) { | ||
/* istanbul ignore next */ | ||
@@ -122,4 +101,4 @@ globalScope.addEventListener('popstate', function () { | ||
case 1: | ||
_b.apply(_a, [_e.sent()]); | ||
_e.label = 2; | ||
_b.apply(_a, [_c.sent()]); | ||
_c.label = 2; | ||
case 2: return [2 /*return*/]; | ||
@@ -148,5 +127,2 @@ } | ||
}; | ||
// Required for unit tests | ||
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access | ||
plugin.__trackHistoryPageView = trackHistoryPageView; | ||
return plugin; | ||
@@ -153,0 +129,0 @@ }; |
@@ -1,8 +0,6 @@ | ||
import { EnrichmentPlugin, BrowserClient, PageTrackingOptions as Options } from '@amplitude/analytics-types'; | ||
import { EnrichmentPlugin, PageTrackingOptions as Options } from '@amplitude/analytics-types'; | ||
export { PageTrackingOptions as Options, PageTrackingTrackOn, PageTrackingHistoryChanges, } from '@amplitude/analytics-types'; | ||
export interface CreatePageViewTrackingPlugin { | ||
(client: BrowserClient, options?: Options): EnrichmentPlugin; | ||
(options?: Options): EnrichmentPlugin; | ||
} | ||
export type CreatePageViewTrackingPluginParameters = [BrowserClient, Options?] | [Options?]; | ||
//# sourceMappingURL=page-view-tracking.d.ts.map |
@@ -1,1 +0,1 @@ | ||
var pageViewTracking=function(e){"use strict";var t=function(){return t=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},t.apply(this,arguments)};function n(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function u(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,u)}c((r=r.apply(e,t||[])).next())}))}function r(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function u(u){return function(c){return function(u){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,u[0]&&(a=0)),a;)try{if(n=1,r&&(i=2&u[0]?r.return:u[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,u[1])).done)return i;switch(r=0,i&&(u=[2&u[0],i.value]),u[0]){case 0:case 1:i=u;break;case 4:return a.label++,{value:u[1],done:!1};case 5:a.label++,r=u[1],u=[0];continue;case 7:u=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==u[0]&&2!==u[0])){a=0;continue}if(3===u[0]&&(!i||u[1]>i[0]&&u[1]<i[3])){a.label=u[1];break}if(6===u[0]&&a.label<i[1]){a.label=i[1],i=u;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(u);break}i[2]&&a.ops.pop(),a.trys.pop();continue}u=t.call(e,a)}catch(e){u=[6,e],r=0}finally{n=i=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}([u,c])}}}function i(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,o=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a}function o(e,t,n){if(n||2===arguments.length)for(var r,i=0,o=t.length;i<o;i++)!r&&i in t||(r||(r=Array.prototype.slice.call(t,0,i)),r[i]=t[i]);return e.concat(r||Array.prototype.slice.call(t))}var a,u,c,l,d=function(){return"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof self?self:"undefined"!=typeof global?global:void 0},p=function(){var e,t=d();return(null===(e=null==t?void 0:t.location)||void 0===e?void 0:e.search)?t.location.search.substring(1).split("&").filter(Boolean).reduce((function(e,t){var n=t.split("=",2),r=s(n[0]),i=s(n[1]);return i?(e[r]=i,e):e}),{}):{}},s=function(e){void 0===e&&(e="");try{return decodeURIComponent(e)}catch(e){return""}},f="dclid",v="fbclid",y="gbraid",g="gclid",m="ko_click_id",h="li_fat_id",_="msclkid",b="rtd_cid",w="ttclid",E="twclid",k="wbraid",T={utm_campaign:void 0,utm_content:void 0,utm_id:void 0,utm_medium:void 0,utm_source:void 0,utm_term:void 0,referrer:void 0,referring_domain:void 0,dclid:void 0,gbraid:void 0,gclid:void 0,fbclid:void 0,ko_click_id:void 0,li_fat_id:void 0,msclkid:void 0,rtd_cid:void 0,ttclid:void 0,twclid:void 0,wbraid:void 0},O=function(){function e(){}return e.prototype.parse=function(){return n(this,void 0,void 0,(function(){return r(this,(function(e){return[2,t(t(t(t({},T),this.getUtmParam()),this.getReferrer()),this.getClickIds())]}))}))},e.prototype.getUtmParam=function(){var e=p();return{utm_campaign:e.utm_campaign,utm_content:e.utm_content,utm_id:e.utm_id,utm_medium:e.utm_medium,utm_source:e.utm_source,utm_term:e.utm_term}},e.prototype.getReferrer=function(){var e,t,n={referrer:void 0,referring_domain:void 0};try{n.referrer=document.referrer||void 0,n.referring_domain=null!==(t=null===(e=n.referrer)||void 0===e?void 0:e.split("/")[2])&&void 0!==t?t:void 0}catch(e){}return n},e.prototype.getClickIds=function(){var e,t=p();return(e={})[f]=t[f],e[v]=t[v],e[y]=t[y],e[g]=t[g],e[m]=t[m],e[h]=t[h],e[_]=t[_],e[b]=t[b],e[w]=t[w],e[E]=t[E],e[k]=t[k],e},e}();!function(e){e.SET="$set",e.SET_ONCE="$setOnce",e.ADD="$add",e.APPEND="$append",e.PREPEND="$prepend",e.REMOVE="$remove",e.PREINSERT="$preInsert",e.POSTINSERT="$postInsert",e.UNSET="$unset",e.CLEAR_ALL="$clearAll"}(a||(a={})),function(e){e.REVENUE_PRODUCT_ID="$productId",e.REVENUE_QUANTITY="$quantity",e.REVENUE_PRICE="$price",e.REVENUE_TYPE="$revenueType",e.REVENUE="$revenue"}(u||(u={})),function(e){e.IDENTIFY="$identify",e.GROUP_IDENTIFY="$groupidentify",e.REVENUE="revenue_amount"}(c||(c={})),function(e){e.BEFORE="before",e.ENRICHMENT="enrichment",e.DESTINATION="destination"}(l||(l={}));var P=function(e){var t={};for(var n in e){var r=e[n];r&&(t[n]=r)}return t},N=function(){for(var e,o=[],a=0;a<arguments.length;a++)o[a]=arguments[a];var u={},c=d(),p=void 0,s=i(o,2),f=s[0],v=s[1];f&&"init"in f?(e=f,v&&(u=v)):f&&(u=f);var y=function(){return n(void 0,void 0,void 0,(function(){var e,n,i;return r(this,(function(r){switch(r.label){case 0:return n={event_type:null!==(i=u.eventType)&&void 0!==i?i:"Page View"},e=[{}],[4,R()];case 1:return[2,(n.event_properties=t.apply(void 0,[t.apply(void 0,e.concat([r.sent()])),{page_domain:"undefined"!=typeof location&&location.hostname||"",page_location:"undefined"!=typeof location&&location.href||"",page_path:"undefined"!=typeof location&&location.pathname||"",page_title:"undefined"!=typeof document&&document.title||"",page_url:"undefined"!=typeof location&&location.href.split("?")[0]||""}]),n)]}}))}))},g=function(){return void 0===u.trackOn||"function"==typeof u.trackOn&&u.trackOn()},m="undefined"!=typeof location?location.href:null,h=function(){return n(void 0,void 0,void 0,(function(){var t,n,i;return r(this,(function(r){switch(r.label){case 0:return t=location.href,$(u.trackHistoryChanges,t,m||"")&&g()?(null==p||p.log("Tracking page view event"),null!=e?[3,1]:[3,3]):[3,4];case 1:return i=(n=e).track,[4,y()];case 2:i.apply(n,[r.sent()]),r.label=3;case 3:r.label=4;case 4:return m=t,[2]}}))}))},_={name:"page-view-tracking",type:l.ENRICHMENT,setup:function(t,o){return n(void 0,void 0,void 0,(function(){var n,a,l,d,s;return r(this,(function(r){switch(r.label){case 0:return(e=null!=e?e:o)?((p=t.loggerProvider).log("Installing @amplitude/plugin-page-view-tracking-browser"),u.trackOn=(null===(d=t.attribution)||void 0===d?void 0:d.trackPageViews)?"attribution":u.trackOn,!o&&(null===(s=t.attribution)||void 0===s?void 0:s.trackPageViews)&&(p.warn("@amplitude/plugin-page-view-tracking-browser overrides page view tracking behavior defined in @amplitude/analytics-browser. Resolve by disabling page view tracking in @amplitude/analytics-browser."),t.attribution.trackPageViews=!1),u.trackHistoryChanges&&c&&(c.addEventListener("popstate",(function(){h()})),c.history.pushState=new Proxy(c.history.pushState,{apply:function(e,t,n){var r=i(n,3),o=r[0],a=r[1],u=r[2];e.apply(t,[o,a,u]),h()}})),g()?(p.log("Tracking page view event"),l=(a=e).track,[4,y()]):[3,2]):(n=f?"Options":"undefined",t.loggerProvider.error("Argument of type '".concat(n,"' is not assignable to parameter of type 'BrowserClient'.")),[2]);case 1:l.apply(a,[r.sent()]),r.label=2;case 2:return[2]}}))}))},execute:function(e){return n(void 0,void 0,void 0,(function(){var n;return r(this,(function(r){switch(r.label){case 0:return"attribution"===u.trackOn&&I(e)?(null==p||p.log("Enriching campaign event to page view event with campaign parameters"),[4,y()]):[3,2];case 1:n=r.sent(),e.event_type=n.event_type,e.event_properties=t(t({},e.event_properties),n.event_properties),r.label=2;case 2:return[2,e]}}))}))}};return _.__trackHistoryPageView=h,_},R=function(){return n(void 0,void 0,void 0,(function(){var e;return r(this,(function(t){switch(t.label){case 0:return e=P,[4,(new O).parse()];case 1:return[2,e.apply(void 0,[t.sent()])]}}))}))},I=function(e){if("$identify"===e.event_type&&e.user_properties){var t=e.user_properties,n=t[a.SET]||{},r=t[a.UNSET]||{},u=o(o([],i(Object.keys(n)),!1),i(Object.keys(r)),!1);return Object.keys(T).every((function(e){return u.includes(e)}))}return!1},$=function(e,t,n){return"pathOnly"===e?t.split("?")[0]!==n.split("?")[0]:t!==n},S=Object.freeze({__proto__:null});return e.Types=S,e.pageViewTrackingPlugin=N,e.plugin=N,Object.defineProperty(e,"__esModule",{value:!0}),e}({}); | ||
var pageViewTracking=function(e){"use strict";var t=function(){return t=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},t.apply(this,arguments)};function n(e,t,n,r){return new(n||(n=Promise))((function(i,o){function u(e){try{c(r.next(e))}catch(e){o(e)}}function a(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(u,a)}c((r=r.apply(e,t||[])).next())}))}function r(e,t){var n,r,i,o,u={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(u=0)),u;)try{if(n=1,r&&(i=2&a[0]?r.return:a[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,a[1])).done)return i;switch(r=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return u.label++,{value:a[1],done:!1};case 5:u.label++,r=a[1],a=[0];continue;case 7:a=u.ops.pop(),u.trys.pop();continue;default:if(!(i=u.trys,(i=i.length>0&&i[i.length-1])||6!==a[0]&&2!==a[0])){u=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){u.label=a[1];break}if(6===a[0]&&u.label<i[1]){u.label=i[1],i=a;break}if(i&&u.label<i[2]){u.label=i[2],u.ops.push(a);break}i[2]&&u.ops.pop(),u.trys.pop();continue}a=t.call(e,u)}catch(e){a=[6,e],r=0}finally{n=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}}function i(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,o=n.call(e),u=[];try{for(;(void 0===t||t-- >0)&&!(r=o.next()).done;)u.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return u}function o(e,t,n){if(n||2===arguments.length)for(var r,i=0,o=t.length;i<o;i++)!r&&i in t||(r||(r=Array.prototype.slice.call(t,0,i)),r[i]=t[i]);return e.concat(r||Array.prototype.slice.call(t))}var u,a,c,l,d=function(){return"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof self?self:"undefined"!=typeof global?global:void 0},f=function(){var e,t=d();return(null===(e=null==t?void 0:t.location)||void 0===e?void 0:e.search)?t.location.search.substring(1).split("&").filter(Boolean).reduce((function(e,t){var n=t.split("=",2),r=p(n[0]),i=p(n[1]);return i?(e[r]=i,e):e}),{}):{}},p=function(e){void 0===e&&(e="");try{return decodeURIComponent(e)}catch(e){return""}},s="dclid",v="fbclid",y="gbraid",m="gclid",g="ko_click_id",h="li_fat_id",_="msclkid",b="rtd_cid",E="ttclid",w="twclid",T="wbraid",k={utm_campaign:void 0,utm_content:void 0,utm_id:void 0,utm_medium:void 0,utm_source:void 0,utm_term:void 0,referrer:void 0,referring_domain:void 0,dclid:void 0,gbraid:void 0,gclid:void 0,fbclid:void 0,ko_click_id:void 0,li_fat_id:void 0,msclkid:void 0,rtd_cid:void 0,ttclid:void 0,twclid:void 0,wbraid:void 0},P=function(){function e(){}return e.prototype.parse=function(){return n(this,void 0,void 0,(function(){return r(this,(function(e){return[2,t(t(t(t({},k),this.getUtmParam()),this.getReferrer()),this.getClickIds())]}))}))},e.prototype.getUtmParam=function(){var e=f();return{utm_campaign:e.utm_campaign,utm_content:e.utm_content,utm_id:e.utm_id,utm_medium:e.utm_medium,utm_source:e.utm_source,utm_term:e.utm_term}},e.prototype.getReferrer=function(){var e,t,n={referrer:void 0,referring_domain:void 0};try{n.referrer=document.referrer||void 0,n.referring_domain=null!==(t=null===(e=n.referrer)||void 0===e?void 0:e.split("/")[2])&&void 0!==t?t:void 0}catch(e){}return n},e.prototype.getClickIds=function(){var e,t=f();return(e={})[s]=t[s],e[v]=t[v],e[y]=t[y],e[m]=t[m],e[g]=t[g],e[h]=t[h],e[_]=t[_],e[b]=t[b],e[E]=t[E],e[w]=t[w],e[T]=t[T],e},e}();!function(e){e.SET="$set",e.SET_ONCE="$setOnce",e.ADD="$add",e.APPEND="$append",e.PREPEND="$prepend",e.REMOVE="$remove",e.PREINSERT="$preInsert",e.POSTINSERT="$postInsert",e.UNSET="$unset",e.CLEAR_ALL="$clearAll"}(u||(u={})),function(e){e.REVENUE_PRODUCT_ID="$productId",e.REVENUE_QUANTITY="$quantity",e.REVENUE_PRICE="$price",e.REVENUE_TYPE="$revenueType",e.REVENUE="$revenue"}(a||(a={})),function(e){e.IDENTIFY="$identify",e.GROUP_IDENTIFY="$groupidentify",e.REVENUE="revenue_amount"}(c||(c={})),function(e){e.BEFORE="before",e.ENRICHMENT="enrichment",e.DESTINATION="destination"}(l||(l={}));var N=function(e){var t={};for(var n in e){var r=e[n];r&&(t[n]=r)}return t},R=function(e){var o;void 0===e&&(e={});var u=d(),a=void 0,c=function(){return n(void 0,void 0,void 0,(function(){var n,i,o;return r(this,(function(r){switch(r.label){case 0:return i={event_type:null!==(o=e.eventType)&&void 0!==o?o:"[Amplitude] Page Viewed"},n=[{}],[4,O()];case 1:return[2,(i.event_properties=t.apply(void 0,[t.apply(void 0,n.concat([r.sent()])),{"[Amplitude] Page Domain":"undefined"!=typeof location&&location.hostname||"","[Amplitude] Page Location":"undefined"!=typeof location&&location.href||"","[Amplitude] Page Path":"undefined"!=typeof location&&location.pathname||"","[Amplitude] Page Title":"undefined"!=typeof document&&document.title||"","[Amplitude] Page URL":"undefined"!=typeof location&&location.href.split("?")[0]||""}]),i)]}}))}))},f=function(){return void 0===e.trackOn||"function"==typeof e.trackOn&&e.trackOn()},p="undefined"!=typeof location?location.href:null,s=function(){return n(void 0,void 0,void 0,(function(){var t,n,i;return r(this,(function(r){switch(r.label){case 0:return t=location.href,$(e.trackHistoryChanges,t,p||"")&&f()?(null==a||a.log("Tracking page view event"),null!=o?[3,1]:[3,3]):[3,4];case 1:return i=(n=o).track,[4,c()];case 2:i.apply(n,[r.sent()]),r.label=3;case 3:r.label=4;case 4:return p=t,[2]}}))}))};return{name:"@amplitude/plugin-page-view-tracking-browser",type:l.ENRICHMENT,setup:function(e,t){return n(void 0,void 0,void 0,(function(){var n,l;return r(this,(function(r){switch(r.label){case 0:return o=t,(a=e.loggerProvider).log("Installing @amplitude/plugin-page-view-tracking-browser"),u&&(u.addEventListener("popstate",(function(){s()})),u.history.pushState=new Proxy(u.history.pushState,{apply:function(e,t,n){var r=i(n,3),o=r[0],u=r[1],a=r[2];e.apply(t,[o,u,a]),s()}})),f()?(a.log("Tracking page view event"),l=(n=o).track,[4,c()]):[3,2];case 1:l.apply(n,[r.sent()]),r.label=2;case 2:return[2]}}))}))},execute:function(i){return n(void 0,void 0,void 0,(function(){var n;return r(this,(function(r){switch(r.label){case 0:return"attribution"===e.trackOn&&I(i)?(null==a||a.log("Enriching campaign event to page view event with campaign parameters"),[4,c()]):[3,2];case 1:n=r.sent(),i.event_type=n.event_type,i.event_properties=t(t({},i.event_properties),n.event_properties),r.label=2;case 2:return[2,i]}}))}))}}},O=function(){return n(void 0,void 0,void 0,(function(){var e;return r(this,(function(t){switch(t.label){case 0:return e=N,[4,(new P).parse()];case 1:return[2,e.apply(void 0,[t.sent()])]}}))}))},I=function(e){if("$identify"===e.event_type&&e.user_properties){var t=e.user_properties,n=t[u.SET]||{},r=t[u.UNSET]||{},a=o(o([],i(Object.keys(n)),!1),i(Object.keys(r)),!1);return Object.keys(k).every((function(e){return a.includes(e)}))}return!1},$=function(e,t,n){return"pathOnly"===e?t.split("?")[0]!==n.split("?")[0]:t!==n},A=Object.freeze({__proto__:null});return e.Types=A,e.pageViewTrackingPlugin=R,e.plugin=R,Object.defineProperty(e,"__esModule",{value:!0}),e}({}); |
@@ -1,1 +0,1 @@ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).amplitude={})}(this,(function(e){"use strict";var t=function(){return t=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},t.apply(this,arguments)};function n(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function u(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,u)}c((r=r.apply(e,t||[])).next())}))}function r(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function u(u){return function(c){return function(u){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,u[0]&&(a=0)),a;)try{if(n=1,r&&(i=2&u[0]?r.return:u[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,u[1])).done)return i;switch(r=0,i&&(u=[2&u[0],i.value]),u[0]){case 0:case 1:i=u;break;case 4:return a.label++,{value:u[1],done:!1};case 5:a.label++,r=u[1],u=[0];continue;case 7:u=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==u[0]&&2!==u[0])){a=0;continue}if(3===u[0]&&(!i||u[1]>i[0]&&u[1]<i[3])){a.label=u[1];break}if(6===u[0]&&a.label<i[1]){a.label=i[1],i=u;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(u);break}i[2]&&a.ops.pop(),a.trys.pop();continue}u=t.call(e,a)}catch(e){u=[6,e],r=0}finally{n=i=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}([u,c])}}}function i(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,o=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a}function o(e,t,n){if(n||2===arguments.length)for(var r,i=0,o=t.length;i<o;i++)!r&&i in t||(r||(r=Array.prototype.slice.call(t,0,i)),r[i]=t[i]);return e.concat(r||Array.prototype.slice.call(t))}var a,u,c,l,d=function(){return"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof self?self:"undefined"!=typeof global?global:void 0},f=function(){var e,t=d();return(null===(e=null==t?void 0:t.location)||void 0===e?void 0:e.search)?t.location.search.substring(1).split("&").filter(Boolean).reduce((function(e,t){var n=t.split("=",2),r=p(n[0]),i=p(n[1]);return i?(e[r]=i,e):e}),{}):{}},p=function(e){void 0===e&&(e="");try{return decodeURIComponent(e)}catch(e){return""}},s="dclid",v="fbclid",y="gbraid",g="gclid",m="ko_click_id",h="li_fat_id",_="msclkid",b="rtd_cid",w="ttclid",E="twclid",k="wbraid",T={utm_campaign:void 0,utm_content:void 0,utm_id:void 0,utm_medium:void 0,utm_source:void 0,utm_term:void 0,referrer:void 0,referring_domain:void 0,dclid:void 0,gbraid:void 0,gclid:void 0,fbclid:void 0,ko_click_id:void 0,li_fat_id:void 0,msclkid:void 0,rtd_cid:void 0,ttclid:void 0,twclid:void 0,wbraid:void 0},O=function(){function e(){}return e.prototype.parse=function(){return n(this,void 0,void 0,(function(){return r(this,(function(e){return[2,t(t(t(t({},T),this.getUtmParam()),this.getReferrer()),this.getClickIds())]}))}))},e.prototype.getUtmParam=function(){var e=f();return{utm_campaign:e.utm_campaign,utm_content:e.utm_content,utm_id:e.utm_id,utm_medium:e.utm_medium,utm_source:e.utm_source,utm_term:e.utm_term}},e.prototype.getReferrer=function(){var e,t,n={referrer:void 0,referring_domain:void 0};try{n.referrer=document.referrer||void 0,n.referring_domain=null!==(t=null===(e=n.referrer)||void 0===e?void 0:e.split("/")[2])&&void 0!==t?t:void 0}catch(e){}return n},e.prototype.getClickIds=function(){var e,t=f();return(e={})[s]=t[s],e[v]=t[v],e[y]=t[y],e[g]=t[g],e[m]=t[m],e[h]=t[h],e[_]=t[_],e[b]=t[b],e[w]=t[w],e[E]=t[E],e[k]=t[k],e},e}();!function(e){e.SET="$set",e.SET_ONCE="$setOnce",e.ADD="$add",e.APPEND="$append",e.PREPEND="$prepend",e.REMOVE="$remove",e.PREINSERT="$preInsert",e.POSTINSERT="$postInsert",e.UNSET="$unset",e.CLEAR_ALL="$clearAll"}(a||(a={})),function(e){e.REVENUE_PRODUCT_ID="$productId",e.REVENUE_QUANTITY="$quantity",e.REVENUE_PRICE="$price",e.REVENUE_TYPE="$revenueType",e.REVENUE="$revenue"}(u||(u={})),function(e){e.IDENTIFY="$identify",e.GROUP_IDENTIFY="$groupidentify",e.REVENUE="revenue_amount"}(c||(c={})),function(e){e.BEFORE="before",e.ENRICHMENT="enrichment",e.DESTINATION="destination"}(l||(l={}));var P=function(e){var t={};for(var n in e){var r=e[n];r&&(t[n]=r)}return t},N=function(){for(var e,o=[],a=0;a<arguments.length;a++)o[a]=arguments[a];var u={},c=d(),f=void 0,p=i(o,2),s=p[0],v=p[1];s&&"init"in s?(e=s,v&&(u=v)):s&&(u=s);var y=function(){return n(void 0,void 0,void 0,(function(){var e,n,i;return r(this,(function(r){switch(r.label){case 0:return n={event_type:null!==(i=u.eventType)&&void 0!==i?i:"Page View"},e=[{}],[4,R()];case 1:return[2,(n.event_properties=t.apply(void 0,[t.apply(void 0,e.concat([r.sent()])),{page_domain:"undefined"!=typeof location&&location.hostname||"",page_location:"undefined"!=typeof location&&location.href||"",page_path:"undefined"!=typeof location&&location.pathname||"",page_title:"undefined"!=typeof document&&document.title||"",page_url:"undefined"!=typeof location&&location.href.split("?")[0]||""}]),n)]}}))}))},g=function(){return void 0===u.trackOn||"function"==typeof u.trackOn&&u.trackOn()},m="undefined"!=typeof location?location.href:null,h=function(){return n(void 0,void 0,void 0,(function(){var t,n,i;return r(this,(function(r){switch(r.label){case 0:return t=location.href,$(u.trackHistoryChanges,t,m||"")&&g()?(null==f||f.log("Tracking page view event"),null!=e?[3,1]:[3,3]):[3,4];case 1:return i=(n=e).track,[4,y()];case 2:i.apply(n,[r.sent()]),r.label=3;case 3:r.label=4;case 4:return m=t,[2]}}))}))},_={name:"page-view-tracking",type:l.ENRICHMENT,setup:function(t,o){return n(void 0,void 0,void 0,(function(){var n,a,l,d,p;return r(this,(function(r){switch(r.label){case 0:return(e=null!=e?e:o)?((f=t.loggerProvider).log("Installing @amplitude/plugin-page-view-tracking-browser"),u.trackOn=(null===(d=t.attribution)||void 0===d?void 0:d.trackPageViews)?"attribution":u.trackOn,!o&&(null===(p=t.attribution)||void 0===p?void 0:p.trackPageViews)&&(f.warn("@amplitude/plugin-page-view-tracking-browser overrides page view tracking behavior defined in @amplitude/analytics-browser. Resolve by disabling page view tracking in @amplitude/analytics-browser."),t.attribution.trackPageViews=!1),u.trackHistoryChanges&&c&&(c.addEventListener("popstate",(function(){h()})),c.history.pushState=new Proxy(c.history.pushState,{apply:function(e,t,n){var r=i(n,3),o=r[0],a=r[1],u=r[2];e.apply(t,[o,a,u]),h()}})),g()?(f.log("Tracking page view event"),l=(a=e).track,[4,y()]):[3,2]):(n=s?"Options":"undefined",t.loggerProvider.error("Argument of type '".concat(n,"' is not assignable to parameter of type 'BrowserClient'.")),[2]);case 1:l.apply(a,[r.sent()]),r.label=2;case 2:return[2]}}))}))},execute:function(e){return n(void 0,void 0,void 0,(function(){var n;return r(this,(function(r){switch(r.label){case 0:return"attribution"===u.trackOn&&I(e)?(null==f||f.log("Enriching campaign event to page view event with campaign parameters"),[4,y()]):[3,2];case 1:n=r.sent(),e.event_type=n.event_type,e.event_properties=t(t({},e.event_properties),n.event_properties),r.label=2;case 2:return[2,e]}}))}))}};return _.__trackHistoryPageView=h,_},R=function(){return n(void 0,void 0,void 0,(function(){var e;return r(this,(function(t){switch(t.label){case 0:return e=P,[4,(new O).parse()];case 1:return[2,e.apply(void 0,[t.sent()])]}}))}))},I=function(e){if("$identify"===e.event_type&&e.user_properties){var t=e.user_properties,n=t[a.SET]||{},r=t[a.UNSET]||{},u=o(o([],i(Object.keys(n)),!1),i(Object.keys(r)),!1);return Object.keys(T).every((function(e){return u.includes(e)}))}return!1},$=function(e,t,n){return"pathOnly"===e?t.split("?")[0]!==n.split("?")[0]:t!==n},S=Object.freeze({__proto__:null});e.Types=S,e.pageViewTrackingPlugin=N,e.plugin=N,Object.defineProperty(e,"__esModule",{value:!0})})); | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).amplitude={})}(this,(function(e){"use strict";var t=function(){return t=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},t.apply(this,arguments)};function n(e,t,n,r){return new(n||(n=Promise))((function(i,o){function u(e){try{c(r.next(e))}catch(e){o(e)}}function a(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(u,a)}c((r=r.apply(e,t||[])).next())}))}function r(e,t){var n,r,i,o,u={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(u=0)),u;)try{if(n=1,r&&(i=2&a[0]?r.return:a[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,a[1])).done)return i;switch(r=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return u.label++,{value:a[1],done:!1};case 5:u.label++,r=a[1],a=[0];continue;case 7:a=u.ops.pop(),u.trys.pop();continue;default:if(!(i=u.trys,(i=i.length>0&&i[i.length-1])||6!==a[0]&&2!==a[0])){u=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){u.label=a[1];break}if(6===a[0]&&u.label<i[1]){u.label=i[1],i=a;break}if(i&&u.label<i[2]){u.label=i[2],u.ops.push(a);break}i[2]&&u.ops.pop(),u.trys.pop();continue}a=t.call(e,u)}catch(e){a=[6,e],r=0}finally{n=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}}function i(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,o=n.call(e),u=[];try{for(;(void 0===t||t-- >0)&&!(r=o.next()).done;)u.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return u}function o(e,t,n){if(n||2===arguments.length)for(var r,i=0,o=t.length;i<o;i++)!r&&i in t||(r||(r=Array.prototype.slice.call(t,0,i)),r[i]=t[i]);return e.concat(r||Array.prototype.slice.call(t))}var u,a,c,l,d=function(){return"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof self?self:"undefined"!=typeof global?global:void 0},f=function(){var e,t=d();return(null===(e=null==t?void 0:t.location)||void 0===e?void 0:e.search)?t.location.search.substring(1).split("&").filter(Boolean).reduce((function(e,t){var n=t.split("=",2),r=p(n[0]),i=p(n[1]);return i?(e[r]=i,e):e}),{}):{}},p=function(e){void 0===e&&(e="");try{return decodeURIComponent(e)}catch(e){return""}},s="dclid",v="fbclid",y="gbraid",m="gclid",g="ko_click_id",h="li_fat_id",_="msclkid",b="rtd_cid",E="ttclid",w="twclid",T="wbraid",k={utm_campaign:void 0,utm_content:void 0,utm_id:void 0,utm_medium:void 0,utm_source:void 0,utm_term:void 0,referrer:void 0,referring_domain:void 0,dclid:void 0,gbraid:void 0,gclid:void 0,fbclid:void 0,ko_click_id:void 0,li_fat_id:void 0,msclkid:void 0,rtd_cid:void 0,ttclid:void 0,twclid:void 0,wbraid:void 0},P=function(){function e(){}return e.prototype.parse=function(){return n(this,void 0,void 0,(function(){return r(this,(function(e){return[2,t(t(t(t({},k),this.getUtmParam()),this.getReferrer()),this.getClickIds())]}))}))},e.prototype.getUtmParam=function(){var e=f();return{utm_campaign:e.utm_campaign,utm_content:e.utm_content,utm_id:e.utm_id,utm_medium:e.utm_medium,utm_source:e.utm_source,utm_term:e.utm_term}},e.prototype.getReferrer=function(){var e,t,n={referrer:void 0,referring_domain:void 0};try{n.referrer=document.referrer||void 0,n.referring_domain=null!==(t=null===(e=n.referrer)||void 0===e?void 0:e.split("/")[2])&&void 0!==t?t:void 0}catch(e){}return n},e.prototype.getClickIds=function(){var e,t=f();return(e={})[s]=t[s],e[v]=t[v],e[y]=t[y],e[m]=t[m],e[g]=t[g],e[h]=t[h],e[_]=t[_],e[b]=t[b],e[E]=t[E],e[w]=t[w],e[T]=t[T],e},e}();!function(e){e.SET="$set",e.SET_ONCE="$setOnce",e.ADD="$add",e.APPEND="$append",e.PREPEND="$prepend",e.REMOVE="$remove",e.PREINSERT="$preInsert",e.POSTINSERT="$postInsert",e.UNSET="$unset",e.CLEAR_ALL="$clearAll"}(u||(u={})),function(e){e.REVENUE_PRODUCT_ID="$productId",e.REVENUE_QUANTITY="$quantity",e.REVENUE_PRICE="$price",e.REVENUE_TYPE="$revenueType",e.REVENUE="$revenue"}(a||(a={})),function(e){e.IDENTIFY="$identify",e.GROUP_IDENTIFY="$groupidentify",e.REVENUE="revenue_amount"}(c||(c={})),function(e){e.BEFORE="before",e.ENRICHMENT="enrichment",e.DESTINATION="destination"}(l||(l={}));var N=function(e){var t={};for(var n in e){var r=e[n];r&&(t[n]=r)}return t},R=function(e){var o;void 0===e&&(e={});var u=d(),a=void 0,c=function(){return n(void 0,void 0,void 0,(function(){var n,i,o;return r(this,(function(r){switch(r.label){case 0:return i={event_type:null!==(o=e.eventType)&&void 0!==o?o:"[Amplitude] Page Viewed"},n=[{}],[4,O()];case 1:return[2,(i.event_properties=t.apply(void 0,[t.apply(void 0,n.concat([r.sent()])),{"[Amplitude] Page Domain":"undefined"!=typeof location&&location.hostname||"","[Amplitude] Page Location":"undefined"!=typeof location&&location.href||"","[Amplitude] Page Path":"undefined"!=typeof location&&location.pathname||"","[Amplitude] Page Title":"undefined"!=typeof document&&document.title||"","[Amplitude] Page URL":"undefined"!=typeof location&&location.href.split("?")[0]||""}]),i)]}}))}))},f=function(){return void 0===e.trackOn||"function"==typeof e.trackOn&&e.trackOn()},p="undefined"!=typeof location?location.href:null,s=function(){return n(void 0,void 0,void 0,(function(){var t,n,i;return r(this,(function(r){switch(r.label){case 0:return t=location.href,$(e.trackHistoryChanges,t,p||"")&&f()?(null==a||a.log("Tracking page view event"),null!=o?[3,1]:[3,3]):[3,4];case 1:return i=(n=o).track,[4,c()];case 2:i.apply(n,[r.sent()]),r.label=3;case 3:r.label=4;case 4:return p=t,[2]}}))}))};return{name:"@amplitude/plugin-page-view-tracking-browser",type:l.ENRICHMENT,setup:function(e,t){return n(void 0,void 0,void 0,(function(){var n,l;return r(this,(function(r){switch(r.label){case 0:return o=t,(a=e.loggerProvider).log("Installing @amplitude/plugin-page-view-tracking-browser"),u&&(u.addEventListener("popstate",(function(){s()})),u.history.pushState=new Proxy(u.history.pushState,{apply:function(e,t,n){var r=i(n,3),o=r[0],u=r[1],a=r[2];e.apply(t,[o,u,a]),s()}})),f()?(a.log("Tracking page view event"),l=(n=o).track,[4,c()]):[3,2];case 1:l.apply(n,[r.sent()]),r.label=2;case 2:return[2]}}))}))},execute:function(i){return n(void 0,void 0,void 0,(function(){var n;return r(this,(function(r){switch(r.label){case 0:return"attribution"===e.trackOn&&I(i)?(null==a||a.log("Enriching campaign event to page view event with campaign parameters"),[4,c()]):[3,2];case 1:n=r.sent(),i.event_type=n.event_type,i.event_properties=t(t({},i.event_properties),n.event_properties),r.label=2;case 2:return[2,i]}}))}))}}},O=function(){return n(void 0,void 0,void 0,(function(){var e;return r(this,(function(t){switch(t.label){case 0:return e=N,[4,(new P).parse()];case 1:return[2,e.apply(void 0,[t.sent()])]}}))}))},I=function(e){if("$identify"===e.event_type&&e.user_properties){var t=e.user_properties,n=t[u.SET]||{},r=t[u.UNSET]||{},a=o(o([],i(Object.keys(n)),!1),i(Object.keys(r)),!1);return Object.keys(k).every((function(e){return a.includes(e)}))}return!1},$=function(e,t,n){return"pathOnly"===e?t.split("?")[0]!==n.split("?")[0]:t!==n},A=Object.freeze({__proto__:null});e.Types=A,e.pageViewTrackingPlugin=R,e.plugin=R,Object.defineProperty(e,"__esModule",{value:!0})})); |
@@ -1,8 +0,6 @@ | ||
import { EnrichmentPlugin, BrowserClient, PageTrackingOptions as Options } from '@amplitude/analytics-types'; | ||
import { EnrichmentPlugin, PageTrackingOptions as Options } from '@amplitude/analytics-types'; | ||
export { PageTrackingOptions as Options, PageTrackingTrackOn, PageTrackingHistoryChanges, } from '@amplitude/analytics-types'; | ||
export interface CreatePageViewTrackingPlugin { | ||
(client: BrowserClient, options?: Options): EnrichmentPlugin; | ||
(options?: Options): EnrichmentPlugin; | ||
} | ||
export type CreatePageViewTrackingPluginParameters = [BrowserClient, Options?] | [Options?]; | ||
//# sourceMappingURL=page-view-tracking.d.ts.map |
{ | ||
"name": "@amplitude/plugin-page-view-tracking-browser", | ||
"version": "1.0.0", | ||
"version": "2.0.0-beta.1", | ||
"description": "", | ||
@@ -39,8 +39,8 @@ "author": "Amplitude Inc", | ||
"dependencies": { | ||
"@amplitude/analytics-client-common": "^1.0.0", | ||
"@amplitude/analytics-types": "^1.0.0", | ||
"@amplitude/analytics-client-common": "^2.0.0-beta.1", | ||
"@amplitude/analytics-types": "^2.0.0-beta.1", | ||
"tslib": "^2.4.1" | ||
}, | ||
"devDependencies": { | ||
"@amplitude/analytics-browser": "^1.10.6", | ||
"@amplitude/analytics-browser": "^2.0.0-beta.1", | ||
"@rollup/plugin-commonjs": "^23.0.4", | ||
@@ -57,3 +57,3 @@ "@rollup/plugin-node-resolve": "^15.0.1", | ||
], | ||
"gitHead": "08dca3e99057682bb0e1cf63ab771c9517cbdee4" | ||
"gitHead": "c33e72bd43d1f6a5ca7ed1bd3fe2e7330e512bee" | ||
} |
@@ -26,11 +26,9 @@ <p align="center"> | ||
This plugin works on top of Amplitude Browser SDK and adds page view tracking features to built-in features. To use this plugin, you need to install `@amplitude/analytics-browser` version `v1.4.0` or later. | ||
This plugin works on top of Amplitude Browser SDK and adds page view tracking features to built-in features. To use this plugin, you need to install `@amplitude/analytics-browser` version `v2.0.0` or later. | ||
### 1. Import Amplitude packages | ||
* `@amplitude/analytics-browser` | ||
* `@amplitude/plugin-page-view-tracking-browser` | ||
```typescript | ||
import * as amplitude from '@amplitude/analytics-browser'; | ||
import { pageViewTrackingPlugin } from '@amplitude/plugin-page-view-tracking-browser'; | ||
@@ -41,6 +39,6 @@ ``` | ||
The plugin requires 1 parameter, which is the `amplitude` instance. The plugin also accepts an optional second parameter, which is an `Object` to configure the plugin based on your use case. | ||
The plugin accepts an optional parameter of type `Object` to configure the plugin based on your use case. | ||
```typescript | ||
const pageViewTracking = pageViewTrackingPlugin(amplitude, { | ||
const pageViewTracking = pageViewTrackingPlugin({ | ||
trackOn: undefined, | ||
@@ -56,3 +54,3 @@ trackHistoryChanges: undefined, | ||
|`trackOn`|`"attribution"` or `() => boolean`|`undefined`|Use this option to control when to track a page view event. By default, a page view event is sent on each SDK initialization.<br/><br/>Use `() => boolean` to control sending page view events using custom conditional logic.<br/><br/>Use `"attribution"` to send page view events with attribution events. This option requires using [@amplitude/plugin-web-attribution-browser](https://github.com/amplitude/Amplitude-TypeScript/tree/main/packages/plugin-web-attribution-browser).| | ||
|`trackHistoryChanges`|`"all"` or `"pathOnly"`|`undefined`|Use this option to subscribe to page view changes in a single page application like React.js. By default, page view changes in single page applications does not trigger a page view event.<br/><br/>Use `"all"` to compare the full url changes.<br/><br/>Use `"pathOnly"` to compare only url path changes.| | ||
|`trackHistoryChanges`|`"all"` or `"pathOnly"`|`undefined`|Use this option to subscribe to page view changes based on full URL or URL path in a single page application like React.js. By default, page view changes are based on full URL.<br/><br/>Use `"all"` to compare the full url changes.<br/><br/>Use `"pathOnly"` to compare only url path changes.| | ||
@@ -76,3 +74,3 @@ ### 3. Install plugin to Amplitude SDK | ||
#### Event type | ||
* `"Page View"` | ||
* `"[Amplitude ]Page Viewed"` | ||
@@ -83,6 +81,6 @@ #### Event properties | ||
|-|-| | ||
|`page_domain`|The website's hostname or `location.hostname`| | ||
|`page_location`|The website's full url or `location.href`| | ||
|`page_path`|The website's pathname or `location.pathname`| | ||
|`page_title`|The website's title or `document.title`| | ||
|`page_url`|The website's url excluding query parameters| | ||
|`'[Amplitude] Page Domain'`|The website's hostname or `location.hostname`| | ||
|`'[Amplitude] Page Location'`|The website's full url or `location.href`| | ||
|`'[Amplitude] Page Path'`|The website's pathname or `location.pathname`| | ||
|`'[Amplitude] Page Title'`|The website's title or `document.title`| | ||
|`'[Amplitude] Page URL'`|The website's url excluding query parameters| |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
73922
437
1
82
+ Added@amplitude/analytics-client-common@2.3.1(transitive)
+ Added@amplitude/analytics-core@2.5.0(transitive)
+ Added@amplitude/analytics-types@2.8.0(transitive)
- Removed@amplitude/analytics-client-common@1.2.3(transitive)
- Removed@amplitude/analytics-core@1.2.5(transitive)
- Removed@amplitude/analytics-types@1.3.4(transitive)