@kameleoon/react-sdk 10.26.0 → 10.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"react-sdk.cjs.min.js","sources":["../../javascript-sdk/dist/javascript-sdk.es.min.js","../src/KameleoonContext.ts","../src/KameleoonProvider.tsx","../src/KameleoonProviderSSR.tsx","../../../node_modules/tslib/tslib.es6.js","../src/createClient.ts","../src/useKameleoonContext.ts","../src/useData.ts","../src/useFeatureFlag.ts","../src/useInitialize.ts","../src/useKameleoon.ts","../src/useLog.ts","../src/useVisitorCode.ts"],"sourcesContent":["var t=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:{};function e(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,\"default\")?t.default:t}function i(t){if(Object.prototype.hasOwnProperty.call(t,\"__esModule\"))return t;var e=t.default;if(\"function\"==typeof e){var i=function t(){var i=!1;try{i=this instanceof t}catch{}return i?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};i.prototype=e.prototype}else i={};return Object.defineProperty(i,\"__esModule\",{value:!0}),Object.keys(t).forEach(function(e){var a=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(i,e,a.get?a:{enumerable:!0,get:function(){return t[e]}})}),i}var a,r,s,n={},o={},u=(r||(r=1,function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.Err=t.Ok=void 0;var e=function(){if(a)return o;function t(t){if(!this.ok){if(\"string\"==typeof this.error||void 0===this.error)throw new Error(t||this.error||\"There was an error! No specific error message was provided.\");throw t&&(this.error.message=t),this.error}return this.data}function e(t){return this.ok?this.data:t(this.error)}function i(t){return this.ok?this.data:t}function r(t){return this.ok&&t(this.data),this}return a=1,Object.defineProperty(o,\"__esModule\",{value:!0}),o.Err=o.Ok=void 0,o.Ok=function(a){return{ok:!0,data:a,throw:t,else:e,or:i,and:r}},o.Err=function(a){return{ok:!1,error:a,throw:t,else:e,or:i,and:r}},o}();Object.defineProperty(t,\"Ok\",{enumerable:!0,get:function(){return e.Ok}}),Object.defineProperty(t,\"Err\",{enumerable:!0,get:function(){return e.Err}})}(n)),n);function d(t,e,i,a){return new(i||(i=Promise))(function(e,r){function s(t){try{o(a.next(t))}catch(t){r(t)}}function n(t){try{o(a.throw(t))}catch(t){r(t)}}function o(t){var a;t.done?e(t.value):(a=t.value,a instanceof i?a:new i(function(t){t(a)})).then(s,n)}o((a=a.apply(t,[])).next())})}\"function\"==typeof SuppressedError&&SuppressedError;class l{addEventHandler(t,e){this.eventHandlers||(this.eventHandlers=new Map),this.eventHandlers.set(t,e)}fireEvent(t,e){var i;const a=null===(i=this.eventHandlers)||void 0===i?void 0:i.get(t);a&&e&&a(e)}}!function(t){t.Evaluation=\"evaluation\",t.ConfigurationUpdate=\"configurationUpdate\"}(s||(s={}));const c={customData:[],featureFlags:[],configuration:{realTimeUpdate:!1,consentType:\"NOT_REQUIRED\",dataApiDomain:\"data.kameleoon.io\",consentOptOutBehavior:\"PARTIALLY_BLOCK\"}};var h;!function(t){t[t.NONE=0]=\"NONE\",t[t.ERROR=1]=\"ERROR\",t[t.WARNING=2]=\"WARNING\",t[t.INFO=3]=\"INFO\",t[t.DEBUG=4]=\"DEBUG\"}(h||(h={}));const g={[h.NONE]:\"NONE\",[h.ERROR]:\"ERROR\",[h.WARNING]:\"WARNING\",[h.INFO]:\"INFO\",[h.DEBUG]:\"DEBUG\"},p=(t,e)=>\"credentials\"===t?{clientId:\"****\",clientSecret:\"****\"}:e instanceof Map?Array.from(e.entries()):e;class v{static setLogger(t){v.logger=t}static setLogLevel(t){v.logLevel=t}static log({level:t,strings:e,keys:i}){if(!v.checkLevel(t))return;let a;if(\"string\"==typeof e)a=e;else if(\"function\"==typeof e)try{a=e()}catch(t){a=\"Failed to log message\"}else a=function(t,e){let i=\"\";if(e)for(let a=0;a<e.length;a++){let r=e[a];if(\"object\"==typeof r)try{i+=t[a]+JSON.stringify(r,p)}catch(e){i+=t[a]+\"{object}\"}else i+=\"string\"==typeof r?t[a]+\"'\"+r+\"'\":t[a]+r}return i+=t[t.length-1],i}(e,i);v.writeMessage(t,a)}static info(t,...e){v.log({level:h.INFO,strings:t,keys:e})}static error(t,...e){v.log({level:h.ERROR,strings:t,keys:e})}static warning(t,...e){v.log({level:h.WARNING,strings:t,keys:e})}static debug(t,...e){v.log({level:h.DEBUG,strings:t,keys:e})}static checkLevel(t){return t<=v.logLevel&&t!==h.NONE}static writeMessage(t,e){v.logger.log(t,`Kameleoon [${g[t]}]: ${e}`)}}v.logger=new class{log(t,e){switch(t){case h.DEBUG:console.debug(e);break;case h.INFO:console.info(e);break;case h.WARNING:console.warn(e);break;case h.ERROR:console.error(e)}}},v.logLevel=h.WARNING;class f{constructor(t){this._featureFlags=t.slice().sort((t,e)=>t.id-e.id)}getFeatureFlagByHash(t){let e=Math.floor(t*this._featureFlags.length);return e=Math.min(e,this._featureFlags.length-1),this._featureFlags[e]}get featureFlags(){return this._featureFlags}}var m;!function(t){t.Credentials=\"Credentials\",t.EventSourceInitialization=\"EventSourceInitialization\",t.FeatureFlagConfigurationNotFound=\"FeatureFlagConfigurationNotFound\",t.FeatureFlagVariableNotFound=\"FeatureFlagVariableNotFound\",t.FeatureFlagVariationNotFound=\"FeatureFlagVariationNotFound\",t.FeatureFlagExperimentNotFound=\"FeatureFlagExperimentNotFound\",t.FeatureFlagEnvironmentDisabled=\"FeatureFlagEnvironmentDisabled\",t.VisitAmount=\"VisitAmount\",t.VisitorCodeMaxLength=\"VisitorCodeMaxLength\",t.VisitorCodeEmpty=\"VisitorCodeEmpty\",t.StorageInitialization=\"StorageInitialization\",t.StorageWrite=\"StorageWrite\",t.StorageRead=\"StorageRead\",t.StorageParse=\"StorageParse\",t.StorageEmpty=\"StorageEmpty\",t.ClientConfiguration=\"ClientConfiguration\",t.TargetingCondition=\"TargetingCondition\",t.AmongValuesCheck=\"AmongValuesCheck\",t.RangeCheck=\"RangeCheck\",t.Initialization=\"Initialization\",t.JSONParse=\"JSONParse\",t.NumberParse=\"NumberParse\",t.VersionParse=\"VersionParse\",t.CookieParse=\"CookieParse\",t.SemanticVersionParse=\"SemanticVersionParse\",t.RemoteData=\"RemoteData\",t.MaximumRetriesReached=\"MaximumRetriesReached\"}(m||(m={}));const y={[m.CookieParse]:t=>`Couldn't parse cookie string: ${t}`,[m.JSONParse]:t=>`Couldn't parse JSON variable: ${t}`,[m.NumberParse]:t=>`It's not possible to parse value ${t} to Number`,[m.VersionParse]:t=>`It's not possible to parse a version value ${t} to Number, version should be in format x.x`,[m.SemanticVersionParse]:t=>`It's not possible to parse a version value ${t} to Number, version should be in format x.x.x`,[m.Initialization]:()=>\"It seems that the client wasn't properly initialized, make sure to run `initialize` method before invoking other methods\",[m.Credentials]:()=>\"KameleoonClient can not be created without credentials\",[m.StorageInitialization]:()=>\"There was an error while initializing React Native SDK storage, it seems that the storage library dependency wasn't installed\",[m.EventSourceInitialization]:()=>\"There was an error while initializing Real Time Update service, it seems that the event source library dependency wasn't installed\",[m.FeatureFlagConfigurationNotFound]:t=>`No feature flag with key ${t} was found.`,[m.FeatureFlagEnvironmentDisabled]:(t,e)=>`Feature flag with key ${t} is disabled in ${e} environment.`,[m.FeatureFlagVariableNotFound]:(t,e)=>`No feature flag variable with key ${t} was found for ${e} visitorCode.`,[m.FeatureFlagVariationNotFound]:(t,e)=>`No feature flag variation with key ${t} was found for ${e} visitorCode.`,[m.FeatureFlagExperimentNotFound]:(t,e)=>`No feature flag experiment with id ${t} was found for ${e} visitorCode.`,[m.VisitAmount]:()=>\"Visit amount must be a number between 1 and 25\",[m.VisitorCodeMaxLength]:()=>\"Visitor code can not be more than 255 characters long\",[m.VisitorCodeEmpty]:()=>\"Visitor code can not be empty\",[m.StorageWrite]:t=>`Couldn't update storage for kameleoonClient: ${t}`,[m.StorageRead]:t=>`No data found in storage under ${t} key`,[m.StorageEmpty]:()=>\"No data found in storage\",[m.StorageParse]:(t,e)=>`Couldn't parse ${e} storage data, the data may be corrupted. Error: ${t}`,[m.ClientConfiguration]:t=>`Couldn't retrieve client configuration from Kameleoon Api. Error: ${t}`,[m.TargetingCondition]:t=>`${t} targeting condition is not yet supported.`,[m.AmongValuesCheck]:(t,e)=>`Couldn't parse value \"${e}\": ${t}`,[m.RangeCheck]:t=>`Couldn't parse value \"${t}\" as a range, value should be in format [x: number, y: number]`,[m.RemoteData]:t=>`Couldn't retrieve data from Kameleoon server. Error: ${t}`,[m.MaximumRetriesReached]:t=>`Maximum retries reached, request failed. Reason: ${t}`};function D(t){throw new Error(`Reaching an impossible state because of ${t}`)}class C extends Error{constructor(t,e,i){switch(super(`Error: ${t}`),this.name=\"KameleoonError\",this.errorType=t,t){case m.Initialization:case m.Credentials:case m.VisitorCodeMaxLength:case m.VisitorCodeEmpty:case m.StorageInitialization:case m.VisitAmount:case m.EventSourceInitialization:case m.StorageEmpty:this.message=y[t]();break;case m.CookieParse:case m.FeatureFlagConfigurationNotFound:case m.NumberParse:case m.ClientConfiguration:case m.MaximumRetriesReached:case m.RemoteData:case m.VersionParse:case m.SemanticVersionParse:this.message=y[t](e);break;case m.FeatureFlagExperimentNotFound:case m.FeatureFlagVariationNotFound:case m.FeatureFlagVariableNotFound:this.message=y[t](e,i);break;case m.FeatureFlagEnvironmentDisabled:this.message=void 0!==i?y[t](e,i):e;break;case m.StorageWrite:case m.JSONParse:case m.StorageRead:this.message=y[t](e);break;case m.StorageParse:this.message=y[t](e,i);break;case m.TargetingCondition:this.message=y[t](e);break;case m.AmongValuesCheck:this.message=y[t](e,i);break;case m.RangeCheck:this.message=y[t](e);break;default:D(t)}}get type(){return this.errorType}}const k=\"eventType=staticData\",I=\"&browserIndex=\",w=\"&browserVersion=\",V=\"&deviceType=\",b=\"&visitorCode=\",T=\"&sdkVersion=\",S=\"&nonce=\",E=\"&id=\",O=\"&maxNumberPreviousVisits=\",x=\"&os=\",F=\"&osIndex=\",R=\"&browser=\",M=\"&mappingValue=\",A=\"visit/\",N={dataApi:\"data.kameleoon.io\",accessToken:\"api.kameleoon.com\",events:\"events.kameleoon.eu\",clientConfiguration:\"sdk-config.kameleoon.eu\"};var _;!function(t){t.Configuration=\"configuration\",t.Tracking=\"tracking\",t.RemoteData=\"remoteData\"}(_||(_={}));let P=class{constructor({urlProvider:t,packageInfo:e,externalRequester:i,requestTimeout:a,trackRetryDelay:r,useAbortController:s}){this.urlProvider=t,this.useAbortController=s,this.externalRequester=i,this.trackRetryDelay=r,this.packageInfo=e,this.timeout=a}getClientConfiguration(t,e){return d(this,0,void 0,function*(){const i=this.urlProvider.getClientConfigurationUrl(t);let a=Object.assign({\"X-Kameleoon-SDK-Type\":this.packageInfo.type,\"X-Kameleoon-SDK-Version\":this.packageInfo.version},e&&{\"If-Modified-Since\":e});try{let t={message:\"\"};for(let e=0;e<2;e++){const r=yield this.sendRequest({url:i,requestType:_.Configuration,retryCount:e,parameters:{method:\"GET\",headers:a}});if(r.ok){const t=yield r.json();this.logReceivedConfigurationResponse(r.status,i,a);const e=this.getLastModifiedHeader(r),s=t;return u.Ok({configuration:s,lastModified:e})}if(304===r.status)return this.logReceivedConfigurationResponse(r.status,i,a),u.Ok({});if(1===e){if(r.text){const e=yield r.text();t=JSON.parse(e)}v.error`Failed to get configuration response ${{status:r.status,message:t.message}} for request Method: ${\"GET\"}, Url: ${i}, Headers: ${a}`}else yield this.logRequestError({logLevel:h.WARNING,message:\"Failed to get configuration response\",response:r,method:\"GET\",url:i})}return u.Err(new C(m.MaximumRetriesReached,t.message))}catch(t){return yield this.logRequestError({logLevel:h.ERROR,message:\"Failed to get configuration response\",error:t,method:\"GET\",url:i,headers:a}),u.Err(new C(m.ClientConfiguration,t))}})}getRemoteData(t){var e;return d(this,0,void 0,function*(){const i=this.urlProvider.getRemoteDataUrl(t);try{const t=yield this.sendRequest({url:i,requestType:_.RemoteData,retryCount:0,parameters:{method:\"GET\"}});if(!t.ok){if(yield this.logRequestError({logLevel:h.ERROR,message:\"Failed to get remote data response\",response:t,method:\"GET\",url:i}),t.text){const i=yield t.text(),a=null===(e=JSON.parse(i))||void 0===e?void 0:e.message;return u.Err(new C(m.RemoteData,a))}return u.Err(new C(m.RemoteData,\"Unknown Reason - no `text()` was found for a response\"))}const a=yield t.json();return u.Ok(a)}catch(t){return yield this.logRequestError({logLevel:h.ERROR,message:\"Failed to get remote data response\",error:t,method:\"GET\",url:i}),u.Err(new C(m.RemoteData,t))}})}getVisitorData({visitorCode:t,filters:e,isMappingIdentifier:i}){var a;return d(this,0,void 0,function*(){const r=this.urlProvider.getVisitorDataUrl({visitorCode:t,filters:e,isMappingIdentifier:i});try{const t=yield this.sendRequest({url:r,requestType:_.RemoteData,retryCount:0,parameters:{method:\"GET\"}});if(!t.ok){if(yield this.logRequestError({logLevel:h.ERROR,message:\"Failed to get visitor data response\",response:t,method:\"GET\",url:r}),\"function\"==typeof t.text){const e=yield t.text();if(e){const t=null===(a=JSON.parse(e))||void 0===a?void 0:a.message;return u.Err(new C(m.RemoteData,t))}}return t.status?u.Err(new C(m.RemoteData,`No error message. Error status: ${t.status}`)):u.Err(new C(m.RemoteData,\"Unknown Reason - no text message or error status was found for a response\"))}const e=yield t.json();return u.Ok(e)}catch(t){return yield this.logRequestError({logLevel:h.ERROR,message:\"Failed to get visitor data response\",error:t,method:\"GET\",url:r}),u.Err(new C(m.RemoteData,t))}})}track(t,e){return d(this,0,void 0,function*(){const i=this.urlProvider.getTrackingUrl(e);for(let e=0;e<2;e++){let a;try{if(a=yield this.sendRequest({url:i,retryCount:e,requestType:_.Tracking,parameters:{body:t,method:\"POST\",headers:{\"Content-Type\":\"*/*\"}}}),a.ok)return u.Ok();yield this.logRequestError({logLevel:1==e?h.ERROR:h.WARNING,message:\"Failed to get tracking response\",response:a,method:\"POST\",url:i})}catch(t){yield this.logRequestError({logLevel:1==e?h.ERROR:h.WARNING,message:\"Failed to get tracking response\",error:t,method:\"POST\",url:i})}e<2&&(yield new Promise(t=>setTimeout(t,this.trackRetryDelay)))}return u.Err()})}sendRequest({url:t,requestType:e,retryCount:i,parameters:a}){return d(this,0,void 0,function*(){let r;if(this.useAbortController){const s=new AbortController,n=setTimeout(()=>s.abort(),this.timeout);r=yield this.externalRequester.sendRequest({url:t,retryCount:i,requestType:e,parameters:Object.assign(Object.assign({},a),{signal:s.signal})}),clearTimeout(n)}else r=yield this.externalRequester.sendRequest({url:t,retryCount:i,requestType:e,parameters:a});return r})}logRequestError({logLevel:t,message:e,error:i,method:a,url:r,response:s,headers:n}){return d(this,0,void 0,function*(){if(i){let s=\"Unknown error\";i instanceof Error&&(s=i.message),v.log({level:t,strings:()=>`${e} with error: ${s} for request Method: ${a}, Url: ${r}`})}else if(s&&v.checkLevel(t)){const i=yield this.parseResponse(s);v.log({level:t,strings:()=>`${e} response: Status: '${i.status}' Message: '${i.message}' for request Method: ${a}, Url: '${r}'`+(n?`, Headers: ${n}`:\"\")})}})}parseResponse(t){return d(this,0,void 0,function*(){let e=\"\";try{if(\"function\"==typeof t.text){const i=yield t.text();i&&(e=i)}}catch(t){}return{status:t.status,message:e}})}getLastModifiedHeader(t){if(t.headers){const e=\"Last-Modified\".toLowerCase();for(const[i,a]of t.headers)if(i.toLowerCase()===e)return a}}logReceivedConfigurationResponse(t,e,i){}};var U,L,B,K,z,j,G;!function(t){t.Production=\"production\",t.Staging=\"staging\",t.Development=\"development\"}(U||(U={}));class ${constructor(){this.ready=!1,this.isCustomDomain=!1,this.domains=N}initialize({domain:t,siteCode:e,packageInfo:i,environment:a}){this.siteCode=e,this.environment=a,this.packageInfo=i,this.ready=!0,this.setDomains(t)}set dataApiDomain(t){if(!this.isCustomDomain)return void(this.domains.dataApi=t);const e=t.split(\".\")[0],i=this.domains.dataApi;this.domains.dataApi=i.replace(/^[^.]+/,e)}get dataApiDomain(){return this.domains.dataApi}getClientConfigurationUrl(t){this.isInitialized();const e=`https://${this.domains.clientConfiguration}/v3/`,i=this.environment===U.Production?\"\":\"?environment=\"+encodeURIComponent(this.environment);let a=\"\";return t&&(a=i?\"&ts=\"+t:\"?ts=\"+t),e+this.siteCode+i+a}getEventSourceUrl(){return this.isInitialized(),`https://${this.domains.events}:8110/sse?siteCode=${this.siteCode}`}getRemoteDataUrl(t){return this.isInitialized(),this.getDataApiUrl(2)+this.siteCode+\"&key=\"+encodeURI(t)}getVisitorDataUrl({visitorCode:t,filters:e,isMappingIdentifier:i}){this.isInitialized();const{customData:a,previousVisitAmount:r,currentVisit:s,conversions:n,geolocation:o,experiments:u,pageViews:d,device:l,browser:c,operatingSystem:h,kcs:g,personalization:p,visitorCode:v,cbs:f}=e,m=i?M:b,y=a||v?\"&customData=\"+!0:\"\",D=n?\"&conversion=\"+!0:\"\",C=o?\"&geolocation=\"+!0:\"\",k=u?\"&experiment=\"+!0:\"\",I=d?\"&page=\"+!0:\"\",w=\"&staticData=\"+!0,V=s?\"&currentVisit=\"+!0:\"\",T=g?\"&kcs=\"+!0:\"\",S=p?\"&personalization=\"+!0:\"\",E=\"number\"!=typeof r?O+1:O+r,x=f?\"&cbs=\"+!0:\"\";return this.getDataApiUrl(1)+this.siteCode+m+t+E+y+D+C+k+I+w+V+T+S+x}getTrackingUrl(t){this.isInitialized();const{type:e,version:i}=this.packageInfo;let a=this.getDataApiUrl(0)+this.siteCode+\"&sdkName=\"+e+T+i;return t&&(a+=\"&bodyUa=\"+!0),a}getAccessTokenUrl(){this.isInitialized();const{type:t,version:e}=this.packageInfo;return`https://${this.domains.accessToken}/oauth/token?sdkName=`+t+T+e+\"&siteCode=\"+this.siteCode}isInitialized(){if(!this.ready)throw new Error(\"UrlProvider is not initialized\")}getDataApiUrl(t){if(!this.domains.dataApi)throw new Error(\"Data API domain is not set\");const e=`https://${this.domains.dataApi}`;switch(t){case 0:return`${e}/${A+\"events?siteCode=\"}`;case 1:return`${e}/${A+\"visitor?siteCode=\"}`;case 2:return`${e}/map/map?siteCode=`}}setDomains(t){t&&(this.isCustomDomain=!0,this.domains.dataApi=\"data.\"+t,this.domains.accessToken=\"api.\"+t,this.domains.events=\"events.\"+t,this.domains.clientConfiguration=\"sdk-config.\"+t)}}function q(t){return Object.fromEntries(Object.entries(t).map(([t,e])=>[e,t]))}!function(t){t.BOOLEAN=\"BOOLEAN\",t.NUMBER=\"NUMBER\",t.STRING=\"STRING\",t.JSON=\"JSON\",t.JS=\"JS\",t.CSS=\"CSS\"}(L||(L={})),function(t){t.Sent=\"sent\",t.Unsent=\"unsent\",t.Pending=\"pending\"}(B||(B={})),function(t){t.UniqueIdentifier=\"uniqueIdentifier\",t.CustomData=\"customData\",t.PageView=\"pageView\",t.GeolocationData=\"geolocation\",t.Browser=\"browser\",t.Conversion=\"conversion\",t.Cookie=\"cookie\",t.Device=\"device\",t.OperatingSystem=\"operatingSystem\",t.UserAgent=\"userAgent\",t.ApplicationVersion=\"applicationVersion\",t.VisitsData=\"visitsData\",t.KameleoonConversionScore=\"kameleoonConversionScore\",t.Personalization=\"personalization\",t.CBScores=\"cbScores\",t.TargetedSegment=\"targetedSegment\"}(K||(K={})),function(t){t.Phone=\"PHONE\",t.Tablet=\"TABLET\",t.Desktop=\"DESKTOP\"}(z||(z={})),function(t){t.WindowsPhone=\"WINDOWS_PHONE\",t.Windows=\"WINDOWS\",t.Android=\"ANDROID\",t.Linux=\"LINUX\",t.Mac=\"MAC\",t.IOS=\"IOS\"}(j||(j={})),function(t){t.Chrome=\"CHROME\",t.InternetExplorer=\"IE\",t.Firefox=\"FIREFOX\",t.Safari=\"SAFARI\",t.Opera=\"OPERA\",t.Other=\"OTHER\"}(G||(G={}));const H={[j.Windows]:0,[j.Mac]:1,[j.IOS]:2,[j.Linux]:3,[j.Android]:4,[j.WindowsPhone]:5},W=q(H),J={[G.Chrome]:0,[G.InternetExplorer]:1,[G.Firefox]:2,[G.Safari]:3,[G.Opera]:4,[G.Other]:5},X=q(J),Q=\"localhost\",Y=/^(\\.?(([a-zA-Z\\d][a-zA-Z\\d-]*[a-zA-Z\\d])|[a-zA-Z\\d]))(\\.(([a-zA-Z\\d][a-zA-Z\\d-]*[a-zA-Z\\d])|[a-zA-Z\\d])){1,126}$/;class Z{static validateVersion(t){const e=t.split(\".\").map(t=>parseInt(t,10));for(;e.length<3;)e.push(0);return e.some(t=>isNaN(t))?u.Err(new C(m.SemanticVersionParse,t)):u.Ok(e.slice(0,3))}static validateDomain(t){return t?(t=Z.checkAndTrimProtocol(t.toLowerCase()),Y.test(t)||t===Q||v.error`The top-level domain ${t} is invalid. The value has been set as provided, but it does not meet the required format for proper SDK functionality. Please check the domain for correctness.`,u.Ok(t)):u.Err()}static validateNetworkDomain(t){return t?(t=(t=Z.checkAndTrimProtocol(t.toLowerCase())).replace(/^\\.+|\\.+$/g,\"\"),Y.test(t)||t===Q?u.Ok(t):(v.error`The network domain ${t} is invalid.`,u.Err())):u.Err()}static checkAndTrimProtocol(t){const e=[\"http://\",\"https://\"];for(const i of e)if(t.startsWith(i)){t=t.substring(i.length),v.warning`The domain contains ${i}. Domain after protocol trimming: ${t}`;break}return t}}class tt{static getNonce(t){let e=\"\";for(let i=0;i<16;i++){const i=t.getRandomNumber(),a=Math.floor(16*i);e+=\"0123456789ABCDEF\".charAt(a)}return e}static checkTargeting({segment:t,visitorCode:e,targetingData:i,experimentId:a,variationConfiguration:r,clientConfiguration:s,packageInfo:n,dataManager:o}){if(!t||!t.conditionsData.firstLevel.length)return u.Ok(!0);if(!r)return u.Err(new C(m.Initialization));let d={};const l=r.getStoredVariations(e);l.ok&&(d=l.data);const c=o.getTree(t);let h,g,p;return c.hasTargetingType(\"SEGMENT\")&&(h=o.trees,p=s.segments),c.hasTargetingType(\"TARGET_FEATURE_FLAG\")&&(g=s.ruleMap),c.evaluate({variationData:d,sdkInfo:n,segments:p,ruleMap:g,trees:h,targetingData:i,experimentId:a,visitorCode:e})}static convertTimeUnit(t,e){return t/{MINUTE:6e4,HOUR:36e5,DAY:864e5,WEEK:6048e5,MONTH:2592e6}[e]}static isCustomData(t){return t.data.type===K.CustomData}static compareSemVer({version:t,compareVersion:e,operator:i}){const a=Z.validateVersion(t),r=Z.validateVersion(e);if(!a.ok)return u.Err(a.error);if(!r.ok)return u.Err(r.error);const[s,n,o]=a.data,[d,l,c]=r.data,[h,g,p]=[s===d,n===l,o===c];switch(i){case\"EQUAL\":return u.Ok(h&&g&&p);case\"GREATER\":return u.Ok(s>d||h&&n>l||h&&g&&o>c);case\"LOWER\":return u.Ok(s<d||h&&n<l||h&&g&&o<c);default:v.error`Unknown version match type: ${i}`,D(i)}}static getVariationByHash(t,e){let i=0;for(const a of t)if(i+=a.exposition,i>=e)return a;return null}}class et{static insertInOrderedListMutably({list:t,element:e,order:i}){if(t.includes(e))return;const a=t.findIndex(t=>\"asc\"===i?t>=e:t<=e);-1===a?t.push(e):t.splice(a,0,e)}static insertVisitInOrderedListMutably({list:t,visit:e}){if(t.find(t=>\"number\"==typeof t?t===e.timeStarted:t.timeStarted===e.timeStarted))return;const i=t.findIndex(t=>\"number\"==typeof t?t>=e.timeStarted:t.timeStarted>=e.timeStarted);-1===i?t.push(e):t.splice(i,0,e),t.length>26&&t.splice(0,t.length-26)}}class it{constructor({urlAddress:t,title:e,referrers:i}){this.urlAddress=t,this.title=e,this.referrers=i,this.timestamps=[{time:Date.now(),status:B.Unsent}]}get url(){var t;if(!this.urlAddress)return\"\";const e=this.title?\"&title=\"+encodeURIComponent(this.title):\"\",i=(null===(t=this.referrers)||void 0===t?void 0:t.length)?\"&referrersIndices=\"+JSON.stringify(this.referrers):\"\";return\"eventType=page&href=\"+encodeURIComponent(this.urlAddress)+e+i}get status(){const{[B.Sent]:t,[B.Unsent]:e,[B.Pending]:i}=this.timestamps.reduce((t,{status:e})=>(t[e]=!0,t),{[B.Sent]:!1,[B.Unsent]:!1,[B.Pending]:!1});return!t||e||i?i&&!e?B.Pending:B.Unsent:B.Sent}set status(t){this.timestamps=this.timestamps.map(e=>Object.assign(Object.assign({},e),{status:t}))}set _nonce(t){this.nonce=t}get data(){return{urlAddress:this.urlAddress,title:this.title,referrers:this.referrers,type:K.PageView,timestamps:this.timestamps,status:this.status,nonce:this.nonce}}static _fromRaw(t){const{urlAddress:e,title:i,referrers:a,timestamps:r,nonce:s}=t,n=new it({urlAddress:e,title:i,referrers:a});return n.timestamps=r,s&&(n._nonce=s),n}static _updateFromVisit(t,e){const i=t.pageEvents;if(i)for(const t of i){let i=[];const{time:a}=t,{href:r,title:s,referrersIndices:n}=t.data;let o;if(\"number\"==typeof n[0]&&(i=n),e.has(r)){const t=e.get(r).timestamps;o=new it({urlAddress:r,title:s,referrers:i}),o.timestamps=[...t,{time:a,status:B.Sent}]}else o=new it({urlAddress:r,title:s,referrers:i}),o.timestamps=[{time:a,status:B.Sent}];e.set(r,o)}}}let at=class t{constructor(e,i,...a){this._status=B.Unsent,this.isIdentifier=!1;const r=\"boolean\"==typeof i;\"number\"==typeof e?this._index=e:(this._name=e,this._index=t.UNDEFINED_INDEX),this.overwrite=!r||i,this.value=r?a:[i,...a].filter(t=>null!=t)}get url(){if(\"number\"!=typeof this._index)return\"\";const t=[...new Set(this.value)];let e={};t.forEach(t=>{e[t]=1});let i=\"\";return this.isIdentifier&&(i=\"&mappingIdentifier=\"+String(!0)),\"eventType=customData&index=\"+this._index+\"&valuesCountMap=\"+encodeURIComponent(JSON.stringify(e))+\"&overwrite=\"+String(this.overwrite)+i}get data(){return Object.assign(Object.assign({index:this._index},void 0!==this._name?{name:this._name}:{}),{value:this.value,type:K.CustomData,isIdentifier:this.isIdentifier,status:this.status,overwrite:this.overwrite})}get status(){return this._isMappingIdentifier?B.Unsent:this._status}static _fromRaw(e){const{index:i,value:a,status:r,isIdentifier:s,name:n,overwrite:o}=e;let u;return n?(u=new t(n,null==o||o,...a),u.index=i):u=new t(i,null==o||o,...a),u.status=r,u._isMappingIdentifier=s,u}set _isMappingIdentifier(t){this.isIdentifier=t}set status(t){this._status=t}static _updateFromVisit(e,i){var a;if(null===(a=e.customDataEvents)||void 0===a?void 0:a.length)for(let a=e.customDataEvents.length-1;a>=0;a--){const{index:r,valuesCountMap:s}=e.customDataEvents[a].data;i.has(r)||i.set(r,new t(r,...Object.keys(s)))}}set index(t){this._index=t}get index(){return this._index}get name(){return this._name}get values(){return this.value}};at.UNDEFINED_INDEX=-1;let rt=class t{constructor({goalId:t,revenue:e=0,negative:i=!1,metadata:a}){this.goalId=t,this.revenue=e,this.negative=i,this.status=B.Unsent,this.id=Math.floor(1e6*Math.random()),this._metadata=a,this.assignedTime=Date.now()}set _id(t){this.id=t}set _nonce(t){this.nonce=t}static _fromInternal(e){var{assignedTime:i}=e,a=function(t,e){var i={};for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&e.indexOf(a)<0&&(i[a]=t[a]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(t);r<a.length;r++)e.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(t,a[r])&&(i[a[r]]=t[a[r]])}return i}(e,[\"assignedTime\"]);const r=new t(a);return void 0!==i&&(r.assignedTime=i),r}get url(){var t;return\"eventType=conversion&goalId=\"+String(this.goalId)+\"&revenue=\"+String(this.revenue)+\"&negative=\"+String(this.negative)+((null===(t=this.metadata)||void 0===t?void 0:t.length)?\"&metadata=\"+this._encodeMetadata():\"\")}get _metadata(){return this.metadata}set _metadata(t){this.metadata=t}get data(){var t;return{goalId:this.goalId,nonce:this.nonce,revenue:this.revenue,negative:this.negative,type:K.Conversion,status:this.status,id:this.id,metadata:(null===(t=this.metadata)||void 0===t?void 0:t.map(t=>t.data))||void 0,assignedTime:this.assignedTime}}_encodeMetadata(){var t;return(null===(t=this.metadata)||void 0===t?void 0:t.length)?encodeURIComponent(JSON.stringify(this.metadata.reduce((t,e)=>(null==t[e.data.index]&&(t[e.data.index]=e.data.value),t),{}))):\"\"}static _fromRaw(e){const{goalId:i,revenue:a,negative:r,status:s,id:n,nonce:o,metadata:u,assignedTime:d}=e,l=t._fromInternal({goalId:i,revenue:a,negative:r,metadata:t.parseMetadata(u),assignedTime:d});return l._id=n,l.status=s,o&&(l._nonce=o),l}static parseMetadata(t){return(null==t?void 0:t.map(t=>at._fromRaw(t)))||void 0}static _listFromVisit(e){var i,a;const r=[];if(!(null===(i=e.conversionEvents)||void 0===i?void 0:i.length))return[];if(null===(a=null==e?void 0:e.conversionEvents)||void 0===a?void 0:a.length)for(const i of e.conversionEvents){const{goalId:e,revenue:a,negative:s}=i.data,n=t._fromInternal({goalId:e,revenue:a,negative:s,assignedTime:i.time});n.status=B.Sent,r.push(n)}return r}static _updateFromVisit(e,i){var a;if(null===(a=e.conversionEvents)||void 0===a?void 0:a.length)for(const a of e.conversionEvents){const{goalId:e}=a.data;if(!i.has(e)){const r=t._fromInternal({goalId:e,assignedTime:a.time});r.status=B.Sent,i.set(e,r)}}}},st=class t{constructor(t,e){this.browser=t,this.version=e,this.status=B.Unsent}get url(){if(!this.browser)return\"\";const t=this.version?w+this.version:\"\";return k+R+this.browser+I+J[this.browser]+t}get data(){return{browser:this.browser,type:K.Browser,version:this.version,status:this.status}}static _fromRaw(e){const{browser:i,version:a,status:r}=e,s=new t(i,a);return s.status=r,s}static _fromVisit(e){if(!e.staticDataEvent)return;const{browser:i,browserIndex:a,browserVersion:r}=e.staticDataEvent.data;if(i||\"number\"==typeof a){const e=null!=i?i:X[a];return r?new t(e,r):new t(e)}}},nt=class t{constructor(t){this.device=t,this.status=B.Unsent}get url(){return this.device?k+V+this.device:\"\"}get data(){return{device:this.device,type:K.Device,status:this.status}}static _fromRaw(e){const{device:i,status:a}=e,r=new t(i);return r.status=a,r}static _fromVisit(e){var i;if(null===(i=e.staticDataEvent)||void 0===i?void 0:i.data.deviceType)return new t(e.staticDataEvent.data.deviceType)}},ot=class t{constructor(t){this.operatingSystem=t,this.status=B.Unsent}get url(){return this.operatingSystem?k+x+this.operatingSystem+F+H[this.operatingSystem]:\"\"}get data(){return{operatingSystem:this.operatingSystem,type:K.OperatingSystem,status:this.status}}static _fromRaw(e){const{operatingSystem:i,status:a}=e,r=new t(i);return r.status=a,r}static _fromVisit(e){if(!e.staticDataEvent)return;const{os:i,osIndex:a}=e.staticDataEvent.data;if(i||\"number\"==typeof a){const e=null!=i?i:W[a];return new t(e)}}};class ut{constructor({country:t,region:e,city:i,postalCode:a,coordinates:r}){this.country=t,this.region=e,this.city=i,this.postalCode=a,this.coordinates=r,this.status=B.Unsent}get url(){const t=this.region?\"&region=\"+encodeURIComponent(this.region):\"\",e=this.city?\"&city=\"+encodeURIComponent(this.city):\"\",i=this.postalCode?\"&postalCode=\"+encodeURIComponent(this.postalCode):\"\",a=this.coordinates?\"&latitude=\"+this.coordinates[0]+\"&longitude=\"+this.coordinates[1]:\"\";return\"eventType=geolocation&country=\"+encodeURIComponent(this.country)+t+e+i+a}get data(){return{type:K.GeolocationData,country:this.country,region:this.region,city:this.city,postalCode:this.postalCode,coordinates:this.coordinates,status:this.status}}static _fromRaw(t){const{country:e,region:i,city:a,postalCode:r,coordinates:s,status:n}=t,o=new ut({country:e,region:i,city:a,postalCode:r,coordinates:s});return o.status=n,o}static _fromVisit(t){var e;if(!(null===(e=t.geolocationEvents)||void 0===e?void 0:e.length))return;let i;for(const e of t.geolocationEvents){const{data:t}=e;t.country&&(i=t)}const{country:a,region:r,city:s}=i||{};return a?new ut(r&&s?{country:a,region:r,city:s}:r?{country:a,region:r}:{country:a}):void 0}}class dt{constructor(t){this.status=B.Sent,this.visits=t,this._visitNumber=t.length?t.length-1:0}get visitNumber(){return this._visitNumber}get url(){return\"\"}get data(){return{visits:this.visits,visitNumber:this._visitNumber,type:K.VisitsData,status:this.status}}get isSent(){return!0}set timestamp(t){et.insertVisitInOrderedListMutably({list:this.visits,visit:t}),this._visitNumber=this.visits.length?this.visits.length-1:0}updateVisitNumber(t){t>this._visitNumber&&(this._visitNumber=t)}}class lt{constructor(t){this.kcs=t,this.status=B.Sent}get url(){return\"\"}get data(){return{kcs:this.kcs,type:K.KameleoonConversionScore,status:this.status}}}class ct{constructor(t,e,i=Date.now()){this.id=t,this.variationId=e,this.status=B.Sent,this.assignedTime=i}get url(){return\"\"}get data(){return{id:this.id,variationId:this.variationId,type:K.Personalization,status:B.Sent,assignedTime:this.assignedTime}}static _fromRaw(t){return new ct(t.id,t.variationId,t.assignedTime)}static _updateFromVisit(t,e){var i;if(null===(i=t.personalizationEvents)||void 0===i?void 0:i.length)for(const i of t.personalizationEvents){const{id:t,variationId:a}=i.data;if(!e.has(t)){const r=new ct(t,a,i.time);e.set(t,r)}}}}class ht{constructor(t){this.values=new Map(Object.entries(t).map(([t,e])=>[Number(t),this.extractVarIds(e)])),this.cbs=t,this.status=B.Sent}extractVarIds(t){const e=new Map;return Object.entries(t).forEach(([t,i])=>{e.has(i)||e.set(i,[]),e.get(i).push(Number(t))}),Array.from(e.entries()).sort(([t],[e])=>e-t).map(([,t])=>({ids:t.sort((t,e)=>t-e)}))}getValues(){return this.values}get url(){return\"\"}get data(){return{cbs:this.cbs,type:K.CBScores,status:this.status}}static _fromRaw(t){const e=new ht(t.cbs);return e.status=t.status,e}}class gt{constructor({filters:t,dataManager:e,visitorCode:i}){this.visitsData=new dt([]),this.visitorData=[],this.storageVisitorData=[],this.experimentData={},this.singleDataTypes={[K.Device]:null,[K.Browser]:null,[K.GeolocationData]:null,[K.OperatingSystem]:null,[K.KameleoonConversionScore]:null,[K.CBScores]:null},this.multipleDataTypes={[K.CustomData]:new Map,[K.PageView]:new Map,[K.Conversion]:new Map,[K.Personalization]:new Map},this.filters=t,this.dataManager=e,this.visitorDataTypes=e.getVisitorStoredDataTypes(i)}get data(){return{visitorData:this.visitorData,storageVisitorData:this.storageVisitorData,visitsData:this.visitsData,experimentData:this.experimentData}}processVisit(t){this.processBrowser(t),this.processDevice(t),this.processOperatingSystem(t),this.processGeolocationData(t),this.processCustomData(t),this.processConversion(t),this.processPageView(t),this.processExperiments(t),this.processPersonalization(t)}processMultipleDataTypes(){for(const[t,e]of Object.entries(this.multipleDataTypes))if(e.size)switch(t){case K.PageView:this.visitorData.push(...e.values()),this.storageVisitorData.push(...e.values());break;case K.Personalization:case K.Conversion:this.storageVisitorData.push(...e.values());break;case K.CustomData:e.forEach(t=>{this.visitorData.push(t),this.dataManager.storedCustomDataIndexes.has(t.data.index)||this.storageVisitorData.push(t)})}}processKcs(t){if(this.filters.kcs&&t){const e=new lt(t);this.storageVisitorData.push(e)}}processVisitsData(t){var e;this.visitsData.timestamp={timeStarted:t.timeStarted,timeLastActivity:null!==(e=t.timeLastEvent)&&void 0!==e?e:t.timeStarted}}processVisitNumber(t,e){var i,a,r;if(this.visitsData.visitNumber<=e&&(null===(i=t.staticDataEvent)||void 0===i?void 0:i.data.visitNumber)){const i=null!==(r=null===(a=t.staticDataEvent)||void 0===a?void 0:a.data.visitNumber)&&void 0!==r?r:0;this.visitsData.updateVisitNumber(i+e)}}processCbs(t){if(this.filters.cbs&&t){const e=new ht(t);this.storageVisitorData.push(e)}}processBrowser(t){if(this.filters.browser&&!this.singleDataTypes[K.Browser]){const e=st._fromVisit(t);e&&(this.visitorDataTypes.has(K.Browser)||this.storageVisitorData.push(e),this.visitorData.push(e),this.singleDataTypes[K.Browser]=e)}}processDevice(t){if(this.filters.device&&!this.singleDataTypes[K.Device]){const e=nt._fromVisit(t);e&&(this.visitorDataTypes.has(K.Device)||this.storageVisitorData.push(e),this.visitorData.push(e),this.singleDataTypes[K.Device]=e)}}processOperatingSystem(t){if(this.filters.operatingSystem&&!this.singleDataTypes[K.OperatingSystem]){const e=ot._fromVisit(t);e&&(this.visitorDataTypes.has(K.OperatingSystem)||this.storageVisitorData.push(e),this.visitorData.push(e),this.singleDataTypes[K.OperatingSystem]=e)}}processGeolocationData(t){if(this.filters.geolocation&&!this.singleDataTypes[K.GeolocationData]){const e=ut._fromVisit(t);e&&(this.visitorDataTypes.has(K.GeolocationData)||this.storageVisitorData.push(e),this.visitorData.push(e),this.singleDataTypes[K.GeolocationData]=e)}}processCustomData(t){this.filters.customData&&at._updateFromVisit(t,this.multipleDataTypes[K.CustomData])}processConversion(t){if(this.filters.conversions){rt._updateFromVisit(t,this.multipleDataTypes[K.Conversion]);const e=rt._listFromVisit(t);e.length&&this.visitorData.push(...e)}}processPageView(t){this.filters.pageViews&&it._updateFromVisit(t,this.multipleDataTypes[K.PageView])}processExperiments(t){if(this.filters.experiments&&t.experimentEvents)for(const e of t.experimentEvents){const{id:t,variationId:i}=e.data;this.experimentData[t]={variationId:i,isTargetedRule:!1,status:B.Unsent,assignedTime:e.time}}}processPersonalization(t){this.filters.personalization&&ct._updateFromVisit(t,this.multipleDataTypes[K.Personalization])}processMappingIdentifier(t){var e,i;if(!t)return;const a=null===(i=null===(e=t.customDataEvents)||void 0===e?void 0:e.find(t=>t.data.mappingIdentifier))||void 0===i?void 0:i.time;return a&&t.visitorCode?{mappingIdentifier:t.visitorCode,timestamp:a}:void 0}}class pt{static parseFeatureVariable(t){const{key:e,type:i,value:a}=t;switch(i){case L.BOOLEAN:return u.Ok({key:e,type:i,value:Boolean(a)});case L.JS:case L.CSS:case L.STRING:return u.Ok({key:e,type:i,value:String(a)});case L.NUMBER:const r=Number(a);return Number.isNaN(r)?u.Err(new C(m.NumberParse,String(a))):u.Ok({key:e,type:i,value:r});case L.JSON:try{const a=JSON.parse(String(t.value));return u.Ok({key:e,type:i,value:a})}catch(t){return u.Err(new C(m.JSONParse,t))}default:D(i)}}static parseVisitorData({data:t,filters:e,visitorCode:i,dataManager:a,variationConfiguration:r}){const s=new gt({filters:e,dataManager:a,visitorCode:i}),{currentVisit:n,previousVisits:o,kcs:u,cbs:d}=t;if(!(null==o?void 0:o.length)&&!n)return{visitorData:[],storageVisitorData:[],visitsData:new dt([])};n&&(s.processVisit(n),s.processVisitNumber(n,0)),null==o||o.forEach((t,e)=>{s.processVisit(t),s.processVisitsData(t),s.processVisitNumber(t,e+1)}),s.processKcs(u),s.processCbs(d),s.processMultipleDataTypes();const l=s.processMappingIdentifier(null!=n?n:null==o?void 0:o[0]),{visitorData:c,storageVisitorData:h,visitsData:g,experimentData:p}=s.data;return r.updateStoredVariations(i,p),{visitorData:c,storageVisitorData:h,visitsData:g,mappingIdentifier:l}}static parseRegExp(t){if(\"/\"===t[0]){const[e,i,a]=t.split(\"/\");return new RegExp(i,a)}return new RegExp(t)}static parseSecret(t){if(null===t)return\"null\";const e=t.length;if(e<=4)return\"*\".repeat(e);const i=Math.max(e-4,4);return t.substring(0,e-i)+\"*\".repeat(i)}}class vt{constructor({updateInterval:t,urlProvider:e,storage:i,requester:a,dataManager:r,eventSource:s,externalVisitorCodeManager:n,eventManager:o,externalPackageInfo:u,defaultDataFile:d}){this.updateConfigurationIntervalId=null,this.updateType=0,this.configurationData=c,this.featureFlagsData=new Map,this.isTargetedDeliveryRule=null,this.segmentsData=null,this.holdoutData=null,this.meGroupsData=new Map,this.mappedRules=null,this.mappedExperiments=null,this.usedDefaultDataFile=!1,this.refreshDataFileIfStalePromise=null,this.blockingBehaviourMode=\"PARTIALLY_BLOCK\",this.cachedDataFile=null,this.CACHE_REVALIDATE_PERIOD=54e5,this.urlProvider=e,this.requester=a,this.updateInterval=t,this.lastUpdate=new Date,this.storage=i,this.dataManager=r,this.eventManager=o,this.visitorCodeManager=n,this.eventSource=s,this.externalPackageInfo=u,this.defaultDataFile=d}initialize(){return d(this,0,void 0,function*(){if(this.readStorageData(),this.checkShouldUpdate()){const t=yield this.updateClientConfiguration();if(!t.ok)return v.error(\"Error occurred during client configuration update\"),t;if(t.data)return u.Ok()}return 1!==this.updateType||this.eventSource.isOpen?(0===this.updateType&&this.handlePollingUpdates(),u.Ok()):(this.handleRealTimeUpdates(),u.Ok())})}refreshDataFileIfStale(){if(!this.checkShouldUpdate())return Promise.resolve(u.Ok(!1));if(!this.refreshDataFileIfStalePromise){const t=this.fetchClientConfiguration().then(t=>t.ok?u.Ok(!0):t).finally(()=>{this.refreshDataFileIfStalePromise===t&&(this.refreshDataFileIfStalePromise=null)});this.refreshDataFileIfStalePromise=t}return this.refreshDataFileIfStalePromise}cleanupHandlers(){this.eventSource.isOpen&&this.eventSource.close(),this.updateConfigurationIntervalId&&clearInterval(this.updateConfigurationIntervalId)}handleRealTimeUpdates(){this.cleanupHandlers(),this.eventSource.open(t=>{this.updateClientConfiguration(t).then(e=>{e.ok&&this.eventManager.fireEvent(s.ConfigurationUpdate,{timestamp:t})})}),this.eventSource.onError(t=>{v.error`Error occurred during real-time update: ${t}. Switching to polling updates while the connection is not restored.`,this.updateType=0,this.handlePollingUpdates()})}handlePollingUpdates(){this.cleanupHandlers();try{const t=this.lastUpdate.getTime(),e=Date.now(),i=Math.max(this.updateInterval-(e-t),0);setTimeout(()=>d(this,0,void 0,function*(){yield this.updateClientConfiguration(),this.updateConfigurationIntervalId=setInterval(this.updateClientConfiguration.bind(this),this.updateInterval)}),i)}catch(t){throw this.updateConfigurationIntervalId&&clearInterval(this.updateConfigurationIntervalId),t}}get featureFlags(){return this.featureFlagsData}get dataFile(){if(this.cachedDataFile)return this.cachedDataFile;const t={featureFlags:new Map,dateModified:this.dateModified};return this.featureFlagsData.forEach((e,i)=>{const a=new Map;e.variations.forEach(t=>{var i;const r=new Map;t.variables.forEach(t=>{try{const e=pt.parseFeatureVariable(t).throw();r.set(t.key,e)}catch(i){v.error`Error parsing variable ${t.key} of feature flag ${e.featureKey}: ${i}`}}),a.set(t.key,{name:null!==(i=t.name)&&void 0!==i?i:\"\",key:t.key,id:null,experimentId:null,variables:r})});const r=e.rules.map(t=>{const e=new Map;return t.variationByExposition.forEach(i=>{const r=a.get(i.variationKey);r&&e.set(r.key,{name:r.name,key:r.key,id:i.variationId,experimentId:t.experimentId,variables:r.variables})}),{variations:e}});t.featureFlags.set(i,{variations:a,environmentEnabled:e.environmentEnabled,rules:r,defaultVariationKey:e.defaultVariationKey})}),this.cachedDataFile=t,t}get configuration(){return this.configurationData.configuration}get dateModified(){var t;return null!==(t=this.configurationData.dateModified)&&void 0!==t?t:0}get segments(){if(this.segmentsData)return this.segmentsData;const t=new Map;return this.featureFlagsData.forEach(e=>{e.rules.forEach(e=>{e.segment&&!t.has(e.segment.id.toString())&&t.set(e.segment.id.toString(),e.segment)})}),this.segmentsData=t,t}get ruleMap(){var t;if(null===(t=this.mappedRules)||void 0===t?void 0:t.size)return this.mappedRules;const e=new Map;for(const t of this.featureFlags.values())for(const i of t.rules){const{id:a,experimentId:r,variationByExposition:s}=i,n=new Map;s.forEach(({variationKey:t,variationId:e})=>{\"number\"==typeof e&&n.set(t,e)}),e.set(a,{featureId:t.id,experimentId:r,variations:n})}return this.mappedRules=e,e}get experimentMap(){var t;if(null===(t=this.mappedExperiments)||void 0===t?void 0:t.size)return this.mappedExperiments;const e=new Map;for(const t of this.featureFlags.values()){const i=this.hasFeatureFlagVariableJsCss(t);for(const a of t.rules){const{experimentId:t,variationByExposition:r}=a,s=new Map;r.forEach(({variationKey:t,variationId:e})=>{\"number\"==typeof e&&s.set(t,e)}),e.set(t,{type:a.type,variations:s,hasJsCssVariables:i})}}return this.mappedExperiments=e,e}hasFeatureFlagVariableJsCss(t){var e;return Boolean(null===(e=t.variations[0])||void 0===e?void 0:e.variables.some(({type:t})=>t===L.JS||t===L.CSS))}get holdout(){return this.holdoutData}get meGroups(){return this.meGroupsData}get isConsentRequired(){return\"REQUIRED\"===this.configuration.consentType}get consentBlockingBehaviour(){return this.blockingBehaviourMode}get hasAnyTargetedDeliveryRule(){if(null!==this.isTargetedDeliveryRule)return this.isTargetedDeliveryRule;for(const t of this.featureFlags.values())if(t.environmentEnabled&&t.rules.some(t=>\"TARGETED_DELIVERY\"===t.type))return!0;return!1}checkShouldUpdate(){const{configuration:t}=this.configurationData;return this.updateType=t.realTimeUpdate?1:0,!this.featureFlags.size||this.lastUpdate.getTime()<Date.now()-this.updateInterval}readStorageData(){var t,e,i;const a=this.storage.read();if(a.ok){let{data:r,lastUpdate:s,lastModified:n,requestTime:o}=a.data,u=!1;if(this.defaultDataFile)try{const a=JSON.parse(this.defaultDataFile);this.defaultDataFile=void 0,this.usedDefaultDataFile=!0;const s=null!==(e=null!==(t=r.dateModified)&&void 0!==t?t:o)&&void 0!==e?e:-1,n=null!==(i=a.dateModified)&&void 0!==i?i:0;(!o||n>s)&&(r=a,u=!0)}catch(t){v.error`Error parsing default data file: ${String(t)}`}this.updateConfigurationData(r,u),this.lastUpdate=this.usedDefaultDataFile?new Date(0):new Date(Date.parse(s)),this.lastModified=n,this.requestTime=o}}updateClientConfiguration(t){return d(this,0,void 0,function*(){const e=Date.now();return this.usedDefaultDataFile||this.requestTime&&!t&&!this.externalPackageInfo.isServer&&e-this.requestTime<=this.CACHE_REVALIDATE_PERIOD?(this.updateClientConfigurationInBackground(),u.Ok(!1)):this.fetchClientConfiguration(t)})}fetchClientConfiguration(t){return d(this,0,void 0,function*(){const e=yield this.requester.getClientConfiguration(t,this.lastModified);return this.applyNewConfigurationDataFromResponse(e)})}updateClientConfigurationInBackground(){setTimeout(()=>d(this,0,void 0,function*(){const t=yield this.requester.getClientConfiguration(void 0,this.lastModified);yield this.applyNewConfigurationDataFromResponse(t)}),0)}applyNewConfigurationDataFromResponse(t){var e,i;return d(this,0,void 0,function*(){if(this.requestTime=Date.now(),!t.ok)return this.featureFlags.size?(v.error(\"Error occurred while updating configuration. Existing configuration will be used as a fallback.\"),u.Ok(!0)):t;if(void 0===t.data.configuration)return this.updateStorageData(),u.Ok(!1);const a=t.data.configuration;this.updateConfigurationData(a,!0),this.dataManager.clearTrees(),null===(e=this.mappedRules)||void 0===e||e.clear(),null===(i=this.experimentMap)||void 0===i||i.clear(),this.isTargetedDeliveryRule=null,t.data.lastModified&&(this.lastModified=t.data.lastModified);const r=this.updateStorageData();if(!r.ok)return r;const s=a.configuration.realTimeUpdate?1:0,n=s!==this.updateType;return n&&(this.updateType=s,yield this.initialize()),this.blockingBehaviourMode=this.consentBlockingBehaviourFromStr(a.configuration.consentOptOutBehavior),u.Ok(n)})}updateConfigurationData(t,e=!0){const{configuration:i,featureFlags:a,customData:r,holdout:s,segments:n,dateModified:o}=t;let u=n?new Map(n.map(t=>[t.id.toString(),t])):null,d=null;if(e&&(null==r?void 0:r.length)){d=new Map;for(let t of r){if(void 0===t.id){d=null;break}d.set(t.id,t.index)}}const l=new Map;for(const t of a)l.set(t.featureKey,t),e&&(this.updateFeatureFlagSegments(t,u),this.updateFeatureFlagBucketingCustomDataId(t,d));this.featureFlagsData=l,(null==r?void 0:r.length)&&(this.dataManager.customDataIndexes=r),this.meGroupsData=this.makeMEGroups(a),this.holdoutData=null!=s?s:null,this.configurationData={configuration:i,customData:r,holdout:s,dateModified:o},this.urlProvider.dataApiDomain=t.configuration.dataApiDomain,this.updateConsentRequired(),this.segmentsData=u,this.cachedDataFile=null}updateFeatureFlagSegments(t,e){null!==e&&t.rules.forEach(t=>{var i;const a=t.segmentId;t.segment=null==a?null:null!==(i=e.get(a.toString()))&&void 0!==i?i:null})}updateFeatureFlagBucketingCustomDataId(t,e){const i=t.bucketingCustomDataId;null!=i&&e&&(t.bucketingCustomDataIndex=e.get(i))}makeMEGroups(t){const e=new Map;t.forEach(t=>{const i=t.mutuallyExclusiveGroup;if(i){let a=e.get(i);a?a.push(t):e.set(i,[t])}});const i=new Map;return e.forEach((t,e)=>{i.set(e,new f(t))}),i}updateStorageData(){this.lastUpdate=new Date;const t={data:Object.assign(Object.assign({},this.configurationData),{featureFlags:Array.from(this.featureFlags.values()),segments:this.segmentsData?Array.from(this.segmentsData.values()):void 0}),lastUpdate:this.lastUpdate.toString(),lastModified:this.lastModified,requestTime:this.requestTime};return this.storage.write(t)}updateConsentRequired(){this.visitorCodeManager.consentRequired=this.isConsentRequired&&!this.hasAnyTargetedDeliveryRule}consentBlockingBehaviourFromStr(t){return\"PARTIALLY_BLOCK\"===t||\"FULLY_BLOCK\"===t?t:(v.error(`Unexpected consent blocking type '${t}'`),\"PARTIALLY_BLOCK\")}}var ft;class mt{constructor(t,e){this.siteCode=t,this.environment=this.getEnvironment(e),this.networkDomain=this.getNetworkDomain(e),this.updateInterval=this.getUpdateInterval(e),this.cleanupInterval=this.getCleanupInterval(e),this.requestTimeout=this.getRequestTimeout(e),this.trackingInterval=this.getTrackingInterval(e),this.trackRetryDelay=5e3}getTrackingInterval(t){const{MIN_TRACKING_INTERVAL_MS:e,MAX_TRACKING_INTERVAL_MS:i,DEFAULT_TRACKING_INTERVAL_MS:a}=mt;return\"number\"==typeof(null==t?void 0:t.trackingInterval)?t.trackingInterval<e?(v.warning(`Tracking interval must not be shorter than ${e} ms. Minimum possible interval was applied.`),e):t.trackingInterval>i?(v.warning(`Tracking interval must not be longer than ${i} ms. Maximum possible interval was applied.`),i):t.trackingInterval:a}getEnvironment(t){return(null==t?void 0:t.environment)?t.environment:U.Production}getCleanupInterval(t){return\"number\"==typeof(null==t?void 0:t.targetingDataCleanupInterval)?t.targetingDataCleanupInterval<1?(v.warning(\"Targeting data cleanup interval must not be shorter than 1 minute. Minimum possible interval was applied.\"),6e4):6e4*t.targetingDataCleanupInterval:null}getUpdateInterval(t){return\"number\"==typeof(null==t?void 0:t.updateInterval)?t.updateInterval<1?(v.warning(\"Update interval must not be shorter than 1 minute. Minimum possible interval was applied.\"),6e4):6e4*t.updateInterval:36e5}getNetworkDomain(t){const e=Z.validateNetworkDomain(null==t?void 0:t.networkDomain);return e.ok?e.data:null}getRequestTimeout(t){return\"number\"==typeof(null==t?void 0:t.requestTimeout)?t.requestTimeout:1e4}get settings(){return{trackingInterval:this.trackingInterval,trackRetryDelay:this.trackRetryDelay,cleanupInterval:this.cleanupInterval,updateInterval:this.updateInterval,requestTimeout:this.requestTimeout,networkDomain:this.networkDomain,environment:this.environment,siteCode:this.siteCode}}}ft=mt,mt.DEFAULT_TRACKING_INTERVAL_MS=1e3,mt.MIN_TRACKING_INTERVAL_MS=ft.DEFAULT_TRACKING_INTERVAL_MS,mt.MAX_TRACKING_INTERVAL_MS=5e3;const yt=\"off\",Dt=\"warehouseAudiences\",Ct={NODEJS:\"NODEJS\",REACT:\"REACT\",JAVASCRIPT:\"JAVASCRIPT\"},kt={previousVisitAmount:1,currentVisit:!0,customData:!0,pageViews:!1,geolocation:!1,device:!1,browser:!1,operatingSystem:!1,conversions:!1,experiments:!1,kcs:!1,visitorCode:!0,personalization:!1};let It=class t{constructor(t){this.cookie=t,this.status=B.Sent}static fromString(e){if(!e)return new t([]);const i=e.split(\";\").map(t=>{const[i,a]=t.trim().split(\"=\");return i?{key:i,value:a}:(v.warning`Cookie string has an empty key: ${e}`,null)}).filter(t=>null!==t);return new t(i)}get url(){return\"\"}get data(){return{cookie:this.cookie,type:K.Cookie,status:this.status}}};class wt{constructor(t){this.value=t,this.status=B.Sent}get url(){return\"\"}get data(){return{value:this.value,type:K.UserAgent,status:this.status}}}class Vt{constructor(t){this._value=t,this.status=B.Sent}get url(){return\"\"}get data(){return{value:this._value,type:K.UniqueIdentifier,status:B.Sent}}static _fromRaw(t){return new Vt(t.value)}}let bt=class{constructor(t){this.version=t,this.status=B.Sent}get url(){return\"\"}get data(){return{version:this.version,type:K.ApplicationVersion,status:this.status}}};class Tt{constructor({browserType:t,visitNumber:e,timeSincePreviousVisit:i,os:a,deviceType:r,browserVersion:s}){this.browserType=t,this.visitNumber=e,this.timeSincePreviousVisit=i,this.os=a,this.deviceType=r,this.browserVersion=s}get url(){const t=this.browserVersion?w+this.browserVersion:\"\",e=this.browserType?R+this.browserType:\"\",i=this.browserType?I+J[this.browserType]:\"\",a=this.os?x+this.os:\"\",r=this.os?F+H[this.os]:\"\",s=this.deviceType?V+this.deviceType:\"\",n=void 0!==this.visitNumber?\"&visitNumber=\"+this.visitNumber:\"\",o=void 0!==this.timeSincePreviousVisit?\"&timeSincePreviousVisit=\"+this.timeSincePreviousVisit:\"\";return k+e+i+t+n+o+a+r+s}}class St{static setConditionFactoryInstance(t){this.conditionFactoryInstance=t}static createCondition(t){return this.conditionFactoryInstance.createCondition(t)}}class Et{constructor(t,e,i){var a;if(this.inverseResult=!1,this.isOperator(t))this.nodeValue=t;else{const e=St.createCondition(t);this.inverseResult=!(null===(a=t.isInclude)||void 0===a||a),e.ok?this.nodeValue=e.data:this.nodeError=e.error}this.leftChild=e,this.rightChild=i}get value(){return this.nodeValue}get error(){return this.nodeError}get left(){return this.leftChild}get right(){return this.rightChild}get inverse(){return this.inverseResult}isOperator(t){return\"AND\"===t||\"OR\"===t}}class Ot{constructor(t){this.error=null,this.targetingTypes=new Set;const{nestedConditions:e,topLevelOperators:i}=this.flattenSegment(t),a=e.map(({conditions:t,operators:e})=>{const i=t.map(t=>(this.targetingTypes.add(t.targetingType),new Et(t)));return this.buildTree(i,e)});this.tree=this.buildTree(a,i)}evaluate(t){const e=this.evaluateNode(this.tree,t);return this.error?u.Err(this.error):u.Ok(e)}hasTargetingType(t){return this.targetingTypes.has(t)}evaluateNode(t,e){if(this.isLeafNode(t)){if(t.error)return t.error.type===m.TargetingCondition;const i=t.value.evaluate(e);return i.ok?t.inverse?!i.data:i.data:(this.error=i.error,!1)}if(this.isNonLeafNode(t))switch(t.value){case\"AND\":return this.evaluateNode(t.left,e)&&this.evaluateNode(t.right,e);case\"OR\":return this.evaluateNode(t.left,e)||this.evaluateNode(t.right,e)}return!1}isLeafNode(t){return!Boolean(t.left&&t.right)}isNonLeafNode(t){return Boolean(t.left&&t.right&&(\"OR\"===t.value||\"AND\"===t.value))}buildTree(t,e){if(1===t.length)return t[0];for(const i of e){const e=t.shift(),a=t.shift(),r=new Et(i,e,a);t.unshift(r)}return t[0]}flattenSegment(t){const{firstLevel:e,firstLevelOrOperators:i}=t.conditionsData,a=[];return e.forEach(t=>{const{conditions:e,orOperators:i}=t,r={operators:this.convertOperators(i),conditions:e};a.push(r)}),{topLevelOperators:this.convertOperators(i),nestedConditions:a}}convertOperators(t){return t.map(t=>t?\"OR\":\"AND\")}}function xt({targetingData:t,sdkInfo:e},i,a){var r;const s=null==t?void 0:t[K.VisitsData];if(!(null===(r=null==s?void 0:s.visits)||void 0===r?void 0:r.length)||null==i&&null==a)return 0;const{visits:n}=s;let o=1;\"CURRENT_VISIT\"!==i&&(o=null!=a?e.isServer?a-1:a:n.length);const u=n[Math.max(0,n.length-o)];return\"number\"==typeof u?u:u.timeStarted}class Ft{constructor({campaignType:t,visitCount:e,visitScope:i}){this.campaignType=t,this.visitCount=e,this.visitScope=i}evaluate(t){return u.Ok(this.checkCondition(t))}checkCondition(t){const e=xt(t,this.visitScope,this.visitCount);switch(this.campaignType){case\"EXPERIMENT\":return this.checkExperiment(t,e);case\"PERSONALIZATION\":return this.checkPersonalization(t,e);case\"ANY\":return this.checkPersonalization(t,e)&&this.checkExperiment(t,e);default:return!1}}checkExperiment(t,e){const i=Object.keys(t.variationData);let a=0,r=null;for(const s of i){const i=t.variationData[s];if((!(null==i?void 0:i.assignedTime)||i.assignedTime>=e)&&(a++,r=s,a>1))break}return 0===a||1===a&&null!==t.experimentId&&r===String(t.experimentId)}checkPersonalization(t,e){var i;const a=Object.values((null===(i=t.targetingData)||void 0===i?void 0:i.personalization)||{});for(const t of a)if((null==t?void 0:t.assignedTime)&&t.assignedTime>=e)return!1;return!0}}class Rt{constructor({device:t}){this.device=t}evaluate({targetingData:t}){const e=null==t?void 0:t[K.Device];if(e){const{device:t}=e;return u.Ok(t===this.device)}return u.Ok(!1)}}class Mt{constructor({browser:t,version:e,versionMatchType:i}){this.browser=t,this.version=e,this.versionMatchType=i}evaluate({targetingData:t}){const e=null==t?void 0:t[K.Browser];if(e){const t=this.checkCondition(e);return this.error?u.Err(this.error):u.Ok(t)}return u.Ok(!1)}checkCondition(t){const{browser:e,version:i}=t;if(\"string\"!=typeof this.browser)return!1;if(!this.version)return e===this.browser;if(!this.versionMatchType||\"number\"!=typeof i)return!1;const a=parseFloat(this.version);switch(isNaN(a)&&(v.error`Failed to parse version: ${this.version} in Browser condition`,this.error=new C(m.VersionParse,this.version)),this.versionMatchType){case\"EQUAL\":return e===this.browser&&i===a;case\"GREATER\":return e===this.browser&&i>a;case\"LOWER\":return e===this.browser&&i<a;default:v.error`Unexpected comparing operation for Browser condition: ${this.versionMatchType}`,D(this.versionMatchType)}}}class At{constructor({goalId:t,visitCount:e,visitScope:i}){this.goalId=t,this.visitCount=e,this.visitScope=i}evaluate(t){const{targetingData:e}=t,i=null==e?void 0:e[K.Conversion];if(!i)return u.Ok(!1);const a=Object.values(i);if(!a.length)return u.Ok(!1);const r=xt(t,this.visitScope,this.visitCount);return u.Ok(a.some(t=>!!t&&(null==this.goalId||t.goalId===this.goalId)&&(!t.assignedTime||t.assignedTime>=r)))}}class Nt{constructor({customDataIndex:t,valueMatchType:e,value:i,range:a}){this.customDataIndex=t?Number(t):-1,this.matchType=e,this.conditionValue=i,this.range=a}evaluate({targetingData:t}){var e;const i=null===(e=null==t?void 0:t[K.CustomData])||void 0===e?void 0:e[this.customDataIndex];if(\"UNDEFINED\"===this.matchType)return u.Ok(!i);if(i){const{value:t}=i,e=this.checkCondition(t);return this.error?u.Err(this.error):u.Ok(e)}return u.Ok(!1)}checkCondition(t){if(\"string\"!=typeof this.conditionValue&&\"TRUE\"!==this.matchType&&\"FALSE\"!==this.matchType&&\"RANGE\"!==this.matchType)return v.error`Unexpected condition value for CustomData condition: ${this.conditionValue}`,!1;const e=this.conditionValue;if(\"AMONG_VALUES\"===this.matchType){const i=this.parseArray(e);if(!i.ok)return this.error=i.error,!1;const a=new Set(i.data);return Array.isArray(t)?t.some(t=>a.has(t)):i.data.includes(t)}if(\"RANGE\"===this.matchType){const e=this.parseRange(this.range);if(!e.ok)return this.error=e.error,!1;const[i,a]=e.data,r=t=>t>=i&&t<=a;return Array.isArray(t)?t.some(t=>r(Number(t))):r(Number(t))}if(Array.isArray(t))return t.some(t=>this.checkCondition(t));switch(this.matchType){case\"CONTAINS\":return t.includes(e);case\"EXACT\":return t===this.conditionValue;case\"REGULAR_EXPRESSION\":return pt.parseRegExp(e).test(t);case\"LOWER\":return Number(t)<Number(this.conditionValue);case\"EQUAL\":return Number(t)===Number(this.conditionValue);case\"GREATER\":return Number(t)>Number(this.conditionValue);case\"TRUE\":return\"true\"===t.toLowerCase();case\"FALSE\":return\"false\"===t.toLowerCase();default:return v.error`Unexpected comparing operation for CustomData condition: ${this.matchType}`,!1}}parseArray(t){try{const e=JSON.parse(t);if(Array.isArray(e))return u.Ok(e)}catch(e){return v.error`Failed to parse array: ${t} in CustomData condition`,u.Err(new C(m.AmongValuesCheck,e,t))}return u.Ok([])}parseRange(t){return t&&2===t.length?u.Ok(t):(v.error`Failed to parse range: ${t} in CustomData condition`,u.Err(new C(m.RangeCheck,t)))}}class _t{static getLatest(t){return Object.values(t).reduce((t,e)=>t.timestamps[t.timestamps.length-1].time>e.timestamps[e.timestamps.length-1].time?t:e)}}class Pt{constructor({matchType:t,title:e}){this.matchType=t,this.conditionValue=e}evaluate({targetingData:t}){const e=null==t?void 0:t[K.PageView];if(!e)return u.Ok(!1);const i=_t.getLatest(e);return u.Ok(this.checkCondition(i.title))}checkCondition(t){if(!this.matchType||!this.conditionValue)return!1;switch(this.matchType){case\"CONTAINS\":return t.includes(this.conditionValue);case\"EXACT\":return t===this.conditionValue;case\"REGULAR_EXPRESSION\":return pt.parseRegExp(this.conditionValue).test(t);default:return v.error`Unexpected comparing operation for PageTitle condition: ${this.matchType}`,!1}}}class Ut{constructor({matchType:t,url:e}){this.matchType=t,this.conditionValue=e}evaluate({targetingData:t}){const e=null==t?void 0:t[K.PageView];if(!e)return u.Ok(!1);const i=_t.getLatest(e);return u.Ok(this.checkCondition(i.urlAddress))}checkCondition(t){if(!this.matchType||!this.conditionValue)return!1;switch(this.matchType){case\"CONTAINS\":return t.includes(this.conditionValue);case\"EXACT\":return t===this.conditionValue;case\"REGULAR_EXPRESSION\":return pt.parseRegExp(this.conditionValue).test(t);default:return v.error`Unexpected comparing operation for PageUrl condition: ${this.matchType}`,!1}}}class Lt{constructor({sdkLanguage:t,version:e,versionMatchType:i}){this.sdkLanguage=t,this.conditionValue=e,this.versionMatchType=i}evaluate({sdkInfo:t}){return this.checkCondition(t)}checkCondition(t){const{type:e,version:i}=t;if(!this.sdkLanguage)return u.Ok(!1);if(\"string\"!=typeof this.conditionValue)return u.Ok(e===this.sdkLanguage);if(!this.versionMatchType)return u.Ok(!1);if(e!==this.sdkLanguage)return u.Ok(!1);const a=tt.compareSemVer({version:i,compareVersion:this.conditionValue,operator:this.versionMatchType});return a.ok?u.Ok(a.data):u.Err(a.error)}}class Bt{constructor({visitorCode:t,matchType:e}){this.matchType=e,this.conditionValue=t}evaluate({visitorCode:t}){return u.Ok(this.checkCondition(t))}checkCondition(t){if(!this.matchType||!this.conditionValue)return!1;switch(this.matchType){case\"CONTAINS\":return t.includes(this.conditionValue);case\"EXACT\":return t===this.conditionValue;case\"REGULAR_EXPRESSION\":return pt.parseRegExp(this.conditionValue).test(t);default:return v.error`Unexpected comparing operation for VisitorCode condition: ${this.matchType}`,!1}}}class Kt{constructor({name:t,value:e,nameMatchType:i,valueMatchType:a}){this.cookie={key:null!=t?t:void 0,value:null!=e?e:void 0},this.keyMatchType=i,this.valueMatchType=a}evaluate({targetingData:t}){var e;const i=!this.cookie.key&&!this.cookie.value,a=Boolean(this.valueMatchType)&&Boolean(this.keyMatchType);if(i||!a)return u.Ok(!1);const r=this.extractCookie(),s=(null===(e=null==t?void 0:t[K.Cookie])||void 0===e?void 0:e.cookie)||[];return u.Ok(r.some(t=>this.checkCondition(t))||s.some(t=>this.checkCondition(t)))}extractCookie(){return\"undefined\"!=typeof document&&document.cookie?It.fromString(document.cookie).data.cookie:[]}checkCondition(t){const e=this.keyMatchType,{key:i,value:a}=t;if(\"OPTIONAL\"===e){const t=this.cookie;return!!this.isOptionalCookie(t)&&this.compareCookieValue(a,t.value)}const{key:r,value:s}=this.cookie;let n;switch(e){case\"EXACT\":n=i===r;break;case\"CONTAINS\":n=i.includes(r);break;case\"REGULAR_EXPRESSION\":n=pt.parseRegExp(r).test(i);break;default:v.error`Unexpected comparing operation for Cookie condition: ${e}`,D(e)}return n&&this.compareCookieValue(a,s)}compareCookieValue(t,e){const i=this.valueMatchType;switch(i){case\"EXACT\":return t===e;case\"CONTAINS\":return t.includes(e);case\"REGULAR_EXPRESSION\":return pt.parseRegExp(e).test(t);default:return v.error`Unexpected comparing operation for Cookie condition: ${i}`,!1}}isOptionalCookie(t){const{value:e}=t;return void 0!==e}}class zt{constructor({os:t}){this.operatingSystem=t}evaluate({targetingData:t}){const e=null==t?void 0:t[K.OperatingSystem];if(e){const{operatingSystem:t}=e;return u.Ok(t===this.operatingSystem)}return u.Ok(!1)}}class jt{constructor({country:t,region:e,city:i}){this.country=t,this.region=e,this.city=i}evaluate({targetingData:t}){const e=null==t?void 0:t[K.GeolocationData];if(e){const{country:t,region:i,city:a}=e,[r,s,n]=[this.country,this.region,this.city];if(!r||!t)return u.Ok(!1);const o=!(t.toLowerCase()!==r.toLowerCase()||s&&(null==i?void 0:i.toLowerCase())!==s.toLowerCase()||n&&(null==a?void 0:a.toLowerCase())!==n.toLowerCase());return u.Ok(o)}return u.Ok(!1)}}class Gt{constructor({segmentId:t}){this.segmentId=t}evaluate(t){var e;const{segments:i,trees:a}=t;if(!this.segmentId)return u.Ok(!1);const r=null==i?void 0:i.get(this.segmentId.toString());if(!r)return u.Ok(!1);const s=null!==(e=null==a?void 0:a.get(this.segmentId.toString()))&&void 0!==e?e:null==a?void 0:a.get(this.segmentId);return s?s.evaluate(t):new Ot(r).evaluate(t)}}class $t{constructor({featureFlagId:t,variationKey:e,ruleId:i,visitCount:a,visitScope:r}){this.featureId=t,this.ruleId=i,this.variationKey=e,this.visitCount=a,this.visitScope=r}evaluate(t){const{variationData:e,ruleMap:i}=t;if(!this.featureId||!i)return u.Ok(!1);const a=xt(t,this.visitScope,this.visitCount),r=(t,e)=>!t||t>=e;if(this.featureId&&!this.ruleId&&!this.variationKey){for(const t of i.values()){const{featureId:i,experimentId:s}=t,n=e[s];if(i===this.featureId&&\"number\"==typeof(null==n?void 0:n.variationId)&&r(null==n?void 0:n.assignedTime,a))return u.Ok(!0)}return u.Ok(!1)}if(this.featureId&&this.ruleId){const t=i.get(this.ruleId);if((null==t?void 0:t.featureId)!==this.featureId)return u.Ok(!1);const{experimentId:s,variations:n}=t,o=e[s];if(this.variationKey){const t=n.get(this.variationKey);return u.Ok(Boolean(t)&&(null==o?void 0:o.variationId)===t&&r(null==o?void 0:o.assignedTime,a))}return u.Ok(Boolean(null==o?void 0:o.variationId)&&r(null==o?void 0:o.assignedTime,a))}if(this.featureId&&!this.ruleId&&this.variationKey)for(const t of i.values()){const{featureId:i,experimentId:s,variations:n}=t;if(i===this.featureId&&n.has(this.variationKey)){const t=n.get(this.variationKey),i=e[s];if(Boolean(t)&&(null==i?void 0:i.variationId)===t&&r(null==i?void 0:i.assignedTime,a))return u.Ok(!0)}}return u.Ok(!1)}}class qt{constructor({matchType:t,url:e}){this.conditionValue=e,this.matchType=t}evaluate({targetingData:t}){const e=null==t?void 0:t[K.PageView];if(!e)return u.Ok(!1);const i=this.getSecondLatestPageView(Object.values(e));if(!i)return u.Ok(!1);const a=i.urlAddress;return u.Ok(this.checkCondition(a))}checkCondition(t){if(!this.matchType||!this.conditionValue)return!1;switch(this.matchType){case\"CONTAINS\":return t.includes(this.conditionValue);case\"EXACT\":return t===this.conditionValue;case\"REGULAR_EXPRESSION\":return pt.parseRegExp(this.conditionValue).test(t);default:return v.error`Unexpected comparing operation for PreviousPage condition: ${this.matchType}`,!1}}getSecondLatestPageView(t){if(t.length<2)return;let e,i;return t.forEach(t=>{const a=t.timestamps[t.timestamps.length-1].time;if(e)return a>e.timestamps[e.timestamps.length-1].time?(i=e,void(e=t)):void(a>(i?i.timestamps[i.timestamps.length-1].time:0)&&(i=t));e=t}),i}}class Ht{constructor({matchType:t,pageCount:e}){this.matchType=t,this.conditionValue=e}evaluate({targetingData:t}){const e=null==t?void 0:t[K.PageView];if(!e)return u.Ok(!1);let i=0;return Object.values(e).forEach(t=>{i+=t.timestamps.length}),u.Ok(this.checkCondition(i))}checkCondition(t){if(!this.matchType||\"number\"!=typeof this.conditionValue)return!1;switch(this.matchType){case\"EQUAL\":return t===this.conditionValue;case\"GREATER\":return t>this.conditionValue;case\"LOWER\":return t<this.conditionValue;default:return v.error`Unexpected comparing operation for VisitedPages condition: ${this.matchType}`,!1}}}class Wt{constructor({matchType:t,count:e,unitOfTime:i}){this.matchType=t,this.conditionValue=e,this.timeUnit=i}evaluate({targetingData:t,sdkInfo:e}){const i=null==t?void 0:t[K.VisitsData];if(e.isServer?!(null==i?void 0:i.visits.length):!(null==i?void 0:i.visits)||i.visits.length<2)return u.Ok(!1);const a=i.visits[0];return u.Ok(this.checkCondition(\"number\"==typeof a?a:a.timeStarted))}checkCondition(t){if(!this.matchType||\"number\"!=typeof this.conditionValue||!this.timeUnit)return!1;const e=Date.now()-t,i=tt.convertTimeUnit(e,this.timeUnit);switch(this.matchType){case\"GREATER\":return i>this.conditionValue;case\"LOWER\":return i<this.conditionValue;default:return v.error`Unexpected comparing operation for FirstVisit condition: ${this.matchType}`,!1}}}class Jt{constructor({matchType:t,count:e,unitOfTime:i}){this.matchType=t,this.conditionValue=e,this.timeUnit=i}evaluate({targetingData:t,sdkInfo:e}){const i=null==t?void 0:t[K.VisitsData];if(e.isServer?!(null==i?void 0:i.visits.length):!(null==i?void 0:i.visits)||i.visits.length<2)return u.Ok(!1);const a=i.visits,r=a[e.isServer?a.length-1:a.length-2];return u.Ok(this.checkCondition(\"number\"==typeof r?r:r.timeStarted))}checkCondition(t){if(!this.matchType||\"number\"!=typeof this.conditionValue||!this.timeUnit)return!1;const e=Date.now()-t,i=tt.convertTimeUnit(e,this.timeUnit);switch(this.matchType){case\"GREATER\":return i>this.conditionValue;case\"LOWER\":return i<this.conditionValue;default:return v.error`Unexpected comparing operation for LastVisit condition: ${this.matchType}`,!1}}}class Xt{constructor({matchType:t,visitCount:e}){this.matchType=t,this.conditionValue=e}evaluate({targetingData:t,sdkInfo:e}){const i=null==t?void 0:t[K.VisitsData];if(!i)return u.Ok(!1);let a=0;const r=(new Date).setHours(0,0,0,0),{visits:s}=i;return s.forEach(t=>{let e;e=\"number\"==typeof t?t:t.timeStarted,e>=r&&a++}),e.isServer&&(a+=1),u.Ok(this.checkCondition(a))}checkCondition(t){if(!this.matchType||\"number\"!=typeof this.conditionValue)return!1;switch(this.matchType){case\"EQUAL\":return t===this.conditionValue;case\"GREATER\":return t>this.conditionValue;case\"LOWER\":return t<this.conditionValue;default:return v.error`Unexpected comparing operation for SameDayVisits condition: ${this.matchType}`,!1}}}class Qt{constructor({matchType:t,visitCount:e}){this.matchType=t,this.conditionValue=e}evaluate({targetingData:t,sdkInfo:e}){const i=null==t?void 0:t[K.VisitsData];if(!i)return u.Ok(!1);const a=i.visits.length+(e.isServer?1:0);return u.Ok(this.checkCondition(a))}checkCondition(t){if(!this.matchType||\"number\"!=typeof this.conditionValue)return!1;switch(this.matchType){case\"EQUAL\":return t===this.conditionValue;case\"GREATER\":return t>this.conditionValue;case\"LOWER\":return t<this.conditionValue;default:return v.error`Unexpected comparing operation for Visits condition: ${this.matchType}`,!1}}}class Yt{constructor({visitorType:t}){this.visitorType=t}evaluate({targetingData:t,sdkInfo:e}){const i=null==t?void 0:t[K.VisitsData];if(!i||!this.visitorType)return u.Ok(!1);const{visits:a}=i,r=e.isServer?!a.length:a.length<=1;switch(this.visitorType){case\"NEW\":return u.Ok(r);case\"RETURNING\":return u.Ok(!r);default:v.error`Unexpected visitor type for NewVisitor condition: ${this.visitorType}`,D(this.visitorType)}}}class Zt{constructor({version:t,versionMatchType:e}){this.conditionValue=t,this.versionMatchType=e}evaluate({targetingData:t}){var e;const i=null===(e=null==t?void 0:t[K.ApplicationVersion])||void 0===e?void 0:e.version;if(!i||!this.conditionValue||!this.versionMatchType)return u.Ok(!1);const a=tt.compareSemVer({version:i,compareVersion:this.conditionValue,operator:this.versionMatchType});return a.ok?u.Ok(a.data):u.Err(a.error)}}class te{constructor({lowerBound:t,upperBound:e,keyMomentId:i,goalId:a}){this.lowerBound=t,this.upperBound=e,this.keyMomentId=i,this.goalId=a}evaluate({targetingData:t}){var e;const i=null==t?void 0:t[K.KameleoonConversionScore];if(\"number\"!=typeof this.keyMomentId||\"number\"!=typeof this.goalId||\"number\"!=typeof this.lowerBound||\"number\"!=typeof this.upperBound||!i)return u.Ok(!1);const a=null===(e=i.kcs[this.keyMomentId.toString()])||void 0===e?void 0:e[this.goalId.toString()];return\"number\"!=typeof a?u.Ok(!1):u.Ok(a>=this.lowerBound&&a<=this.upperBound)}}class ee{constructor({variationMatchType:t,variationId:e,experimentId:i,visitCount:a,visitScope:r}){this.variationMatchType=t,this.variationId=null!=e?e:-1,this.experimentId=null!=i?i:-1,this.visitCount=a,this.visitScope=r}evaluate(t){return u.Ok(this.checkCondition(t))}checkCondition(t){const e=t.variationData[this.experimentId];if(!e)return!1;const i=xt(t,this.visitScope,this.visitCount);if(e.assignedTime&&e.assignedTime<i)return!1;switch(this.variationMatchType){case\"ANY\":return!0;case\"EXACT\":return e.variationId===this.variationId;default:return!1}}}class ie{constructor({personalizationId:t,visitCount:e,visitScope:i}){this.personalizationId=t,this.visitCount=e,this.visitScope=i}evaluate(t){return t.targetingData?u.Ok(this.checkCondition(t)):u.Ok(!1)}checkCondition(t){var e,i;if(!this.personalizationId)return!1;const a=null===(i=null===(e=t.targetingData)||void 0===e?void 0:e[K.Personalization])||void 0===i?void 0:i[this.personalizationId];if(!a)return!1;const{assignedTime:r}=a;return!r||r>=xt(t,this.visitScope,this.visitCount)}}class ae{createCondition(t){const{targetingType:e}=t;switch(e){case\"CUSTOM_DATUM\":return u.Ok(new Nt(t));case\"EXCLUSIVE_EXPERIMENT\":return u.Ok(new Ft(t));case\"TARGET_EXPERIMENT\":return u.Ok(new ee(t));case\"TARGET_FEATURE_FLAG\":return u.Ok(new $t(t));case\"TARGET_PERSONALIZATION\":return u.Ok(new ie(t));case\"DEVICE_TYPE\":return u.Ok(new Rt(t));case\"BROWSER\":return u.Ok(new Mt(t));case\"PAGE_URL\":return u.Ok(new Ut(t));case\"PAGE_TITLE\":return u.Ok(new Pt(t));case\"CONVERSIONS\":return u.Ok(new At(t));case\"VISITOR_CODE\":return u.Ok(new Bt(t));case\"SDK_LANGUAGE\":return u.Ok(new Lt(t));case\"COOKIE\":return u.Ok(new Kt(t));case\"OPERATING_SYSTEM\":return u.Ok(new zt(t));case\"GEOLOCATION\":return u.Ok(new jt(t));case\"SEGMENT\":return u.Ok(new Gt(t));case\"APPLICATION_VERSION\":return u.Ok(new Zt(t));case\"PREVIOUS_PAGE\":return u.Ok(new qt(t));case\"PAGE_VIEWS\":return u.Ok(new Ht(t));case\"LAST_VISIT\":return u.Ok(new Jt(t));case\"FIRST_VISIT\":return u.Ok(new Wt(t));case\"SAME_DAY_VISITS\":return u.Ok(new Xt(t));case\"VISITS\":return u.Ok(new Qt(t));case\"NEW_VISITORS\":return u.Ok(new Yt(t));case\"HEAT_SLICE\":return u.Ok(new te(t));default:return u.Err(new C(m.TargetingCondition,e))}}}class re{constructor(t=null,e){this.cleanupInterval=t,this.packageInfo=e}mutUpdateData({infoData:t,visitorCode:e,mutData:i,dataItem:a,extendTtl:r}){let s,{visitorReference:n,data:o,isReference:u}=this.dereferenceData(i,e);switch(this.packageInfo.isServer&&u&&!i[n]&&(t.mappingIdentifiers&&delete t.mappingIdentifiers[e],delete i[e],n=e),r&&(s=this.cleanupInterval?Date.now()+this.cleanupInterval:0),a.data.type){case K.CustomData:this.updateCustomData({expirationTime:s,customData:a,visitorCode:n,mutData:o});break;case K.PageView:this.updatePageView({expirationTime:s,pageView:a,visitorCode:n,mutData:o});break;case K.Conversion:this.updateConversion({expirationTime:s,conversion:a,visitorCode:n,mutData:o});break;case K.VisitsData:this.updateVisitsData({expirationTime:s,visitsData:a,visitorCode:n,mutData:o});break;case K.Personalization:this.updatePersonalization({expirationTime:s,personalization:a,visitorCode:n,mutData:o});break;case K.TargetedSegment:this.updateTargetedSegment({expirationTime:s,targetedSegment:a,visitorCode:n,mutData:o});break;default:this.updateCommonData({expirationTime:s,commonData:a,visitorCode:n,mutData:o})}return s}mutCleanupData(t,e){var i;if(!this.cleanupInterval)return null;let a=0;for(const[r,s]of Object.entries(t)){if(\"string\"==typeof s){this.removeReference({mutData:t,visitorCode:r,linkedVisitor:s,infoData:e});continue}let n=0;for(const t of Object.keys(s)){const e=t;let i;switch(e){case K.CustomData:case K.PageView:case K.Conversion:case K.Personalization:i=this.deleteNestedExpiredField(s,e);break;default:i=this.deleteExpiredField(s,e)}(!n||i&&i<n)&&(n=i)}Object.keys(t[r]).length?(!a||n&&n<a)&&(a=n):(delete t[r],this.packageInfo.isServer&&(null!==(i=e.mappingIdentifiers)&&void 0!==i||(e.mappingIdentifiers={}),delete e.mappingIdentifiers[r]))}return a}mutAddUnsentData({mutData:t,visitorCode:e,dataType:i}){const a=t.unsentData[e];if(a&&a.length){const r=new Set([...a]);r.add(i),t.unsentData[e]=Array.from(r)}else t.unsentData[e]=[i]}createReference({mutData:t,visitorCode:e,linkedVisitor:i}){t[i]=e}removeReference({mutData:t,visitorCode:e,linkedVisitor:i,infoData:a}){this.packageInfo.isServer&&(t[i]||(delete t[e],a.mappingIdentifiers&&delete a.mappingIdentifiers[e]))}updatePageView({visitorCode:t,mutData:e,pageView:i,expirationTime:a}){const{data:r}=i,s=e[t]&&K.PageView in e[t]&&r.urlAddress in e[t][K.PageView],n={expirationTime:a,visitorCode:t,data:e,key:K.PageView,nestedKey:r.urlAddress,value:r};if(s){const i=e[t][K.PageView][r.urlAddress].timestamps;for(const t of i){const{time:e}=t;if(r.timestamps.some(({time:t})=>t===e))continue;const i=r.timestamps.findIndex(({time:t})=>t>=e);-1===i?r.timestamps.push(t):r.timestamps.splice(i,0,t)}this.updateNestedField(n)}else this.createNestedField(n)}updateCustomData({visitorCode:t,customData:e,mutData:i,expirationTime:a}){const{data:r}=e,s=i[t]&&K.CustomData in i[t],n={expirationTime:a,visitorCode:t,data:i,key:K.CustomData,nestedKey:r.index.toString(),value:r};s?this.updateNestedField(n):this.createNestedField(n)}updateConversion({conversion:t,mutData:e,visitorCode:i,expirationTime:a}){const{data:r}=t,s=e[i]&&K.Conversion in e[i],n={expirationTime:a,visitorCode:i,data:e,key:K.Conversion,nestedKey:r.id.toString(),value:r};s?this.updateNestedField(n):this.createNestedField(n)}updateVisitsData({visitorCode:t,mutData:e,visitsData:i,expirationTime:a}){var r,s;const{data:n}=i,o=e[t]&&K.VisitsData in e[t],u={expirationTime:a,data:e,key:K.VisitsData,value:n,visitorCode:t};if(o){const i=e[t][K.VisitsData];i.visits.forEach(t=>{et.insertVisitInOrderedListMutably({list:n.visits,visit:t})});const a=Math.max(null!==(r=n.visitNumber)&&void 0!==r?r:n.visits.length-1,n.visits.length-1,null!==(s=i.visitNumber)&&void 0!==s?s:0);this.updateField(Object.assign(Object.assign({},u),{value:Object.assign(Object.assign({},n),{visits:n.visits,visitNumber:a})}))}else this.createField(u)}updatePersonalization({visitorCode:t,mutData:e,personalization:i,expirationTime:a}){const{data:r}=i,s=e[t]&&K.Personalization in e[t],n={expirationTime:a,visitorCode:t,data:e,key:K.Personalization,nestedKey:r.id.toString(),value:r};s?this.updateNestedField(n):this.createNestedField(n)}updateTargetedSegment({visitorCode:t,mutData:e,targetedSegment:i,expirationTime:a}){const{data:r}=i,s=e[t]&&K.TargetedSegment in e[t],n={expirationTime:a,visitorCode:t,data:e,key:K.TargetedSegment,nestedKey:r.id.toString(),value:r};s?this.updateNestedField(n):this.createNestedField(n)}updateCommonData({visitorCode:t,mutData:e,commonData:i,expirationTime:a}){const{data:r}=i,s=e[t]&&r.type in e[t],n={expirationTime:a,data:e,key:r.type,visitorCode:t,value:r};s?this.updateField(n):this.createField(n)}dereferenceData(t,e){return\"string\"==typeof t[e]?{visitorReference:t[e],data:t,isReference:!0}:{visitorReference:e,data:t,isReference:!1}}deleteExpiredField(t,e){if(!t)return 0;const i=e;return t[i].expirationTime<Date.now()?(delete t[i],0):t[i].expirationTime}deleteNestedExpiredField(t,e){if(!t[e])return 0;const i=t[e];let a;for(const[t,e]of Object.entries(i))e&&(e.expirationTime<Date.now()?delete i[t]:(!a||e.expirationTime<a)&&(a=e.expirationTime));return Object.keys(i).length||delete t[e],a}updateField({key:t,value:e,data:i,visitorCode:a,expirationTime:r}){var s;const n=i[a][t];i[a][t]=Object.assign(Object.assign({},e),{expirationTime:null!==(s=null!=r?r:n.expirationTime&&n.expirationTime)&&void 0!==s?s:Date.now()})}createField({key:t,value:e,data:i,visitorCode:a,expirationTime:r}){i[a]=Object.assign(Object.assign({},i[a]),{[t]:Object.assign(Object.assign({},e),{expirationTime:r})})}updateNestedField({key:t,nestedKey:e,value:i,data:a,visitorCode:r,expirationTime:s}){var n;const o=a[r][t][e];a[r][t][e]=Object.assign(Object.assign({},i),{expirationTime:null!==(n=null!=s?s:null==o?void 0:o.expirationTime)&&void 0!==n?n:Date.now()})}createNestedField({key:t,nestedKey:e,value:i,data:a,visitorCode:r,expirationTime:s}){var n;(null===(n=a[r])||void 0===n?void 0:n[t])?a[r]=Object.assign(Object.assign({},a[r]),{[t]:Object.assign(Object.assign({},a[r][t]),{[e]:Object.assign(Object.assign({},i),{expirationTime:s})})}):a[r]=Object.assign(Object.assign({},a[r]),{[t]:{[e]:Object.assign(Object.assign({},i),{expirationTime:s})}})}}var se;!function(t){t.ClientData=\"kameleoonClientData\",t.TargetingData=\"kameleoonTargetingData\",t.TrackingData=\"kameleoonTrackingData\",t.VariationData=\"kameleoonVariationData\",t.VisitorCode=\"kameleoonVisitorCode\",t.ConsentData=\"kameleoonConsentData\",t.DataInfo=\"kameleoonDataInfo\",t.KameleoonSimulationFFData=\"kameleoonSimulationFFData\",t.ForcedFeatureVariation=\"kameleoonForcedFeatureVariation\",t.ForcedExperimentVariation=\"kameleoonForcedExperimentVariation\"}(se||(se={}));const ne={data:c,lastUpdate:\"\"};class oe{constructor(t){this.key=t}isDataValid(t){switch(this.key){case se.ClientData:return this.checkClientDataIntegrity(t);case se.TargetingData:return this.checkTargetingDataIntegrity(t);case se.DataInfo:return this.checkDataInfoIntegrity(t);case se.VariationData:return this.checkVariationDataIntegrity(t);case se.TrackingData:return this.checkTrackingDataIntegrity(t);default:return!0}}getDefaultData(){switch(this.key){case se.ClientData:return this.getDefaultClientData();case se.DataInfo:return{unsentData:{},nextVisitTime:0,mappingIdentifiers:{}};case se.TrackingData:return{scheduledVisitors:{}};case se.TargetingData:case se.VariationData:case se.ConsentData:return{};case se.VisitorCode:case se.KameleoonSimulationFFData:return\"\";case se.ForcedExperimentVariation:case se.ForcedFeatureVariation:return{};default:D(this.key)}}checkTrackingDataIntegrity(t){return this.hasFields(t,[\"scheduledVisitors\"])}checkDataInfoIntegrity(t){return this.hasFields(t,[\"unsentData\",\"nextVisitTime\"])}checkVariationDataIntegrity(t){const e=Object.values(t);if(!e.length)return!0;const i=t=>!this.hasFields(t,[\"status\"])||this.hasFields(t,[\"isSent\"]);for(const t of e)for(const e of Object.values(t))if(i(e))return!1;return!0}checkClientDataIntegrity(t){return this.hasFields(t,Object.keys(ne))}checkTargetingDataIntegrity(t){const e=Object.values(t);if(!e.length)return!0;for(const t of e){if(\"string\"==typeof t)continue;const e=t=>!this.hasFields(t,[\"status\"])||this.hasFields(t,[\"sent\"])||this.hasFields(t,[\"timestampList\"]);for(const[i,a]of Object.entries(t)){if(Array.isArray(a))return!1;switch(i){case K.PageView:case K.Conversion:case K.Personalization:case K.TargetedSegment:case K.CustomData:if(Object.values(a).some(t=>e(t)))return!1;continue;default:if(e(a))return!1}}}return!0}getDefaultClientData(){return Object.assign(Object.assign({},ne),{lastUpdate:(new Date).toString()})}hasFields(t,e){const i=Object.keys(t);return!(!i.length||!e.length)&&e.every(t=>i.includes(t))}}let ue=class{constructor(t,e){this.externalStorage=t,this.storageKey=e;const i=new oe(e),a=this.read();if(!a.ok){if(a.error.type===m.StorageEmpty){const t=i.getDefaultData();this.write(t)}return}const r=a.data;if(!i.isDataValid(r)){const t=i.getDefaultData();this.write(t)}}read(){try{const t=this.externalStorage.read(this.storageKey);return null===t?u.Err(new C(m.StorageEmpty)):u.Ok(t)}catch(t){return v.error`Failed to read data from storage: ${this.storageKey}`,u.Err(new C(m.StorageRead,this.storageKey))}}write(t){try{return this.externalStorage.write(this.storageKey,t),u.Ok()}catch(t){return v.error`Failed to write data to storage: ${this.storageKey}`,u.Err(new C(m.StorageWrite,this.storageKey))}}update(t){const e=this.read();if(!e.ok)return e.error.type===m.StorageEmpty?this.write(t):e;const i=e.data;let a;return a=\"string\"==typeof i?t:Object.assign(Object.assign({},i),t),this.write(a)}};class de{constructor(t,e){this.externalStorage=t,this.cleanupInterval=e,e>0&&this.initCleanupInterval()}initCleanupInterval(){for(const t of Object.values(se)){let e=null;try{switch(t){case se.ForcedFeatureVariation:case se.ForcedExperimentVariation:case se.VariationData:case se.ConsentData:e=setInterval(()=>this.cleanupData(t),this.cleanupInterval);break;case se.ClientData:case se.TargetingData:case se.TrackingData:case se.VisitorCode:case se.DataInfo:case se.KameleoonSimulationFFData:break;default:v.error`Unknown storage key: ${t} for initCleanupInterval.`}}catch(i){e&&clearInterval(e),v.error`Error while starting cleanup for ${t} with interval ${this.cleanupInterval}`}}}cleanupData(t){const e=this.externalStorage.read(t);if(!e)return;const i=Date.now();switch(t){case se.VariationData:this.cleanupVariationData(e,i);break;case se.ForcedFeatureVariation:this.cleanupForcedFeatureVariationData(e,i);break;case se.ForcedExperimentVariation:this.cleanupForcedExperimentVariationData(e,i);break;case se.ConsentData:this.cleanupConsentData(e,i);break;case se.ClientData:case se.TargetingData:case se.TrackingData:case se.VisitorCode:case se.DataInfo:case se.KameleoonSimulationFFData:break;default:v.error`Unknown storage key: ${t} for cleanupData.`}this.externalStorage.write(t,e)}cleanupConsentData(t,e){for(const[i,a]of Object.entries(t)){if(\"boolean\"==typeof a){t[i]={consent:a,expirationTime:e+this.cleanupInterval};continue}const r=a;\"number\"==typeof r.expirationTime?r.expirationTime<e&&delete t[i]:r.expirationTime=e+this.cleanupInterval}}cleanupVariationData(t,e){for(const[i,a]of Object.entries(t))this.cleanupObjectValues(a,e),0===Object.keys(t[i]).length&&delete t[i]}cleanupForcedFeatureVariationData(t,e){for(const[i,a]of Object.entries(t))for(const[r,s]of Object.entries(a))this.cleanupObjectValues(s,e),0===Object.keys(t[Number(i)][r]).length&&delete t[Number(i)][r]}cleanupForcedExperimentVariationData(t,e){for(const[i,a]of Object.entries(t))this.cleanupObjectValues(a,e),0===Object.keys(t[i]).length&&delete t[i]}cleanupObjectValues(t,e){for(const[i,a]of Object.entries(t))\"number\"==typeof a.expirationTime?a.expirationTime<e&&delete t[i]:a.expirationTime=e+this.cleanupInterval}}var le;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.Given=1]=\"Given\",t[t.NotGiven=2]=\"NotGiven\"}(le||(le={}));class ce{constructor(t){this.id=t,this.status=B.Unsent}get url(){return\"eventType=targetingSegment\"+E+this.id}get data(){return{id:this.id,type:K.TargetedSegment,status:this.status}}static _fromRaw(t){const{id:e,status:i}=t,a=new ce(e);return a.status=i,a}}class he{constructor({dataStorage:t,infoStorage:e,cleanupInterval:i,packageInfo:a}){if(this.targetingTrees=new Map,this.mappingIdentifierCustomDataIndex=null,this.persistentCustomDataIndexes=new Set,this.localCustomDataIndexes=new Set,this.customDataIndexByName=new Map,this.cleanupIntervalId=null,this.dataStorage=t,this.infoStorage=e,this.dataProcessor=new re(i,a),this.packageInfo=a,i){const t=()=>{this.cleanupData()};try{this.cleanupIntervalId=setInterval(t,i)}catch(t){throw this.cleanupIntervalId&&clearInterval(this.cleanupIntervalId),v.error`Failed to set cleanup interval: ${i}`,t}}}getUnsentData(t){const e=this.infoStorage.read();if(!e.ok)return[];const i=e.data,a=this.getVisitorData(t);if(!i.unsentData[t]||!a)return[];const r=i.unsentData[t],s=i.nextVisitTime<=Date.now();return s&&(i.nextVisitTime=Date.now()+174e4,this.infoStorage.write(i)),this.getDataFromRaw(a,({status:t,key:e,cdIndex:i})=>!(\"number\"!=typeof i||!this.persistentCustomDataIndexes.has(i)||!s)||r.includes(e)&&t===B.Unsent)}getPendingData(t){const e=this.getVisitorData(t);return e?this.getDataFromRaw(e,({status:t})=>t===B.Pending):[]}getDataFromRaw(t,e){const i=[];for(const[a,r]of Object.entries(t))if(r)switch(a){case K.CustomData:for(const t of Object.values(r)){if(!t)continue;const{status:r,index:s}=t;if(e({status:r,key:a,cdIndex:s})){const e=at._fromRaw(t);i.push(e)}}break;case K.Conversion:for(const t of Object.values(r))if(t&&e({status:t.status,key:a})){const e=rt._fromRaw(t);i.push(e)}break;case K.PageView:{const t=r;for(const r of Object.values(t))if(e({status:r.status,key:a})){const t=it._fromRaw(r);i.push(t)}break}case K.TargetedSegment:{const t=r;for(const r of Object.values(t))if(e({status:r.status,key:a})){const t=ce._fromRaw(r);i.push(t)}break}case K.GeolocationData:{const t=r;if(!r)continue;if(e({status:t.status,key:a})){const e=ut._fromRaw(t);i.push(e)}break}case K.Browser:{const t=r;if(e({status:t.status,key:a})){const e=st._fromRaw(t);i.push(e)}break}case K.Device:{const t=r;if(e({status:t.status,key:a})){const e=nt._fromRaw(t);i.push(e)}break}case K.OperatingSystem:{const t=r;if(e({status:t.status,key:a})){const e=ot._fromRaw(t);i.push(e)}}}return i}storeTrackedData(t){this.storeDataForVisitors(t,!1);const e=this.infoStorage.read();if(!e.ok)return;const i=e.data.unsentData;for(const[e,a]of Object.entries(t)){if(!i[e])return;const t=new Set(i[e]);a.forEach(({data:e})=>{t.has(e.type)&&t.delete(e.type)});const r=a.some(({data:t})=>{if(t.type!==K.CustomData)return!1;const{index:e}=t;return this.persistentCustomDataIndexes.has(e)||this.mappingIdentifierCustomDataIndex===e});r&&t.add(K.CustomData),i[e]=Array.from(t),i[e].length||delete i[e]}this.infoStorage.write(e.data)}storeData({visitorCode:t,data:e,track:i}){return this.storeDataInternal((a,r)=>{this.mutUpdateTargetingData({infoData:a,targetingData:r,visitorCode:t,kameleoonData:e,extendTtl:!0,track:i})})}storeDataForVisitors(t,e){return this.storeDataInternal((i,a)=>{for(const[r,s]of Object.entries(t))this.mutUpdateTargetingData({infoData:i,targetingData:a,visitorCode:r,kameleoonData:s,extendTtl:e})})}storeDataInternal(t){const e=this.dataStorage.read();if(!e.ok)return e;const i=this.infoStorage.read();if(!i.ok)return i;const a=e.data,r=i.data;return t(r,a),this.cleanupData(),this.infoStorage.write(r),this.dataStorage.write(a)}getTree(t){if(this.targetingTrees.has(t.id))return this.targetingTrees.get(t.id);const e=new Ot(t);return this.targetingTrees.set(t.id,e),e}clearTrees(){this.targetingTrees.clear()}isPersistentCustomData(t){return!!this.persistentCustomDataIndexes.size&&!!tt.isCustomData(t)&&this.persistentCustomDataIndexes.has(t.data.index)}isUniqueIdentifier(t){var e;const i=this.getVisitorData(t),a=null==i?void 0:i[K.UniqueIdentifier];return null!==(e=null==a?void 0:a.value)&&void 0!==e&&e}getVisitorIdentifier(t){var e,i,a;const r=this.infoStorage.read();if(!r.ok)return t;const s=r.data;return null!==(e=s.mappingIdentifiers)&&void 0!==e||(s.mappingIdentifiers={}),null!==(a=null===(i=s.mappingIdentifiers[t])||void 0===i?void 0:i.mappingIdentifier)&&void 0!==a?a:t}getMappingIdentifier(t){const e=this.infoStorage.read();if(!e.ok)return;const i=e.data;return i.mappingIdentifiers?i.mappingIdentifiers[t]:void 0}setMappingIdentifier(t,e){var i;const a=this.infoStorage.read();if(!a.ok)return;const r=a.data;null!==(i=r.mappingIdentifiers)&&void 0!==i||(r.mappingIdentifiers={});const s=r.mappingIdentifiers[t];(!s||s.timestamp<e.timestamp)&&(r.mappingIdentifiers[t]=e,this.infoStorage.write(r))}getVisitorData(t){this.cleanupData();const e=this.dataStorage.read();if(!e.ok)return;let{visitorReference:i,data:a,isReference:r}=this.dataProcessor.dereferenceData(e.data,t);if(this.packageInfo.isServer&&r&&!a[i]){const e=this.infoStorage.read();e.ok&&e.data.mappingIdentifiers&&delete e.data.mappingIdentifiers[t],delete a[t],i=t}return a[i]}getVisitorStoredDataTypes(t){const e=this.getVisitorData(t);return e?new Set(Object.keys(e)):new Set}getLinkedVisitor(t){var e,i,a;const r=this.dataStorage.read();if(!r.ok)return null;const s=r.data[t];if(\"string\"==typeof s)return s;if(null==s||null==this.mappingIdentifierCustomDataIndex)return null;const n=null===(a=null===(i=null===(e=s[K.CustomData])||void 0===e?void 0:e[this.mappingIdentifierCustomDataIndex])||void 0===i?void 0:i.value)||void 0===a?void 0:a[0];return null!=n?n:null}mutUpdateTargetingData({infoData:t,visitorCode:e,kameleoonData:i,targetingData:a,extendTtl:r,track:s}){var n,o,u;for(const d of i){if(!1===s&&(d.status=B.Sent),d.data.type===K.CustomData&&!this.processCustomData({infoData:t,customData:d,mutData:a,visitorCode:e}))continue;if(d.data.type===K.Conversion){const t=d;(null!==(o=null===(n=t._metadata)||void 0===n?void 0:n.length)&&void 0!==o?o:0)>0&&(t._metadata=null===(u=t._metadata)||void 0===u?void 0:u.filter(t=>this.trySetCustomDataIndexByName(t)))}const i=this.dataProcessor.mutUpdateData({infoData:t,visitorCode:e,mutData:a,dataItem:d,extendTtl:r}),l=t.nextDataCleanup;(!l||l&&i&&i<l)&&(t.nextDataCleanup=i),d.data.status===B.Unsent&&this.dataProcessor.mutAddUnsentData({mutData:t,visitorCode:e,dataType:d.data.type})}}cleanupData(){const t=this.dataStorage.read(),e=this.infoStorage.read();if(!t.ok||!e.ok)return;const i=t.data,a=e.data,r=a.nextDataCleanup;if(r&&r<Date.now()){const t=this.dataProcessor.mutCleanupData(i,a);a.nextDataCleanup=t||void 0,this.infoStorage.write(a),this.dataStorage.write(i)}}processCustomData({infoData:t,mutData:e,customData:i,visitorCode:a}){var r;const{data:s}=i,n=Boolean(s.value.length&&s.value[0].length);if(!this.trySetCustomDataIndexByName(i))return!1;if(s.index==at.UNDEFINED_INDEX&&(s.index=i.index),this.mappingIdentifierCustomDataIndex===s.index&&n){i._isMappingIdentifier=!0;const n=s.value[0];a!==n&&(this.dataProcessor.createReference({infoData:t,mutData:e,visitorCode:a,linkedVisitor:s.value[0]}),null!==(r=t.mappingIdentifiers)&&void 0!==r||(t.mappingIdentifiers={}),t.mappingIdentifiers[n]={mappingIdentifier:a,timestamp:Date.now()})}return this.localCustomDataIndexes.has(s.index)&&(i.status=B.Sent),!0}trySetCustomDataIndexByName(t){if(t.index!==at.UNDEFINED_INDEX)return!0;if(!t.name)return!1;const e=this.customDataIndexByName.get(t.name);return null!=e&&(t.index=e,!0)}get unsentDataVisitors(){const t=this.infoStorage.read();return t.ok?Object.keys(t.data.unsentData):[]}get identifierCustomDataIndex(){return this.mappingIdentifierCustomDataIndex}get trees(){return this.targetingTrees}get storedCustomDataIndexes(){const t=this.dataStorage.read();if(!t.ok)return new Set;const e=t.data;if(!(K.CustomData in e))return new Set;const i=new Set;for(const t in Object.keys(e[K.CustomData]))i.add(Number(t));return i}set customDataIndexes(t){var e;const[i,a]=[[],[]],r=new Map;t.forEach(t=>{t.localOnly&&i.push(t.index),\"VISITOR\"===t.scope&&a.push(t.index),t.name&&r.set(t.name,t.index)}),this.mappingIdentifierCustomDataIndex=(null===(e=t.find(t=>t.isMappingIdentifier))||void 0===e?void 0:e.index)||null,this.localCustomDataIndexes=new Set(i),this.persistentCustomDataIndexes=new Set(a),this.customDataIndexByName=r}getCustomDataIndexByName(t){return this.customDataIndexByName.get(t)}}const ge=31536e3;let pe=class{constructor(){this.isConsentRequired=!1}set consentRequired(t){this.isConsentRequired=t}get consentRequired(){return this.isConsentRequired}set getData(t){this.getDataCallback=t}set setData(t){this.setDataCallback=t}get setData(){if(this.setDataCallback)return this.setDataCallback;throw new Error(\"Missing setDataCallback!\")}validateVisitorCode(t){return 0===t.length?u.Err(new C(m.VisitorCodeEmpty)):t.length>255?u.Err(new C(m.VisitorCodeMaxLength)):u.Ok()}getVisitorCode(t){if(!this.getDataCallback||!this.setDataCallback)throw new Error(\"Missing getDataCallback or setDataCallback methods in getVisitorCode!\");let e;const i=this.getDataCallback(se.VisitorCode);return i&&(e=i),e||(t?(this.validateVisitorCode(t).throw(),e=t):e=this.generateVisitorCode()),this.processSimulatedVariations(e),this.isConsentRequired||this.setDataCallback({visitorCode:e,key:se.VisitorCode,maxAge:ge,path:\"/\"}),e}processSimulatedVariations(t){if(this.variationConfiguration){const e=this.getSimulatedVariations(t);try{this.variationConfiguration.clearSimulatedVariations(t).throw(),null!==e&&e.length>0&&this.variationConfiguration.updateForcedFeatureVariations(t,e).throw()}catch(t){t instanceof Error&&v.error`Failed to process simulated variations: ${t.message}`}}}getSimulatedVariations(t){const e=this.getDataCallback(se.KameleoonSimulationFFData);let i=null;if(\"string\"==typeof e&&e.length>0)try{const t=JSON.parse(decodeURIComponent(e));t&&\"object\"==typeof t&&(i=Object.entries(t).map(([t,e])=>this.variationConfiguration.simulatedVariationFromJson(t,e)).filter(t=>null!==t))}catch(t){t instanceof Error&&v.error`Failed to parse simulated variations: ${t.message}`}return i}generateVisitorCode(){const t=[];for(let e=0;e<16;e++)t.push(\"abcdefghijklmnopqrstuvwxyz0123456789\"[Math.floor(36*Math.random())]);return t.join(\"\")}setVariationConfiguration(t){this.variationConfiguration||(this.variationConfiguration=t)}};var ve,fe,me={exports:{}},ye={exports:{}},De=i(Object.freeze({__proto__:null,default:{}}));var Ce,ke=(fe||(fe=1,me.exports=(Ce=function(){return ve||(ve=1,ye.exports=(e=e||function(e){var i;if(\"undefined\"!=typeof window&&window.crypto&&(i=window.crypto),\"undefined\"!=typeof self&&self.crypto&&(i=self.crypto),\"undefined\"!=typeof globalThis&&globalThis.crypto&&(i=globalThis.crypto),!i&&\"undefined\"!=typeof window&&window.msCrypto&&(i=window.msCrypto),!i&&void 0!==t&&t.crypto&&(i=t.crypto),!i)try{i=De}catch(t){}var a=function(){if(i){if(\"function\"==typeof i.getRandomValues)try{return i.getRandomValues(new Uint32Array(1))[0]}catch(t){}if(\"function\"==typeof i.randomBytes)try{return i.randomBytes(4).readInt32LE()}catch(t){}}throw new Error(\"Native crypto module could not be used to get secure random number.\")},r=Object.create||function(){function t(){}return function(e){var i;return t.prototype=e,i=new t,t.prototype=null,i}}(),s={},n=s.lib={},o=n.Base={extend:function(t){var e=r(this);return t&&e.mixIn(t),e.hasOwnProperty(\"init\")&&this.init!==e.init||(e.init=function(){e.$super.init.apply(this,arguments)}),e.init.prototype=e,e.$super=this,e},create:function(){var t=this.extend();return t.init.apply(t,arguments),t},init:function(){},mixIn:function(t){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e]);t.hasOwnProperty(\"toString\")&&(this.toString=t.toString)},clone:function(){return this.init.prototype.extend(this)}},u=n.WordArray=o.extend({init:function(t,e){t=this.words=t||[],this.sigBytes=null!=e?e:4*t.length},toString:function(t){return(t||l).stringify(this)},concat:function(t){var e=this.words,i=t.words,a=this.sigBytes,r=t.sigBytes;if(this.clamp(),a%4)for(var s=0;s<r;s++){var n=i[s>>>2]>>>24-s%4*8&255;e[a+s>>>2]|=n<<24-(a+s)%4*8}else for(var o=0;o<r;o+=4)e[a+o>>>2]=i[o>>>2];return this.sigBytes+=r,this},clamp:function(){var t=this.words,i=this.sigBytes;t[i>>>2]&=4294967295<<32-i%4*8,t.length=e.ceil(i/4)},clone:function(){var t=o.clone.call(this);return t.words=this.words.slice(0),t},random:function(t){for(var e=[],i=0;i<t;i+=4)e.push(a());return new u.init(e,t)}}),d=s.enc={},l=d.Hex={stringify:function(t){for(var e=t.words,i=t.sigBytes,a=[],r=0;r<i;r++){var s=e[r>>>2]>>>24-r%4*8&255;a.push((s>>>4).toString(16)),a.push((15&s).toString(16))}return a.join(\"\")},parse:function(t){for(var e=t.length,i=[],a=0;a<e;a+=2)i[a>>>3]|=parseInt(t.substr(a,2),16)<<24-a%8*4;return new u.init(i,e/2)}},c=d.Latin1={stringify:function(t){for(var e=t.words,i=t.sigBytes,a=[],r=0;r<i;r++){var s=e[r>>>2]>>>24-r%4*8&255;a.push(String.fromCharCode(s))}return a.join(\"\")},parse:function(t){for(var e=t.length,i=[],a=0;a<e;a++)i[a>>>2]|=(255&t.charCodeAt(a))<<24-a%4*8;return new u.init(i,e)}},h=d.Utf8={stringify:function(t){try{return decodeURIComponent(escape(c.stringify(t)))}catch(t){throw new Error(\"Malformed UTF-8 data\")}},parse:function(t){return c.parse(unescape(encodeURIComponent(t)))}},g=n.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(t){\"string\"==typeof t&&(t=h.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes},_process:function(t){var i,a=this._data,r=a.words,s=a.sigBytes,n=this.blockSize,o=s/(4*n),d=(o=t?e.ceil(o):e.max((0|o)-this._minBufferSize,0))*n,l=e.min(4*d,s);if(d){for(var c=0;c<d;c+=n)this._doProcessBlock(r,c);i=r.splice(0,d),a.sigBytes-=l}return new u.init(i,l)},clone:function(){var t=o.clone.call(this);return t._data=this._data.clone(),t},_minBufferSize:0});n.Hasher=g.extend({cfg:o.extend(),init:function(t){this.cfg=this.cfg.extend(t),this.reset()},reset:function(){g.reset.call(this),this._doReset()},update:function(t){return this._append(t),this._process(),this},finalize:function(t){return t&&this._append(t),this._doFinalize()},blockSize:16,_createHelper:function(t){return function(e,i){return new t.init(i).finalize(e)}},_createHmacHelper:function(t){return function(e,i){return new p.HMAC.init(t,i).finalize(e)}}});var p=s.algo={};return s}(Math),e)),ye.exports;var e}(),function(t){var e=Ce,i=e.lib,a=i.WordArray,r=i.Hasher,s=e.algo,n=[],o=[];!function(){function e(e){for(var i=t.sqrt(e),a=2;a<=i;a++)if(!(e%a))return!1;return!0}function i(t){return 4294967296*(t-(0|t))|0}for(var a=2,r=0;r<64;)e(a)&&(r<8&&(n[r]=i(t.pow(a,.5))),o[r]=i(t.pow(a,1/3)),r++),a++}();var u=[],d=s.SHA256=r.extend({_doReset:function(){this._hash=new a.init(n.slice(0))},_doProcessBlock:function(t,e){for(var i=this._hash.words,a=i[0],r=i[1],s=i[2],n=i[3],d=i[4],l=i[5],c=i[6],h=i[7],g=0;g<64;g++){if(g<16)u[g]=0|t[e+g];else{var p=u[g-15],v=(p<<25|p>>>7)^(p<<14|p>>>18)^p>>>3,f=u[g-2],m=(f<<15|f>>>17)^(f<<13|f>>>19)^f>>>10;u[g]=v+u[g-7]+m+u[g-16]}var y=a&r^a&s^r&s,D=(a<<30|a>>>2)^(a<<19|a>>>13)^(a<<10|a>>>22),C=h+((d<<26|d>>>6)^(d<<21|d>>>11)^(d<<7|d>>>25))+(d&l^~d&c)+o[g]+u[g];h=c,c=l,l=d,d=n+C|0,n=s,s=r,r=a,a=C+(D+y)|0}i[0]=i[0]+a|0,i[1]=i[1]+r|0,i[2]=i[2]+s|0,i[3]=i[3]+n|0,i[4]=i[4]+d|0,i[5]=i[5]+l|0,i[6]=i[6]+c|0,i[7]=i[7]+h|0},_doFinalize:function(){var e=this._data,i=e.words,a=8*this._nDataBytes,r=8*e.sigBytes;return i[r>>>5]|=128<<24-r%32,i[14+(r+64>>>9<<4)]=t.floor(a/4294967296),i[15+(r+64>>>9<<4)]=a,e.sigBytes=4*i.length,this._process(),this._hash},clone:function(){var t=r.clone.call(this);return t._hash=this._hash.clone(),t}});e.SHA256=r._createHelper(d),e.HmacSHA256=r._createHmacHelper(d)}(Math),Ce.SHA256)),me.exports),Ie=e(ke);class we{static getHashDoubleForMEGroup(t,e){return this.calculateHash(t+e)}static getHashDouble({visitorIdentifier:t,id:e,respoolTime:i}){let a=\"\";return i&&(a+=String(i)),this.calculateHash(t+e+a)}static calculateHash(t){const e=Ie(t).toString();return parseInt(e,16)/Math.pow(2,256)}}class Ve{constructor(t,e,i,a,r){this.storage=t,this.storageForcedExperimentVariations=e,this.storageForcedFeatureVariations=i,this.visitorCodeManager=a,this.clientConfiguration=r,a.setVariationConfiguration(this)}updateDataStatus({visitorCode:t,experimentIdList:e,status:i}){const a=this.storage.read();if(!a.ok)return a;let r=a.data;r[t]||(r[t]={});for(const a of e)r[t][a]=Object.assign(Object.assign({},r[t][a]),{status:i});return this.storage.write(r)}getUnsentData(t){return this.getVariationData(t,t=>t===B.Unsent)}getVisitorsWithUnsentData(){const t=this.storage.read();if(!t.ok)return[];const e=[];for(const[i,a]of Object.entries(t.data))Object.values(a).some(t=>t.status===B.Unsent)&&e.push(i);return e}getPendingData(t){return this.getVariationData(t,t=>t===B.Pending)}getStoredVariations(t){const e=this.storage.read();if(!e.ok)return e;const i=e.data[t];return i?u.Ok(i):u.Err(new C(m.StorageRead,t))}getVariation({visitorCode:t,visitorIdentifier:e,featureFlag:i,targetingData:a,packageInfo:r,clientConfiguration:s,dataManager:n,legalConsent:o,track:d=!0,withAssignment:l=!1}){const{rules:c,featureKey:h,id:g,defaultVariationKey:p}=i,v=s.isConsentRequired?o:le.Given;for(const o of c){const{segment:c,experimentId:f,id:y,exposition:D,respoolTime:k,variationByExposition:I}=o,w=Date.now(),V=this.getForcedExperimentVariation(t,o.experimentId);let b=null;if(V.ok&&(b=V.data,null==b?void 0:b.forceTargeting)){const e=this.createAndSaveForcedTargetedVariation(t,i,o,b,d,l,w);return u.Ok(e)}const T=tt.checkTargeting({segment:c,visitorCode:t,experimentId:f,targetingData:a,packageInfo:r,clientConfiguration:s,dataManager:n,variationConfiguration:this});if(!T.ok)return T;if(T.data){if(b){const e=this.createAndSaveForcedTargetedVariation(t,i,o,b,d,l,w);return u.Ok(e)}if(we.getHashDouble({visitorIdentifier:e,respoolTime:k,id:String(y)})<=D){if(v==le.NotGiven&&\"EXPERIMENTATION\"==o.type){if(\"PARTIALLY_BLOCK\"==s.consentBlockingBehaviour)break;return u.Err(new C(m.FeatureFlagEnvironmentDisabled,`Evaluation of ${o} is blocked because consent is not provided for visitor '${t}'`))}let i=this.evaluateCBScores(o,e,a);if(!i){const t=we.getHashDouble({visitorIdentifier:e,respoolTime:k,id:String(f)});i=tt.getVariationByHash(I,t)}if(i){l&&this.updateStoredVariations(t,{[f]:{variationId:i.variationId,isTargetedRule:\"TARGETED_DELIVERY\"===o.type,status:d?B.Unsent:B.Sent,assignedTime:w}});const e={variationId:i.variationId,variationKey:i.variationKey,rule:o,featureFlagId:g,featureKey:h,experimentId:f,isTargetedRule:\"TARGETED_DELIVERY\"===o.type};return u.Ok(e)}}if(\"TARGETED_DELIVERY\"===o.type){const t={featureKey:h,featureFlagId:g,experimentId:null,variationKey:p,variationId:null,rule:null,isTargetedRule:!0};return u.Ok(t)}}}const f={featureKey:h,featureFlagId:g,experimentId:null,variationKey:p,variationId:null,rule:null,isTargetedRule:!1};return u.Ok(f)}createAndSaveForcedTargetedVariation(t,e,i,a,r,s,n){const o={variationKey:a.varByExp.variationKey,variationId:a.varByExp.variationId,rule:i,featureFlagId:e.id,featureKey:e.featureKey,experimentId:i.experimentId,isTargetedRule:\"TARGETED_DELIVERY\"===i.type};return s&&this.updateStoredVariations(t,{[i.experimentId]:{variationId:o.variationId,isTargetedRule:\"TARGETED_DELIVERY\"===i.type,status:r?B.Unsent:B.Sent,assignedTime:n}}),o}updateStoredVariations(t,e){const i=this.storage.read();if(!i.ok)return i;let a=i.data;a[t]||(a[t]={});for(const i in e)a[t][i]=e[i];return this.storage.write(a)}getVariationData(t,e){const i=this.getStoredVariations(t);if(!i.ok)return[];const a=[];for(const[t,r]of Object.entries(i.data))e(r.status)&&a.push({experimentId:Number(t),variationId:r.variationId,isTargetedRule:r.isTargetedRule});return a}updateForcedExperimentVariation(t,e,i){const a=this.storageForcedExperimentVariations.read();if(!a.ok)return a;let r=a.data;return r[t]||(r[t]={}),i?r[t][e]=i:delete r[t][e],this.storageForcedExperimentVariations.write(r)}updateForcedFeatureVariations(t,e){const i=this.storageForcedFeatureVariations.read();if(!i.ok)return i;let a=i.data;a[0]||(a[0]={}),a[1]||(a[1]={});const r=a[0],s=a[1];return r[t]||(r[t]={}),s[t]||(s[t]={}),e.forEach(e=>{(e.simulated?s[t]:r[t])[e.featureKey]=e}),this.storageForcedFeatureVariations.write(a)}clearSimulatedVariations(t){var e;const i=this.storageForcedFeatureVariations.read();if(!i.ok)return i;let a;const r=i.data;return(null===(e=null==r?void 0:r[1])||void 0===e?void 0:e[t])?(delete r[1][t],a=this.storageForcedFeatureVariations.write(r)):a=u.Ok(),a}getForcedFeatureVariation(t,e){var i,a,r,s;const n=this.storageForcedFeatureVariations.read();if(!n.ok)return n;const o=null===(a=null===(i=n.data[1])||void 0===i?void 0:i[t])||void 0===a?void 0:a[e];if(o)return u.Ok(o);const d=null===(s=null===(r=n.data[0])||void 0===r?void 0:r[t])||void 0===s?void 0:s[e];return u.Ok(d)}getForcedExperimentVariation(t,e){var i;const a=this.storageForcedExperimentVariations.read();if(!a.ok)return a;const r=null===(i=a.data[t])||void 0===i?void 0:i[e];return u.Ok(r)}parseForcedVariationData(t,e){const i=this.clientConfiguration.featureFlags.get(t.featureKey);if(!i)return v.error`Simulated feature flag '${t.featureKey}' not found`,null;let a=null;if(0===t.experimentId)return a={featureKey:t.featureKey,rule:null,varByExp:null,simulated:e},a;for(const r of i.rules){if(t.experimentId!==r.experimentId)continue;const i=r.variationByExposition.find(e=>e.variationId===t.variationId);if(i)return a={featureKey:t.featureKey,rule:{type:r.type,experimentId:r.experimentId},varByExp:{variationKey:i.variationKey,variationId:i.variationId},simulated:e},a}return v.error`Simulated variation ${t.variationId} not found`,null}simulatedVariationFromJson(t,e){return this.isSimulatedVariationJson(e)?this.parseForcedVariationData({featureKey:t,variationId:e.varId,experimentId:e.expId},!0):null}isSimulatedVariationJson(t){return t&&(\"number\"==typeof t.expId||null===t.expId)}evaluateCBScores(t,e,i){if(!(null==i?void 0:i.cbScores))return null;const a=t.experimentId,r=new ht(i.cbScores.cbs).getValues().get(a);let s=null;if(void 0!==r){const i=t.variationByExposition,n=r.map(t=>i.filter(e=>t.ids.includes(e.variationId))).find(t=>t.length>0);if(n){let i=0;if(n.length>1){const r=we.getHashDouble({visitorIdentifier:e,respoolTime:t.respoolTime,id:String(a)});i=Math.min(Math.floor(r*n.length),n.length-1)}s=n[i]}}return s}}let be=class{constructor({siteCode:t,externalEventSource:e,urlProvider:i}){this.url=i.getEventSourceUrl(),this.siteCode=t,this.eventSource=e,this.isConnectionOpen=!1}get isOpen(){return this.isConnectionOpen}open(t){this.eventSource.open({onEvent:this.handleMessage(t),url:this.url,eventType:\"configuration-update-event\"}),this.isConnectionOpen=!0}close(){this.eventSource.close(),this.isConnectionOpen=!1}onError(t){this.eventSource.onError?this.eventSource.onError(t):v.warning(\"EventSource does not have `onError` method provided. Real-time errors won't be handled.\")}handleMessage(t){return e=>{const i=JSON.parse(e.data),{siteCode:a,ts:r}=i;this.siteCode===a&&t(r)}}};class Te{constructor(t){this.currentSize=0,this.resultBody=[],this.hasUserAgent=!1,this.trackingVisitors={},this.prng=t}getTrackingBody(){const t={body:this.resultBody.join(\"\\n\"),hasUserAgent:this.hasUserAgent};return this.cleanup(),t}addData({visitorCode:t,variationData:e,visitorData:i,userAgent:a,isConsentProvided:r,isMappingIdentifier:s}){const n=[],o=this.getVariationDataLines(e),u=this.getVisitorDataLines(i);return n.push(...o,...u),this.addVisitorTrackingLines({visitorCode:t,lines:n,userAgent:a,isConsentProvided:r,isMappingIdentifier:s})}getVisitorDataLines(t){const e=[];for(const i of t){let t;if(!(i instanceof Tt||i.data.type!==K.Conversion&&i.data.type!==K.PageView)){const e=i.data.nonce;e?t=e:(t=tt.getNonce(this.prng),i.data.nonce=t)}t||(t=tt.getNonce(this.prng)),e.push(i.url+S+t)}return e}getVariationDataLines(t){const e=[];return t.forEach(t=>{e.push(\"eventType=experiment\"+E+t.experimentId+\"&variationId=\"+t.variationId+S+tt.getNonce(this.prng))}),e}prepareVisitorBody(t){const e=this.trackingVisitors[t];if(!e)return u.Err();const{lines:i,userAgent:a,isMappingIdentifier:r,isConsentProvided:s}=e,n=this.getIdentifier(t,r);if(i.length)i.forEach((t,e)=>{i[e]=t+n});else if(s){const t=this.getActivityLine();i.push(t+n)}a&&i.length&&(i[0]+=\"&userAgent=\"+a,this.hasUserAgent=!0);const o=this.checkSize(i);return o.ok&&this.resultBody.push(...i),o}cleanup(){this.currentSize=0,this.resultBody=[],this.hasUserAgent=!1,this.trackingVisitors={}}checkSize(t){let e=0;return e+=t.reduce((t,e)=>t+4*e.length,0),e+this.currentSize>1e7?u.Err():(this.currentSize+=e,u.Ok())}addVisitorTrackingLines({visitorCode:t,lines:e,userAgent:i,isConsentProvided:a,isMappingIdentifier:r}){return this.trackingVisitors[t]?(i&&(this.trackingVisitors[t].userAgent=i),this.trackingVisitors[t].lines.push(...e)):this.trackingVisitors[t]={isMappingIdentifier:r,isConsentProvided:a,userAgent:i,lines:e},this.prepareVisitorBody(t)}getActivityLine(){return\"eventType=activity\"+S+tt.getNonce(this.prng)}getIdentifier(t,e){return(e?M:b)+encodeURIComponent(t)}}class Se{constructor({dataManager:t,trackingStorage:e,variationConfiguration:i,trackingInterval:a,requester:r,prng:s,clientConfiguration:n}){this.intervalId=null,this.dataManager=t,this.trackingStorage=e,this.variationConfiguration=i,this.requester=r,this.bodyProvider=new Te(s),this.clientConfiguration=n;try{this.intervalId=setInterval(()=>{this.sendDataAll()},a)}catch(t){throw this.intervalId&&clearInterval(this.intervalId),t}}scheduleVisitor(t,e){this.trackingStorage.read().and(i=>{i.scheduledVisitors[`_${t}`]={isConsentProvided:e},this.trackingStorage.write(i)})}checkIsIdentifier(t){var e,i;const a=this.dataManager.isUniqueIdentifier(t),r=null!==(i=null===(e=this.dataManager.getMappingIdentifier(t))||void 0===e?void 0:e.mappingIdentifier)&&void 0!==i?i:t;let s=!1;if(a){const e=this.dataManager.getLinkedVisitor(t),i=this.dataManager.identifierCustomDataIndex;e||\"number\"!=typeof i?s=!0:this.dataManager.storeData({visitorCode:t,data:[new at(i,t)]})}return s&&t!=r}getUserAgent(t){const e=this.dataManager.getVisitorData(t);if(e){const t=e[K.UserAgent];if(t)return t.value}}sendDataAll(){return d(this,0,void 0,function*(){const t=this.trackingStorage.read();if(!t.ok)return;const{scheduledVisitors:e}=t.data;yield this.sendData(e)})}sendDataForVisitor(t,e){return d(this,0,void 0,function*(){this.trackingStorage.read().ok&&(yield this.sendData({[`_${t}`]:{isConsentProvided:e}}))})}sendData(t){return d(this,0,void 0,function*(){const e={},i=[],a=[];for(const[r,{isConsentProvided:s}]of Object.entries(t)){let t=r.startsWith(\"_\")?r.substring(1):r;const n=this.checkIsIdentifier(t),o=this.getUserAgent(t),u=this.getUnsentVisitorData(t,s),d=this.getUnsentVariationData(t,s);if(!this.bodyProvider.addData({visitorCode:t,variationData:d,visitorData:u,userAgent:o,isConsentProvided:s,isMappingIdentifier:n}).ok){v.warning(\"Visitor data to be tracked exceeded the request size limit. Some visitor data is kept to be sent later. If it is not caused by the peak load, decreasing the tracking interval is recommended.\");break}e[t]={visitorData:u,variationData:d},a.push({visitorCode:t,isConsentProvided:s}),i.push(r)}const{body:r,hasUserAgent:s}=this.bodyProvider.getTrackingBody();if(0!==i.length&&this.trackingStorage.read().and(t=>{i.forEach(e=>{delete t.scheduledVisitors[e]}),this.trackingStorage.write(t)}),r)if((yield this.requester.track(r,s)).ok)this.updateDataStatus(e,B.Sent);else{v.error(\"Tracking request failed\"),this.updateDataStatus(e,B.Unsent);let t={};for(let{visitorCode:e,isConsentProvided:i}of a)e=`_${e}`,t[e]={isConsentProvided:i};this.addNotTrackedVisitors(t)}})}addNotTrackedVisitors(t){const e=this.trackingStorage.read();if(!e.ok)return;const{scheduledVisitors:i}=e.data;Object.entries(t).forEach(([t,{isConsentProvided:e}])=>{i[t]||(i[t]={isConsentProvided:e})}),this.trackingStorage.write({scheduledVisitors:i})}updateDataStatus(t,e){let i={};for(const[a,{visitorData:r,variationData:s}]of Object.entries(t)){const t=r.filter(t=>!(t instanceof Tt)).map(t=>{const i=t;return i.status=e,i});t.length&&(i[a]=t);const n=s.map(t=>String(t.experimentId));this.variationConfiguration.updateDataStatus({visitorCode:a,experimentIdList:n,status:e})}0!==Object.keys(i).length&&(e===B.Sent?this.dataManager.storeTrackedData(i):this.dataManager.storeDataForVisitors(i,!1))}getUnsentVisitorData(t,e){const i=this.dataManager.getUnsentData(t),a=[];if(!i.length)return[];for(const t of i)t.url&&(e||this.clientConfiguration.hasAnyTargetedDeliveryRule&&!(t instanceof Tt)&&t.data.type===K.Conversion)&&a.push(t);if(a.length){const e=a.filter(t=>!(t instanceof Tt)).map(t=>{const e=t;return e.status=B.Pending,e});this.dataManager.storeTrackedData({[t]:e})}return a}getUnsentVariationData(t,e){const i=this.variationConfiguration.getUnsentData(t),a=new Set;if(!i.length)return[];const r=i.filter(t=>{const i=t.isTargetedRule||e;return i&&a.add(String(t.experimentId)),i});return this.variationConfiguration.updateDataStatus({visitorCode:t,experimentIdList:Array.from(a),status:B.Pending}),r}}class Ee{constructor(t,e){if(t<=0)throw new Error(\"'expirationPeriod' must be positive!\");this.expirationPeriod=t,this.clientConfiguration=e}getEngineTrackingCode(t){var e;let i=Ee.TRACKING_CODE_INIT;const a=Date.now()-this.expirationPeriod,r=this.clientConfiguration.experimentMap;for(const[s,n]of Object.entries(t)){if(void 0===n.assignedTime||n.assignedTime<a)continue;const t=Number(s),o=!(null===(e=r.get(t))||void 0===e?void 0:e.hasJsCssVariables);i+=`window.kameleoonQueue.push(['${Ee.ASSIGN_VARIATION_COMMAND}',${t},${n.variationId},true]);`,i+=`window.kameleoonQueue.push(['${Ee.TRIGGER_COMMAND}',${t},${o}]);`}return i}getAssignedVariationsFromKameleoonQueue(t){if(!Array.isArray(t))return{};const e={};for(const i of t){if(!this.isAssignVariationCommand(i))continue;const[,t,a]=i;e[t]={variationId:a,isTargetedRule:!1,status:B.Unsent,assignedTime:Date.now()}}return e}isAssignVariationCommand(t){if(!Array.isArray(t))return!1;const[e,i,a]=t;return e===Ee.ASSIGN_VARIATION_COMMAND&&\"number\"==typeof i&&\"number\"==typeof a}}Ee.TRACKING_CODE_INIT=\"window.kameleoonQueue=window.kameleoonQueue||[];\",Ee.ASSIGN_VARIATION_COMMAND=\"Experiments.assignVariation\",Ee.TRIGGER_COMMAND=\"Experiments.trigger\";let Oe=class t{constructor({siteCode:t,dependencies:e,configuration:i,internalConfiguration:a,stubMode:r}){var s;if(this.initialized=!1,this.stubMode=r,r)return this.variationConfiguration={},this.clientConfiguration={},this.dataManager={},this.consentDataStorage={},this.hybridManager={},this.requester={},this.externalPackageInfo={},this.visitorCodeManager={},this.eventManager={},this.tracker={},void(this.environment=\"\");const n=null==a?void 0:a.externals.externalLogger;n&&v.setLogger(n),St.setConditionFactoryInstance(new ae);const{settings:o}=new mt(t,i);this.environment=o.environment;const{externalStorage:u,externalEventSource:d,externalPackageInfo:c,externalVisitorCodeManager:h,externalRequester:g,externalPRNG:p,customDataManager:f}=a.externals,{useAbortController:m}=a.settings,y=new ue(u,se.ClientData),D=new ue(u,se.VariationData),C=new ue(u,se.ForcedExperimentVariation),k=new ue(u,se.ForcedFeatureVariation),I=new ue(u,se.ConsentData),w=new ue(u,se.TrackingData);let V=f;if(!V){const t=new ue(u,se.TargetingData),e=new ue(u,se.DataInfo);V=new he({dataStorage:t,infoStorage:e,cleanupInterval:o.cleanupInterval,packageInfo:c})}const b=null!==(s=null==e?void 0:e.urlProvider)&&void 0!==s?s:new $;b.initialize({domain:o.networkDomain,siteCode:o.siteCode,packageInfo:c,environment:o.environment});const T=new P({urlProvider:b,useAbortController:m,packageInfo:c,externalRequester:g,requestTimeout:o.requestTimeout,trackRetryDelay:o.trackRetryDelay}),S=new be({siteCode:o.siteCode,externalEventSource:d,urlProvider:b}),E=new l,O=new vt({urlProvider:b,storage:y,updateInterval:o.updateInterval,dataManager:V,eventManager:E,requester:T,eventSource:S,externalVisitorCodeManager:h,externalPackageInfo:c,defaultDataFile:null==i?void 0:i.defaultDataFile}),x=new Ee(5e3,O),F=new Ve(D,C,k,h,O),R=new Se({dataManager:V,trackingStorage:w,variationConfiguration:F,requester:T,trackingInterval:o.trackingInterval,prng:p,clientConfiguration:O});this.tracker=R,this.variationConfiguration=F,this.requester=T,this.hybridManager=x,this.dataManager=V,this.clientConfiguration=O,this.externalPackageInfo=c,this.consentDataStorage=I,this.visitorCodeManager=h,this.eventManager=E,null!==o.cleanupInterval&&new de(u,o.cleanupInterval)}initialize(){return d(this,0,void 0,function*(){if(this.stubMode)return!1;const t=yield this.clientConfiguration.initialize();return t.throw(),this.initialized=!0,t.ok})}addData(t,...e){if(this.stubMode)throw new C(m.Initialization);const i=\"string\"==typeof t?{visitorCode:t,data:e}:t,{visitorCode:a,data:r,track:s=!0}=i;if(this.visitorCodeManager.validateVisitorCode(a).throw(),!this.initialized)throw new C(m.Initialization);this.dataManager.storeData({visitorCode:a,track:s,data:r}).throw()}getRemoteVisitorData({visitorCode:t,shouldAddData:e=!0,filters:i=kt}){return d(this,0,void 0,function*(){if(this.stubMode)throw new C(m.Initialization);if(!this.initialized)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const{previousVisitAmount:a}=i;if(\"number\"==typeof a&&(a<1||a>25))throw new C(m.VisitAmount);const r=this.dataManager.isUniqueIdentifier(t),s=(yield this.requester.getVisitorData({visitorCode:t,filters:i,isMappingIdentifier:r})).throw(),{visitorData:n,storageVisitorData:o,visitsData:u,mappingIdentifier:d}=pt.parseVisitorData({data:s,filters:i,visitorCode:t,dataManager:this.dataManager,variationConfiguration:this.variationConfiguration});for(const i of o)(e||this.dataManager.isPersistentCustomData(i))&&this.addData(t,i);return u&&e&&this.addData(t,u),(null==i?void 0:i.visitorCode)&&d&&this.dataManager.setMappingIdentifier(t,d),n})}trackConversion({visitorCode:t,goalId:e,negative:i,revenue:a,metadata:r}){this.stubMode||(this.addData(t,new rt({goalId:e,revenue:a,negative:i,metadata:r})),this.flush(t))}_flushInternal(t,e=!1){return d(this,0,void 0,function*(){if(\"string\"==typeof t)e?yield this.tracker.sendDataForVisitor(t,this._isConsentProvided(t)):this.tracker.scheduleVisitor(t,this._isConsentProvided(t));else{for(const t of this.dataManager.unsentDataVisitors)this.tracker.scheduleVisitor(t,this._isConsentProvided(t));for(const t of this.variationConfiguration.getVisitorsWithUnsentData())this.tracker.scheduleVisitor(t,this._isConsentProvided(t));e&&(yield this.tracker.sendDataAll())}})}flushInstant(t){return d(this,0,void 0,function*(){if(this.stubMode)throw new C(m.Initialization);const{visitorCode:e}=this._parseFlushParams(t);if(!this.initialized)throw new C(m.Initialization);yield this._flushInternal(e,!0)})}flush(t){if(this.stubMode)throw new C(m.Initialization);const{visitorCode:e,isInstant:i}=this._parseFlushParams(t);if(!this.initialized)throw new C(m.Initialization);this._flushInternal(e,i)}_parseFlushParams(t){var e;let i,a=!1;return\"string\"==typeof t?i=t:t&&(i=t.visitorCode,a=null!==(e=t.instant)&&void 0!==e&&e),void 0!==i&&this.visitorCodeManager.validateVisitorCode(i).throw(),{visitorCode:i,isInstant:a}}getFeatureFlags(){if(this.stubMode)throw new C(m.Initialization);if(!this.initialized)throw new C(m.Initialization);const t=this.clientConfiguration.featureFlags,e=[];return t.forEach(({id:t,featureKey:i})=>{e.push({id:t,key:i})}),e}getVisitorFeatureFlags(t){if(this.stubMode)throw new C(m.Initialization);if(!this.initialized)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const e=this._getActiveFeatureVariations(t),i=[];return e.forEach(({featureFlagId:t,featureKey:e})=>{i.push({id:t,key:e})}),i}getVariation({visitorCode:t,featureKey:e,track:i=!0}){if(this.stubMode)throw new C(m.Initialization);return this.visitorCodeManager.validateVisitorCode(t).throw(),this._getFeatureVariation({visitorCode:t,featureKey:e,track:i}).throw()}getVariations({visitorCode:t,onlyActive:e=!1,track:i=!0}){if(this.stubMode)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const a=new Map,r=this.clientConfiguration.featureFlags;for(const s of r.values())try{const r=this._getFeatureVariation({visitorCode:t,featureKey:s.featureKey,track:i});!r.ok||e&&r.data.key===yt||a.set(s.featureKey,r.data)}catch(t){if(t instanceof C&&t.type!==m.FeatureFlagEnvironmentDisabled)throw t}return a}getActiveFeatureFlags(t){if(this.stubMode)throw new C(m.Initialization);if(!this.initialized)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const e=this._getActiveFeatureVariations(t),i=new Map;return e.forEach(e=>{const{variationKey:a,featureKey:r,variationId:s,experimentId:n}=e;let o=[];null!==s&&null!==n&&(o=this._getFeatureVariables({visitorCode:t,featureKey:r,variationKey:a}));const u=o.map(t=>pt.parseFeatureVariable(t).throw());i.set(e.featureKey,{name:\"\",key:a,id:s,experimentId:n,variables:u})}),i}getFeatureFlagVariationKey(t,e){if(this.stubMode)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const{key:i}=this._getFeatureVariation({visitorCode:t,featureKey:e,track:!0}).throw();return i}getFeatureFlagVariable({visitorCode:t,featureKey:e,variableKey:i}){if(this.stubMode)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const{key:a}=this._getFeatureVariation({visitorCode:t,featureKey:e,track:!0}).throw(),r=this._getFeatureVariables({visitorCode:t,featureKey:e,variationKey:a}).find(t=>t.key===i);if(!r)throw new C(m.FeatureFlagVariableNotFound,i,t);const{type:s,value:n}=pt.parseFeatureVariable(r).throw();return{type:s,value:n}}getFeatureFlagVariables(t,e){if(this.stubMode)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const{key:i}=this._getFeatureVariation({visitorCode:t,featureKey:e,track:!0}).throw(),a=this._getFeatureVariables({visitorCode:t,featureKey:e,variationKey:i}),r=[];for(const t of a){const e=pt.parseFeatureVariable(t).throw();r.push(e)}return r}isFeatureFlagActive(t,e){if(this.stubMode)throw new C(m.Initialization);let[i,a,r]=[\"\",\"\",!0];\"string\"==typeof t?(i=t,a=e):([i,a]=[t.visitorCode,t.featureKey],void 0!==t.track&&(r=t.track)),this.visitorCodeManager.validateVisitorCode(i).throw();try{const{key:t}=this._getFeatureVariation({visitorCode:i,featureKey:a,track:r}).throw();return t!==yt}catch(t){if(t instanceof C&&t.type===m.FeatureFlagEnvironmentDisabled)return!1;throw t}}getRemoteData(t){return d(this,0,void 0,function*(){return this.stubMode?null:(yield this.requester.getRemoteData(t)).throw()})}getVisitorWarehouseAudience({visitorCode:t,customDataIndex:e,warehouseKey:i}){return d(this,0,void 0,function*(){if(this.stubMode)return null;this.visitorCodeManager.validateVisitorCode(t).throw();const a=yield this.getRemoteData(i||t);if(!a)throw new C(m.RemoteData,`No data found for ${i||t} key`);if(!a[Dt]||0===Object.keys(a[Dt]).length)return null;const r=new at(e,...Object.keys(a[Dt]));return this.dataManager.storeData({visitorCode:t,track:!0,data:[r]}),r})}onEvent(t,e){if(this.stubMode)throw new C(m.Initialization);if(!this.initialized)throw new C(m.Initialization);this.eventManager.addEventHandler(t,e)}getEngineTrackingCode(t){if(this.stubMode)return\"\";this.visitorCodeManager.validateVisitorCode(t).throw();const e=this.variationConfiguration.getStoredVariations(t);return this.hybridManager.getEngineTrackingCode(e.ok?e.data:{})}_processKameleoonQueue(t,e){if(this.stubMode)return;const i=this.hybridManager.getAssignedVariationsFromKameleoonQueue(e);Object.keys(i).length&&this.variationConfiguration.updateStoredVariations(t,i).ok&&this.flush(t)}isInitialized(){return this.initialized}setLogLevel(t){v.setLogLevel(t)}setForcedVariation({visitorCode:t,experimentId:e,variationKey:i,forceTargeting:a=!0}){this.stubMode||(this.visitorCodeManager.validateVisitorCode(t).throw(),this._setForcedVariation({visitorCode:t,experimentId:e,variationKey:i,forceTargeting:a}).throw())}evaluateAudiences(t){if(this.stubMode)return;this.visitorCodeManager.validateVisitorCode(t).throw();const e=[],i=this.dataManager.getVisitorData(t);for(let a of this.clientConfiguration.segments.values()){if(!a.audienceTracking)continue;const r=tt.checkTargeting({segment:a,visitorCode:t,targetingData:i,experimentId:null,clientConfiguration:this.clientConfiguration,packageInfo:this.externalPackageInfo,dataManager:this.dataManager,variationConfiguration:this.variationConfiguration});r.ok&&r.data&&e.push(new ce(Number(a.id)))}0!==e.length&&this.dataManager.storeData({visitorCode:t,data:e}),this.flush(t)}getDataFile(){const t={featureFlags:new Map,dateModified:0};return this.stubMode?t:this.clientConfiguration.dataFile}setUserConsent({visitorCode:t,consent:e,setData:i}){this.stubMode||(this.visitorCodeManager.validateVisitorCode(t).throw(),this.updateConsentData(t,e),e&&i({visitorCode:t,key:se.VisitorCode,maxAge:ge,path:\"/\"}))}updateConsentData(t,e){const i=this.consentDataStorage.read(),a=e?le.Given:le.NotGiven;if(!i.ok)return void(i.error.type===m.StorageEmpty&&this.consentDataStorage.write({[t]:{consent:a}}));const r=i.data;r[t]={consent:a},this.consentDataStorage.write(r)}getLegalConsent(t){let e;const i=this.consentDataStorage.read();return e=i.ok?this.extractLegalConsent(i.data[t]):le.Unknown,e}extractLegalConsent(t){if(void 0===t)return le.Unknown;if(\"boolean\"==typeof t)return t?le.Given:le.NotGiven;const e=t.consent;return\"boolean\"==typeof e?e?le.Given:le.NotGiven:e}_isConsentProvided(t){const{isConsentRequired:e}=this.clientConfiguration;return!e||this.getLegalConsent(t)==le.Given}_getFeatureVariables({visitorCode:t,featureKey:e,variationKey:i}){const a=this.clientConfiguration.featureFlags.get(e);if(!a)throw new C(m.FeatureFlagConfigurationNotFound,e);const r=a.variations.find(t=>t.key===i);if(!r)throw new C(m.FeatureFlagVariationNotFound,i,t);return r.variables}_getActiveFeatureVariations(t){const e=this.clientConfiguration.featureFlags,i=[];for(const a of e.values()){const e=this._getForcedFeatureVariation(t,a.featureKey);if(a.environmentEnabled||(null==e?void 0:e.simulated))try{const r=this._evaluate({visitorCode:t,featureFlag:a,track:!1,save:!1,forcedVariation:e});r.variationKey!==yt&&i.push({variationKey:r.variationKey,variationId:r.variationId,experimentId:r.experimentId,featureFlagId:a.id,featureKey:a.featureKey,rule:null,isTargetedRule:\"TARGETED_DELIVERY\"===r.ruleType})}catch(t){if(t instanceof C){t.type!=m.FeatureFlagEnvironmentDisabled&&v.error`Unexpected error: ${t}`;continue}}}return i}_evaluate({visitorCode:e,featureFlag:i,track:a,save:r,forcedVariation:n}){let o;const u=this.dataManager.getVisitorData(e);if(n)o=t.EvaluatedExperiment.fromForcedFeatureVariation(i.defaultVariationKey,n);else if(this._isVisitorNotInHoldout(e,a,r,i,u)&&this._isFFUnrestrictedByMEGroup(e,i,u)){const s=this._getCodeForHash(e,i.bucketingCustomDataIndex,u),n=this.getLegalConsent(e),d=this.variationConfiguration.getVariation({visitorCode:e,visitorIdentifier:s,featureFlag:i,track:a,withAssignment:r,targetingData:u,clientConfiguration:this.clientConfiguration,dataManager:this.dataManager,packageInfo:this.externalPackageInfo,legalConsent:n}).throw();o=t.EvaluatedExperiment.fromVariationData(d)}else o=t.EvaluatedExperiment.fromDefaultVariationKey(i.defaultVariationKey);return r&&!o.isSimulated&&null!==o.experimentId&&null!==o.variationId&&this.variationConfiguration.updateStoredVariations(e,{[o.experimentId]:{variationId:o.variationId,isTargetedRule:\"TARGETED_DELIVERY\"===o.ruleType,status:a?B.Unsent:B.Sent,assignedTime:Date.now()}}),this.eventManager.fireEvent(s.Evaluation,{featureKey:i.featureKey,variation:{key:o.variationKey,experimentId:o.experimentId,id:o.variationId}}),o}_isFFUnrestrictedByMEGroup(t,e,i){const a=e.mutuallyExclusiveGroup;if(!a)return!0;let r=!0;const s=this.clientConfiguration.meGroups.get(a);if(s){const n=this._getCodeForHash(t,e.bucketingCustomDataIndex,i),o=we.getHashDoubleForMEGroup(n,a);r=s.getFeatureFlagByHash(o)===e}return r}_getFeatureVariation({visitorCode:t,featureKey:e,track:i}){var a,r;if(!this.initialized)return u.Err(new C(m.Initialization));const s=this.clientConfiguration.featureFlags.get(e);if(!s)return u.Err(new C(m.FeatureFlagConfigurationNotFound,e));const n=this._getForcedFeatureVariation(t,e);if(!s.environmentEnabled&&!(null==n?void 0:n.simulated))return u.Err(new C(m.FeatureFlagEnvironmentDisabled,s.featureKey,this.environment));const o=this._evaluate({visitorCode:t,featureFlag:s,track:i,save:!0,forcedVariation:n}),{experimentId:d,variationId:l,variationKey:c,isSimulated:h}=o;let g=new Map;try{this._getFeatureVariables({visitorCode:t,featureKey:e,variationKey:c}).forEach(t=>{const e=pt.parseFeatureVariable(t).throw();g.set(t.key,e)})}catch(t){}i&&!h&&this.flush(t);const p={name:null!==(r=null===(a=s.variations.find(t=>t.key===c))||void 0===a?void 0:a.name)&&void 0!==r?r:\"\",key:c,id:l,experimentId:d,variables:g};return u.Ok(p)}_isVisitorNotInHoldout(t,e,i,a,r){const s=this.clientConfiguration.holdout;if(!s)return!0;let n=!0;if((this.clientConfiguration.isConsentRequired?this.getLegalConsent(t):le.Given)==le.NotGiven&&\"FULLY_BLOCK\"==this.clientConfiguration.consentBlockingBehaviour)throw new C(m.FeatureFlagEnvironmentDisabled,`Evaluation of holdout is blocked because consent is not provided for visitor '${t}'`);const o=this._getCodeForHash(t,null==a?void 0:a.bucketingCustomDataIndex,r),u=we.getHashDouble({visitorIdentifier:o,respoolTime:null,id:String(s.experimentId)});let d=tt.getVariationByHash(s.variationByExposition,u);return null!==d&&(n=\"in-holdout\"!==d.variationKey,i&&this.variationConfiguration.updateStoredVariations(t,{[s.experimentId]:{variationId:d.variationId,isTargetedRule:!1,status:e?B.Unsent:B.Sent,assignedTime:Date.now()}})),n}_setForcedVariation({visitorCode:t,experimentId:e,variationKey:i,forceTargeting:a=!0}){if(null===i)return this.variationConfiguration.updateForcedExperimentVariation(t,e,null);let r=null,s=null;return r=this.clientConfiguration.experimentMap.get(e),r?(s=r.variations.get(i),void 0===s?(v.error`Variation with key ${i} not found in experiment ${r} for visitor ${t}`,u.Err(new C(m.FeatureFlagVariationNotFound,i,t))):(r={type:r.type,experimentId:e},s={variationKey:i,variationId:s},this.variationConfiguration.updateForcedExperimentVariation(t,e,{rule:r,varByExp:s,forceTargeting:a}))):(v.error`Experiment with id ${e} not found for visitor ${t}`,u.Err(new C(m.FeatureFlagExperimentNotFound,e,t)))}_getForcedFeatureVariation(t,e){const i=this.variationConfiguration.getForcedFeatureVariation(t,e);return i.ok?i.data:null}_getCodeForHash(t,e,i){var a;let r;if(null!=e){const t=null==i?void 0:i.customData;if(t){const i=null===(a=t[e])||void 0===a?void 0:a.value[0];i&&(r=i)}}return r||(r=this.dataManager.getVisitorIdentifier(t)),r}_refreshDataFileIfStale(){return d(this,0,void 0,function*(){const t=yield this.clientConfiguration.refreshDataFileIfStale();return t.ok&&t.data})}};Oe.EvaluatedExperiment=class{static fromForcedFeatureVariation(t,e){var i,a,r,s;let n=t;return e.varByExp?n=e.varByExp.variationKey:\"EXPERIMENTATION\"===(null===(i=e.rule)||void 0===i?void 0:i.type)&&(n=yt),{variationKey:n,variationId:(null===(a=e.varByExp)||void 0===a?void 0:a.variationId)||null,experimentId:(null===(r=e.rule)||void 0===r?void 0:r.experimentId)||null,ruleType:(null===(s=e.rule)||void 0===s?void 0:s.type)||null,isSimulated:e.simulated}}static fromVariationData(t){var e,i;return{variationKey:t.variationKey,variationId:t.variationId,experimentId:t.experimentId,ruleType:null!==(i=null===(e=t.rule)||void 0===e?void 0:e.type)&&void 0!==i?i:null,isSimulated:!1}}static fromDefaultVariationKey(t){return{variationKey:t,variationId:null,experimentId:null,ruleType:null,isSimulated:!1}}};class xe{static simulateSuccessRequest(t,e){switch(t){case _.Tracking:return new Promise(t=>{t({status:204,json:()=>new Promise(t=>t(null)),text:()=>new Promise(t=>t(\"\")),ok:!0})});case _.Configuration:case _.RemoteData:return new Promise(t=>{t({status:200,json:()=>new Promise(t=>t(e)),text:()=>new Promise(t=>t(\"\")),ok:!0})});default:D(t)}}static getCookieValue(t,e){const i=t.split(\"; \").find(t=>{const[i,a]=t.split(\"=\");return i===e&&\"\"!==a});return i?i.split(\"=\")[1]:null}}var Fe,Re=u.Err,Me=u.Ok;function Ae(t,e,i,a){return new(i||(i=Promise))(function(r,s){function n(t){try{u(a.next(t))}catch(t){s(t)}}function o(t){try{u(a.throw(t))}catch(t){s(t)}}function u(t){var e;t.done?r(t.value):(e=t.value,e instanceof i?e:new i(function(t){t(e)})).then(n,o)}u((a=a.apply(t,e||[])).next())})}\"function\"==typeof SuppressedError&&SuppressedError;class Ne{sendRequest({url:t,parameters:e}){return Ae(this,void 0,void 0,function*(){return yield fetch(t,e)})}}!function(t){t.PairsDelimiter=\"; \",t.KeyValueDelimiter=\"=\",t.MaxAge=\"Max-Age\",t.Path=\"Path\",t.Domain=\"Domain\"}(Fe||(Fe={}));class _e{getData(t){const e=document.cookie;let i=null;return e&&(i=xe.getCookieValue(e,t)),i}setData({visitorCode:t,domain:e,maxAge:i,key:a,path:r}){const s=this.getResultCookie({domain:e,visitorCode:t,key:a,maxAge:i,path:r});document.cookie=s}getResultCookie({domain:t,visitorCode:e,maxAge:i,key:a,path:r}){const s=[a+Fe.KeyValueDelimiter+e,Fe.MaxAge+Fe.KeyValueDelimiter+i,Fe.Path+Fe.KeyValueDelimiter+r];return t&&s.push(Fe.Domain+Fe.KeyValueDelimiter+t),s.join(Fe.PairsDelimiter)}}class Pe{read(t){const e=localStorage.getItem(t);return t!==se.ConsentData||e&&\"{}\"!==e?e?JSON.parse(e):null:this.getEngineConsentData()}write(t,e){localStorage.setItem(t,JSON.stringify(e))}getEngineConsentData(){var t;this.visitorCodeManager||(this.visitorCodeManager=new _e);const e=this.visitorCodeManager.getData(se.VisitorCode);if(!e)return null;try{const i=localStorage.getItem(\"kameleoonLegalConsent\");if(!i)return null;const a=JSON.parse(i),r=null===(t=null==a?void 0:a.value)||void 0===t?void 0:t.AB_TESTING;return\"boolean\"==typeof r?{[e]:{consent:r?le.Given:le.NotGiven}}:null}catch(t){return null}}}class Ue{open({eventType:t,onEvent:e,url:i}){const a=new EventSource(i);this.eventSource=a,this.eventSource.addEventListener(t,e)}close(){this.eventSource&&this.eventSource.close()}onError(t){this.eventSource&&(this.eventSource.onerror=t)}}class Le{getRandomNumber(){if(\"undefined\"!=typeof window&&(null===window||void 0===window?void 0:window.crypto)){const t=new Uint32Array(1),e=4294967296;return window.crypto.getRandomValues(t),t[0]/e}return Math.random()}}class Be{log(t,e){switch(e=`${(new Date).toLocaleString(\"en-US\",{timeZoneName:\"short\"})} ${e}`,t){case h.DEBUG:console.debug(e);break;case h.INFO:console.info(e);break;case h.WARNING:console.warn(e);break;case h.ERROR:console.error(e)}}}class Ke{constructor(t,e,i,a){this.dataManager=t,this.tracker=e,this.isConsentProvided=i,this.setup(a)}setup(t){setInterval(()=>{this.updateLastActivity()},t),this.updateLastActivity()}updateLastActivity(){const t=this.dataManager.updateLastActivity();t&&this.tracker.scheduleVisitor(t,this.isConsentProvided(t))}}class ze extends he{constructor({dataStorage:t,infoStorage:e,cleanupInterval:i,packageInfo:a,platformAnalyzer:r}){super({dataStorage:t,infoStorage:e,cleanupInterval:i,packageInfo:a}),this.visitor=null,this.platformAnalyzer=r,this.updateVisitor()}getUnsentData(t){var e,i;const a=super.getUnsentData(t),r=super.getVisitorData(t);if(!r)return a;const s=r[K.Browser],n=r[K.Device],o=r[K.OperatingSystem],u=new Tt({browserType:null==s?void 0:s.browser,browserVersion:null==s?void 0:s.version,visitNumber:null===(e=this.visitor)||void 0===e?void 0:e.visitNumber,timeSincePreviousVisit:null===(i=this.visitor)||void 0===i?void 0:i.timeSincePreviousVisit,os:null==o?void 0:o.operatingSystem,deviceType:null==n?void 0:n.device});return a.push(u),a}storeData(t){const{visitorCode:e,data:i}=t;return i.length&&this.checkVisitor(e),super.storeData(t)}storeDataForVisitors(t){return super.storeDataForVisitors(t,!0)}getVisitorData(t){return this.checkVisitor(t),super.getVisitorData(t)}updateLastActivity(){var t,e,i,a;if(!this.visitor)return null;const r=this.dataStorage.read();if(!r.ok)return null;const s=r.data;let n=null!==(t=s[this.visitor.visitorCode])&&void 0!==t?t:{};\"string\"==typeof n&&(n=s[n]);let o=n[K.VisitsData];o||(o={visits:[],visitNumber:0,type:K.VisitsData,status:B.Sent,expirationTime:0},n[K.VisitsData]=o);const u=this.fetchVisit(o.visits,o.visits.length-1),d=null!==(e=null==u?void 0:u.timeLastActivity)&&void 0!==e?e:0,l=Date.now();let c=null!==(i=o.visitNumber)&&void 0!==i?i:o.visits.length?o.visits.length-1:0;if(l-d>18e5)c+=d>0?1:0,et.insertVisitInOrderedListMutably({list:o.visits,visit:{timeStarted:l,timeLastActivity:l}}),this.visitor.timeSincePreviousVisit=u?l-d:0;else if(o.visits.length&&(o.visits[o.visits.length-1]={timeStarted:null!==(a=null==u?void 0:u.timeStarted)&&void 0!==a?a:l,timeLastActivity:l},-1===this.visitor.timeSincePreviousVisit)){const t=this.fetchVisit(o.visits,o.visits.length-2);this.visitor.timeSincePreviousVisit=t?l-t.timeLastActivity:0}return o.visitNumber=c,this.visitor.visitNumber=c,this.dataStorage.write(s),this.visitor.visitorCode}checkVisitor(t){this.visitor&&this.visitor.visitorCode===t||this.createVisitor(t)}createVisitor(t){var e,i,a;this.visitor=new je(t);try{const r=this.platformAnalyzer.getResult(),s=[];(null===(e=r.os)||void 0===e?void 0:e.name)&&s.push(new ot(r.os.name)),(null===(i=r.platform)||void 0===i?void 0:i.type)&&s.push(new nt(r.platform.type)),(null===(a=r.browser)||void 0===a?void 0:a.name)&&s.push(new st(r.browser.name,r.browser.version)),r.pageView&&s.push(r.pageView),s.length&&this.storeData({visitorCode:t,data:s})}finally{this.updateLastActivity()}}updateVisitor(){var t;const e=this.dataStorage.read();if(!e.ok)return;const i=e.data;let a,r=-1;for(const[e,s]of Object.entries(i)){if(\"string\"==typeof s)continue;const i=s[K.VisitsData];if(!i){a||(a=e);continue}const n=i.visits.length?i.visits[i.visits.length-1]:null;if(n){const i=null!==(t=\"number\"==typeof n?n:null==n?void 0:n.timeLastActivity)&&void 0!==t?t:0;i>r&&(r=i,a=e)}else a||(a=e)}a?this.createVisitor(a):this.visitor=null}fetchVisit(t,e){if(e<0||e>=t.length)return null;const i=t[e];return\"number\"==typeof i?{timeStarted:i,timeLastActivity:i}:i}}class je{constructor(t){this.visitNumber=0,this.timeSincePreviousVisit=-1,this.visitorCode=t}}class Ge{static getFirstMatch(t,e){const i=e.match(t);return i&&i.length>0&&i[1]||\"\"}static getSecondMatch(t,e){const i=e.match(t);return i&&i.length>1&&i[2]||\"\"}static assign(t,...e){return Object.assign(t,...e)}}class $e{constructor(){this.userAgent=navigator.userAgent||\"\",this.parsedResult={},\"\"!==this.userAgent&&this.parse()}parseBrowser(){const t=[{test:[/chrome|crios|crmo/i],describe:t=>({name:G.Chrome,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:chrome|crios|crmo)\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/firefox|iceweasel|fxios/i],describe:t=>({name:G.Firefox,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:firefox|iceweasel|fxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/safari|applewebkit/i],describe:t=>({name:G.Safari,version:this.getBrowserVersion(Ge.getFirstMatch(/version\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/opr\\/|opios/i],describe:t=>({name:G.Opera,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:opr|opios)[\\s/](\\S+)/i,t))})},{test:[/edg([ea]|ios)/i],describe:t=>({name:G.InternetExplorer,version:this.getBrowserVersion(Ge.getSecondMatch(/edg([ea]|ios)\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/googlebot/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/googlebot\\/(\\d+(\\.\\d+))/i,t)||Ge.getFirstMatch(/version\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/SamsungBrowser/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:SamsungBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/yabrowser/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:yabrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/ucbrowser/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:ucbrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/vivaldi/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/vivaldi\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/phantom/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/phantomjs\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/electron/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:electron)\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/chromium/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:chromium)[\\s/](\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/opera/i],describe:t=>({name:G.Opera,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:opera)[\\s/](\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/msie|trident/i],describe:t=>({name:G.InternetExplorer,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:msie |rv:)(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/.*/i],describe:t=>{const e=t.includes(\"(\")?/^(.*)\\/(.*)[ \\t]\\((.*)/:/^(.*)\\/(.*) /;return{name:G.Other,version:this.getBrowserVersion(Ge.getSecondMatch(e,t))}}}].find(t=>t.test.some(t=>t.test(this.userAgent)));return t&&(this.parsedResult.browser=t.describe(this.userAgent)),this.parsedResult.browser||{}}parseOS(){const t=[{test:[/windows phone/i],describe:()=>({name:j.WindowsPhone})},{test:[/windows /i],describe:()=>({name:j.Windows})},{test:[/Macintosh(.*?) FxiOS(.*?) Version\\//],describe:t=>({name:j.IOS,version:Ge.getSecondMatch(/(Version\\/)(\\d[\\d.]+)/,t)})},{test:[/macintosh/i],describe:t=>({name:j.Mac,version:Ge.getFirstMatch(/mac os x (\\d+(\\.?_?\\d+)+)/i,t).replace(/[_\\s]/g,\".\")})},{test:[/(ipod|iphone|ipad)/i],describe:t=>({name:j.IOS,version:Ge.getFirstMatch(/os (\\d+([_\\s]\\d+)*) like mac os x/i,t).replace(/[_\\s]/g,\".\")})},{test:[/android/i],describe:()=>({name:j.Android})},{test:[/linux/i],describe:()=>({name:j.Linux})}].find(t=>t.test.some(t=>t.test(this.userAgent)));return t&&(this.parsedResult.os=t.describe(this.userAgent)),this.parsedResult.os||{}}parsePlatform(){const t=[{test:()=>{var t,e;return(null===(t=this.parsedResult.os)||void 0===t?void 0:t.name)===j.Android&&Number(String(null===(e=this.parsedResult.os)||void 0===e?void 0:e.version).split(\".\")[0])>=3},describe:t=>({type:z.Tablet})},{test:()=>{var t;return(null===(t=this.parsedResult.os)||void 0===t?void 0:t.name)===j.Android},describe:()=>({type:z.Phone})},{test:()=>{var t;return(null===(t=this.parsedResult.os)||void 0===t?void 0:t.name)===j.Mac},describe:()=>({type:z.Desktop})},{test:()=>{var t;return(null===(t=this.parsedResult.os)||void 0===t?void 0:t.name)===j.Windows},describe:()=>({type:z.Desktop})},{test:()=>{var t;return(null===(t=this.parsedResult.os)||void 0===t?void 0:t.name)===j.Linux},describe:()=>({type:z.Desktop})}],e=[{test:[/huserAgentwei/i],describe:t=>({type:z.Phone})},{test:[/nexus\\s*(?:7|8|9|10).*/i],describe:()=>({type:z.Tablet})},{test:[/ipad/i],describe:()=>({type:z.Tablet})},{test:[/Macintosh(.*?) FxiOS(.*?) Version\\//],describe:()=>({type:z.Tablet})},{test:[/kftt build/i],describe:()=>({type:z.Tablet})},{test:[/silk/i],describe:()=>({type:z.Tablet})},{test:[/tablet(?! pc)/i],describe:()=>({type:z.Tablet})},{test:[/ipod|iphone/i],describe:()=>({type:z.Phone})},{test:[/nexus\\s*[0-6].*/i,/galaxy nexus/i],describe:()=>({type:z.Phone})},{test:[/[^-]mobi/i],describe:()=>({type:z.Phone})},{test:[/blackberry/i],describe:()=>({type:z.Phone})},{test:[/bada/i],describe:()=>({type:z.Phone})},{test:[/windows phone/i],describe:()=>({type:z.Phone})},{test:[/android/i],describe:()=>({type:z.Phone})},{test:[/ios/i],describe:()=>({type:z.Desktop})},{test:[/windows/i],describe:()=>({type:z.Desktop})},{test:[/linux/i],describe:()=>({type:z.Desktop})}].find(t=>t.test.some(t=>t.test(this.userAgent)))||t.find(t=>t.test());return e&&(this.parsedResult.platform=e.describe(this.userAgent)),this.parsedResult.platform||{}}parse(){this.userAgent&&(this.parseBrowser(),this.parseOS(),this.parsePlatform())}getBrowserVersion(t){if(!t)return;const e=t.split(\".\");if(0===e.length)return;const i=e.length>1?`${e[0]}.${e[1]}`:e[0],a=parseFloat(i);return isNaN(a)?void 0:a}parseWebView(){var t;let e=null===(t=window.location)||void 0===t?void 0:t.href;if(e){const t=document?document.title:\"\";this.parsedResult.pageView=new it({urlAddress:e,title:t})}}getResult(){return this.parseWebView(),Ge.assign({},this.parsedResult)}}class qe extends Oe{constructor({siteCode:t,configuration:e,externals:i,_internals:a,stubMode:r}){var s;if(r)return super({siteCode:t,internalConfiguration:{},stubMode:r}),this.internalVisitorCodeManager={},this.externalVisitorCodeManager={},void(this.hybridQueueProcessed=!0);const n=(null==a?void 0:a.prng)||new Le,o=(null==i?void 0:i.storage)||new Pe,u=(null==i?void 0:i.requester)||new Ne,d=(null==i?void 0:i.eventSource)||new Ue,l=new pe,c=(null==i?void 0:i.visitorCodeManager)||new _e,h=(null==a?void 0:a.packageInfo)||{type:Ct.JAVASCRIPT,version:\"4.24.0\",isServer:!1},g=new ue(o,se.TargetingData),p=new ue(o,se.DataInfo),v=new ze({dataStorage:g,infoStorage:p,cleanupInterval:0,packageInfo:h,platformAnalyzer:null!==(s=null==a?void 0:a.platformAnalyzer)&&void 0!==s?s:new $e});super({siteCode:t,configuration:e,internalConfiguration:{externals:{externalPRNG:n,externalStorage:o,externalRequester:u,externalEventSource:d,externalVisitorCodeManager:l,externalPackageInfo:h,externalLogger:(null==i?void 0:i.logger)||new Be,customDataManager:v},settings:{useAbortController:!0}}});const f=Z.validateDomain(null==e?void 0:e.cookieDomain);this.domain=f.ok?f.data:void 0,this.internalVisitorCodeManager=l,this.externalVisitorCodeManager=c,this.customDataManager=v,this.hybridQueueProcessed=!1}initialize(){const t=Object.create(null,{initialize:{get:()=>super.initialize}});return Ae(this,void 0,void 0,function*(){if(this.stubMode)return!1;const e=t.initialize.call(this);return new Ke(this.customDataManager,this.tracker,t=>this._isConsentProvided(t),15e3),e})}getVisitorCode(t){var e;if(this.stubMode)return\"\";this.internalVisitorCodeManager.getData=t=>this.externalVisitorCodeManager.getData(t),this.internalVisitorCodeManager.setData=t=>{this.externalVisitorCodeManager.setData(Object.assign(Object.assign({},t),{domain:this.domain}))};const i=this.internalVisitorCodeManager.getVisitorCode(t);return this._handleKameleoonQueue(i),this.initialized&&(null===(e=this.customDataManager)||void 0===e||e.checkVisitor(i)),i}_handleKameleoonQueue(t){if(this.hybridQueueProcessed)return;const e=this._getKameleoonQueue();e&&(this.hybridQueueProcessed=!0,super._processKameleoonQueue(t,e))}_getKameleoonQueue(){if(\"undefined\"==typeof window)return null;const t=window.kameleoonQueue;return Array.isArray(t)?t:null}setLegalConsent(t,e){this.stubMode||(super.setUserConsent({visitorCode:t,consent:e,setData:t=>{this.externalVisitorCodeManager.setData(Object.assign(Object.assign({},t),{domain:this.domain}))}}),super.flush(t))}}export{bt as ApplicationVersion,st as Browser,G as BrowserType,rt as Conversion,It as Cookie,at as CustomData,ue as DataStorage,nt as Device,z as DeviceType,U as Environment,Re as Err,s as EventType,ut as GeolocationData,qe as KameleoonClient,Oe as KameleoonCore,K as KameleoonData,C as KameleoonError,m as KameleoonException,v as KameleoonLogger,se as KameleoonStorageKey,xe as KameleoonUtils,h as LogLevel,Me as Ok,ot as OperatingSystem,j as OperatingSystemType,it as PageView,pt as Parser,_ as RequestType,Ct as SdkLanguageType,Tt as StaticData,B as TrackingStatus,Vt as UniqueIdentifier,wt as UserAgent,L as VariableType,pe as VisitorCodeManager};\n//# sourceMappingURL=javascript-sdk.es.min.js.map\n","'use client';\nimport React from 'react';\nimport { KameleoonContextType } from './types';\n\nexport const KameleoonContext =\n React.createContext<KameleoonContextType | null>(null);\n","'use client';\nimport React from 'react';\nimport { KameleoonClient } from '@kameleoon/javascript-sdk';\nimport { KameleoonContext } from './KameleoonContext';\n\nexport interface IKameleoonProviderProps {\n /** Child elements of the provider. */\n children: React.ReactNode;\n /** An instance of Kameleoon SDK. */\n client: KameleoonClient;\n}\n\n/**\n * A Provider that wraps the project and provides an access to SDK APIs\n */\nfunction KameleoonProvider({\n client,\n children,\n}: IKameleoonProviderProps): React.JSX.Element {\n return (\n <KameleoonContext.Provider\n value={{\n kameleoonClient: client,\n sdkParameters: null,\n }}\n >\n {children}\n </KameleoonContext.Provider>\n );\n}\n\nexport default React.memo(KameleoonProvider);\n","'use client';\nimport React from 'react';\nimport { KameleoonContext } from './KameleoonContext';\nimport { SDKParameters } from './types';\n\nexport interface IKameleoonProviderSSRProps {\n /** Child elements of the provider. */\n children: React.ReactNode;\n /** SDK parameters for creating a new instance. */\n sdkParameters: SDKParameters;\n}\n\n/**\n * A Provider that wraps the project and provides an access to SDK APIs in SSR mode.\n */\nfunction KameleoonProviderSSR({\n sdkParameters,\n children,\n}: IKameleoonProviderSSRProps): React.JSX.Element {\n return (\n <KameleoonContext.Provider\n value={{\n kameleoonClient: null,\n sdkParameters: sdkParameters,\n }}\n >\n {children}\n </KameleoonContext.Provider>\n );\n}\n\nexport default React.memo(KameleoonProviderSSR);\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","import { KameleoonClient, SdkLanguageType } from '@kameleoon/javascript-sdk';\nimport { SDKParameters } from './types';\n\n/**\n * Creates an instance of KameleoonClient\n * @param parameters {SDKParameters} - parameters of an SDK\n */\nexport function createClient({\n siteCode,\n configuration,\n externals,\n stubMode,\n}: SDKParameters): KameleoonClient {\n const client = new KameleoonClient({\n siteCode,\n configuration,\n externals,\n _internals: {\n packageInfo: {\n type: SdkLanguageType.REACT,\n version: process.env.npm_package_version as string,\n isServer: false,\n },\n prng: externals?.prng,\n platformAnalyzer: externals?.platformAnalyzer,\n },\n stubMode,\n });\n\n return client;\n}\n","'use client';\nimport { useContext } from 'react';\nimport { KameleoonClient } from '@kameleoon/javascript-sdk';\nimport { KameleoonContext } from './KameleoonContext';\nimport { createClient } from './createClient';\nimport { KameleoonContextType } from './types';\n\n/**\n * A React Hook that validates if context is used within a KameleoonProvider and returns it.\n *\n * @returns {KameleoonContextType} an instance of KameleoonContextType\n * @throws Kameleoon SDK hooks must be used within a KameleoonProvider.\n */\nexport function useKameleoonContext(): KameleoonContextType {\n const context = useContext(KameleoonContext);\n\n if (!context) {\n throw new Error(\n 'Kameleoon SDK hooks must be used within a KameleoonProvider',\n );\n }\n\n return context;\n}\n\nexport function fetchClientFromContext(\n context: KameleoonContextType | null,\n): KameleoonClient {\n if (!context) {\n throw new Error(\n 'Kameleoon SDK hooks must be used within a KameleoonProvider',\n );\n }\n\n if (!context.kameleoonClient) {\n const sdkParams = context.sdkParameters;\n\n if (sdkParams) {\n sdkParams.stubMode = false;\n context.kameleoonClient = createClient(sdkParams);\n return context.kameleoonClient;\n }\n\n throw new Error(\n 'Kameleoon SDK hooks must be used within a KameleoonProvider',\n );\n }\n\n return context.kameleoonClient;\n}\n","'use client';\nimport { useCallback } from 'react';\nimport {\n CustomData,\n GetVisitorWarehouseAudienceParamsType,\n JSONType,\n KameleoonDataType,\n RemoteVisitorDataParamsType,\n TrackConversionParamsType,\n FlushParamsType,\n AddDataParamsType,\n} from '@kameleoon/javascript-sdk';\nimport {\n fetchClientFromContext,\n useKameleoonContext,\n} from './useKameleoonContext';\nimport IUseData from './interfaces/useData';\n\n/**\n * A React Hook that returns methods related to SDK data management\n *\n * @returns {IUseData} an object containing the following methods:\n * - `addData`\n * - `flush`\n * - `trackConversion`\n * - `getRemoteData`\n * - `getRemoteVisitorData`\n * - `getVisitorWarehouseAudience`\n */\nexport function useData(): IUseData {\n const context = useKameleoonContext();\n let client = context ? context.kameleoonClient : null;\n\n const addData = useCallback(\n ((arg1: string | AddDataParamsType, ...rest: KameleoonDataType[]): void => {\n const client = fetchClientFromContext(context!);\n\n if (typeof arg1 === 'string') {\n client.addData(arg1, ...rest);\n return;\n }\n\n client.addData(arg1);\n }) as ((visitorCode: string, ...data: KameleoonDataType[]) => void) &\n ((params: AddDataParamsType) => void),\n [context],\n );\n\n const flush = useCallback(\n (params?: string | FlushParamsType): void => {\n client = fetchClientFromContext(context!);\n client.flush(params);\n },\n [context],\n );\n\n const flushInstant = useCallback(\n async (visitorCode?: string): Promise<void> => {\n client = fetchClientFromContext(context!);\n return client.flushInstant(visitorCode);\n },\n [context],\n );\n\n const trackConversion = useCallback(\n ({\n visitorCode,\n goalId,\n revenue,\n negative,\n metadata,\n }: TrackConversionParamsType): void => {\n client = fetchClientFromContext(context!);\n client.trackConversion({\n visitorCode,\n goalId,\n revenue,\n negative,\n metadata,\n });\n },\n [context],\n );\n\n const getRemoteData = useCallback(\n async (key: string): Promise<JSONType> => {\n client = fetchClientFromContext(context!);\n return await client.getRemoteData(key);\n },\n [context],\n );\n\n const getRemoteVisitorData = useCallback(\n async (\n params: RemoteVisitorDataParamsType,\n ): Promise<KameleoonDataType[]> => {\n client = fetchClientFromContext(context!);\n return await client.getRemoteVisitorData(params);\n },\n [context],\n );\n\n const getVisitorWarehouseAudience = useCallback(\n async (\n params: GetVisitorWarehouseAudienceParamsType,\n ): Promise<CustomData | null> => {\n client = fetchClientFromContext(context!);\n return await client.getVisitorWarehouseAudience(params);\n },\n [context],\n );\n\n return {\n getRemoteData,\n getRemoteVisitorData,\n getVisitorWarehouseAudience,\n trackConversion,\n addData,\n flush,\n flushInstant,\n };\n}\n","'use client';\nimport { useCallback } from 'react';\nimport IUseFeatureFlag from './interfaces/useFeatureFlag';\nimport {\n FeatureFlagType,\n FeatureFlagVariableType,\n FeatureVariableResultType,\n KameleoonVariationType,\n GetFeatureFlagVariableParamsType,\n VariationType,\n GetVariationParamsType,\n GetVariationsParamsType,\n IsFeatureFlagActiveParamsType,\n SetForcedVariationParametersType,\n DataFile,\n} from '@kameleoon/javascript-sdk';\nimport {\n fetchClientFromContext,\n useKameleoonContext,\n} from './useKameleoonContext';\n\n/**\n * A React Hook that returns methods related to SDK feature flag\n * and feature experimentation management\n *\n * @returns {IUseFeatureFlag} an object containing the following methods:\n * - `isFeatureFlagActive`,\n * - `getDataFile`\n * - `getVariation`\n * - `getVariations`\n * - `getFeatureFlagVariationKey`,\n * - `getFeatureFlagVariable`,\n * - `getVisitorFeatureFlags`,\n * - `getActiveFeatureFlags`,\n * - `getFeatureFlags`,\n * - `getFeatureFlagVariables`,\n * - `getEngineTrackingCode`,\n * - `setForcedVariation`,\n * - `evaluateAudiences`\n */\nexport function useFeatureFlag(): IUseFeatureFlag {\n const context = useKameleoonContext();\n let client = context ? context.kameleoonClient : null;\n\n const isFeatureFlagActive = useCallback(\n (\n firstParam: string | IsFeatureFlagActiveParamsType,\n secondParam?: string,\n ): boolean => {\n client = fetchClientFromContext(context!);\n if (typeof firstParam === 'string') {\n if (!secondParam) {\n throw new Error(\n '[Kameleoon React SDK Error]: Overload is not used correctly. The second parameter must be provided when the first parameter is a string',\n );\n }\n\n return client.isFeatureFlagActive(firstParam, secondParam);\n }\n\n return client.isFeatureFlagActive(firstParam);\n },\n [context],\n );\n\n const getDataFile = useCallback((): DataFile => {\n client = fetchClientFromContext(context!);\n return client.getDataFile();\n }, [context]);\n\n const getVariation = useCallback(\n ({\n visitorCode,\n featureKey,\n track,\n }: GetVariationParamsType): VariationType => {\n client = fetchClientFromContext(context!);\n return client.getVariation({ visitorCode, featureKey, track });\n },\n [context],\n );\n\n const getVariations = useCallback(\n ({\n visitorCode,\n onlyActive,\n track,\n }: GetVariationsParamsType): Map<string, VariationType> => {\n client = fetchClientFromContext(context!);\n return client.getVariations({ visitorCode, onlyActive, track });\n },\n [context],\n );\n\n const getFeatureFlagVariationKey = useCallback(\n (visitorCode: string, featureKey: string): string => {\n client = fetchClientFromContext(context!);\n return client.getFeatureFlagVariationKey(visitorCode, featureKey);\n },\n [context],\n );\n\n const getFeatureFlagVariable = useCallback(\n ({\n visitorCode,\n featureKey,\n variableKey,\n }: GetFeatureFlagVariableParamsType): FeatureFlagVariableType => {\n client = fetchClientFromContext(context!);\n return client.getFeatureFlagVariable({\n visitorCode,\n featureKey,\n variableKey,\n });\n },\n [context],\n );\n\n const getVisitorFeatureFlags = useCallback(\n (visitorCode: string): FeatureFlagType[] => {\n client = fetchClientFromContext(context!);\n return client.getVisitorFeatureFlags(visitorCode);\n },\n [context],\n );\n\n const getActiveFeatureFlags = useCallback(\n (visitorCode: string): Map<string, KameleoonVariationType> => {\n client = fetchClientFromContext(context!);\n return client.getActiveFeatureFlags(visitorCode);\n },\n [context],\n );\n\n const getFeatureFlags = useCallback((): FeatureFlagType[] => {\n client = fetchClientFromContext(context!);\n return client.getFeatureFlags();\n }, [context]);\n\n const getFeatureFlagVariables = useCallback(\n (visitorCode, featureKey): FeatureVariableResultType[] => {\n client = fetchClientFromContext(context!);\n return client.getFeatureFlagVariables(visitorCode, featureKey);\n },\n [context],\n );\n\n const getEngineTrackingCode = useCallback(\n (visitorCode: string): string => {\n client = fetchClientFromContext(context!);\n return client.getEngineTrackingCode(visitorCode);\n },\n [context],\n );\n\n const setForcedVariation = useCallback(\n ({\n visitorCode,\n experimentId,\n variationKey,\n forceTargeting,\n }: SetForcedVariationParametersType): void => {\n client = fetchClientFromContext(context!);\n return client.setForcedVariation({\n visitorCode,\n experimentId,\n variationKey,\n forceTargeting,\n });\n },\n [context],\n );\n\n const evaluateAudiences = useCallback(\n (visitorCode: string): void => {\n client = fetchClientFromContext(context!);\n return client.evaluateAudiences(visitorCode);\n },\n [context],\n );\n\n return {\n getActiveFeatureFlags,\n getDataFile,\n getVariation,\n getVariations,\n getFeatureFlags,\n isFeatureFlagActive,\n getEngineTrackingCode,\n getVisitorFeatureFlags,\n getFeatureFlagVariable,\n getFeatureFlagVariables,\n getFeatureFlagVariationKey,\n setForcedVariation,\n evaluateAudiences,\n };\n}\n","'use client';\nimport { useCallback } from 'react';\nimport IUseInitialize from './interfaces/useInitialize';\nimport { EventCallbackType, EventType } from '@kameleoon/javascript-sdk';\nimport { fetchClientFromContext, useKameleoonContext} from './useKameleoonContext';\n\n/**\n * A React Hook that returns methods related to SDK setup and configuration\n *\n * @returns {IUseInitialize} an object containing the following methods:\n * - `initialize`\n * - `isInitialized`\n * - `onEvent`\n */\nexport function useInitialize(): IUseInitialize {\n const context = useKameleoonContext()\n let client = context ? context.kameleoonClient : null;\n\n const initialize = useCallback(async (): Promise<boolean> => {\n client = fetchClientFromContext(context!);\n return await client.initialize();\n }, [context]);\n\n const onEvent = useCallback(\n <E extends EventType>(event: E, callback: EventCallbackType<E>): void => {\n client = fetchClientFromContext(context!);\n client.onEvent(event, callback);\n },\n [context],\n );\n\n const isInitialized = useCallback((): boolean => {\n client = fetchClientFromContext(context!);\n return client.isInitialized();\n }, [context]);\n\n return {\n onEvent,\n initialize,\n isInitialized,\n };\n}\n","'use client';\nimport { useContext } from 'react';\nimport { KameleoonClient } from '@kameleoon/javascript-sdk';\nimport { KameleoonContext } from './KameleoonContext';\nimport { fetchClientFromContext } from './useKameleoonContext';\n\n/**\n * A React Hook that validates if context is used within a KameleoonProvider and returns it.\n *\n * @returns {KameleoonClient} an instance of KameleoonClient\n * @throws Kameleoon SDK hooks must be used within a KameleoonProvider.\n */\nexport function useKameleoon(): KameleoonClient {\n const context = useContext(KameleoonContext);\n\n if (!context) {\n throw new Error(\n 'Kameleoon SDK hooks must be used within a KameleoonProvider',\n );\n }\n\n return fetchClientFromContext(context);\n}\n","'use client';\nimport { useCallback } from 'react';\nimport IUseLog from './interfaces/useLog';\nimport { LogLevel } from '@kameleoon/javascript-sdk';\nimport { fetchClientFromContext, useKameleoonContext} from './useKameleoonContext';\n\n/**\n * A React Hook that returns methods related to logging\n *\n * @returns {IUseLog} an object containing the following methods:\n * - `setLogLevel`\n */\nexport function useLog(): IUseLog {\n const context = useKameleoonContext()\n let client = context ? context.kameleoonClient : null;\n\n const setLogLevel = useCallback(\n (logLevel: LogLevel): void => {\n client = fetchClientFromContext(context!);\n client.setLogLevel(logLevel);\n },\n [context],\n );\n\n return {\n setLogLevel,\n };\n}\n","'use client';\nimport { useCallback } from 'react';\nimport IUseVisitorCode from './interfaces/useVisitorCode';\nimport { fetchClientFromContext, useKameleoonContext} from './useKameleoonContext';\n\n/**\n * A React Hook that returns methods related to visitor code and consent\n *\n * @returns {IUseVisitorCode} an object containing the following methods:\n * - `setLegalConsent`\n * - `getVisitorCode`\n */\nexport function useVisitorCode(): IUseVisitorCode {\n const context = useKameleoonContext()\n let client = context ? context.kameleoonClient : null;\n\n const setLegalConsent = useCallback(\n (visitorCode: string, consent: boolean): void => {\n client = fetchClientFromContext(context!);\n client.setLegalConsent(visitorCode, consent);\n client.flush(visitorCode);\n },\n [context],\n );\n\n const getVisitorCode = useCallback(\n (defaultVisitorCode?: string): string => {\n client = fetchClientFromContext(context!);\n return client.getVisitorCode(defaultVisitorCode);\n },\n [context],\n );\n\n return {\n setLegalConsent,\n getVisitorCode,\n };\n}\n"],"names":["t","this","ok","error","Error","message","data","e","i","r","a","Object","defineProperty","o","value","Err","Ok","throw","else","or","and","enumerable","get","n","d","Promise","s","next","done","then","apply","SuppressedError","l","addEventHandler","eventHandlers","Map","set","fireEvent","Evaluation","ConfigurationUpdate","c","customData","featureFlags","configuration","realTimeUpdate","consentType","dataApiDomain","consentOptOutBehavior","h","NONE","ERROR","WARNING","INFO","DEBUG","g","p","clientId","clientSecret","Array","from","entries","v","setLogger","logger","setLogLevel","logLevel","log","level","strings","keys","checkLevel","length","JSON","stringify","writeMessage","info","warning","debug","console","warn","f","constructor","_featureFlags","slice","sort","id","getFeatureFlagByHash","Math","floor","min","m","Credentials","EventSourceInitialization","FeatureFlagConfigurationNotFound","FeatureFlagVariableNotFound","FeatureFlagVariationNotFound","FeatureFlagExperimentNotFound","FeatureFlagEnvironmentDisabled","VisitAmount","VisitorCodeMaxLength","VisitorCodeEmpty","StorageInitialization","StorageWrite","StorageRead","StorageParse","StorageEmpty","ClientConfiguration","TargetingCondition","AmongValuesCheck","RangeCheck","Initialization","JSONParse","NumberParse","VersionParse","CookieParse","SemanticVersionParse","RemoteData","MaximumRetriesReached","y","D","C","super","name","errorType","type","k","I","w","V","b","T","S","E","O","x","F","R","M","A","N","dataApi","accessToken","events","clientConfiguration","_","Configuration","Tracking","P","urlProvider","packageInfo","externalRequester","requestTimeout","trackRetryDelay","useAbortController","timeout","getClientConfiguration","getClientConfigurationUrl","assign","version","sendRequest","url","requestType","retryCount","parameters","method","headers","json","logReceivedConfigurationResponse","status","getLastModifiedHeader","u","lastModified","text","parse","logRequestError","response","getRemoteData","getRemoteDataUrl","getVisitorData","visitorCode","filters","isMappingIdentifier","getVisitorDataUrl","track","getTrackingUrl","body","setTimeout","AbortController","abort","signal","clearTimeout","parseResponse","toLowerCase","U","L","B","K","z","j","G","Production","Staging","Development","$","ready","isCustomDomain","domains","initialize","domain","siteCode","environment","setDomains","split","replace","isInitialized","encodeURIComponent","getEventSourceUrl","getDataApiUrl","encodeURI","previousVisitAmount","currentVisit","conversions","geolocation","experiments","pageViews","device","browser","operatingSystem","kcs","personalization","cbs","getAccessTokenUrl","q","fromEntries","map","BOOLEAN","NUMBER","STRING","JS","CSS","Sent","Unsent","Pending","UniqueIdentifier","CustomData","PageView","GeolocationData","Browser","Conversion","Cookie","Device","OperatingSystem","UserAgent","ApplicationVersion","VisitsData","KameleoonConversionScore","Personalization","CBScores","TargetedSegment","Phone","Tablet","Desktop","WindowsPhone","Windows","Android","Linux","Mac","IOS","Chrome","InternetExplorer","Firefox","Safari","Opera","Other","H","W","J","X","Q","Y","Z","validateVersion","parseInt","push","some","isNaN","validateDomain","checkAndTrimProtocol","test","validateNetworkDomain","startsWith","substring","tt","getNonce","getRandomNumber","charAt","checkTargeting","segment","targetingData","experimentId","variationConfiguration","dataManager","conditionsData","firstLevel","getStoredVariations","getTree","hasTargetingType","trees","segments","ruleMap","evaluate","variationData","sdkInfo","convertTimeUnit","MINUTE","HOUR","DAY","WEEK","MONTH","isCustomData","compareSemVer","compareVersion","operator","getVariationByHash","exposition","et","insertInOrderedListMutably","list","element","order","includes","findIndex","splice","insertVisitInOrderedListMutably","visit","find","timeStarted","it","urlAddress","title","referrers","timestamps","time","Date","now","reduce","_nonce","nonce","_fromRaw","_updateFromVisit","pageEvents","href","referrersIndices","has","at","_status","isIdentifier","_index","_name","UNDEFINED_INDEX","overwrite","filter","Set","forEach","String","index","_isMappingIdentifier","customDataEvents","valuesCountMap","values","rt","goalId","revenue","negative","metadata","random","_metadata","assignedTime","_id","_fromInternal","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","propertyIsEnumerable","_encodeMetadata","parseMetadata","_listFromVisit","conversionEvents","st","_fromVisit","staticDataEvent","browserIndex","browserVersion","nt","deviceType","ot","os","osIndex","ut","country","region","city","postalCode","coordinates","geolocationEvents","dt","visits","_visitNumber","visitNumber","isSent","timestamp","updateVisitNumber","lt","ct","variationId","personalizationEvents","ht","Number","extractVarIds","ids","getValues","gt","visitsData","visitorData","storageVisitorData","experimentData","singleDataTypes","multipleDataTypes","visitorDataTypes","getVisitorStoredDataTypes","processVisit","processBrowser","processDevice","processOperatingSystem","processGeolocationData","processCustomData","processConversion","processPageView","processExperiments","processPersonalization","processMultipleDataTypes","size","storedCustomDataIndexes","processKcs","processVisitsData","timeLastActivity","timeLastEvent","processVisitNumber","processCbs","experimentEvents","isTargetedRule","processMappingIdentifier","mappingIdentifier","pt","parseFeatureVariable","key","Boolean","parseVisitorData","previousVisits","updateStoredVariations","parseRegExp","RegExp","parseSecret","repeat","max","vt","updateInterval","storage","requester","eventSource","externalVisitorCodeManager","eventManager","externalPackageInfo","defaultDataFile","updateConfigurationIntervalId","updateType","configurationData","featureFlagsData","isTargetedDeliveryRule","segmentsData","holdoutData","meGroupsData","mappedRules","mappedExperiments","usedDefaultDataFile","refreshDataFileIfStalePromise","blockingBehaviourMode","cachedDataFile","CACHE_REVALIDATE_PERIOD","lastUpdate","visitorCodeManager","readStorageData","checkShouldUpdate","updateClientConfiguration","isOpen","handlePollingUpdates","handleRealTimeUpdates","refreshDataFileIfStale","resolve","fetchClientConfiguration","finally","cleanupHandlers","close","clearInterval","open","onError","getTime","setInterval","bind","dataFile","dateModified","variations","variables","featureKey","rules","variationByExposition","variationKey","environmentEnabled","defaultVariationKey","toString","featureId","experimentMap","hasFeatureFlagVariableJsCss","hasJsCssVariables","holdout","meGroups","isConsentRequired","consentBlockingBehaviour","hasAnyTargetedDeliveryRule","read","requestTime","updateConfigurationData","isServer","updateClientConfigurationInBackground","applyNewConfigurationDataFromResponse","updateStorageData","clearTrees","clear","consentBlockingBehaviourFromStr","updateFeatureFlagSegments","updateFeatureFlagBucketingCustomDataId","customDataIndexes","makeMEGroups","updateConsentRequired","segmentId","bucketingCustomDataId","bucketingCustomDataIndex","mutuallyExclusiveGroup","write","consentRequired","ft","mt","getEnvironment","networkDomain","getNetworkDomain","getUpdateInterval","cleanupInterval","getCleanupInterval","getRequestTimeout","trackingInterval","getTrackingInterval","MIN_TRACKING_INTERVAL_MS","MAX_TRACKING_INTERVAL_MS","DEFAULT_TRACKING_INTERVAL_MS","targetingDataCleanupInterval","settings","yt","Dt","Ct","NODEJS","REACT","JAVASCRIPT","kt","It","cookie","fromString","trim","Vt","_value","Tt","browserType","timeSincePreviousVisit","St","setConditionFactoryInstance","conditionFactoryInstance","createCondition","Et","inverseResult","isOperator","nodeValue","isInclude","nodeError","leftChild","rightChild","left","right","inverse","Ot","targetingTypes","nestedConditions","topLevelOperators","flattenSegment","conditions","operators","add","targetingType","buildTree","tree","evaluateNode","isLeafNode","isNonLeafNode","shift","unshift","firstLevelOrOperators","orOperators","convertOperators","xt","Ft","campaignType","visitCount","visitScope","checkCondition","checkExperiment","checkPersonalization","Rt","Mt","versionMatchType","parseFloat","At","Nt","customDataIndex","valueMatchType","range","matchType","conditionValue","parseArray","isArray","parseRange","_t","getLatest","Pt","Ut","Lt","sdkLanguage","Bt","Kt","nameMatchType","keyMatchType","extractCookie","document","isOptionalCookie","compareCookieValue","zt","jt","Gt","$t","featureFlagId","ruleId","qt","getSecondLatestPageView","Ht","pageCount","Wt","count","unitOfTime","timeUnit","Jt","Xt","setHours","Qt","Yt","visitorType","Zt","te","lowerBound","upperBound","keyMomentId","ee","variationMatchType","ie","personalizationId","ae","re","mutUpdateData","infoData","mutData","dataItem","extendTtl","visitorReference","isReference","dereferenceData","mappingIdentifiers","updateCustomData","expirationTime","updatePageView","pageView","updateConversion","conversion","updateVisitsData","updatePersonalization","updateTargetedSegment","targetedSegment","updateCommonData","commonData","mutCleanupData","removeReference","linkedVisitor","deleteNestedExpiredField","deleteExpiredField","mutAddUnsentData","dataType","unsentData","createReference","nestedKey","updateNestedField","createNestedField","updateField","createField","se","ClientData","TargetingData","TrackingData","VariationData","VisitorCode","ConsentData","DataInfo","KameleoonSimulationFFData","ForcedFeatureVariation","ForcedExperimentVariation","ne","oe","isDataValid","checkClientDataIntegrity","checkTargetingDataIntegrity","checkDataInfoIntegrity","checkVariationDataIntegrity","checkTrackingDataIntegrity","getDefaultData","getDefaultClientData","nextVisitTime","scheduledVisitors","hasFields","every","ue","externalStorage","storageKey","update","de","initCleanupInterval","cleanupData","cleanupVariationData","cleanupForcedFeatureVariationData","cleanupForcedExperimentVariationData","cleanupConsentData","consent","cleanupObjectValues","le","Unknown","Given","NotGiven","ce","he","dataStorage","infoStorage","targetingTrees","mappingIdentifierCustomDataIndex","persistentCustomDataIndexes","localCustomDataIndexes","customDataIndexByName","cleanupIntervalId","dataProcessor","getUnsentData","getDataFromRaw","cdIndex","getPendingData","storeTrackedData","storeDataForVisitors","delete","storeData","storeDataInternal","mutUpdateTargetingData","kameleoonData","isPersistentCustomData","isUniqueIdentifier","getVisitorIdentifier","getMappingIdentifier","setMappingIdentifier","getLinkedVisitor","trySetCustomDataIndexByName","nextDataCleanup","unsentDataVisitors","identifierCustomDataIndex","localOnly","scope","getCustomDataIndexByName","ge","pe","getData","getDataCallback","setData","setDataCallback","validateVisitorCode","getVisitorCode","generateVisitorCode","processSimulatedVariations","maxAge","path","getSimulatedVariations","clearSimulatedVariations","updateForcedFeatureVariations","decodeURIComponent","simulatedVariationFromJson","join","setVariationConfiguration","ve","fe","Ce","me","exports","ye","De","freeze","__proto__","default","ke","window","crypto","self","globalThis","msCrypto","getRandomValues","Uint32Array","randomBytes","readInt32LE","create","lib","Base","extend","mixIn","init","$super","arguments","clone","WordArray","words","sigBytes","concat","clamp","ceil","enc","Hex","substr","Latin1","fromCharCode","charCodeAt","Utf8","escape","unescape","BufferedBlockAlgorithm","reset","_data","_nDataBytes","_append","_process","blockSize","_minBufferSize","_doProcessBlock","Hasher","cfg","_doReset","finalize","_doFinalize","_createHelper","_createHmacHelper","HMAC","algo","sqrt","pow","SHA256","_hash","HmacSHA256","Ie","we","getHashDoubleForMEGroup","calculateHash","getHashDouble","visitorIdentifier","respoolTime","Ve","storageForcedExperimentVariations","storageForcedFeatureVariations","updateDataStatus","experimentIdList","getVariationData","getVisitorsWithUnsentData","getVariation","featureFlag","legalConsent","withAssignment","getForcedExperimentVariation","forceTargeting","createAndSaveForcedTargetedVariation","evaluateCBScores","rule","varByExp","updateForcedExperimentVariation","simulated","getForcedFeatureVariation","parseForcedVariationData","isSimulatedVariationJson","varId","expId","cbScores","be","externalEventSource","isConnectionOpen","onEvent","handleMessage","eventType","ts","Te","currentSize","resultBody","hasUserAgent","trackingVisitors","prng","getTrackingBody","cleanup","addData","userAgent","isConsentProvided","getVariationDataLines","getVisitorDataLines","addVisitorTrackingLines","lines","prepareVisitorBody","getIdentifier","getActivityLine","checkSize","Se","trackingStorage","intervalId","bodyProvider","sendDataAll","scheduleVisitor","checkIsIdentifier","getUserAgent","sendData","sendDataForVisitor","getUnsentVisitorData","getUnsentVariationData","addNotTrackedVisitors","Ee","expirationPeriod","getEngineTrackingCode","TRACKING_CODE_INIT","ASSIGN_VARIATION_COMMAND","TRIGGER_COMMAND","getAssignedVariationsFromKameleoonQueue","isAssignVariationCommand","Oe","dependencies","internalConfiguration","stubMode","initialized","consentDataStorage","hybridManager","tracker","externals","externalLogger","externalPRNG","customDataManager","getRemoteVisitorData","shouldAddData","trackConversion","flush","_flushInternal","_isConsentProvided","flushInstant","_parseFlushParams","isInstant","instant","getFeatureFlags","getVisitorFeatureFlags","_getActiveFeatureVariations","_getFeatureVariation","getVariations","onlyActive","getActiveFeatureFlags","_getFeatureVariables","getFeatureFlagVariationKey","getFeatureFlagVariable","variableKey","getFeatureFlagVariables","isFeatureFlagActive","getVisitorWarehouseAudience","warehouseKey","_processKameleoonQueue","setForcedVariation","_setForcedVariation","evaluateAudiences","audienceTracking","getDataFile","setUserConsent","updateConsentData","getLegalConsent","extractLegalConsent","_getForcedFeatureVariation","_evaluate","save","forcedVariation","ruleType","EvaluatedExperiment","fromForcedFeatureVariation","_isVisitorNotInHoldout","_isFFUnrestrictedByMEGroup","_getCodeForHash","fromVariationData","fromDefaultVariationKey","isSimulated","variation","_refreshDataFileIfStale","xe","simulateSuccessRequest","getCookieValue","KameleoonContext","React","createContext","KameleoonProvider_default","memo","client","children","_jsx","Provider","kameleoonClient","sdkParameters","KameleoonProviderSSR_default","__awaiter","thisArg","_arguments","generator","reject","fulfilled","step","rejected","result","createClient","KameleoonClient","_internals","SdkLanguageType","platformAnalyzer","useKameleoonContext","context","useContext","fetchClientFromContext","sdkParams","useCallback","arg1","rest","params","firstParam","secondParam","event","callback","setLegalConsent","defaultVisitorCode"],"mappings":"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","x_google_ignoreList":[4]}
1
+ {"version":3,"file":"react-sdk.cjs.min.js","sources":["../../javascript-sdk/dist/javascript-sdk.es.min.js","../src/KameleoonContext.ts","../src/KameleoonProvider.tsx","../src/KameleoonProviderSSR.tsx","../../../node_modules/tslib/tslib.es6.js","../src/createClient.ts","../src/useKameleoonContext.ts","../src/useData.ts","../src/useFeatureFlag.ts","../src/useInitialize.ts","../src/useKameleoon.ts","../src/useLog.ts","../src/useVisitorCode.ts"],"sourcesContent":["var t=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:{};function e(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,\"default\")?t.default:t}function i(t){if(Object.prototype.hasOwnProperty.call(t,\"__esModule\"))return t;var e=t.default;if(\"function\"==typeof e){var i=function t(){var i=!1;try{i=this instanceof t}catch{}return i?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};i.prototype=e.prototype}else i={};return Object.defineProperty(i,\"__esModule\",{value:!0}),Object.keys(t).forEach(function(e){var a=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(i,e,a.get?a:{enumerable:!0,get:function(){return t[e]}})}),i}var a,r,s,n={},o={},u=(r||(r=1,function(t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.Err=t.Ok=void 0;var e=function(){if(a)return o;function t(t){if(!this.ok){if(\"string\"==typeof this.error||void 0===this.error)throw new Error(t||this.error||\"There was an error! No specific error message was provided.\");throw t&&(this.error.message=t),this.error}return this.data}function e(t){return this.ok?this.data:t(this.error)}function i(t){return this.ok?this.data:t}function r(t){return this.ok&&t(this.data),this}return a=1,Object.defineProperty(o,\"__esModule\",{value:!0}),o.Err=o.Ok=void 0,o.Ok=function(a){return{ok:!0,data:a,throw:t,else:e,or:i,and:r}},o.Err=function(a){return{ok:!1,error:a,throw:t,else:e,or:i,and:r}},o}();Object.defineProperty(t,\"Ok\",{enumerable:!0,get:function(){return e.Ok}}),Object.defineProperty(t,\"Err\",{enumerable:!0,get:function(){return e.Err}})}(n)),n);function d(t,e,i,a){return new(i||(i=Promise))(function(e,r){function s(t){try{o(a.next(t))}catch(t){r(t)}}function n(t){try{o(a.throw(t))}catch(t){r(t)}}function o(t){var a;t.done?e(t.value):(a=t.value,a instanceof i?a:new i(function(t){t(a)})).then(s,n)}o((a=a.apply(t,[])).next())})}\"function\"==typeof SuppressedError&&SuppressedError;class l{addEventHandler(t,e){this.eventHandlers||(this.eventHandlers=new Map),this.eventHandlers.set(t,e)}fireEvent(t,e){var i;const a=null===(i=this.eventHandlers)||void 0===i?void 0:i.get(t);a&&e&&a(e)}}!function(t){t.Evaluation=\"evaluation\",t.ConfigurationUpdate=\"configurationUpdate\"}(s||(s={}));const c={customData:[],featureFlags:[],configuration:{realTimeUpdate:!1,consentType:\"NOT_REQUIRED\",dataApiDomain:\"data.kameleoon.io\",consentOptOutBehavior:\"PARTIALLY_BLOCK\"}};var h;!function(t){t[t.NONE=0]=\"NONE\",t[t.ERROR=1]=\"ERROR\",t[t.WARNING=2]=\"WARNING\",t[t.INFO=3]=\"INFO\",t[t.DEBUG=4]=\"DEBUG\"}(h||(h={}));const g={[h.NONE]:\"NONE\",[h.ERROR]:\"ERROR\",[h.WARNING]:\"WARNING\",[h.INFO]:\"INFO\",[h.DEBUG]:\"DEBUG\"},p=(t,e)=>\"credentials\"===t?{clientId:\"****\",clientSecret:\"****\"}:e instanceof Map?Array.from(e.entries()):e;class v{static setLogger(t){v.logger=t}static setLogLevel(t){v.logLevel=t}static log({level:t,strings:e,keys:i}){if(!v.checkLevel(t))return;let a;if(\"string\"==typeof e)a=e;else if(\"function\"==typeof e)try{a=e()}catch(t){a=\"Failed to log message\"}else a=function(t,e){let i=\"\";if(e)for(let a=0;a<e.length;a++){let r=e[a];if(\"object\"==typeof r)try{i+=t[a]+JSON.stringify(r,p)}catch(e){i+=t[a]+\"{object}\"}else i+=\"string\"==typeof r?t[a]+\"'\"+r+\"'\":t[a]+r}return i+=t[t.length-1],i}(e,i);v.writeMessage(t,a)}static info(t,...e){v.log({level:h.INFO,strings:t,keys:e})}static error(t,...e){v.log({level:h.ERROR,strings:t,keys:e})}static warning(t,...e){v.log({level:h.WARNING,strings:t,keys:e})}static debug(t,...e){v.log({level:h.DEBUG,strings:t,keys:e})}static checkLevel(t){return t<=v.logLevel&&t!==h.NONE}static writeMessage(t,e){v.logger.log(t,`Kameleoon [${g[t]}]: ${e}`)}}v.logger=new class{log(t,e){switch(t){case h.DEBUG:console.debug(e);break;case h.INFO:console.info(e);break;case h.WARNING:console.warn(e);break;case h.ERROR:console.error(e)}}},v.logLevel=h.WARNING;class f{constructor(t){this._featureFlags=t.slice().sort((t,e)=>t.id-e.id)}getFeatureFlagByHash(t){let e=Math.floor(t*this._featureFlags.length);return e=Math.min(e,this._featureFlags.length-1),this._featureFlags[e]}get featureFlags(){return this._featureFlags}}var m;!function(t){t.Credentials=\"Credentials\",t.EventSourceInitialization=\"EventSourceInitialization\",t.FeatureFlagConfigurationNotFound=\"FeatureFlagConfigurationNotFound\",t.FeatureFlagVariableNotFound=\"FeatureFlagVariableNotFound\",t.FeatureFlagVariationNotFound=\"FeatureFlagVariationNotFound\",t.FeatureFlagExperimentNotFound=\"FeatureFlagExperimentNotFound\",t.FeatureFlagEnvironmentDisabled=\"FeatureFlagEnvironmentDisabled\",t.VisitAmount=\"VisitAmount\",t.VisitorCodeMaxLength=\"VisitorCodeMaxLength\",t.VisitorCodeEmpty=\"VisitorCodeEmpty\",t.StorageInitialization=\"StorageInitialization\",t.StorageWrite=\"StorageWrite\",t.StorageRead=\"StorageRead\",t.StorageParse=\"StorageParse\",t.StorageEmpty=\"StorageEmpty\",t.ClientConfiguration=\"ClientConfiguration\",t.TargetingCondition=\"TargetingCondition\",t.AmongValuesCheck=\"AmongValuesCheck\",t.RangeCheck=\"RangeCheck\",t.Initialization=\"Initialization\",t.JSONParse=\"JSONParse\",t.NumberParse=\"NumberParse\",t.VersionParse=\"VersionParse\",t.CookieParse=\"CookieParse\",t.SemanticVersionParse=\"SemanticVersionParse\",t.RemoteData=\"RemoteData\",t.MaximumRetriesReached=\"MaximumRetriesReached\"}(m||(m={}));const y={[m.CookieParse]:t=>`Couldn't parse cookie string: ${t}`,[m.JSONParse]:t=>`Couldn't parse JSON variable: ${t}`,[m.NumberParse]:t=>`It's not possible to parse value ${t} to Number`,[m.VersionParse]:t=>`It's not possible to parse a version value ${t} to Number, version should be in format x.x`,[m.SemanticVersionParse]:t=>`It's not possible to parse a version value ${t} to Number, version should be in format x.x.x`,[m.Initialization]:()=>\"It seems that the client wasn't properly initialized, make sure to run `initialize` method before invoking other methods\",[m.Credentials]:()=>\"KameleoonClient can not be created without credentials\",[m.StorageInitialization]:()=>\"There was an error while initializing React Native SDK storage, it seems that the storage library dependency wasn't installed\",[m.EventSourceInitialization]:()=>\"There was an error while initializing Real Time Update service, it seems that the event source library dependency wasn't installed\",[m.FeatureFlagConfigurationNotFound]:t=>`No feature flag with key ${t} was found.`,[m.FeatureFlagEnvironmentDisabled]:(t,e)=>`Feature flag with key ${t} is disabled in ${e} environment.`,[m.FeatureFlagVariableNotFound]:(t,e)=>`No feature flag variable with key ${t} was found for ${e} visitorCode.`,[m.FeatureFlagVariationNotFound]:(t,e)=>`No feature flag variation with key ${t} was found for ${e} visitorCode.`,[m.FeatureFlagExperimentNotFound]:(t,e)=>`No feature flag experiment with id ${t} was found for ${e} visitorCode.`,[m.VisitAmount]:()=>\"Visit amount must be a number between 1 and 25\",[m.VisitorCodeMaxLength]:()=>\"Visitor code can not be more than 255 characters long\",[m.VisitorCodeEmpty]:()=>\"Visitor code can not be empty\",[m.StorageWrite]:t=>`Couldn't update storage for kameleoonClient: ${t}`,[m.StorageRead]:t=>`No data found in storage under ${t} key`,[m.StorageEmpty]:()=>\"No data found in storage\",[m.StorageParse]:(t,e)=>`Couldn't parse ${e} storage data, the data may be corrupted. Error: ${t}`,[m.ClientConfiguration]:t=>`Couldn't retrieve client configuration from Kameleoon Api. Error: ${t}`,[m.TargetingCondition]:t=>`${t} targeting condition is not yet supported.`,[m.AmongValuesCheck]:(t,e)=>`Couldn't parse value \"${e}\": ${t}`,[m.RangeCheck]:t=>`Couldn't parse value \"${t}\" as a range, value should be in format [x: number, y: number]`,[m.RemoteData]:t=>`Couldn't retrieve data from Kameleoon server. Error: ${t}`,[m.MaximumRetriesReached]:t=>`Maximum retries reached, request failed. Reason: ${t}`};function D(t){throw new Error(`Reaching an impossible state because of ${t}`)}class C extends Error{constructor(t,e,i){switch(super(`Error: ${t}`),this.name=\"KameleoonError\",this.errorType=t,t){case m.Initialization:case m.Credentials:case m.VisitorCodeMaxLength:case m.VisitorCodeEmpty:case m.StorageInitialization:case m.VisitAmount:case m.EventSourceInitialization:case m.StorageEmpty:this.message=y[t]();break;case m.CookieParse:case m.FeatureFlagConfigurationNotFound:case m.NumberParse:case m.ClientConfiguration:case m.MaximumRetriesReached:case m.RemoteData:case m.VersionParse:case m.SemanticVersionParse:this.message=y[t](e);break;case m.FeatureFlagExperimentNotFound:case m.FeatureFlagVariationNotFound:case m.FeatureFlagVariableNotFound:this.message=y[t](e,i);break;case m.FeatureFlagEnvironmentDisabled:this.message=void 0!==i?y[t](e,i):e;break;case m.StorageWrite:case m.JSONParse:case m.StorageRead:this.message=y[t](e);break;case m.StorageParse:this.message=y[t](e,i);break;case m.TargetingCondition:this.message=y[t](e);break;case m.AmongValuesCheck:this.message=y[t](e,i);break;case m.RangeCheck:this.message=y[t](e);break;default:D(t)}}get type(){return this.errorType}}const k=\"eventType=staticData\",I=\"&browserIndex=\",w=\"&browserVersion=\",V=\"&deviceType=\",b=\"&visitorCode=\",T=\"&sdkVersion=\",S=\"&nonce=\",E=\"&id=\",O=\"&maxNumberPreviousVisits=\",x=\"&os=\",F=\"&osIndex=\",R=\"&browser=\",M=\"&mappingValue=\",A=\"visit/\",N={dataApi:\"data.kameleoon.io\",accessToken:\"api.kameleoon.com\",events:\"events.kameleoon.eu\",clientConfiguration:\"sdk-config.kameleoon.eu\"};var _;!function(t){t.Configuration=\"configuration\",t.Tracking=\"tracking\",t.RemoteData=\"remoteData\"}(_||(_={}));let P=class{constructor({urlProvider:t,packageInfo:e,externalRequester:i,requestTimeout:a,trackRetryDelay:r,useAbortController:s}){this.urlProvider=t,this.useAbortController=s,this.externalRequester=i,this.trackRetryDelay=r,this.packageInfo=e,this.timeout=a}getClientConfiguration(t,e){return d(this,0,void 0,function*(){const i=this.urlProvider.getClientConfigurationUrl(t);let a=Object.assign({\"X-Kameleoon-SDK-Type\":this.packageInfo.type,\"X-Kameleoon-SDK-Version\":this.packageInfo.version},e&&{\"If-Modified-Since\":e});try{let t={message:\"\"};for(let e=0;e<2;e++){const r=yield this.sendRequest({url:i,requestType:_.Configuration,retryCount:e,parameters:{method:\"GET\",headers:a}});if(r.ok){const t=yield r.json();this.logReceivedConfigurationResponse(r.status,i,a);const e=this.getLastModifiedHeader(r),s=t;return u.Ok({configuration:s,lastModified:e})}if(304===r.status)return this.logReceivedConfigurationResponse(r.status,i,a),u.Ok({});if(1===e){if(r.text){const e=yield r.text();t=JSON.parse(e)}v.error`Failed to get configuration response ${{status:r.status,message:t.message}} for request Method: ${\"GET\"}, Url: ${i}, Headers: ${a}`}else yield this.logRequestError({logLevel:h.WARNING,message:\"Failed to get configuration response\",response:r,method:\"GET\",url:i})}return u.Err(new C(m.MaximumRetriesReached,t.message))}catch(t){return yield this.logRequestError({logLevel:h.ERROR,message:\"Failed to get configuration response\",error:t,method:\"GET\",url:i,headers:a}),u.Err(new C(m.ClientConfiguration,t))}})}getRemoteData(t){var e;return d(this,0,void 0,function*(){const i=this.urlProvider.getRemoteDataUrl(t);try{const t=yield this.sendRequest({url:i,requestType:_.RemoteData,retryCount:0,parameters:{method:\"GET\"}});if(!t.ok){if(yield this.logRequestError({logLevel:h.ERROR,message:\"Failed to get remote data response\",response:t,method:\"GET\",url:i}),t.text){const i=yield t.text(),a=null===(e=JSON.parse(i))||void 0===e?void 0:e.message;return u.Err(new C(m.RemoteData,a))}return u.Err(new C(m.RemoteData,\"Unknown Reason - no `text()` was found for a response\"))}const a=yield t.json();return u.Ok(a)}catch(t){return yield this.logRequestError({logLevel:h.ERROR,message:\"Failed to get remote data response\",error:t,method:\"GET\",url:i}),u.Err(new C(m.RemoteData,t))}})}getVisitorData({visitorCode:t,filters:e,isMappingIdentifier:i}){var a;return d(this,0,void 0,function*(){const r=this.urlProvider.getVisitorDataUrl({visitorCode:t,filters:e,isMappingIdentifier:i});try{const t=yield this.sendRequest({url:r,requestType:_.RemoteData,retryCount:0,parameters:{method:\"GET\"}});if(!t.ok){if(yield this.logRequestError({logLevel:h.ERROR,message:\"Failed to get visitor data response\",response:t,method:\"GET\",url:r}),\"function\"==typeof t.text){const e=yield t.text();if(e){const t=null===(a=JSON.parse(e))||void 0===a?void 0:a.message;return u.Err(new C(m.RemoteData,t))}}return t.status?u.Err(new C(m.RemoteData,`No error message. Error status: ${t.status}`)):u.Err(new C(m.RemoteData,\"Unknown Reason - no text message or error status was found for a response\"))}const e=yield t.json();return u.Ok(e)}catch(t){return yield this.logRequestError({logLevel:h.ERROR,message:\"Failed to get visitor data response\",error:t,method:\"GET\",url:r}),u.Err(new C(m.RemoteData,t))}})}track(t,e){return d(this,0,void 0,function*(){const i=this.urlProvider.getTrackingUrl(e);for(let e=0;e<2;e++){let a;try{if(a=yield this.sendRequest({url:i,retryCount:e,requestType:_.Tracking,parameters:{body:t,method:\"POST\",headers:{\"Content-Type\":\"*/*\"}}}),a.ok)return u.Ok();yield this.logRequestError({logLevel:1==e?h.ERROR:h.WARNING,message:\"Failed to get tracking response\",response:a,method:\"POST\",url:i})}catch(t){yield this.logRequestError({logLevel:1==e?h.ERROR:h.WARNING,message:\"Failed to get tracking response\",error:t,method:\"POST\",url:i})}e<2&&(yield new Promise(t=>setTimeout(t,this.trackRetryDelay)))}return u.Err()})}sendRequest({url:t,requestType:e,retryCount:i,parameters:a}){return d(this,0,void 0,function*(){let r;if(this.useAbortController){const s=new AbortController,n=setTimeout(()=>s.abort(),this.timeout);r=yield this.externalRequester.sendRequest({url:t,retryCount:i,requestType:e,parameters:Object.assign(Object.assign({},a),{signal:s.signal})}),clearTimeout(n)}else r=yield this.externalRequester.sendRequest({url:t,retryCount:i,requestType:e,parameters:a});return r})}logRequestError({logLevel:t,message:e,error:i,method:a,url:r,response:s,headers:n}){return d(this,0,void 0,function*(){if(i){let s=\"Unknown error\";i instanceof Error&&(s=i.message),v.log({level:t,strings:()=>`${e} with error: ${s} for request Method: ${a}, Url: ${r}`})}else if(s&&v.checkLevel(t)){const i=yield this.parseResponse(s);v.log({level:t,strings:()=>`${e} response: Status: '${i.status}' Message: '${i.message}' for request Method: ${a}, Url: '${r}'`+(n?`, Headers: ${n}`:\"\")})}})}parseResponse(t){return d(this,0,void 0,function*(){let e=\"\";try{if(\"function\"==typeof t.text){const i=yield t.text();i&&(e=i)}}catch(t){}return{status:t.status,message:e}})}getLastModifiedHeader(t){if(t.headers){const e=\"Last-Modified\".toLowerCase();for(const[i,a]of t.headers)if(i.toLowerCase()===e)return a}}logReceivedConfigurationResponse(t,e,i){}};var U,L,B,K,z,j,G;!function(t){t.Production=\"production\",t.Staging=\"staging\",t.Development=\"development\"}(U||(U={}));class ${constructor(){this.ready=!1,this.isCustomDomain=!1,this.domains=N}initialize({domain:t,siteCode:e,packageInfo:i,environment:a}){this.siteCode=e,this.environment=a,this.packageInfo=i,this.ready=!0,this.setDomains(t)}set dataApiDomain(t){if(!this.isCustomDomain)return void(this.domains.dataApi=t);const e=t.split(\".\")[0],i=this.domains.dataApi;this.domains.dataApi=i.replace(/^[^.]+/,e)}get dataApiDomain(){return this.domains.dataApi}getClientConfigurationUrl(t){this.isInitialized();const e=`https://${this.domains.clientConfiguration}/v3/`,i=this.environment===U.Production?\"\":\"?environment=\"+encodeURIComponent(this.environment);let a=\"\";return t&&(a=i?\"&ts=\"+t:\"?ts=\"+t),e+this.siteCode+i+a}getEventSourceUrl(){return this.isInitialized(),`https://${this.domains.events}:8110/sse?siteCode=${this.siteCode}`}getRemoteDataUrl(t){return this.isInitialized(),this.getDataApiUrl(2)+this.siteCode+\"&key=\"+encodeURI(t)}getVisitorDataUrl({visitorCode:t,filters:e,isMappingIdentifier:i}){this.isInitialized();const{customData:a,previousVisitAmount:r,currentVisit:s,conversions:n,geolocation:o,experiments:u,pageViews:d,device:l,browser:c,operatingSystem:h,kcs:g,personalization:p,visitorCode:v,cbs:f}=e,m=i?M:b,y=a||v?\"&customData=\"+!0:\"\",D=n?\"&conversion=\"+!0:\"\",C=o?\"&geolocation=\"+!0:\"\",k=u?\"&experiment=\"+!0:\"\",I=d?\"&page=\"+!0:\"\",w=\"&staticData=\"+!0,V=s?\"&currentVisit=\"+!0:\"\",T=g?\"&kcs=\"+!0:\"\",S=p?\"&personalization=\"+!0:\"\",E=\"number\"!=typeof r?O+1:O+r,x=f?\"&cbs=\"+!0:\"\";return this.getDataApiUrl(1)+this.siteCode+m+t+E+y+D+C+k+I+w+V+T+S+x}getTrackingUrl(t){this.isInitialized();const{type:e,version:i}=this.packageInfo;let a=this.getDataApiUrl(0)+this.siteCode+\"&sdkName=\"+e+T+i;return t&&(a+=\"&bodyUa=\"+!0),a}getAccessTokenUrl(){this.isInitialized();const{type:t,version:e}=this.packageInfo;return`https://${this.domains.accessToken}/oauth/token?sdkName=`+t+T+e+\"&siteCode=\"+this.siteCode}isInitialized(){if(!this.ready)throw new Error(\"UrlProvider is not initialized\")}getDataApiUrl(t){if(!this.domains.dataApi)throw new Error(\"Data API domain is not set\");const e=`https://${this.domains.dataApi}`;switch(t){case 0:return`${e}/${A+\"events?siteCode=\"}`;case 1:return`${e}/${A+\"visitor?siteCode=\"}`;case 2:return`${e}/map/map?siteCode=`}}setDomains(t){t&&(this.isCustomDomain=!0,this.domains.dataApi=\"data.\"+t,this.domains.accessToken=\"api.\"+t,this.domains.events=\"events.\"+t,this.domains.clientConfiguration=\"sdk-config.\"+t)}}function q(t){return Object.fromEntries(Object.entries(t).map(([t,e])=>[e,t]))}!function(t){t.BOOLEAN=\"BOOLEAN\",t.NUMBER=\"NUMBER\",t.STRING=\"STRING\",t.JSON=\"JSON\",t.JS=\"JS\",t.CSS=\"CSS\"}(L||(L={})),function(t){t.Sent=\"sent\",t.Unsent=\"unsent\",t.Pending=\"pending\"}(B||(B={})),function(t){t.UniqueIdentifier=\"uniqueIdentifier\",t.CustomData=\"customData\",t.PageView=\"pageView\",t.GeolocationData=\"geolocation\",t.Browser=\"browser\",t.Conversion=\"conversion\",t.Cookie=\"cookie\",t.Device=\"device\",t.OperatingSystem=\"operatingSystem\",t.UserAgent=\"userAgent\",t.ApplicationVersion=\"applicationVersion\",t.VisitsData=\"visitsData\",t.KameleoonConversionScore=\"kameleoonConversionScore\",t.Personalization=\"personalization\",t.CBScores=\"cbScores\",t.TargetedSegment=\"targetedSegment\"}(K||(K={})),function(t){t.Phone=\"PHONE\",t.Tablet=\"TABLET\",t.Desktop=\"DESKTOP\"}(z||(z={})),function(t){t.WindowsPhone=\"WINDOWS_PHONE\",t.Windows=\"WINDOWS\",t.Android=\"ANDROID\",t.Linux=\"LINUX\",t.Mac=\"MAC\",t.IOS=\"IOS\"}(j||(j={})),function(t){t.Chrome=\"CHROME\",t.InternetExplorer=\"IE\",t.Firefox=\"FIREFOX\",t.Safari=\"SAFARI\",t.Opera=\"OPERA\",t.Other=\"OTHER\"}(G||(G={}));const H={[j.Windows]:0,[j.Mac]:1,[j.IOS]:2,[j.Linux]:3,[j.Android]:4,[j.WindowsPhone]:5},W=q(H),J={[G.Chrome]:0,[G.InternetExplorer]:1,[G.Firefox]:2,[G.Safari]:3,[G.Opera]:4,[G.Other]:5},X=q(J),Q=\"localhost\",Y=/^(\\.?(([a-zA-Z\\d][a-zA-Z\\d-]*[a-zA-Z\\d])|[a-zA-Z\\d]))(\\.(([a-zA-Z\\d][a-zA-Z\\d-]*[a-zA-Z\\d])|[a-zA-Z\\d])){1,126}$/;class Z{static validateVersion(t){const e=t.split(\".\").map(t=>parseInt(t,10));for(;e.length<3;)e.push(0);return e.some(t=>isNaN(t))?u.Err(new C(m.SemanticVersionParse,t)):u.Ok(e.slice(0,3))}static validateDomain(t){return t?(t=Z.checkAndTrimProtocol(t.toLowerCase()),Y.test(t)||t===Q||v.error`The top-level domain ${t} is invalid. The value has been set as provided, but it does not meet the required format for proper SDK functionality. Please check the domain for correctness.`,u.Ok(t)):u.Err()}static validateNetworkDomain(t){return t?(t=(t=Z.checkAndTrimProtocol(t.toLowerCase())).replace(/^\\.+|\\.+$/g,\"\"),Y.test(t)||t===Q?u.Ok(t):(v.error`The network domain ${t} is invalid.`,u.Err())):u.Err()}static checkAndTrimProtocol(t){const e=[\"http://\",\"https://\"];for(const i of e)if(t.startsWith(i)){t=t.substring(i.length),v.warning`The domain contains ${i}. Domain after protocol trimming: ${t}`;break}return t}}class tt{static getNonce(t){let e=\"\";for(let i=0;i<16;i++){const i=t.getRandomNumber(),a=Math.floor(16*i);e+=\"0123456789ABCDEF\".charAt(a)}return e}static checkTargeting({segment:t,visitorCode:e,targetingData:i,experimentId:a,variationConfiguration:r,clientConfiguration:s,packageInfo:n,dataManager:o}){if(!t||!t.conditionsData.firstLevel.length)return u.Ok(!0);if(!r)return u.Err(new C(m.Initialization));let d={};const l=r.getStoredVariations(e);l.ok&&(d=l.data);const c=o.getTree(t);let h,g,p;return c.hasTargetingType(\"SEGMENT\")&&(h=o.trees,p=s.segments),c.hasTargetingType(\"TARGET_FEATURE_FLAG\")&&(g=s.ruleMap),c.evaluate({variationData:d,sdkInfo:n,segments:p,ruleMap:g,trees:h,targetingData:i,experimentId:a,visitorCode:e})}static convertTimeUnit(t,e){return t/{MINUTE:6e4,HOUR:36e5,DAY:864e5,WEEK:6048e5,MONTH:2592e6}[e]}static isCustomData(t){return t.data.type===K.CustomData}static compareSemVer({version:t,compareVersion:e,operator:i}){const a=Z.validateVersion(t),r=Z.validateVersion(e);if(!a.ok)return u.Err(a.error);if(!r.ok)return u.Err(r.error);const[s,n,o]=a.data,[d,l,c]=r.data,[h,g,p]=[s===d,n===l,o===c];switch(i){case\"EQUAL\":return u.Ok(h&&g&&p);case\"GREATER\":return u.Ok(s>d||h&&n>l||h&&g&&o>c);case\"LOWER\":return u.Ok(s<d||h&&n<l||h&&g&&o<c);default:v.error`Unknown version match type: ${i}`,D(i)}}static getVariationByHash(t,e){let i=0;for(const a of t)if(i+=a.exposition,i>=e)return a;return null}}class et{static insertInOrderedListMutably({list:t,element:e,order:i}){if(t.includes(e))return;const a=t.findIndex(t=>\"asc\"===i?t>=e:t<=e);-1===a?t.push(e):t.splice(a,0,e)}static insertVisitInOrderedListMutably({list:t,visit:e}){if(t.find(t=>\"number\"==typeof t?t===e.timeStarted:t.timeStarted===e.timeStarted))return;const i=t.findIndex(t=>\"number\"==typeof t?t>=e.timeStarted:t.timeStarted>=e.timeStarted);-1===i?t.push(e):t.splice(i,0,e),t.length>26&&t.splice(0,t.length-26)}}class it{constructor({urlAddress:t,title:e,referrers:i}){this.urlAddress=t,this.title=e,this.referrers=i,this.timestamps=[{time:Date.now(),status:B.Unsent}]}get url(){var t;if(!this.urlAddress)return\"\";const e=this.title?\"&title=\"+encodeURIComponent(this.title):\"\",i=(null===(t=this.referrers)||void 0===t?void 0:t.length)?\"&referrersIndices=\"+JSON.stringify(this.referrers):\"\";return\"eventType=page&href=\"+encodeURIComponent(this.urlAddress)+e+i}get status(){const{[B.Sent]:t,[B.Unsent]:e,[B.Pending]:i}=this.timestamps.reduce((t,{status:e})=>(t[e]=!0,t),{[B.Sent]:!1,[B.Unsent]:!1,[B.Pending]:!1});return!t||e||i?i&&!e?B.Pending:B.Unsent:B.Sent}set status(t){this.timestamps=this.timestamps.map(e=>Object.assign(Object.assign({},e),{status:t}))}set _nonce(t){this.nonce=t}get data(){return{urlAddress:this.urlAddress,title:this.title,referrers:this.referrers,type:K.PageView,timestamps:this.timestamps,status:this.status,nonce:this.nonce}}static _fromRaw(t){const{urlAddress:e,title:i,referrers:a,timestamps:r,nonce:s}=t,n=new it({urlAddress:e,title:i,referrers:a});return n.timestamps=r,s&&(n._nonce=s),n}static _updateFromVisit(t,e){const i=t.pageEvents;if(i)for(const t of i){let i=[];const{time:a}=t,{href:r,title:s,referrersIndices:n}=t.data;let o;if(\"number\"==typeof n[0]&&(i=n),e.has(r)){const t=e.get(r).timestamps;o=new it({urlAddress:r,title:s,referrers:i}),o.timestamps=[...t,{time:a,status:B.Sent}]}else o=new it({urlAddress:r,title:s,referrers:i}),o.timestamps=[{time:a,status:B.Sent}];e.set(r,o)}}}let at=class t{constructor(e,i,...a){this._status=B.Unsent,this.isIdentifier=!1;const r=\"boolean\"==typeof i;\"number\"==typeof e?this._index=e:(this._name=e,this._index=t.UNDEFINED_INDEX),this.overwrite=!r||i,this.value=r?a:[i,...a].filter(t=>null!=t)}get url(){if(\"number\"!=typeof this._index)return\"\";const t=[...new Set(this.value)];let e={};t.forEach(t=>{e[t]=1});let i=\"\";return this.isIdentifier&&(i=\"&mappingIdentifier=\"+String(!0)),\"eventType=customData&index=\"+this._index+\"&valuesCountMap=\"+encodeURIComponent(JSON.stringify(e))+\"&overwrite=\"+String(this.overwrite)+i}get data(){return Object.assign(Object.assign({index:this._index},void 0!==this._name?{name:this._name}:{}),{value:this.value,type:K.CustomData,isIdentifier:this.isIdentifier,status:this.status,overwrite:this.overwrite})}get status(){return this._isMappingIdentifier?B.Unsent:this._status}static _fromRaw(e){const{index:i,value:a,status:r,isIdentifier:s,name:n,overwrite:o}=e;let u;return n?(u=new t(n,null==o||o,...a),u.index=i):u=new t(i,null==o||o,...a),u.status=r,u._isMappingIdentifier=s,u}set _isMappingIdentifier(t){this.isIdentifier=t}set status(t){this._status=t}static _updateFromVisit(e,i){var a;if(null===(a=e.customDataEvents)||void 0===a?void 0:a.length)for(let a=e.customDataEvents.length-1;a>=0;a--){const{index:r,valuesCountMap:s}=e.customDataEvents[a].data;i.has(r)||i.set(r,new t(r,...Object.keys(s)))}}set index(t){this._index=t}get index(){return this._index}get name(){return this._name}get values(){return this.value}};at.UNDEFINED_INDEX=-1;let rt=class t{constructor({goalId:t,revenue:e=0,negative:i=!1,metadata:a}){this.goalId=t,this.revenue=e,this.negative=i,this.status=B.Unsent,this.id=Math.floor(1e6*Math.random()),this._metadata=a,this.assignedTime=Date.now()}set _id(t){this.id=t}set _nonce(t){this.nonce=t}static _fromInternal(e){var{assignedTime:i}=e,a=function(t,e){var i={};for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&e.indexOf(a)<0&&(i[a]=t[a]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(t);r<a.length;r++)e.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(t,a[r])&&(i[a[r]]=t[a[r]])}return i}(e,[\"assignedTime\"]);const r=new t(a);return void 0!==i&&(r.assignedTime=i),r}get url(){var t;return\"eventType=conversion&goalId=\"+String(this.goalId)+\"&revenue=\"+String(this.revenue)+\"&negative=\"+String(this.negative)+((null===(t=this.metadata)||void 0===t?void 0:t.length)?\"&metadata=\"+this._encodeMetadata():\"\")}get _metadata(){return this.metadata}set _metadata(t){this.metadata=t}get data(){var t;return{goalId:this.goalId,nonce:this.nonce,revenue:this.revenue,negative:this.negative,type:K.Conversion,status:this.status,id:this.id,metadata:(null===(t=this.metadata)||void 0===t?void 0:t.map(t=>t.data))||void 0,assignedTime:this.assignedTime}}_encodeMetadata(){var t;return(null===(t=this.metadata)||void 0===t?void 0:t.length)?encodeURIComponent(JSON.stringify(this.metadata.reduce((t,e)=>(null==t[e.data.index]&&(t[e.data.index]=e.data.value),t),{}))):\"\"}static _fromRaw(e){const{goalId:i,revenue:a,negative:r,status:s,id:n,nonce:o,metadata:u,assignedTime:d}=e,l=t._fromInternal({goalId:i,revenue:a,negative:r,metadata:t.parseMetadata(u),assignedTime:d});return l._id=n,l.status=s,o&&(l._nonce=o),l}static parseMetadata(t){return(null==t?void 0:t.map(t=>at._fromRaw(t)))||void 0}static _listFromVisit(e){var i,a;const r=[];if(!(null===(i=e.conversionEvents)||void 0===i?void 0:i.length))return[];if(null===(a=null==e?void 0:e.conversionEvents)||void 0===a?void 0:a.length)for(const i of e.conversionEvents){const{goalId:e,revenue:a,negative:s}=i.data,n=t._fromInternal({goalId:e,revenue:a,negative:s,assignedTime:i.time});n.status=B.Sent,r.push(n)}return r}static _updateFromVisit(e,i){var a;if(null===(a=e.conversionEvents)||void 0===a?void 0:a.length)for(const a of e.conversionEvents){const{goalId:e}=a.data;if(!i.has(e)){const r=t._fromInternal({goalId:e,assignedTime:a.time});r.status=B.Sent,i.set(e,r)}}}},st=class t{constructor(t,e){this.browser=t,this.version=e,this.status=B.Unsent}get url(){if(!this.browser)return\"\";const t=this.version?w+this.version:\"\";return k+R+this.browser+I+J[this.browser]+t}get data(){return{browser:this.browser,type:K.Browser,version:this.version,status:this.status}}static _fromRaw(e){const{browser:i,version:a,status:r}=e,s=new t(i,a);return s.status=r,s}static _fromVisit(e){if(!e.staticDataEvent)return;const{browser:i,browserIndex:a,browserVersion:r}=e.staticDataEvent.data;if(i||\"number\"==typeof a){const e=null!=i?i:X[a];return r?new t(e,r):new t(e)}}},nt=class t{constructor(t){this.device=t,this.status=B.Unsent}get url(){return this.device?k+V+this.device:\"\"}get data(){return{device:this.device,type:K.Device,status:this.status}}static _fromRaw(e){const{device:i,status:a}=e,r=new t(i);return r.status=a,r}static _fromVisit(e){var i;if(null===(i=e.staticDataEvent)||void 0===i?void 0:i.data.deviceType)return new t(e.staticDataEvent.data.deviceType)}},ot=class t{constructor(t){this.operatingSystem=t,this.status=B.Unsent}get url(){return this.operatingSystem?k+x+this.operatingSystem+F+H[this.operatingSystem]:\"\"}get data(){return{operatingSystem:this.operatingSystem,type:K.OperatingSystem,status:this.status}}static _fromRaw(e){const{operatingSystem:i,status:a}=e,r=new t(i);return r.status=a,r}static _fromVisit(e){if(!e.staticDataEvent)return;const{os:i,osIndex:a}=e.staticDataEvent.data;if(i||\"number\"==typeof a){const e=null!=i?i:W[a];return new t(e)}}};class ut{constructor({country:t,region:e,city:i,postalCode:a,coordinates:r}){this.country=t,this.region=e,this.city=i,this.postalCode=a,this.coordinates=r,this.status=B.Unsent}get url(){const t=this.region?\"&region=\"+encodeURIComponent(this.region):\"\",e=this.city?\"&city=\"+encodeURIComponent(this.city):\"\",i=this.postalCode?\"&postalCode=\"+encodeURIComponent(this.postalCode):\"\",a=this.coordinates?\"&latitude=\"+this.coordinates[0]+\"&longitude=\"+this.coordinates[1]:\"\";return\"eventType=geolocation&country=\"+encodeURIComponent(this.country)+t+e+i+a}get data(){return{type:K.GeolocationData,country:this.country,region:this.region,city:this.city,postalCode:this.postalCode,coordinates:this.coordinates,status:this.status}}static _fromRaw(t){const{country:e,region:i,city:a,postalCode:r,coordinates:s,status:n}=t,o=new ut({country:e,region:i,city:a,postalCode:r,coordinates:s});return o.status=n,o}static _fromVisit(t){var e;if(!(null===(e=t.geolocationEvents)||void 0===e?void 0:e.length))return;let i;for(const e of t.geolocationEvents){const{data:t}=e;t.country&&(i=t)}const{country:a,region:r,city:s}=i||{};return a?new ut(r&&s?{country:a,region:r,city:s}:r?{country:a,region:r}:{country:a}):void 0}}class dt{constructor(t){this.status=B.Sent,this.visits=t,this._visitNumber=t.length?t.length-1:0}get visitNumber(){return this._visitNumber}get url(){return\"\"}get data(){return{visits:this.visits,visitNumber:this._visitNumber,type:K.VisitsData,status:this.status}}get isSent(){return!0}set timestamp(t){et.insertVisitInOrderedListMutably({list:this.visits,visit:t}),this._visitNumber=this.visits.length?this.visits.length-1:0}updateVisitNumber(t){t>this._visitNumber&&(this._visitNumber=t)}}class lt{constructor(t){this.kcs=t,this.status=B.Sent}get url(){return\"\"}get data(){return{kcs:this.kcs,type:K.KameleoonConversionScore,status:this.status}}}class ct{constructor(t,e,i=Date.now()){this.id=t,this.variationId=e,this.status=B.Sent,this.assignedTime=i}get url(){return\"\"}get data(){return{id:this.id,variationId:this.variationId,type:K.Personalization,status:B.Sent,assignedTime:this.assignedTime}}static _fromRaw(t){return new ct(t.id,t.variationId,t.assignedTime)}static _updateFromVisit(t,e){var i;if(null===(i=t.personalizationEvents)||void 0===i?void 0:i.length)for(const i of t.personalizationEvents){const{id:t,variationId:a}=i.data;if(!e.has(t)){const r=new ct(t,a,i.time);e.set(t,r)}}}}class ht{constructor(t){this.values=new Map(Object.entries(t).map(([t,e])=>[Number(t),this.extractVarIds(e)])),this.cbs=t,this.status=B.Sent}extractVarIds(t){const e=new Map;return Object.entries(t).forEach(([t,i])=>{e.has(i)||e.set(i,[]),e.get(i).push(Number(t))}),Array.from(e.entries()).sort(([t],[e])=>e-t).map(([,t])=>({ids:t.sort((t,e)=>t-e)}))}getValues(){return this.values}get url(){return\"\"}get data(){return{cbs:this.cbs,type:K.CBScores,status:this.status}}static _fromRaw(t){const e=new ht(t.cbs);return e.status=t.status,e}}class gt{constructor({filters:t,dataManager:e,visitorCode:i}){this.visitsData=new dt([]),this.visitorData=[],this.storageVisitorData=[],this.experimentData={},this.singleDataTypes={[K.Device]:null,[K.Browser]:null,[K.GeolocationData]:null,[K.OperatingSystem]:null,[K.KameleoonConversionScore]:null,[K.CBScores]:null},this.multipleDataTypes={[K.CustomData]:new Map,[K.PageView]:new Map,[K.Conversion]:new Map,[K.Personalization]:new Map},this.filters=t,this.dataManager=e,this.visitorDataTypes=e.getVisitorStoredDataTypes(i)}get data(){return{visitorData:this.visitorData,storageVisitorData:this.storageVisitorData,visitsData:this.visitsData,experimentData:this.experimentData}}processVisit(t){this.processBrowser(t),this.processDevice(t),this.processOperatingSystem(t),this.processGeolocationData(t),this.processCustomData(t),this.processConversion(t),this.processPageView(t),this.processExperiments(t),this.processPersonalization(t)}processMultipleDataTypes(){for(const[t,e]of Object.entries(this.multipleDataTypes))if(e.size)switch(t){case K.PageView:this.visitorData.push(...e.values()),this.storageVisitorData.push(...e.values());break;case K.Personalization:case K.Conversion:this.storageVisitorData.push(...e.values());break;case K.CustomData:e.forEach(t=>{this.visitorData.push(t),this.dataManager.storedCustomDataIndexes.has(t.data.index)||this.storageVisitorData.push(t)})}}processKcs(t){if(this.filters.kcs&&t){const e=new lt(t);this.storageVisitorData.push(e)}}processVisitsData(t){var e;this.visitsData.timestamp={timeStarted:t.timeStarted,timeLastActivity:null!==(e=t.timeLastEvent)&&void 0!==e?e:t.timeStarted}}processVisitNumber(t,e){var i,a,r;if(this.visitsData.visitNumber<=e&&(null===(i=t.staticDataEvent)||void 0===i?void 0:i.data.visitNumber)){const i=null!==(r=null===(a=t.staticDataEvent)||void 0===a?void 0:a.data.visitNumber)&&void 0!==r?r:0;this.visitsData.updateVisitNumber(i+e)}}processCbs(t){if(this.filters.cbs&&t){const e=new ht(t);this.storageVisitorData.push(e)}}processBrowser(t){if(this.filters.browser&&!this.singleDataTypes[K.Browser]){const e=st._fromVisit(t);e&&(this.visitorDataTypes.has(K.Browser)||this.storageVisitorData.push(e),this.visitorData.push(e),this.singleDataTypes[K.Browser]=e)}}processDevice(t){if(this.filters.device&&!this.singleDataTypes[K.Device]){const e=nt._fromVisit(t);e&&(this.visitorDataTypes.has(K.Device)||this.storageVisitorData.push(e),this.visitorData.push(e),this.singleDataTypes[K.Device]=e)}}processOperatingSystem(t){if(this.filters.operatingSystem&&!this.singleDataTypes[K.OperatingSystem]){const e=ot._fromVisit(t);e&&(this.visitorDataTypes.has(K.OperatingSystem)||this.storageVisitorData.push(e),this.visitorData.push(e),this.singleDataTypes[K.OperatingSystem]=e)}}processGeolocationData(t){if(this.filters.geolocation&&!this.singleDataTypes[K.GeolocationData]){const e=ut._fromVisit(t);e&&(this.visitorDataTypes.has(K.GeolocationData)||this.storageVisitorData.push(e),this.visitorData.push(e),this.singleDataTypes[K.GeolocationData]=e)}}processCustomData(t){this.filters.customData&&at._updateFromVisit(t,this.multipleDataTypes[K.CustomData])}processConversion(t){if(this.filters.conversions){rt._updateFromVisit(t,this.multipleDataTypes[K.Conversion]);const e=rt._listFromVisit(t);e.length&&this.visitorData.push(...e)}}processPageView(t){this.filters.pageViews&&it._updateFromVisit(t,this.multipleDataTypes[K.PageView])}processExperiments(t){if(this.filters.experiments&&t.experimentEvents)for(const e of t.experimentEvents){const{id:t,variationId:i}=e.data;this.experimentData[t]={variationId:i,isTargetedRule:!1,status:B.Unsent,assignedTime:e.time}}}processPersonalization(t){this.filters.personalization&&ct._updateFromVisit(t,this.multipleDataTypes[K.Personalization])}processMappingIdentifier(t){var e,i;if(!t)return;const a=null===(i=null===(e=t.customDataEvents)||void 0===e?void 0:e.find(t=>t.data.mappingIdentifier))||void 0===i?void 0:i.time;return a&&t.visitorCode?{mappingIdentifier:t.visitorCode,timestamp:a}:void 0}}class pt{static parseFeatureVariable(t){const{key:e,type:i,value:a}=t;switch(i){case L.BOOLEAN:return u.Ok({key:e,type:i,value:Boolean(a)});case L.JS:case L.CSS:case L.STRING:return u.Ok({key:e,type:i,value:String(a)});case L.NUMBER:const r=Number(a);return Number.isNaN(r)?u.Err(new C(m.NumberParse,String(a))):u.Ok({key:e,type:i,value:r});case L.JSON:try{const a=JSON.parse(String(t.value));return u.Ok({key:e,type:i,value:a})}catch(t){return u.Err(new C(m.JSONParse,t))}default:D(i)}}static parseVisitorData({data:t,filters:e,visitorCode:i,dataManager:a,variationConfiguration:r}){const s=new gt({filters:e,dataManager:a,visitorCode:i}),{currentVisit:n,previousVisits:o,kcs:u,cbs:d}=t;if(!(null==o?void 0:o.length)&&!n)return{visitorData:[],storageVisitorData:[],visitsData:new dt([])};n&&(s.processVisit(n),s.processVisitNumber(n,0)),null==o||o.forEach((t,e)=>{s.processVisit(t),s.processVisitsData(t),s.processVisitNumber(t,e+1)}),s.processKcs(u),s.processCbs(d),s.processMultipleDataTypes();const l=s.processMappingIdentifier(null!=n?n:null==o?void 0:o[0]),{visitorData:c,storageVisitorData:h,visitsData:g,experimentData:p}=s.data;return r.updateStoredVariations(i,p),{visitorData:c,storageVisitorData:h,visitsData:g,mappingIdentifier:l}}static parseRegExp(t){if(\"/\"===t[0]){const[e,i,a]=t.split(\"/\");return new RegExp(i,a)}return new RegExp(t)}static parseSecret(t){if(null===t)return\"null\";const e=t.length;if(e<=4)return\"*\".repeat(e);const i=Math.max(e-4,4);return t.substring(0,e-i)+\"*\".repeat(i)}}class vt{constructor({updateInterval:t,urlProvider:e,storage:i,requester:a,dataManager:r,eventSource:s,externalVisitorCodeManager:n,eventManager:o,externalPackageInfo:u,defaultDataFile:d}){this.updateConfigurationIntervalId=null,this.updateType=0,this.configurationData=c,this.featureFlagsData=new Map,this.isTargetedDeliveryRule=null,this.segmentsData=null,this.holdoutData=null,this.meGroupsData=new Map,this.mappedRules=null,this.mappedExperiments=null,this.usedDefaultDataFile=!1,this.refreshDataFileIfStalePromise=null,this.blockingBehaviourMode=\"PARTIALLY_BLOCK\",this.cachedDataFile=null,this.CACHE_REVALIDATE_PERIOD=54e5,this.urlProvider=e,this.requester=a,this.updateInterval=t,this.lastUpdate=new Date,this.storage=i,this.dataManager=r,this.eventManager=o,this.visitorCodeManager=n,this.eventSource=s,this.externalPackageInfo=u,this.defaultDataFile=d}initialize(){return d(this,0,void 0,function*(){if(this.readStorageData(),this.checkShouldUpdate()){const t=yield this.updateClientConfiguration();if(!t.ok)return v.error(\"Error occurred during client configuration update\"),t;if(t.data)return u.Ok()}return 1!==this.updateType||this.eventSource.isOpen?(0===this.updateType&&this.handlePollingUpdates(),u.Ok()):(this.handleRealTimeUpdates(),u.Ok())})}refreshDataFileIfStale(){if(!this.checkShouldUpdate())return Promise.resolve(u.Ok(!1));if(!this.refreshDataFileIfStalePromise){const t=this.fetchClientConfiguration().then(t=>t.ok?u.Ok(!0):t).finally(()=>{this.refreshDataFileIfStalePromise===t&&(this.refreshDataFileIfStalePromise=null)});this.refreshDataFileIfStalePromise=t}return this.refreshDataFileIfStalePromise}cleanupHandlers(){this.eventSource.isOpen&&this.eventSource.close(),this.updateConfigurationIntervalId&&clearInterval(this.updateConfigurationIntervalId)}handleRealTimeUpdates(){this.cleanupHandlers(),this.eventSource.open(t=>{this.updateClientConfiguration(t).then(e=>{e.ok&&this.eventManager.fireEvent(s.ConfigurationUpdate,{timestamp:t})})}),this.eventSource.onError(t=>{v.error`Error occurred during real-time update: ${t}. Switching to polling updates while the connection is not restored.`,this.updateType=0,this.handlePollingUpdates()})}handlePollingUpdates(){this.cleanupHandlers();try{const t=this.lastUpdate.getTime(),e=Date.now(),i=Math.max(this.updateInterval-(e-t),0);setTimeout(()=>d(this,0,void 0,function*(){yield this.updateClientConfiguration(),this.updateConfigurationIntervalId=setInterval(this.updateClientConfiguration.bind(this),this.updateInterval)}),i)}catch(t){throw this.updateConfigurationIntervalId&&clearInterval(this.updateConfigurationIntervalId),t}}get featureFlags(){return this.featureFlagsData}get dataFile(){if(this.cachedDataFile)return this.cachedDataFile;const t={featureFlags:new Map,dateModified:this.dateModified};return this.featureFlagsData.forEach((e,i)=>{const a=new Map;e.variations.forEach(t=>{var i;const r=new Map;t.variables.forEach(t=>{try{const e=pt.parseFeatureVariable(t).throw();r.set(t.key,e)}catch(i){v.error`Error parsing variable ${t.key} of feature flag ${e.featureKey}: ${i}`}}),a.set(t.key,{name:null!==(i=t.name)&&void 0!==i?i:\"\",key:t.key,id:null,experimentId:null,variables:r})});const r=e.rules.map(t=>{const e=new Map;return t.variationByExposition.forEach(i=>{const r=a.get(i.variationKey);r&&e.set(r.key,{name:r.name,key:r.key,id:i.variationId,experimentId:t.experimentId,variables:r.variables})}),{variations:e}});t.featureFlags.set(i,{variations:a,environmentEnabled:e.environmentEnabled,rules:r,defaultVariationKey:e.defaultVariationKey})}),this.cachedDataFile=t,t}get configuration(){return this.configurationData.configuration}get dateModified(){var t;return null!==(t=this.configurationData.dateModified)&&void 0!==t?t:0}get segments(){if(this.segmentsData)return this.segmentsData;const t=new Map;return this.featureFlagsData.forEach(e=>{e.rules.forEach(e=>{e.segment&&!t.has(e.segment.id.toString())&&t.set(e.segment.id.toString(),e.segment)})}),this.segmentsData=t,t}get ruleMap(){var t;if(null===(t=this.mappedRules)||void 0===t?void 0:t.size)return this.mappedRules;const e=new Map;for(const t of this.featureFlags.values())for(const i of t.rules){const{id:a,experimentId:r,variationByExposition:s}=i,n=new Map;s.forEach(({variationKey:t,variationId:e})=>{\"number\"==typeof e&&n.set(t,e)}),e.set(a,{featureId:t.id,experimentId:r,variations:n})}return this.mappedRules=e,e}get experimentMap(){var t;if(null===(t=this.mappedExperiments)||void 0===t?void 0:t.size)return this.mappedExperiments;const e=new Map;for(const t of this.featureFlags.values()){const i=this.hasFeatureFlagVariableJsCss(t);for(const a of t.rules){const{experimentId:t,variationByExposition:r}=a,s=new Map;r.forEach(({variationKey:t,variationId:e})=>{\"number\"==typeof e&&s.set(t,e)}),e.set(t,{type:a.type,variations:s,hasJsCssVariables:i})}}return this.mappedExperiments=e,e}hasFeatureFlagVariableJsCss(t){var e;return Boolean(null===(e=t.variations[0])||void 0===e?void 0:e.variables.some(({type:t})=>t===L.JS||t===L.CSS))}get holdout(){return this.holdoutData}get meGroups(){return this.meGroupsData}get isConsentRequired(){return\"REQUIRED\"===this.configuration.consentType}get consentBlockingBehaviour(){return this.blockingBehaviourMode}get hasAnyTargetedDeliveryRule(){if(null!==this.isTargetedDeliveryRule)return this.isTargetedDeliveryRule;for(const t of this.featureFlags.values())if(t.environmentEnabled&&t.rules.some(t=>\"TARGETED_DELIVERY\"===t.type))return!0;return!1}checkShouldUpdate(){const{configuration:t}=this.configurationData;return this.updateType=t.realTimeUpdate?1:0,!this.featureFlags.size||this.lastUpdate.getTime()<Date.now()-this.updateInterval}readStorageData(){var t,e,i;const a=this.storage.read();if(a.ok){let{data:r,lastUpdate:s,lastModified:n,requestTime:o}=a.data,u=!1;if(this.defaultDataFile)try{const a=JSON.parse(this.defaultDataFile);this.defaultDataFile=void 0,this.usedDefaultDataFile=!0;const s=null!==(e=null!==(t=r.dateModified)&&void 0!==t?t:o)&&void 0!==e?e:-1,n=null!==(i=a.dateModified)&&void 0!==i?i:0;(!o||n>s)&&(r=a,u=!0)}catch(t){v.error`Error parsing default data file: ${String(t)}`}this.updateConfigurationData(r,u),this.lastUpdate=this.usedDefaultDataFile?new Date(0):new Date(Date.parse(s)),this.lastModified=n,this.requestTime=o}}updateClientConfiguration(t){return d(this,0,void 0,function*(){const e=Date.now();return this.usedDefaultDataFile||this.requestTime&&!t&&!this.externalPackageInfo.isServer&&e-this.requestTime<=this.CACHE_REVALIDATE_PERIOD?(this.updateClientConfigurationInBackground(),u.Ok(!1)):this.fetchClientConfiguration(t)})}fetchClientConfiguration(t){return d(this,0,void 0,function*(){const e=yield this.requester.getClientConfiguration(t,this.lastModified);return this.applyNewConfigurationDataFromResponse(e)})}updateClientConfigurationInBackground(){setTimeout(()=>d(this,0,void 0,function*(){const t=yield this.requester.getClientConfiguration(void 0,this.lastModified);yield this.applyNewConfigurationDataFromResponse(t)}),0)}applyNewConfigurationDataFromResponse(t){var e,i;return d(this,0,void 0,function*(){if(this.requestTime=Date.now(),!t.ok)return this.featureFlags.size?(v.error(\"Error occurred while updating configuration. Existing configuration will be used as a fallback.\"),u.Ok(!0)):t;if(void 0===t.data.configuration)return this.updateStorageData(),u.Ok(!1);const a=t.data.configuration;this.updateConfigurationData(a,!0),this.dataManager.clearTrees(),null===(e=this.mappedRules)||void 0===e||e.clear(),null===(i=this.experimentMap)||void 0===i||i.clear(),this.isTargetedDeliveryRule=null,t.data.lastModified&&(this.lastModified=t.data.lastModified);const r=this.updateStorageData();if(!r.ok)return r;const s=a.configuration.realTimeUpdate?1:0,n=s!==this.updateType;return n&&(this.updateType=s,yield this.initialize()),this.blockingBehaviourMode=this.consentBlockingBehaviourFromStr(a.configuration.consentOptOutBehavior),u.Ok(n)})}updateConfigurationData(t,e=!0){const{configuration:i,featureFlags:a,customData:r,holdout:s,segments:n,dateModified:o}=t;let u=n?new Map(n.map(t=>[t.id.toString(),t])):null,d=null;if(e&&(null==r?void 0:r.length)){d=new Map;for(let t of r){if(void 0===t.id){d=null;break}d.set(t.id,t.index)}}const l=new Map;for(const t of a)l.set(t.featureKey,t),e&&(this.updateFeatureFlagSegments(t,u),this.updateFeatureFlagBucketingCustomDataId(t,d));this.featureFlagsData=l,(null==r?void 0:r.length)&&(this.dataManager.customDataIndexes=r),this.meGroupsData=this.makeMEGroups(a),this.holdoutData=null!=s?s:null,this.configurationData={configuration:i,customData:r,holdout:s,dateModified:o},this.urlProvider.dataApiDomain=t.configuration.dataApiDomain,this.updateConsentRequired(),this.segmentsData=u,this.cachedDataFile=null}updateFeatureFlagSegments(t,e){null!==e&&t.rules.forEach(t=>{var i;const a=t.segmentId;t.segment=null==a?null:null!==(i=e.get(a.toString()))&&void 0!==i?i:null})}updateFeatureFlagBucketingCustomDataId(t,e){const i=t.bucketingCustomDataId;null!=i&&e&&(t.bucketingCustomDataIndex=e.get(i))}makeMEGroups(t){const e=new Map;t.forEach(t=>{const i=t.mutuallyExclusiveGroup;if(i){let a=e.get(i);a?a.push(t):e.set(i,[t])}});const i=new Map;return e.forEach((t,e)=>{i.set(e,new f(t))}),i}updateStorageData(){this.lastUpdate=new Date;const t={data:Object.assign(Object.assign({},this.configurationData),{featureFlags:Array.from(this.featureFlags.values()),segments:this.segmentsData?Array.from(this.segmentsData.values()):void 0}),lastUpdate:this.lastUpdate.toString(),lastModified:this.lastModified,requestTime:this.requestTime};return this.storage.write(t)}updateConsentRequired(){this.visitorCodeManager.consentRequired=this.isConsentRequired&&!this.hasAnyTargetedDeliveryRule}consentBlockingBehaviourFromStr(t){return\"PARTIALLY_BLOCK\"===t||\"FULLY_BLOCK\"===t?t:(v.error(`Unexpected consent blocking type '${t}'`),\"PARTIALLY_BLOCK\")}}var ft;class mt{constructor(t,e){this.siteCode=t,this.environment=this.getEnvironment(e),this.networkDomain=this.getNetworkDomain(e),this.updateInterval=this.getUpdateInterval(e),this.cleanupInterval=this.getCleanupInterval(e),this.requestTimeout=this.getRequestTimeout(e),this.trackingInterval=this.getTrackingInterval(e),this.trackRetryDelay=5e3}getTrackingInterval(t){const{MIN_TRACKING_INTERVAL_MS:e,MAX_TRACKING_INTERVAL_MS:i,DEFAULT_TRACKING_INTERVAL_MS:a}=mt;return\"number\"==typeof(null==t?void 0:t.trackingInterval)?t.trackingInterval<e?(v.warning(`Tracking interval must not be shorter than ${e} ms. Minimum possible interval was applied.`),e):t.trackingInterval>i?(v.warning(`Tracking interval must not be longer than ${i} ms. Maximum possible interval was applied.`),i):t.trackingInterval:a}getEnvironment(t){return(null==t?void 0:t.environment)?t.environment:U.Production}getCleanupInterval(t){return\"number\"==typeof(null==t?void 0:t.targetingDataCleanupInterval)?t.targetingDataCleanupInterval<1?(v.warning(\"Targeting data cleanup interval must not be shorter than 1 minute. Minimum possible interval was applied.\"),6e4):6e4*t.targetingDataCleanupInterval:null}getUpdateInterval(t){return\"number\"==typeof(null==t?void 0:t.updateInterval)?t.updateInterval<1?(v.warning(\"Update interval must not be shorter than 1 minute. Minimum possible interval was applied.\"),6e4):6e4*t.updateInterval:36e5}getNetworkDomain(t){const e=Z.validateNetworkDomain(null==t?void 0:t.networkDomain);return e.ok?e.data:null}getRequestTimeout(t){return\"number\"==typeof(null==t?void 0:t.requestTimeout)?t.requestTimeout:1e4}get settings(){return{trackingInterval:this.trackingInterval,trackRetryDelay:this.trackRetryDelay,cleanupInterval:this.cleanupInterval,updateInterval:this.updateInterval,requestTimeout:this.requestTimeout,networkDomain:this.networkDomain,environment:this.environment,siteCode:this.siteCode}}}ft=mt,mt.DEFAULT_TRACKING_INTERVAL_MS=1e3,mt.MIN_TRACKING_INTERVAL_MS=ft.DEFAULT_TRACKING_INTERVAL_MS,mt.MAX_TRACKING_INTERVAL_MS=5e3;const yt=\"off\",Dt=\"warehouseAudiences\",Ct={NODEJS:\"NODEJS\",REACT:\"REACT\",JAVASCRIPT:\"JAVASCRIPT\"},kt={previousVisitAmount:1,currentVisit:!0,customData:!0,pageViews:!1,geolocation:!1,device:!1,browser:!1,operatingSystem:!1,conversions:!1,experiments:!1,kcs:!1,visitorCode:!0,personalization:!1};let It=class t{constructor(t){this.cookie=t,this.status=B.Sent}static fromString(e){if(!e)return new t([]);const i=e.split(\";\").map(t=>{const[i,a]=t.trim().split(\"=\");return i?{key:i,value:a}:(v.warning`Cookie string has an empty key: ${e}`,null)}).filter(t=>null!==t);return new t(i)}get url(){return\"\"}get data(){return{cookie:this.cookie,type:K.Cookie,status:this.status}}};class wt{constructor(t){this.value=t,this.status=B.Sent}get url(){return\"\"}get data(){return{value:this.value,type:K.UserAgent,status:this.status}}}class Vt{constructor(t){this._value=t,this.status=B.Sent}get url(){return\"\"}get data(){return{value:this._value,type:K.UniqueIdentifier,status:B.Sent}}static _fromRaw(t){return new Vt(t.value)}}let bt=class{constructor(t){this.version=t,this.status=B.Sent}get url(){return\"\"}get data(){return{version:this.version,type:K.ApplicationVersion,status:this.status}}};class Tt{constructor({browserType:t,visitNumber:e,timeSincePreviousVisit:i,os:a,deviceType:r,browserVersion:s}){this.browserType=t,this.visitNumber=e,this.timeSincePreviousVisit=i,this.os=a,this.deviceType=r,this.browserVersion=s}get url(){const t=this.browserVersion?w+this.browserVersion:\"\",e=this.browserType?R+this.browserType:\"\",i=this.browserType?I+J[this.browserType]:\"\",a=this.os?x+this.os:\"\",r=this.os?F+H[this.os]:\"\",s=this.deviceType?V+this.deviceType:\"\",n=void 0!==this.visitNumber?\"&visitNumber=\"+this.visitNumber:\"\",o=void 0!==this.timeSincePreviousVisit?\"&timeSincePreviousVisit=\"+this.timeSincePreviousVisit:\"\";return k+e+i+t+n+o+a+r+s}}class St{static setConditionFactoryInstance(t){this.conditionFactoryInstance=t}static createCondition(t){return this.conditionFactoryInstance.createCondition(t)}}class Et{constructor(t,e,i){var a;if(this.inverseResult=!1,this.isOperator(t))this.nodeValue=t;else{const e=St.createCondition(t);this.inverseResult=!(null===(a=t.isInclude)||void 0===a||a),e.ok?this.nodeValue=e.data:this.nodeError=e.error}this.leftChild=e,this.rightChild=i}get value(){return this.nodeValue}get error(){return this.nodeError}get left(){return this.leftChild}get right(){return this.rightChild}get inverse(){return this.inverseResult}isOperator(t){return\"AND\"===t||\"OR\"===t}}class Ot{constructor(t){this.error=null,this.targetingTypes=new Set;const{nestedConditions:e,topLevelOperators:i}=this.flattenSegment(t),a=e.map(({conditions:t,operators:e})=>{const i=t.map(t=>(this.targetingTypes.add(t.targetingType),new Et(t)));return this.buildTree(i,e)});this.tree=this.buildTree(a,i)}evaluate(t){const e=this.evaluateNode(this.tree,t);return this.error?u.Err(this.error):u.Ok(e)}hasTargetingType(t){return this.targetingTypes.has(t)}evaluateNode(t,e){if(this.isLeafNode(t)){if(t.error)return t.error.type===m.TargetingCondition;const i=t.value.evaluate(e);return i.ok?t.inverse?!i.data:i.data:(this.error=i.error,!1)}if(this.isNonLeafNode(t))switch(t.value){case\"AND\":return this.evaluateNode(t.left,e)&&this.evaluateNode(t.right,e);case\"OR\":return this.evaluateNode(t.left,e)||this.evaluateNode(t.right,e)}return!1}isLeafNode(t){return!Boolean(t.left&&t.right)}isNonLeafNode(t){return Boolean(t.left&&t.right&&(\"OR\"===t.value||\"AND\"===t.value))}buildTree(t,e){if(1===t.length)return t[0];for(const i of e){const e=t.shift(),a=t.shift(),r=new Et(i,e,a);t.unshift(r)}return t[0]}flattenSegment(t){const{firstLevel:e,firstLevelOrOperators:i}=t.conditionsData,a=[];return e.forEach(t=>{const{conditions:e,orOperators:i}=t,r={operators:this.convertOperators(i),conditions:e};a.push(r)}),{topLevelOperators:this.convertOperators(i),nestedConditions:a}}convertOperators(t){return t.map(t=>t?\"OR\":\"AND\")}}function xt({targetingData:t,sdkInfo:e},i,a){var r;const s=null==t?void 0:t[K.VisitsData];if(!(null===(r=null==s?void 0:s.visits)||void 0===r?void 0:r.length)||null==i&&null==a)return 0;const{visits:n}=s;let o=1;\"CURRENT_VISIT\"!==i&&(o=null!=a?e.isServer?a-1:a:n.length);const u=n[Math.max(0,n.length-o)];return\"number\"==typeof u?u:u.timeStarted}class Ft{constructor({campaignType:t,visitCount:e,visitScope:i}){this.campaignType=t,this.visitCount=e,this.visitScope=i}evaluate(t){return u.Ok(this.checkCondition(t))}checkCondition(t){const e=xt(t,this.visitScope,this.visitCount);switch(this.campaignType){case\"EXPERIMENT\":return this.checkExperiment(t,e);case\"PERSONALIZATION\":return this.checkPersonalization(t,e);case\"ANY\":return this.checkPersonalization(t,e)&&this.checkExperiment(t,e);default:return!1}}checkExperiment(t,e){const i=Object.keys(t.variationData);let a=0,r=null;for(const s of i){const i=t.variationData[s];if((!(null==i?void 0:i.assignedTime)||i.assignedTime>=e)&&(a++,r=s,a>1))break}return 0===a||1===a&&null!==t.experimentId&&r===String(t.experimentId)}checkPersonalization(t,e){var i;const a=Object.values((null===(i=t.targetingData)||void 0===i?void 0:i.personalization)||{});for(const t of a)if((null==t?void 0:t.assignedTime)&&t.assignedTime>=e)return!1;return!0}}class Rt{constructor({device:t}){this.device=t}evaluate({targetingData:t}){const e=null==t?void 0:t[K.Device];if(e){const{device:t}=e;return u.Ok(t===this.device)}return u.Ok(!1)}}class Mt{constructor({browser:t,version:e,versionMatchType:i}){this.browser=t,this.version=e,this.versionMatchType=i}evaluate({targetingData:t}){const e=null==t?void 0:t[K.Browser];if(e){const t=this.checkCondition(e);return this.error?u.Err(this.error):u.Ok(t)}return u.Ok(!1)}checkCondition(t){const{browser:e,version:i}=t;if(\"string\"!=typeof this.browser)return!1;if(!this.version)return e===this.browser;if(!this.versionMatchType||\"number\"!=typeof i)return!1;const a=parseFloat(this.version);switch(isNaN(a)&&(v.error`Failed to parse version: ${this.version} in Browser condition`,this.error=new C(m.VersionParse,this.version)),this.versionMatchType){case\"EQUAL\":return e===this.browser&&i===a;case\"GREATER\":return e===this.browser&&i>a;case\"LOWER\":return e===this.browser&&i<a;default:v.error`Unexpected comparing operation for Browser condition: ${this.versionMatchType}`,D(this.versionMatchType)}}}class At{constructor({goalId:t,visitCount:e,visitScope:i}){this.goalId=t,this.visitCount=e,this.visitScope=i}evaluate(t){const{targetingData:e}=t,i=null==e?void 0:e[K.Conversion];if(!i)return u.Ok(!1);const a=Object.values(i);if(!a.length)return u.Ok(!1);const r=xt(t,this.visitScope,this.visitCount);return u.Ok(a.some(t=>!!t&&(null==this.goalId||t.goalId===this.goalId)&&(!t.assignedTime||t.assignedTime>=r)))}}class Nt{constructor({customDataIndex:t,valueMatchType:e,value:i,range:a}){this.customDataIndex=t?Number(t):-1,this.matchType=e,this.conditionValue=i,this.range=a}evaluate({targetingData:t}){var e;const i=null===(e=null==t?void 0:t[K.CustomData])||void 0===e?void 0:e[this.customDataIndex];if(\"UNDEFINED\"===this.matchType)return u.Ok(!i);if(i){const{value:t}=i,e=this.checkCondition(t);return this.error?u.Err(this.error):u.Ok(e)}return u.Ok(!1)}checkCondition(t){if(\"string\"!=typeof this.conditionValue&&\"TRUE\"!==this.matchType&&\"FALSE\"!==this.matchType&&\"RANGE\"!==this.matchType)return v.error`Unexpected condition value for CustomData condition: ${this.conditionValue}`,!1;const e=this.conditionValue;if(\"AMONG_VALUES\"===this.matchType){const i=this.parseArray(e);if(!i.ok)return this.error=i.error,!1;const a=new Set(i.data);return Array.isArray(t)?t.some(t=>a.has(t)):i.data.includes(t)}if(\"RANGE\"===this.matchType){const e=this.parseRange(this.range);if(!e.ok)return this.error=e.error,!1;const[i,a]=e.data,r=t=>t>=i&&t<=a;return Array.isArray(t)?t.some(t=>r(Number(t))):r(Number(t))}if(Array.isArray(t))return t.some(t=>this.checkCondition(t));switch(this.matchType){case\"CONTAINS\":return t.includes(e);case\"EXACT\":return t===this.conditionValue;case\"REGULAR_EXPRESSION\":return pt.parseRegExp(e).test(t);case\"LOWER\":return Number(t)<Number(this.conditionValue);case\"EQUAL\":return Number(t)===Number(this.conditionValue);case\"GREATER\":return Number(t)>Number(this.conditionValue);case\"TRUE\":return\"true\"===t.toLowerCase();case\"FALSE\":return\"false\"===t.toLowerCase();default:return v.error`Unexpected comparing operation for CustomData condition: ${this.matchType}`,!1}}parseArray(t){try{const e=JSON.parse(t);if(Array.isArray(e))return u.Ok(e)}catch(e){return v.error`Failed to parse array: ${t} in CustomData condition`,u.Err(new C(m.AmongValuesCheck,e,t))}return u.Ok([])}parseRange(t){return t&&2===t.length?u.Ok(t):(v.error`Failed to parse range: ${t} in CustomData condition`,u.Err(new C(m.RangeCheck,t)))}}class _t{static getLatest(t){return Object.values(t).reduce((t,e)=>t.timestamps[t.timestamps.length-1].time>e.timestamps[e.timestamps.length-1].time?t:e)}}class Pt{constructor({matchType:t,title:e}){this.matchType=t,this.conditionValue=e}evaluate({targetingData:t}){const e=null==t?void 0:t[K.PageView];if(!e)return u.Ok(!1);const i=_t.getLatest(e);return u.Ok(this.checkCondition(i.title))}checkCondition(t){if(!this.matchType||!this.conditionValue)return!1;switch(this.matchType){case\"CONTAINS\":return t.includes(this.conditionValue);case\"EXACT\":return t===this.conditionValue;case\"REGULAR_EXPRESSION\":return pt.parseRegExp(this.conditionValue).test(t);default:return v.error`Unexpected comparing operation for PageTitle condition: ${this.matchType}`,!1}}}class Ut{constructor({matchType:t,url:e}){this.matchType=t,this.conditionValue=e}evaluate({targetingData:t}){const e=null==t?void 0:t[K.PageView];if(!e)return u.Ok(!1);const i=_t.getLatest(e);return u.Ok(this.checkCondition(i.urlAddress))}checkCondition(t){if(!this.matchType||!this.conditionValue)return!1;switch(this.matchType){case\"CONTAINS\":return t.includes(this.conditionValue);case\"EXACT\":return t===this.conditionValue;case\"REGULAR_EXPRESSION\":return pt.parseRegExp(this.conditionValue).test(t);default:return v.error`Unexpected comparing operation for PageUrl condition: ${this.matchType}`,!1}}}class Lt{constructor({sdkLanguage:t,version:e,versionMatchType:i}){this.sdkLanguage=t,this.conditionValue=e,this.versionMatchType=i}evaluate({sdkInfo:t}){return this.checkCondition(t)}checkCondition(t){const{type:e,version:i}=t;if(!this.sdkLanguage)return u.Ok(!1);if(\"string\"!=typeof this.conditionValue)return u.Ok(e===this.sdkLanguage);if(!this.versionMatchType)return u.Ok(!1);if(e!==this.sdkLanguage)return u.Ok(!1);const a=tt.compareSemVer({version:i,compareVersion:this.conditionValue,operator:this.versionMatchType});return a.ok?u.Ok(a.data):u.Err(a.error)}}class Bt{constructor({visitorCode:t,matchType:e}){this.matchType=e,this.conditionValue=t}evaluate({visitorCode:t}){return u.Ok(this.checkCondition(t))}checkCondition(t){if(!this.matchType||!this.conditionValue)return!1;switch(this.matchType){case\"CONTAINS\":return t.includes(this.conditionValue);case\"EXACT\":return t===this.conditionValue;case\"REGULAR_EXPRESSION\":return pt.parseRegExp(this.conditionValue).test(t);default:return v.error`Unexpected comparing operation for VisitorCode condition: ${this.matchType}`,!1}}}class Kt{constructor({name:t,value:e,nameMatchType:i,valueMatchType:a}){this.cookie={key:null!=t?t:void 0,value:null!=e?e:void 0},this.keyMatchType=i,this.valueMatchType=a}evaluate({targetingData:t}){var e;const i=!this.cookie.key&&!this.cookie.value,a=Boolean(this.valueMatchType)&&Boolean(this.keyMatchType);if(i||!a)return u.Ok(!1);const r=this.extractCookie(),s=(null===(e=null==t?void 0:t[K.Cookie])||void 0===e?void 0:e.cookie)||[];return u.Ok(r.some(t=>this.checkCondition(t))||s.some(t=>this.checkCondition(t)))}extractCookie(){return\"undefined\"!=typeof document&&document.cookie?It.fromString(document.cookie).data.cookie:[]}checkCondition(t){const e=this.keyMatchType,{key:i,value:a}=t;if(\"OPTIONAL\"===e){const t=this.cookie;return!!this.isOptionalCookie(t)&&this.compareCookieValue(a,t.value)}const{key:r,value:s}=this.cookie;let n;switch(e){case\"EXACT\":n=i===r;break;case\"CONTAINS\":n=i.includes(r);break;case\"REGULAR_EXPRESSION\":n=pt.parseRegExp(r).test(i);break;default:v.error`Unexpected comparing operation for Cookie condition: ${e}`,D(e)}return n&&this.compareCookieValue(a,s)}compareCookieValue(t,e){const i=this.valueMatchType;switch(i){case\"EXACT\":return t===e;case\"CONTAINS\":return t.includes(e);case\"REGULAR_EXPRESSION\":return pt.parseRegExp(e).test(t);default:return v.error`Unexpected comparing operation for Cookie condition: ${i}`,!1}}isOptionalCookie(t){const{value:e}=t;return void 0!==e}}class zt{constructor({os:t}){this.operatingSystem=t}evaluate({targetingData:t}){const e=null==t?void 0:t[K.OperatingSystem];if(e){const{operatingSystem:t}=e;return u.Ok(t===this.operatingSystem)}return u.Ok(!1)}}class jt{constructor({country:t,region:e,city:i}){this.country=t,this.region=e,this.city=i}evaluate({targetingData:t}){const e=null==t?void 0:t[K.GeolocationData];if(e){const{country:t,region:i,city:a}=e,[r,s,n]=[this.country,this.region,this.city];if(!r||!t)return u.Ok(!1);const o=!(t.toLowerCase()!==r.toLowerCase()||s&&(null==i?void 0:i.toLowerCase())!==s.toLowerCase()||n&&(null==a?void 0:a.toLowerCase())!==n.toLowerCase());return u.Ok(o)}return u.Ok(!1)}}class Gt{constructor({segmentId:t}){this.segmentId=t}evaluate(t){var e;const{segments:i,trees:a}=t;if(!this.segmentId)return u.Ok(!1);const r=null==i?void 0:i.get(this.segmentId.toString());if(!r)return u.Ok(!1);const s=null!==(e=null==a?void 0:a.get(this.segmentId.toString()))&&void 0!==e?e:null==a?void 0:a.get(this.segmentId);return s?s.evaluate(t):new Ot(r).evaluate(t)}}class $t{constructor({featureFlagId:t,variationKey:e,ruleId:i,visitCount:a,visitScope:r}){this.featureId=t,this.ruleId=i,this.variationKey=e,this.visitCount=a,this.visitScope=r}evaluate(t){const{variationData:e,ruleMap:i}=t;if(!this.featureId||!i)return u.Ok(!1);const a=xt(t,this.visitScope,this.visitCount),r=(t,e)=>!t||t>=e;if(this.featureId&&!this.ruleId&&!this.variationKey){for(const t of i.values()){const{featureId:i,experimentId:s}=t,n=e[s];if(i===this.featureId&&\"number\"==typeof(null==n?void 0:n.variationId)&&r(null==n?void 0:n.assignedTime,a))return u.Ok(!0)}return u.Ok(!1)}if(this.featureId&&this.ruleId){const t=i.get(this.ruleId);if((null==t?void 0:t.featureId)!==this.featureId)return u.Ok(!1);const{experimentId:s,variations:n}=t,o=e[s];if(this.variationKey){const t=n.get(this.variationKey);return u.Ok(Boolean(t)&&(null==o?void 0:o.variationId)===t&&r(null==o?void 0:o.assignedTime,a))}return u.Ok(Boolean(null==o?void 0:o.variationId)&&r(null==o?void 0:o.assignedTime,a))}if(this.featureId&&!this.ruleId&&this.variationKey)for(const t of i.values()){const{featureId:i,experimentId:s,variations:n}=t;if(i===this.featureId&&n.has(this.variationKey)){const t=n.get(this.variationKey),i=e[s];if(Boolean(t)&&(null==i?void 0:i.variationId)===t&&r(null==i?void 0:i.assignedTime,a))return u.Ok(!0)}}return u.Ok(!1)}}class qt{constructor({matchType:t,url:e}){this.conditionValue=e,this.matchType=t}evaluate({targetingData:t}){const e=null==t?void 0:t[K.PageView];if(!e)return u.Ok(!1);const i=this.getSecondLatestPageView(Object.values(e));if(!i)return u.Ok(!1);const a=i.urlAddress;return u.Ok(this.checkCondition(a))}checkCondition(t){if(!this.matchType||!this.conditionValue)return!1;switch(this.matchType){case\"CONTAINS\":return t.includes(this.conditionValue);case\"EXACT\":return t===this.conditionValue;case\"REGULAR_EXPRESSION\":return pt.parseRegExp(this.conditionValue).test(t);default:return v.error`Unexpected comparing operation for PreviousPage condition: ${this.matchType}`,!1}}getSecondLatestPageView(t){if(t.length<2)return;let e,i;return t.forEach(t=>{const a=t.timestamps[t.timestamps.length-1].time;if(e)return a>e.timestamps[e.timestamps.length-1].time?(i=e,void(e=t)):void(a>(i?i.timestamps[i.timestamps.length-1].time:0)&&(i=t));e=t}),i}}class Ht{constructor({matchType:t,pageCount:e}){this.matchType=t,this.conditionValue=e}evaluate({targetingData:t}){const e=null==t?void 0:t[K.PageView];if(!e)return u.Ok(!1);let i=0;return Object.values(e).forEach(t=>{i+=t.timestamps.length}),u.Ok(this.checkCondition(i))}checkCondition(t){if(!this.matchType||\"number\"!=typeof this.conditionValue)return!1;switch(this.matchType){case\"EQUAL\":return t===this.conditionValue;case\"GREATER\":return t>this.conditionValue;case\"LOWER\":return t<this.conditionValue;default:return v.error`Unexpected comparing operation for VisitedPages condition: ${this.matchType}`,!1}}}class Wt{constructor({matchType:t,count:e,unitOfTime:i}){this.matchType=t,this.conditionValue=e,this.timeUnit=i}evaluate({targetingData:t,sdkInfo:e}){const i=null==t?void 0:t[K.VisitsData];if(e.isServer?!(null==i?void 0:i.visits.length):!(null==i?void 0:i.visits)||i.visits.length<2)return u.Ok(!1);const a=i.visits[0];return u.Ok(this.checkCondition(\"number\"==typeof a?a:a.timeStarted))}checkCondition(t){if(!this.matchType||\"number\"!=typeof this.conditionValue||!this.timeUnit)return!1;const e=Date.now()-t,i=tt.convertTimeUnit(e,this.timeUnit);switch(this.matchType){case\"GREATER\":return i>this.conditionValue;case\"LOWER\":return i<this.conditionValue;default:return v.error`Unexpected comparing operation for FirstVisit condition: ${this.matchType}`,!1}}}class Jt{constructor({matchType:t,count:e,unitOfTime:i}){this.matchType=t,this.conditionValue=e,this.timeUnit=i}evaluate({targetingData:t,sdkInfo:e}){const i=null==t?void 0:t[K.VisitsData];if(e.isServer?!(null==i?void 0:i.visits.length):!(null==i?void 0:i.visits)||i.visits.length<2)return u.Ok(!1);const a=i.visits,r=a[e.isServer?a.length-1:a.length-2];return u.Ok(this.checkCondition(\"number\"==typeof r?r:r.timeStarted))}checkCondition(t){if(!this.matchType||\"number\"!=typeof this.conditionValue||!this.timeUnit)return!1;const e=Date.now()-t,i=tt.convertTimeUnit(e,this.timeUnit);switch(this.matchType){case\"GREATER\":return i>this.conditionValue;case\"LOWER\":return i<this.conditionValue;default:return v.error`Unexpected comparing operation for LastVisit condition: ${this.matchType}`,!1}}}class Xt{constructor({matchType:t,visitCount:e}){this.matchType=t,this.conditionValue=e}evaluate({targetingData:t,sdkInfo:e}){const i=null==t?void 0:t[K.VisitsData];if(!i)return u.Ok(!1);let a=0;const r=(new Date).setHours(0,0,0,0),{visits:s}=i;return s.forEach(t=>{let e;e=\"number\"==typeof t?t:t.timeStarted,e>=r&&a++}),e.isServer&&(a+=1),u.Ok(this.checkCondition(a))}checkCondition(t){if(!this.matchType||\"number\"!=typeof this.conditionValue)return!1;switch(this.matchType){case\"EQUAL\":return t===this.conditionValue;case\"GREATER\":return t>this.conditionValue;case\"LOWER\":return t<this.conditionValue;default:return v.error`Unexpected comparing operation for SameDayVisits condition: ${this.matchType}`,!1}}}class Qt{constructor({matchType:t,visitCount:e}){this.matchType=t,this.conditionValue=e}evaluate({targetingData:t,sdkInfo:e}){const i=null==t?void 0:t[K.VisitsData];if(!i)return u.Ok(!1);const a=i.visits.length+(e.isServer?1:0);return u.Ok(this.checkCondition(a))}checkCondition(t){if(!this.matchType||\"number\"!=typeof this.conditionValue)return!1;switch(this.matchType){case\"EQUAL\":return t===this.conditionValue;case\"GREATER\":return t>this.conditionValue;case\"LOWER\":return t<this.conditionValue;default:return v.error`Unexpected comparing operation for Visits condition: ${this.matchType}`,!1}}}class Yt{constructor({visitorType:t}){this.visitorType=t}evaluate({targetingData:t,sdkInfo:e}){const i=null==t?void 0:t[K.VisitsData];if(!i||!this.visitorType)return u.Ok(!1);const{visits:a}=i,r=e.isServer?!a.length:a.length<=1;switch(this.visitorType){case\"NEW\":return u.Ok(r);case\"RETURNING\":return u.Ok(!r);default:v.error`Unexpected visitor type for NewVisitor condition: ${this.visitorType}`,D(this.visitorType)}}}class Zt{constructor({version:t,versionMatchType:e}){this.conditionValue=t,this.versionMatchType=e}evaluate({targetingData:t}){var e;const i=null===(e=null==t?void 0:t[K.ApplicationVersion])||void 0===e?void 0:e.version;if(!i||!this.conditionValue||!this.versionMatchType)return u.Ok(!1);const a=tt.compareSemVer({version:i,compareVersion:this.conditionValue,operator:this.versionMatchType});return a.ok?u.Ok(a.data):u.Err(a.error)}}class te{constructor({lowerBound:t,upperBound:e,keyMomentId:i,goalId:a}){this.lowerBound=t,this.upperBound=e,this.keyMomentId=i,this.goalId=a}evaluate({targetingData:t}){var e;const i=null==t?void 0:t[K.KameleoonConversionScore];if(\"number\"!=typeof this.keyMomentId||\"number\"!=typeof this.goalId||\"number\"!=typeof this.lowerBound||\"number\"!=typeof this.upperBound||!i)return u.Ok(!1);const a=null===(e=i.kcs[this.keyMomentId.toString()])||void 0===e?void 0:e[this.goalId.toString()];return\"number\"!=typeof a?u.Ok(!1):u.Ok(a>=this.lowerBound&&a<=this.upperBound)}}class ee{constructor({variationMatchType:t,variationId:e,experimentId:i,visitCount:a,visitScope:r}){this.variationMatchType=t,this.variationId=null!=e?e:-1,this.experimentId=null!=i?i:-1,this.visitCount=a,this.visitScope=r}evaluate(t){return u.Ok(this.checkCondition(t))}checkCondition(t){const e=t.variationData[this.experimentId];if(!e)return!1;const i=xt(t,this.visitScope,this.visitCount);if(e.assignedTime&&e.assignedTime<i)return!1;switch(this.variationMatchType){case\"ANY\":return!0;case\"EXACT\":return e.variationId===this.variationId;default:return!1}}}class ie{constructor({personalizationId:t,visitCount:e,visitScope:i}){this.personalizationId=t,this.visitCount=e,this.visitScope=i}evaluate(t){return t.targetingData?u.Ok(this.checkCondition(t)):u.Ok(!1)}checkCondition(t){var e,i;if(!this.personalizationId)return!1;const a=null===(i=null===(e=t.targetingData)||void 0===e?void 0:e[K.Personalization])||void 0===i?void 0:i[this.personalizationId];if(!a)return!1;const{assignedTime:r}=a;return!r||r>=xt(t,this.visitScope,this.visitCount)}}class ae{createCondition(t){const{targetingType:e}=t;switch(e){case\"CUSTOM_DATUM\":return u.Ok(new Nt(t));case\"EXCLUSIVE_EXPERIMENT\":return u.Ok(new Ft(t));case\"TARGET_EXPERIMENT\":return u.Ok(new ee(t));case\"TARGET_FEATURE_FLAG\":return u.Ok(new $t(t));case\"TARGET_PERSONALIZATION\":return u.Ok(new ie(t));case\"DEVICE_TYPE\":return u.Ok(new Rt(t));case\"BROWSER\":return u.Ok(new Mt(t));case\"PAGE_URL\":return u.Ok(new Ut(t));case\"PAGE_TITLE\":return u.Ok(new Pt(t));case\"CONVERSIONS\":return u.Ok(new At(t));case\"VISITOR_CODE\":return u.Ok(new Bt(t));case\"SDK_LANGUAGE\":return u.Ok(new Lt(t));case\"COOKIE\":return u.Ok(new Kt(t));case\"OPERATING_SYSTEM\":return u.Ok(new zt(t));case\"GEOLOCATION\":return u.Ok(new jt(t));case\"SEGMENT\":return u.Ok(new Gt(t));case\"APPLICATION_VERSION\":return u.Ok(new Zt(t));case\"PREVIOUS_PAGE\":return u.Ok(new qt(t));case\"PAGE_VIEWS\":return u.Ok(new Ht(t));case\"LAST_VISIT\":return u.Ok(new Jt(t));case\"FIRST_VISIT\":return u.Ok(new Wt(t));case\"SAME_DAY_VISITS\":return u.Ok(new Xt(t));case\"VISITS\":return u.Ok(new Qt(t));case\"NEW_VISITORS\":return u.Ok(new Yt(t));case\"HEAT_SLICE\":return u.Ok(new te(t));default:return u.Err(new C(m.TargetingCondition,e))}}}class re{constructor(t=null,e){this.cleanupInterval=t,this.packageInfo=e}mutUpdateData({infoData:t,visitorCode:e,mutData:i,dataItem:a,extendTtl:r}){let s,{visitorReference:n,data:o,isReference:u}=this.dereferenceData(i,e);switch(this.packageInfo.isServer&&u&&!i[n]&&(t.mappingIdentifiers&&delete t.mappingIdentifiers[e],delete i[e],n=e),r&&(s=this.cleanupInterval?Date.now()+this.cleanupInterval:0),a.data.type){case K.CustomData:this.updateCustomData({expirationTime:s,customData:a,visitorCode:n,mutData:o});break;case K.PageView:this.updatePageView({expirationTime:s,pageView:a,visitorCode:n,mutData:o});break;case K.Conversion:this.updateConversion({expirationTime:s,conversion:a,visitorCode:n,mutData:o});break;case K.VisitsData:this.updateVisitsData({expirationTime:s,visitsData:a,visitorCode:n,mutData:o});break;case K.Personalization:this.updatePersonalization({expirationTime:s,personalization:a,visitorCode:n,mutData:o});break;case K.TargetedSegment:this.updateTargetedSegment({expirationTime:s,targetedSegment:a,visitorCode:n,mutData:o});break;default:this.updateCommonData({expirationTime:s,commonData:a,visitorCode:n,mutData:o})}return s}mutCleanupData(t,e){var i;if(!this.cleanupInterval)return null;let a=0;for(const[r,s]of Object.entries(t)){if(\"string\"==typeof s){this.removeReference({mutData:t,visitorCode:r,linkedVisitor:s,infoData:e});continue}let n=0;for(const t of Object.keys(s)){const e=t;let i;switch(e){case K.CustomData:case K.PageView:case K.Conversion:case K.Personalization:i=this.deleteNestedExpiredField(s,e);break;default:i=this.deleteExpiredField(s,e)}(!n||i&&i<n)&&(n=i)}Object.keys(t[r]).length?(!a||n&&n<a)&&(a=n):(delete t[r],this.packageInfo.isServer&&(null!==(i=e.mappingIdentifiers)&&void 0!==i||(e.mappingIdentifiers={}),delete e.mappingIdentifiers[r]))}return a}mutAddUnsentData({mutData:t,visitorCode:e,dataType:i}){const a=t.unsentData[e];if(a&&a.length){const r=new Set([...a]);r.add(i),t.unsentData[e]=Array.from(r)}else t.unsentData[e]=[i]}createReference({mutData:t,visitorCode:e,linkedVisitor:i}){t[i]=e}removeReference({mutData:t,visitorCode:e,linkedVisitor:i,infoData:a}){this.packageInfo.isServer&&(t[i]||(delete t[e],a.mappingIdentifiers&&delete a.mappingIdentifiers[e]))}updatePageView({visitorCode:t,mutData:e,pageView:i,expirationTime:a}){const{data:r}=i,s=e[t]&&K.PageView in e[t]&&r.urlAddress in e[t][K.PageView],n={expirationTime:a,visitorCode:t,data:e,key:K.PageView,nestedKey:r.urlAddress,value:r};if(s){const i=e[t][K.PageView][r.urlAddress].timestamps;for(const t of i){const{time:e}=t;if(r.timestamps.some(({time:t})=>t===e))continue;const i=r.timestamps.findIndex(({time:t})=>t>=e);-1===i?r.timestamps.push(t):r.timestamps.splice(i,0,t)}this.updateNestedField(n)}else this.createNestedField(n)}updateCustomData({visitorCode:t,customData:e,mutData:i,expirationTime:a}){const{data:r}=e,s=i[t]&&K.CustomData in i[t],n={expirationTime:a,visitorCode:t,data:i,key:K.CustomData,nestedKey:r.index.toString(),value:r};s?this.updateNestedField(n):this.createNestedField(n)}updateConversion({conversion:t,mutData:e,visitorCode:i,expirationTime:a}){const{data:r}=t,s=e[i]&&K.Conversion in e[i],n={expirationTime:a,visitorCode:i,data:e,key:K.Conversion,nestedKey:r.id.toString(),value:r};s?this.updateNestedField(n):this.createNestedField(n)}updateVisitsData({visitorCode:t,mutData:e,visitsData:i,expirationTime:a}){var r,s;const{data:n}=i,o=e[t]&&K.VisitsData in e[t],u={expirationTime:a,data:e,key:K.VisitsData,value:n,visitorCode:t};if(o){const i=e[t][K.VisitsData];i.visits.forEach(t=>{et.insertVisitInOrderedListMutably({list:n.visits,visit:t})});const a=Math.max(null!==(r=n.visitNumber)&&void 0!==r?r:n.visits.length-1,n.visits.length-1,null!==(s=i.visitNumber)&&void 0!==s?s:0);this.updateField(Object.assign(Object.assign({},u),{value:Object.assign(Object.assign({},n),{visits:n.visits,visitNumber:a})}))}else this.createField(u)}updatePersonalization({visitorCode:t,mutData:e,personalization:i,expirationTime:a}){const{data:r}=i,s=e[t]&&K.Personalization in e[t],n={expirationTime:a,visitorCode:t,data:e,key:K.Personalization,nestedKey:r.id.toString(),value:r};s?this.updateNestedField(n):this.createNestedField(n)}updateTargetedSegment({visitorCode:t,mutData:e,targetedSegment:i,expirationTime:a}){const{data:r}=i,s=e[t]&&K.TargetedSegment in e[t],n={expirationTime:a,visitorCode:t,data:e,key:K.TargetedSegment,nestedKey:r.id.toString(),value:r};s?this.updateNestedField(n):this.createNestedField(n)}updateCommonData({visitorCode:t,mutData:e,commonData:i,expirationTime:a}){const{data:r}=i,s=e[t]&&r.type in e[t],n={expirationTime:a,data:e,key:r.type,visitorCode:t,value:r};s?this.updateField(n):this.createField(n)}dereferenceData(t,e){return\"string\"==typeof t[e]?{visitorReference:t[e],data:t,isReference:!0}:{visitorReference:e,data:t,isReference:!1}}deleteExpiredField(t,e){if(!t)return 0;const i=e;return t[i].expirationTime<Date.now()?(delete t[i],0):t[i].expirationTime}deleteNestedExpiredField(t,e){if(!t[e])return 0;const i=t[e];let a;for(const[t,e]of Object.entries(i))e&&(e.expirationTime<Date.now()?delete i[t]:(!a||e.expirationTime<a)&&(a=e.expirationTime));return Object.keys(i).length||delete t[e],a}updateField({key:t,value:e,data:i,visitorCode:a,expirationTime:r}){var s;const n=i[a][t];i[a][t]=Object.assign(Object.assign({},e),{expirationTime:null!==(s=null!=r?r:n.expirationTime&&n.expirationTime)&&void 0!==s?s:Date.now()})}createField({key:t,value:e,data:i,visitorCode:a,expirationTime:r}){i[a]=Object.assign(Object.assign({},i[a]),{[t]:Object.assign(Object.assign({},e),{expirationTime:r})})}updateNestedField({key:t,nestedKey:e,value:i,data:a,visitorCode:r,expirationTime:s}){var n;const o=a[r][t][e];a[r][t][e]=Object.assign(Object.assign({},i),{expirationTime:null!==(n=null!=s?s:null==o?void 0:o.expirationTime)&&void 0!==n?n:Date.now()})}createNestedField({key:t,nestedKey:e,value:i,data:a,visitorCode:r,expirationTime:s}){var n;(null===(n=a[r])||void 0===n?void 0:n[t])?a[r]=Object.assign(Object.assign({},a[r]),{[t]:Object.assign(Object.assign({},a[r][t]),{[e]:Object.assign(Object.assign({},i),{expirationTime:s})})}):a[r]=Object.assign(Object.assign({},a[r]),{[t]:{[e]:Object.assign(Object.assign({},i),{expirationTime:s})}})}}var se;!function(t){t.ClientData=\"kameleoonClientData\",t.TargetingData=\"kameleoonTargetingData\",t.TrackingData=\"kameleoonTrackingData\",t.VariationData=\"kameleoonVariationData\",t.VisitorCode=\"kameleoonVisitorCode\",t.ConsentData=\"kameleoonConsentData\",t.DataInfo=\"kameleoonDataInfo\",t.KameleoonSimulationFFData=\"kameleoonSimulationFFData\",t.ForcedFeatureVariation=\"kameleoonForcedFeatureVariation\",t.ForcedExperimentVariation=\"kameleoonForcedExperimentVariation\"}(se||(se={}));const ne={data:c,lastUpdate:\"\"};class oe{constructor(t){this.key=t}isDataValid(t){switch(this.key){case se.ClientData:return this.checkClientDataIntegrity(t);case se.TargetingData:return this.checkTargetingDataIntegrity(t);case se.DataInfo:return this.checkDataInfoIntegrity(t);case se.VariationData:return this.checkVariationDataIntegrity(t);case se.TrackingData:return this.checkTrackingDataIntegrity(t);default:return!0}}getDefaultData(){switch(this.key){case se.ClientData:return this.getDefaultClientData();case se.DataInfo:return{unsentData:{},nextVisitTime:0,mappingIdentifiers:{}};case se.TrackingData:return{scheduledVisitors:{}};case se.TargetingData:case se.VariationData:case se.ConsentData:return{};case se.VisitorCode:case se.KameleoonSimulationFFData:return\"\";case se.ForcedExperimentVariation:case se.ForcedFeatureVariation:return{};default:D(this.key)}}checkTrackingDataIntegrity(t){return this.hasFields(t,[\"scheduledVisitors\"])}checkDataInfoIntegrity(t){return this.hasFields(t,[\"unsentData\",\"nextVisitTime\"])}checkVariationDataIntegrity(t){const e=Object.values(t);if(!e.length)return!0;const i=t=>!this.hasFields(t,[\"status\"])||this.hasFields(t,[\"isSent\"]);for(const t of e)for(const e of Object.values(t))if(i(e))return!1;return!0}checkClientDataIntegrity(t){return this.hasFields(t,Object.keys(ne))}checkTargetingDataIntegrity(t){const e=Object.values(t);if(!e.length)return!0;for(const t of e){if(\"string\"==typeof t)continue;const e=t=>!this.hasFields(t,[\"status\"])||this.hasFields(t,[\"sent\"])||this.hasFields(t,[\"timestampList\"]);for(const[i,a]of Object.entries(t)){if(Array.isArray(a))return!1;switch(i){case K.PageView:case K.Conversion:case K.Personalization:case K.TargetedSegment:case K.CustomData:if(Object.values(a).some(t=>e(t)))return!1;continue;default:if(e(a))return!1}}}return!0}getDefaultClientData(){return Object.assign(Object.assign({},ne),{lastUpdate:(new Date).toString()})}hasFields(t,e){const i=Object.keys(t);return!(!i.length||!e.length)&&e.every(t=>i.includes(t))}}let ue=class{constructor(t,e){this.externalStorage=t,this.storageKey=e;const i=new oe(e),a=this.read();if(!a.ok){if(a.error.type===m.StorageEmpty){const t=i.getDefaultData();this.write(t)}return}const r=a.data;if(!i.isDataValid(r)){const t=i.getDefaultData();this.write(t)}}read(){try{const t=this.externalStorage.read(this.storageKey);return null===t?u.Err(new C(m.StorageEmpty)):u.Ok(t)}catch(t){return v.error`Failed to read data from storage: ${this.storageKey}`,u.Err(new C(m.StorageRead,this.storageKey))}}write(t){try{return this.externalStorage.write(this.storageKey,t),u.Ok()}catch(t){return v.error`Failed to write data to storage: ${this.storageKey}`,u.Err(new C(m.StorageWrite,this.storageKey))}}update(t){const e=this.read();if(!e.ok)return e.error.type===m.StorageEmpty?this.write(t):e;const i=e.data;let a;return a=\"string\"==typeof i?t:Object.assign(Object.assign({},i),t),this.write(a)}};class de{constructor(t,e){this.externalStorage=t,this.cleanupInterval=e,e>0&&this.initCleanupInterval()}initCleanupInterval(){for(const t of Object.values(se)){let e=null;try{switch(t){case se.ForcedFeatureVariation:case se.ForcedExperimentVariation:case se.VariationData:case se.ConsentData:e=setInterval(()=>this.cleanupData(t),this.cleanupInterval);break;case se.ClientData:case se.TargetingData:case se.TrackingData:case se.VisitorCode:case se.DataInfo:case se.KameleoonSimulationFFData:break;default:v.error`Unknown storage key: ${t} for initCleanupInterval.`}}catch(i){e&&clearInterval(e),v.error`Error while starting cleanup for ${t} with interval ${this.cleanupInterval}`}}}cleanupData(t){const e=this.externalStorage.read(t);if(!e)return;const i=Date.now();switch(t){case se.VariationData:this.cleanupVariationData(e,i);break;case se.ForcedFeatureVariation:this.cleanupForcedFeatureVariationData(e,i);break;case se.ForcedExperimentVariation:this.cleanupForcedExperimentVariationData(e,i);break;case se.ConsentData:this.cleanupConsentData(e,i);break;case se.ClientData:case se.TargetingData:case se.TrackingData:case se.VisitorCode:case se.DataInfo:case se.KameleoonSimulationFFData:break;default:v.error`Unknown storage key: ${t} for cleanupData.`}this.externalStorage.write(t,e)}cleanupConsentData(t,e){for(const[i,a]of Object.entries(t)){if(\"boolean\"==typeof a){t[i]={consent:a,expirationTime:e+this.cleanupInterval};continue}const r=a;\"number\"==typeof r.expirationTime?r.expirationTime<e&&delete t[i]:r.expirationTime=e+this.cleanupInterval}}cleanupVariationData(t,e){for(const[i,a]of Object.entries(t))this.cleanupObjectValues(a,e),0===Object.keys(t[i]).length&&delete t[i]}cleanupForcedFeatureVariationData(t,e){for(const[i,a]of Object.entries(t))for(const[r,s]of Object.entries(a))this.cleanupObjectValues(s,e),0===Object.keys(t[Number(i)][r]).length&&delete t[Number(i)][r]}cleanupForcedExperimentVariationData(t,e){for(const[i,a]of Object.entries(t))this.cleanupObjectValues(a,e),0===Object.keys(t[i]).length&&delete t[i]}cleanupObjectValues(t,e){for(const[i,a]of Object.entries(t))\"number\"==typeof a.expirationTime?a.expirationTime<e&&delete t[i]:a.expirationTime=e+this.cleanupInterval}}var le;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.Given=1]=\"Given\",t[t.NotGiven=2]=\"NotGiven\"}(le||(le={}));class ce{constructor(t){this.id=t,this.status=B.Unsent}get url(){return\"eventType=targetingSegment\"+E+this.id}get data(){return{id:this.id,type:K.TargetedSegment,status:this.status}}static _fromRaw(t){const{id:e,status:i}=t,a=new ce(e);return a.status=i,a}}class he{constructor({dataStorage:t,infoStorage:e,cleanupInterval:i,packageInfo:a}){if(this.targetingTrees=new Map,this.mappingIdentifierCustomDataIndex=null,this.persistentCustomDataIndexes=new Set,this.localCustomDataIndexes=new Set,this.customDataIndexByName=new Map,this.cleanupIntervalId=null,this.dataStorage=t,this.infoStorage=e,this.dataProcessor=new re(i,a),this.packageInfo=a,i){const t=()=>{this.cleanupData()};try{this.cleanupIntervalId=setInterval(t,i)}catch(t){throw this.cleanupIntervalId&&clearInterval(this.cleanupIntervalId),v.error`Failed to set cleanup interval: ${i}`,t}}}getUnsentData(t){const e=this.infoStorage.read();if(!e.ok)return[];const i=e.data,a=this.getVisitorData(t);if(!i.unsentData[t]||!a)return[];const r=i.unsentData[t],s=i.nextVisitTime<=Date.now();return s&&(i.nextVisitTime=Date.now()+174e4,this.infoStorage.write(i)),this.getDataFromRaw(a,({status:t,key:e,cdIndex:i})=>!(\"number\"!=typeof i||!this.persistentCustomDataIndexes.has(i)||!s)||r.includes(e)&&t===B.Unsent)}getPendingData(t){const e=this.getVisitorData(t);return e?this.getDataFromRaw(e,({status:t})=>t===B.Pending):[]}getDataFromRaw(t,e){const i=[];for(const[a,r]of Object.entries(t))if(r)switch(a){case K.CustomData:for(const t of Object.values(r)){if(!t)continue;const{status:r,index:s}=t;if(e({status:r,key:a,cdIndex:s})){const e=at._fromRaw(t);i.push(e)}}break;case K.Conversion:for(const t of Object.values(r))if(t&&e({status:t.status,key:a})){const e=rt._fromRaw(t);i.push(e)}break;case K.PageView:{const t=r;for(const r of Object.values(t))if(e({status:r.status,key:a})){const t=it._fromRaw(r);i.push(t)}break}case K.TargetedSegment:{const t=r;for(const r of Object.values(t))if(e({status:r.status,key:a})){const t=ce._fromRaw(r);i.push(t)}break}case K.GeolocationData:{const t=r;if(!r)continue;if(e({status:t.status,key:a})){const e=ut._fromRaw(t);i.push(e)}break}case K.Browser:{const t=r;if(e({status:t.status,key:a})){const e=st._fromRaw(t);i.push(e)}break}case K.Device:{const t=r;if(e({status:t.status,key:a})){const e=nt._fromRaw(t);i.push(e)}break}case K.OperatingSystem:{const t=r;if(e({status:t.status,key:a})){const e=ot._fromRaw(t);i.push(e)}}}return i}storeTrackedData(t){this.storeDataForVisitors(t,!1);const e=this.infoStorage.read();if(!e.ok)return;const i=e.data.unsentData;for(const[e,a]of Object.entries(t)){if(!i[e])return;const t=new Set(i[e]);a.forEach(({data:e})=>{t.has(e.type)&&t.delete(e.type)});const r=a.some(({data:t})=>{if(t.type!==K.CustomData)return!1;const{index:e}=t;return this.persistentCustomDataIndexes.has(e)||this.mappingIdentifierCustomDataIndex===e});r&&t.add(K.CustomData),i[e]=Array.from(t),i[e].length||delete i[e]}this.infoStorage.write(e.data)}storeData({visitorCode:t,data:e,track:i}){return this.storeDataInternal((a,r)=>{this.mutUpdateTargetingData({infoData:a,targetingData:r,visitorCode:t,kameleoonData:e,extendTtl:!0,track:i})})}storeDataForVisitors(t,e){return this.storeDataInternal((i,a)=>{for(const[r,s]of Object.entries(t))this.mutUpdateTargetingData({infoData:i,targetingData:a,visitorCode:r,kameleoonData:s,extendTtl:e})})}storeDataInternal(t){const e=this.dataStorage.read();if(!e.ok)return e;const i=this.infoStorage.read();if(!i.ok)return i;const a=e.data,r=i.data;return t(r,a),this.cleanupData(),this.infoStorage.write(r),this.dataStorage.write(a)}getTree(t){if(this.targetingTrees.has(t.id))return this.targetingTrees.get(t.id);const e=new Ot(t);return this.targetingTrees.set(t.id,e),e}clearTrees(){this.targetingTrees.clear()}isPersistentCustomData(t){return!!this.persistentCustomDataIndexes.size&&!!tt.isCustomData(t)&&this.persistentCustomDataIndexes.has(t.data.index)}isUniqueIdentifier(t){var e;const i=this.getVisitorData(t),a=null==i?void 0:i[K.UniqueIdentifier];return null!==(e=null==a?void 0:a.value)&&void 0!==e&&e}getVisitorIdentifier(t){var e,i,a;const r=this.infoStorage.read();if(!r.ok)return t;const s=r.data;return null!==(e=s.mappingIdentifiers)&&void 0!==e||(s.mappingIdentifiers={}),null!==(a=null===(i=s.mappingIdentifiers[t])||void 0===i?void 0:i.mappingIdentifier)&&void 0!==a?a:t}getMappingIdentifier(t){const e=this.infoStorage.read();if(!e.ok)return;const i=e.data;return i.mappingIdentifiers?i.mappingIdentifiers[t]:void 0}setMappingIdentifier(t,e){var i;const a=this.infoStorage.read();if(!a.ok)return;const r=a.data;null!==(i=r.mappingIdentifiers)&&void 0!==i||(r.mappingIdentifiers={});const s=r.mappingIdentifiers[t];(!s||s.timestamp<e.timestamp)&&(r.mappingIdentifiers[t]=e,this.infoStorage.write(r))}getVisitorData(t){this.cleanupData();const e=this.dataStorage.read();if(!e.ok)return;let{visitorReference:i,data:a,isReference:r}=this.dataProcessor.dereferenceData(e.data,t);if(this.packageInfo.isServer&&r&&!a[i]){const e=this.infoStorage.read();e.ok&&e.data.mappingIdentifiers&&delete e.data.mappingIdentifiers[t],delete a[t],i=t}return a[i]}getVisitorStoredDataTypes(t){const e=this.getVisitorData(t);return e?new Set(Object.keys(e)):new Set}getLinkedVisitor(t){var e,i,a;const r=this.dataStorage.read();if(!r.ok)return null;const s=r.data[t];if(\"string\"==typeof s)return s;if(null==s||null==this.mappingIdentifierCustomDataIndex)return null;const n=null===(a=null===(i=null===(e=s[K.CustomData])||void 0===e?void 0:e[this.mappingIdentifierCustomDataIndex])||void 0===i?void 0:i.value)||void 0===a?void 0:a[0];return null!=n?n:null}mutUpdateTargetingData({infoData:t,visitorCode:e,kameleoonData:i,targetingData:a,extendTtl:r,track:s}){var n,o,u;for(const d of i){if(!1===s&&(d.status=B.Sent),d.data.type===K.CustomData&&!this.processCustomData({infoData:t,customData:d,mutData:a,visitorCode:e}))continue;if(d.data.type===K.Conversion){const t=d;(null!==(o=null===(n=t._metadata)||void 0===n?void 0:n.length)&&void 0!==o?o:0)>0&&(t._metadata=null===(u=t._metadata)||void 0===u?void 0:u.filter(t=>this.trySetCustomDataIndexByName(t)))}const i=this.dataProcessor.mutUpdateData({infoData:t,visitorCode:e,mutData:a,dataItem:d,extendTtl:r}),l=t.nextDataCleanup;(!l||l&&i&&i<l)&&(t.nextDataCleanup=i),d.data.status===B.Unsent&&this.dataProcessor.mutAddUnsentData({mutData:t,visitorCode:e,dataType:d.data.type})}}cleanupData(){const t=this.dataStorage.read(),e=this.infoStorage.read();if(!t.ok||!e.ok)return;const i=t.data,a=e.data,r=a.nextDataCleanup;if(r&&r<Date.now()){const t=this.dataProcessor.mutCleanupData(i,a);a.nextDataCleanup=t||void 0,this.infoStorage.write(a),this.dataStorage.write(i)}}processCustomData({infoData:t,mutData:e,customData:i,visitorCode:a}){var r;const{data:s}=i,n=Boolean(s.value.length&&s.value[0].length);if(!this.trySetCustomDataIndexByName(i))return!1;if(s.index==at.UNDEFINED_INDEX&&(s.index=i.index),this.mappingIdentifierCustomDataIndex===s.index&&n){i._isMappingIdentifier=!0;const n=s.value[0];a!==n&&(this.dataProcessor.createReference({infoData:t,mutData:e,visitorCode:a,linkedVisitor:s.value[0]}),null!==(r=t.mappingIdentifiers)&&void 0!==r||(t.mappingIdentifiers={}),t.mappingIdentifiers[n]={mappingIdentifier:a,timestamp:Date.now()})}return this.localCustomDataIndexes.has(s.index)&&(i.status=B.Sent),!0}trySetCustomDataIndexByName(t){if(t.index!==at.UNDEFINED_INDEX)return!0;if(!t.name)return!1;const e=this.customDataIndexByName.get(t.name);return null!=e&&(t.index=e,!0)}get unsentDataVisitors(){const t=this.infoStorage.read();return t.ok?Object.keys(t.data.unsentData):[]}get identifierCustomDataIndex(){return this.mappingIdentifierCustomDataIndex}get trees(){return this.targetingTrees}get storedCustomDataIndexes(){const t=this.dataStorage.read();if(!t.ok)return new Set;const e=t.data;if(!(K.CustomData in e))return new Set;const i=new Set;for(const t in Object.keys(e[K.CustomData]))i.add(Number(t));return i}set customDataIndexes(t){var e;const[i,a]=[[],[]],r=new Map;t.forEach(t=>{t.localOnly&&i.push(t.index),\"VISITOR\"===t.scope&&a.push(t.index),t.name&&r.set(t.name,t.index)}),this.mappingIdentifierCustomDataIndex=(null===(e=t.find(t=>t.isMappingIdentifier))||void 0===e?void 0:e.index)||null,this.localCustomDataIndexes=new Set(i),this.persistentCustomDataIndexes=new Set(a),this.customDataIndexByName=r}getCustomDataIndexByName(t){return this.customDataIndexByName.get(t)}}const ge=31536e3;let pe=class{constructor(){this.isConsentRequired=!1}set consentRequired(t){this.isConsentRequired=t}get consentRequired(){return this.isConsentRequired}set getData(t){this.getDataCallback=t}set setData(t){this.setDataCallback=t}get setData(){if(this.setDataCallback)return this.setDataCallback;throw new Error(\"Missing setDataCallback!\")}validateVisitorCode(t){return 0===t.length?u.Err(new C(m.VisitorCodeEmpty)):t.length>255?u.Err(new C(m.VisitorCodeMaxLength)):u.Ok()}getVisitorCode(t){if(!this.getDataCallback||!this.setDataCallback)throw new Error(\"Missing getDataCallback or setDataCallback methods in getVisitorCode!\");let e;const i=this.getDataCallback(se.VisitorCode);return i&&(e=i),e||(t?(this.validateVisitorCode(t).throw(),e=t):e=this.generateVisitorCode()),this.processSimulatedVariations(e),this.isConsentRequired||this.setDataCallback({visitorCode:e,key:se.VisitorCode,maxAge:ge,path:\"/\"}),e}processSimulatedVariations(t){if(this.variationConfiguration){const e=this.getSimulatedVariations(t);try{this.variationConfiguration.clearSimulatedVariations(t).throw(),null!==e&&e.length>0&&this.variationConfiguration.updateForcedFeatureVariations(t,e).throw()}catch(t){t instanceof Error&&v.error`Failed to process simulated variations: ${t.message}`}}}getSimulatedVariations(t){const e=this.getDataCallback(se.KameleoonSimulationFFData);let i=null;if(\"string\"==typeof e&&e.length>0)try{const t=JSON.parse(decodeURIComponent(e));t&&\"object\"==typeof t&&(i=Object.entries(t).map(([t,e])=>this.variationConfiguration.simulatedVariationFromJson(t,e)).filter(t=>null!==t))}catch(t){t instanceof Error&&v.error`Failed to parse simulated variations: ${t.message}`}return i}generateVisitorCode(){const t=[];for(let e=0;e<16;e++)t.push(\"abcdefghijklmnopqrstuvwxyz0123456789\"[Math.floor(36*Math.random())]);return t.join(\"\")}setVariationConfiguration(t){this.variationConfiguration||(this.variationConfiguration=t)}};var ve,fe,me={exports:{}},ye={exports:{}},De=i(Object.freeze({__proto__:null,default:{}}));var Ce,ke=(fe||(fe=1,me.exports=(Ce=function(){return ve||(ve=1,ye.exports=(e=e||function(e){var i;if(\"undefined\"!=typeof window&&window.crypto&&(i=window.crypto),\"undefined\"!=typeof self&&self.crypto&&(i=self.crypto),\"undefined\"!=typeof globalThis&&globalThis.crypto&&(i=globalThis.crypto),!i&&\"undefined\"!=typeof window&&window.msCrypto&&(i=window.msCrypto),!i&&void 0!==t&&t.crypto&&(i=t.crypto),!i)try{i=De}catch(t){}var a=function(){if(i){if(\"function\"==typeof i.getRandomValues)try{return i.getRandomValues(new Uint32Array(1))[0]}catch(t){}if(\"function\"==typeof i.randomBytes)try{return i.randomBytes(4).readInt32LE()}catch(t){}}throw new Error(\"Native crypto module could not be used to get secure random number.\")},r=Object.create||function(){function t(){}return function(e){var i;return t.prototype=e,i=new t,t.prototype=null,i}}(),s={},n=s.lib={},o=n.Base={extend:function(t){var e=r(this);return t&&e.mixIn(t),e.hasOwnProperty(\"init\")&&this.init!==e.init||(e.init=function(){e.$super.init.apply(this,arguments)}),e.init.prototype=e,e.$super=this,e},create:function(){var t=this.extend();return t.init.apply(t,arguments),t},init:function(){},mixIn:function(t){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e]);t.hasOwnProperty(\"toString\")&&(this.toString=t.toString)},clone:function(){return this.init.prototype.extend(this)}},u=n.WordArray=o.extend({init:function(t,e){t=this.words=t||[],this.sigBytes=null!=e?e:4*t.length},toString:function(t){return(t||l).stringify(this)},concat:function(t){var e=this.words,i=t.words,a=this.sigBytes,r=t.sigBytes;if(this.clamp(),a%4)for(var s=0;s<r;s++){var n=i[s>>>2]>>>24-s%4*8&255;e[a+s>>>2]|=n<<24-(a+s)%4*8}else for(var o=0;o<r;o+=4)e[a+o>>>2]=i[o>>>2];return this.sigBytes+=r,this},clamp:function(){var t=this.words,i=this.sigBytes;t[i>>>2]&=4294967295<<32-i%4*8,t.length=e.ceil(i/4)},clone:function(){var t=o.clone.call(this);return t.words=this.words.slice(0),t},random:function(t){for(var e=[],i=0;i<t;i+=4)e.push(a());return new u.init(e,t)}}),d=s.enc={},l=d.Hex={stringify:function(t){for(var e=t.words,i=t.sigBytes,a=[],r=0;r<i;r++){var s=e[r>>>2]>>>24-r%4*8&255;a.push((s>>>4).toString(16)),a.push((15&s).toString(16))}return a.join(\"\")},parse:function(t){for(var e=t.length,i=[],a=0;a<e;a+=2)i[a>>>3]|=parseInt(t.substr(a,2),16)<<24-a%8*4;return new u.init(i,e/2)}},c=d.Latin1={stringify:function(t){for(var e=t.words,i=t.sigBytes,a=[],r=0;r<i;r++){var s=e[r>>>2]>>>24-r%4*8&255;a.push(String.fromCharCode(s))}return a.join(\"\")},parse:function(t){for(var e=t.length,i=[],a=0;a<e;a++)i[a>>>2]|=(255&t.charCodeAt(a))<<24-a%4*8;return new u.init(i,e)}},h=d.Utf8={stringify:function(t){try{return decodeURIComponent(escape(c.stringify(t)))}catch(t){throw new Error(\"Malformed UTF-8 data\")}},parse:function(t){return c.parse(unescape(encodeURIComponent(t)))}},g=n.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(t){\"string\"==typeof t&&(t=h.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes},_process:function(t){var i,a=this._data,r=a.words,s=a.sigBytes,n=this.blockSize,o=s/(4*n),d=(o=t?e.ceil(o):e.max((0|o)-this._minBufferSize,0))*n,l=e.min(4*d,s);if(d){for(var c=0;c<d;c+=n)this._doProcessBlock(r,c);i=r.splice(0,d),a.sigBytes-=l}return new u.init(i,l)},clone:function(){var t=o.clone.call(this);return t._data=this._data.clone(),t},_minBufferSize:0});n.Hasher=g.extend({cfg:o.extend(),init:function(t){this.cfg=this.cfg.extend(t),this.reset()},reset:function(){g.reset.call(this),this._doReset()},update:function(t){return this._append(t),this._process(),this},finalize:function(t){return t&&this._append(t),this._doFinalize()},blockSize:16,_createHelper:function(t){return function(e,i){return new t.init(i).finalize(e)}},_createHmacHelper:function(t){return function(e,i){return new p.HMAC.init(t,i).finalize(e)}}});var p=s.algo={};return s}(Math),e)),ye.exports;var e}(),function(t){var e=Ce,i=e.lib,a=i.WordArray,r=i.Hasher,s=e.algo,n=[],o=[];!function(){function e(e){for(var i=t.sqrt(e),a=2;a<=i;a++)if(!(e%a))return!1;return!0}function i(t){return 4294967296*(t-(0|t))|0}for(var a=2,r=0;r<64;)e(a)&&(r<8&&(n[r]=i(t.pow(a,.5))),o[r]=i(t.pow(a,1/3)),r++),a++}();var u=[],d=s.SHA256=r.extend({_doReset:function(){this._hash=new a.init(n.slice(0))},_doProcessBlock:function(t,e){for(var i=this._hash.words,a=i[0],r=i[1],s=i[2],n=i[3],d=i[4],l=i[5],c=i[6],h=i[7],g=0;g<64;g++){if(g<16)u[g]=0|t[e+g];else{var p=u[g-15],v=(p<<25|p>>>7)^(p<<14|p>>>18)^p>>>3,f=u[g-2],m=(f<<15|f>>>17)^(f<<13|f>>>19)^f>>>10;u[g]=v+u[g-7]+m+u[g-16]}var y=a&r^a&s^r&s,D=(a<<30|a>>>2)^(a<<19|a>>>13)^(a<<10|a>>>22),C=h+((d<<26|d>>>6)^(d<<21|d>>>11)^(d<<7|d>>>25))+(d&l^~d&c)+o[g]+u[g];h=c,c=l,l=d,d=n+C|0,n=s,s=r,r=a,a=C+(D+y)|0}i[0]=i[0]+a|0,i[1]=i[1]+r|0,i[2]=i[2]+s|0,i[3]=i[3]+n|0,i[4]=i[4]+d|0,i[5]=i[5]+l|0,i[6]=i[6]+c|0,i[7]=i[7]+h|0},_doFinalize:function(){var e=this._data,i=e.words,a=8*this._nDataBytes,r=8*e.sigBytes;return i[r>>>5]|=128<<24-r%32,i[14+(r+64>>>9<<4)]=t.floor(a/4294967296),i[15+(r+64>>>9<<4)]=a,e.sigBytes=4*i.length,this._process(),this._hash},clone:function(){var t=r.clone.call(this);return t._hash=this._hash.clone(),t}});e.SHA256=r._createHelper(d),e.HmacSHA256=r._createHmacHelper(d)}(Math),Ce.SHA256)),me.exports),Ie=e(ke);class we{static getHashDoubleForMEGroup(t,e){return this.calculateHash(t+e)}static getHashDouble({visitorIdentifier:t,id:e,respoolTime:i}){let a=\"\";return i&&(a+=String(i)),this.calculateHash(t+e+a)}static calculateHash(t){const e=Ie(t).toString();return parseInt(e,16)/Math.pow(2,256)}}class Ve{constructor(t,e,i,a,r){this.storage=t,this.storageForcedExperimentVariations=e,this.storageForcedFeatureVariations=i,this.visitorCodeManager=a,this.clientConfiguration=r,a.setVariationConfiguration(this)}updateDataStatus({visitorCode:t,experimentIdList:e,status:i}){const a=this.storage.read();if(!a.ok)return a;let r=a.data;r[t]||(r[t]={});for(const a of e)r[t][a]=Object.assign(Object.assign({},r[t][a]),{status:i});return this.storage.write(r)}getUnsentData(t){return this.getVariationData(t,t=>t===B.Unsent)}getVisitorsWithUnsentData(){const t=this.storage.read();if(!t.ok)return[];const e=[];for(const[i,a]of Object.entries(t.data))Object.values(a).some(t=>t.status===B.Unsent)&&e.push(i);return e}getPendingData(t){return this.getVariationData(t,t=>t===B.Pending)}getStoredVariations(t){const e=this.storage.read();if(!e.ok)return e;const i=e.data[t];return i?u.Ok(i):u.Err(new C(m.StorageRead,t))}getVariation({visitorCode:t,visitorIdentifier:e,featureFlag:i,targetingData:a,packageInfo:r,clientConfiguration:s,dataManager:n,legalConsent:o,track:d=!0,withAssignment:l=!1}){const{rules:c,featureKey:h,id:g,defaultVariationKey:p}=i,v=s.isConsentRequired?o:le.Given;for(const o of c){const{segment:c,experimentId:f,id:y,exposition:D,respoolTime:k,variationByExposition:I}=o,w=Date.now(),V=this.getForcedExperimentVariation(t,o.experimentId);let b=null;if(V.ok&&(b=V.data,null==b?void 0:b.forceTargeting)){const e=this.createAndSaveForcedTargetedVariation(t,i,o,b,d,l,w);return u.Ok(e)}const T=tt.checkTargeting({segment:c,visitorCode:t,experimentId:f,targetingData:a,packageInfo:r,clientConfiguration:s,dataManager:n,variationConfiguration:this});if(!T.ok)return T;if(T.data){if(b){const e=this.createAndSaveForcedTargetedVariation(t,i,o,b,d,l,w);return u.Ok(e)}if(we.getHashDouble({visitorIdentifier:e,respoolTime:k,id:String(y)})<=D){if(v==le.NotGiven&&\"EXPERIMENTATION\"==o.type){if(\"PARTIALLY_BLOCK\"==s.consentBlockingBehaviour)break;return u.Err(new C(m.FeatureFlagEnvironmentDisabled,`Evaluation of ${o} is blocked because consent is not provided for visitor '${t}'`))}let i=this.evaluateCBScores(o,e,a);if(!i){const t=we.getHashDouble({visitorIdentifier:e,respoolTime:k,id:String(f)});i=tt.getVariationByHash(I,t)}if(i){l&&this.updateStoredVariations(t,{[f]:{variationId:i.variationId,isTargetedRule:\"TARGETED_DELIVERY\"===o.type,status:d?B.Unsent:B.Sent,assignedTime:w}});const e={variationId:i.variationId,variationKey:i.variationKey,rule:o,featureFlagId:g,featureKey:h,experimentId:f,isTargetedRule:\"TARGETED_DELIVERY\"===o.type};return u.Ok(e)}}if(\"TARGETED_DELIVERY\"===o.type){const t={featureKey:h,featureFlagId:g,experimentId:null,variationKey:p,variationId:null,rule:null,isTargetedRule:!0};return u.Ok(t)}}}const f={featureKey:h,featureFlagId:g,experimentId:null,variationKey:p,variationId:null,rule:null,isTargetedRule:!1};return u.Ok(f)}createAndSaveForcedTargetedVariation(t,e,i,a,r,s,n){const o={variationKey:a.varByExp.variationKey,variationId:a.varByExp.variationId,rule:i,featureFlagId:e.id,featureKey:e.featureKey,experimentId:i.experimentId,isTargetedRule:\"TARGETED_DELIVERY\"===i.type};return s&&this.updateStoredVariations(t,{[i.experimentId]:{variationId:o.variationId,isTargetedRule:\"TARGETED_DELIVERY\"===i.type,status:r?B.Unsent:B.Sent,assignedTime:n}}),o}updateStoredVariations(t,e){const i=this.storage.read();if(!i.ok)return i;let a=i.data;a[t]||(a[t]={});for(const i in e)a[t][i]=e[i];return this.storage.write(a)}getVariationData(t,e){const i=this.getStoredVariations(t);if(!i.ok)return[];const a=[];for(const[t,r]of Object.entries(i.data))e(r.status)&&a.push({experimentId:Number(t),variationId:r.variationId,isTargetedRule:r.isTargetedRule});return a}updateForcedExperimentVariation(t,e,i){const a=this.storageForcedExperimentVariations.read();if(!a.ok)return a;let r=a.data;return r[t]||(r[t]={}),i?r[t][e]=i:delete r[t][e],this.storageForcedExperimentVariations.write(r)}updateForcedFeatureVariations(t,e){const i=this.storageForcedFeatureVariations.read();if(!i.ok)return i;let a=i.data;a[0]||(a[0]={}),a[1]||(a[1]={});const r=a[0],s=a[1];return r[t]||(r[t]={}),s[t]||(s[t]={}),e.forEach(e=>{(e.simulated?s[t]:r[t])[e.featureKey]=e}),this.storageForcedFeatureVariations.write(a)}clearSimulatedVariations(t){var e;const i=this.storageForcedFeatureVariations.read();if(!i.ok)return i;let a;const r=i.data;return(null===(e=null==r?void 0:r[1])||void 0===e?void 0:e[t])?(delete r[1][t],a=this.storageForcedFeatureVariations.write(r)):a=u.Ok(),a}getForcedFeatureVariation(t,e){var i,a,r,s;const n=this.storageForcedFeatureVariations.read();if(!n.ok)return n;const o=null===(a=null===(i=n.data[1])||void 0===i?void 0:i[t])||void 0===a?void 0:a[e];if(o)return u.Ok(o);const d=null===(s=null===(r=n.data[0])||void 0===r?void 0:r[t])||void 0===s?void 0:s[e];return u.Ok(d)}getForcedExperimentVariation(t,e){var i;const a=this.storageForcedExperimentVariations.read();if(!a.ok)return a;const r=null===(i=a.data[t])||void 0===i?void 0:i[e];return u.Ok(r)}parseForcedVariationData(t,e){const i=this.clientConfiguration.featureFlags.get(t.featureKey);if(!i)return v.error`Simulated feature flag '${t.featureKey}' not found`,null;let a=null;if(0===t.experimentId)return a={featureKey:t.featureKey,rule:null,varByExp:null,simulated:e},a;for(const r of i.rules){if(t.experimentId!==r.experimentId)continue;const i=r.variationByExposition.find(e=>e.variationId===t.variationId);if(i)return a={featureKey:t.featureKey,rule:{type:r.type,experimentId:r.experimentId},varByExp:{variationKey:i.variationKey,variationId:i.variationId},simulated:e},a}return v.error`Simulated variation ${t.variationId} not found`,null}simulatedVariationFromJson(t,e){return this.isSimulatedVariationJson(e)?this.parseForcedVariationData({featureKey:t,variationId:e.varId,experimentId:e.expId},!0):null}isSimulatedVariationJson(t){return t&&(\"number\"==typeof t.expId||null===t.expId)}evaluateCBScores(t,e,i){if(!(null==i?void 0:i.cbScores))return null;const a=t.experimentId,r=new ht(i.cbScores.cbs).getValues().get(a);let s=null;if(void 0!==r){const i=t.variationByExposition,n=r.map(t=>i.filter(e=>t.ids.includes(e.variationId))).find(t=>t.length>0);if(n){let i=0;if(n.length>1){const r=we.getHashDouble({visitorIdentifier:e,respoolTime:t.respoolTime,id:String(a)});i=Math.min(Math.floor(r*n.length),n.length-1)}s=n[i]}}return s}}let be=class{constructor({siteCode:t,externalEventSource:e,urlProvider:i}){this.url=i.getEventSourceUrl(),this.siteCode=t,this.eventSource=e,this.isConnectionOpen=!1}get isOpen(){return this.isConnectionOpen}open(t){this.eventSource.open({onEvent:this.handleMessage(t),url:this.url,eventType:\"configuration-update-event\"}),this.isConnectionOpen=!0}close(){this.eventSource.close(),this.isConnectionOpen=!1}onError(t){this.eventSource.onError?this.eventSource.onError(t):v.warning(\"EventSource does not have `onError` method provided. Real-time errors won't be handled.\")}handleMessage(t){return e=>{const i=JSON.parse(e.data),{siteCode:a,ts:r}=i;this.siteCode===a&&t(r)}}};class Te{constructor(t){this.currentSize=0,this.resultBody=[],this.hasUserAgent=!1,this.trackingVisitors={},this.prng=t}getTrackingBody(){const t={body:this.resultBody.join(\"\\n\"),hasUserAgent:this.hasUserAgent};return this.cleanup(),t}addData({visitorCode:t,variationData:e,visitorData:i,userAgent:a,isConsentProvided:r,isMappingIdentifier:s}){const n=[],o=this.getVariationDataLines(e),u=this.getVisitorDataLines(i);return n.push(...o,...u),this.addVisitorTrackingLines({visitorCode:t,lines:n,userAgent:a,isConsentProvided:r,isMappingIdentifier:s})}getVisitorDataLines(t){const e=[];for(const i of t){let t;if(!(i instanceof Tt||i.data.type!==K.Conversion&&i.data.type!==K.PageView)){const e=i.data.nonce;e?t=e:(t=tt.getNonce(this.prng),i.data.nonce=t)}t||(t=tt.getNonce(this.prng)),e.push(i.url+S+t)}return e}getVariationDataLines(t){const e=[];return t.forEach(t=>{e.push(\"eventType=experiment\"+E+t.experimentId+\"&variationId=\"+t.variationId+S+tt.getNonce(this.prng))}),e}prepareVisitorBody(t){const e=this.trackingVisitors[t];if(!e)return u.Err();const{lines:i,userAgent:a,isMappingIdentifier:r,isConsentProvided:s}=e,n=this.getIdentifier(t,r);if(i.length)i.forEach((t,e)=>{i[e]=t+n});else if(s){const t=this.getActivityLine();i.push(t+n)}a&&i.length&&(i[0]+=\"&userAgent=\"+a,this.hasUserAgent=!0);const o=this.checkSize(i);return o.ok&&this.resultBody.push(...i),o}cleanup(){this.currentSize=0,this.resultBody=[],this.hasUserAgent=!1,this.trackingVisitors={}}checkSize(t){let e=0;return e+=t.reduce((t,e)=>t+4*e.length,0),e+this.currentSize>1e7?u.Err():(this.currentSize+=e,u.Ok())}addVisitorTrackingLines({visitorCode:t,lines:e,userAgent:i,isConsentProvided:a,isMappingIdentifier:r}){return this.trackingVisitors[t]?(i&&(this.trackingVisitors[t].userAgent=i),this.trackingVisitors[t].lines.push(...e)):this.trackingVisitors[t]={isMappingIdentifier:r,isConsentProvided:a,userAgent:i,lines:e},this.prepareVisitorBody(t)}getActivityLine(){return\"eventType=activity\"+S+tt.getNonce(this.prng)}getIdentifier(t,e){return(e?M:b)+encodeURIComponent(t)}}class Se{constructor({dataManager:t,trackingStorage:e,variationConfiguration:i,trackingInterval:a,requester:r,prng:s,clientConfiguration:n}){this.intervalId=null,this.dataManager=t,this.trackingStorage=e,this.variationConfiguration=i,this.requester=r,this.bodyProvider=new Te(s),this.clientConfiguration=n;try{this.intervalId=setInterval(()=>{this.sendDataAll()},a)}catch(t){throw this.intervalId&&clearInterval(this.intervalId),t}}scheduleVisitor(t,e){this.trackingStorage.read().and(i=>{i.scheduledVisitors[`_${t}`]={isConsentProvided:e},this.trackingStorage.write(i)})}checkIsIdentifier(t){var e,i;const a=this.dataManager.isUniqueIdentifier(t),r=null!==(i=null===(e=this.dataManager.getMappingIdentifier(t))||void 0===e?void 0:e.mappingIdentifier)&&void 0!==i?i:t;let s=!1;if(a){const e=this.dataManager.getLinkedVisitor(t),i=this.dataManager.identifierCustomDataIndex;e||\"number\"!=typeof i?s=!0:this.dataManager.storeData({visitorCode:t,data:[new at(i,t)]})}return s&&t!=r}getUserAgent(t){const e=this.dataManager.getVisitorData(t);if(e){const t=e[K.UserAgent];if(t)return t.value}}sendDataAll(){return d(this,0,void 0,function*(){const t=this.trackingStorage.read();if(!t.ok)return;const{scheduledVisitors:e}=t.data;yield this.sendData(e)})}sendDataForVisitor(t,e){return d(this,0,void 0,function*(){this.trackingStorage.read().ok&&(yield this.sendData({[`_${t}`]:{isConsentProvided:e}}))})}sendData(t){return d(this,0,void 0,function*(){const e={},i=[],a=[];for(const[r,{isConsentProvided:s}]of Object.entries(t)){let t=r.startsWith(\"_\")?r.substring(1):r;const n=this.checkIsIdentifier(t),o=this.getUserAgent(t),u=this.getUnsentVisitorData(t,s),d=this.getUnsentVariationData(t,s);if(!this.bodyProvider.addData({visitorCode:t,variationData:d,visitorData:u,userAgent:o,isConsentProvided:s,isMappingIdentifier:n}).ok){v.warning(\"Visitor data to be tracked exceeded the request size limit. Some visitor data is kept to be sent later. If it is not caused by the peak load, decreasing the tracking interval is recommended.\");break}e[t]={visitorData:u,variationData:d},a.push({visitorCode:t,isConsentProvided:s}),i.push(r)}const{body:r,hasUserAgent:s}=this.bodyProvider.getTrackingBody();if(0!==i.length&&this.trackingStorage.read().and(t=>{i.forEach(e=>{delete t.scheduledVisitors[e]}),this.trackingStorage.write(t)}),r)if((yield this.requester.track(r,s)).ok)this.updateDataStatus(e,B.Sent);else{v.error(\"Tracking request failed\"),this.updateDataStatus(e,B.Unsent);let t={};for(let{visitorCode:e,isConsentProvided:i}of a)e=`_${e}`,t[e]={isConsentProvided:i};this.addNotTrackedVisitors(t)}})}addNotTrackedVisitors(t){const e=this.trackingStorage.read();if(!e.ok)return;const{scheduledVisitors:i}=e.data;Object.entries(t).forEach(([t,{isConsentProvided:e}])=>{i[t]||(i[t]={isConsentProvided:e})}),this.trackingStorage.write({scheduledVisitors:i})}updateDataStatus(t,e){let i={};for(const[a,{visitorData:r,variationData:s}]of Object.entries(t)){const t=r.filter(t=>!(t instanceof Tt)).map(t=>{const i=t;return i.status=e,i});t.length&&(i[a]=t);const n=s.map(t=>String(t.experimentId));this.variationConfiguration.updateDataStatus({visitorCode:a,experimentIdList:n,status:e})}0!==Object.keys(i).length&&(e===B.Sent?this.dataManager.storeTrackedData(i):this.dataManager.storeDataForVisitors(i,!1))}getUnsentVisitorData(t,e){const i=this.dataManager.getUnsentData(t),a=[];if(!i.length)return[];for(const t of i)t.url&&(e||this.clientConfiguration.hasAnyTargetedDeliveryRule&&!(t instanceof Tt)&&t.data.type===K.Conversion)&&a.push(t);if(a.length){const e=a.filter(t=>!(t instanceof Tt)).map(t=>{const e=t;return e.status=B.Pending,e});this.dataManager.storeTrackedData({[t]:e})}return a}getUnsentVariationData(t,e){const i=this.variationConfiguration.getUnsentData(t),a=new Set;if(!i.length)return[];const r=i.filter(t=>{const i=t.isTargetedRule||e;return i&&a.add(String(t.experimentId)),i});return this.variationConfiguration.updateDataStatus({visitorCode:t,experimentIdList:Array.from(a),status:B.Pending}),r}}class Ee{constructor(t,e){if(t<=0)throw new Error(\"'expirationPeriod' must be positive!\");this.expirationPeriod=t,this.clientConfiguration=e}getEngineTrackingCode(t){var e;let i=Ee.TRACKING_CODE_INIT;const a=Date.now()-this.expirationPeriod,r=this.clientConfiguration.experimentMap;for(const[s,n]of Object.entries(t)){if(void 0===n.assignedTime||n.assignedTime<a)continue;const t=Number(s),o=!(null===(e=r.get(t))||void 0===e?void 0:e.hasJsCssVariables);i+=`window.kameleoonQueue.push(['${Ee.ASSIGN_VARIATION_COMMAND}',${t},${n.variationId},true]);`,i+=`window.kameleoonQueue.push(['${Ee.TRIGGER_COMMAND}',${t},${o}]);`}return i}getAssignedVariationsFromKameleoonQueue(t){if(!Array.isArray(t))return{};const e={};for(const i of t){if(!this.isAssignVariationCommand(i))continue;const[,t,a]=i;e[t]={variationId:a,isTargetedRule:!1,status:B.Unsent,assignedTime:Date.now()}}return e}isAssignVariationCommand(t){if(!Array.isArray(t))return!1;const[e,i,a]=t;return e===Ee.ASSIGN_VARIATION_COMMAND&&\"number\"==typeof i&&\"number\"==typeof a}}Ee.TRACKING_CODE_INIT=\"window.kameleoonQueue=window.kameleoonQueue||[];\",Ee.ASSIGN_VARIATION_COMMAND=\"Experiments.assignVariation\",Ee.TRIGGER_COMMAND=\"Experiments.trigger\";let Oe=class t{constructor({siteCode:t,dependencies:e,configuration:i,internalConfiguration:a,stubMode:r}){var s;if(this.initialized=!1,this.stubMode=r,r)return this.variationConfiguration={},this.clientConfiguration={},this.dataManager={},this.consentDataStorage={},this.hybridManager={},this.requester={},this.externalPackageInfo={},this.visitorCodeManager={},this.eventManager={},this.tracker={},void(this.environment=\"\");const n=null==a?void 0:a.externals.externalLogger;n&&v.setLogger(n),St.setConditionFactoryInstance(new ae);const{settings:o}=new mt(t,i);this.environment=o.environment;const{externalStorage:u,externalEventSource:d,externalPackageInfo:c,externalVisitorCodeManager:h,externalRequester:g,externalPRNG:p,customDataManager:f}=a.externals,{useAbortController:m}=a.settings,y=new ue(u,se.ClientData),D=new ue(u,se.VariationData),C=new ue(u,se.ForcedExperimentVariation),k=new ue(u,se.ForcedFeatureVariation),I=new ue(u,se.ConsentData),w=new ue(u,se.TrackingData);let V=f;if(!V){const t=new ue(u,se.TargetingData),e=new ue(u,se.DataInfo);V=new he({dataStorage:t,infoStorage:e,cleanupInterval:o.cleanupInterval,packageInfo:c})}const b=null!==(s=null==e?void 0:e.urlProvider)&&void 0!==s?s:new $;b.initialize({domain:o.networkDomain,siteCode:o.siteCode,packageInfo:c,environment:o.environment});const T=new P({urlProvider:b,useAbortController:m,packageInfo:c,externalRequester:g,requestTimeout:o.requestTimeout,trackRetryDelay:o.trackRetryDelay}),S=new be({siteCode:o.siteCode,externalEventSource:d,urlProvider:b}),E=new l,O=new vt({urlProvider:b,storage:y,updateInterval:o.updateInterval,dataManager:V,eventManager:E,requester:T,eventSource:S,externalVisitorCodeManager:h,externalPackageInfo:c,defaultDataFile:null==i?void 0:i.defaultDataFile}),x=new Ee(5e3,O),F=new Ve(D,C,k,h,O),R=new Se({dataManager:V,trackingStorage:w,variationConfiguration:F,requester:T,trackingInterval:o.trackingInterval,prng:p,clientConfiguration:O});this.tracker=R,this.variationConfiguration=F,this.requester=T,this.hybridManager=x,this.dataManager=V,this.clientConfiguration=O,this.externalPackageInfo=c,this.consentDataStorage=I,this.visitorCodeManager=h,this.eventManager=E,null!==o.cleanupInterval&&new de(u,o.cleanupInterval)}initialize(){return d(this,0,void 0,function*(){if(this.stubMode)return!1;const t=yield this.clientConfiguration.initialize();return t.throw(),this.initialized=!0,t.ok})}addData(t,...e){if(this.stubMode)throw new C(m.Initialization);const i=\"string\"==typeof t?{visitorCode:t,data:e}:t,{visitorCode:a,data:r,track:s=!0}=i;if(this.visitorCodeManager.validateVisitorCode(a).throw(),!this.initialized)throw new C(m.Initialization);this.dataManager.storeData({visitorCode:a,track:s,data:r}).throw()}getRemoteVisitorData({visitorCode:t,shouldAddData:e=!0,filters:i=kt}){return d(this,0,void 0,function*(){if(this.stubMode)throw new C(m.Initialization);if(!this.initialized)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const{previousVisitAmount:a}=i;if(\"number\"==typeof a&&(a<1||a>25))throw new C(m.VisitAmount);const r=this.dataManager.isUniqueIdentifier(t),s=(yield this.requester.getVisitorData({visitorCode:t,filters:i,isMappingIdentifier:r})).throw(),{visitorData:n,storageVisitorData:o,visitsData:u,mappingIdentifier:d}=pt.parseVisitorData({data:s,filters:i,visitorCode:t,dataManager:this.dataManager,variationConfiguration:this.variationConfiguration});for(const i of o)(e||this.dataManager.isPersistentCustomData(i))&&this.addData(t,i);return u&&e&&this.addData(t,u),(null==i?void 0:i.visitorCode)&&d&&this.dataManager.setMappingIdentifier(t,d),n})}trackConversion({visitorCode:t,goalId:e,negative:i,revenue:a,metadata:r}){this.stubMode||(this.addData(t,new rt({goalId:e,revenue:a,negative:i,metadata:r})),this.flush(t))}_flushInternal(t,e=!1){return d(this,0,void 0,function*(){if(\"string\"==typeof t)e?yield this.tracker.sendDataForVisitor(t,this._isConsentProvided(t)):this.tracker.scheduleVisitor(t,this._isConsentProvided(t));else{for(const t of this.dataManager.unsentDataVisitors)this.tracker.scheduleVisitor(t,this._isConsentProvided(t));for(const t of this.variationConfiguration.getVisitorsWithUnsentData())this.tracker.scheduleVisitor(t,this._isConsentProvided(t));e&&(yield this.tracker.sendDataAll())}})}flushInstant(t){return d(this,0,void 0,function*(){if(this.stubMode)throw new C(m.Initialization);const{visitorCode:e}=this._parseFlushParams(t);if(!this.initialized)throw new C(m.Initialization);yield this._flushInternal(e,!0)})}flush(t){if(this.stubMode)throw new C(m.Initialization);const{visitorCode:e,isInstant:i}=this._parseFlushParams(t);if(!this.initialized)throw new C(m.Initialization);this._flushInternal(e,i)}_parseFlushParams(t){var e;let i,a=!1;return\"string\"==typeof t?i=t:t&&(i=t.visitorCode,a=null!==(e=t.instant)&&void 0!==e&&e),void 0!==i&&this.visitorCodeManager.validateVisitorCode(i).throw(),{visitorCode:i,isInstant:a}}getFeatureFlags(){if(this.stubMode)throw new C(m.Initialization);if(!this.initialized)throw new C(m.Initialization);const t=this.clientConfiguration.featureFlags,e=[];return t.forEach(({id:t,featureKey:i})=>{e.push({id:t,key:i})}),e}getVisitorFeatureFlags(t){if(this.stubMode)throw new C(m.Initialization);if(!this.initialized)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const e=this._getActiveFeatureVariations(t),i=[];return e.forEach(({featureFlagId:t,featureKey:e})=>{i.push({id:t,key:e})}),i}getVariation({visitorCode:t,featureKey:e,track:i=!0}){if(this.stubMode)throw new C(m.Initialization);return this.visitorCodeManager.validateVisitorCode(t).throw(),this._getFeatureVariation({visitorCode:t,featureKey:e,track:i}).throw()}getVariations({visitorCode:t,onlyActive:e=!1,track:i=!0}){if(this.stubMode)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const a=new Map,r=this.clientConfiguration.featureFlags;for(const s of r.values())try{const r=this._getFeatureVariation({visitorCode:t,featureKey:s.featureKey,track:i});!r.ok||e&&r.data.key===yt||a.set(s.featureKey,r.data)}catch(t){if(t instanceof C&&t.type!==m.FeatureFlagEnvironmentDisabled)throw t}return a}getActiveFeatureFlags(t){if(this.stubMode)throw new C(m.Initialization);if(!this.initialized)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const e=this._getActiveFeatureVariations(t),i=new Map;return e.forEach(e=>{const{variationKey:a,featureKey:r,variationId:s,experimentId:n}=e;let o=[];null!==s&&null!==n&&(o=this._getFeatureVariables({visitorCode:t,featureKey:r,variationKey:a}));const u=o.map(t=>pt.parseFeatureVariable(t).throw());i.set(e.featureKey,{name:\"\",key:a,id:s,experimentId:n,variables:u})}),i}getFeatureFlagVariationKey(t,e){if(this.stubMode)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const{key:i}=this._getFeatureVariation({visitorCode:t,featureKey:e,track:!0}).throw();return i}getFeatureFlagVariable({visitorCode:t,featureKey:e,variableKey:i}){if(this.stubMode)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const{key:a}=this._getFeatureVariation({visitorCode:t,featureKey:e,track:!0}).throw(),r=this._getFeatureVariables({visitorCode:t,featureKey:e,variationKey:a}).find(t=>t.key===i);if(!r)throw new C(m.FeatureFlagVariableNotFound,i,t);const{type:s,value:n}=pt.parseFeatureVariable(r).throw();return{type:s,value:n}}getFeatureFlagVariables(t,e){if(this.stubMode)throw new C(m.Initialization);this.visitorCodeManager.validateVisitorCode(t).throw();const{key:i}=this._getFeatureVariation({visitorCode:t,featureKey:e,track:!0}).throw(),a=this._getFeatureVariables({visitorCode:t,featureKey:e,variationKey:i}),r=[];for(const t of a){const e=pt.parseFeatureVariable(t).throw();r.push(e)}return r}isFeatureFlagActive(t,e){if(this.stubMode)throw new C(m.Initialization);let[i,a,r]=[\"\",\"\",!0];\"string\"==typeof t?(i=t,a=e):([i,a]=[t.visitorCode,t.featureKey],void 0!==t.track&&(r=t.track)),this.visitorCodeManager.validateVisitorCode(i).throw();try{const{key:t}=this._getFeatureVariation({visitorCode:i,featureKey:a,track:r}).throw();return t!==yt}catch(t){if(t instanceof C&&t.type===m.FeatureFlagEnvironmentDisabled)return!1;throw t}}getRemoteData(t){return d(this,0,void 0,function*(){return this.stubMode?null:(yield this.requester.getRemoteData(t)).throw()})}getVisitorWarehouseAudience({visitorCode:t,customDataIndex:e,warehouseKey:i}){return d(this,0,void 0,function*(){if(this.stubMode)return null;this.visitorCodeManager.validateVisitorCode(t).throw();const a=yield this.getRemoteData(i||t);if(!a)throw new C(m.RemoteData,`No data found for ${i||t} key`);if(!a[Dt]||0===Object.keys(a[Dt]).length)return null;const r=new at(e,...Object.keys(a[Dt]));return this.dataManager.storeData({visitorCode:t,track:!0,data:[r]}),r})}onEvent(t,e){if(this.stubMode)throw new C(m.Initialization);if(!this.initialized)throw new C(m.Initialization);this.eventManager.addEventHandler(t,e)}getEngineTrackingCode(t){if(this.stubMode)return\"\";this.visitorCodeManager.validateVisitorCode(t).throw();const e=this.variationConfiguration.getStoredVariations(t);return this.hybridManager.getEngineTrackingCode(e.ok?e.data:{})}_processKameleoonQueue(t,e){if(this.stubMode)return;const i=this.hybridManager.getAssignedVariationsFromKameleoonQueue(e);Object.keys(i).length&&this.variationConfiguration.updateStoredVariations(t,i).ok&&this.flush(t)}isInitialized(){return this.initialized}setLogLevel(t){v.setLogLevel(t)}setForcedVariation({visitorCode:t,experimentId:e,variationKey:i,forceTargeting:a=!0}){this.stubMode||(this.visitorCodeManager.validateVisitorCode(t).throw(),this._setForcedVariation({visitorCode:t,experimentId:e,variationKey:i,forceTargeting:a}).throw())}evaluateAudiences(t){if(this.stubMode)return;this.visitorCodeManager.validateVisitorCode(t).throw();const e=[],i=this.dataManager.getVisitorData(t);for(let a of this.clientConfiguration.segments.values()){if(!a.audienceTracking)continue;const r=tt.checkTargeting({segment:a,visitorCode:t,targetingData:i,experimentId:null,clientConfiguration:this.clientConfiguration,packageInfo:this.externalPackageInfo,dataManager:this.dataManager,variationConfiguration:this.variationConfiguration});r.ok&&r.data&&e.push(new ce(Number(a.id)))}0!==e.length&&this.dataManager.storeData({visitorCode:t,data:e}),this.flush(t)}getDataFile(){const t={featureFlags:new Map,dateModified:0};return this.stubMode?t:this.clientConfiguration.dataFile}setUserConsent({visitorCode:t,consent:e,setData:i}){this.stubMode||(this.visitorCodeManager.validateVisitorCode(t).throw(),this.updateConsentData(t,e),e&&i({visitorCode:t,key:se.VisitorCode,maxAge:ge,path:\"/\"}))}updateConsentData(t,e){const i=this.consentDataStorage.read(),a=e?le.Given:le.NotGiven;if(!i.ok)return void(i.error.type===m.StorageEmpty&&this.consentDataStorage.write({[t]:{consent:a}}));const r=i.data;r[t]={consent:a},this.consentDataStorage.write(r)}getLegalConsent(t){let e;const i=this.consentDataStorage.read();return e=i.ok?this.extractLegalConsent(i.data[t]):le.Unknown,e}extractLegalConsent(t){if(void 0===t)return le.Unknown;if(\"boolean\"==typeof t)return t?le.Given:le.NotGiven;const e=t.consent;return\"boolean\"==typeof e?e?le.Given:le.NotGiven:e}_isConsentProvided(t){const{isConsentRequired:e}=this.clientConfiguration;return!e||this.getLegalConsent(t)==le.Given}_getFeatureVariables({visitorCode:t,featureKey:e,variationKey:i}){const a=this.clientConfiguration.featureFlags.get(e);if(!a)throw new C(m.FeatureFlagConfigurationNotFound,e);const r=a.variations.find(t=>t.key===i);if(!r)throw new C(m.FeatureFlagVariationNotFound,i,t);return r.variables}_getActiveFeatureVariations(t){const e=this.clientConfiguration.featureFlags,i=[];for(const a of e.values()){const e=this._getForcedFeatureVariation(t,a.featureKey);if(a.environmentEnabled||(null==e?void 0:e.simulated))try{const r=this._evaluate({visitorCode:t,featureFlag:a,track:!1,save:!1,forcedVariation:e});r.variationKey!==yt&&i.push({variationKey:r.variationKey,variationId:r.variationId,experimentId:r.experimentId,featureFlagId:a.id,featureKey:a.featureKey,rule:null,isTargetedRule:\"TARGETED_DELIVERY\"===r.ruleType})}catch(t){if(t instanceof C){t.type!=m.FeatureFlagEnvironmentDisabled&&v.error`Unexpected error: ${t}`;continue}}}return i}_evaluate({visitorCode:e,featureFlag:i,track:a,save:r,forcedVariation:n}){let o;const u=this.dataManager.getVisitorData(e);if(n)o=t.EvaluatedExperiment.fromForcedFeatureVariation(i.defaultVariationKey,n);else if(this._isVisitorNotInHoldout(e,a,r,i,u)&&this._isFFUnrestrictedByMEGroup(e,i,u)){const s=this._getCodeForHash(e,i.bucketingCustomDataIndex,u),n=this.getLegalConsent(e),d=this.variationConfiguration.getVariation({visitorCode:e,visitorIdentifier:s,featureFlag:i,track:a,withAssignment:r,targetingData:u,clientConfiguration:this.clientConfiguration,dataManager:this.dataManager,packageInfo:this.externalPackageInfo,legalConsent:n}).throw();o=t.EvaluatedExperiment.fromVariationData(d)}else o=t.EvaluatedExperiment.fromDefaultVariationKey(i.defaultVariationKey);return r&&!o.isSimulated&&null!==o.experimentId&&null!==o.variationId&&this.variationConfiguration.updateStoredVariations(e,{[o.experimentId]:{variationId:o.variationId,isTargetedRule:\"TARGETED_DELIVERY\"===o.ruleType,status:a?B.Unsent:B.Sent,assignedTime:Date.now()}}),this.eventManager.fireEvent(s.Evaluation,{featureKey:i.featureKey,variation:{key:o.variationKey,experimentId:o.experimentId,id:o.variationId}}),o}_isFFUnrestrictedByMEGroup(t,e,i){const a=e.mutuallyExclusiveGroup;if(!a)return!0;let r=!0;const s=this.clientConfiguration.meGroups.get(a);if(s){const n=this._getCodeForHash(t,e.bucketingCustomDataIndex,i),o=we.getHashDoubleForMEGroup(n,a);r=s.getFeatureFlagByHash(o)===e}return r}_getFeatureVariation({visitorCode:t,featureKey:e,track:i}){var a,r;if(!this.initialized)return u.Err(new C(m.Initialization));const s=this.clientConfiguration.featureFlags.get(e);if(!s)return u.Err(new C(m.FeatureFlagConfigurationNotFound,e));const n=this._getForcedFeatureVariation(t,e);if(!s.environmentEnabled&&!(null==n?void 0:n.simulated))return u.Err(new C(m.FeatureFlagEnvironmentDisabled,s.featureKey,this.environment));const o=this._evaluate({visitorCode:t,featureFlag:s,track:i,save:!0,forcedVariation:n}),{experimentId:d,variationId:l,variationKey:c,isSimulated:h}=o;let g=new Map;try{this._getFeatureVariables({visitorCode:t,featureKey:e,variationKey:c}).forEach(t=>{const e=pt.parseFeatureVariable(t).throw();g.set(t.key,e)})}catch(t){}i&&!h&&this.flush(t);const p={name:null!==(r=null===(a=s.variations.find(t=>t.key===c))||void 0===a?void 0:a.name)&&void 0!==r?r:\"\",key:c,id:l,experimentId:d,variables:g};return u.Ok(p)}_isVisitorNotInHoldout(t,e,i,a,r){const s=this.clientConfiguration.holdout;if(!s)return!0;let n=!0;if((this.clientConfiguration.isConsentRequired?this.getLegalConsent(t):le.Given)==le.NotGiven&&\"FULLY_BLOCK\"==this.clientConfiguration.consentBlockingBehaviour)throw new C(m.FeatureFlagEnvironmentDisabled,`Evaluation of holdout is blocked because consent is not provided for visitor '${t}'`);const o=this._getCodeForHash(t,null==a?void 0:a.bucketingCustomDataIndex,r),u=we.getHashDouble({visitorIdentifier:o,respoolTime:null,id:String(s.experimentId)});let d=tt.getVariationByHash(s.variationByExposition,u);return null!==d&&(n=\"in-holdout\"!==d.variationKey,i&&this.variationConfiguration.updateStoredVariations(t,{[s.experimentId]:{variationId:d.variationId,isTargetedRule:!1,status:e?B.Unsent:B.Sent,assignedTime:Date.now()}})),n}_setForcedVariation({visitorCode:t,experimentId:e,variationKey:i,forceTargeting:a=!0}){if(null===i)return this.variationConfiguration.updateForcedExperimentVariation(t,e,null);let r=null,s=null;return r=this.clientConfiguration.experimentMap.get(e),r?(s=r.variations.get(i),void 0===s?(v.error`Variation with key ${i} not found in experiment ${r} for visitor ${t}`,u.Err(new C(m.FeatureFlagVariationNotFound,i,t))):(r={type:r.type,experimentId:e},s={variationKey:i,variationId:s},this.variationConfiguration.updateForcedExperimentVariation(t,e,{rule:r,varByExp:s,forceTargeting:a}))):(v.error`Experiment with id ${e} not found for visitor ${t}`,u.Err(new C(m.FeatureFlagExperimentNotFound,e,t)))}_getForcedFeatureVariation(t,e){const i=this.variationConfiguration.getForcedFeatureVariation(t,e);return i.ok?i.data:null}_getCodeForHash(t,e,i){var a;let r;if(null!=e){const t=null==i?void 0:i.customData;if(t){const i=null===(a=t[e])||void 0===a?void 0:a.value[0];i&&(r=i)}}return r||(r=this.dataManager.getVisitorIdentifier(t)),r}_refreshDataFileIfStale(){return d(this,0,void 0,function*(){const t=yield this.clientConfiguration.refreshDataFileIfStale();return t.ok&&t.data})}};Oe.EvaluatedExperiment=class{static fromForcedFeatureVariation(t,e){var i,a,r,s;let n=t;return e.varByExp?n=e.varByExp.variationKey:\"EXPERIMENTATION\"===(null===(i=e.rule)||void 0===i?void 0:i.type)&&(n=yt),{variationKey:n,variationId:(null===(a=e.varByExp)||void 0===a?void 0:a.variationId)||null,experimentId:(null===(r=e.rule)||void 0===r?void 0:r.experimentId)||null,ruleType:(null===(s=e.rule)||void 0===s?void 0:s.type)||null,isSimulated:e.simulated}}static fromVariationData(t){var e,i;return{variationKey:t.variationKey,variationId:t.variationId,experimentId:t.experimentId,ruleType:null!==(i=null===(e=t.rule)||void 0===e?void 0:e.type)&&void 0!==i?i:null,isSimulated:!1}}static fromDefaultVariationKey(t){return{variationKey:t,variationId:null,experimentId:null,ruleType:null,isSimulated:!1}}};class xe{static simulateSuccessRequest(t,e){switch(t){case _.Tracking:return new Promise(t=>{t({status:204,json:()=>new Promise(t=>t(null)),text:()=>new Promise(t=>t(\"\")),ok:!0})});case _.Configuration:case _.RemoteData:return new Promise(t=>{t({status:200,json:()=>new Promise(t=>t(e)),text:()=>new Promise(t=>t(\"\")),ok:!0})});default:D(t)}}static getCookieValue(t,e){const i=t.split(\"; \").find(t=>{const[i,a]=t.split(\"=\");return i===e&&\"\"!==a});return i?i.split(\"=\")[1]:null}}var Fe,Re=u.Err,Me=u.Ok;function Ae(t,e,i,a){return new(i||(i=Promise))(function(r,s){function n(t){try{u(a.next(t))}catch(t){s(t)}}function o(t){try{u(a.throw(t))}catch(t){s(t)}}function u(t){var e;t.done?r(t.value):(e=t.value,e instanceof i?e:new i(function(t){t(e)})).then(n,o)}u((a=a.apply(t,e||[])).next())})}\"function\"==typeof SuppressedError&&SuppressedError;class Ne{sendRequest({url:t,parameters:e}){return Ae(this,void 0,void 0,function*(){return yield fetch(t,e)})}}!function(t){t.PairsDelimiter=\"; \",t.KeyValueDelimiter=\"=\",t.MaxAge=\"Max-Age\",t.Path=\"Path\",t.Domain=\"Domain\"}(Fe||(Fe={}));class _e{getData(t){const e=document.cookie;let i=null;return e&&(i=xe.getCookieValue(e,t)),i}setData({visitorCode:t,domain:e,maxAge:i,key:a,path:r}){const s=this.getResultCookie({domain:e,visitorCode:t,key:a,maxAge:i,path:r});document.cookie=s}getResultCookie({domain:t,visitorCode:e,maxAge:i,key:a,path:r}){const s=[a+Fe.KeyValueDelimiter+e,Fe.MaxAge+Fe.KeyValueDelimiter+i,Fe.Path+Fe.KeyValueDelimiter+r];return t&&s.push(Fe.Domain+Fe.KeyValueDelimiter+t),s.join(Fe.PairsDelimiter)}}class Pe{read(t){const e=localStorage.getItem(t);return t!==se.ConsentData||e&&\"{}\"!==e?e?JSON.parse(e):null:this.getEngineConsentData()}write(t,e){localStorage.setItem(t,JSON.stringify(e))}getEngineConsentData(){var t;this.visitorCodeManager||(this.visitorCodeManager=new _e);const e=this.visitorCodeManager.getData(se.VisitorCode);if(!e)return null;try{const i=localStorage.getItem(\"kameleoonLegalConsent\");if(!i)return null;const a=JSON.parse(i),r=null===(t=null==a?void 0:a.value)||void 0===t?void 0:t.AB_TESTING;return\"boolean\"==typeof r?{[e]:{consent:r?le.Given:le.NotGiven}}:null}catch(t){return null}}}class Ue{open({eventType:t,onEvent:e,url:i}){const a=new EventSource(i);this.eventSource=a,this.eventSource.addEventListener(t,e)}close(){this.eventSource&&this.eventSource.close()}onError(t){this.eventSource&&(this.eventSource.onerror=t)}}class Le{getRandomNumber(){if(\"undefined\"!=typeof window&&(null===window||void 0===window?void 0:window.crypto)){const t=new Uint32Array(1),e=4294967296;return window.crypto.getRandomValues(t),t[0]/e}return Math.random()}}class Be{log(t,e){switch(e=`${(new Date).toLocaleString(\"en-US\",{timeZoneName:\"short\"})} ${e}`,t){case h.DEBUG:console.debug(e);break;case h.INFO:console.info(e);break;case h.WARNING:console.warn(e);break;case h.ERROR:console.error(e)}}}class Ke{constructor(t,e,i,a){this.dataManager=t,this.tracker=e,this.isConsentProvided=i,this.setup(a)}setup(t){setInterval(()=>{this.updateLastActivity()},t),this.updateLastActivity()}updateLastActivity(){const t=this.dataManager.updateLastActivity();t&&this.tracker.scheduleVisitor(t,this.isConsentProvided(t))}}class ze extends he{constructor({dataStorage:t,infoStorage:e,cleanupInterval:i,packageInfo:a,platformAnalyzer:r}){super({dataStorage:t,infoStorage:e,cleanupInterval:i,packageInfo:a}),this.visitor=null,this.platformAnalyzer=r,this.updateVisitor()}getUnsentData(t){var e,i;const a=super.getUnsentData(t),r=super.getVisitorData(t);if(!r)return a;const s=r[K.Browser],n=r[K.Device],o=r[K.OperatingSystem],u=new Tt({browserType:null==s?void 0:s.browser,browserVersion:null==s?void 0:s.version,visitNumber:null===(e=this.visitor)||void 0===e?void 0:e.visitNumber,timeSincePreviousVisit:null===(i=this.visitor)||void 0===i?void 0:i.timeSincePreviousVisit,os:null==o?void 0:o.operatingSystem,deviceType:null==n?void 0:n.device});return a.push(u),a}storeData(t){const{visitorCode:e,data:i}=t;return i.length&&this.checkVisitor(e),super.storeData(t)}storeDataForVisitors(t){return super.storeDataForVisitors(t,!0)}getVisitorData(t){return this.checkVisitor(t),super.getVisitorData(t)}updateLastActivity(){var t,e,i,a;if(!this.visitor)return null;const r=this.dataStorage.read();if(!r.ok)return null;const s=r.data;let n=null!==(t=s[this.visitor.visitorCode])&&void 0!==t?t:{};\"string\"==typeof n&&(n=s[n]);let o=n[K.VisitsData];o||(o={visits:[],visitNumber:0,type:K.VisitsData,status:B.Sent,expirationTime:0},n[K.VisitsData]=o);const u=this.fetchVisit(o.visits,o.visits.length-1),d=null!==(e=null==u?void 0:u.timeLastActivity)&&void 0!==e?e:0,l=Date.now();let c=null!==(i=o.visitNumber)&&void 0!==i?i:o.visits.length?o.visits.length-1:0;if(l-d>18e5)c+=d>0?1:0,et.insertVisitInOrderedListMutably({list:o.visits,visit:{timeStarted:l,timeLastActivity:l}}),this.visitor.timeSincePreviousVisit=u?l-d:0;else if(o.visits.length&&(o.visits[o.visits.length-1]={timeStarted:null!==(a=null==u?void 0:u.timeStarted)&&void 0!==a?a:l,timeLastActivity:l},-1===this.visitor.timeSincePreviousVisit)){const t=this.fetchVisit(o.visits,o.visits.length-2);this.visitor.timeSincePreviousVisit=t?l-t.timeLastActivity:0}return o.visitNumber=c,this.visitor.visitNumber=c,this.dataStorage.write(s),this.visitor.visitorCode}checkVisitor(t){this.visitor&&this.visitor.visitorCode===t||this.createVisitor(t)}createVisitor(t){var e,i,a;this.visitor=new je(t);try{const r=this.platformAnalyzer.getResult(),s=[];(null===(e=r.os)||void 0===e?void 0:e.name)&&s.push(new ot(r.os.name)),(null===(i=r.platform)||void 0===i?void 0:i.type)&&s.push(new nt(r.platform.type)),(null===(a=r.browser)||void 0===a?void 0:a.name)&&s.push(new st(r.browser.name,r.browser.version)),r.pageView&&s.push(r.pageView),s.length&&this.storeData({visitorCode:t,data:s})}finally{this.updateLastActivity()}}updateVisitor(){var t;const e=this.dataStorage.read();if(!e.ok)return;const i=e.data;let a,r=-1;for(const[e,s]of Object.entries(i)){if(\"string\"==typeof s)continue;const i=s[K.VisitsData];if(!i){a||(a=e);continue}const n=i.visits.length?i.visits[i.visits.length-1]:null;if(n){const i=null!==(t=\"number\"==typeof n?n:null==n?void 0:n.timeLastActivity)&&void 0!==t?t:0;i>r&&(r=i,a=e)}else a||(a=e)}a?this.createVisitor(a):this.visitor=null}fetchVisit(t,e){if(e<0||e>=t.length)return null;const i=t[e];return\"number\"==typeof i?{timeStarted:i,timeLastActivity:i}:i}}class je{constructor(t){this.visitNumber=0,this.timeSincePreviousVisit=-1,this.visitorCode=t}}class Ge{static getFirstMatch(t,e){const i=e.match(t);return i&&i.length>0&&i[1]||\"\"}static getSecondMatch(t,e){const i=e.match(t);return i&&i.length>1&&i[2]||\"\"}static assign(t,...e){return Object.assign(t,...e)}}class $e{constructor(){this.userAgent=navigator.userAgent||\"\",this.parsedResult={},\"\"!==this.userAgent&&this.parse()}parseBrowser(){const t=[{test:[/chrome|crios|crmo/i],describe:t=>({name:G.Chrome,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:chrome|crios|crmo)\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/firefox|iceweasel|fxios/i],describe:t=>({name:G.Firefox,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:firefox|iceweasel|fxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/safari|applewebkit/i],describe:t=>({name:G.Safari,version:this.getBrowserVersion(Ge.getFirstMatch(/version\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/opr\\/|opios/i],describe:t=>({name:G.Opera,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:opr|opios)[\\s/](\\S+)/i,t))})},{test:[/edg([ea]|ios)/i],describe:t=>({name:G.InternetExplorer,version:this.getBrowserVersion(Ge.getSecondMatch(/edg([ea]|ios)\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/googlebot/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/googlebot\\/(\\d+(\\.\\d+))/i,t)||Ge.getFirstMatch(/version\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/SamsungBrowser/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:SamsungBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/yabrowser/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:yabrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/ucbrowser/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:ucbrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/vivaldi/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/vivaldi\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/phantom/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/phantomjs\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/electron/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:electron)\\/(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/chromium/i],describe:t=>({name:G.Other,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:chromium)[\\s/](\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/opera/i],describe:t=>({name:G.Opera,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:opera)[\\s/](\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/msie|trident/i],describe:t=>({name:G.InternetExplorer,version:this.getBrowserVersion(Ge.getFirstMatch(/(?:msie |rv:)(\\d+(\\.?_?\\d+)+)/i,t))})},{test:[/.*/i],describe:t=>{const e=t.includes(\"(\")?/^(.*)\\/(.*)[ \\t]\\((.*)/:/^(.*)\\/(.*) /;return{name:G.Other,version:this.getBrowserVersion(Ge.getSecondMatch(e,t))}}}].find(t=>t.test.some(t=>t.test(this.userAgent)));return t&&(this.parsedResult.browser=t.describe(this.userAgent)),this.parsedResult.browser||{}}parseOS(){const t=[{test:[/windows phone/i],describe:()=>({name:j.WindowsPhone})},{test:[/windows /i],describe:()=>({name:j.Windows})},{test:[/Macintosh(.*?) FxiOS(.*?) Version\\//],describe:t=>({name:j.IOS,version:Ge.getSecondMatch(/(Version\\/)(\\d[\\d.]+)/,t)})},{test:[/macintosh/i],describe:t=>({name:j.Mac,version:Ge.getFirstMatch(/mac os x (\\d+(\\.?_?\\d+)+)/i,t).replace(/[_\\s]/g,\".\")})},{test:[/(ipod|iphone|ipad)/i],describe:t=>({name:j.IOS,version:Ge.getFirstMatch(/os (\\d+([_\\s]\\d+)*) like mac os x/i,t).replace(/[_\\s]/g,\".\")})},{test:[/android/i],describe:()=>({name:j.Android})},{test:[/linux/i],describe:()=>({name:j.Linux})}].find(t=>t.test.some(t=>t.test(this.userAgent)));return t&&(this.parsedResult.os=t.describe(this.userAgent)),this.parsedResult.os||{}}parsePlatform(){const t=[{test:()=>{var t,e;return(null===(t=this.parsedResult.os)||void 0===t?void 0:t.name)===j.Android&&Number(String(null===(e=this.parsedResult.os)||void 0===e?void 0:e.version).split(\".\")[0])>=3},describe:t=>({type:z.Tablet})},{test:()=>{var t;return(null===(t=this.parsedResult.os)||void 0===t?void 0:t.name)===j.Android},describe:()=>({type:z.Phone})},{test:()=>{var t;return(null===(t=this.parsedResult.os)||void 0===t?void 0:t.name)===j.Mac},describe:()=>({type:z.Desktop})},{test:()=>{var t;return(null===(t=this.parsedResult.os)||void 0===t?void 0:t.name)===j.Windows},describe:()=>({type:z.Desktop})},{test:()=>{var t;return(null===(t=this.parsedResult.os)||void 0===t?void 0:t.name)===j.Linux},describe:()=>({type:z.Desktop})}],e=[{test:[/huserAgentwei/i],describe:t=>({type:z.Phone})},{test:[/nexus\\s*(?:7|8|9|10).*/i],describe:()=>({type:z.Tablet})},{test:[/ipad/i],describe:()=>({type:z.Tablet})},{test:[/Macintosh(.*?) FxiOS(.*?) Version\\//],describe:()=>({type:z.Tablet})},{test:[/kftt build/i],describe:()=>({type:z.Tablet})},{test:[/silk/i],describe:()=>({type:z.Tablet})},{test:[/tablet(?! pc)/i],describe:()=>({type:z.Tablet})},{test:[/ipod|iphone/i],describe:()=>({type:z.Phone})},{test:[/nexus\\s*[0-6].*/i,/galaxy nexus/i],describe:()=>({type:z.Phone})},{test:[/[^-]mobi/i],describe:()=>({type:z.Phone})},{test:[/blackberry/i],describe:()=>({type:z.Phone})},{test:[/bada/i],describe:()=>({type:z.Phone})},{test:[/windows phone/i],describe:()=>({type:z.Phone})},{test:[/android/i],describe:()=>({type:z.Phone})},{test:[/ios/i],describe:()=>({type:z.Desktop})},{test:[/windows/i],describe:()=>({type:z.Desktop})},{test:[/linux/i],describe:()=>({type:z.Desktop})}].find(t=>t.test.some(t=>t.test(this.userAgent)))||t.find(t=>t.test());return e&&(this.parsedResult.platform=e.describe(this.userAgent)),this.parsedResult.platform||{}}parse(){this.userAgent&&(this.parseBrowser(),this.parseOS(),this.parsePlatform())}getBrowserVersion(t){if(!t)return;const e=t.split(\".\");if(0===e.length)return;const i=e.length>1?`${e[0]}.${e[1]}`:e[0],a=parseFloat(i);return isNaN(a)?void 0:a}parseWebView(){var t;let e=null===(t=window.location)||void 0===t?void 0:t.href;if(e){const t=document?document.title:\"\";this.parsedResult.pageView=new it({urlAddress:e,title:t})}}getResult(){return this.parseWebView(),Ge.assign({},this.parsedResult)}}class qe extends Oe{constructor({siteCode:t,configuration:e,externals:i,_internals:a,stubMode:r}){var s;if(r)return super({siteCode:t,internalConfiguration:{},stubMode:r}),this.internalVisitorCodeManager={},this.externalVisitorCodeManager={},void(this.hybridQueueProcessed=!0);const n=(null==a?void 0:a.prng)||new Le,o=(null==i?void 0:i.storage)||new Pe,u=(null==i?void 0:i.requester)||new Ne,d=(null==i?void 0:i.eventSource)||new Ue,l=new pe,c=(null==i?void 0:i.visitorCodeManager)||new _e,h=(null==a?void 0:a.packageInfo)||{type:Ct.JAVASCRIPT,version:\"4.24.1\",isServer:!1},g=new ue(o,se.TargetingData),p=new ue(o,se.DataInfo),v=new ze({dataStorage:g,infoStorage:p,cleanupInterval:0,packageInfo:h,platformAnalyzer:null!==(s=null==a?void 0:a.platformAnalyzer)&&void 0!==s?s:new $e});super({siteCode:t,configuration:e,internalConfiguration:{externals:{externalPRNG:n,externalStorage:o,externalRequester:u,externalEventSource:d,externalVisitorCodeManager:l,externalPackageInfo:h,externalLogger:(null==i?void 0:i.logger)||new Be,customDataManager:v},settings:{useAbortController:!0}}});const f=Z.validateDomain(null==e?void 0:e.cookieDomain);this.domain=f.ok?f.data:void 0,this.internalVisitorCodeManager=l,this.externalVisitorCodeManager=c,this.customDataManager=v,this.hybridQueueProcessed=!1}initialize(){const t=Object.create(null,{initialize:{get:()=>super.initialize}});return Ae(this,void 0,void 0,function*(){if(this.stubMode)return!1;const e=t.initialize.call(this);return new Ke(this.customDataManager,this.tracker,t=>this._isConsentProvided(t),15e3),e})}getVisitorCode(t){var e;if(this.stubMode)return\"\";this.internalVisitorCodeManager.getData=t=>this.externalVisitorCodeManager.getData(t),this.internalVisitorCodeManager.setData=t=>{this.externalVisitorCodeManager.setData(Object.assign(Object.assign({},t),{domain:this.domain}))};const i=this.internalVisitorCodeManager.getVisitorCode(t);return this._handleKameleoonQueue(i),this.initialized&&(null===(e=this.customDataManager)||void 0===e||e.checkVisitor(i)),i}_handleKameleoonQueue(t){if(this.hybridQueueProcessed)return;const e=this._getKameleoonQueue();e&&(this.hybridQueueProcessed=!0,super._processKameleoonQueue(t,e))}_getKameleoonQueue(){if(\"undefined\"==typeof window)return null;const t=window.kameleoonQueue;return Array.isArray(t)?t:null}setLegalConsent(t,e){this.stubMode||(super.setUserConsent({visitorCode:t,consent:e,setData:t=>{this.externalVisitorCodeManager.setData(Object.assign(Object.assign({},t),{domain:this.domain}))}}),super.flush(t))}}export{bt as ApplicationVersion,st as Browser,G as BrowserType,rt as Conversion,It as Cookie,at as CustomData,ue as DataStorage,nt as Device,z as DeviceType,U as Environment,Re as Err,s as EventType,ut as GeolocationData,qe as KameleoonClient,Oe as KameleoonCore,K as KameleoonData,C as KameleoonError,m as KameleoonException,v as KameleoonLogger,se as KameleoonStorageKey,xe as KameleoonUtils,h as LogLevel,Me as Ok,ot as OperatingSystem,j as OperatingSystemType,it as PageView,pt as Parser,_ as RequestType,Ct as SdkLanguageType,Tt as StaticData,B as TrackingStatus,Vt as UniqueIdentifier,wt as UserAgent,L as VariableType,pe as VisitorCodeManager};\n//# sourceMappingURL=javascript-sdk.es.min.js.map\n","'use client';\nimport React from 'react';\nimport { KameleoonContextType } from './types';\n\nexport const KameleoonContext =\n React.createContext<KameleoonContextType | null>(null);\n","'use client';\nimport React from 'react';\nimport { KameleoonClient } from '@kameleoon/javascript-sdk';\nimport { KameleoonContext } from './KameleoonContext';\n\nexport interface IKameleoonProviderProps {\n /** Child elements of the provider. */\n children: React.ReactNode;\n /** An instance of Kameleoon SDK. */\n client: KameleoonClient;\n}\n\n/**\n * A Provider that wraps the project and provides an access to SDK APIs\n */\nfunction KameleoonProvider({\n client,\n children,\n}: IKameleoonProviderProps): React.JSX.Element {\n return (\n <KameleoonContext.Provider\n value={{\n kameleoonClient: client,\n sdkParameters: null,\n }}\n >\n {children}\n </KameleoonContext.Provider>\n );\n}\n\nexport default React.memo(KameleoonProvider);\n","'use client';\nimport React from 'react';\nimport { KameleoonContext } from './KameleoonContext';\nimport { SDKParameters } from './types';\n\nexport interface IKameleoonProviderSSRProps {\n /** Child elements of the provider. */\n children: React.ReactNode;\n /** SDK parameters for creating a new instance. */\n sdkParameters: SDKParameters;\n}\n\n/**\n * A Provider that wraps the project and provides an access to SDK APIs in SSR mode.\n */\nfunction KameleoonProviderSSR({\n sdkParameters,\n children,\n}: IKameleoonProviderSSRProps): React.JSX.Element {\n return (\n <KameleoonContext.Provider\n value={{\n kameleoonClient: null,\n sdkParameters: sdkParameters,\n }}\n >\n {children}\n </KameleoonContext.Provider>\n );\n}\n\nexport default React.memo(KameleoonProviderSSR);\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","import { KameleoonClient, SdkLanguageType } from '@kameleoon/javascript-sdk';\nimport { SDKParameters } from './types';\n\n/**\n * Creates an instance of KameleoonClient\n * @param parameters {SDKParameters} - parameters of an SDK\n */\nexport function createClient({\n siteCode,\n configuration,\n externals,\n stubMode,\n}: SDKParameters): KameleoonClient {\n const client = new KameleoonClient({\n siteCode,\n configuration,\n externals,\n _internals: {\n packageInfo: {\n type: SdkLanguageType.REACT,\n version: process.env.npm_package_version as string,\n isServer: false,\n },\n prng: externals?.prng,\n platformAnalyzer: externals?.platformAnalyzer,\n },\n stubMode,\n });\n\n return client;\n}\n","'use client';\nimport { useContext } from 'react';\nimport { KameleoonClient } from '@kameleoon/javascript-sdk';\nimport { KameleoonContext } from './KameleoonContext';\nimport { createClient } from './createClient';\nimport { KameleoonContextType } from './types';\n\n/**\n * A React Hook that validates if context is used within a KameleoonProvider and returns it.\n *\n * @returns {KameleoonContextType} an instance of KameleoonContextType\n * @throws Kameleoon SDK hooks must be used within a KameleoonProvider.\n */\nexport function useKameleoonContext(): KameleoonContextType {\n const context = useContext(KameleoonContext);\n\n if (!context) {\n throw new Error(\n 'Kameleoon SDK hooks must be used within a KameleoonProvider',\n );\n }\n\n return context;\n}\n\nexport function fetchClientFromContext(\n context: KameleoonContextType | null,\n): KameleoonClient {\n if (!context) {\n throw new Error(\n 'Kameleoon SDK hooks must be used within a KameleoonProvider',\n );\n }\n\n if (!context.kameleoonClient) {\n const sdkParams = context.sdkParameters;\n\n if (sdkParams) {\n sdkParams.stubMode = false;\n context.kameleoonClient = createClient(sdkParams);\n return context.kameleoonClient;\n }\n\n throw new Error(\n 'Kameleoon SDK hooks must be used within a KameleoonProvider',\n );\n }\n\n return context.kameleoonClient;\n}\n","'use client';\nimport { useCallback } from 'react';\nimport {\n CustomData,\n GetVisitorWarehouseAudienceParamsType,\n JSONType,\n KameleoonDataType,\n RemoteVisitorDataParamsType,\n TrackConversionParamsType,\n FlushParamsType,\n AddDataParamsType,\n} from '@kameleoon/javascript-sdk';\nimport {\n fetchClientFromContext,\n useKameleoonContext,\n} from './useKameleoonContext';\nimport IUseData from './interfaces/useData';\n\n/**\n * A React Hook that returns methods related to SDK data management\n *\n * @returns {IUseData} an object containing the following methods:\n * - `addData`\n * - `flush`\n * - `trackConversion`\n * - `getRemoteData`\n * - `getRemoteVisitorData`\n * - `getVisitorWarehouseAudience`\n */\nexport function useData(): IUseData {\n const context = useKameleoonContext();\n let client = context ? context.kameleoonClient : null;\n\n const addData = useCallback(\n ((arg1: string | AddDataParamsType, ...rest: KameleoonDataType[]): void => {\n const client = fetchClientFromContext(context!);\n\n if (typeof arg1 === 'string') {\n client.addData(arg1, ...rest);\n return;\n }\n\n client.addData(arg1);\n }) as ((visitorCode: string, ...data: KameleoonDataType[]) => void) &\n ((params: AddDataParamsType) => void),\n [context],\n );\n\n const flush = useCallback(\n (params?: string | FlushParamsType): void => {\n client = fetchClientFromContext(context!);\n client.flush(params);\n },\n [context],\n );\n\n const flushInstant = useCallback(\n async (visitorCode?: string): Promise<void> => {\n client = fetchClientFromContext(context!);\n return client.flushInstant(visitorCode);\n },\n [context],\n );\n\n const trackConversion = useCallback(\n ({\n visitorCode,\n goalId,\n revenue,\n negative,\n metadata,\n }: TrackConversionParamsType): void => {\n client = fetchClientFromContext(context!);\n client.trackConversion({\n visitorCode,\n goalId,\n revenue,\n negative,\n metadata,\n });\n },\n [context],\n );\n\n const getRemoteData = useCallback(\n async (key: string): Promise<JSONType> => {\n client = fetchClientFromContext(context!);\n return await client.getRemoteData(key);\n },\n [context],\n );\n\n const getRemoteVisitorData = useCallback(\n async (\n params: RemoteVisitorDataParamsType,\n ): Promise<KameleoonDataType[]> => {\n client = fetchClientFromContext(context!);\n return await client.getRemoteVisitorData(params);\n },\n [context],\n );\n\n const getVisitorWarehouseAudience = useCallback(\n async (\n params: GetVisitorWarehouseAudienceParamsType,\n ): Promise<CustomData | null> => {\n client = fetchClientFromContext(context!);\n return await client.getVisitorWarehouseAudience(params);\n },\n [context],\n );\n\n return {\n getRemoteData,\n getRemoteVisitorData,\n getVisitorWarehouseAudience,\n trackConversion,\n addData,\n flush,\n flushInstant,\n };\n}\n","'use client';\nimport { useCallback } from 'react';\nimport IUseFeatureFlag from './interfaces/useFeatureFlag';\nimport {\n FeatureFlagType,\n FeatureFlagVariableType,\n FeatureVariableResultType,\n KameleoonVariationType,\n GetFeatureFlagVariableParamsType,\n VariationType,\n GetVariationParamsType,\n GetVariationsParamsType,\n IsFeatureFlagActiveParamsType,\n SetForcedVariationParametersType,\n DataFile,\n} from '@kameleoon/javascript-sdk';\nimport {\n fetchClientFromContext,\n useKameleoonContext,\n} from './useKameleoonContext';\n\n/**\n * A React Hook that returns methods related to SDK feature flag\n * and feature experimentation management\n *\n * @returns {IUseFeatureFlag} an object containing the following methods:\n * - `isFeatureFlagActive`,\n * - `getDataFile`\n * - `getVariation`\n * - `getVariations`\n * - `getFeatureFlagVariationKey`,\n * - `getFeatureFlagVariable`,\n * - `getVisitorFeatureFlags`,\n * - `getActiveFeatureFlags`,\n * - `getFeatureFlags`,\n * - `getFeatureFlagVariables`,\n * - `getEngineTrackingCode`,\n * - `setForcedVariation`,\n * - `evaluateAudiences`\n */\nexport function useFeatureFlag(): IUseFeatureFlag {\n const context = useKameleoonContext();\n let client = context ? context.kameleoonClient : null;\n\n const isFeatureFlagActive = useCallback(\n (\n firstParam: string | IsFeatureFlagActiveParamsType,\n secondParam?: string,\n ): boolean => {\n client = fetchClientFromContext(context!);\n if (typeof firstParam === 'string') {\n if (!secondParam) {\n throw new Error(\n '[Kameleoon React SDK Error]: Overload is not used correctly. The second parameter must be provided when the first parameter is a string',\n );\n }\n\n return client.isFeatureFlagActive(firstParam, secondParam);\n }\n\n return client.isFeatureFlagActive(firstParam);\n },\n [context],\n );\n\n const getDataFile = useCallback((): DataFile => {\n client = fetchClientFromContext(context!);\n return client.getDataFile();\n }, [context]);\n\n const getVariation = useCallback(\n ({\n visitorCode,\n featureKey,\n track,\n }: GetVariationParamsType): VariationType => {\n client = fetchClientFromContext(context!);\n return client.getVariation({ visitorCode, featureKey, track });\n },\n [context],\n );\n\n const getVariations = useCallback(\n ({\n visitorCode,\n onlyActive,\n track,\n }: GetVariationsParamsType): Map<string, VariationType> => {\n client = fetchClientFromContext(context!);\n return client.getVariations({ visitorCode, onlyActive, track });\n },\n [context],\n );\n\n const getFeatureFlagVariationKey = useCallback(\n (visitorCode: string, featureKey: string): string => {\n client = fetchClientFromContext(context!);\n return client.getFeatureFlagVariationKey(visitorCode, featureKey);\n },\n [context],\n );\n\n const getFeatureFlagVariable = useCallback(\n ({\n visitorCode,\n featureKey,\n variableKey,\n }: GetFeatureFlagVariableParamsType): FeatureFlagVariableType => {\n client = fetchClientFromContext(context!);\n return client.getFeatureFlagVariable({\n visitorCode,\n featureKey,\n variableKey,\n });\n },\n [context],\n );\n\n const getVisitorFeatureFlags = useCallback(\n (visitorCode: string): FeatureFlagType[] => {\n client = fetchClientFromContext(context!);\n return client.getVisitorFeatureFlags(visitorCode);\n },\n [context],\n );\n\n const getActiveFeatureFlags = useCallback(\n (visitorCode: string): Map<string, KameleoonVariationType> => {\n client = fetchClientFromContext(context!);\n return client.getActiveFeatureFlags(visitorCode);\n },\n [context],\n );\n\n const getFeatureFlags = useCallback((): FeatureFlagType[] => {\n client = fetchClientFromContext(context!);\n return client.getFeatureFlags();\n }, [context]);\n\n const getFeatureFlagVariables = useCallback(\n (visitorCode, featureKey): FeatureVariableResultType[] => {\n client = fetchClientFromContext(context!);\n return client.getFeatureFlagVariables(visitorCode, featureKey);\n },\n [context],\n );\n\n const getEngineTrackingCode = useCallback(\n (visitorCode: string): string => {\n client = fetchClientFromContext(context!);\n return client.getEngineTrackingCode(visitorCode);\n },\n [context],\n );\n\n const setForcedVariation = useCallback(\n ({\n visitorCode,\n experimentId,\n variationKey,\n forceTargeting,\n }: SetForcedVariationParametersType): void => {\n client = fetchClientFromContext(context!);\n return client.setForcedVariation({\n visitorCode,\n experimentId,\n variationKey,\n forceTargeting,\n });\n },\n [context],\n );\n\n const evaluateAudiences = useCallback(\n (visitorCode: string): void => {\n client = fetchClientFromContext(context!);\n return client.evaluateAudiences(visitorCode);\n },\n [context],\n );\n\n return {\n getActiveFeatureFlags,\n getDataFile,\n getVariation,\n getVariations,\n getFeatureFlags,\n isFeatureFlagActive,\n getEngineTrackingCode,\n getVisitorFeatureFlags,\n getFeatureFlagVariable,\n getFeatureFlagVariables,\n getFeatureFlagVariationKey,\n setForcedVariation,\n evaluateAudiences,\n };\n}\n","'use client';\nimport { useCallback } from 'react';\nimport IUseInitialize from './interfaces/useInitialize';\nimport { EventCallbackType, EventType } from '@kameleoon/javascript-sdk';\nimport { fetchClientFromContext, useKameleoonContext} from './useKameleoonContext';\n\n/**\n * A React Hook that returns methods related to SDK setup and configuration\n *\n * @returns {IUseInitialize} an object containing the following methods:\n * - `initialize`\n * - `isInitialized`\n * - `onEvent`\n */\nexport function useInitialize(): IUseInitialize {\n const context = useKameleoonContext()\n let client = context ? context.kameleoonClient : null;\n\n const initialize = useCallback(async (): Promise<boolean> => {\n client = fetchClientFromContext(context!);\n return await client.initialize();\n }, [context]);\n\n const onEvent = useCallback(\n <E extends EventType>(event: E, callback: EventCallbackType<E>): void => {\n client = fetchClientFromContext(context!);\n client.onEvent(event, callback);\n },\n [context],\n );\n\n const isInitialized = useCallback((): boolean => {\n client = fetchClientFromContext(context!);\n return client.isInitialized();\n }, [context]);\n\n return {\n onEvent,\n initialize,\n isInitialized,\n };\n}\n","'use client';\nimport { useContext } from 'react';\nimport { KameleoonClient } from '@kameleoon/javascript-sdk';\nimport { KameleoonContext } from './KameleoonContext';\nimport { fetchClientFromContext } from './useKameleoonContext';\n\n/**\n * A React Hook that validates if context is used within a KameleoonProvider and returns it.\n *\n * @returns {KameleoonClient} an instance of KameleoonClient\n * @throws Kameleoon SDK hooks must be used within a KameleoonProvider.\n */\nexport function useKameleoon(): KameleoonClient {\n const context = useContext(KameleoonContext);\n\n if (!context) {\n throw new Error(\n 'Kameleoon SDK hooks must be used within a KameleoonProvider',\n );\n }\n\n return fetchClientFromContext(context);\n}\n","'use client';\nimport { useCallback } from 'react';\nimport IUseLog from './interfaces/useLog';\nimport { LogLevel } from '@kameleoon/javascript-sdk';\nimport { fetchClientFromContext, useKameleoonContext} from './useKameleoonContext';\n\n/**\n * A React Hook that returns methods related to logging\n *\n * @returns {IUseLog} an object containing the following methods:\n * - `setLogLevel`\n */\nexport function useLog(): IUseLog {\n const context = useKameleoonContext()\n let client = context ? context.kameleoonClient : null;\n\n const setLogLevel = useCallback(\n (logLevel: LogLevel): void => {\n client = fetchClientFromContext(context!);\n client.setLogLevel(logLevel);\n },\n [context],\n );\n\n return {\n setLogLevel,\n };\n}\n","'use client';\nimport { useCallback } from 'react';\nimport IUseVisitorCode from './interfaces/useVisitorCode';\nimport { fetchClientFromContext, useKameleoonContext} from './useKameleoonContext';\n\n/**\n * A React Hook that returns methods related to visitor code and consent\n *\n * @returns {IUseVisitorCode} an object containing the following methods:\n * - `setLegalConsent`\n * - `getVisitorCode`\n */\nexport function useVisitorCode(): IUseVisitorCode {\n const context = useKameleoonContext()\n let client = context ? context.kameleoonClient : null;\n\n const setLegalConsent = useCallback(\n (visitorCode: string, consent: boolean): void => {\n client = fetchClientFromContext(context!);\n client.setLegalConsent(visitorCode, consent);\n client.flush(visitorCode);\n },\n [context],\n );\n\n const getVisitorCode = useCallback(\n (defaultVisitorCode?: string): string => {\n client = fetchClientFromContext(context!);\n return client.getVisitorCode(defaultVisitorCode);\n },\n [context],\n );\n\n return {\n setLegalConsent,\n getVisitorCode,\n };\n}\n"],"names":["t","this","ok","error","Error","message","data","e","i","r","a","Object","defineProperty","o","value","Err","Ok","throw","else","or","and","enumerable","get","n","d","Promise","s","next","done","then","apply","SuppressedError","l","addEventHandler","eventHandlers","Map","set","fireEvent","Evaluation","ConfigurationUpdate","c","customData","featureFlags","configuration","realTimeUpdate","consentType","dataApiDomain","consentOptOutBehavior","h","NONE","ERROR","WARNING","INFO","DEBUG","g","p","clientId","clientSecret","Array","from","entries","v","setLogger","logger","setLogLevel","logLevel","log","level","strings","keys","checkLevel","length","JSON","stringify","writeMessage","info","warning","debug","console","warn","f","constructor","_featureFlags","slice","sort","id","getFeatureFlagByHash","Math","floor","min","m","Credentials","EventSourceInitialization","FeatureFlagConfigurationNotFound","FeatureFlagVariableNotFound","FeatureFlagVariationNotFound","FeatureFlagExperimentNotFound","FeatureFlagEnvironmentDisabled","VisitAmount","VisitorCodeMaxLength","VisitorCodeEmpty","StorageInitialization","StorageWrite","StorageRead","StorageParse","StorageEmpty","ClientConfiguration","TargetingCondition","AmongValuesCheck","RangeCheck","Initialization","JSONParse","NumberParse","VersionParse","CookieParse","SemanticVersionParse","RemoteData","MaximumRetriesReached","y","D","C","super","name","errorType","type","k","I","w","V","b","T","S","E","O","x","F","R","M","A","N","dataApi","accessToken","events","clientConfiguration","_","Configuration","Tracking","P","urlProvider","packageInfo","externalRequester","requestTimeout","trackRetryDelay","useAbortController","timeout","getClientConfiguration","getClientConfigurationUrl","assign","version","sendRequest","url","requestType","retryCount","parameters","method","headers","json","logReceivedConfigurationResponse","status","getLastModifiedHeader","u","lastModified","text","parse","logRequestError","response","getRemoteData","getRemoteDataUrl","getVisitorData","visitorCode","filters","isMappingIdentifier","getVisitorDataUrl","track","getTrackingUrl","body","setTimeout","AbortController","abort","signal","clearTimeout","parseResponse","toLowerCase","U","L","B","K","z","j","G","Production","Staging","Development","$","ready","isCustomDomain","domains","initialize","domain","siteCode","environment","setDomains","split","replace","isInitialized","encodeURIComponent","getEventSourceUrl","getDataApiUrl","encodeURI","previousVisitAmount","currentVisit","conversions","geolocation","experiments","pageViews","device","browser","operatingSystem","kcs","personalization","cbs","getAccessTokenUrl","q","fromEntries","map","BOOLEAN","NUMBER","STRING","JS","CSS","Sent","Unsent","Pending","UniqueIdentifier","CustomData","PageView","GeolocationData","Browser","Conversion","Cookie","Device","OperatingSystem","UserAgent","ApplicationVersion","VisitsData","KameleoonConversionScore","Personalization","CBScores","TargetedSegment","Phone","Tablet","Desktop","WindowsPhone","Windows","Android","Linux","Mac","IOS","Chrome","InternetExplorer","Firefox","Safari","Opera","Other","H","W","J","X","Q","Y","Z","validateVersion","parseInt","push","some","isNaN","validateDomain","checkAndTrimProtocol","test","validateNetworkDomain","startsWith","substring","tt","getNonce","getRandomNumber","charAt","checkTargeting","segment","targetingData","experimentId","variationConfiguration","dataManager","conditionsData","firstLevel","getStoredVariations","getTree","hasTargetingType","trees","segments","ruleMap","evaluate","variationData","sdkInfo","convertTimeUnit","MINUTE","HOUR","DAY","WEEK","MONTH","isCustomData","compareSemVer","compareVersion","operator","getVariationByHash","exposition","et","insertInOrderedListMutably","list","element","order","includes","findIndex","splice","insertVisitInOrderedListMutably","visit","find","timeStarted","it","urlAddress","title","referrers","timestamps","time","Date","now","reduce","_nonce","nonce","_fromRaw","_updateFromVisit","pageEvents","href","referrersIndices","has","at","_status","isIdentifier","_index","_name","UNDEFINED_INDEX","overwrite","filter","Set","forEach","String","index","_isMappingIdentifier","customDataEvents","valuesCountMap","values","rt","goalId","revenue","negative","metadata","random","_metadata","assignedTime","_id","_fromInternal","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","propertyIsEnumerable","_encodeMetadata","parseMetadata","_listFromVisit","conversionEvents","st","_fromVisit","staticDataEvent","browserIndex","browserVersion","nt","deviceType","ot","os","osIndex","ut","country","region","city","postalCode","coordinates","geolocationEvents","dt","visits","_visitNumber","visitNumber","isSent","timestamp","updateVisitNumber","lt","ct","variationId","personalizationEvents","ht","Number","extractVarIds","ids","getValues","gt","visitsData","visitorData","storageVisitorData","experimentData","singleDataTypes","multipleDataTypes","visitorDataTypes","getVisitorStoredDataTypes","processVisit","processBrowser","processDevice","processOperatingSystem","processGeolocationData","processCustomData","processConversion","processPageView","processExperiments","processPersonalization","processMultipleDataTypes","size","storedCustomDataIndexes","processKcs","processVisitsData","timeLastActivity","timeLastEvent","processVisitNumber","processCbs","experimentEvents","isTargetedRule","processMappingIdentifier","mappingIdentifier","pt","parseFeatureVariable","key","Boolean","parseVisitorData","previousVisits","updateStoredVariations","parseRegExp","RegExp","parseSecret","repeat","max","vt","updateInterval","storage","requester","eventSource","externalVisitorCodeManager","eventManager","externalPackageInfo","defaultDataFile","updateConfigurationIntervalId","updateType","configurationData","featureFlagsData","isTargetedDeliveryRule","segmentsData","holdoutData","meGroupsData","mappedRules","mappedExperiments","usedDefaultDataFile","refreshDataFileIfStalePromise","blockingBehaviourMode","cachedDataFile","CACHE_REVALIDATE_PERIOD","lastUpdate","visitorCodeManager","readStorageData","checkShouldUpdate","updateClientConfiguration","isOpen","handlePollingUpdates","handleRealTimeUpdates","refreshDataFileIfStale","resolve","fetchClientConfiguration","finally","cleanupHandlers","close","clearInterval","open","onError","getTime","setInterval","bind","dataFile","dateModified","variations","variables","featureKey","rules","variationByExposition","variationKey","environmentEnabled","defaultVariationKey","toString","featureId","experimentMap","hasFeatureFlagVariableJsCss","hasJsCssVariables","holdout","meGroups","isConsentRequired","consentBlockingBehaviour","hasAnyTargetedDeliveryRule","read","requestTime","updateConfigurationData","isServer","updateClientConfigurationInBackground","applyNewConfigurationDataFromResponse","updateStorageData","clearTrees","clear","consentBlockingBehaviourFromStr","updateFeatureFlagSegments","updateFeatureFlagBucketingCustomDataId","customDataIndexes","makeMEGroups","updateConsentRequired","segmentId","bucketingCustomDataId","bucketingCustomDataIndex","mutuallyExclusiveGroup","write","consentRequired","ft","mt","getEnvironment","networkDomain","getNetworkDomain","getUpdateInterval","cleanupInterval","getCleanupInterval","getRequestTimeout","trackingInterval","getTrackingInterval","MIN_TRACKING_INTERVAL_MS","MAX_TRACKING_INTERVAL_MS","DEFAULT_TRACKING_INTERVAL_MS","targetingDataCleanupInterval","settings","yt","Dt","Ct","NODEJS","REACT","JAVASCRIPT","kt","It","cookie","fromString","trim","Vt","_value","Tt","browserType","timeSincePreviousVisit","St","setConditionFactoryInstance","conditionFactoryInstance","createCondition","Et","inverseResult","isOperator","nodeValue","isInclude","nodeError","leftChild","rightChild","left","right","inverse","Ot","targetingTypes","nestedConditions","topLevelOperators","flattenSegment","conditions","operators","add","targetingType","buildTree","tree","evaluateNode","isLeafNode","isNonLeafNode","shift","unshift","firstLevelOrOperators","orOperators","convertOperators","xt","Ft","campaignType","visitCount","visitScope","checkCondition","checkExperiment","checkPersonalization","Rt","Mt","versionMatchType","parseFloat","At","Nt","customDataIndex","valueMatchType","range","matchType","conditionValue","parseArray","isArray","parseRange","_t","getLatest","Pt","Ut","Lt","sdkLanguage","Bt","Kt","nameMatchType","keyMatchType","extractCookie","document","isOptionalCookie","compareCookieValue","zt","jt","Gt","$t","featureFlagId","ruleId","qt","getSecondLatestPageView","Ht","pageCount","Wt","count","unitOfTime","timeUnit","Jt","Xt","setHours","Qt","Yt","visitorType","Zt","te","lowerBound","upperBound","keyMomentId","ee","variationMatchType","ie","personalizationId","ae","re","mutUpdateData","infoData","mutData","dataItem","extendTtl","visitorReference","isReference","dereferenceData","mappingIdentifiers","updateCustomData","expirationTime","updatePageView","pageView","updateConversion","conversion","updateVisitsData","updatePersonalization","updateTargetedSegment","targetedSegment","updateCommonData","commonData","mutCleanupData","removeReference","linkedVisitor","deleteNestedExpiredField","deleteExpiredField","mutAddUnsentData","dataType","unsentData","createReference","nestedKey","updateNestedField","createNestedField","updateField","createField","se","ClientData","TargetingData","TrackingData","VariationData","VisitorCode","ConsentData","DataInfo","KameleoonSimulationFFData","ForcedFeatureVariation","ForcedExperimentVariation","ne","oe","isDataValid","checkClientDataIntegrity","checkTargetingDataIntegrity","checkDataInfoIntegrity","checkVariationDataIntegrity","checkTrackingDataIntegrity","getDefaultData","getDefaultClientData","nextVisitTime","scheduledVisitors","hasFields","every","ue","externalStorage","storageKey","update","de","initCleanupInterval","cleanupData","cleanupVariationData","cleanupForcedFeatureVariationData","cleanupForcedExperimentVariationData","cleanupConsentData","consent","cleanupObjectValues","le","Unknown","Given","NotGiven","ce","he","dataStorage","infoStorage","targetingTrees","mappingIdentifierCustomDataIndex","persistentCustomDataIndexes","localCustomDataIndexes","customDataIndexByName","cleanupIntervalId","dataProcessor","getUnsentData","getDataFromRaw","cdIndex","getPendingData","storeTrackedData","storeDataForVisitors","delete","storeData","storeDataInternal","mutUpdateTargetingData","kameleoonData","isPersistentCustomData","isUniqueIdentifier","getVisitorIdentifier","getMappingIdentifier","setMappingIdentifier","getLinkedVisitor","trySetCustomDataIndexByName","nextDataCleanup","unsentDataVisitors","identifierCustomDataIndex","localOnly","scope","getCustomDataIndexByName","ge","pe","getData","getDataCallback","setData","setDataCallback","validateVisitorCode","getVisitorCode","generateVisitorCode","processSimulatedVariations","maxAge","path","getSimulatedVariations","clearSimulatedVariations","updateForcedFeatureVariations","decodeURIComponent","simulatedVariationFromJson","join","setVariationConfiguration","ve","fe","Ce","me","exports","ye","De","freeze","__proto__","default","ke","window","crypto","self","globalThis","msCrypto","getRandomValues","Uint32Array","randomBytes","readInt32LE","create","lib","Base","extend","mixIn","init","$super","arguments","clone","WordArray","words","sigBytes","concat","clamp","ceil","enc","Hex","substr","Latin1","fromCharCode","charCodeAt","Utf8","escape","unescape","BufferedBlockAlgorithm","reset","_data","_nDataBytes","_append","_process","blockSize","_minBufferSize","_doProcessBlock","Hasher","cfg","_doReset","finalize","_doFinalize","_createHelper","_createHmacHelper","HMAC","algo","sqrt","pow","SHA256","_hash","HmacSHA256","Ie","we","getHashDoubleForMEGroup","calculateHash","getHashDouble","visitorIdentifier","respoolTime","Ve","storageForcedExperimentVariations","storageForcedFeatureVariations","updateDataStatus","experimentIdList","getVariationData","getVisitorsWithUnsentData","getVariation","featureFlag","legalConsent","withAssignment","getForcedExperimentVariation","forceTargeting","createAndSaveForcedTargetedVariation","evaluateCBScores","rule","varByExp","updateForcedExperimentVariation","simulated","getForcedFeatureVariation","parseForcedVariationData","isSimulatedVariationJson","varId","expId","cbScores","be","externalEventSource","isConnectionOpen","onEvent","handleMessage","eventType","ts","Te","currentSize","resultBody","hasUserAgent","trackingVisitors","prng","getTrackingBody","cleanup","addData","userAgent","isConsentProvided","getVariationDataLines","getVisitorDataLines","addVisitorTrackingLines","lines","prepareVisitorBody","getIdentifier","getActivityLine","checkSize","Se","trackingStorage","intervalId","bodyProvider","sendDataAll","scheduleVisitor","checkIsIdentifier","getUserAgent","sendData","sendDataForVisitor","getUnsentVisitorData","getUnsentVariationData","addNotTrackedVisitors","Ee","expirationPeriod","getEngineTrackingCode","TRACKING_CODE_INIT","ASSIGN_VARIATION_COMMAND","TRIGGER_COMMAND","getAssignedVariationsFromKameleoonQueue","isAssignVariationCommand","Oe","dependencies","internalConfiguration","stubMode","initialized","consentDataStorage","hybridManager","tracker","externals","externalLogger","externalPRNG","customDataManager","getRemoteVisitorData","shouldAddData","trackConversion","flush","_flushInternal","_isConsentProvided","flushInstant","_parseFlushParams","isInstant","instant","getFeatureFlags","getVisitorFeatureFlags","_getActiveFeatureVariations","_getFeatureVariation","getVariations","onlyActive","getActiveFeatureFlags","_getFeatureVariables","getFeatureFlagVariationKey","getFeatureFlagVariable","variableKey","getFeatureFlagVariables","isFeatureFlagActive","getVisitorWarehouseAudience","warehouseKey","_processKameleoonQueue","setForcedVariation","_setForcedVariation","evaluateAudiences","audienceTracking","getDataFile","setUserConsent","updateConsentData","getLegalConsent","extractLegalConsent","_getForcedFeatureVariation","_evaluate","save","forcedVariation","ruleType","EvaluatedExperiment","fromForcedFeatureVariation","_isVisitorNotInHoldout","_isFFUnrestrictedByMEGroup","_getCodeForHash","fromVariationData","fromDefaultVariationKey","isSimulated","variation","_refreshDataFileIfStale","xe","simulateSuccessRequest","getCookieValue","KameleoonContext","React","createContext","KameleoonProvider_default","memo","client","children","_jsx","Provider","kameleoonClient","sdkParameters","KameleoonProviderSSR_default","__awaiter","thisArg","_arguments","generator","reject","fulfilled","step","rejected","result","createClient","KameleoonClient","_internals","SdkLanguageType","platformAnalyzer","useKameleoonContext","context","useContext","fetchClientFromContext","sdkParams","useCallback","arg1","rest","params","firstParam","secondParam","event","callback","setLegalConsent","defaultVisitorCode"],"mappings":"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","x_google_ignoreList":[4]}