@adopture/next
Version:
Next.js SDK for Adopture feature adoption tracking with SSR support
3 lines • 3.09 kB
JavaScript
;var i="https://api.adopture.com",n={CLIENT:{API_URL:"NEXT_PUBLIC_ADOPTURE_API_URL",API_KEY:"NEXT_PUBLIC_ADOPTURE_API_KEY",PROJECT_ID:"NEXT_PUBLIC_ADOPTURE_PROJECT_ID",ENVIRONMENT:"NEXT_PUBLIC_ADOPTURE_ENVIRONMENT",DEBUG:"NEXT_PUBLIC_ADOPTURE_DEBUG"},SERVER:{API_URL:"ADOPTURE_API_URL",API_KEY:"ADOPTURE_API_KEY",PROJECT_ID:"ADOPTURE_PROJECT_ID",ENVIRONMENT:"ADOPTURE_ENVIRONMENT",DEBUG:"ADOPTURE_DEBUG"}};function r(t,e){return typeof process<"u"&&process.env&&process.env[t]||e}function a(t={}){let e={apiUrl:r(n.CLIENT.API_URL,i),apiKey:r(n.CLIENT.API_KEY),projectId:r(n.CLIENT.PROJECT_ID),environment:r(n.CLIENT.ENVIRONMENT),debug:r(n.CLIENT.DEBUG)==="true"},o=Object.fromEntries(Object.entries(e).filter(([,s])=>s!==void 0));return {apiUrl:i,batchSize:50,flushInterval:5e3,retryAttempts:3,retryDelay:1e3,sessionTimeout:30*60*1e3,persistUser:true,autoTrackSessions:true,autoTrackLifecycle:true,lifecycleDeduplication:true,enableAutoPageTracking:true,enableWebVitals:false,enableRouteTracking:true,routeChangeTimeout:5e3,enableServerSideTracking:false,bootstrapFromServer:false,disableInDevelopment:false,debugMode:false,eventDeduplication:{enabled:true,maxCacheSize:1e3,cleanupInterval:6e4,strategies:{adoption:{window:5e3},exposure:{window:864e5},lifecycle:{window:1e4}}},exposureDeduplication:{enabled:true,sessionBased:true,storageKey:"adopture_exposures",maxStorageEntries:500,sessionTimeoutMs:24*60*60*1e3,perFeatureLimit:10,globalDailyLimit:1e3,cleanupInterval:5*60*1e3},reactDeduplication:{enabled:true,strictModeDetection:true,componentLifecycleTracking:true,preventEffectLoops:true,renderCountThreshold:3,effectIdCacheSize:1e3,debugMode:false},visibility:{enabled:true,threshold:.5,minDuration:1e3,observeOnce:true,rootMargin:"0px",trackInSession:true,autoExpose:false},...o,...t}}function u(t={}){let e={apiUrl:r(n.SERVER.API_URL,i),apiKey:r(n.SERVER.API_KEY),projectId:r(n.SERVER.PROJECT_ID),environment:r(n.SERVER.ENVIRONMENT),debug:r(n.SERVER.DEBUG)==="true"},o=Object.fromEntries(Object.entries(e).filter(([,s])=>s!==void 0));return {apiUrl:i,batchSize:50,flushInterval:5e3,retryAttempts:3,retryDelay:1e3,sessionTimeout:30*60*1e3,persistUser:true,autoTrackSessions:true,autoTrackLifecycle:true,lifecycleDeduplication:true,enableEdgeRuntime:true,requestTimeout:5e3,...o,...t}}function l(t){let e=[];return t.apiKey||e.push("API key is required"),t.apiUrl||e.push("API URL is required"),t.apiKey&&!t.apiKey.match(/^ad_(live|test)_[a-zA-Z0-9]+$/)&&e.push("Invalid API key format. Expected format: ad_live_xxx or ad_test_xxx"),{isValid:e.length===0,errors:e}}function E(t){let e=t.match(/^ad_(live|test)_(.+)$/);return e&&e[2]?e[2].substring(0,8):null}function d(t){return t.startsWith("ad_live_")?"live":t.startsWith("ad_test_")?"test":null}function p(){return r("NODE_ENV")==="development"}function c(){return r("NODE_ENV")==="production"}function f(){return typeof window<"u"}
exports.a=a;exports.b=u;exports.c=l;exports.d=E;exports.e=d;exports.f=p;exports.g=c;exports.h=f;//# sourceMappingURL=chunk-TPDXLPZA.js.map
//# sourceMappingURL=chunk-TPDXLPZA.js.map