@objectiv/tracker-react
Advanced tools
@@ -1,2 +0,2 @@ | ||
| var f={name:"@objectiv/tracker-react",version:"0.0.27-experimental.2",description:"Objectiv React application analytics tracker for the open analytics taxonomy",license:"Apache-2.0",homepage:"https://objectiv.io",keywords:["objectiv","tracking","react","analytics","events","taxonomy"],repository:{type:"git",url:"https://github.com/objectiv/objectiv-analytics.git",directory:"tracker/trackers/react"},bugs:"https://github.com/objectiv/objectiv-analytics/issues",contributors:[{name:"Surai Di Rosa",email:"surai.dirosa@gmail.com",url:"https://github.com/sdirosa"}],main:"./dist/index.js",module:"./dist/esm/index.js",types:"./dist/index.d.ts",files:["dist"],exports:{".":{require:"./dist/index.js",import:"./dist/esm/index.js",types:"./dist/index.d.ts"}},scripts:{build:"tsup src/index.ts --format cjs,esm --legacy-output --minify --dts --sourcemap --clean","deploy:verdaccio":"npm publish",prettify:"prettier --write .",tsc:"tsc --noEmit",test:"jest --silent","test:ci":"jest --silent --ci","test:coverage":"jest --silent --coverage",depcheck:"npx depcheck"},devDependencies:{"@material-ui/core":"^4.12.4","@objectiv/developer-tools":"^0.0.27-experimental.2","@objectiv/plugin-identity-context":"^0.0.27-experimental.2","@objectiv/schema":"^0.0.27-experimental.2","@objectiv/testing-tools":"^0.0.27-experimental.2","@objectiv/transport-debug":"^0.0.27-experimental.2","@testing-library/react":"^13.3.0","@testing-library/user-event":"^14.4.3","@types/react":"^17.0.48",jest:"^28.1.3","jest-fetch-mock":"^3.0.3","jest-useragent-mock":"^0.1.1",prettier:"^2.7.1",react:"^18.2.0","react-dom":"^18.2.0","ts-jest":"^28.0.7",tsup:"^6.2.1",typescript:"^4.7.4"},dependencies:{"@objectiv/plugin-application-context":"^0.0.27-experimental.2","@objectiv/plugin-http-context":"^0.0.27-experimental.2","@objectiv/plugin-path-context-from-url":"^0.0.27-experimental.2","@objectiv/plugin-root-location-context-from-url":"^0.0.27-experimental.2","@objectiv/queue-local-storage":"^0.0.27-experimental.2","@objectiv/tracker-core":"^0.0.27-experimental.2","@objectiv/tracker-react-core":"^0.0.27-experimental.2","@objectiv/transport-fetch":"^0.0.27-experimental.2","@objectiv/transport-xhr":"^0.0.27-experimental.2"},peerDependencies:{react:">=16.8","react-dom":">=16.8"}};export*from"@objectiv/tracker-react-core";import{trackPressEvent as V}from"@objectiv/tracker-react-core";var W=Symbol("OBJECTIV_EVENT_REDISPATCHED");function G(t){return async e=>{if(!t.waitUntilTracked)V(t.trackingContext),t.onClick&&t.onClick(e);else{let n=e.nativeEvent;if(n[W])return;e.preventDefault(),await V({...t.trackingContext,options:{waitForQueue:!0,flushQueue:!0}}),t.onClick&&t.onClick(e);let i=new n.constructor(n.type,n);i[W]=!0,(e.currentTarget||e.target).dispatchEvent(i)}}}import{ApplicationContextPlugin as K}from"@objectiv/plugin-application-context";import{HttpContextPlugin as Z}from"@objectiv/plugin-http-context";import{PathContextFromURLPlugin as tt}from"@objectiv/plugin-path-context-from-url";import{RootLocationContextFromURLPlugin as et}from"@objectiv/plugin-root-location-context-from-url";var D=t=>{let{trackApplicationContext:e=!0,trackHttpContext:n=!0,trackPathContextFromURL:i=!0,trackRootLocationContextFromURL:l=!0}=t,r=[];return e&&r.push(new K),n&&r.push(new Z),i&&r.push(new tt),l&&r.push(new et),r};import{LocalStorageQueueStore as nt}from"@objectiv/queue-local-storage";import{TrackerQueue as ot,TrackerQueueMemoryStore as at}from"@objectiv/tracker-core";var O=t=>{let e=typeof localStorage<"u"?nt:at;return new ot({store:new e({trackerId:t.trackerId??t.applicationId})})};import{TrackerTransportRetry as it,TrackerTransportSwitch as rt}from"@objectiv/tracker-core";import{FetchTransport as ct}from"@objectiv/transport-fetch";import{XHRTransport as lt}from"@objectiv/transport-xhr";var F=()=>new it({transport:new rt({transports:[new ct,new lt]})});import{makeId as st}from"@objectiv/tracker-core";import{ContentContextWrapper as dt,useLocationStack as xt}from"@objectiv/tracker-react-core";import g,{forwardRef as mt}from"react";var v=mt((t,e)=>{let{objectiv:{Component:n,id:i,normalizeId:l=!0},...r}=t,a=xt(),c=st(i??r.id,l),s={...r,...e?{ref:e}:{}};if(!c){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(a);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for ContentContext @ ${o}. Please provide the \`objectiv.id\` property.`)}return g.createElement(n,{...s})}return g.createElement(dt,{id:c},g.createElement(n,{...s}))});import{makeId as ut}from"@objectiv/tracker-core";import{ExpandableContextWrapper as vt,trackVisibility as Ct,useLocationStack as _t}from"@objectiv/tracker-react-core";import p,{forwardRef as kt,useRef as bt}from"react";var rn=kt((t,e)=>{let{objectiv:{id:n,Component:i,isVisible:l=!1,normalizeId:r=!0},...a}=t,c=bt(l),s=_t(),o=ut(n??a.id,r),x={...a,...e?{ref:e}:{}};if(!o){if(globalThis.objectiv.devTools){let d=globalThis.objectiv.devTools.getLocationPath(s);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for ExpandableContext @ ${d}. Please provide the \`objectiv.id\` property.`)}return p.createElement(i,{...x})}return p.createElement(vt,{id:o},d=>((c.current&&!l||!c.current&&l)&&(c.current=l,Ct({isVisible:l,...d})),p.createElement(i,{...x})))});var T=(o=>(o.ApplicationContext="ApplicationContext",o.CookieIdContext="CookieIdContext",o.HttpContext="HttpContext",o.IdentityContext="IdentityContext",o.InputValueContext="InputValueContext",o.LocaleContext="LocaleContext",o.MarketingContext="MarketingContext",o.PathContext="PathContext",o.SessionContext="SessionContext",o))(T||{}),E=(o=>(o.ContentContext="ContentContext",o.ExpandableContext="ExpandableContext",o.InputContext="InputContext",o.LinkContext="LinkContext",o.MediaPlayerContext="MediaPlayerContext",o.NavigationContext="NavigationContext",o.OverlayContext="OverlayContext",o.PressableContext="PressableContext",o.RootLocationContext="RootLocationContext",o))(E||{}),ln=new Set([...Object.keys(E),...Object.keys(T)]);function _(){let t=globalThis.crypto;if(t){if(typeof t.randomUUID=="function")return _.crypto_RandomUUID();if(typeof t.getRandomValues=="function")return _.crypto_GetRandomValues()}return _.dateNow_MathRandom()}_.crypto_RandomUUID=()=>globalThis.crypto.randomUUID();_.crypto_GetRandomValues=()=>`${1e7}-${1e3}-${4e3}-${8e3}-${1e11}`.replace(/[018]/g,t=>{let e=parseInt(t);return(e^globalThis.crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16)});_.dateNow_MathRandom=()=>{let t=Date.now().toString(16)+Math.random().toString(16)+"0".repeat(16);return[t.substring(0,8),t.substring(8,12),"4000-8"+t.substring(13,16),t.substring(16,28)].join("-")};var U=t=>({__instance_id:_(),__global_context:!0,_types:["AbstractContext","AbstractGlobalContext","InputValueContext"],id:t.id,_type:"InputValueContext",value:t.value});import{makeId as ft}from"@objectiv/tracker-core";import{InputContextWrapper as gt,trackInputChangeEvent as pt,useLocationStack as Tt}from"@objectiv/tracker-react-core";import y,{forwardRef as Et,useState as yt}from"react";var k=Et((t,e)=>{let{objectiv:{Component:n,id:i,normalizeId:l=!0,trackValue:r=!1},...a}=t,c=Tt(),s,o,x,d,C;if(n=="select")d=i??a.id,s=t.objectiv.eventHandler??"onChange",o=t.objectiv.stateless??!1,x=a.value??a.defaultValue,C="value";else switch(t.type){case"checkbox":case"radio":let m=a.name?a.name:null,u=a.value?a.value.toString():null;d=i??a.id??m??u,s=t.objectiv.eventHandler??"onChange",o=t.objectiv.stateless??t.type==="radio",x=a.checked??a.defaultChecked,C="checked";break;default:d=i??a.id,s=t.objectiv.eventHandler??"onBlur",o=t.objectiv.stateless??!1,x=a.value??a.defaultValue,C="value"}let[X,Q]=yt(h(x));d&&l&&(d=ft(d));let B=async(m,u)=>{let A=m.target,b=t.multiple?ht(A.selectedOptions):A[C],w=h(b);if(o||X!==w){Q(w);let H={...u,globalContexts:[]};d&&r&&(Array.isArray(b)?b:[b]).map(q=>{H.globalContexts.push(U({id:d,value:h(q)}))}),pt(H)}Pt(m)&&a.onBlur&&a.onBlur(m),It(m)&&a.onChange&&a.onChange(m),Lt(m)&&a.onClick&&a.onClick(m)},j={...a,...e?{ref:e}:{}};if(!d){if(globalThis.objectiv.devTools){let m=globalThis.objectiv.devTools.getLocationPath(c),u="";typeof n=="string"&&(u=n,t.type&&(u=t.type)),u&&(u=`:${u}`),globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for InputContext${u} @ ${m}. Please provide the \`objectiv.id\` property.`)}return y.createElement(n,{...j})}return y.createElement(gt,{id:d},m=>y.createElement(n,{...j,...{[s]:u=>B(u,m)}}))}),ht=t=>{var e=[];for(let n=0;n<t.length;n++)e.push(t[n].value);return e};function Pt(t){return t.type==="blur"}function It(t){return t.type==="change"}function Lt(t){return t.type==="click"}var h=t=>typeof t=="string"?t:typeof t=="boolean"?t?"1":"0":typeof t=="number"?t.toString():Array.isArray(t)?JSON.stringify(t):"";import{makeId as St}from"@objectiv/tracker-core";import{LinkContextWrapper as Rt,makeTitleFromChildren as Mt,useLocationStack as jt}from"@objectiv/tracker-react-core";import P,{forwardRef as At}from"react";var N=At((t,e)=>{let{objectiv:{Component:n,id:i,href:l,normalizeId:r=!0,waitUntilTracked:a=!1},...c}=t,s=St(i??c.id??c.title??Mt(t.children),r),o=l??c.href,x={...c,...e?{ref:e}:{}},d=jt();if(!s||!o){if(globalThis.objectiv.devTools){let C=globalThis.objectiv.devTools.getLocationPath(d);s||globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for LinkContext @ ${C}. Please provide either the \`title\` or the \`objectiv.id\` property manually.`),o||globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid href for LinkContext @ ${C}. Please provide the \`objectiv.href\` property manually.`)}return P.createElement(n,{...x})}return P.createElement(Rt,{id:s,href:o},C=>P.createElement(n,{...x,onClick:G({trackingContext:C,anchorHref:o,waitUntilTracked:a,onClick:c.onClick})}))});import{makeId as wt}from"@objectiv/tracker-core";import{MediaPlayerContextWrapper as Ht,useLocationStack as Vt}from"@objectiv/tracker-react-core";import I,{forwardRef as Wt}from"react";var eo=Wt((t,e)=>{let{objectiv:{Component:n,id:i,normalizeId:l=!0},...r}=t,a=Vt(),c=wt(i??r.id,l),s={...r,...e?{ref:e}:{}};if(!c){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(a);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for MediaPlayerContext @ ${o}. Please provide the \`objectiv.id\` property.`)}return I.createElement(n,{...s})}return I.createElement(Ht,{id:c},I.createElement(n,{...s}))});import{makeId as Gt}from"@objectiv/tracker-core";import{OverlayContextWrapper as Dt,trackVisibility as Ot,useLocationStack as Ft}from"@objectiv/tracker-react-core";import L,{forwardRef as Ut,useRef as Nt}from"react";var lo=Ut((t,e)=>{let{objectiv:{id:n,Component:i,isVisible:l=!1,normalizeId:r=!0},...a}=t,c=Nt(l),s=Ft(),o=Gt(n??a.id,r),x={...a,...e?{ref:e}:{}};if(!o){if(globalThis.objectiv.devTools){let d=globalThis.objectiv.devTools.getLocationPath(s);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for OverlayContext @ ${d}. Please provide the \`objectiv.id\` property.`)}return L.createElement(i,{...x})}return L.createElement(Dt,{id:o},d=>((c.current&&!l||!c.current&&l)&&(c.current=l,Ot({isVisible:l,...d})),L.createElement(i,{...x})))});import{makeId as $t}from"@objectiv/tracker-core";import{NavigationContextWrapper as zt,useLocationStack as Jt}from"@objectiv/tracker-react-core";import S,{forwardRef as Xt}from"react";var $=Xt((t,e)=>{let{objectiv:{Component:n,id:i,normalizeId:l=!0},...r}=t,a=Jt(),c=$t(i??r.id,l),s={...r,...e?{ref:e}:{}};if(!c){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(a);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for NavigationContext @ ${o}. Please provide the \`objectiv.id\` property.`)}return S.createElement(n,{...s})}return S.createElement(zt,{id:c},S.createElement(n,{...s}))});import{makeId as Qt}from"@objectiv/tracker-core";import{makeTitleFromChildren as Bt,PressableContextWrapper as qt,trackPressEvent as Yt,useLocationStack as Kt}from"@objectiv/tracker-react-core";import R,{forwardRef as Zt}from"react";var z=Zt((t,e)=>{let{objectiv:{Component:n,id:i,normalizeId:l=!0},...r}=t,a=Kt(),c=Qt(i??r.id??r.title??Bt(r.children),l),s={...r,...e?{ref:e}:{}};if(!c){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(a);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for PressableContext @ ${o}. Please provide either the \`title\` or the \`objectiv.id\` property manually.`)}return R.createElement(n,{...s})}return R.createElement(qt,{id:c},o=>R.createElement(n,{...s,onClick:x=>{Yt(o),t.onClick&&t.onClick(x)}}))});import{makeId as te}from"@objectiv/tracker-core";import{RootLocationContextWrapper as ee}from"@objectiv/tracker-react-core";import M,{forwardRef as ne}from"react";var Lo=ne((t,e)=>{let{objectiv:{Component:n,id:i,normalizeId:l=!0},...r}=t,a=te(i??r.id,l),c={...r,...e?{ref:e}:{}};return a?M.createElement(ee,{id:a},M.createElement(n,{...c})):(globalThis.objectiv.devTools&&globalThis.objectiv.devTools.TrackerConsole.error("\uFF62objectiv\uFF63 Could not generate a valid id for RootLocationContext. Please provide the `objectiv.id` property."),M.createElement(n,{...c}))});import oe,{forwardRef as ae}from"react";var wo=ae(({objectiv:t,...e},n)=>oe.createElement(N,{objectiv:{...t,Component:"a"},...e,ref:n}));import ie,{forwardRef as re}from"react";var Oo=re(({objectiv:t,...e},n)=>ie.createElement(z,{objectiv:{...t,Component:"button"},...e,ref:n}));import ce,{forwardRef as le}from"react";var Jo=le(({objectiv:t,...e},n)=>ce.createElement(v,{objectiv:{...t,Component:"div"},...e,ref:n}));import se,{forwardRef as de}from"react";var Ko=de(({objectiv:t,...e},n)=>se.createElement(v,{objectiv:{...t,Component:"footer",id:(t==null?void 0:t.id)??e.id??"footer"},...e,ref:n}));import xe,{forwardRef as me}from"react";var aa=me(({objectiv:t,...e},n)=>xe.createElement(v,{objectiv:{...t,Component:"header",id:(t==null?void 0:t.id)??e.id??"header"},...e,ref:n}));import ue,{forwardRef as ve}from"react";var sa=ve(({objectiv:t,...e},n)=>(globalThis.objectiv.devTools&&(e.type==="checkbox"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 We recommend using TrackedInputCheckbox for tracking checkbox inputs."),e.type==="radio"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 We recommend using TrackedInputRadio for tracking radio inputs.")),ue.createElement(k,{objectiv:{...t,Component:"input"},...e,ref:n})));import Ce,{forwardRef as _e}from"react";var va=_e(({objectiv:t,...e},n)=>(globalThis.objectiv.devTools&&e.type&&e.type!=="checkbox"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 TrackedInputCheckbox type attribute can only be set to 'checkbox'."),Ce.createElement(k,{objectiv:{...t,Component:"input"},type:"checkbox",...e,ref:n})));import ke,{forwardRef as be}from"react";var fa=be(({objectiv:t,...e},n)=>(globalThis.objectiv.devTools&&e.type&&e.type!=="radio"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 TrackedInputRadio type attribute can only be set to 'radio'."),ke.createElement(k,{objectiv:{...t,Component:"input"},type:"radio",...e,ref:n})));import fe,{forwardRef as ge}from"react";var ha=ge(({objectiv:t,...e},n)=>fe.createElement(v,{objectiv:{...t,Component:"main"},...e,ref:n}));import pe,{forwardRef as Te}from"react";var Ma=Te(({objectiv:t,...e},n)=>pe.createElement($,{objectiv:{...t,Component:"nav"},...e,ref:n}));import Ee,{forwardRef as ye}from"react";var Wa=ye(({objectiv:t,...e},n)=>Ee.createElement(v,{objectiv:{...t,Component:"section"},...e,ref:n}));import he,{forwardRef as Pe}from"react";var Ua=Pe(({objectiv:t,...e},n)=>he.createElement(k,{objectiv:{...t,Component:"select"},...e,ref:n}));import{Tracker as Ie,TrackerPlatform as Le}from"@objectiv/tracker-core";var J=class extends Ie{constructor(e,...n){let i=e;if(i.platform=Le.REACT,!i.transport&&!e.endpoint)throw new Error("Either `transport` or `endpoint` must be provided");if(i.transport&&e.endpoint)throw new Error("Please provider either `transport` or `endpoint`, not both at same time");e.endpoint&&(i={...i,transport:F(),queue:i.queue??O(i)}),i.plugins=[...D(e),...i.plugins??[]],super(i,...n)}};globalThis.objectiv=globalThis.objectiv??{};globalThis.objectiv.versions=globalThis.objectiv.versions??new Map;globalThis.objectiv.versions.set(f.name,f.version);export{J as ReactTracker,wo as TrackedAnchor,Oo as TrackedButton,v as TrackedContentContext,Jo as TrackedDiv,rn as TrackedExpandableContext,Ko as TrackedFooter,aa as TrackedHeader,sa as TrackedInput,va as TrackedInputCheckbox,k as TrackedInputContext,fa as TrackedInputRadio,N as TrackedLinkContext,ha as TrackedMain,eo as TrackedMediaPlayerContext,Ma as TrackedNav,$ as TrackedNavigationContext,lo as TrackedOverlayContext,z as TrackedPressableContext,Lo as TrackedRootLocationContext,Wa as TrackedSection,Ua as TrackedSelect,Pt as isBlurEvent,It as isChangeEvent,Lt as isClickEvent,G as makeAnchorClickHandler,D as makeReactTrackerDefaultPluginsList,O as makeReactTrackerDefaultQueue,F as makeReactTrackerDefaultTransport,h as normalizeValue}; | ||
| var f={name:"@objectiv/tracker-react",version:"0.0.27-experimental.3",description:"Objectiv React application analytics tracker for the open analytics taxonomy",license:"Apache-2.0",homepage:"https://objectiv.io",keywords:["objectiv","tracking","react","analytics","events","taxonomy"],repository:{type:"git",url:"https://github.com/objectiv/objectiv-analytics.git",directory:"tracker/trackers/react"},bugs:"https://github.com/objectiv/objectiv-analytics/issues",contributors:[{name:"Surai Di Rosa",email:"surai.dirosa@gmail.com",url:"https://github.com/sdirosa"}],main:"./dist/index.js",module:"./dist/esm/index.js",types:"./dist/index.d.ts",files:["dist"],exports:{".":{require:"./dist/index.js",import:"./dist/esm/index.js",types:"./dist/index.d.ts"}},scripts:{build:"tsup src/index.ts --format cjs,esm --legacy-output --minify --dts --sourcemap --clean","deploy:verdaccio":"npm publish",prettify:"prettier --write .",tsc:"tsc --noEmit",test:"jest --silent","test:ci":"jest --silent --ci","test:coverage":"jest --silent --coverage",depcheck:"npx depcheck"},devDependencies:{"@material-ui/core":"^4.12.4","@objectiv/developer-tools":"^0.0.27-experimental.3","@objectiv/plugin-identity-context":"^0.0.27-experimental.3","@objectiv/schema":"^0.0.27-experimental.3","@objectiv/testing-tools":"^0.0.27-experimental.3","@objectiv/transport-debug":"^0.0.27-experimental.3","@testing-library/react":"^13.3.0","@testing-library/user-event":"^14.4.3","@types/react":"^17.0.48",jest:"^28.1.3","jest-fetch-mock":"^3.0.3","jest-useragent-mock":"^0.1.1",prettier:"^2.7.1",react:"^18.2.0","react-dom":"^18.2.0","ts-jest":"^28.0.7",tsup:"^6.2.1",typescript:"^4.7.4"},dependencies:{"@objectiv/plugin-application-context":"^0.0.27-experimental.3","@objectiv/plugin-http-context":"^0.0.27-experimental.3","@objectiv/plugin-path-context-from-url":"^0.0.27-experimental.3","@objectiv/plugin-root-location-context-from-url":"^0.0.27-experimental.3","@objectiv/queue-local-storage":"^0.0.27-experimental.3","@objectiv/tracker-core":"^0.0.27-experimental.3","@objectiv/tracker-react-core":"^0.0.27-experimental.3","@objectiv/transport-fetch":"^0.0.27-experimental.3","@objectiv/transport-xhr":"^0.0.27-experimental.3"},peerDependencies:{react:">=16.8","react-dom":">=16.8"}};export*from"@objectiv/tracker-react-core";import{trackPressEvent as V}from"@objectiv/tracker-react-core";var W=Symbol("OBJECTIV_EVENT_REDISPATCHED");function G(t){return async e=>{if(!t.waitUntilTracked)V(t.trackingContext),t.onClick&&t.onClick(e);else{let n=e.nativeEvent;if(n[W])return;e.preventDefault(),await V({...t.trackingContext,options:{waitForQueue:!0,flushQueue:!0}}),t.onClick&&t.onClick(e);let i=new n.constructor(n.type,n);i[W]=!0,(e.currentTarget||e.target).dispatchEvent(i)}}}import{ApplicationContextPlugin as K}from"@objectiv/plugin-application-context";import{HttpContextPlugin as Z}from"@objectiv/plugin-http-context";import{PathContextFromURLPlugin as tt}from"@objectiv/plugin-path-context-from-url";import{RootLocationContextFromURLPlugin as et}from"@objectiv/plugin-root-location-context-from-url";var D=t=>{let{trackApplicationContext:e=!0,trackHttpContext:n=!0,trackPathContextFromURL:i=!0,trackRootLocationContextFromURL:l=!0}=t,r=[];return e&&r.push(new K),n&&r.push(new Z),i&&r.push(new tt),l&&r.push(new et),r};import{LocalStorageQueueStore as nt}from"@objectiv/queue-local-storage";import{TrackerQueue as ot,TrackerQueueMemoryStore as at}from"@objectiv/tracker-core";var O=t=>{let e=typeof localStorage<"u"?nt:at;return new ot({store:new e({trackerId:t.trackerId??t.applicationId})})};import{TrackerTransportRetry as it,TrackerTransportSwitch as rt}from"@objectiv/tracker-core";import{FetchTransport as ct}from"@objectiv/transport-fetch";import{XHRTransport as lt}from"@objectiv/transport-xhr";var F=()=>new it({transport:new rt({transports:[new ct,new lt]})});import{makeId as st}from"@objectiv/tracker-core";import{ContentContextWrapper as dt,useLocationStack as xt}from"@objectiv/tracker-react-core";import g,{forwardRef as mt}from"react";var v=mt((t,e)=>{let{objectiv:{Component:n,id:i,normalizeId:l=!0},...r}=t,a=xt(),c=st(i??r.id,l),s={...r,...e?{ref:e}:{}};if(!c){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(a);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for ContentContext @ ${o}. Please provide the \`objectiv.id\` property.`)}return g.createElement(n,{...s})}return g.createElement(dt,{id:c},g.createElement(n,{...s}))});import{makeId as ut}from"@objectiv/tracker-core";import{ExpandableContextWrapper as vt,trackVisibility as Ct,useLocationStack as _t}from"@objectiv/tracker-react-core";import p,{forwardRef as kt,useRef as bt}from"react";var rn=kt((t,e)=>{let{objectiv:{id:n,Component:i,isVisible:l=!1,normalizeId:r=!0},...a}=t,c=bt(l),s=_t(),o=ut(n??a.id,r),x={...a,...e?{ref:e}:{}};if(!o){if(globalThis.objectiv.devTools){let d=globalThis.objectiv.devTools.getLocationPath(s);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for ExpandableContext @ ${d}. Please provide the \`objectiv.id\` property.`)}return p.createElement(i,{...x})}return p.createElement(vt,{id:o},d=>((c.current&&!l||!c.current&&l)&&(c.current=l,Ct({isVisible:l,...d})),p.createElement(i,{...x})))});var T=(o=>(o.ApplicationContext="ApplicationContext",o.CookieIdContext="CookieIdContext",o.HttpContext="HttpContext",o.IdentityContext="IdentityContext",o.InputValueContext="InputValueContext",o.LocaleContext="LocaleContext",o.MarketingContext="MarketingContext",o.PathContext="PathContext",o.SessionContext="SessionContext",o))(T||{}),E=(o=>(o.ContentContext="ContentContext",o.ExpandableContext="ExpandableContext",o.InputContext="InputContext",o.LinkContext="LinkContext",o.MediaPlayerContext="MediaPlayerContext",o.NavigationContext="NavigationContext",o.OverlayContext="OverlayContext",o.PressableContext="PressableContext",o.RootLocationContext="RootLocationContext",o))(E||{}),ln=new Set([...Object.keys(E),...Object.keys(T)]);function _(){let t=globalThis.crypto;if(t){if(typeof t.randomUUID=="function")return _.crypto_RandomUUID();if(typeof t.getRandomValues=="function")return _.crypto_GetRandomValues()}return _.dateNow_MathRandom()}_.crypto_RandomUUID=()=>globalThis.crypto.randomUUID();_.crypto_GetRandomValues=()=>`${1e7}-${1e3}-${4e3}-${8e3}-${1e11}`.replace(/[018]/g,t=>{let e=parseInt(t);return(e^globalThis.crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16)});_.dateNow_MathRandom=()=>{let t=Date.now().toString(16)+Math.random().toString(16)+"0".repeat(16);return[t.substring(0,8),t.substring(8,12),"4000-8"+t.substring(13,16),t.substring(16,28)].join("-")};var U=t=>({__instance_id:_(),__global_context:!0,_types:["AbstractContext","AbstractGlobalContext","InputValueContext"],id:t.id,_type:"InputValueContext",value:t.value});import{makeId as ft}from"@objectiv/tracker-core";import{InputContextWrapper as gt,trackInputChangeEvent as pt,useLocationStack as Tt}from"@objectiv/tracker-react-core";import y,{forwardRef as Et,useState as yt}from"react";var k=Et((t,e)=>{let{objectiv:{Component:n,id:i,normalizeId:l=!0,trackValue:r=!1},...a}=t,c=Tt(),s,o,x,d,C;if(n=="select")d=i??a.id,s=t.objectiv.eventHandler??"onChange",o=t.objectiv.stateless??!1,x=a.value??a.defaultValue,C="value";else switch(t.type){case"checkbox":case"radio":let m=a.name?a.name:null,u=a.value?a.value.toString():null;d=i??a.id??m??u,s=t.objectiv.eventHandler??"onChange",o=t.objectiv.stateless??t.type==="radio",x=a.checked??a.defaultChecked,C="checked";break;default:d=i??a.id,s=t.objectiv.eventHandler??"onBlur",o=t.objectiv.stateless??!1,x=a.value??a.defaultValue,C="value"}let[X,Q]=yt(h(x));d&&l&&(d=ft(d));let B=async(m,u)=>{let A=m.target,b=t.multiple?ht(A.selectedOptions):A[C],w=h(b);if(o||X!==w){Q(w);let H={...u,globalContexts:[]};d&&r&&(Array.isArray(b)?b:[b]).map(q=>{H.globalContexts.push(U({id:d,value:h(q)}))}),pt(H)}Pt(m)&&a.onBlur&&a.onBlur(m),It(m)&&a.onChange&&a.onChange(m),Lt(m)&&a.onClick&&a.onClick(m)},j={...a,...e?{ref:e}:{}};if(!d){if(globalThis.objectiv.devTools){let m=globalThis.objectiv.devTools.getLocationPath(c),u="";typeof n=="string"&&(u=n,t.type&&(u=t.type)),u&&(u=`:${u}`),globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for InputContext${u} @ ${m}. Please provide the \`objectiv.id\` property.`)}return y.createElement(n,{...j})}return y.createElement(gt,{id:d},m=>y.createElement(n,{...j,...{[s]:u=>B(u,m)}}))}),ht=t=>{var e=[];for(let n=0;n<t.length;n++)e.push(t[n].value);return e};function Pt(t){return t.type==="blur"}function It(t){return t.type==="change"}function Lt(t){return t.type==="click"}var h=t=>typeof t=="string"?t:typeof t=="boolean"?t?"1":"0":typeof t=="number"?t.toString():Array.isArray(t)?JSON.stringify(t):"";import{makeId as St}from"@objectiv/tracker-core";import{LinkContextWrapper as Rt,makeTitleFromChildren as Mt,useLocationStack as jt}from"@objectiv/tracker-react-core";import P,{forwardRef as At}from"react";var N=At((t,e)=>{let{objectiv:{Component:n,id:i,href:l,normalizeId:r=!0,waitUntilTracked:a=!1},...c}=t,s=St(i??c.id??c.title??Mt(t.children),r),o=l??c.href,x={...c,...e?{ref:e}:{}},d=jt();if(!s||!o){if(globalThis.objectiv.devTools){let C=globalThis.objectiv.devTools.getLocationPath(d);s||globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for LinkContext @ ${C}. Please provide either the \`title\` or the \`objectiv.id\` property manually.`),o||globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid href for LinkContext @ ${C}. Please provide the \`objectiv.href\` property manually.`)}return P.createElement(n,{...x})}return P.createElement(Rt,{id:s,href:o},C=>P.createElement(n,{...x,onClick:G({trackingContext:C,anchorHref:o,waitUntilTracked:a,onClick:c.onClick})}))});import{makeId as wt}from"@objectiv/tracker-core";import{MediaPlayerContextWrapper as Ht,useLocationStack as Vt}from"@objectiv/tracker-react-core";import I,{forwardRef as Wt}from"react";var eo=Wt((t,e)=>{let{objectiv:{Component:n,id:i,normalizeId:l=!0},...r}=t,a=Vt(),c=wt(i??r.id,l),s={...r,...e?{ref:e}:{}};if(!c){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(a);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for MediaPlayerContext @ ${o}. Please provide the \`objectiv.id\` property.`)}return I.createElement(n,{...s})}return I.createElement(Ht,{id:c},I.createElement(n,{...s}))});import{makeId as Gt}from"@objectiv/tracker-core";import{OverlayContextWrapper as Dt,trackVisibility as Ot,useLocationStack as Ft}from"@objectiv/tracker-react-core";import L,{forwardRef as Ut,useRef as Nt}from"react";var lo=Ut((t,e)=>{let{objectiv:{id:n,Component:i,isVisible:l=!1,normalizeId:r=!0},...a}=t,c=Nt(l),s=Ft(),o=Gt(n??a.id,r),x={...a,...e?{ref:e}:{}};if(!o){if(globalThis.objectiv.devTools){let d=globalThis.objectiv.devTools.getLocationPath(s);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for OverlayContext @ ${d}. Please provide the \`objectiv.id\` property.`)}return L.createElement(i,{...x})}return L.createElement(Dt,{id:o},d=>((c.current&&!l||!c.current&&l)&&(c.current=l,Ot({isVisible:l,...d})),L.createElement(i,{...x})))});import{makeId as $t}from"@objectiv/tracker-core";import{NavigationContextWrapper as zt,useLocationStack as Jt}from"@objectiv/tracker-react-core";import S,{forwardRef as Xt}from"react";var $=Xt((t,e)=>{let{objectiv:{Component:n,id:i,normalizeId:l=!0},...r}=t,a=Jt(),c=$t(i??r.id,l),s={...r,...e?{ref:e}:{}};if(!c){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(a);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for NavigationContext @ ${o}. Please provide the \`objectiv.id\` property.`)}return S.createElement(n,{...s})}return S.createElement(zt,{id:c},S.createElement(n,{...s}))});import{makeId as Qt}from"@objectiv/tracker-core";import{makeTitleFromChildren as Bt,PressableContextWrapper as qt,trackPressEvent as Yt,useLocationStack as Kt}from"@objectiv/tracker-react-core";import R,{forwardRef as Zt}from"react";var z=Zt((t,e)=>{let{objectiv:{Component:n,id:i,normalizeId:l=!0},...r}=t,a=Kt(),c=Qt(i??r.id??r.title??Bt(r.children),l),s={...r,...e?{ref:e}:{}};if(!c){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(a);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for PressableContext @ ${o}. Please provide either the \`title\` or the \`objectiv.id\` property manually.`)}return R.createElement(n,{...s})}return R.createElement(qt,{id:c},o=>R.createElement(n,{...s,onClick:x=>{Yt(o),t.onClick&&t.onClick(x)}}))});import{makeId as te}from"@objectiv/tracker-core";import{RootLocationContextWrapper as ee}from"@objectiv/tracker-react-core";import M,{forwardRef as ne}from"react";var Lo=ne((t,e)=>{let{objectiv:{Component:n,id:i,normalizeId:l=!0},...r}=t,a=te(i??r.id,l),c={...r,...e?{ref:e}:{}};return a?M.createElement(ee,{id:a},M.createElement(n,{...c})):(globalThis.objectiv.devTools&&globalThis.objectiv.devTools.TrackerConsole.error("\uFF62objectiv\uFF63 Could not generate a valid id for RootLocationContext. Please provide the `objectiv.id` property."),M.createElement(n,{...c}))});import oe,{forwardRef as ae}from"react";var wo=ae(({objectiv:t,...e},n)=>oe.createElement(N,{objectiv:{...t,Component:"a"},...e,ref:n}));import ie,{forwardRef as re}from"react";var Oo=re(({objectiv:t,...e},n)=>ie.createElement(z,{objectiv:{...t,Component:"button"},...e,ref:n}));import ce,{forwardRef as le}from"react";var Jo=le(({objectiv:t,...e},n)=>ce.createElement(v,{objectiv:{...t,Component:"div"},...e,ref:n}));import se,{forwardRef as de}from"react";var Ko=de(({objectiv:t,...e},n)=>se.createElement(v,{objectiv:{...t,Component:"footer",id:(t==null?void 0:t.id)??e.id??"footer"},...e,ref:n}));import xe,{forwardRef as me}from"react";var aa=me(({objectiv:t,...e},n)=>xe.createElement(v,{objectiv:{...t,Component:"header",id:(t==null?void 0:t.id)??e.id??"header"},...e,ref:n}));import ue,{forwardRef as ve}from"react";var sa=ve(({objectiv:t,...e},n)=>(globalThis.objectiv.devTools&&(e.type==="checkbox"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 We recommend using TrackedInputCheckbox for tracking checkbox inputs."),e.type==="radio"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 We recommend using TrackedInputRadio for tracking radio inputs.")),ue.createElement(k,{objectiv:{...t,Component:"input"},...e,ref:n})));import Ce,{forwardRef as _e}from"react";var va=_e(({objectiv:t,...e},n)=>(globalThis.objectiv.devTools&&e.type&&e.type!=="checkbox"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 TrackedInputCheckbox type attribute can only be set to 'checkbox'."),Ce.createElement(k,{objectiv:{...t,Component:"input"},type:"checkbox",...e,ref:n})));import ke,{forwardRef as be}from"react";var fa=be(({objectiv:t,...e},n)=>(globalThis.objectiv.devTools&&e.type&&e.type!=="radio"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 TrackedInputRadio type attribute can only be set to 'radio'."),ke.createElement(k,{objectiv:{...t,Component:"input"},type:"radio",...e,ref:n})));import fe,{forwardRef as ge}from"react";var ha=ge(({objectiv:t,...e},n)=>fe.createElement(v,{objectiv:{...t,Component:"main"},...e,ref:n}));import pe,{forwardRef as Te}from"react";var Ma=Te(({objectiv:t,...e},n)=>pe.createElement($,{objectiv:{...t,Component:"nav"},...e,ref:n}));import Ee,{forwardRef as ye}from"react";var Wa=ye(({objectiv:t,...e},n)=>Ee.createElement(v,{objectiv:{...t,Component:"section"},...e,ref:n}));import he,{forwardRef as Pe}from"react";var Ua=Pe(({objectiv:t,...e},n)=>he.createElement(k,{objectiv:{...t,Component:"select"},...e,ref:n}));import{Tracker as Ie,TrackerPlatform as Le}from"@objectiv/tracker-core";var J=class extends Ie{constructor(e,...n){let i=e;if(i.platform=Le.REACT,!i.transport&&!e.endpoint)throw new Error("Either `transport` or `endpoint` must be provided");if(i.transport&&e.endpoint)throw new Error("Please provider either `transport` or `endpoint`, not both at same time");e.endpoint&&(i={...i,transport:F(),queue:i.queue??O(i)}),i.plugins=[...D(e),...i.plugins??[]],super(i,...n)}};globalThis.objectiv=globalThis.objectiv??{};globalThis.objectiv.versions=globalThis.objectiv.versions??new Map;globalThis.objectiv.versions.set(f.name,f.version);export{J as ReactTracker,wo as TrackedAnchor,Oo as TrackedButton,v as TrackedContentContext,Jo as TrackedDiv,rn as TrackedExpandableContext,Ko as TrackedFooter,aa as TrackedHeader,sa as TrackedInput,va as TrackedInputCheckbox,k as TrackedInputContext,fa as TrackedInputRadio,N as TrackedLinkContext,ha as TrackedMain,eo as TrackedMediaPlayerContext,Ma as TrackedNav,$ as TrackedNavigationContext,lo as TrackedOverlayContext,z as TrackedPressableContext,Lo as TrackedRootLocationContext,Wa as TrackedSection,Ua as TrackedSelect,Pt as isBlurEvent,It as isChangeEvent,Lt as isClickEvent,G as makeAnchorClickHandler,D as makeReactTrackerDefaultPluginsList,O as makeReactTrackerDefaultQueue,F as makeReactTrackerDefaultTransport,h as normalizeValue}; | ||
| //# sourceMappingURL=index.js.map |
+1
-1
@@ -1,2 +0,2 @@ | ||
| "use strict";var zt=Object.create;var W=Object.defineProperty;var Jt=Object.getOwnPropertyDescriptor;var Xt=Object.getOwnPropertyNames;var Qt=Object.getPrototypeOf,Bt=Object.prototype.hasOwnProperty;var qt=(t,e)=>{for(var n in e)W(t,n,{get:e[n],enumerable:!0})},V=(t,e,n,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let c of Xt(e))!Bt.call(t,c)&&c!==n&&W(t,c,{get:()=>e[c],enumerable:!(a=Jt(e,c))||a.enumerable});return t},l=(t,e,n)=>(V(t,e,"default"),n&&V(n,e,"default")),m=(t,e,n)=>(n=t!=null?zt(Qt(t)):{},V(e||!t||!t.__esModule?W(n,"default",{value:t,enumerable:!0}):n,t)),Yt=t=>V(W({},"__esModule",{value:!0}),t);var r={};qt(r,{ReactTracker:()=>vt,TrackedAnchor:()=>ae,TrackedButton:()=>ie,TrackedContentContext:()=>k,TrackedDiv:()=>re,TrackedExpandableContext:()=>Zt,TrackedFooter:()=>ce,TrackedHeader:()=>le,TrackedInput:()=>se,TrackedInputCheckbox:()=>de,TrackedInputContext:()=>f,TrackedInputRadio:()=>xe,TrackedLinkContext:()=>xt,TrackedMain:()=>me,TrackedMediaPlayerContext:()=>ee,TrackedNav:()=>ue,TrackedNavigationContext:()=>mt,TrackedOverlayContext:()=>ne,TrackedPressableContext:()=>ut,TrackedRootLocationContext:()=>oe,TrackedSection:()=>ve,TrackedSelect:()=>Ce,isBlurEvent:()=>Mt,isChangeEvent:()=>jt,isClickEvent:()=>At,makeAnchorClickHandler:()=>it,makeReactTrackerDefaultPluginsList:()=>rt,makeReactTrackerDefaultQueue:()=>ct,makeReactTrackerDefaultTransport:()=>lt,normalizeValue:()=>F});module.exports=Yt(r);var ot={name:"@objectiv/tracker-react",version:"0.0.27-experimental.2",description:"Objectiv React application analytics tracker for the open analytics taxonomy",license:"Apache-2.0",homepage:"https://objectiv.io",keywords:["objectiv","tracking","react","analytics","events","taxonomy"],repository:{type:"git",url:"https://github.com/objectiv/objectiv-analytics.git",directory:"tracker/trackers/react"},bugs:"https://github.com/objectiv/objectiv-analytics/issues",contributors:[{name:"Surai Di Rosa",email:"surai.dirosa@gmail.com",url:"https://github.com/sdirosa"}],main:"./dist/index.js",module:"./dist/esm/index.js",types:"./dist/index.d.ts",files:["dist"],exports:{".":{require:"./dist/index.js",import:"./dist/esm/index.js",types:"./dist/index.d.ts"}},scripts:{build:"tsup src/index.ts --format cjs,esm --legacy-output --minify --dts --sourcemap --clean","deploy:verdaccio":"npm publish",prettify:"prettier --write .",tsc:"tsc --noEmit",test:"jest --silent","test:ci":"jest --silent --ci","test:coverage":"jest --silent --coverage",depcheck:"npx depcheck"},devDependencies:{"@material-ui/core":"^4.12.4","@objectiv/developer-tools":"^0.0.27-experimental.2","@objectiv/plugin-identity-context":"^0.0.27-experimental.2","@objectiv/schema":"^0.0.27-experimental.2","@objectiv/testing-tools":"^0.0.27-experimental.2","@objectiv/transport-debug":"^0.0.27-experimental.2","@testing-library/react":"^13.3.0","@testing-library/user-event":"^14.4.3","@types/react":"^17.0.48",jest:"^28.1.3","jest-fetch-mock":"^3.0.3","jest-useragent-mock":"^0.1.1",prettier:"^2.7.1",react:"^18.2.0","react-dom":"^18.2.0","ts-jest":"^28.0.7",tsup:"^6.2.1",typescript:"^4.7.4"},dependencies:{"@objectiv/plugin-application-context":"^0.0.27-experimental.2","@objectiv/plugin-http-context":"^0.0.27-experimental.2","@objectiv/plugin-path-context-from-url":"^0.0.27-experimental.2","@objectiv/plugin-root-location-context-from-url":"^0.0.27-experimental.2","@objectiv/queue-local-storage":"^0.0.27-experimental.2","@objectiv/tracker-core":"^0.0.27-experimental.2","@objectiv/tracker-react-core":"^0.0.27-experimental.2","@objectiv/transport-fetch":"^0.0.27-experimental.2","@objectiv/transport-xhr":"^0.0.27-experimental.2"},peerDependencies:{react:">=16.8","react-dom":">=16.8"}};l(r,require("@objectiv/tracker-react-core"),module.exports);var at=require("@objectiv/tracker-react-core"),ft=Symbol("OBJECTIV_EVENT_REDISPATCHED");function it(t){return async e=>{if(!t.waitUntilTracked)(0,at.trackPressEvent)(t.trackingContext),t.onClick&&t.onClick(e);else{let n=e.nativeEvent;if(n[ft])return;e.preventDefault(),await(0,at.trackPressEvent)({...t.trackingContext,options:{waitForQueue:!0,flushQueue:!0}}),t.onClick&&t.onClick(e);let a=new n.constructor(n.type,n);a[ft]=!0,(e.currentTarget||e.target).dispatchEvent(a)}}}var gt=require("@objectiv/plugin-application-context"),pt=require("@objectiv/plugin-http-context"),Tt=require("@objectiv/plugin-path-context-from-url"),Et=require("@objectiv/plugin-root-location-context-from-url"),rt=t=>{let{trackApplicationContext:e=!0,trackHttpContext:n=!0,trackPathContextFromURL:a=!0,trackRootLocationContextFromURL:c=!0}=t,s=[];return e&&s.push(new gt.ApplicationContextPlugin),n&&s.push(new pt.HttpContextPlugin),a&&s.push(new Tt.PathContextFromURLPlugin),c&&s.push(new Et.RootLocationContextFromURLPlugin),s};var yt=require("@objectiv/queue-local-storage"),G=require("@objectiv/tracker-core"),ct=t=>{let e=typeof localStorage<"u"?yt.LocalStorageQueueStore:G.TrackerQueueMemoryStore;return new G.TrackerQueue({store:new e({trackerId:t.trackerId??t.applicationId})})};var D=require("@objectiv/tracker-core"),ht=require("@objectiv/transport-fetch"),Pt=require("@objectiv/transport-xhr"),lt=()=>new D.TrackerTransportRetry({transport:new D.TrackerTransportSwitch({transports:[new ht.FetchTransport,new Pt.XHRTransport]})});var It=require("@objectiv/tracker-core"),O=require("@objectiv/tracker-react-core"),h=m(require("react")),k=(0,h.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,normalizeId:c=!0},...s}=t,i=(0,O.useLocationStack)(),d=(0,It.makeId)(a??s.id,c),x={...s,...e?{ref:e}:{}};if(!d){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(i);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for ContentContext @ ${o}. Please provide the \`objectiv.id\` property.`)}return h.default.createElement(n,{...x})}return h.default.createElement(O.ContentContextWrapper,{id:d},h.default.createElement(n,{...x}))});var Lt=require("@objectiv/tracker-core"),P=require("@objectiv/tracker-react-core"),g=m(require("react")),Zt=(0,g.forwardRef)((t,e)=>{let{objectiv:{id:n,Component:a,isVisible:c=!1,normalizeId:s=!0},...i}=t,d=(0,g.useRef)(c),x=(0,P.useLocationStack)(),o=(0,Lt.makeId)(n??i.id,s),v={...i,...e?{ref:e}:{}};if(!o){if(globalThis.objectiv.devTools){let u=globalThis.objectiv.devTools.getLocationPath(x);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for ExpandableContext @ ${u}. Please provide the \`objectiv.id\` property.`)}return g.default.createElement(a,{...v})}return g.default.createElement(P.ExpandableContextWrapper,{id:o},u=>((d.current&&!c||!d.current&&c)&&(d.current=c,(0,P.trackVisibility)({isVisible:c,...u})),g.default.createElement(a,{...v})))});var st=(o=>(o.ApplicationContext="ApplicationContext",o.CookieIdContext="CookieIdContext",o.HttpContext="HttpContext",o.IdentityContext="IdentityContext",o.InputValueContext="InputValueContext",o.LocaleContext="LocaleContext",o.MarketingContext="MarketingContext",o.PathContext="PathContext",o.SessionContext="SessionContext",o))(st||{}),dt=(o=>(o.ContentContext="ContentContext",o.ExpandableContext="ExpandableContext",o.InputContext="InputContext",o.LinkContext="LinkContext",o.MediaPlayerContext="MediaPlayerContext",o.NavigationContext="NavigationContext",o.OverlayContext="OverlayContext",o.PressableContext="PressableContext",o.RootLocationContext="RootLocationContext",o))(dt||{}),je=new Set([...Object.keys(dt),...Object.keys(st)]);function p(){let t=globalThis.crypto;if(t){if(typeof t.randomUUID=="function")return p.crypto_RandomUUID();if(typeof t.getRandomValues=="function")return p.crypto_GetRandomValues()}return p.dateNow_MathRandom()}p.crypto_RandomUUID=()=>globalThis.crypto.randomUUID();p.crypto_GetRandomValues=()=>`${1e7}-${1e3}-${4e3}-${8e3}-${1e11}`.replace(/[018]/g,t=>{let e=parseInt(t);return(e^globalThis.crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16)});p.dateNow_MathRandom=()=>{let t=Date.now().toString(16)+Math.random().toString(16)+"0".repeat(16);return[t.substring(0,8),t.substring(8,12),"4000-8"+t.substring(13,16),t.substring(16,28)].join("-")};var St=t=>({__instance_id:p(),__global_context:!0,_types:["AbstractContext","AbstractGlobalContext","InputValueContext"],id:t.id,_type:"InputValueContext",value:t.value});var Rt=require("@objectiv/tracker-core"),I=require("@objectiv/tracker-react-core"),T=m(require("react")),f=(0,T.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,normalizeId:c=!0,trackValue:s=!1},...i}=t,d=(0,I.useLocationStack)(),x,o,v,u,b;if(n=="select")u=a??i.id,x=t.objectiv.eventHandler??"onChange",o=t.objectiv.stateless??!1,v=i.value??i.defaultValue,b="value";else switch(t.type){case"checkbox":case"radio":let C=i.name?i.name:null,_=i.value?i.value.toString():null;u=a??i.id??C??_,x=t.objectiv.eventHandler??"onChange",o=t.objectiv.stateless??t.type==="radio",v=i.checked??i.defaultChecked,b="checked";break;default:u=a??i.id,x=t.objectiv.eventHandler??"onBlur",o=t.objectiv.stateless??!1,v=i.value??i.defaultValue,b="value"}let[Ft,Ut]=(0,T.useState)(F(v));u&&c&&(u=(0,Rt.makeId)(u));let Nt=async(C,_)=>{let _t=C.target,H=t.multiple?te(_t.selectedOptions):_t[b],kt=F(H);if(o||Ft!==kt){Ut(kt);let bt={..._,globalContexts:[]};u&&s&&(Array.isArray(H)?H:[H]).map($t=>{bt.globalContexts.push(St({id:u,value:F($t)}))}),(0,I.trackInputChangeEvent)(bt)}Mt(C)&&i.onBlur&&i.onBlur(C),jt(C)&&i.onChange&&i.onChange(C),At(C)&&i.onClick&&i.onClick(C)},Ct={...i,...e?{ref:e}:{}};if(!u){if(globalThis.objectiv.devTools){let C=globalThis.objectiv.devTools.getLocationPath(d),_="";typeof n=="string"&&(_=n,t.type&&(_=t.type)),_&&(_=`:${_}`),globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for InputContext${_} @ ${C}. Please provide the \`objectiv.id\` property.`)}return T.default.createElement(n,{...Ct})}return T.default.createElement(I.InputContextWrapper,{id:u},C=>T.default.createElement(n,{...Ct,...{[x]:_=>Nt(_,C)}}))}),te=t=>{var e=[];for(let n=0;n<t.length;n++)e.push(t[n].value);return e};function Mt(t){return t.type==="blur"}function jt(t){return t.type==="change"}function At(t){return t.type==="click"}var F=t=>typeof t=="string"?t:typeof t=="boolean"?t?"1":"0":typeof t=="number"?t.toString():Array.isArray(t)?JSON.stringify(t):"";var wt=require("@objectiv/tracker-core"),S=require("@objectiv/tracker-react-core"),L=m(require("react"));var xt=(0,L.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,href:c,normalizeId:s=!0,waitUntilTracked:i=!1},...d}=t,x=(0,wt.makeId)(a??d.id??d.title??(0,S.makeTitleFromChildren)(t.children),s),o=c??d.href,v={...d,...e?{ref:e}:{}},u=(0,S.useLocationStack)();if(!x||!o){if(globalThis.objectiv.devTools){let b=globalThis.objectiv.devTools.getLocationPath(u);x||globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for LinkContext @ ${b}. Please provide either the \`title\` or the \`objectiv.id\` property manually.`),o||globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid href for LinkContext @ ${b}. Please provide the \`objectiv.href\` property manually.`)}return L.default.createElement(n,{...v})}return L.default.createElement(S.LinkContextWrapper,{id:x,href:o},b=>L.default.createElement(n,{...v,onClick:it({trackingContext:b,anchorHref:o,waitUntilTracked:i,onClick:d.onClick})}))});var Ht=require("@objectiv/tracker-core"),U=require("@objectiv/tracker-react-core"),R=m(require("react")),ee=(0,R.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,normalizeId:c=!0},...s}=t,i=(0,U.useLocationStack)(),d=(0,Ht.makeId)(a??s.id,c),x={...s,...e?{ref:e}:{}};if(!d){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(i);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for MediaPlayerContext @ ${o}. Please provide the \`objectiv.id\` property.`)}return R.default.createElement(n,{...x})}return R.default.createElement(U.MediaPlayerContextWrapper,{id:d},R.default.createElement(n,{...x}))});var Vt=require("@objectiv/tracker-core"),M=require("@objectiv/tracker-react-core"),E=m(require("react")),ne=(0,E.forwardRef)((t,e)=>{let{objectiv:{id:n,Component:a,isVisible:c=!1,normalizeId:s=!0},...i}=t,d=(0,E.useRef)(c),x=(0,M.useLocationStack)(),o=(0,Vt.makeId)(n??i.id,s),v={...i,...e?{ref:e}:{}};if(!o){if(globalThis.objectiv.devTools){let u=globalThis.objectiv.devTools.getLocationPath(x);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for OverlayContext @ ${u}. Please provide the \`objectiv.id\` property.`)}return E.default.createElement(a,{...v})}return E.default.createElement(M.OverlayContextWrapper,{id:o},u=>((d.current&&!c||!d.current&&c)&&(d.current=c,(0,M.trackVisibility)({isVisible:c,...u})),E.default.createElement(a,{...v})))});var Wt=require("@objectiv/tracker-core"),N=require("@objectiv/tracker-react-core"),j=m(require("react")),mt=(0,j.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,normalizeId:c=!0},...s}=t,i=(0,N.useLocationStack)(),d=(0,Wt.makeId)(a??s.id,c),x={...s,...e?{ref:e}:{}};if(!d){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(i);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for NavigationContext @ ${o}. Please provide the \`objectiv.id\` property.`)}return j.default.createElement(n,{...x})}return j.default.createElement(N.NavigationContextWrapper,{id:d},j.default.createElement(n,{...x}))});var Gt=require("@objectiv/tracker-core"),y=require("@objectiv/tracker-react-core"),A=m(require("react")),ut=(0,A.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,normalizeId:c=!0},...s}=t,i=(0,y.useLocationStack)(),d=(0,Gt.makeId)(a??s.id??s.title??(0,y.makeTitleFromChildren)(s.children),c),x={...s,...e?{ref:e}:{}};if(!d){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(i);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for PressableContext @ ${o}. Please provide either the \`title\` or the \`objectiv.id\` property manually.`)}return A.default.createElement(n,{...x})}return A.default.createElement(y.PressableContextWrapper,{id:d},o=>A.default.createElement(n,{...x,onClick:v=>{(0,y.trackPressEvent)(o),t.onClick&&t.onClick(v)}}))});var Dt=require("@objectiv/tracker-core"),Ot=require("@objectiv/tracker-react-core"),w=m(require("react")),oe=(0,w.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,normalizeId:c=!0},...s}=t,i=(0,Dt.makeId)(a??s.id,c),d={...s,...e?{ref:e}:{}};return i?w.default.createElement(Ot.RootLocationContextWrapper,{id:i},w.default.createElement(n,{...d})):(globalThis.objectiv.devTools&&globalThis.objectiv.devTools.TrackerConsole.error("\uFF62objectiv\uFF63 Could not generate a valid id for RootLocationContext. Please provide the `objectiv.id` property."),w.default.createElement(n,{...d}))});var $=m(require("react"));var ae=(0,$.forwardRef)(({objectiv:t,...e},n)=>$.default.createElement(xt,{objectiv:{...t,Component:"a"},...e,ref:n}));var z=m(require("react"));var ie=(0,z.forwardRef)(({objectiv:t,...e},n)=>z.default.createElement(ut,{objectiv:{...t,Component:"button"},...e,ref:n}));var J=m(require("react"));var re=(0,J.forwardRef)(({objectiv:t,...e},n)=>J.default.createElement(k,{objectiv:{...t,Component:"div"},...e,ref:n}));var X=m(require("react"));var ce=(0,X.forwardRef)(({objectiv:t,...e},n)=>X.default.createElement(k,{objectiv:{...t,Component:"footer",id:(t==null?void 0:t.id)??e.id??"footer"},...e,ref:n}));var Q=m(require("react"));var le=(0,Q.forwardRef)(({objectiv:t,...e},n)=>Q.default.createElement(k,{objectiv:{...t,Component:"header",id:(t==null?void 0:t.id)??e.id??"header"},...e,ref:n}));var B=m(require("react"));var se=(0,B.forwardRef)(({objectiv:t,...e},n)=>(globalThis.objectiv.devTools&&(e.type==="checkbox"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 We recommend using TrackedInputCheckbox for tracking checkbox inputs."),e.type==="radio"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 We recommend using TrackedInputRadio for tracking radio inputs.")),B.default.createElement(f,{objectiv:{...t,Component:"input"},...e,ref:n})));var q=m(require("react"));var de=(0,q.forwardRef)(({objectiv:t,...e},n)=>(globalThis.objectiv.devTools&&e.type&&e.type!=="checkbox"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 TrackedInputCheckbox type attribute can only be set to 'checkbox'."),q.default.createElement(f,{objectiv:{...t,Component:"input"},type:"checkbox",...e,ref:n})));var Y=m(require("react"));var xe=(0,Y.forwardRef)(({objectiv:t,...e},n)=>(globalThis.objectiv.devTools&&e.type&&e.type!=="radio"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 TrackedInputRadio type attribute can only be set to 'radio'."),Y.default.createElement(f,{objectiv:{...t,Component:"input"},type:"radio",...e,ref:n})));var K=m(require("react"));var me=(0,K.forwardRef)(({objectiv:t,...e},n)=>K.default.createElement(k,{objectiv:{...t,Component:"main"},...e,ref:n}));var Z=m(require("react"));var ue=(0,Z.forwardRef)(({objectiv:t,...e},n)=>Z.default.createElement(mt,{objectiv:{...t,Component:"nav"},...e,ref:n}));var tt=m(require("react"));var ve=(0,tt.forwardRef)(({objectiv:t,...e},n)=>tt.default.createElement(k,{objectiv:{...t,Component:"section"},...e,ref:n}));var et=m(require("react"));var Ce=(0,et.forwardRef)(({objectiv:t,...e},n)=>et.default.createElement(f,{objectiv:{...t,Component:"select"},...e,ref:n}));var nt=require("@objectiv/tracker-core");var vt=class extends nt.Tracker{constructor(e,...n){let a=e;if(a.platform=nt.TrackerPlatform.REACT,!a.transport&&!e.endpoint)throw new Error("Either `transport` or `endpoint` must be provided");if(a.transport&&e.endpoint)throw new Error("Please provider either `transport` or `endpoint`, not both at same time");e.endpoint&&(a={...a,transport:lt(),queue:a.queue??ct(a)}),a.plugins=[...rt(e),...a.plugins??[]],super(a,...n)}};globalThis.objectiv=globalThis.objectiv??{};globalThis.objectiv.versions=globalThis.objectiv.versions??new Map;globalThis.objectiv.versions.set(ot.name,ot.version);0&&(module.exports={ReactTracker,TrackedAnchor,TrackedButton,TrackedContentContext,TrackedDiv,TrackedExpandableContext,TrackedFooter,TrackedHeader,TrackedInput,TrackedInputCheckbox,TrackedInputContext,TrackedInputRadio,TrackedLinkContext,TrackedMain,TrackedMediaPlayerContext,TrackedNav,TrackedNavigationContext,TrackedOverlayContext,TrackedPressableContext,TrackedRootLocationContext,TrackedSection,TrackedSelect,isBlurEvent,isChangeEvent,isClickEvent,makeAnchorClickHandler,makeReactTrackerDefaultPluginsList,makeReactTrackerDefaultQueue,makeReactTrackerDefaultTransport,normalizeValue}); | ||
| "use strict";var zt=Object.create;var W=Object.defineProperty;var Jt=Object.getOwnPropertyDescriptor;var Xt=Object.getOwnPropertyNames;var Qt=Object.getPrototypeOf,Bt=Object.prototype.hasOwnProperty;var qt=(t,e)=>{for(var n in e)W(t,n,{get:e[n],enumerable:!0})},V=(t,e,n,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let c of Xt(e))!Bt.call(t,c)&&c!==n&&W(t,c,{get:()=>e[c],enumerable:!(a=Jt(e,c))||a.enumerable});return t},l=(t,e,n)=>(V(t,e,"default"),n&&V(n,e,"default")),m=(t,e,n)=>(n=t!=null?zt(Qt(t)):{},V(e||!t||!t.__esModule?W(n,"default",{value:t,enumerable:!0}):n,t)),Yt=t=>V(W({},"__esModule",{value:!0}),t);var r={};qt(r,{ReactTracker:()=>vt,TrackedAnchor:()=>ae,TrackedButton:()=>ie,TrackedContentContext:()=>k,TrackedDiv:()=>re,TrackedExpandableContext:()=>Zt,TrackedFooter:()=>ce,TrackedHeader:()=>le,TrackedInput:()=>se,TrackedInputCheckbox:()=>de,TrackedInputContext:()=>f,TrackedInputRadio:()=>xe,TrackedLinkContext:()=>xt,TrackedMain:()=>me,TrackedMediaPlayerContext:()=>ee,TrackedNav:()=>ue,TrackedNavigationContext:()=>mt,TrackedOverlayContext:()=>ne,TrackedPressableContext:()=>ut,TrackedRootLocationContext:()=>oe,TrackedSection:()=>ve,TrackedSelect:()=>Ce,isBlurEvent:()=>Mt,isChangeEvent:()=>jt,isClickEvent:()=>At,makeAnchorClickHandler:()=>it,makeReactTrackerDefaultPluginsList:()=>rt,makeReactTrackerDefaultQueue:()=>ct,makeReactTrackerDefaultTransport:()=>lt,normalizeValue:()=>F});module.exports=Yt(r);var ot={name:"@objectiv/tracker-react",version:"0.0.27-experimental.3",description:"Objectiv React application analytics tracker for the open analytics taxonomy",license:"Apache-2.0",homepage:"https://objectiv.io",keywords:["objectiv","tracking","react","analytics","events","taxonomy"],repository:{type:"git",url:"https://github.com/objectiv/objectiv-analytics.git",directory:"tracker/trackers/react"},bugs:"https://github.com/objectiv/objectiv-analytics/issues",contributors:[{name:"Surai Di Rosa",email:"surai.dirosa@gmail.com",url:"https://github.com/sdirosa"}],main:"./dist/index.js",module:"./dist/esm/index.js",types:"./dist/index.d.ts",files:["dist"],exports:{".":{require:"./dist/index.js",import:"./dist/esm/index.js",types:"./dist/index.d.ts"}},scripts:{build:"tsup src/index.ts --format cjs,esm --legacy-output --minify --dts --sourcemap --clean","deploy:verdaccio":"npm publish",prettify:"prettier --write .",tsc:"tsc --noEmit",test:"jest --silent","test:ci":"jest --silent --ci","test:coverage":"jest --silent --coverage",depcheck:"npx depcheck"},devDependencies:{"@material-ui/core":"^4.12.4","@objectiv/developer-tools":"^0.0.27-experimental.3","@objectiv/plugin-identity-context":"^0.0.27-experimental.3","@objectiv/schema":"^0.0.27-experimental.3","@objectiv/testing-tools":"^0.0.27-experimental.3","@objectiv/transport-debug":"^0.0.27-experimental.3","@testing-library/react":"^13.3.0","@testing-library/user-event":"^14.4.3","@types/react":"^17.0.48",jest:"^28.1.3","jest-fetch-mock":"^3.0.3","jest-useragent-mock":"^0.1.1",prettier:"^2.7.1",react:"^18.2.0","react-dom":"^18.2.0","ts-jest":"^28.0.7",tsup:"^6.2.1",typescript:"^4.7.4"},dependencies:{"@objectiv/plugin-application-context":"^0.0.27-experimental.3","@objectiv/plugin-http-context":"^0.0.27-experimental.3","@objectiv/plugin-path-context-from-url":"^0.0.27-experimental.3","@objectiv/plugin-root-location-context-from-url":"^0.0.27-experimental.3","@objectiv/queue-local-storage":"^0.0.27-experimental.3","@objectiv/tracker-core":"^0.0.27-experimental.3","@objectiv/tracker-react-core":"^0.0.27-experimental.3","@objectiv/transport-fetch":"^0.0.27-experimental.3","@objectiv/transport-xhr":"^0.0.27-experimental.3"},peerDependencies:{react:">=16.8","react-dom":">=16.8"}};l(r,require("@objectiv/tracker-react-core"),module.exports);var at=require("@objectiv/tracker-react-core"),ft=Symbol("OBJECTIV_EVENT_REDISPATCHED");function it(t){return async e=>{if(!t.waitUntilTracked)(0,at.trackPressEvent)(t.trackingContext),t.onClick&&t.onClick(e);else{let n=e.nativeEvent;if(n[ft])return;e.preventDefault(),await(0,at.trackPressEvent)({...t.trackingContext,options:{waitForQueue:!0,flushQueue:!0}}),t.onClick&&t.onClick(e);let a=new n.constructor(n.type,n);a[ft]=!0,(e.currentTarget||e.target).dispatchEvent(a)}}}var gt=require("@objectiv/plugin-application-context"),pt=require("@objectiv/plugin-http-context"),Tt=require("@objectiv/plugin-path-context-from-url"),Et=require("@objectiv/plugin-root-location-context-from-url"),rt=t=>{let{trackApplicationContext:e=!0,trackHttpContext:n=!0,trackPathContextFromURL:a=!0,trackRootLocationContextFromURL:c=!0}=t,s=[];return e&&s.push(new gt.ApplicationContextPlugin),n&&s.push(new pt.HttpContextPlugin),a&&s.push(new Tt.PathContextFromURLPlugin),c&&s.push(new Et.RootLocationContextFromURLPlugin),s};var yt=require("@objectiv/queue-local-storage"),G=require("@objectiv/tracker-core"),ct=t=>{let e=typeof localStorage<"u"?yt.LocalStorageQueueStore:G.TrackerQueueMemoryStore;return new G.TrackerQueue({store:new e({trackerId:t.trackerId??t.applicationId})})};var D=require("@objectiv/tracker-core"),ht=require("@objectiv/transport-fetch"),Pt=require("@objectiv/transport-xhr"),lt=()=>new D.TrackerTransportRetry({transport:new D.TrackerTransportSwitch({transports:[new ht.FetchTransport,new Pt.XHRTransport]})});var It=require("@objectiv/tracker-core"),O=require("@objectiv/tracker-react-core"),h=m(require("react")),k=(0,h.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,normalizeId:c=!0},...s}=t,i=(0,O.useLocationStack)(),d=(0,It.makeId)(a??s.id,c),x={...s,...e?{ref:e}:{}};if(!d){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(i);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for ContentContext @ ${o}. Please provide the \`objectiv.id\` property.`)}return h.default.createElement(n,{...x})}return h.default.createElement(O.ContentContextWrapper,{id:d},h.default.createElement(n,{...x}))});var Lt=require("@objectiv/tracker-core"),P=require("@objectiv/tracker-react-core"),g=m(require("react")),Zt=(0,g.forwardRef)((t,e)=>{let{objectiv:{id:n,Component:a,isVisible:c=!1,normalizeId:s=!0},...i}=t,d=(0,g.useRef)(c),x=(0,P.useLocationStack)(),o=(0,Lt.makeId)(n??i.id,s),v={...i,...e?{ref:e}:{}};if(!o){if(globalThis.objectiv.devTools){let u=globalThis.objectiv.devTools.getLocationPath(x);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for ExpandableContext @ ${u}. Please provide the \`objectiv.id\` property.`)}return g.default.createElement(a,{...v})}return g.default.createElement(P.ExpandableContextWrapper,{id:o},u=>((d.current&&!c||!d.current&&c)&&(d.current=c,(0,P.trackVisibility)({isVisible:c,...u})),g.default.createElement(a,{...v})))});var st=(o=>(o.ApplicationContext="ApplicationContext",o.CookieIdContext="CookieIdContext",o.HttpContext="HttpContext",o.IdentityContext="IdentityContext",o.InputValueContext="InputValueContext",o.LocaleContext="LocaleContext",o.MarketingContext="MarketingContext",o.PathContext="PathContext",o.SessionContext="SessionContext",o))(st||{}),dt=(o=>(o.ContentContext="ContentContext",o.ExpandableContext="ExpandableContext",o.InputContext="InputContext",o.LinkContext="LinkContext",o.MediaPlayerContext="MediaPlayerContext",o.NavigationContext="NavigationContext",o.OverlayContext="OverlayContext",o.PressableContext="PressableContext",o.RootLocationContext="RootLocationContext",o))(dt||{}),je=new Set([...Object.keys(dt),...Object.keys(st)]);function p(){let t=globalThis.crypto;if(t){if(typeof t.randomUUID=="function")return p.crypto_RandomUUID();if(typeof t.getRandomValues=="function")return p.crypto_GetRandomValues()}return p.dateNow_MathRandom()}p.crypto_RandomUUID=()=>globalThis.crypto.randomUUID();p.crypto_GetRandomValues=()=>`${1e7}-${1e3}-${4e3}-${8e3}-${1e11}`.replace(/[018]/g,t=>{let e=parseInt(t);return(e^globalThis.crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16)});p.dateNow_MathRandom=()=>{let t=Date.now().toString(16)+Math.random().toString(16)+"0".repeat(16);return[t.substring(0,8),t.substring(8,12),"4000-8"+t.substring(13,16),t.substring(16,28)].join("-")};var St=t=>({__instance_id:p(),__global_context:!0,_types:["AbstractContext","AbstractGlobalContext","InputValueContext"],id:t.id,_type:"InputValueContext",value:t.value});var Rt=require("@objectiv/tracker-core"),I=require("@objectiv/tracker-react-core"),T=m(require("react")),f=(0,T.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,normalizeId:c=!0,trackValue:s=!1},...i}=t,d=(0,I.useLocationStack)(),x,o,v,u,b;if(n=="select")u=a??i.id,x=t.objectiv.eventHandler??"onChange",o=t.objectiv.stateless??!1,v=i.value??i.defaultValue,b="value";else switch(t.type){case"checkbox":case"radio":let C=i.name?i.name:null,_=i.value?i.value.toString():null;u=a??i.id??C??_,x=t.objectiv.eventHandler??"onChange",o=t.objectiv.stateless??t.type==="radio",v=i.checked??i.defaultChecked,b="checked";break;default:u=a??i.id,x=t.objectiv.eventHandler??"onBlur",o=t.objectiv.stateless??!1,v=i.value??i.defaultValue,b="value"}let[Ft,Ut]=(0,T.useState)(F(v));u&&c&&(u=(0,Rt.makeId)(u));let Nt=async(C,_)=>{let _t=C.target,H=t.multiple?te(_t.selectedOptions):_t[b],kt=F(H);if(o||Ft!==kt){Ut(kt);let bt={..._,globalContexts:[]};u&&s&&(Array.isArray(H)?H:[H]).map($t=>{bt.globalContexts.push(St({id:u,value:F($t)}))}),(0,I.trackInputChangeEvent)(bt)}Mt(C)&&i.onBlur&&i.onBlur(C),jt(C)&&i.onChange&&i.onChange(C),At(C)&&i.onClick&&i.onClick(C)},Ct={...i,...e?{ref:e}:{}};if(!u){if(globalThis.objectiv.devTools){let C=globalThis.objectiv.devTools.getLocationPath(d),_="";typeof n=="string"&&(_=n,t.type&&(_=t.type)),_&&(_=`:${_}`),globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for InputContext${_} @ ${C}. Please provide the \`objectiv.id\` property.`)}return T.default.createElement(n,{...Ct})}return T.default.createElement(I.InputContextWrapper,{id:u},C=>T.default.createElement(n,{...Ct,...{[x]:_=>Nt(_,C)}}))}),te=t=>{var e=[];for(let n=0;n<t.length;n++)e.push(t[n].value);return e};function Mt(t){return t.type==="blur"}function jt(t){return t.type==="change"}function At(t){return t.type==="click"}var F=t=>typeof t=="string"?t:typeof t=="boolean"?t?"1":"0":typeof t=="number"?t.toString():Array.isArray(t)?JSON.stringify(t):"";var wt=require("@objectiv/tracker-core"),S=require("@objectiv/tracker-react-core"),L=m(require("react"));var xt=(0,L.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,href:c,normalizeId:s=!0,waitUntilTracked:i=!1},...d}=t,x=(0,wt.makeId)(a??d.id??d.title??(0,S.makeTitleFromChildren)(t.children),s),o=c??d.href,v={...d,...e?{ref:e}:{}},u=(0,S.useLocationStack)();if(!x||!o){if(globalThis.objectiv.devTools){let b=globalThis.objectiv.devTools.getLocationPath(u);x||globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for LinkContext @ ${b}. Please provide either the \`title\` or the \`objectiv.id\` property manually.`),o||globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid href for LinkContext @ ${b}. Please provide the \`objectiv.href\` property manually.`)}return L.default.createElement(n,{...v})}return L.default.createElement(S.LinkContextWrapper,{id:x,href:o},b=>L.default.createElement(n,{...v,onClick:it({trackingContext:b,anchorHref:o,waitUntilTracked:i,onClick:d.onClick})}))});var Ht=require("@objectiv/tracker-core"),U=require("@objectiv/tracker-react-core"),R=m(require("react")),ee=(0,R.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,normalizeId:c=!0},...s}=t,i=(0,U.useLocationStack)(),d=(0,Ht.makeId)(a??s.id,c),x={...s,...e?{ref:e}:{}};if(!d){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(i);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for MediaPlayerContext @ ${o}. Please provide the \`objectiv.id\` property.`)}return R.default.createElement(n,{...x})}return R.default.createElement(U.MediaPlayerContextWrapper,{id:d},R.default.createElement(n,{...x}))});var Vt=require("@objectiv/tracker-core"),M=require("@objectiv/tracker-react-core"),E=m(require("react")),ne=(0,E.forwardRef)((t,e)=>{let{objectiv:{id:n,Component:a,isVisible:c=!1,normalizeId:s=!0},...i}=t,d=(0,E.useRef)(c),x=(0,M.useLocationStack)(),o=(0,Vt.makeId)(n??i.id,s),v={...i,...e?{ref:e}:{}};if(!o){if(globalThis.objectiv.devTools){let u=globalThis.objectiv.devTools.getLocationPath(x);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for OverlayContext @ ${u}. Please provide the \`objectiv.id\` property.`)}return E.default.createElement(a,{...v})}return E.default.createElement(M.OverlayContextWrapper,{id:o},u=>((d.current&&!c||!d.current&&c)&&(d.current=c,(0,M.trackVisibility)({isVisible:c,...u})),E.default.createElement(a,{...v})))});var Wt=require("@objectiv/tracker-core"),N=require("@objectiv/tracker-react-core"),j=m(require("react")),mt=(0,j.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,normalizeId:c=!0},...s}=t,i=(0,N.useLocationStack)(),d=(0,Wt.makeId)(a??s.id,c),x={...s,...e?{ref:e}:{}};if(!d){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(i);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for NavigationContext @ ${o}. Please provide the \`objectiv.id\` property.`)}return j.default.createElement(n,{...x})}return j.default.createElement(N.NavigationContextWrapper,{id:d},j.default.createElement(n,{...x}))});var Gt=require("@objectiv/tracker-core"),y=require("@objectiv/tracker-react-core"),A=m(require("react")),ut=(0,A.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,normalizeId:c=!0},...s}=t,i=(0,y.useLocationStack)(),d=(0,Gt.makeId)(a??s.id??s.title??(0,y.makeTitleFromChildren)(s.children),c),x={...s,...e?{ref:e}:{}};if(!d){if(globalThis.objectiv.devTools){let o=globalThis.objectiv.devTools.getLocationPath(i);globalThis.objectiv.devTools.TrackerConsole.error(`\uFF62objectiv\uFF63 Could not generate a valid id for PressableContext @ ${o}. Please provide either the \`title\` or the \`objectiv.id\` property manually.`)}return A.default.createElement(n,{...x})}return A.default.createElement(y.PressableContextWrapper,{id:d},o=>A.default.createElement(n,{...x,onClick:v=>{(0,y.trackPressEvent)(o),t.onClick&&t.onClick(v)}}))});var Dt=require("@objectiv/tracker-core"),Ot=require("@objectiv/tracker-react-core"),w=m(require("react")),oe=(0,w.forwardRef)((t,e)=>{let{objectiv:{Component:n,id:a,normalizeId:c=!0},...s}=t,i=(0,Dt.makeId)(a??s.id,c),d={...s,...e?{ref:e}:{}};return i?w.default.createElement(Ot.RootLocationContextWrapper,{id:i},w.default.createElement(n,{...d})):(globalThis.objectiv.devTools&&globalThis.objectiv.devTools.TrackerConsole.error("\uFF62objectiv\uFF63 Could not generate a valid id for RootLocationContext. Please provide the `objectiv.id` property."),w.default.createElement(n,{...d}))});var $=m(require("react"));var ae=(0,$.forwardRef)(({objectiv:t,...e},n)=>$.default.createElement(xt,{objectiv:{...t,Component:"a"},...e,ref:n}));var z=m(require("react"));var ie=(0,z.forwardRef)(({objectiv:t,...e},n)=>z.default.createElement(ut,{objectiv:{...t,Component:"button"},...e,ref:n}));var J=m(require("react"));var re=(0,J.forwardRef)(({objectiv:t,...e},n)=>J.default.createElement(k,{objectiv:{...t,Component:"div"},...e,ref:n}));var X=m(require("react"));var ce=(0,X.forwardRef)(({objectiv:t,...e},n)=>X.default.createElement(k,{objectiv:{...t,Component:"footer",id:(t==null?void 0:t.id)??e.id??"footer"},...e,ref:n}));var Q=m(require("react"));var le=(0,Q.forwardRef)(({objectiv:t,...e},n)=>Q.default.createElement(k,{objectiv:{...t,Component:"header",id:(t==null?void 0:t.id)??e.id??"header"},...e,ref:n}));var B=m(require("react"));var se=(0,B.forwardRef)(({objectiv:t,...e},n)=>(globalThis.objectiv.devTools&&(e.type==="checkbox"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 We recommend using TrackedInputCheckbox for tracking checkbox inputs."),e.type==="radio"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 We recommend using TrackedInputRadio for tracking radio inputs.")),B.default.createElement(f,{objectiv:{...t,Component:"input"},...e,ref:n})));var q=m(require("react"));var de=(0,q.forwardRef)(({objectiv:t,...e},n)=>(globalThis.objectiv.devTools&&e.type&&e.type!=="checkbox"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 TrackedInputCheckbox type attribute can only be set to 'checkbox'."),q.default.createElement(f,{objectiv:{...t,Component:"input"},type:"checkbox",...e,ref:n})));var Y=m(require("react"));var xe=(0,Y.forwardRef)(({objectiv:t,...e},n)=>(globalThis.objectiv.devTools&&e.type&&e.type!=="radio"&&globalThis.objectiv.devTools.TrackerConsole.warn("\uFF62objectiv\uFF63 TrackedInputRadio type attribute can only be set to 'radio'."),Y.default.createElement(f,{objectiv:{...t,Component:"input"},type:"radio",...e,ref:n})));var K=m(require("react"));var me=(0,K.forwardRef)(({objectiv:t,...e},n)=>K.default.createElement(k,{objectiv:{...t,Component:"main"},...e,ref:n}));var Z=m(require("react"));var ue=(0,Z.forwardRef)(({objectiv:t,...e},n)=>Z.default.createElement(mt,{objectiv:{...t,Component:"nav"},...e,ref:n}));var tt=m(require("react"));var ve=(0,tt.forwardRef)(({objectiv:t,...e},n)=>tt.default.createElement(k,{objectiv:{...t,Component:"section"},...e,ref:n}));var et=m(require("react"));var Ce=(0,et.forwardRef)(({objectiv:t,...e},n)=>et.default.createElement(f,{objectiv:{...t,Component:"select"},...e,ref:n}));var nt=require("@objectiv/tracker-core");var vt=class extends nt.Tracker{constructor(e,...n){let a=e;if(a.platform=nt.TrackerPlatform.REACT,!a.transport&&!e.endpoint)throw new Error("Either `transport` or `endpoint` must be provided");if(a.transport&&e.endpoint)throw new Error("Please provider either `transport` or `endpoint`, not both at same time");e.endpoint&&(a={...a,transport:lt(),queue:a.queue??ct(a)}),a.plugins=[...rt(e),...a.plugins??[]],super(a,...n)}};globalThis.objectiv=globalThis.objectiv??{};globalThis.objectiv.versions=globalThis.objectiv.versions??new Map;globalThis.objectiv.versions.set(ot.name,ot.version);0&&(module.exports={ReactTracker,TrackedAnchor,TrackedButton,TrackedContentContext,TrackedDiv,TrackedExpandableContext,TrackedFooter,TrackedHeader,TrackedInput,TrackedInputCheckbox,TrackedInputContext,TrackedInputRadio,TrackedLinkContext,TrackedMain,TrackedMediaPlayerContext,TrackedNav,TrackedNavigationContext,TrackedOverlayContext,TrackedPressableContext,TrackedRootLocationContext,TrackedSection,TrackedSelect,isBlurEvent,isChangeEvent,isClickEvent,makeAnchorClickHandler,makeReactTrackerDefaultPluginsList,makeReactTrackerDefaultQueue,makeReactTrackerDefaultTransport,normalizeValue}); | ||
| //# sourceMappingURL=index.js.map |
+15
-15
| { | ||
| "name": "@objectiv/tracker-react", | ||
| "version": "0.0.27-experimental.2", | ||
| "version": "0.0.27-experimental.3", | ||
| "description": "Objectiv React application analytics tracker for the open analytics taxonomy", | ||
@@ -53,7 +53,7 @@ "license": "Apache-2.0", | ||
| "@material-ui/core": "^4.12.4", | ||
| "@objectiv/developer-tools": "^0.0.27-experimental.2", | ||
| "@objectiv/plugin-identity-context": "^0.0.27-experimental.2", | ||
| "@objectiv/schema": "^0.0.27-experimental.2", | ||
| "@objectiv/testing-tools": "^0.0.27-experimental.2", | ||
| "@objectiv/transport-debug": "^0.0.27-experimental.2", | ||
| "@objectiv/developer-tools": "^0.0.27-experimental.3", | ||
| "@objectiv/plugin-identity-context": "^0.0.27-experimental.3", | ||
| "@objectiv/schema": "^0.0.27-experimental.3", | ||
| "@objectiv/testing-tools": "^0.0.27-experimental.3", | ||
| "@objectiv/transport-debug": "^0.0.27-experimental.3", | ||
| "@testing-library/react": "^13.3.0", | ||
@@ -73,11 +73,11 @@ "@testing-library/user-event": "^14.4.3", | ||
| "dependencies": { | ||
| "@objectiv/plugin-application-context": "^0.0.27-experimental.2", | ||
| "@objectiv/plugin-http-context": "^0.0.27-experimental.2", | ||
| "@objectiv/plugin-path-context-from-url": "^0.0.27-experimental.2", | ||
| "@objectiv/plugin-root-location-context-from-url": "^0.0.27-experimental.2", | ||
| "@objectiv/queue-local-storage": "^0.0.27-experimental.2", | ||
| "@objectiv/tracker-core": "^0.0.27-experimental.2", | ||
| "@objectiv/tracker-react-core": "^0.0.27-experimental.2", | ||
| "@objectiv/transport-fetch": "^0.0.27-experimental.2", | ||
| "@objectiv/transport-xhr": "^0.0.27-experimental.2" | ||
| "@objectiv/plugin-application-context": "^0.0.27-experimental.3", | ||
| "@objectiv/plugin-http-context": "^0.0.27-experimental.3", | ||
| "@objectiv/plugin-path-context-from-url": "^0.0.27-experimental.3", | ||
| "@objectiv/plugin-root-location-context-from-url": "^0.0.27-experimental.3", | ||
| "@objectiv/queue-local-storage": "^0.0.27-experimental.3", | ||
| "@objectiv/tracker-core": "^0.0.27-experimental.3", | ||
| "@objectiv/tracker-react-core": "^0.0.27-experimental.3", | ||
| "@objectiv/transport-fetch": "^0.0.27-experimental.3", | ||
| "@objectiv/transport-xhr": "^0.0.27-experimental.3" | ||
| }, | ||
@@ -84,0 +84,0 @@ "peerDependencies": { |