@launchdarkly/akamai-server-base-sdk 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/README.md +17 -7
- package/dist/esm/bundle.es.js +1 -1
- package/dist/esm/bundle.es.js.map +1 -1
- package/dist/esm/package.json +2 -2
- package/dist/esm/src/index.d.ts +3 -3
- package/dist/esm/src/index.d.ts.map +1 -1
- package/package.json +2 -2
package/dist/esm/bundle.es.js
CHANGED
|
@@ -30,5 +30,5 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
|
30
30
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
31
31
|
PERFORMANCE OF THIS SOFTWARE.
|
|
32
32
|
***************************************************************************** */
|
|
33
|
-
function(e,t){var r={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(i=Object.getOwnPropertySymbols(e);n<i.length;n++)t.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(e,i[n])&&(r[i[n]]=e[i[n]])}return r}(t,["featureStore","logger","sendEvents"]);if(!e)throw new Error("You must configure the client with a client key");if(!r||"object"!=typeof r||!r.get)throw new Error("You must configure the client with a feature store");if(!i)throw new Error("You must configure the client with a logger");if("{}"!==JSON.stringify(s))throw new Error(`Invalid configuration: ${Object.keys(s).toString()} not supported`)})(e.sdkKey,c);const d=((e,t,r)=>new Yl(e,t,r))(a,o,l);return new Do(r,new Jl(d),c)};var eu={},tu={},ru={},iu={};function nu(e){return e.indexOf("~")?e.replace(/~1/g,"/").replace(/~0/g,"~"):e}Object.defineProperty(iu,"__esModule",{value:!0});class su{constructor(e,t=!1){if(t){const t=e;this.components=[t],this.isValid=""!==t,this.redactionName=t.startsWith("/")?`/${t.replace(/~/g,"~0").replace(/\//g,"~1")}`:t}else{if(this.redactionName=e,""===e||"/"===e||e.match(/\/\/|(^\/.*~[^0|^1])|~$/))return this.isValid=!1,void(this.components=[]);!function(e){return!e.startsWith("/")}(e)?e.indexOf("/",1)<0?this.components=[nu(e.slice(1))]:this.components=function(e){return(e.startsWith("/")?e.substring(1):e).split("/").map((e=>nu(e)))}(e):this.components=[e],"_meta"===this.components[0]?this.isValid=!1:this.isValid=!0}}get(e){const{components:t,isValid:r}=this;if(!r)return;let i=e;for(let e=0;e<t.length;e+=1){const r=t[e];if(null==i||!Object.prototype.hasOwnProperty.call(i,r)||"object"!=typeof i||Array.isArray(i))return;i=i[r]}return i}getComponent(e){return this.components[e]}get depth(){return this.components.length}get isKind(){return 1===this.components.length&&"kind"===this.components[0]}compare(e){return this.depth===e.depth&&this.components.every(((t,r)=>t===e.getComponent(r)))}}su.invalidReference=new su(""),iu.default=su;var au={},ou={};Object.defineProperty(ou,"__esModule",{value:!0}),ou.TypeValidators=ou.DateValidator=ou.Function=ou.StringMatchingRegex=ou.NumberWithMinimum=ou.TypeArray=ou.Type=ou.FactoryOrInstance=void 0;class lu{is(e){if(Array.isArray(e))return!1;const t=typeof e;return"function"===t||"object"===t}getType(){return"factory method or object"}}ou.FactoryOrInstance=lu;class uu{constructor(e,t){this.typeName=e,this.typeOf=typeof t}is(e){return!Array.isArray(e)&&typeof e===this.typeOf}getType(){return this.typeName}}ou.Type=uu;class cu{constructor(e,t){this.typeName=e,this.typeOf=typeof t}is(e){return!!Array.isArray(e)&&(!(e.length>0)||e.every((e=>typeof e===this.typeOf)))}getType(){return this.typeName}}ou.TypeArray=cu;class du extends uu{constructor(e){super(`number with minimum value of ${e}`,0),this.min=e}is(e){return typeof e===this.typeOf&&e>=this.min}}ou.NumberWithMinimum=du;class hu extends uu{constructor(e){super(`string matching ${e}`,""),this.expression=e}is(e){return!!e.match(this.expression)}}ou.StringMatchingRegex=hu;class fu{is(e){return"function"==typeof e}getType(){return"function"}}ou.Function=fu;const vu=/^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d\d*)?(Z|[-+]\d\d(:\d\d)?)/;class pu{is(e){return"number"==typeof e||"string"==typeof e&&vu.test(e)}getType(){return"date"}}ou.DateValidator=pu;class gu{static numberWithMin(e){return new du(e)}static stringMatchingRegex(e){return new hu(e)}}ou.TypeValidators=gu,gu.String=new uu("string",""),gu.Number=new uu("number",0),gu.ObjectOrFactory=new lu,gu.Object=new uu("object",{}),gu.StringArray=new cu("string[]",""),gu.Boolean=new uu("boolean",!0),gu.Function=new fu,gu.Date=new pu,Object.defineProperty(au,"__esModule",{value:!0});const yu=iu,mu=ou,bu=mu.TypeValidators.stringMatchingRegex(/^(\w|\.|-)+$/),Eu="user";function _u(e){return e.includes("%")||e.includes(":")?e.replace(/%/g,"%25").replace(/:/g,"%3A"):e}function wu(e){return bu.is(e)&&"kind"!==e}function Ou(e){return mu.TypeValidators.String.is(e)&&""!==e}function Su(e,t=!1){return e?e.map((e=>new yu.default(e,t))):[]}class xu{constructor(e,t,r){this.isMulti=!1,this.isUser=!1,this.wasLegacy=!1,this.contexts={},this.kind=t,this.valid=e,this.message=r}static contextForError(e,t){return new xu(!1,e,t)}static getValueFromContext(e,t){if(t&&e.isValid)return 1===e.depth&&"anonymous"===e.getComponent(0)?!!(null==t?void 0:t.anonymous):e.get(t)}contextForKind(e){return this.isMulti?this.contexts[e]:this.kind===e?this.context:void 0}static fromMultiKindContext(e){const t=Object.keys(e).filter((e=>"kind"!==e)),r=t.every(wu);if(!t.length)return xu.contextForError("multi","A multi-kind context must contain at least one kind");if(!r)return xu.contextForError("multi","Context contains invalid kinds");const i={};let n=!0;const s=t.reduce(((t,r)=>{var s;const a=e[r];var o;return(o=a)&&mu.TypeValidators.Object.is(o)?(t[r]=a,i[r]=Su(null===(s=a._meta)||void 0===s?void 0:s.privateAttributes)):n=!1,t}),{});if(!n)return xu.contextForError("multi","Context contained contexts that were not objects");if(!Object.values(s).every((e=>Ou(e.key))))return xu.contextForError("multi","Context contained invalid keys");if(1===t.length){const e=t[0],r=new xu(!0,e);return r.context=s[e],r.privateAttributeReferences=i,r.isUser="user"===e,r}const a=new xu(!0,e.kind);return a.contexts=s,a.privateAttributeReferences=i,a.isMulti=!0,a}static fromSingleKindContext(e){var t;const{key:r,kind:i}=e,n=wu(i),s=Ou(r);if(!n)return xu.contextForError(null!=i?i:"unknown","The kind was not valid for the context");if(!s)return xu.contextForError(i,"The key for the context was not valid");const a=Su(null===(t=e._meta)||void 0===t?void 0:t.privateAttributes),o=new xu(!0,i);return o.isUser="user"===i,o.context=e,o.privateAttributeReferences={[i]:a},o}static fromLegacyUser(e){if(!(void 0!==e.key&&null!==e.key))return xu.contextForError("user","The key for the context was not valid");const t=new xu(!0,"user");return t.isUser=!0,t.wasLegacy=!0,t.context=function(e){const t=Object.assign(Object.assign({},e.custom||[]),{kind:"user",key:String(e.key)});if(null!=e.anonymous){const r=!!e.anonymous;delete t.anonymous,t.anonymous=r}return null!==e.name&&void 0!==e.name&&(t.name=e.name),null!==e.ip&&void 0!==e.ip&&(t.ip=e.ip),null!==e.firstName&&void 0!==e.firstName&&(t.firstName=e.firstName),null!==e.lastName&&void 0!==e.lastName&&(t.lastName=e.lastName),null!==e.email&&void 0!==e.email&&(t.email=e.email),null!==e.avatar&&void 0!==e.avatar&&(t.avatar=e.avatar),null!==e.country&&void 0!==e.country&&(t.country=e.country),t}(e),t.privateAttributeReferences={user:Su(e.privateAttributeNames,!0)},t}static fromLDContext(e){return e?function(e){return"kind"in e&&mu.TypeValidators.String.is(e.kind)&&"multi"!==e.kind}(e)?xu.fromSingleKindContext(e):function(e){return"kind"in e&&mu.TypeValidators.String.is(e.kind)&&"multi"===e.kind}(e)?xu.fromMultiKindContext(e):function(e){return!("kind"in e)||null===e.kind||void 0===e.kind}(e)?xu.fromLegacyUser(e):xu.contextForError("unknown","Context was not of a valid kind"):xu.contextForError("unknown","No context specified. Returning default value")}valueForKind(e,t=Eu){return e.isKind?this.kinds:xu.getValueFromContext(e,this.contextForKind(t))}key(e=Eu){var t;return null===(t=this.contextForKind(e))||void 0===t?void 0:t.key}get isMultiKind(){return this.isMulti}get canonicalKey(){return this.isUser?this.context.key:this.isMulti?Object.keys(this.contexts).sort().map((e=>`${e}:${_u(this.contexts[e].key)}`)).join(":"):`${this.kind}:${_u(this.context.key)}`}get kinds(){return this.isMulti?Object.keys(this.contexts):[this.kind]}get kindsAndKeys(){return this.isMulti?Object.entries(this.contexts).reduce(((e,[t,r])=>(e[t]=r.key,e)),{}):{[this.kind]:this.context.key}}privateAttributes(e){var t;return(null===(t=this.privateAttributeReferences)||void 0===t?void 0:t[e])||[]}getContexts(){return this.isMulti?Object.entries(this.contexts):[[this.kind,this.context]]}get legacy(){return this.wasLegacy}}xu.userKind=Eu,au.default=xu;var Pu={};Object.defineProperty(Pu,"__esModule",{value:!0});const ku=iu,Iu=["key","kind","_meta","anonymous"].map((e=>new ku.default(e,!0))),Au=["name","ip","firstName","lastName","email","avatar","country"];function Ru(e,t){return e.depth===t.length&&t.every(((t,r)=>t===e.getComponent(r)))}Pu.default=class{constructor(e,t){this.allAttributesPrivate=e,this.privateAttributes=t}filter(e){const t=e.getContexts();if(1===t.length)return this.filterSingleKind(e,t[0][1],t[0][0]);const r={kind:"multi"};return t.forEach((([t,i])=>{r[t]=this.filterSingleKind(e,i,t)})),r}getAttributesToFilter(e,t,r){return(this.allAttributesPrivate?Object.keys(t).map((e=>new ku.default(e,!0))):[...this.privateAttributes,...e.privateAttributes(r)]).filter((e=>!Iu.some((t=>t.compare(e)))))}filterSingleKind(e,t,r){const{cloned:i,excluded:n}=function(e,t){const r=[],i={},n=[];for(r.push(...Object.keys(e).map((t=>({key:t,ptr:[t],source:e,parent:i,visited:[e]}))));r.length;){const e=r.pop(),i=t.find((t=>Ru(t,e.ptr)));if(i)n.push(i.redactionName);else{const t=e.source[e.key];null===t?e.parent[e.key]=t:Array.isArray(t)?e.parent[e.key]=[...t]:"object"==typeof t?e.visited.includes(t)||(e.parent[e.key]={},r.push(...Object.keys(t).map((r=>({key:r,ptr:[...e.ptr,r],source:t,parent:e.parent[e.key],visited:[...e.visited,t]}))))):e.parent[e.key]=t}}return{cloned:i,excluded:n.sort()}}(t,this.getAttributesToFilter(e,t,r));return e.legacy&&Au.forEach((e=>{e in i&&(i[e]=String(i[e]))})),n.length&&(i._meta||(i._meta={}),i._meta.redactedAttributes=n),i._meta&&(delete i._meta.privateAttributes,0===Object.keys(i._meta).length&&delete i._meta),i}};var Mu={},Tu={},Du={};Object.defineProperty(Du,"__esModule",{value:!0});var ju={};Object.defineProperty(ju,"__esModule",{value:!0});var Nu={};Object.defineProperty(Nu,"__esModule",{value:!0});var $u={};Object.defineProperty($u,"__esModule",{value:!0});var Fu={};Object.defineProperty(Fu,"__esModule",{value:!0});var Lu,Cu,Bu,Vu={};Object.defineProperty(Vu,"__esModule",{value:!0}),Lu=Tu,Cu=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),Bu=t&&t.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||Cu(t,e,r)},Object.defineProperty(Lu,"__esModule",{value:!0}),Bu(Du,Lu),Bu(ju,Lu),Bu(Nu,Lu),Bu($u,Lu),Bu(Fu,Lu),Bu(Vu,Lu);var Uu={},zu={};Object.defineProperty(zu,"__esModule",{value:!0});var Ku={};Object.defineProperty(Ku,"__esModule",{value:!0});var Hu={};Object.defineProperty(Hu,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(zu,e),i(Ku,e),i(Hu,e)}(Uu);var Gu={},qu={};Object.defineProperty(qu,"__esModule",{value:!0});var Wu={};Object.defineProperty(Wu,"__esModule",{value:!0});var Xu={};Object.defineProperty(Xu,"__esModule",{value:!0});var Ju={};Object.defineProperty(Ju,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(qu,e),i(Wu,e),i(Xu,e),i(Ju,e)}(Gu);var Yu={};Object.defineProperty(Yu,"__esModule",{value:!0});var Zu={},Qu={};Object.defineProperty(Qu,"__esModule",{value:!0});var ec={};Object.defineProperty(ec,"__esModule",{value:!0});var tc={};Object.defineProperty(tc,"__esModule",{value:!0});var rc={};Object.defineProperty(rc,"__esModule",{value:!0});var ic={};Object.defineProperty(ic,"__esModule",{value:!0});var nc={};Object.defineProperty(nc,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(Qu,e),i(ec,e),i(tc,e),i(rc,e),i(ic,e),i(nc,e)}(Zu);var sc,ac,oc={},lc={};Object.defineProperty(lc,"__esModule",{value:!0}),lc.LDDeliveryStatus=lc.LDEventType=void 0,function(e){e[e.AnalyticsEvents=0]="AnalyticsEvents",e[e.DiagnosticEvent=1]="DiagnosticEvent"}(sc||(lc.LDEventType=sc={})),function(e){e[e.Succeeded=0]="Succeeded",e[e.Failed=1]="Failed",e[e.FailedAndMustShutDown=2]="FailedAndMustShutDown"}(ac||(lc.LDDeliveryStatus=ac={})),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.LDEventType=e.LDDeliveryStatus=void 0;const t=lc;Object.defineProperty(e,"LDDeliveryStatus",{enumerable:!0,get:function(){return t.LDDeliveryStatus}}),Object.defineProperty(e,"LDEventType",{enumerable:!0,get:function(){return t.LDEventType}})}(oc),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),e.subsystem=void 0,i(Tu,e),i(Uu,e),i(Gu,e),i(Yu,e),i(Zu,e),e.subsystem=oc}(Mu);var uc={},cc={},dc={};Object.defineProperty(dc,"__esModule",{value:!0});const hc=ou;function fc(e){if("string"==typeof e)return e;if(void 0===e)return"undefined";if(null===e)return"null";if(Object.prototype.hasOwnProperty.call(e,"toString"))try{return e.toString()}catch(e){}if("bigint"==typeof e)return`${e}n`;try{return JSON.stringify(e)}catch(e){return e instanceof TypeError&&e.message.indexOf("circular")>=0?"[Circular]":"[Not Stringifiable]"}}const vc={s:e=>fc(e),d:e=>function(e){return"symbol"==typeof e?"NaN":"bigint"==typeof e?`${e}n`:String(Number(e))}(e),i:e=>function(e){return"symbol"==typeof e?"NaN":"bigint"==typeof e?`${e}n`:String(parseInt(e,10))}(e),f:e=>function(e){return"symbol"==typeof e?"NaN":String(parseFloat(e))}(e),j:e=>fc(e),o:e=>fc(e),O:e=>fc(e),c:()=>""};dc.default=function(...e){var t;const r=e.shift();if(hc.TypeValidators.String.is(r)){let i="",n=0;for(;n<r.length;){const s=r.charAt(n);if("%"===s){if(n+1<r.length){const s=r.charAt(n+1);if(s in vc&&e.length){const r=e.shift();i+=null===(t=vc[s])||void 0===t?void 0:t.call(vc,r)}else i+="%"===s?"%":`%${s}`;n+=2}}else i+=s,n+=1}return e.length&&(i.length&&(i+=" "),i+=e.map(fc).join(" ")),i}return e.map(fc).join(" ")},Object.defineProperty(cc,"__esModule",{value:!0});const pc=dc,gc={debug:0,info:1,warn:2,error:3,none:4},yc=["debug","info","warn","error","none"];class mc{static get(){return new mc({})}constructor(e){var t,r,i;this.logLevel=null!==(r=gc[null!==(t=e.level)&&void 0!==t?t:"info"])&&void 0!==r?r:gc.info,this.name=null!==(i=e.name)&&void 0!==i?i:"LaunchDarkly",this.destination=e.destination,this.formatter=e.formatter}tryFormat(...e){var t;try{return this.formatter?null===(t=this.formatter)||void 0===t?void 0:t.call(this,...e):(0,pc.default)(...e)}catch(t){return(0,pc.default)(...e)}}tryWrite(e){try{this.destination(e)}catch(t){console.error(e)}}log(e,t){if(e>=this.logLevel){const r=`${yc[e]}: [${this.name}]`;try{this.destination?this.tryWrite(this.tryFormat(r,...t)):console.error(...t)}catch(e){console.error(...t)}}}error(...e){this.log(gc.error,e)}warn(...e){this.log(gc.warn,e)}info(...e){this.log(gc.info,e)}debug(...e){this.log(gc.debug,e)}}cc.default=mc;var bc={};Object.defineProperty(bc,"__esModule",{value:!0});const Ec=ou,_c={error:Ec.TypeValidators.Function,warn:Ec.TypeValidators.Function,info:Ec.TypeValidators.Function,debug:Ec.TypeValidators.Function};bc.default=class{constructor(e,t){Object.entries(_c).forEach((([t,r])=>{if(!r.is(e[t]))throw new Error(`Provided logger instance must support logger.${t}(...) method`)})),this.logger=e,this.fallback=t}log(e,t){try{this.logger[e](...t)}catch(r){this.fallback[e](...t)}}error(...e){this.log("error",e)}warn(...e){this.log("warn",e)}info(...e){this.log("info",e)}debug(...e){this.log("debug",e)}},Object.defineProperty(uc,"__esModule",{value:!0}),uc.SafeLogger=uc.BasicLogger=void 0;const wc=cc;uc.BasicLogger=wc.default;const Oc=bc;uc.SafeLogger=Oc.default;var Sc={},xc={},Pc={};Object.defineProperty(Pc,"__esModule",{value:!0});Pc.default=class{static deprecated(e,t){return`"${e}" is deprecated, please use "${t}"`}static optionBelowMinimum(e,t,r){return`Config option "${e}" had invalid value of ${t}, using minimum of ${r} instead`}static unknownOption(e){return`Ignoring unknown config option "${e}"`}static wrongOptionType(e,t,r){return`Config option "${e}" should be of type ${t}, got ${r}, using default value`}static wrongOptionTypeBoolean(e,t){return`Config option "${e}" should be a boolean, got ${t}, converting to boolean`}static invalidTagValue(e){return`Config option "${e}" must only contain letters, numbers, ., _ or -.`}static tagValueTooLong(e){return`Value of "${e}" was longer than 64 characters and was discarded.`}static partialEndpoint(e){return`You have set custom uris without specifying the ${e} URI; connections may not work properly`}},Object.defineProperty(xc,"__esModule",{value:!0});const kc=Pc,Ic=ou.TypeValidators.stringMatchingRegex(/^(\w|\.|-)+$/),Ac=(e,t)=>Ic.is(e)?e.length>64?{valid:!1,message:kc.default.tagValueTooLong(t)}:{valid:!0}:{valid:!1,message:kc.default.invalidTagValue(t)};xc.default=class{constructor(e){var t,r;const i={},n=null==e?void 0:e.application;if(null!==(null==n?void 0:n.id)&&void 0!==(null==n?void 0:n.id)){const{valid:r,message:s}=Ac(n.id,"application.id");r?i["application-id"]=[n.id]:null===(t=e.logger)||void 0===t||t.warn(s)}if(null!==(null==n?void 0:n.version)&&void 0!==(null==n?void 0:n.version)){const{valid:t,message:s}=Ac(n.version,"application.version");t?i["application-version"]=[n.version]:null===(r=e.logger)||void 0===r||r.warn(s)}const s=Object.keys(i);s.length&&(this.value=s.sort().flatMap((e=>i[e].sort().map((t=>`${e}/${t}`)))).join(" "))}};var Rc={};function Mc(e){return e.replace(/\/+$/,"")}Object.defineProperty(Rc,"__esModule",{value:!0});Rc.default=class{constructor(e,t,r){this.streaming=Mc(e),this.polling=Mc(t),this.events=Mc(r)}};var Tc={};Object.defineProperty(Tc,"__esModule",{value:!0});Tc.default=class{constructor(e,t,r){this.platform=r,this.basicConfiguration={logger:t.logger,offline:t.offline,sdkKey:e,serviceEndpoints:t.serviceEndpoints}}},Object.defineProperty(Sc,"__esModule",{value:!0}),Sc.ClientContext=Sc.ServiceEndpoints=Sc.OptionMessages=Sc.ApplicationTags=void 0;const Dc=xc;Sc.ApplicationTags=Dc.default;const jc=Pc;Sc.OptionMessages=jc.default;const Nc=Rc;Sc.ServiceEndpoints=Nc.default;const $c=Tc;Sc.ClientContext=$c.default;var Fc={},Lc={};Object.defineProperty(Lc,"__esModule",{value:!0}),Lc.default=()=>{},Object.defineProperty(Fc,"__esModule",{value:!0}),Fc.noop=void 0;const Cc=Lc;Fc.noop=Cc.default;var Bc={},Vc={},Uc={};Object.defineProperty(Uc,"__esModule",{value:!0});Uc.default=class{constructor(e,t,r,i){this.key=t,this.data=r,this.metricValue=i,this.kind="custom",this.creationDate=Date.now(),this.context=e}};var zc={};Object.defineProperty(zc,"__esModule",{value:!0});zc.default=class{constructor(e,t,r,i,n,s,a,o,l,u,c){var d;this.key=r,this.kind="feature",this.creationDate=Date.now(),this.context=t,this.default=i,this.variation=null!==(d=n.variationIndex)&&void 0!==d?d:void 0,this.value=n.value,void 0!==s&&(this.version=s),void 0!==a&&(this.variation=a),void 0!==o&&(this.trackEvents=o),void 0!==l&&(this.prereqOf=l),void 0!==u&&(this.reason=u),void 0!==c&&(this.debugEventsUntilDate=c)}};var Kc={};Object.defineProperty(Kc,"__esModule",{value:!0});Kc.default=class{constructor(e){this.kind="identify",this.creationDate=Date.now(),this.context=e}};var Hc={},Gc={},qc={};Object.defineProperty(qc,"__esModule",{value:!0}),qc.isIdentify=qc.isCustom=qc.isFeature=void 0,qc.isFeature=function(e){return"feature"===e.kind},qc.isCustom=function(e){return"custom"===e.kind},qc.isIdentify=function(e){return"identify"===e.kind};var Wc={};Object.defineProperty(Wc,"__esModule",{value:!0});Wc.default=class{constructor(e,t,r,i,n,s){this.count=e,this.key=t,this.value=r,this.version=n,this.variation=s,this.default=i}increment(){this.count+=1}},Object.defineProperty(Gc,"__esModule",{value:!0});const Xc=qc,Jc=Wc;Gc.default=class{constructor(){this.startDate=0,this.endDate=0,this.counters={},this.contextKinds={}}summarizeEvent(e){if((0,Xc.isFeature)(e)){const t=function(e){return`${e.key}:${null!==e.variation&&void 0!==e.variation?e.variation:""}:${null!==e.version&&void 0!==e.version?e.version:""}`}(e),r=this.counters[t];let i=this.contextKinds[e.key];i||(i=new Set,this.contextKinds[e.key]=i),e.context.kinds.forEach((e=>i.add(e))),r?r.increment():this.counters[t]=new Jc.default(1,e.key,e.value,e.default,e.version,e.variation),(0===this.startDate||e.creationDate<this.startDate)&&(this.startDate=e.creationDate),e.creationDate>this.endDate&&(this.endDate=e.creationDate)}}getSummary(){const e=Object.values(this.counters).reduce(((e,t)=>{let r=e[t.key];r||(r={default:t.default,counters:[],contextKinds:[...this.contextKinds[t.key]]},e[t.key]=r);const i={value:t.value,count:t.count};return void 0!==t.variation&&null!==t.variation&&(i.variation=t.variation),void 0!==t.version&&null!==t.version?i.version=t.version:i.unknown=!0,r.counters.push(i),e}),{});return{startDate:this.startDate,endDate:this.endDate,features:e,kind:"summary"}}clearSummary(){this.startDate=0,this.endDate=0,this.counters={},this.contextKinds={}}};var Yc={};Object.defineProperty(Yc,"__esModule",{value:!0});class Zc extends Error{constructor(e){super(e),this.name="LaunchDarklyInvalidSDKKeyError"}}Yc.default=Zc;var Qc=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(Hc,"__esModule",{value:!0});const ed=lc,td=iu,rd=Pu,id=Gc,nd=qc,sd=Yc;Hc.default=class{constructor(e,t,r,i,n){if(this.eventSender=r,this.contextDeduplicator=i,this.diagnosticsManager=n,this.summarizer=new id.default,this.queue=[],this.lastKnownPastTime=0,this.droppedEvents=0,this.deduplicatedUsers=0,this.exceededCapacity=!1,this.eventsInLastBatch=0,this.shutdown=!1,this.flushUsersTimer=null,this.capacity=e.eventsCapacity,this.logger=t.basicConfiguration.logger,this.contextFilter=new rd.default(e.allAttributesPrivate,e.privateAttributes.map((e=>new td.default(e)))),void 0!==this.contextDeduplicator.flushInterval&&(this.flushUsersTimer=void this.contextDeduplicator.flushInterval),this.flushTimer=void e.flushInterval,this.diagnosticsManager){const t=n.createInitEvent();this.postDiagnosticEvent(t),this.diagnosticsTimer=void e.diagnosticRecordingInterval}}postDiagnosticEvent(e){this.eventSender.sendEventData(ed.LDEventType.DiagnosticEvent,e)}close(){clearInterval(this.flushTimer),this.flushUsersTimer&&clearInterval(this.flushUsersTimer),this.diagnosticsTimer&&clearInterval(this.diagnosticsTimer)}flush(){var e;return Qc(this,void 0,void 0,(function*(){if(this.shutdown)throw new sd.default("Events cannot be posted because SDK key is invalid");const t=this.queue;this.queue=[];const r=this.summarizer.getSummary();this.summarizer.clearSummary(),Object.keys(r.features).length&&t.push(r),t.length&&(this.eventsInLastBatch=t.length,null===(e=this.logger)||void 0===e||e.debug("Flushing %d events",t.length),yield this.tryPostingEvents(t))}))}sendEvent(e){if(this.shutdown)return;this.summarizer.summarizeEvent(e);const t=(0,nd.isFeature)(e),r=t&&e.trackEvents||!t,i=this.shouldDebugEvent(e),n=(0,nd.isIdentify)(e),s=this.contextDeduplicator.processContext(e.context);s||n||(this.deduplicatedUsers+=1);s&&!n&&this.enqueue({kind:"index",creationDate:e.creationDate,context:this.contextFilter.filter(e.context)}),r&&this.enqueue(this.makeOutputEvent(e,!1)),i&&this.enqueue(this.makeOutputEvent(e,!0))}makeOutputEvent(e,t){switch(e.kind){case"feature":{const r={kind:t?"debug":"feature",creationDate:e.creationDate,key:e.key,value:e.value,default:e.default,prereqOf:e.prereqOf};return void 0!==e.variation&&(r.variation=e.variation),void 0!==e.version&&(r.version=e.version),e.reason&&(r.reason=e.reason),t?r.context=this.contextFilter.filter(e.context):r.contextKeys=e.context.kindsAndKeys,r}case"identify":return{kind:"identify",creationDate:e.creationDate,context:this.contextFilter.filter(e.context)};case"custom":{const t={kind:"custom",creationDate:e.creationDate,key:e.key,contextKeys:e.context.kindsAndKeys};return void 0!==e.data&&(t.data=e.data),void 0!==e.metricValue&&(t.metricValue=e.metricValue),t}default:return e}}enqueue(e){var t;this.queue.length<this.capacity?(this.queue.push(e),this.exceededCapacity=!1):(this.exceededCapacity||(this.exceededCapacity=!0,null===(t=this.logger)||void 0===t||t.warn("Exceeded event queue capacity. Increase capacity to avoid dropping events.")),this.droppedEvents+=1)}shouldDebugEvent(e){return(0,nd.isFeature)(e)&&e.debugEventsUntilDate&&e.debugEventsUntilDate>this.lastKnownPastTime&&e.debugEventsUntilDate>Date.now()}tryPostingEvents(e){return Qc(this,void 0,void 0,(function*(){const t=yield this.eventSender.sendEventData(ed.LDEventType.AnalyticsEvents,e);if(t.status===ed.LDDeliveryStatus.FailedAndMustShutDown&&(this.shutdown=!0),t.serverTime&&(this.lastKnownPastTime=t.serverTime),t.error)throw t.error}))}},Object.defineProperty(Vc,"__esModule",{value:!0}),Vc.EventProcessor=Vc.InputIdentifyEvent=Vc.InputEvalEvent=Vc.InputCustomEvent=void 0;const ad=Uc;Vc.InputCustomEvent=ad.default;const od=zc;Vc.InputEvalEvent=od.default;const ld=Kc;Vc.InputIdentifyEvent=ld.default;const ud=Hc;Vc.EventProcessor=ud.default,function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(Vc,e)}(Bc),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),e.ContextFilter=e.Context=e.AttributeReference=e.internal=void 0;const n=iu;e.AttributeReference=n.default;const s=au;e.Context=s.default;const a=Pu;e.ContextFilter=a.default,i(Mu,e),i(ou,e),i(uc,e),i(Sc,e),i(Fc,e),e.internal=Bc}(ru);var cd={},dd={},hd=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(dd,"__esModule",{value:!0});dd.default=class{constructor(e){this.onRequestStatus=e}getStatus(){return this.lastStatus}requireStatus(){return hd(this,void 0,void 0,(function*(){return this.lastStatus||(yield this.onRequestStatus()),this.lastStatus}))}notify(){var e;this.lastStatus&&(null===(e=this.listener)||void 0===e||e.call(this,this.lastStatus))}setListener(e){this.listener=e}setStatus(e){this.lastStatus=e}};var fd={};Object.defineProperty(fd,"__esModule",{value:!0});fd.default=class{constructor(e){this.keyMap=new Map,this.head=0,this.tail=0,this.size=0;const{max:t}=e;this.max=t,this.values=new Array(t),this.keys=new Array(t),this.next=new Uint32Array(t),this.prev=new Uint32Array(t),e.maxAge?(this.lastUpdated=new Array(t).fill(0),this.maxAge=e.maxAge):(this.lastUpdated=[],this.maxAge=0)}set(e,t){let r=this.keyMap.get(e);void 0===r?(r=this.index(),this.keys[r]=e,this.keyMap.set(e,r),this.next[this.tail]=r,this.prev[r]=this.tail,this.tail=r,this.size+=1):this.setTail(r),this.values[r]=t,this.maxAge&&(this.lastUpdated[r]=Date.now())}get(e){const t=this.keyMap.get(e);if(void 0!==t){if(this.maxAge){const e=this.lastUpdated[t];if(Date.now()-e>this.maxAge)return}return this.setTail(t),this.maxAge&&(this.lastUpdated[t]=Date.now()),this.values[t]}}clear(){this.head=0,this.tail=0,this.size=0,this.values.fill(void 0),this.keys.fill(void 0),this.next.fill(0),this.prev.fill(0)}index(){return 0===this.size?this.tail:this.size===this.max?this.evict():this.size}evict(){const{head:e}=this,t=this.keys[e];return this.head=this.next[e],this.keyMap.delete(t),this.size-=1,e}link(e,t){this.prev[t]=e,this.next[e]=t}setTail(e){e!==this.tail&&(e===this.head?this.head=this.next[e]:this.link(this.prev[e],this.next[e]),this.link(this.tail,e),this.tail=e)}};var vd=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(cd,"__esModule",{value:!0});const pd=ru,gd=dd,yd=fd;cd.default=class{constructor(e,t,r,i){this.store=e,this.logger=r,this.crypto=i,this.statusProvider=new gd.default((()=>vd(this,void 0,void 0,(function*(){return this.pollStoreAndUpdateStatus()})))),this.staleTimeMs=1e3*(pd.TypeValidators.Number.is(t.staleAfter)&&t.staleAfter>0?t.staleAfter:120);pd.TypeValidators.Number.is(t.statusPollInterval)&&t.statusPollInterval>0&&t.statusPollInterval;this.pollHandle=e?void 0:null,e&&(this.cache=new yd.default({max:t.userCacheSize||1e3,maxAge:1e3*(t.userCacheTime||5)}))}close(){this.pollHandle&&(clearInterval(this.pollHandle),this.pollHandle=void 0),this.store&&this.store.close()}getUserMembership(e){var t,r,i;return vd(this,void 0,void 0,(function*(){if(!this.store)return;let n=null===(t=this.cache)||void 0===t?void 0:t.get(e);if(!n)try{n=yield this.store.getUserMembership(this.hashForUserKey(e)),null===(r=this.cache)||void 0===r||r.set(e,n)}catch(e){return null===(i=this.logger)||void 0===i||i.error(`Big Segment store membership query returned error: ${e}`),[null,"STORE_ERROR"]}this.statusProvider.getStatus()||(yield this.pollStoreAndUpdateStatus());const s=this.statusProvider.getStatus();return s.available?[n,s.stale?"STALE":"HEALTHY"]:[n,"STORE_ERROR"]}))}pollStoreAndUpdateStatus(){var e,t,r;return vd(this,void 0,void 0,(function*(){if(!this.store)return void this.statusProvider.setStatus({available:!1,stale:!1});let i;null===(e=this.logger)||void 0===e||e.debug("Querying Big Segment store status");try{const e=yield this.store.getMetadata();i={available:!0,stale:!e||!e.lastUpToDate||this.isStale(e.lastUpToDate)}}catch(e){null===(t=this.logger)||void 0===t||t.error(`Big Segment store status query returned error: ${e}`),i={available:!1,stale:!1}}const n=this.statusProvider.getStatus();n&&n.available===i.available&&n.stale===i.stale||(null===(r=this.logger)||void 0===r||r.debug("Big Segment store status changed from %s to %s",JSON.stringify(n),JSON.stringify(i)),this.statusProvider.setStatus(i),this.statusProvider.notify())}))}hashForUserKey(e){const t=this.crypto.createHash("sha256");return t.update(e),t.digest("base64")}isStale(e){return Date.now()-e>=this.staleTimeMs}};var md={};Object.defineProperty(md,"__esModule",{value:!0});class bd{}bd.missingContextKeyNoEvent="Context was unspecified or had no key; event will not be sent",md.default=bd;var Ed={},_d={};Object.defineProperty(_d,"__esModule",{value:!0});class wd{}wd.Features={namespace:"features",streamApiPath:"/flags/",requestPath:"/sdk/latest-flags/"},wd.Segments={namespace:"segments",streamApiPath:"/segments/",requestPath:"/sdk/latest-segments/"},_d.default=wd;var Od={},Sd={};Object.defineProperty(Sd,"__esModule",{value:!0});Sd.default=class{constructor(){this.itemsByNamespace={}}get(e,t){var r;return null===(r=this.itemsByNamespace[e])||void 0===r?void 0:r[t]}set(e,t,r){e in this.itemsByNamespace||(this.itemsByNamespace[e]={}),this.itemsByNamespace[e][t]=r}remove(e,t){const r=this.itemsByNamespace[e];r&&delete r[t]}removeAll(){this.itemsByNamespace={}}enumerate(e){Object.entries(this.itemsByNamespace).forEach((([t,r])=>{Object.entries(r).forEach((([r,i])=>{e(t,r,i)}))}))}mergeFrom(e){e.enumerate(this.set.bind(this))}},Object.defineProperty(Od,"__esModule",{value:!0});const xd=Sd;Od.default=class{constructor(){this.dependenciesFrom=new xd.default,this.dependenciesTo=new xd.default}updateDependenciesFrom(e,t,r){const i=this.dependenciesFrom.get(e,t);null==i||i.enumerate(((r,i)=>{const n=this.dependenciesTo.get(r,i);null==n||n.remove(e,t)})),this.dependenciesFrom.set(e,t,r),null==r||r.enumerate(((r,i)=>{let n=this.dependenciesTo.get(r,i);n||(n=new xd.default,this.dependenciesTo.set(r,i,n)),n.set(e,t,!0)}))}updateModifiedItems(e,t,r){if(!e.get(t,r)){e.set(t,r,!0);const i=this.dependenciesTo.get(t,r);null==i||i.enumerate(((t,r)=>{this.updateModifiedItems(e,t,r)}))}}reset(){this.dependenciesFrom.removeAll(),this.dependenciesTo.removeAll()}},Object.defineProperty(Ed,"__esModule",{value:!0});const Pd=_d,kd=Od,Id=Sd;function Ad(e,t){var r,i;const n=new Id.default,s=e===Pd.default.Features.namespace,a=e===Pd.default.Segments.namespace;if(s){const i=t;null===(r=null==i?void 0:i.prerequisites)||void 0===r||r.forEach((t=>{n.set(e,t.key,!0)}))}if(s||a){const e=t;null===(i=null==e?void 0:e.rules)||void 0===i||i.forEach((e=>{var t;null===(t=e.clauses)||void 0===t||t.forEach((e=>{"segmentMatch"===e.op&&e.values.forEach((e=>{n.set(Pd.default.Segments.namespace,e,!0)}))}))}))}return n}Ed.default=class{constructor(e,t,r){this.featureStore=e,this.hasEventListeners=t,this.onChange=r,this.dependencyTracker=new kd.default}init(e,t){const r=this.hasEventListeners(),i=i=>{this.featureStore.init(e,(()=>{if(this.dependencyTracker.reset(),Object.entries(e).forEach((([e,t])=>{Object.keys(t||{}).forEach((r=>{const i=t[r];this.dependencyTracker.updateDependenciesFrom(e,r,Ad(e,i))}))})),r){const t=new Id.default;Object.keys(e).forEach((r=>{const n=(null==i?void 0:i[r])||{},s=e[r],a=Object.assign(Object.assign({},n),s);Object.keys(a).forEach((e=>{this.addIfModified(r,e,n&&n[e],s&&s[e],t)}))})),this.sendChangeEvents(t)}null==t||t()}))};r?this.featureStore.all(Pd.default.Features,(e=>{this.featureStore.all(Pd.default.Segments,(t=>{const r={[Pd.default.Features.namespace]:e,[Pd.default.Segments.namespace]:t};i(r)}))})):i()}upsert(e,t,r){const{key:i}=t,n=this.hasEventListeners(),s=s=>{this.featureStore.upsert(e,t,(()=>{if(this.dependencyTracker.updateDependenciesFrom(e.namespace,i,Ad(e.namespace,t)),n){const r=new Id.default;this.addIfModified(e.namespace,i,s,t,r),this.sendChangeEvents(r)}null==r||r()}))};n?this.featureStore.get(e,i,s):s()}addIfModified(e,t,r,i,n){i&&r&&i.version<=r.version||this.dependencyTracker.updateModifiedItems(n,e,t)}sendChangeEvents(e){e.enumerate(((e,t)=>{e===Pd.default.Features.namespace&&this.onChange(t)}))}};var Rd={};Object.defineProperty(Rd,"__esModule",{value:!0});Rd.default=class{start(e){}stop(){}close(){}};var Md={},Td={};Object.defineProperty(Td,"__esModule",{value:!0}),Td.isHttpRecoverable=Td.LDClientError=Td.LDUnexpectedResponseError=Td.LDStreamingError=Td.LDPollingError=void 0;class Dd extends Error{constructor(e){super(e),this.name="LaunchDarklyPollingError"}}Td.LDPollingError=Dd;class jd extends Error{constructor(e,t){super(e),this.code=t,this.name="LaunchDarklyStreamingError"}}Td.LDStreamingError=jd;class Nd extends Error{constructor(e){super(e),this.name="LaunchDarklyUnexpectedResponseError"}}Td.LDUnexpectedResponseError=Nd;class $d extends Error{constructor(e){super(e),this.name="LaunchDarklyClientError"}}Td.LDClientError=$d,Td.isHttpRecoverable=function(e){return!(e>=400&&e<500)||(400===e||408===e||429===e)};var Fd={};Object.defineProperty(Fd,"__esModule",{value:!0}),Fd.deserializeSegment=Fd.serializeSegment=Fd.deserializeFlag=Fd.serializeFlag=Fd.deserializeDelete=Fd.deserializePatch=Fd.deserializePoll=Fd.deserializeAll=Fd.processSegment=Fd.processFlag=Fd.replacer=Fd.reviver=void 0;const Ld=ru,Cd=_d;function Bd(e,t){if(null!==t)return t}function Vd(e,t){if(!(t instanceof Ld.AttributeReference||Array.isArray(t)&&t[0]&&t[0]instanceof Ld.AttributeReference))return t}function Ud(e){e&&e.bucketBy&&(e.bucketByAttributeReference=new Ld.AttributeReference(e.bucketBy,!e.contextKind))}function zd(e){var t;if(e.fallthrough&&e.fallthrough.rollout){Ud(e.fallthrough.rollout)}null===(t=null==e?void 0:e.rules)||void 0===t||t.forEach((e=>{var t;Ud(e.rollout),null===(t=null==e?void 0:e.clauses)||void 0===t||t.forEach((e=>{e&&e.attribute?e.attributeReference=new Ld.AttributeReference(e.attribute,!e.contextKind):e&&(e.attributeReference=Ld.AttributeReference.invalidReference)}))}))}function Kd(e){var t;null===(t=null==e?void 0:e.rules)||void 0===t||t.forEach((e=>{var t;e.bucketBy&&(e.bucketByAttributeReference=new Ld.AttributeReference(e.bucketBy,!e.rolloutContextKind)),null===(t=null==e?void 0:e.clauses)||void 0===t||t.forEach((e=>{e&&e.attribute?e.attributeReference=new Ld.AttributeReference(e.attribute,!e.contextKind):e&&(e.attributeReference=Ld.AttributeReference.invalidReference)}))}))}function Hd(e){try{return JSON.parse(e,Bd)}catch(e){return}}Fd.reviver=Bd,Fd.replacer=Vd,Fd.processFlag=zd,Fd.processSegment=Kd,Fd.deserializeAll=function(e){var t,r;const i=Hd(e);if(i)return Object.values((null===(t=null==i?void 0:i.data)||void 0===t?void 0:t.flags)||[]).forEach((e=>{zd(e)})),Object.values((null===(r=null==i?void 0:i.data)||void 0===r?void 0:r.segments)||[]).forEach((e=>{Kd(e)})),i},Fd.deserializePoll=function(e){const t=Hd(e);if(t)return Object.values((null==t?void 0:t.flags)||[]).forEach((e=>{zd(e)})),Object.values((null==t?void 0:t.segments)||[]).forEach((e=>{Kd(e)})),t},Fd.deserializePatch=function(e){const t=Hd(e);if(t)return t.path.startsWith(Cd.default.Features.streamApiPath)?(zd(t.data),t.kind=Cd.default.Features):t.path.startsWith(Cd.default.Segments.streamApiPath)&&(Kd(t.data),t.kind=Cd.default.Segments),t},Fd.deserializeDelete=function(e){const t=Hd(e);if(t)return t.path.startsWith(Cd.default.Features.streamApiPath)?t.kind=Cd.default.Features:t.path.startsWith(Cd.default.Segments.streamApiPath)&&(t.kind=Cd.default.Segments),t},Fd.serializeFlag=function(e){return JSON.stringify(e,Vd)},Fd.deserializeFlag=function(e){const t=Hd(e);if(t)return zd(t),t},Fd.serializeSegment=function(e){return JSON.stringify(e,Vd)},Fd.deserializeSegment=function(e){const t=Hd(e);if(t)return Kd(t),t};var Gd={};Object.defineProperty(Gd,"__esModule",{value:!0}),Gd.default=function(e,t,r){let i;return i=e.status?`error ${e.status}${401===e.status?" (invalid SDK key)":""}`:`I/O error (${e.message||e})`,`Received ${i} for ${t} - ${null!=r?r:"giving up permanently"}`},Object.defineProperty(Md,"__esModule",{value:!0});const qd=Td,Wd=Fd,Xd=_d,Jd=Gd;Md.default=class{constructor(e,t,r){this.requestor=t,this.featureStore=r,this.stopped=!1,this.logger=e.logger,this.pollInterval=e.pollInterval,this.featureStore=r}poll(e){var t;if(this.stopped)return;const r=t=>{var r,i;null===(r=this.logger)||void 0===r||r.error("Polling received invalid data"),null===(i=this.logger)||void 0===i||i.debug(`Invalid JSON follows: ${t}`),null==e||e(new qd.LDPollingError("Malformed JSON data in polling response"))},i=Date.now();null===(t=this.logger)||void 0===t||t.debug("Polling LaunchDarkly for feature flag updates"),this.requestor.requestAllData(((t,n)=>{var s,a,o;const l=Date.now()-i,u=Math.max(1e3*this.pollInterval-l,0);if(null===(s=this.logger)||void 0===s||s.debug("Elapsed: %d ms, sleeping for %d ms",l,u),t){if(t.status&&!(0,qd.isHttpRecoverable)(t.status)){const r=(0,Jd.default)(t,"polling request");return null===(a=this.logger)||void 0===a||a.error(r),void(null==e||e(new qd.LDPollingError(r)))}null===(o=this.logger)||void 0===o||o.warn((0,Jd.default)(t,"polling request","will retry"))}else if(n){const t=(0,Wd.deserializePoll)(n);if(t){const r={[Xd.default.Features.namespace]:t.flags,[Xd.default.Segments.namespace]:t.segments};return void this.featureStore.init(r,(()=>{null==e||e(),this.timeoutHandle=e=>{e()}}))}r(n)}this.timeoutHandle=e=>{e()}}))}start(e){this.poll(e)}stop(){this.timeoutHandle&&(clearTimeout(this.timeoutHandle),this.timeoutHandle=void 0),this.stopped=!0}close(){this.stop()}};var Yd={},Zd={};Object.defineProperty(Zd,"__esModule",{value:!0}),Zd.default=function(e,t,r){const i=r.sdkData(),n={authorization:e,"user-agent":`NodeJSClient/${i.version}`};i.wrapperName&&(n["x-launchdarkly-wrapper"]=i.wrapperVersion?`${i.wrapperName}/${i.wrapperVersion}`:i.wrapperName);const s=t.tags.value;return s&&(n["x-launchdarkly-tags"]=s),n};var Qd=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(Yd,"__esModule",{value:!0});const eh=Td,th=Zd;Yd.default=class{constructor(e,t,r,i){this.requests=i,this.eTagCache={},this.headers=(0,th.default)(e,t,r),this.uri=`${t.serviceEndpoints.polling}/sdk/latest-all`}requestWithETagCache(e,t){return Qd(this,void 0,void 0,(function*(){const r=this.eTagCache[e],i=null==r?void 0:r.etag,n=i?Object.assign(Object.assign({},t),{headers:Object.assign(Object.assign({},t.headers),{"if-none-match":i})}):t,s=yield this.requests.fetch(e,n);if(304===s.status&&r)return{res:s,body:r.body};const a=s.headers.get("etag"),o=yield s.text();return a&&(this.eTagCache[e]={etag:a,body:o}),{res:s,body:o}}))}requestAllData(e){return Qd(this,void 0,void 0,(function*(){const t={method:"GET",headers:this.headers};try{const{res:r,body:i}=yield this.requestWithETagCache(this.uri,t);if(200!==r.status&&304!==r.status){const t=new eh.LDStreamingError(`Unexpected status code: ${r.status}`,r.status);return e(t,void 0)}return e(void 0,304===r.status?null:i)}catch(t){return e(t,void 0)}}))}};var rh={};Object.defineProperty(rh,"__esModule",{value:!0});const ih=Td,nh=Fd,sh=_d,ah=Zd,oh=Gd;function lh(e,t){return t.startsWith(e.streamApiPath)?t.substring(e.streamApiPath.length):void 0}rh.default=class{constructor(e,t,r,i,n,s){this.featureStore=n,this.diagnosticsManager=s,this.headers=(0,ah.default)(e,t,i),this.logger=t.logger,this.streamInitialReconnectDelay=t.streamInitialReconnectDelay,this.requests=r,this.streamUri=`${t.serviceEndpoints.streaming}/all`}logConnectionStarted(){this.connectionAttemptStartTime=Date.now()}logConnectionResult(e){this.connectionAttemptStartTime&&this.diagnosticsManager&&this.diagnosticsManager.recordStreamInit(this.connectionAttemptStartTime,!e,Date.now()-this.connectionAttemptStartTime),this.connectionAttemptStartTime=void 0}start(e){this.logConnectionStarted();const t=(t,r)=>{var i,n;null===(i=this.logger)||void 0===i||i.error(`Stream received invalid data in "${t}" message`),null===(n=this.logger)||void 0===n||n.debug(`Invalid JSON follows: ${r}`),null==e||e(new ih.LDStreamingError("Malformed JSON data in event stream"))},r=this.requests.createEventSource(this.streamUri,{headers:this.headers,errorFilter:t=>{var r,i;return t.status&&!(0,ih.isHttpRecoverable)(t.status)?(this.logConnectionResult(!1),null==e||e(new ih.LDStreamingError(t.message,t.status)),null===(r=this.logger)||void 0===r||r.error((0,oh.default)(t,"streaming request")),!1):(null===(i=this.logger)||void 0===i||i.warn((0,oh.default)(t,"streaming request","will retry")),this.logConnectionResult(!1),this.logConnectionStarted(),!0)},initialRetryDelayMillis:1e3*this.streamInitialReconnectDelay,readTimeoutMillis:3e5,retryResetIntervalMillis:6e4});this.eventSource=r,r.onclose=()=>{var e;null===(e=this.logger)||void 0===e||e.info("Closed LaunchDarkly stream connection")},r.onerror=()=>{},r.onopen=()=>{var e;null===(e=this.logger)||void 0===e||e.info("Opened LaunchDarkly stream connection")},r.onretrying=e=>{var t;null===(t=this.logger)||void 0===t||t.info(`Will retry stream connection in ${e.delayMillis} milliseconds`)},r.addEventListener("put",(r=>{var i;if(null===(i=this.logger)||void 0===i||i.debug("Received put event"),r&&r.data){this.logConnectionResult(!0);const i=(0,nh.deserializeAll)(r.data);if(!i)return void t("put",r.data);const n={[sh.default.Features.namespace]:i.data.flags,[sh.default.Segments.namespace]:i.data.segments};this.featureStore.init(n,(()=>null==e?void 0:e()))}else null==e||e(new ih.LDStreamingError("Unexpected payload from event stream"))})),r.addEventListener("patch",(r=>{var i,n;if(null===(i=this.logger)||void 0===i||i.debug("Received patch event"),r&&r.data){const e=(0,nh.deserializePatch)(r.data);if(!e)return void t("patch",r.data);if(e.kind){const t=lh(e.kind,e.path);t&&(null===(n=this.logger)||void 0===n||n.debug(`Updating ${t} in ${e.kind.namespace}`),this.featureStore.upsert(e.kind,e.data,(()=>{})))}}else null==e||e(new ih.LDStreamingError("Unexpected payload from event stream"))})),r.addEventListener("delete",(r=>{var i,n;if(null===(i=this.logger)||void 0===i||i.debug("Received delete event"),r&&r.data){const e=(0,nh.deserializeDelete)(r.data);if(!e)return void t("delete",r.data);if(e.kind){const t=lh(e.kind,e.path);t&&(null===(n=this.logger)||void 0===n||n.debug(`Deleting ${t} in ${e.kind.namespace}`),this.featureStore.upsert(e.kind,{key:t,version:e.version,deleted:!0},(()=>{})))}}else null==e||e(new ih.LDStreamingError("Unexpected payload from event stream"))}))}stop(){var e;null===(e=this.eventSource)||void 0===e||e.close(),this.eventSource=void 0}close(){this.stop()}};var uh={},ch=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};function dh(e,t,r){return ch(this,void 0,void 0,(function*(){if(!e)return!1;for(let i=0;i<e.length;i+=1){const n=yield t(e[i],i);if(r){if(!n)return!1}else if(n)return!0}return r}))}Object.defineProperty(uh,"__esModule",{value:!0}),uh.firstSeriesAsync=uh.allSeriesAsync=uh.firstResult=void 0,uh.firstResult=function(e,t){let r;return null==e||e.some(((e,i)=>(r=t(e,i),!!r))),r},uh.allSeriesAsync=function(e,t){return ch(this,void 0,void 0,(function*(){return dh(e,t,!0)}))},uh.firstSeriesAsync=function(e,t){return ch(this,void 0,void 0,(function*(){return dh(e,t,!1)}))};var hh,fh={};Object.defineProperty(fh,"__esModule",{value:!0}),function(e){e.MalformedFlag="MALFORMED_FLAG",e.UserNotSpecified="USER_NOT_SPECIFIED",e.FlagNotFound="FLAG_NOT_FOUND",e.ClientNotReady="CLIENT_NOT_READY"}(hh||(hh={})),fh.default=hh;var vh={},ph={};Object.defineProperty(ph,"__esModule",{value:!0});class gh{static prerequisiteFailed(e){return{kind:"PREREQUISITE_FAILED",prerequisiteKey:e}}static ruleMatch(e,t){return{kind:"RULE_MATCH",ruleId:e,ruleIndex:t}}}gh.Fallthrough={kind:"FALLTHROUGH"},gh.Off={kind:"OFF"},gh.TargetMatch={kind:"TARGET_MATCH"},ph.default=gh,Object.defineProperty(vh,"__esModule",{value:!0});const yh=ph;class mh{constructor(e,t,r){this.isError=e,this.detail=t,this.message=r,this.isError=e,this.detail=t,this.message=r}get isOff(){return this.detail.reason.kind===yh.default.Off.kind}setDefault(e){this.detail.value=e}static forError(e,t,r){return new mh(!0,{value:null!=r?r:null,variationIndex:null,reason:{kind:"ERROR",errorKind:e}},t)}static forSuccess(e,t,r){return new mh(!1,{value:e,variationIndex:void 0===r?null:r,reason:t})}}vh.default=mh;var bh={},Eh={};Object.defineProperty(Eh,"__esModule",{value:!0}),Eh.getBucketBy=Eh.getOffVariation=Eh.getVariation=void 0;const _h=ru,wh=fh,Oh=vh,Sh=new _h.AttributeReference("key");function xh(e,t,r){return _h.TypeValidators.Number.is(t)&&t>=0&&t<e.variations.length?Oh.default.forSuccess(e.variations[t],r,t):Oh.default.forError(wh.default.MalformedFlag,"Invalid variation index in flag")}Eh.getVariation=xh,Eh.getOffVariation=function(e,t){return _h.TypeValidators.Number.is(e.offVariation)?xh(e,e.offVariation,t):Oh.default.forSuccess(null,t)},Eh.getBucketBy=function(e,t){var r;return null!==(r=e?void 0:t)&&void 0!==r?r:Sh};var Ph={};Object.defineProperty(Ph,"__esModule",{value:!0});const kh=ru,Ih=Eh,Ah=ph,Rh=uh;function Mh(e,t,r){const i=r.key(t.contextKind);if(void 0!==i){if(t.values.indexOf(i)>=0)return(0,Ih.getVariation)(e,t.variation,Ah.default.TargetMatch)}}Ph.default=function(e,t){var r;return(null===(r=e.contextTargets)||void 0===r?void 0:r.length)?(0,Rh.firstResult)(e.contextTargets,(r=>{if(!r.contextKind||r.contextKind===kh.Context.userKind){const i=(e.targets||[]).find((e=>e.variation===r.variation));return i?Mh(e,i,t):void 0}return Mh(e,r,t)})):(0,Rh.firstResult)(e.targets,(r=>Mh(e,r,t)))};var Th={};Object.defineProperty(Th,"__esModule",{value:!0});Th.default=class{constructor(e){this.crypto=e}sha1Hex(e){const t=this.crypto.createHash("sha1");return t.update(e),t.digest("hex")}bucket(e,t,r,i,n="user",s){const a=function(e){return"string"==typeof e?e:Number.isInteger(e)?String(e):null}(e.valueForKind(r,n));if(null===a){return[0,e.kinds.indexOf(n)>=0]}const o=`${s?Number(s):`${t}.${i}`}.${a}`;return[parseInt(this.sha1Hex(o).substring(0,15),16)/0x1000000000000000,!0]}};var Dh={},jh={},Nh={exports:{}};var $h={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER||9007199254740991,RELEASE_TYPES:["major","premajor","minor","preminor","patch","prepatch","prerelease"],SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2};var Fh="object"==typeof process&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};!function(e,t){const{MAX_SAFE_COMPONENT_LENGTH:r}=$h,i=Fh,n=(t=e.exports={}).re=[],s=t.src=[],a=t.t={};let o=0;const l=(e,t,r)=>{const l=o++;i(e,l,t),a[e]=l,s[l]=t,n[l]=new RegExp(t,r?"g":void 0)};l("NUMERICIDENTIFIER","0|[1-9]\\d*"),l("NUMERICIDENTIFIERLOOSE","[0-9]+"),l("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),l("MAINVERSION",`(${s[a.NUMERICIDENTIFIER]})\\.(${s[a.NUMERICIDENTIFIER]})\\.(${s[a.NUMERICIDENTIFIER]})`),l("MAINVERSIONLOOSE",`(${s[a.NUMERICIDENTIFIERLOOSE]})\\.(${s[a.NUMERICIDENTIFIERLOOSE]})\\.(${s[a.NUMERICIDENTIFIERLOOSE]})`),l("PRERELEASEIDENTIFIER",`(?:${s[a.NUMERICIDENTIFIER]}|${s[a.NONNUMERICIDENTIFIER]})`),l("PRERELEASEIDENTIFIERLOOSE",`(?:${s[a.NUMERICIDENTIFIERLOOSE]}|${s[a.NONNUMERICIDENTIFIER]})`),l("PRERELEASE",`(?:-(${s[a.PRERELEASEIDENTIFIER]}(?:\\.${s[a.PRERELEASEIDENTIFIER]})*))`),l("PRERELEASELOOSE",`(?:-?(${s[a.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${s[a.PRERELEASEIDENTIFIERLOOSE]})*))`),l("BUILDIDENTIFIER","[0-9A-Za-z-]+"),l("BUILD",`(?:\\+(${s[a.BUILDIDENTIFIER]}(?:\\.${s[a.BUILDIDENTIFIER]})*))`),l("FULLPLAIN",`v?${s[a.MAINVERSION]}${s[a.PRERELEASE]}?${s[a.BUILD]}?`),l("FULL",`^${s[a.FULLPLAIN]}$`),l("LOOSEPLAIN",`[v=\\s]*${s[a.MAINVERSIONLOOSE]}${s[a.PRERELEASELOOSE]}?${s[a.BUILD]}?`),l("LOOSE",`^${s[a.LOOSEPLAIN]}$`),l("GTLT","((?:<|>)?=?)"),l("XRANGEIDENTIFIERLOOSE",`${s[a.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),l("XRANGEIDENTIFIER",`${s[a.NUMERICIDENTIFIER]}|x|X|\\*`),l("XRANGEPLAIN",`[v=\\s]*(${s[a.XRANGEIDENTIFIER]})(?:\\.(${s[a.XRANGEIDENTIFIER]})(?:\\.(${s[a.XRANGEIDENTIFIER]})(?:${s[a.PRERELEASE]})?${s[a.BUILD]}?)?)?`),l("XRANGEPLAINLOOSE",`[v=\\s]*(${s[a.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[a.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[a.XRANGEIDENTIFIERLOOSE]})(?:${s[a.PRERELEASELOOSE]})?${s[a.BUILD]}?)?)?`),l("XRANGE",`^${s[a.GTLT]}\\s*${s[a.XRANGEPLAIN]}$`),l("XRANGELOOSE",`^${s[a.GTLT]}\\s*${s[a.XRANGEPLAINLOOSE]}$`),l("COERCE",`(^|[^\\d])(\\d{1,${r}})(?:\\.(\\d{1,${r}}))?(?:\\.(\\d{1,${r}}))?(?:$|[^\\d])`),l("COERCERTL",s[a.COERCE],!0),l("LONETILDE","(?:~>?)"),l("TILDETRIM",`(\\s*)${s[a.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",l("TILDE",`^${s[a.LONETILDE]}${s[a.XRANGEPLAIN]}$`),l("TILDELOOSE",`^${s[a.LONETILDE]}${s[a.XRANGEPLAINLOOSE]}$`),l("LONECARET","(?:\\^)"),l("CARETTRIM",`(\\s*)${s[a.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",l("CARET",`^${s[a.LONECARET]}${s[a.XRANGEPLAIN]}$`),l("CARETLOOSE",`^${s[a.LONECARET]}${s[a.XRANGEPLAINLOOSE]}$`),l("COMPARATORLOOSE",`^${s[a.GTLT]}\\s*(${s[a.LOOSEPLAIN]})$|^$`),l("COMPARATOR",`^${s[a.GTLT]}\\s*(${s[a.FULLPLAIN]})$|^$`),l("COMPARATORTRIM",`(\\s*)${s[a.GTLT]}\\s*(${s[a.LOOSEPLAIN]}|${s[a.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",l("HYPHENRANGE",`^\\s*(${s[a.XRANGEPLAIN]})\\s+-\\s+(${s[a.XRANGEPLAIN]})\\s*$`),l("HYPHENRANGELOOSE",`^\\s*(${s[a.XRANGEPLAINLOOSE]})\\s+-\\s+(${s[a.XRANGEPLAINLOOSE]})\\s*$`),l("STAR","(<|>)?=?\\s*\\*"),l("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),l("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")}(Nh,Nh.exports);var Lh=Nh.exports;const Ch=Object.freeze({loose:!0}),Bh=Object.freeze({});var Vh=e=>e?"object"!=typeof e?Ch:e:Bh;const Uh=/^[0-9]+$/,zh=(e,t)=>{const r=Uh.test(e),i=Uh.test(t);return r&&i&&(e=+e,t=+t),e===t?0:r&&!i?-1:i&&!r?1:e<t?-1:1};var Kh={compareIdentifiers:zh,rcompareIdentifiers:(e,t)=>zh(t,e)};const Hh=Fh,{MAX_LENGTH:Gh,MAX_SAFE_INTEGER:qh}=$h,{re:Wh,t:Xh}=Lh,Jh=Vh,{compareIdentifiers:Yh}=Kh;var Zh=class e{constructor(t,r){if(r=Jh(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if("string"!=typeof t)throw new TypeError(`Invalid Version: ${t}`);if(t.length>Gh)throw new TypeError(`version is longer than ${Gh} characters`);Hh("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;const i=t.trim().match(r.loose?Wh[Xh.LOOSE]:Wh[Xh.FULL]);if(!i)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+i[1],this.minor=+i[2],this.patch=+i[3],this.major>qh||this.major<0)throw new TypeError("Invalid major version");if(this.minor>qh||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>qh||this.patch<0)throw new TypeError("Invalid patch version");i[4]?this.prerelease=i[4].split(".").map((e=>{if(/^[0-9]+$/.test(e)){const t=+e;if(t>=0&&t<qh)return t}return e})):this.prerelease=[],this.build=i[5]?i[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(Hh("SemVer.compare",this.version,this.options,t),!(t instanceof e)){if("string"==typeof t&&t===this.version)return 0;t=new e(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof e||(t=new e(t,this.options)),Yh(this.major,t.major)||Yh(this.minor,t.minor)||Yh(this.patch,t.patch)}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{const e=this.prerelease[r],i=t.prerelease[r];if(Hh("prerelease compare",r,e,i),void 0===e&&void 0===i)return 0;if(void 0===i)return 1;if(void 0===e)return-1;if(e!==i)return Yh(e,i)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{const e=this.build[r],i=t.build[r];if(Hh("prerelease compare",r,e,i),void 0===e&&void 0===i)return 0;if(void 0===i)return 1;if(void 0===e)return-1;if(e!==i)return Yh(e,i)}while(++r)}inc(e,t,r){switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t,r);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t,r);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t,r),this.inc("pre",t,r);break;case"prerelease":0===this.prerelease.length&&this.inc("patch",t,r),this.inc("pre",t,r);break;case"major":0===this.minor&&0===this.patch&&0!==this.prerelease.length||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":0===this.patch&&0!==this.prerelease.length||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":0===this.prerelease.length&&this.patch++,this.prerelease=[];break;case"pre":if(0===this.prerelease.length)this.prerelease=[0];else{let e=this.prerelease.length;for(;--e>=0;)"number"==typeof this.prerelease[e]&&(this.prerelease[e]++,e=-2);-1===e&&this.prerelease.push(0)}if(t){const e=Number(r)?1:0;0===Yh(this.prerelease[0],t)?isNaN(this.prerelease[1])&&(this.prerelease=[t,e]):this.prerelease=[t,e]}break;default:throw new Error(`invalid increment argument: ${e}`)}return this.format(),this.raw=this.version,this}};const{MAX_LENGTH:Qh}=$h,ef=Zh;var tf=(e,t)=>{if(e instanceof ef)return e;if("string"!=typeof e)return null;if(e.length>Qh)return null;try{return new ef(e,t)}catch(e){return null}};const rf=tf;var nf=(e,t)=>{const r=rf(e,t);return r?r.version:null};const sf=tf;var af=(e,t)=>{const r=sf(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};const of=Zh;var lf=(e,t,r,i,n)=>{"string"==typeof r&&(n=i,i=r,r=void 0);try{return new of(e instanceof of?e.version:e,r).inc(t,i,n).version}catch(e){return null}};const uf=Zh;var cf=(e,t,r)=>new uf(e,r).compare(new uf(t,r));const df=cf;var hf=(e,t,r)=>0===df(e,t,r);const ff=tf,vf=hf;var pf=(e,t)=>{const r=ff(e),i=ff(t);if(vf(r,i))return null;{const e=r.prerelease.length||i.prerelease.length,t=e?"pre":"",n=e?"prerelease":"";if(r.major!==i.major)return t+"major";if(r.minor!==i.minor)return t+"minor";if(r.patch!==i.patch)return t+"patch";if(!r.prerelease.length||!i.prerelease.length){if(r.patch)return"patch";if(r.minor)return"minor";if(r.major)return"major"}return n}};const gf=Zh;var yf=(e,t)=>new gf(e,t).major;const mf=Zh;var bf=(e,t)=>new mf(e,t).minor;const Ef=Zh;var _f=(e,t)=>new Ef(e,t).patch;const wf=tf;var Of=(e,t)=>{const r=wf(e,t);return r&&r.prerelease.length?r.prerelease:null};const Sf=cf;var xf=(e,t,r)=>Sf(t,e,r);const Pf=cf;var kf=(e,t)=>Pf(e,t,!0);const If=Zh;var Af=(e,t,r)=>{const i=new If(e,r),n=new If(t,r);return i.compare(n)||i.compareBuild(n)};const Rf=Af;var Mf=(e,t)=>e.sort(((e,r)=>Rf(e,r,t)));const Tf=Af;var Df=(e,t)=>e.sort(((e,r)=>Tf(r,e,t)));const jf=cf;var Nf=(e,t,r)=>jf(e,t,r)>0;const $f=cf;var Ff=(e,t,r)=>$f(e,t,r)<0;const Lf=cf;var Cf=(e,t,r)=>0!==Lf(e,t,r);const Bf=cf;var Vf=(e,t,r)=>Bf(e,t,r)>=0;const Uf=cf;var zf=(e,t,r)=>Uf(e,t,r)<=0;const Kf=hf,Hf=Cf,Gf=Nf,qf=Vf,Wf=Ff,Xf=zf;var Jf=(e,t,r,i)=>{switch(t){case"===":return"object"==typeof e&&(e=e.version),"object"==typeof r&&(r=r.version),e===r;case"!==":return"object"==typeof e&&(e=e.version),"object"==typeof r&&(r=r.version),e!==r;case"":case"=":case"==":return Kf(e,r,i);case"!=":return Hf(e,r,i);case">":return Gf(e,r,i);case">=":return qf(e,r,i);case"<":return Wf(e,r,i);case"<=":return Xf(e,r,i);default:throw new TypeError(`Invalid operator: ${t}`)}};const Yf=Zh,Zf=tf,{re:Qf,t:ev}=Lh;var tv,rv,iv,nv,sv,av,ov,lv,uv,cv,dv=(e,t)=>{if(e instanceof Yf)return e;if("number"==typeof e&&(e=String(e)),"string"!=typeof e)return null;let r=null;if((t=t||{}).rtl){let t;for(;(t=Qf[ev.COERCERTL].exec(e))&&(!r||r.index+r[0].length!==e.length);)r&&t.index+t[0].length===r.index+r[0].length||(r=t),Qf[ev.COERCERTL].lastIndex=t.index+t[1].length+t[2].length;Qf[ev.COERCERTL].lastIndex=-1}else r=e.match(Qf[ev.COERCE]);return null===r?null:Zf(`${r[2]}.${r[3]||"0"}.${r[4]||"0"}`,t)};function hv(){if(nv)return iv;function e(t){var r=this;if(r instanceof e||(r=new e),r.tail=null,r.head=null,r.length=0,t&&"function"==typeof t.forEach)t.forEach((function(e){r.push(e)}));else if(arguments.length>0)for(var i=0,n=arguments.length;i<n;i++)r.push(arguments[i]);return r}function t(e,t,r){var i=t===e.head?new n(r,null,t,e):new n(r,t,t.next,e);return null===i.next&&(e.tail=i),null===i.prev&&(e.head=i),e.length++,i}function r(e,t){e.tail=new n(t,e.tail,null,e),e.head||(e.head=e.tail),e.length++}function i(e,t){e.head=new n(t,null,e.head,e),e.tail||(e.tail=e.head),e.length++}function n(e,t,r,i){if(!(this instanceof n))return new n(e,t,r,i);this.list=i,this.value=e,t?(t.next=this,this.prev=t):this.prev=null,r?(r.prev=this,this.next=r):this.next=null}nv=1,iv=e,e.Node=n,e.create=e,e.prototype.removeNode=function(e){if(e.list!==this)throw new Error("removing node which does not belong to this list");var t=e.next,r=e.prev;return t&&(t.prev=r),r&&(r.next=t),e===this.head&&(this.head=t),e===this.tail&&(this.tail=r),e.list.length--,e.next=null,e.prev=null,e.list=null,t},e.prototype.unshiftNode=function(e){if(e!==this.head){e.list&&e.list.removeNode(e);var t=this.head;e.list=this,e.next=t,t&&(t.prev=e),this.head=e,this.tail||(this.tail=e),this.length++}},e.prototype.pushNode=function(e){if(e!==this.tail){e.list&&e.list.removeNode(e);var t=this.tail;e.list=this,e.prev=t,t&&(t.next=e),this.tail=e,this.head||(this.head=e),this.length++}},e.prototype.push=function(){for(var e=0,t=arguments.length;e<t;e++)r(this,arguments[e]);return this.length},e.prototype.unshift=function(){for(var e=0,t=arguments.length;e<t;e++)i(this,arguments[e]);return this.length},e.prototype.pop=function(){if(this.tail){var e=this.tail.value;return this.tail=this.tail.prev,this.tail?this.tail.next=null:this.head=null,this.length--,e}},e.prototype.shift=function(){if(this.head){var e=this.head.value;return this.head=this.head.next,this.head?this.head.prev=null:this.tail=null,this.length--,e}},e.prototype.forEach=function(e,t){t=t||this;for(var r=this.head,i=0;null!==r;i++)e.call(t,r.value,i,this),r=r.next},e.prototype.forEachReverse=function(e,t){t=t||this;for(var r=this.tail,i=this.length-1;null!==r;i--)e.call(t,r.value,i,this),r=r.prev},e.prototype.get=function(e){for(var t=0,r=this.head;null!==r&&t<e;t++)r=r.next;if(t===e&&null!==r)return r.value},e.prototype.getReverse=function(e){for(var t=0,r=this.tail;null!==r&&t<e;t++)r=r.prev;if(t===e&&null!==r)return r.value},e.prototype.map=function(t,r){r=r||this;for(var i=new e,n=this.head;null!==n;)i.push(t.call(r,n.value,this)),n=n.next;return i},e.prototype.mapReverse=function(t,r){r=r||this;for(var i=new e,n=this.tail;null!==n;)i.push(t.call(r,n.value,this)),n=n.prev;return i},e.prototype.reduce=function(e,t){var r,i=this.head;if(arguments.length>1)r=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");i=this.head.next,r=this.head.value}for(var n=0;null!==i;n++)r=e(r,i.value,n),i=i.next;return r},e.prototype.reduceReverse=function(e,t){var r,i=this.tail;if(arguments.length>1)r=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");i=this.tail.prev,r=this.tail.value}for(var n=this.length-1;null!==i;n--)r=e(r,i.value,n),i=i.prev;return r},e.prototype.toArray=function(){for(var e=new Array(this.length),t=0,r=this.head;null!==r;t++)e[t]=r.value,r=r.next;return e},e.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,r=this.tail;null!==r;t++)e[t]=r.value,r=r.prev;return e},e.prototype.slice=function(t,r){(r=r||this.length)<0&&(r+=this.length),(t=t||0)<0&&(t+=this.length);var i=new e;if(r<t||r<0)return i;t<0&&(t=0),r>this.length&&(r=this.length);for(var n=0,s=this.head;null!==s&&n<t;n++)s=s.next;for(;null!==s&&n<r;n++,s=s.next)i.push(s.value);return i},e.prototype.sliceReverse=function(t,r){(r=r||this.length)<0&&(r+=this.length),(t=t||0)<0&&(t+=this.length);var i=new e;if(r<t||r<0)return i;t<0&&(t=0),r>this.length&&(r=this.length);for(var n=this.length,s=this.tail;null!==s&&n>r;n--)s=s.prev;for(;null!==s&&n>t;n--,s=s.prev)i.push(s.value);return i},e.prototype.splice=function(e,r,...i){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var n=0,s=this.head;null!==s&&n<e;n++)s=s.next;var a=[];for(n=0;s&&n<r;n++)a.push(s.value),s=this.removeNode(s);null===s&&(s=this.tail),s!==this.head&&s!==this.tail&&(s=s.prev);for(n=0;n<i.length;n++)s=t(this,s,i[n]);return a},e.prototype.reverse=function(){for(var e=this.head,t=this.tail,r=e;null!==r;r=r.prev){var i=r.prev;r.prev=r.next,r.next=i}return this.head=t,this.tail=e,this};try{(rv?tv:(rv=1,tv=function(e){e.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}))(e)}catch(e){}return iv}function fv(){if(lv)return ov;lv=1;class e{constructor(t,r){if(r=i(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof n)return this.raw=t.value,this.set=[[t]],this.format(),this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t,this.set=t.split("||").map((e=>this.parseRange(e.trim()))).filter((e=>e.length)),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${t}`);if(this.set.length>1){const e=this.set[0];if(this.set=this.set.filter((e=>!v(e[0]))),0===this.set.length)this.set=[e];else if(this.set.length>1)for(const e of this.set)if(1===e.length&&p(e[0])){this.set=[e];break}}this.format()}format(){return this.range=this.set.map((e=>e.join(" ").trim())).join("||").trim(),this.range}toString(){return this.range}parseRange(e){e=e.trim();const t=((this.options.includePrerelease&&h)|(this.options.loose&&f))+":"+e,i=r.get(t);if(i)return i;const a=this.options.loose,p=a?o[l.HYPHENRANGELOOSE]:o[l.HYPHENRANGE];e=e.replace(p,k(this.options.includePrerelease)),s("hyphen replace",e),e=e.replace(o[l.COMPARATORTRIM],u),s("comparator trim",e);let g=(e=(e=(e=e.replace(o[l.TILDETRIM],c)).replace(o[l.CARETTRIM],d)).split(/\s+/).join(" ")).split(" ").map((e=>y(e,this.options))).join(" ").split(/\s+/).map((e=>P(e,this.options)));a&&(g=g.filter((e=>(s("loose invalid filter",e,this.options),!!e.match(o[l.COMPARATORLOOSE]))))),s("range list",g);const m=new Map,b=g.map((e=>new n(e,this.options)));for(const e of b){if(v(e))return[e];m.set(e.value,e)}m.size>1&&m.has("")&&m.delete("");const E=[...m.values()];return r.set(t,E),E}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some((e=>g(e,r)&&t.set.some((t=>g(t,r)&&e.every((e=>t.every((t=>e.intersects(t,r)))))))))}test(e){if(!e)return!1;if("string"==typeof e)try{e=new a(e,this.options)}catch(e){return!1}for(let t=0;t<this.set.length;t++)if(I(this.set[t],e,this.options))return!0;return!1}}ov=e;const t=function(){if(av)return sv;av=1;const e=hv(),t=Symbol("max"),r=Symbol("length"),i=Symbol("lengthCalculator"),n=Symbol("allowStale"),s=Symbol("maxAge"),a=Symbol("dispose"),o=Symbol("noDisposeOnSet"),l=Symbol("lruList"),u=Symbol("cache"),c=Symbol("updateAgeOnGet"),d=()=>1,h=(e,t,r)=>{const i=e[u].get(t);if(i){const t=i.value;if(f(e,t)){if(p(e,i),!e[n])return}else r&&(e[c]&&(i.value.now=Date.now()),e[l].unshiftNode(i));return t.value}},f=(e,t)=>{if(!t||!t.maxAge&&!e[s])return!1;const r=Date.now()-t.now;return t.maxAge?r>t.maxAge:e[s]&&r>e[s]},v=e=>{if(e[r]>e[t])for(let i=e[l].tail;e[r]>e[t]&&null!==i;){const t=i.prev;p(e,i),i=t}},p=(e,t)=>{if(t){const i=t.value;e[a]&&e[a](i.key,i.value),e[r]-=i.length,e[u].delete(i.key),e[l].removeNode(t)}};class g{constructor(e,t,r,i,n){this.key=e,this.value=t,this.length=r,this.now=i,this.maxAge=n||0}}const y=(e,t,r,i)=>{let s=r.value;f(e,s)&&(p(e,r),e[n]||(s=void 0)),s&&t.call(i,s.value,s.key,e)};return sv=class{constructor(e){if("number"==typeof e&&(e={max:e}),e||(e={}),e.max&&("number"!=typeof e.max||e.max<0))throw new TypeError("max must be a non-negative number");this[t]=e.max||1/0;const r=e.length||d;if(this[i]="function"!=typeof r?d:r,this[n]=e.stale||!1,e.maxAge&&"number"!=typeof e.maxAge)throw new TypeError("maxAge must be a number");this[s]=e.maxAge||0,this[a]=e.dispose,this[o]=e.noDisposeOnSet||!1,this[c]=e.updateAgeOnGet||!1,this.reset()}set max(e){if("number"!=typeof e||e<0)throw new TypeError("max must be a non-negative number");this[t]=e||1/0,v(this)}get max(){return this[t]}set allowStale(e){this[n]=!!e}get allowStale(){return this[n]}set maxAge(e){if("number"!=typeof e)throw new TypeError("maxAge must be a non-negative number");this[s]=e,v(this)}get maxAge(){return this[s]}set lengthCalculator(e){"function"!=typeof e&&(e=d),e!==this[i]&&(this[i]=e,this[r]=0,this[l].forEach((e=>{e.length=this[i](e.value,e.key),this[r]+=e.length}))),v(this)}get lengthCalculator(){return this[i]}get length(){return this[r]}get itemCount(){return this[l].length}rforEach(e,t){t=t||this;for(let r=this[l].tail;null!==r;){const i=r.prev;y(this,e,r,t),r=i}}forEach(e,t){t=t||this;for(let r=this[l].head;null!==r;){const i=r.next;y(this,e,r,t),r=i}}keys(){return this[l].toArray().map((e=>e.key))}values(){return this[l].toArray().map((e=>e.value))}reset(){this[a]&&this[l]&&this[l].length&&this[l].forEach((e=>this[a](e.key,e.value))),this[u]=new Map,this[l]=new e,this[r]=0}dump(){return this[l].map((e=>!f(this,e)&&{k:e.key,v:e.value,e:e.now+(e.maxAge||0)})).toArray().filter((e=>e))}dumpLru(){return this[l]}set(e,n,c){if((c=c||this[s])&&"number"!=typeof c)throw new TypeError("maxAge must be a number");const d=c?Date.now():0,h=this[i](n,e);if(this[u].has(e)){if(h>this[t])return p(this,this[u].get(e)),!1;const i=this[u].get(e).value;return this[a]&&(this[o]||this[a](e,i.value)),i.now=d,i.maxAge=c,i.value=n,this[r]+=h-i.length,i.length=h,this.get(e),v(this),!0}const f=new g(e,n,h,d,c);return f.length>this[t]?(this[a]&&this[a](e,n),!1):(this[r]+=f.length,this[l].unshift(f),this[u].set(e,this[l].head),v(this),!0)}has(e){if(!this[u].has(e))return!1;const t=this[u].get(e).value;return!f(this,t)}get(e){return h(this,e,!0)}peek(e){return h(this,e,!1)}pop(){const e=this[l].tail;return e?(p(this,e),e.value):null}del(e){p(this,this[u].get(e))}load(e){this.reset();const t=Date.now();for(let r=e.length-1;r>=0;r--){const i=e[r],n=i.e||0;if(0===n)this.set(i.k,i.v);else{const e=n-t;e>0&&this.set(i.k,i.v,e)}}}prune(){this[u].forEach(((e,t)=>h(this,t,!1)))}},sv}(),r=new t({max:1e3}),i=Vh,n=vv(),s=Fh,a=Zh,{re:o,t:l,comparatorTrimReplace:u,tildeTrimReplace:c,caretTrimReplace:d}=Lh,{FLAG_INCLUDE_PRERELEASE:h,FLAG_LOOSE:f}=$h,v=e=>"<0.0.0-0"===e.value,p=e=>""===e.value,g=(e,t)=>{let r=!0;const i=e.slice();let n=i.pop();for(;r&&i.length;)r=i.every((e=>n.intersects(e,t))),n=i.pop();return r},y=(e,t)=>(s("comp",e,t),e=_(e,t),s("caret",e),e=b(e,t),s("tildes",e),e=O(e,t),s("xrange",e),e=x(e,t),s("stars",e),e),m=e=>!e||"x"===e.toLowerCase()||"*"===e,b=(e,t)=>e.trim().split(/\s+/).map((e=>E(e,t))).join(" "),E=(e,t)=>{const r=t.loose?o[l.TILDELOOSE]:o[l.TILDE];return e.replace(r,((t,r,i,n,a)=>{let o;return s("tilde",e,t,r,i,n,a),m(r)?o="":m(i)?o=`>=${r}.0.0 <${+r+1}.0.0-0`:m(n)?o=`>=${r}.${i}.0 <${r}.${+i+1}.0-0`:a?(s("replaceTilde pr",a),o=`>=${r}.${i}.${n}-${a} <${r}.${+i+1}.0-0`):o=`>=${r}.${i}.${n} <${r}.${+i+1}.0-0`,s("tilde return",o),o}))},_=(e,t)=>e.trim().split(/\s+/).map((e=>w(e,t))).join(" "),w=(e,t)=>{s("caret",e,t);const r=t.loose?o[l.CARETLOOSE]:o[l.CARET],i=t.includePrerelease?"-0":"";return e.replace(r,((t,r,n,a,o)=>{let l;return s("caret",e,t,r,n,a,o),m(r)?l="":m(n)?l=`>=${r}.0.0${i} <${+r+1}.0.0-0`:m(a)?l="0"===r?`>=${r}.${n}.0${i} <${r}.${+n+1}.0-0`:`>=${r}.${n}.0${i} <${+r+1}.0.0-0`:o?(s("replaceCaret pr",o),l="0"===r?"0"===n?`>=${r}.${n}.${a}-${o} <${r}.${n}.${+a+1}-0`:`>=${r}.${n}.${a}-${o} <${r}.${+n+1}.0-0`:`>=${r}.${n}.${a}-${o} <${+r+1}.0.0-0`):(s("no pr"),l="0"===r?"0"===n?`>=${r}.${n}.${a}${i} <${r}.${n}.${+a+1}-0`:`>=${r}.${n}.${a}${i} <${r}.${+n+1}.0-0`:`>=${r}.${n}.${a} <${+r+1}.0.0-0`),s("caret return",l),l}))},O=(e,t)=>(s("replaceXRanges",e,t),e.split(/\s+/).map((e=>S(e,t))).join(" ")),S=(e,t)=>{e=e.trim();const r=t.loose?o[l.XRANGELOOSE]:o[l.XRANGE];return e.replace(r,((r,i,n,a,o,l)=>{s("xRange",e,r,i,n,a,o,l);const u=m(n),c=u||m(a),d=c||m(o),h=d;return"="===i&&h&&(i=""),l=t.includePrerelease?"-0":"",u?r=">"===i||"<"===i?"<0.0.0-0":"*":i&&h?(c&&(a=0),o=0,">"===i?(i=">=",c?(n=+n+1,a=0,o=0):(a=+a+1,o=0)):"<="===i&&(i="<",c?n=+n+1:a=+a+1),"<"===i&&(l="-0"),r=`${i+n}.${a}.${o}${l}`):c?r=`>=${n}.0.0${l} <${+n+1}.0.0-0`:d&&(r=`>=${n}.${a}.0${l} <${n}.${+a+1}.0-0`),s("xRange return",r),r}))},x=(e,t)=>(s("replaceStars",e,t),e.trim().replace(o[l.STAR],"")),P=(e,t)=>(s("replaceGTE0",e,t),e.trim().replace(o[t.includePrerelease?l.GTE0PRE:l.GTE0],"")),k=e=>(t,r,i,n,s,a,o,l,u,c,d,h,f)=>`${r=m(i)?"":m(n)?`>=${i}.0.0${e?"-0":""}`:m(s)?`>=${i}.${n}.0${e?"-0":""}`:a?`>=${r}`:`>=${r}${e?"-0":""}`} ${l=m(u)?"":m(c)?`<${+u+1}.0.0-0`:m(d)?`<${u}.${+c+1}.0-0`:h?`<=${u}.${c}.${d}-${h}`:e?`<${u}.${c}.${+d+1}-0`:`<=${l}`}`.trim(),I=(e,t,r)=>{for(let r=0;r<e.length;r++)if(!e[r].test(t))return!1;if(t.prerelease.length&&!r.includePrerelease){for(let r=0;r<e.length;r++)if(s(e[r].semver),e[r].semver!==n.ANY&&e[r].semver.prerelease.length>0){const i=e[r].semver;if(i.major===t.major&&i.minor===t.minor&&i.patch===t.patch)return!0}return!1}return!0};return ov}function vv(){if(cv)return uv;cv=1;const e=Symbol("SemVer ANY");class t{static get ANY(){return e}constructor(i,n){if(n=r(n),i instanceof t){if(i.loose===!!n.loose)return i;i=i.value}a("comparator",i,n),this.options=n,this.loose=!!n.loose,this.parse(i),this.semver===e?this.value="":this.value=this.operator+this.semver.version,a("comp",this)}parse(t){const r=this.options.loose?i[n.COMPARATORLOOSE]:i[n.COMPARATOR],s=t.match(r);if(!s)throw new TypeError(`Invalid comparator: ${t}`);this.operator=void 0!==s[1]?s[1]:"","="===this.operator&&(this.operator=""),s[2]?this.semver=new o(s[2],this.options.loose):this.semver=e}toString(){return this.value}test(t){if(a("Comparator.test",t,this.options.loose),this.semver===e||t===e)return!0;if("string"==typeof t)try{t=new o(t,this.options)}catch(e){return!1}return s(t,this.operator,this.semver,this.options)}intersects(e,i){if(!(e instanceof t))throw new TypeError("a Comparator is required");return""===this.operator?""===this.value||new l(e.value,i).test(this.value):""===e.operator?""===e.value||new l(this.value,i).test(e.semver):(!(i=r(i)).includePrerelease||"<0.0.0-0"!==this.value&&"<0.0.0-0"!==e.value)&&(!(!i.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0")))&&(!(!this.operator.startsWith(">")||!e.operator.startsWith(">"))||(!(!this.operator.startsWith("<")||!e.operator.startsWith("<"))||(!(this.semver.version!==e.semver.version||!this.operator.includes("=")||!e.operator.includes("="))||(!!(s(this.semver,"<",e.semver,i)&&this.operator.startsWith(">")&&e.operator.startsWith("<"))||!!(s(this.semver,">",e.semver,i)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))))))}}uv=t;const r=Vh,{re:i,t:n}=Lh,s=Jf,a=Fh,o=Zh,l=fv();return uv}const pv=fv();var gv=(e,t,r)=>{try{t=new pv(t,r)}catch(e){return!1}return t.test(e)};const yv=fv();var mv=(e,t)=>new yv(e,t).set.map((e=>e.map((e=>e.value)).join(" ").trim().split(" ")));const bv=Zh,Ev=fv();var _v=(e,t,r)=>{let i=null,n=null,s=null;try{s=new Ev(t,r)}catch(e){return null}return e.forEach((e=>{s.test(e)&&(i&&-1!==n.compare(e)||(i=e,n=new bv(i,r)))})),i};const wv=Zh,Ov=fv();var Sv=(e,t,r)=>{let i=null,n=null,s=null;try{s=new Ov(t,r)}catch(e){return null}return e.forEach((e=>{s.test(e)&&(i&&1!==n.compare(e)||(i=e,n=new wv(i,r)))})),i};const xv=Zh,Pv=fv(),kv=Nf;var Iv=(e,t)=>{e=new Pv(e,t);let r=new xv("0.0.0");if(e.test(r))return r;if(r=new xv("0.0.0-0"),e.test(r))return r;r=null;for(let t=0;t<e.set.length;++t){const i=e.set[t];let n=null;i.forEach((e=>{const t=new xv(e.semver.version);switch(e.operator){case">":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":n&&!kv(t,n)||(n=t);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${e.operator}`)}})),!n||r&&!kv(r,n)||(r=n)}return r&&e.test(r)?r:null};const Av=fv();var Rv=(e,t)=>{try{return new Av(e,t).range||"*"}catch(e){return null}};const Mv=Zh,Tv=vv(),{ANY:Dv}=Tv,jv=fv(),Nv=gv,$v=Nf,Fv=Ff,Lv=zf,Cv=Vf;var Bv=(e,t,r,i)=>{let n,s,a,o,l;switch(e=new Mv(e,i),t=new jv(t,i),r){case">":n=$v,s=Lv,a=Fv,o=">",l=">=";break;case"<":n=Fv,s=Cv,a=$v,o="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Nv(e,t,i))return!1;for(let r=0;r<t.set.length;++r){const u=t.set[r];let c=null,d=null;if(u.forEach((e=>{e.semver===Dv&&(e=new Tv(">=0.0.0")),c=c||e,d=d||e,n(e.semver,c.semver,i)?c=e:a(e.semver,d.semver,i)&&(d=e)})),c.operator===o||c.operator===l)return!1;if((!d.operator||d.operator===o)&&s(e,d.semver))return!1;if(d.operator===l&&a(e,d.semver))return!1}return!0};const Vv=Bv;var Uv=(e,t,r)=>Vv(e,t,">",r);const zv=Bv;var Kv=(e,t,r)=>zv(e,t,"<",r);const Hv=fv();var Gv=(e,t,r)=>(e=new Hv(e,r),t=new Hv(t,r),e.intersects(t,r));const qv=gv,Wv=cf;const Xv=fv(),Jv=vv(),{ANY:Yv}=Jv,Zv=gv,Qv=cf,ep=[new Jv(">=0.0.0-0")],tp=[new Jv(">=0.0.0")],rp=(e,t,r)=>{if(e===t)return!0;if(1===e.length&&e[0].semver===Yv){if(1===t.length&&t[0].semver===Yv)return!0;e=r.includePrerelease?ep:tp}if(1===t.length&&t[0].semver===Yv){if(r.includePrerelease)return!0;t=tp}const i=new Set;let n,s,a,o,l,u,c;for(const t of e)">"===t.operator||">="===t.operator?n=ip(n,t,r):"<"===t.operator||"<="===t.operator?s=np(s,t,r):i.add(t.semver);if(i.size>1)return null;if(n&&s){if(a=Qv(n.semver,s.semver,r),a>0)return null;if(0===a&&(">="!==n.operator||"<="!==s.operator))return null}for(const e of i){if(n&&!Zv(e,String(n),r))return null;if(s&&!Zv(e,String(s),r))return null;for(const i of t)if(!Zv(e,String(i),r))return!1;return!0}let d=!(!s||r.includePrerelease||!s.semver.prerelease.length)&&s.semver,h=!(!n||r.includePrerelease||!n.semver.prerelease.length)&&n.semver;d&&1===d.prerelease.length&&"<"===s.operator&&0===d.prerelease[0]&&(d=!1);for(const e of t){if(c=c||">"===e.operator||">="===e.operator,u=u||"<"===e.operator||"<="===e.operator,n)if(h&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===h.major&&e.semver.minor===h.minor&&e.semver.patch===h.patch&&(h=!1),">"===e.operator||">="===e.operator){if(o=ip(n,e,r),o===e&&o!==n)return!1}else if(">="===n.operator&&!Zv(n.semver,String(e),r))return!1;if(s)if(d&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===d.major&&e.semver.minor===d.minor&&e.semver.patch===d.patch&&(d=!1),"<"===e.operator||"<="===e.operator){if(l=np(s,e,r),l===e&&l!==s)return!1}else if("<="===s.operator&&!Zv(s.semver,String(e),r))return!1;if(!e.operator&&(s||n)&&0!==a)return!1}return!(n&&u&&!s&&0!==a)&&(!(s&&c&&!n&&0!==a)&&(!h&&!d))},ip=(e,t,r)=>{if(!e)return t;const i=Qv(e.semver,t.semver,r);return i>0?e:i<0||">"===t.operator&&">="===e.operator?t:e},np=(e,t,r)=>{if(!e)return t;const i=Qv(e.semver,t.semver,r);return i<0?e:i>0||"<"===t.operator&&"<="===e.operator?t:e};var sp=(e,t,r={})=>{if(e===t)return!0;e=new Xv(e,r),t=new Xv(t,r);let i=!1;e:for(const n of e.set){for(const e of t.set){const t=rp(n,e,r);if(i=i||null!==t,t)continue e}if(i)return!1}return!0};const ap=Lh,op=$h,lp=Zh,up=Kh,cp=(e,t,r)=>{const i=[];let n=null,s=null;const a=e.sort(((e,t)=>Wv(e,t,r)));for(const e of a){qv(e,t,r)?(s=e,n||(n=e)):(s&&i.push([n,s]),s=null,n=null)}n&&i.push([n,null]);const o=[];for(const[e,t]of i)e===t?o.push(e):t||e!==a[0]?t?e===a[0]?o.push(`<=${t}`):o.push(`${e} - ${t}`):o.push(`>=${e}`):o.push("*");const l=o.join(" || "),u="string"==typeof t.raw?t.raw:String(t);return l.length<u.length?l:t};var dp={parse:tf,valid:nf,clean:af,inc:lf,diff:pf,major:yf,minor:bf,patch:_f,prerelease:Of,compare:cf,rcompare:xf,compareLoose:kf,compareBuild:Af,sort:Mf,rsort:Df,gt:Nf,lt:Ff,eq:hf,neq:Cf,gte:Vf,lte:zf,cmp:Jf,coerce:dv,Comparator:vv(),Range:fv(),satisfies:gv,toComparators:mv,maxSatisfying:_v,minSatisfying:Sv,minVersion:Iv,validRange:Rv,outside:Bv,gtr:Uv,ltr:Kv,intersects:Gv,simplifyRange:cp,subset:sp,SemVer:lp,re:ap.re,src:ap.src,tokens:ap.t,SEMVER_SPEC_VERSION:op.SEMVER_SPEC_VERSION,RELEASE_TYPES:op.RELEASE_TYPES,compareIdentifiers:up.compareIdentifiers,rcompareIdentifiers:up.rcompareIdentifiers};Object.defineProperty(jh,"__esModule",{value:!0});const hp=ru,fp=dp,vp=/^\d+(\.\d+)?(\.\d+)?/;function pp(e){if(hp.TypeValidators.String.is(e)&&!e.startsWith("v")){const t=(0,fp.parse)(e);if(t)return t;const r=vp.exec(e);if(r){let t=r[0];for(let e=1;e<r.length;e+=1)void 0===r[e]&&(t+=".0");return t+=e.substring(r[0].length),(0,fp.parse)(t)}}return null}function gp(e){return(t,r)=>{const i=pp(t),n=pp(r);return!!(i&&n&&e(i,n))}}function yp(e,t,r){return(i,n)=>!(!t.is(i)||!t.is(n))&&(r?e(r(i),r(n)):e(i,n))}function mp(e){return"number"==typeof e?e:Date.parse(e)}const bp={in:(e,t)=>e===t,endsWith:yp(((e,t)=>e.endsWith(t)),hp.TypeValidators.String),startsWith:yp(((e,t)=>e.startsWith(t)),hp.TypeValidators.String),matches:yp(((e,t)=>function(e,t){try{return new RegExp(e).test(t)}catch(e){return!1}}(t,e)),hp.TypeValidators.String),contains:yp(((e,t)=>e.indexOf(t)>-1),hp.TypeValidators.String),lessThan:yp(((e,t)=>e<t),hp.TypeValidators.Number),lessThanOrEqual:yp(((e,t)=>e<=t),hp.TypeValidators.Number),greaterThan:yp(((e,t)=>e>t),hp.TypeValidators.Number),greaterThanOrEqual:yp(((e,t)=>e>=t),hp.TypeValidators.Number),before:yp(((e,t)=>e<t),hp.TypeValidators.Date,mp),after:yp(((e,t)=>e>t),hp.TypeValidators.Date,mp),semVerEqual:gp(((e,t)=>0===e.compare(t))),semVerLessThan:gp(((e,t)=>e.compare(t)<0)),semVerGreaterThan:gp(((e,t)=>e.compare(t)>0))};jh.default=class{static is(e){return Object.prototype.hasOwnProperty.call(bp,e)}static execute(e,t,r){var i,n;return null!==(n=null===(i=bp[e])||void 0===i?void 0:i.call(bp,t,r))&&void 0!==n&&n}},Object.defineProperty(Dh,"__esModule",{value:!0});const Ep=jh;function _p(e,t){return e.negate?!t:t}function wp(e,t,r){return r.some((r=>Ep.default.execute(e,t,r)))}Dh.default=function(e,t){const r=t.valueForKind(e.attributeReference,e.contextKind);return null!=r&&(Array.isArray(r)?_p(e,r.some((t=>wp(e.op,t,e.values)))):_p(e,wp(e.op,r,e.values)))};var Op={};function Sp(e,t,r){if(t)for(let r=0;r<t.length;r+=1){const i=t[r],n=e.key(i.contextKind);if(n&&i.values.includes(n))return!0}if(r){const t=e.key("user");if(t&&r.includes(t))return!0}return!1}Object.defineProperty(Op,"__esModule",{value:!0}),Op.default=function(e,t){if(Sp(t,e.includedContexts,e.included))return!0;const r=Sp(t,e.excludedContexts,e.excluded);return r?!r:void 0};var xp={};Object.defineProperty(xp,"__esModule",{value:!0}),xp.default=function(e){return`${e.key}.g${e.generation}`};var Pp=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(bh,"__esModule",{value:!0});const kp=vh,Ip=Eh,Ap=ph,Rp=fh,Mp=Ph,Tp=uh,Dp=Th,jp=Dh,Np=Op,$p=xp,Fp={HEALTHY:1,STALE:2,STORE_ERROR:3,NOT_CONFIGURED:4};function Lp(e){return void 0!==e&&Fp[e]||0}function Cp(e,t){return void 0!==e&&Lp(e)>Lp(t)?e:t}class Bp{}class Vp{constructor(e){this.isMatch=e,this.error=!1}}class Up{constructor(e){this.result=e,this.error=!0,this.isMatch=!1}}bh.default=class{constructor(e,t){this.queries=t,this.bucketer=new Dp.default(e.crypto)}evaluate(e,t,r){return Pp(this,void 0,void 0,(function*(){const i=new Bp,n=yield this.evaluateInternal(e,t,i,[],r);return i.bigSegmentsStatus&&(n.detail.reason.bigSegmentsStatus=i.bigSegmentsStatus),n.events=i.events,n}))}evaluateInternal(e,t,r,i,n){return Pp(this,void 0,void 0,(function*(){if(!e.on)return(0,Ip.getOffVariation)(e,Ap.default.Off);const s=yield this.checkPrerequisites(e,t,r,i,n);if(s)return s;const a=(0,Mp.default)(e,t);if(a)return a;const o=yield this.evaluateRules(e,t,r);return o||this.variationForContext(e.fallthrough,t,e,Ap.default.Fallthrough)}))}checkPrerequisites(e,t,r,i,n){return Pp(this,void 0,void 0,(function*(){let s;if(e.prerequisites&&e.prerequisites.length)return yield(0,Tp.allSeriesAsync)(e.prerequisites,(a=>Pp(this,void 0,void 0,(function*(){var o;if(-1!==i.indexOf(a.key))return s=kp.default.forError(Rp.default.MalformedFlag,`Prerequisite of ${e.key} causing a circular reference. This is probably a temporary condition due to an incomplete update.`),!1;const l=[...i,a.key],u=yield this.queries.getFlag(a.key);if(!u)return s=(0,Ip.getOffVariation)(e,Ap.default.prerequisiteFailed(a.key)),!1;const c=yield this.evaluateInternal(u,t,r,l,n);return r.events=null!==(o=r.events)&&void 0!==o?o:[],n&&r.events.push(n.evalEvent(u,t,c.detail,null,e)),c.isError?(s=c,!1):!c.isOff&&c.detail.variationIndex===a.variation||(s=(0,Ip.getOffVariation)(e,Ap.default.prerequisiteFailed(a.key)),!1)})))),s||void 0}))}evaluateRules(e,t,r){return Pp(this,void 0,void 0,(function*(){let i;return yield(0,Tp.firstSeriesAsync)(e.rules,((n,s)=>Pp(this,void 0,void 0,(function*(){return i=yield this.ruleMatchContext(e,n,s,t,r,[]),!!i})))),i}))}clauseMatchContext(e,t,r,i){return Pp(this,void 0,void 0,(function*(){let n;if("segmentMatch"===e.op){const s=yield(0,Tp.firstSeriesAsync)(e.values,(e=>Pp(this,void 0,void 0,(function*(){const s=yield this.queries.getSegment(e);if(s){if(r.includes(s.key))return n=kp.default.forError(Rp.default.MalformedFlag,`Segment rule referencing segment ${s.key} caused a circular reference. This is probably a temporary condition due to an incomplete update`),!0;const e=[...r,null==s?void 0:s.key],a=yield this.segmentMatchContext(s,t,i,e);return a.error&&(n=a.result),a.error||a.isMatch}return!1}))));return n?new Up(n):new Vp(s)}return e.attributeReference.isValid?new Vp((0,jp.default)(e,t)):new Up(kp.default.forError(Rp.default.MalformedFlag,"Invalid attribute reference in clause"))}))}ruleMatchContext(e,t,r,i,n,s){return Pp(this,void 0,void 0,(function*(){if(!t.clauses)return;let a;const o=yield(0,Tp.allSeriesAsync)(t.clauses,(e=>Pp(this,void 0,void 0,(function*(){const t=yield this.clauseMatchContext(e,i,s,n);return a=t.result,t.error||t.isMatch}))));return a||(o?this.variationForContext(t,i,e,Ap.default.ruleMatch(t.id,r)):void 0)}))}variationForContext(e,t,r,i){if(void 0===e)return kp.default.forError(Rp.default.MalformedFlag,"Fallthrough variation undefined");if(void 0!==e.variation)return(0,Ip.getVariation)(r,e.variation,i);if(e.rollout){const{rollout:n}=e,{variations:s}=n,a="experiment"===n.kind;if(s&&s.length){const e=(0,Ip.getBucketBy)(a,n.bucketByAttributeReference);if(!e.isValid)return kp.default.forError(Rp.default.MalformedFlag,"Invalid attribute reference for bucketBy in rollout");const[o,l]=this.bucketer.bucket(t,r.key,e,r.salt||"",n.contextKind,n.seed),u=Object.assign({},i);let c=0;for(let e=0;e<s.length;e+=1){const t=s[e];if(c+=t.weight/1e5,o<c)return a&&l&&!t.untracked&&(u.inExperiment=!0),(0,Ip.getVariation)(r,t.variation,u)}const d=s[s.length-1];return a&&!d.untracked&&(u.inExperiment=!0),(0,Ip.getVariation)(r,d.variation,u)}}return kp.default.forError(Rp.default.MalformedFlag,"Variation/rollout object with no variation or rollout")}segmentRuleMatchContext(e,t,r,i,n){return Pp(this,void 0,void 0,(function*(){let s;const a=yield(0,Tp.allSeriesAsync)(t.clauses,(e=>Pp(this,void 0,void 0,(function*(){const t=yield this.clauseMatchContext(e,r,n,i);return s=t.result,t.error||t.isMatch}))));if(s)return new Up(s);if(a){if(void 0===t.weight)return new Vp(a);const i=(0,Ip.getBucketBy)(!1,t.bucketByAttributeReference);if(!i.isValid)return new Up(kp.default.forError(Rp.default.MalformedFlag,"Invalid attribute reference in clause"));const[n]=this.bucketer.bucket(r,e.key,i,e.salt||"",t.rolloutContextKind);return new Vp(n<t.weight/1e5)}return new Vp(!1)}))}simpleSegmentMatchContext(e,t,r,i){return Pp(this,void 0,void 0,(function*(){const n=(0,Np.default)(e,t);if(void 0!==n)return new Vp(n);let s;const a=yield(0,Tp.firstSeriesAsync)(e.rules,(n=>Pp(this,void 0,void 0,(function*(){const a=yield this.segmentRuleMatchContext(e,n,t,r,i);return s=a.result,a.error||a.isMatch}))));return s?new Up(s):new Vp(a)}))}segmentMatchContext(e,t,r,i){return Pp(this,void 0,void 0,(function*(){if(!e.unbounded)return this.simpleSegmentMatchContext(e,t,r,i);if(!e.generation)return r.bigSegmentsStatus=Cp(r.bigSegmentsStatus,"NOT_CONFIGURED"),new Vp(!1);const n=e.unboundedContextKind||"user",s=t.key(n);if(void 0===s)return new Vp(!1);if(r.bigSegmentsMembership&&r.bigSegmentsMembership[s])return this.bigSegmentMatchContext(r.bigSegmentsMembership[s],e,t,r);const a=yield this.queries.getBigSegmentsMembership(s);if(r.bigSegmentsMembership=r.bigSegmentsMembership||{},a){const[e,t]=a;r.bigSegmentsMembership[s]=e,r.bigSegmentsStatus=Cp(r.bigSegmentsStatus,t)}else r.bigSegmentsStatus=Cp(r.bigSegmentsStatus,"NOT_CONFIGURED");return this.bigSegmentMatchContext(r.bigSegmentsMembership[s],e,t,r)}))}bigSegmentMatchContext(e,t,r,i){return Pp(this,void 0,void 0,(function*(){const n=(0,$p.default)(t);return(null==e?void 0:e[n])?new Vp(!0):this.simpleSegmentMatchContext(t,r,i,[])}))}};var zp={};Object.defineProperty(zp,"__esModule",{value:!0});const Kp=fd;zp.default=class{constructor(e){this.contextKeysCache=new Kp.default({max:e.contextKeysCapacity}),this.flushInterval=e.contextKeysFlushInterval}processContext(e){const{canonicalKey:t}=e,r=this.contextKeysCache.get(t);return this.contextKeysCache.set(t,!0),!r}flush(){this.contextKeysCache.clear()}};var Hp={},Gp={},qp={};Object.defineProperty(qp,"__esModule",{value:!0});qp.default=class{constructor(){this.allData={},this.initCalled=!1}addItem(e,t,r){let i=this.allData[e.namespace];if(i||(i={},this.allData[e.namespace]=i),Object.hasOwnProperty.call(i,t)){const e=i[t];(!e||e.version<r.version)&&(i[t]=r)}else i[t]=r}get(e,t,r){const i=this.allData[e.namespace];if(i&&Object.prototype.hasOwnProperty.call(i,t)){const e=i[t];if(e&&!e.deleted)return null==r?void 0:r(e)}return null==r?void 0:r(null)}all(e,t){var r;const i={},n=null!==(r=this.allData[e.namespace])&&void 0!==r?r:{};Object.entries(n).forEach((([e,t])=>{t&&!t.deleted&&(i[e]=t)})),null==t||t(i)}init(e,t){this.initCalled=!0,this.allData=e,null==t||t()}delete(e,t,r,i){const n={version:r,deleted:!0};this.addItem(e,t,n),null==i||i()}upsert(e,t,r){this.addItem(e,t.key,t),null==r||r()}initialized(e){return null==e?void 0:e(this.initCalled)}close(){}getDescription(){return"memory"}},function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.defaultValues=void 0;const t=ru,r=qp,i={baseUri:t.TypeValidators.String,streamUri:t.TypeValidators.String,eventsUri:t.TypeValidators.String,timeout:t.TypeValidators.Number,capacity:t.TypeValidators.Number,logger:t.TypeValidators.Object,featureStore:t.TypeValidators.ObjectOrFactory,bigSegments:t.TypeValidators.Object,updateProcessor:t.TypeValidators.ObjectOrFactory,flushInterval:t.TypeValidators.Number,pollInterval:t.TypeValidators.numberWithMin(30),proxyOptions:t.TypeValidators.Object,offline:t.TypeValidators.Boolean,stream:t.TypeValidators.Boolean,streamInitialReconnectDelay:t.TypeValidators.Number,useLdd:t.TypeValidators.Boolean,sendEvents:t.TypeValidators.Boolean,allAttributesPrivate:t.TypeValidators.Boolean,privateAttributes:t.TypeValidators.StringArray,contextKeysCapacity:t.TypeValidators.Number,contextKeysFlushInterval:t.TypeValidators.Number,tlsParams:t.TypeValidators.Object,diagnosticOptOut:t.TypeValidators.Boolean,diagnosticRecordingInterval:t.TypeValidators.numberWithMin(60),wrapperName:t.TypeValidators.String,wrapperVersion:t.TypeValidators.String,application:t.TypeValidators.Object};e.defaultValues={baseUri:"https://sdk.launchdarkly.com",streamUri:"https://stream.launchdarkly.com",eventsUri:"https://events.launchdarkly.com",stream:!0,streamInitialReconnectDelay:1,sendEvents:!0,timeout:5,capacity:1e4,flushInterval:5,pollInterval:30,offline:!1,useLdd:!1,allAttributesPrivate:!1,privateAttributes:[],contextKeysCapacity:1e3,contextKeysFlushInterval:300,diagnosticOptOut:!1,diagnosticRecordingInterval:900,featureStore:()=>new r.default};e.default=class{constructor(r={}){r=r||{},this.logger=r.logger;const{errors:n,validatedOptions:s}=function(r){const n=[],s=Object.assign({},e.defaultValues);return Object.keys(r).forEach((a=>{var o;const l=r[a],u=i[a];if(u)if(u.is(l))s[a]=l;else if("boolean"===u.getType())n.push(t.OptionMessages.wrongOptionTypeBoolean(a,typeof l)),s[a]=!!l;else if(u instanceof t.NumberWithMinimum&&t.TypeValidators.Number.is(l)){const{min:e}=u;n.push(t.OptionMessages.optionBelowMinimum(a,l,e)),s[a]=e}else n.push(t.OptionMessages.wrongOptionType(a,u.getType(),typeof l)),s[a]=e.defaultValues[a];else null===(o=r.logger)||void 0===o||o.warn(t.OptionMessages.unknownOption(a))})),{errors:n,validatedOptions:s}}(r);n.forEach((e=>{var t;null===(t=this.logger)||void 0===t||t.warn(e)})),function(e,r){var i,n,s;const{baseUri:a,streamUri:o,eventsUri:l}=e,u=null!=o,c=null!=a,d=null!=l;u===c&&u===d||(!u&&r.stream&&(null===(i=r.logger)||void 0===i||i.warn(t.OptionMessages.partialEndpoint("streamUri"))),c||null===(n=r.logger)||void 0===n||n.warn(t.OptionMessages.partialEndpoint("baseUri")),!d&&r.sendEvents&&(null===(s=r.logger)||void 0===s||s.warn(t.OptionMessages.partialEndpoint("eventsUri"))))}(r,s),this.serviceEndpoints=new t.ServiceEndpoints(s.streamUri,s.baseUri,s.eventsUri),this.eventsCapacity=s.capacity,this.timeout=s.timeout,this.bigSegments=s.bigSegments,this.flushInterval=s.flushInterval,this.pollInterval=s.pollInterval,this.proxyOptions=s.proxyOptions,this.offline=s.offline,this.stream=s.stream,this.streamInitialReconnectDelay=s.streamInitialReconnectDelay,this.useLdd=s.useLdd,this.sendEvents=s.sendEvents,this.allAttributesPrivate=s.allAttributesPrivate,this.privateAttributes=s.privateAttributes,this.contextKeysCapacity=s.contextKeysCapacity,this.contextKeysFlushInterval=s.contextKeysFlushInterval,this.tlsParams=s.tlsParams,this.diagnosticOptOut=s.diagnosticOptOut,this.wrapperName=s.wrapperName,this.wrapperVersion=s.wrapperVersion,this.tags=new t.ApplicationTags(s),this.diagnosticRecordingInterval=s.diagnosticRecordingInterval,t.TypeValidators.Function.is(s.updateProcessor)?this.updateProcessorFactory=s.updateProcessor:this.updateProcessorFactory=()=>s.updateProcessor,t.TypeValidators.Function.is(s.featureStore)?this.featureStoreFactory=s.featureStore:this.featureStoreFactory=()=>s.featureStore}}}(Gp),Object.defineProperty(Hp,"__esModule",{value:!0});const Wp=Gp;function Xp(e){return Math.trunc(1e3*e)}Hp.default=class{constructor(e,t,r,i){this.config=t,this.platform=r,this.featureStore=i,this.streamInits=[],this.startTime=Date.now(),this.dataSinceDate=this.startTime,this.id={diagnosticId:r.crypto.randomUUID(),sdkKeySuffix:e.length>6?e.substring(e.length-6):e}}createInitEvent(){var e,t,r,i,n,s,a,o,l,u;const c=this.platform.info.sdkData(),d=this.platform.info.platformData();return{kind:"diagnostic-init",id:this.id,creationDate:this.startTime,sdk:c,configuration:{customBaseURI:this.config.serviceEndpoints.polling!==Wp.defaultValues.baseUri,customStreamURI:this.config.serviceEndpoints.streaming!==Wp.defaultValues.streamUri,customEventsURI:this.config.serviceEndpoints.events!==Wp.defaultValues.eventsUri,eventsCapacity:this.config.eventsCapacity,connectTimeoutMillis:Xp(this.config.timeout),socketTimeoutMillis:Xp(this.config.timeout),eventsFlushIntervalMillis:Xp(this.config.flushInterval),pollingIntervalMillis:Xp(this.config.pollInterval),reconnectTimeMillis:Xp(this.config.streamInitialReconnectDelay),streamingDisabled:!this.config.stream,usingRelayDaemon:this.config.useLdd,offline:this.config.offline,allAttributesPrivate:this.config.allAttributesPrivate,contextKeysCapacity:this.config.contextKeysCapacity,contextKeysFlushIntervalMillis:Xp(this.config.contextKeysFlushInterval),usingProxy:!!(null===(t=(e=this.platform.requests).usingProxy)||void 0===t?void 0:t.call(e)),usingProxyAuthenticator:!!(null===(i=(r=this.platform.requests).usingProxyAuth)||void 0===i?void 0:i.call(r)),diagnosticRecordingIntervalMillis:Xp(this.config.diagnosticRecordingInterval),dataStoreType:null!==(a=null===(s=(n=this.featureStore).getDescription)||void 0===s?void 0:s.call(n))&&void 0!==a?a:"memory"},platform:Object.assign({name:d.name,osArch:null===(o=d.os)||void 0===o?void 0:o.arch,osName:null===(l=d.os)||void 0===l?void 0:l.name,osVersion:null===(u=d.os)||void 0===u?void 0:u.version},d.additional||{})}}recordStreamInit(e,t,r){const i={timestamp:e,failed:t,durationMillis:r};this.streamInits.push(i)}createStatsEventAndReset(e,t,r){const i=Date.now(),n={kind:"diagnostic",id:this.id,creationDate:i,dataSinceDate:this.dataSinceDate,droppedEvents:e,deduplicatedUsers:t,eventsInLastBatch:r,streamInits:this.streamInits};return this.streamInits=[],this.dataSinceDate=i,n}};var Jp={},Yp={};Object.defineProperty(Yp,"__esModule",{value:!0}),Yp.default=function(e,t){if(t){if(t.inExperiment)return!0;switch(t.kind){case"RULE_MATCH":{const r=t.ruleIndex;if(void 0!==r){const t=e.rules||[];return r>=0&&r<t.length&&!!t[r].trackEvents}break}case"FALLTHROUGH":return!!e.trackEventsFallthrough}}return!1},Object.defineProperty(Jp,"__esModule",{value:!0});const Zp=ru,Qp=Yp;Jp.default=class{constructor(e){this.withReasons=e}evalEvent(e,t,r,i,n){var s;const a=(0,Qp.default)(e,r.reason);return new Zp.internal.InputEvalEvent(this.withReasons,t,e.key,i,r,e.version,null!==(s=r.variationIndex)&&void 0!==s?s:void 0,e.trackEvents||a,null==n?void 0:n.key,this.withReasons||a?r.reason:void 0,e.debugEventsUntilDate)}unknownFlagEvent(e,t,r){return new Zp.internal.InputEvalEvent(this.withReasons,t,e,r.value,r)}identifyEvent(e){return new Zp.internal.InputIdentifyEvent(e)}customEvent(e,t,r,i){return new Zp.internal.InputCustomEvent(t,e,null!=r?r:void 0,null!=i?i:void 0)}};var eg={},tg=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(eg,"__esModule",{value:!0});const rg=ru,ig=Zd,ng=Gd,sg=Td;eg.default=class{constructor(e,t){this.defaultHeaders=Object.assign({},(0,ig.default)(t.basicConfiguration.sdkKey,e,t.platform.info)),this.eventsUri=`${t.basicConfiguration.serviceEndpoints.events}/bulk`,this.diagnosticEventsUri=`${t.basicConfiguration.serviceEndpoints.events}/diagnostic`,this.requests=t.platform.requests,this.crypto=t.platform.crypto}tryPostingEvents(e,t,r,i){return tg(this,void 0,void 0,(function*(){const n={status:rg.subsystem.LDDeliveryStatus.Succeeded},s=Object.assign({},this.defaultHeaders);let a;r&&(s["x-launchdarkly-payload-id"]=r,s["x-launchDarkly-event-schema"]="4");try{const r=yield this.requests.fetch(t,{headers:s,body:JSON.stringify(e),method:"POST"}),i=Date.parse(r.headers.get("date")||"");if(i&&(n.serverTime=i),r.status<=204)return n;if(a=new sg.LDUnexpectedResponseError((0,ng.default)({status:r.status,message:"some events were dropped"},"event posting")),!(0,sg.isHttpRecoverable)(r.status))return n.status=rg.subsystem.LDDeliveryStatus.FailedAndMustShutDown,n.error=a,n}catch(e){a=e}return a&&!i?(n.status=rg.subsystem.LDDeliveryStatus.Failed,n.error=a,n):(yield new Promise((e=>{})),this.tryPostingEvents(e,this.eventsUri,r,!1))}))}sendEventData(e,t){return tg(this,void 0,void 0,(function*(){const r=e===rg.subsystem.LDEventType.AnalyticsEvents?this.crypto.randomUUID():void 0,i=e===rg.subsystem.LDEventType.AnalyticsEvents?this.eventsUri:this.diagnosticEventsUri;return this.tryPostingEvents(t,i,r,!0)}))}};var ag={},og=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(ag,"__esModule",{value:!0});ag.default=class{close(){}flush(){return og(this,void 0,void 0,(function*(){}))}sendEvent(e){}};var lg={};Object.defineProperty(lg,"__esModule",{value:!0});lg.default=class{constructor(e,t){this.valid=e,this.withReasons=t,this.flagValues={},this.flagMetadata={}}addFlag(e,t,r,i,n,s,a){this.flagValues[e.key]=t;const o={};void 0!==r&&(o.variation=r);const l=a&&!n&&!s&&void 0===e.debugEventsUntilDate;l||(o.version=e.version),i&&(s||this.withReasons&&!l)&&(o.reason=i),n&&(o.trackEvents=!0),s&&(o.trackReason=!0),void 0!==e.debugEventsUntilDate&&(o.debugEventsUntilDate=e.debugEventsUntilDate),this.flagMetadata[e.key]=o}build(){const e=this;return{valid:e.valid,allValues:()=>e.flagValues,getFlagValue:t=>e.flagValues[t],getFlagReason:t=>{var r;return null!==(r=e.flagMetadata[t]?e.flagMetadata[t].reason:null)&&void 0!==r?r:null},toJSON:()=>Object.assign(Object.assign({},e.flagValues),{$flagsState:e.flagMetadata,$valid:e.valid})}}};var ug={},cg={};Object.defineProperty(cg,"__esModule",{value:!0}),cg.default=function(e){return new Promise((t=>{e((e=>{t(e)}))}))};var dg=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(ug,"__esModule",{value:!0});const hg=cg;ug.default=class{constructor(e){this.store=e}get(e,t){return dg(this,void 0,void 0,(function*(){return(0,hg.default)((r=>{this.store.get(e,t,r)}))}))}all(e){return dg(this,void 0,void 0,(function*(){return(0,hg.default)((t=>{this.store.all(e,t)}))}))}init(e){return dg(this,void 0,void 0,(function*(){return(0,hg.default)((t=>{this.store.init(e,t)}))}))}delete(e,t,r){return dg(this,void 0,void 0,(function*(){return(0,hg.default)((i=>{this.store.delete(e,t,r,i)}))}))}upsert(e,t){return dg(this,void 0,void 0,(function*(){return(0,hg.default)((r=>{this.store.upsert(e,t,r)}))}))}initialized(){return dg(this,void 0,void 0,(function*(){return(0,hg.default)((e=>{this.store.initialized(e)}))}))}close(){this.store.close()}};var fg=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(tu,"__esModule",{value:!0});const vg=ru,pg=cd,gg=md,yg=Ed,mg=Rd,bg=Md,Eg=Yd,_g=rh,wg=Td,Og=uh,Sg=fh,xg=vh,Pg=bh,kg=zp,Ig=Hp,Ag=Jp,Rg=eg,Mg=Yp,Tg=ag,Dg=lg,jg=Gp,Ng=ug,$g=_d;var Fg;!function(e){e[e.Initializing=0]="Initializing",e[e.Initialized=1]="Initialized",e[e.Failed=2]="Failed"}(Fg||(Fg={}));tu.default=class{constructor(e,t,r,i){var n,s,a,o,l;this.sdkKey=e,this.platform=t,this.initState=Fg.Initializing,this.eventFactoryDefault=new Ag.default(!1),this.eventFactoryWithReasons=new Ag.default(!0),this.onError=i.onError,this.onFailed=i.onFailed,this.onReady=i.onReady;const{onUpdate:u,hasEventListeners:c}=i,d=new jg.default(r);if(!e&&!d.offline)throw new Error("You must configure the client with an SDK key");this.config=d,this.logger=d.logger;const h=new vg.ClientContext(e,d,t),f=d.featureStoreFactory(h),v=new yg.default(f,c,u);!d.sendEvents||d.offline||d.diagnosticOptOut||(this.diagnosticsManager=new Ig.default(e,d,t,f));const p=()=>d.stream?new _g.default(e,d,this.platform.requests,this.platform.info,v,this.diagnosticsManager):new bg.default(d,new Eg.default(e,d,this.platform.info,this.platform.requests),v);d.offline||d.useLdd?this.updateProcessor=new mg.default:this.updateProcessor=null!==(s=null===(n=d.updateProcessorFactory)||void 0===n?void 0:n.call(d,h,v))&&void 0!==s?s:p(),!d.sendEvents||d.offline?this.eventProcessor=new Tg.default:this.eventProcessor=new vg.internal.EventProcessor(d,h,new Rg.default(d,h),new kg.default(d),this.diagnosticsManager);const g=new Ng.default(f);this.featureStore=g;const y=new pg.default(null===(o=null===(a=d.bigSegments)||void 0===a?void 0:a.store)||void 0===o?void 0:o.call(a,h),null!==(l=d.bigSegments)&&void 0!==l?l:{},d.logger,this.platform.crypto);this.bigSegmentsManager=y,this.bigSegmentStatusProviderInternal=y.statusProvider;const m={getFlag(e){var t;return fg(this,void 0,void 0,(function*(){return null!==(t=yield g.get($g.default.Features,e))&&void 0!==t?t:void 0}))},getSegment(e){var t;return fg(this,void 0,void 0,(function*(){return null!==(t=yield g.get($g.default.Segments,e))&&void 0!==t?t:void 0}))},getBigSegmentsMembership:e=>y.getUserMembership(e)};this.evaluator=new Pg.default(this.platform,m),this.updateProcessor.start((e=>{var t,r;if(e){let r;r=e.status&&401===e.status||e.code&&401===e.code?new Error("Authentication failed. Double check your SDK key."):e,this.onError(r),this.onFailed(r),null===(t=this.initReject)||void 0===t||t.call(this,r),this.initState=Fg.Failed}else this.initialized()||(this.initState=Fg.Initialized,null===(r=this.initResolve)||void 0===r||r.call(this,this),this.onReady())}))}initialized(){return this.initState===Fg.Initialized}waitForInitialization(){return this.initState===Fg.Initialized?Promise.resolve(this):(this.initializedPromise||(this.initializedPromise=new Promise(((e,t)=>{this.initResolve=e,this.initReject=t}))),this.initializedPromise)}variation(e,t,r,i){return fg(this,void 0,void 0,(function*(){const n=yield this.evaluateIfPossible(e,t,r,this.eventFactoryDefault);if(!i)return n.detail.value;i(null,n.detail.value)}))}variationDetail(e,t,r,i){return fg(this,void 0,void 0,(function*(){const n=yield this.evaluateIfPossible(e,t,r,this.eventFactoryWithReasons);return null==i||i(null,n.detail),n.detail}))}allFlagsState(e,t,r){var i,n,s,a,o;return fg(this,void 0,void 0,(function*(){if(this.config.offline){null===(i=this.logger)||void 0===i||i.info("allFlagsState() called in offline mode. Returning empty state.");const e=new Dg.default(!1,!1).build();return null==r||r(null,e),e}const l=vg.Context.fromLDContext(e);if(!l.valid)return null===(n=this.logger)||void 0===n||n.info(`${null!==(s=l.message)&&void 0!==s?s:"Invalid context."}. Returning empty state.`),new Dg.default(!1,!1).build();let u=!0;if(!this.initialized()){(yield this.featureStore.initialized())?null===(a=this.logger)||void 0===a||a.warn("Called allFlagsState before client initialization; using last known values from data store"):(null===(o=this.logger)||void 0===o||o.warn("Called allFlagsState before client initialization. Data store not available; returning empty state"),u=!1)}const c=new Dg.default(u,!!(null==t?void 0:t.withReasons)),d=!!(null==t?void 0:t.clientSideOnly),h=!!(null==t?void 0:t.detailsOnlyForTrackedFlags),f=yield this.featureStore.all($g.default.Features);yield(0,Og.allSeriesAsync)(Object.values(f),(e=>fg(this,void 0,void 0,(function*(){var t;const r=e;if(d&&!r.clientSide)return!0;const i=yield this.evaluator.evaluate(r,l);i.isError&&this.onError(new Error(`Error for feature flag "${r.key}" while evaluating all flags: ${i.message}`));const n=(0,Mg.default)(r,i.detail.reason);return c.addFlag(r,i.detail.value,null!==(t=i.detail.variationIndex)&&void 0!==t?t:void 0,i.detail.reason,r.trackEvents||n,n,h),!0}))));const v=c.build();return null==r||r(null,v),v}))}secureModeHash(e){const t=vg.Context.fromLDContext(e),r=t.valid?t.canonicalKey:void 0,i=this.platform.crypto.createHmac("sha256",this.sdkKey);if(void 0===r)throw new wg.LDClientError("Could not generate secure mode hash for invalid context");return i.update(r),i.digest("hex")}close(){this.eventProcessor.close(),this.updateProcessor.close(),this.featureStore.close(),this.bigSegmentsManager.close()}isOffline(){return this.config.offline}track(e,t,r,i){var n;const s=vg.Context.fromLDContext(t);s.valid?this.eventProcessor.sendEvent(this.eventFactoryDefault.customEvent(e,s,r,i)):null===(n=this.logger)||void 0===n||n.warn(gg.default.missingContextKeyNoEvent)}identify(e){var t;const r=vg.Context.fromLDContext(e);r.valid?this.eventProcessor.sendEvent(this.eventFactoryDefault.identifyEvent(r)):null===(t=this.logger)||void 0===t||t.warn(gg.default.missingContextKeyNoEvent)}flush(e){return fg(this,void 0,void 0,(function*(){try{yield this.eventProcessor.flush()}catch(t){null==e||e(t,!1)}null==e||e(null,!0)}))}variationInternal(e,t,r,i){var n,s,a,o;return fg(this,void 0,void 0,(function*(){if(this.config.offline)return null===(n=this.logger)||void 0===n||n.info("Variation called in offline mode. Returning default value."),xg.default.forError(Sg.default.ClientNotReady,void 0,r);const l=vg.Context.fromLDContext(t);if(!l.valid)return this.onError(new wg.LDClientError(`${null!==(s=l.message)&&void 0!==s?s:"Context not valid;"} returning default value.`)),xg.default.forError(Sg.default.UserNotSpecified,void 0,r);const u=yield this.featureStore.get($g.default.Features,e);if(!u){const t=new wg.LDClientError(`Unknown feature flag "${e}"; returning default value`);this.onError(t);const i=xg.default.forError(Sg.default.FlagNotFound,void 0,r);return this.eventProcessor.sendEvent(this.eventFactoryDefault.unknownFlagEvent(e,l,i.detail)),i}const c=yield this.evaluator.evaluate(u,l,i);return void 0!==c.detail.variationIndex&&null!==c.detail.variationIndex||(null===(a=this.logger)||void 0===a||a.debug("Result value is null in variation"),c.setDefault(r)),null===(o=c.events)||void 0===o||o.forEach((e=>{this.eventProcessor.sendEvent(e)})),this.eventProcessor.sendEvent(i.evalEvent(u,l,c.detail,r)),c}))}evaluateIfPossible(e,t,r,i){var n,s;return fg(this,void 0,void 0,(function*(){if(!this.initialized()){return(yield this.featureStore.initialized())?(null===(n=this.logger)||void 0===n||n.warn("Variation called before LaunchDarkly client initialization completed (did you wait for the 'ready' event?) - using last known values from feature store"),this.variationInternal(e,t,r,i)):(null===(s=this.logger)||void 0===s||s.warn("Variation called before LaunchDarkly client initialization completed (did you wait for the'ready' event?) - using default value"),xg.default.forError(Sg.default.ClientNotReady,void 0,r))}return this.variationInternal(e,t,r,i)}))}};var Lg={},Cg={},Bg={},Vg={},Ug=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(Vg,"__esModule",{value:!0});Vg.default=class{constructor(e,t,r,i){this.filesystem=e,this.paths=t,this.watch=r,this.callback=i,this.watchers=[],this.fileData={},this.fileTimestamps={}}loadAndWatch(){return Ug(this,void 0,void 0,(function*(){const e=this.paths.map((e=>Ug(this,void 0,void 0,(function*(){const t=yield this.filesystem.readFile(e),r=yield this.filesystem.getFileTimestamp(e);return{data:t,path:e,timeStamp:r}})))),t=yield Promise.all(e);t.forEach((e=>{this.fileData[e.path]=e.data,this.fileTimestamps[e.path]=e.timeStamp})),this.callback(t),this.watch&&this.paths.forEach((e=>{const t=this.filesystem.watch(e,((e,t)=>Ug(this,void 0,void 0,(function*(){const e=yield this.filesystem.getFileTimestamp(t);if(e===this.fileTimestamps[t])return;this.fileTimestamps[t]=e;const r=yield this.filesystem.readFile(t);this.fileData[t]=r,this.debounceCallback()}))));this.watchers.push(t)}))}))}close(){this.watchers.forEach((e=>e.close()))}debounceCallback(){this.debounceHandle||(this.debounceHandle=e=>{e()})}};var zg=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(Bg,"__esModule",{value:!0});const Kg=Fd,Hg=_d,Gg=Vg;Bg.default=class{constructor(e,t,r){var i;this.featureStore=r,this.allData={},this.fileLoader=new Gg.default(t,e.paths,null!==(i=e.autoUpdate)&&void 0!==i&&i,(e=>{var t,r;try{this.processFileData(e)}catch(e){null===(t=this.initCallback)||void 0===t||t.call(this,e),null===(r=this.logger)||void 0===r||r.error(`Error processing files: ${e}`)}})),this.logger=e.logger,this.yamlParser=e.yamlParser}start(e){this.initCallback=e,(()=>{zg(this,void 0,void 0,(function*(){try{yield this.fileLoader.loadAndWatch()}catch(t){null==e||e(t)}}))})()}stop(){this.fileLoader.close()}close(){this.stop()}addItem(e,t){if(this.allData[e.namespace]||(this.allData[e.namespace]={}),this.allData[e.namespace][t.key])throw new Error(`found duplicate key: "${t.key}"`);this.allData[e.namespace][t.key]=t}processFileData(e){this.allData={},e.forEach((e=>{let t;if(e.path.endsWith(".yml")||e.path.endsWith(".yaml")){if(!this.yamlParser)throw new Error(`Attempted to parse yaml file (${e.path}) without parser.`);t=this.yamlParser(e.data)}else t=JSON.parse(e.data);this.processParsedData(t)})),this.featureStore.init(this.allData,(()=>{var e;null===(e=this.initCallback)||void 0===e||e.call(this),this.initCallback=void 0}))}processParsedData(e){Object.keys(e.flags||{}).forEach((t=>{(0,Kg.processFlag)(e.flags[t]),this.addItem(Hg.default.Features,e.flags[t])})),Object.keys(e.flagValues||{}).forEach((t=>{const r=function(e,t){return{key:e,on:!0,fallthrough:{variation:0},variations:[t],version:1}}(t,e.flagValues[t]);(0,Kg.processFlag)(r),this.addItem(Hg.default.Features,r)})),Object.keys(e.segments||{}).forEach((t=>{(0,Kg.processSegment)(e.segments[t]),this.addItem(Hg.default.Segments,e.segments[t])}))}},Object.defineProperty(Cg,"__esModule",{value:!0});const qg=Bg;Cg.default=class{constructor(e){this.options=e}create(e,t){const r={paths:this.options.paths,autoUpdate:this.options.autoUpdate,logger:this.options.logger||e.basicConfiguration.logger,yamlParser:this.options.yamlParser};return new qg.default(r,e.platform.fileSystem,t)}getFactory(){return(e,t)=>this.create(e,t)}};var Wg={},Xg={},Jg={},Yg={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.variationForBoolean=e.FALSE_VARIATION_INDEX=e.TRUE_VARIATION_INDEX=void 0,e.TRUE_VARIATION_INDEX=0,e.FALSE_VARIATION_INDEX=1,e.variationForBoolean=function(t){return t?e.TRUE_VARIATION_INDEX:e.FALSE_VARIATION_INDEX}}(Yg);var Zg={};Object.defineProperty(Zg,"__esModule",{value:!0});const Qg=ru,ey=Yg;class ty{constructor(e,t,r){this.flagBuilder=e,this.clauses=[],t&&(this.clauses=[...t]),void 0!==r&&(this.variation=r)}andMatch(e,t,...r){return this.clauses.push({contextKind:e,attribute:t,attributeReference:new Qg.AttributeReference(t),op:"in",values:r,negate:!1}),this}andNotMatch(e,t,...r){return this.clauses.push({contextKind:e,attribute:t,attributeReference:new Qg.AttributeReference(t),op:"in",values:r,negate:!0}),this}thenReturn(e){return Qg.TypeValidators.Boolean.is(e)?(this.flagBuilder.booleanFlag(),this.thenReturn((0,ey.variationForBoolean)(e))):(this.variation=e,this.flagBuilder.addRule(this),this.flagBuilder)}build(e){return{id:`rule${e}`,variation:this.variation,clauses:this.clauses}}clone(){return new ty(this.flagBuilder,this.clauses,this.variation)}}Zg.default=ty,Object.defineProperty(Jg,"__esModule",{value:!0});const ry=ru,iy=Yg,ny=Zg;class sy{constructor(e,t){this.key=e,this.data={on:!0,variations:[]},t&&(this.data={on:t.on,variations:[...t.variations]},void 0!==t.offVariation&&(this.data.offVariation=t.offVariation),void 0!==t.fallthroughVariation&&(this.data.offVariation=t.offVariation),t.targetsByVariation&&(this.data.targetsByVariation=JSON.parse(JSON.stringify(t.targetsByVariation))),t.rules&&(this.data.rules=[],t.rules.forEach((e=>{var t;null===(t=this.data.rules)||void 0===t||t.push(e.clone())}))))}get isBooleanFlag(){return 2===this.data.variations.length&&!0===this.data.variations[iy.TRUE_VARIATION_INDEX]&&!1===this.data.variations[iy.FALSE_VARIATION_INDEX]}booleanFlag(){return this.isBooleanFlag?this:this.variations(!0,!1).fallthroughVariation(iy.TRUE_VARIATION_INDEX).offVariation(iy.FALSE_VARIATION_INDEX)}variations(...e){return this.data.variations=[...e],this}on(e){return this.data.on=e,this}fallthroughVariation(e){return ry.TypeValidators.Boolean.is(e)?this.booleanFlag().fallthroughVariation((0,iy.variationForBoolean)(e)):(this.data.fallthroughVariation=e,this)}offVariation(e){return ry.TypeValidators.Boolean.is(e)?this.booleanFlag().offVariation((0,iy.variationForBoolean)(e)):(this.data.offVariation=e,this)}variationForAll(e){return this.on(!0).clearRules().clearAllTargets().fallthroughVariation(e)}valueForAll(e){return this.variations(e).variationForAll(0)}variationForUser(e,t){return this.variationForContext("user",e,t)}variationForContext(e,t,r){return ry.TypeValidators.Boolean.is(r)?this.booleanFlag().variationForContext(e,t,(0,iy.variationForBoolean)(r)):(this.data.targetsByVariation||(this.data.targetsByVariation={}),this.data.variations.forEach(((i,n)=>{if(n===r){const r=this.data.targetsByVariation[n]||{};e in r||(r[e]=[]);-1!==r[e].indexOf(t)||r[e].push(t),this.data.targetsByVariation[n]=r}else{const r=this.data.targetsByVariation[n];if(r){const i=r[e];if(i){const n=i.indexOf(t);-1!==n&&(i.splice(n,1),i.length||delete r[e])}Object.keys(r).length||delete this.data.targetsByVariation[n]}}})),this)}clearRules(){return delete this.data.rules,this}clearAllTargets(){return delete this.data.targetsByVariation,this}ifMatch(e,t,...r){return new ny.default(this).andMatch(e,t,...r)}ifNotMatch(e,t,...r){return new ny.default(this).andNotMatch(e,t,...r)}addRule(e){this.data.rules||(this.data.rules=[]),this.data.rules.push(e)}build(e){const t={key:this.key,version:e,on:this.data.on,offVariation:this.data.offVariation,fallthrough:{variation:this.data.fallthroughVariation},variations:[...this.data.variations]};if(this.data.targetsByVariation){const e=[];Object.entries(this.data.targetsByVariation).forEach((([t,r])=>{Object.entries(r).forEach((([r,i])=>{e.push({contextKind:r,values:i,variation:parseInt(t,10)})}))})),t.contextTargets=e}return this.data.rules&&(t.rules=this.data.rules.map(((e,t)=>e.build(String(t))))),t}clone(){return new sy(this.key,this.data)}getKey(){return this.key}}Jg.default=sy;var ay={},oy=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(ay,"__esModule",{value:!0});const ly=_d;ay.default=class{constructor(e,t,r,i){this.featureStore=e,this.flags=t,this.segments=r,this.onStop=i}start(e){return oy(this,void 0,void 0,(function*(){yield this.featureStore.init({[ly.default.Features.namespace]:Object.assign({},this.flags),[ly.default.Segments.namespace]:Object.assign({},this.segments)}),null==e||e()}))}stop(){this.onStop(this)}close(){this.stop()}upsert(e,t){return oy(this,void 0,void 0,(function*(){return this.featureStore.upsert(e,t)}))}},Object.defineProperty(Xg,"__esModule",{value:!0});const uy=ug,cy=Fd,dy=_d,hy=Jg,fy=ay;Xg.default=class{constructor(){this.currentFlags={},this.currentSegments={},this.dataSources=[],this.flagBuilders={}}getFactory(){return(e,t)=>{const r=new fy.default(new uy.default(t),this.currentFlags,this.currentSegments,(e=>{this.dataSources.splice(this.dataSources.indexOf(e))}));return this.dataSources.push(r),r}}flag(e){return this.flagBuilders[e]?this.flagBuilders[e].clone():new hy.default(e).booleanFlag()}update(e){const t=e.getKey(),r=this.currentFlags[t],i=r?r.version:0,n=e.build(i+1);return this.currentFlags[t]=n,this.flagBuilders[t]=e.clone(),Promise.all(this.dataSources.map((e=>e.upsert(dy.default.Features,n))))}usePreconfiguredFlag(e){const t=JSON.parse(JSON.stringify(e)),r=this.currentFlags[t.key],i=Object.assign(Object.assign({},t),{version:r?r.version+1:t.version});return(0,cy.processFlag)(i),this.currentFlags[t.key]=i,Promise.all(this.dataSources.map((e=>e.upsert(dy.default.Features,i))))}usePreconfiguredSegment(e){const t=JSON.parse(JSON.stringify(e)),r=this.currentSegments[t.key],i=Object.assign(Object.assign({},t),{version:r?r.version+1:t.version});return(0,cy.processSegment)(i),this.currentSegments[t.key]=i,Promise.all(this.dataSources.map((e=>e.upsert(dy.default.Segments,i))))}},Object.defineProperty(Wg,"__esModule",{value:!0}),Wg.TestDataRuleBuilder=Wg.TestDataFlagBuilder=Wg.TestData=void 0;const vy=Xg;Wg.TestData=vy.default;const py=Jg;Wg.TestDataFlagBuilder=py.default;const gy=Zg;Wg.TestDataRuleBuilder=gy.default,function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),e.FileDataSourceFactory=void 0;const n=Cg;e.FileDataSourceFactory=n.default,i(Wg,e)}(Lg);var yy={},my={},by={};Object.defineProperty(by,"__esModule",{value:!0});var Ey={};Object.defineProperty(Ey,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(by,e),i(Ey,e)}(my);var _y={},wy={};Object.defineProperty(wy,"__esModule",{value:!0});var Oy={};Object.defineProperty(Oy,"__esModule",{value:!0});var Sy={};Object.defineProperty(Sy,"__esModule",{value:!0});var xy={};Object.defineProperty(xy,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(wy,e),i(Oy,e),i(Sy,e),i(xy,e)}(_y);var Py={};Object.defineProperty(Py,"__esModule",{value:!0});var ky={};Object.defineProperty(ky,"__esModule",{value:!0});var Iy={};Object.defineProperty(Iy,"__esModule",{value:!0});var Ay={};Object.defineProperty(Ay,"__esModule",{value:!0});var Ry={},My={};Object.defineProperty(My,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(My,e)}(Ry);var Ty={},Dy={};Object.defineProperty(Dy,"__esModule",{value:!0});var jy={};Object.defineProperty(jy,"__esModule",{value:!0});var Ny={};Object.defineProperty(Ny,"__esModule",{value:!0});var $y={};Object.defineProperty($y,"__esModule",{value:!0});var Fy={};Object.defineProperty(Fy,"__esModule",{value:!0});var Ly={};Object.defineProperty(Ly,"__esModule",{value:!0});var Cy={};Object.defineProperty(Cy,"__esModule",{value:!0});var By={};Object.defineProperty(By,"__esModule",{value:!0});var Vy={};Object.defineProperty(Vy,"__esModule",{value:!0});var Uy={};Object.defineProperty(Uy,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(Dy,e),i(jy,e),i(Ny,e),i($y,e),i(Fy,e),i(ky,e),i(Ly,e),i(Cy,e),i(By,e),i(Vy,e),i(Uy,e)}(Ty);var zy={},Ky={};Object.defineProperty(Ky,"__esModule",{value:!0});var Hy={};Object.defineProperty(Hy,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(Ky,e),i(Iy,e),i(Ay,e),i(Hy,e)}(zy),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),e.subsystems=e.interfaces=e.integrations=void 0,i(my,e),i(_y,e),i(Py,e),i(ky,e),i(Iy,e),i(Ay,e),e.integrations=Ry,e.interfaces=Ty,e.subsystems=zy}(yy);var Gy={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.deserializePoll=e.AsyncStoreFacade=void 0;const t=ug;e.AsyncStoreFacade=t.default;const r=Fd;Object.defineProperty(e,"deserializePoll",{enumerable:!0,get:function(){return r.deserializePoll}})}(Gy);var qy={},Wy={};Object.defineProperty(Wy,"__esModule",{value:!0});Wy.default=class{constructor(e,t){this.handlers={},this.closed=!1,this.url=e,this.options=t}addEventListener(e,t){this.handlers[e]=t}close(){this.closed=!0}simulateError(e){this.options.errorFilter(e)||(this.closed=!0)}},Object.defineProperty(qy,"__esModule",{value:!0}),qy.NullEventSource=void 0;const Xy=Wy;qy.NullEventSource=Xy.default,function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),e.BigSegmentStoreStatusProviderImpl=e.LDClientImpl=e.platform=e.integrations=void 0;const n=tu;e.LDClientImpl=n.default;const s=dd;e.BigSegmentStoreStatusProviderImpl=s.default,e.integrations=Lg,e.platform=ru,i(yy,e),i(Gy,e),i(qy,e),i(ru,e)}(eu);const Jy=({options:e={},sdkKey:t,featureStoreProvider:r})=>{var i;const n=null!==(i=e.logger)&&void 0!==i?i:eu.BasicLogger.get();return Ql({sdkKey:t,options:e,edgeFeatureStore:new Zl(r,t,"Akamai",n),platformName:"Akamai EdgeWorker",sdkName:"@launchdarkly/akamai-server-base-sdk",sdkVersion:"0.1.0"})};export{Jy as init};
|
|
33
|
+
function(e,t){var r={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(i=Object.getOwnPropertySymbols(e);n<i.length;n++)t.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(e,i[n])&&(r[i[n]]=e[i[n]])}return r}(t,["featureStore","logger","sendEvents"]);if(!e)throw new Error("You must configure the client with a client key");if(!r||"object"!=typeof r||!r.get)throw new Error("You must configure the client with a feature store");if(!i)throw new Error("You must configure the client with a logger");if("{}"!==JSON.stringify(s))throw new Error(`Invalid configuration: ${Object.keys(s).toString()} not supported`)})(e.sdkKey,c);const d=((e,t,r)=>new Yl(e,t,r))(a,o,l);return new Do(r,new Jl(d),c)};var eu={},tu={},ru={},iu={};function nu(e){return e.indexOf("~")?e.replace(/~1/g,"/").replace(/~0/g,"~"):e}Object.defineProperty(iu,"__esModule",{value:!0});class su{constructor(e,t=!1){if(t){const t=e;this.components=[t],this.isValid=""!==t,this.redactionName=t.startsWith("/")?`/${t.replace(/~/g,"~0").replace(/\//g,"~1")}`:t}else{if(this.redactionName=e,""===e||"/"===e||e.match(/\/\/|(^\/.*~[^0|^1])|~$/))return this.isValid=!1,void(this.components=[]);!function(e){return!e.startsWith("/")}(e)?e.indexOf("/",1)<0?this.components=[nu(e.slice(1))]:this.components=function(e){return(e.startsWith("/")?e.substring(1):e).split("/").map((e=>nu(e)))}(e):this.components=[e],"_meta"===this.components[0]?this.isValid=!1:this.isValid=!0}}get(e){const{components:t,isValid:r}=this;if(!r)return;let i=e;for(let e=0;e<t.length;e+=1){const r=t[e];if(null==i||!Object.prototype.hasOwnProperty.call(i,r)||"object"!=typeof i||Array.isArray(i))return;i=i[r]}return i}getComponent(e){return this.components[e]}get depth(){return this.components.length}get isKind(){return 1===this.components.length&&"kind"===this.components[0]}compare(e){return this.depth===e.depth&&this.components.every(((t,r)=>t===e.getComponent(r)))}}su.invalidReference=new su(""),iu.default=su;var au={},ou={};Object.defineProperty(ou,"__esModule",{value:!0}),ou.TypeValidators=ou.DateValidator=ou.Function=ou.StringMatchingRegex=ou.NumberWithMinimum=ou.TypeArray=ou.Type=ou.FactoryOrInstance=void 0;class lu{is(e){if(Array.isArray(e))return!1;const t=typeof e;return"function"===t||"object"===t}getType(){return"factory method or object"}}ou.FactoryOrInstance=lu;class uu{constructor(e,t){this.typeName=e,this.typeOf=typeof t}is(e){return!Array.isArray(e)&&typeof e===this.typeOf}getType(){return this.typeName}}ou.Type=uu;class cu{constructor(e,t){this.typeName=e,this.typeOf=typeof t}is(e){return!!Array.isArray(e)&&(!(e.length>0)||e.every((e=>typeof e===this.typeOf)))}getType(){return this.typeName}}ou.TypeArray=cu;class du extends uu{constructor(e){super(`number with minimum value of ${e}`,0),this.min=e}is(e){return typeof e===this.typeOf&&e>=this.min}}ou.NumberWithMinimum=du;class hu extends uu{constructor(e){super(`string matching ${e}`,""),this.expression=e}is(e){return!!e.match(this.expression)}}ou.StringMatchingRegex=hu;class fu{is(e){return"function"==typeof e}getType(){return"function"}}ou.Function=fu;const vu=/^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d\d*)?(Z|[-+]\d\d(:\d\d)?)/;class pu{is(e){return"number"==typeof e||"string"==typeof e&&vu.test(e)}getType(){return"date"}}ou.DateValidator=pu;class gu{static numberWithMin(e){return new du(e)}static stringMatchingRegex(e){return new hu(e)}}ou.TypeValidators=gu,gu.String=new uu("string",""),gu.Number=new uu("number",0),gu.ObjectOrFactory=new lu,gu.Object=new uu("object",{}),gu.StringArray=new cu("string[]",""),gu.Boolean=new uu("boolean",!0),gu.Function=new fu,gu.Date=new pu,Object.defineProperty(au,"__esModule",{value:!0});const yu=iu,mu=ou,bu=mu.TypeValidators.stringMatchingRegex(/^(\w|\.|-)+$/),Eu="user";function _u(e){return e.includes("%")||e.includes(":")?e.replace(/%/g,"%25").replace(/:/g,"%3A"):e}function wu(e){return bu.is(e)&&"kind"!==e}function Ou(e){return mu.TypeValidators.String.is(e)&&""!==e}function Su(e,t=!1){return e?e.map((e=>new yu.default(e,t))):[]}class xu{constructor(e,t,r){this.isMulti=!1,this.isUser=!1,this.wasLegacy=!1,this.contexts={},this.kind=t,this.valid=e,this.message=r}static contextForError(e,t){return new xu(!1,e,t)}static getValueFromContext(e,t){if(t&&e.isValid)return 1===e.depth&&"anonymous"===e.getComponent(0)?!!(null==t?void 0:t.anonymous):e.get(t)}contextForKind(e){return this.isMulti?this.contexts[e]:this.kind===e?this.context:void 0}static fromMultiKindContext(e){const t=Object.keys(e).filter((e=>"kind"!==e)),r=t.every(wu);if(!t.length)return xu.contextForError("multi","A multi-kind context must contain at least one kind");if(!r)return xu.contextForError("multi","Context contains invalid kinds");const i={};let n=!0;const s=t.reduce(((t,r)=>{var s;const a=e[r];var o;return(o=a)&&mu.TypeValidators.Object.is(o)?(t[r]=a,i[r]=Su(null===(s=a._meta)||void 0===s?void 0:s.privateAttributes)):n=!1,t}),{});if(!n)return xu.contextForError("multi","Context contained contexts that were not objects");if(!Object.values(s).every((e=>Ou(e.key))))return xu.contextForError("multi","Context contained invalid keys");if(1===t.length){const e=t[0],r=new xu(!0,e);return r.context=s[e],r.privateAttributeReferences=i,r.isUser="user"===e,r}const a=new xu(!0,e.kind);return a.contexts=s,a.privateAttributeReferences=i,a.isMulti=!0,a}static fromSingleKindContext(e){var t;const{key:r,kind:i}=e,n=wu(i),s=Ou(r);if(!n)return xu.contextForError(null!=i?i:"unknown","The kind was not valid for the context");if(!s)return xu.contextForError(i,"The key for the context was not valid");const a=Su(null===(t=e._meta)||void 0===t?void 0:t.privateAttributes),o=new xu(!0,i);return o.isUser="user"===i,o.context=e,o.privateAttributeReferences={[i]:a},o}static fromLegacyUser(e){if(!(void 0!==e.key&&null!==e.key))return xu.contextForError("user","The key for the context was not valid");const t=new xu(!0,"user");return t.isUser=!0,t.wasLegacy=!0,t.context=function(e){const t=Object.assign(Object.assign({},e.custom||[]),{kind:"user",key:String(e.key)});if(null!=e.anonymous){const r=!!e.anonymous;delete t.anonymous,t.anonymous=r}return null!==e.name&&void 0!==e.name&&(t.name=e.name),null!==e.ip&&void 0!==e.ip&&(t.ip=e.ip),null!==e.firstName&&void 0!==e.firstName&&(t.firstName=e.firstName),null!==e.lastName&&void 0!==e.lastName&&(t.lastName=e.lastName),null!==e.email&&void 0!==e.email&&(t.email=e.email),null!==e.avatar&&void 0!==e.avatar&&(t.avatar=e.avatar),null!==e.country&&void 0!==e.country&&(t.country=e.country),t}(e),t.privateAttributeReferences={user:Su(e.privateAttributeNames,!0)},t}static fromLDContext(e){return e?function(e){return"kind"in e&&mu.TypeValidators.String.is(e.kind)&&"multi"!==e.kind}(e)?xu.fromSingleKindContext(e):function(e){return"kind"in e&&mu.TypeValidators.String.is(e.kind)&&"multi"===e.kind}(e)?xu.fromMultiKindContext(e):function(e){return!("kind"in e)||null===e.kind||void 0===e.kind}(e)?xu.fromLegacyUser(e):xu.contextForError("unknown","Context was not of a valid kind"):xu.contextForError("unknown","No context specified. Returning default value")}valueForKind(e,t=Eu){return e.isKind?this.kinds:xu.getValueFromContext(e,this.contextForKind(t))}key(e=Eu){var t;return null===(t=this.contextForKind(e))||void 0===t?void 0:t.key}get isMultiKind(){return this.isMulti}get canonicalKey(){return this.isUser?this.context.key:this.isMulti?Object.keys(this.contexts).sort().map((e=>`${e}:${_u(this.contexts[e].key)}`)).join(":"):`${this.kind}:${_u(this.context.key)}`}get kinds(){return this.isMulti?Object.keys(this.contexts):[this.kind]}get kindsAndKeys(){return this.isMulti?Object.entries(this.contexts).reduce(((e,[t,r])=>(e[t]=r.key,e)),{}):{[this.kind]:this.context.key}}privateAttributes(e){var t;return(null===(t=this.privateAttributeReferences)||void 0===t?void 0:t[e])||[]}getContexts(){return this.isMulti?Object.entries(this.contexts):[[this.kind,this.context]]}get legacy(){return this.wasLegacy}}xu.userKind=Eu,au.default=xu;var Pu={};Object.defineProperty(Pu,"__esModule",{value:!0});const ku=iu,Iu=["key","kind","_meta","anonymous"].map((e=>new ku.default(e,!0))),Au=["name","ip","firstName","lastName","email","avatar","country"];function Ru(e,t){return e.depth===t.length&&t.every(((t,r)=>t===e.getComponent(r)))}Pu.default=class{constructor(e,t){this.allAttributesPrivate=e,this.privateAttributes=t}filter(e){const t=e.getContexts();if(1===t.length)return this.filterSingleKind(e,t[0][1],t[0][0]);const r={kind:"multi"};return t.forEach((([t,i])=>{r[t]=this.filterSingleKind(e,i,t)})),r}getAttributesToFilter(e,t,r){return(this.allAttributesPrivate?Object.keys(t).map((e=>new ku.default(e,!0))):[...this.privateAttributes,...e.privateAttributes(r)]).filter((e=>!Iu.some((t=>t.compare(e)))))}filterSingleKind(e,t,r){const{cloned:i,excluded:n}=function(e,t){const r=[],i={},n=[];for(r.push(...Object.keys(e).map((t=>({key:t,ptr:[t],source:e,parent:i,visited:[e]}))));r.length;){const e=r.pop(),i=t.find((t=>Ru(t,e.ptr)));if(i)n.push(i.redactionName);else{const t=e.source[e.key];null===t?e.parent[e.key]=t:Array.isArray(t)?e.parent[e.key]=[...t]:"object"==typeof t?e.visited.includes(t)||(e.parent[e.key]={},r.push(...Object.keys(t).map((r=>({key:r,ptr:[...e.ptr,r],source:t,parent:e.parent[e.key],visited:[...e.visited,t]}))))):e.parent[e.key]=t}}return{cloned:i,excluded:n.sort()}}(t,this.getAttributesToFilter(e,t,r));return e.legacy&&Au.forEach((e=>{e in i&&(i[e]=String(i[e]))})),n.length&&(i._meta||(i._meta={}),i._meta.redactedAttributes=n),i._meta&&(delete i._meta.privateAttributes,0===Object.keys(i._meta).length&&delete i._meta),i}};var Mu={},Tu={},Du={};Object.defineProperty(Du,"__esModule",{value:!0});var ju={};Object.defineProperty(ju,"__esModule",{value:!0});var Nu={};Object.defineProperty(Nu,"__esModule",{value:!0});var $u={};Object.defineProperty($u,"__esModule",{value:!0});var Fu={};Object.defineProperty(Fu,"__esModule",{value:!0});var Lu,Cu,Bu,Vu={};Object.defineProperty(Vu,"__esModule",{value:!0}),Lu=Tu,Cu=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),Bu=t&&t.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||Cu(t,e,r)},Object.defineProperty(Lu,"__esModule",{value:!0}),Bu(Du,Lu),Bu(ju,Lu),Bu(Nu,Lu),Bu($u,Lu),Bu(Fu,Lu),Bu(Vu,Lu);var Uu={},zu={};Object.defineProperty(zu,"__esModule",{value:!0});var Ku={};Object.defineProperty(Ku,"__esModule",{value:!0});var Hu={};Object.defineProperty(Hu,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(zu,e),i(Ku,e),i(Hu,e)}(Uu);var Gu={},qu={};Object.defineProperty(qu,"__esModule",{value:!0});var Wu={};Object.defineProperty(Wu,"__esModule",{value:!0});var Xu={};Object.defineProperty(Xu,"__esModule",{value:!0});var Ju={};Object.defineProperty(Ju,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(qu,e),i(Wu,e),i(Xu,e),i(Ju,e)}(Gu);var Yu={};Object.defineProperty(Yu,"__esModule",{value:!0});var Zu={},Qu={};Object.defineProperty(Qu,"__esModule",{value:!0});var ec={};Object.defineProperty(ec,"__esModule",{value:!0});var tc={};Object.defineProperty(tc,"__esModule",{value:!0});var rc={};Object.defineProperty(rc,"__esModule",{value:!0});var ic={};Object.defineProperty(ic,"__esModule",{value:!0});var nc={};Object.defineProperty(nc,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(Qu,e),i(ec,e),i(tc,e),i(rc,e),i(ic,e),i(nc,e)}(Zu);var sc,ac,oc={},lc={};Object.defineProperty(lc,"__esModule",{value:!0}),lc.LDDeliveryStatus=lc.LDEventType=void 0,function(e){e[e.AnalyticsEvents=0]="AnalyticsEvents",e[e.DiagnosticEvent=1]="DiagnosticEvent"}(sc||(lc.LDEventType=sc={})),function(e){e[e.Succeeded=0]="Succeeded",e[e.Failed=1]="Failed",e[e.FailedAndMustShutDown=2]="FailedAndMustShutDown"}(ac||(lc.LDDeliveryStatus=ac={})),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.LDEventType=e.LDDeliveryStatus=void 0;const t=lc;Object.defineProperty(e,"LDDeliveryStatus",{enumerable:!0,get:function(){return t.LDDeliveryStatus}}),Object.defineProperty(e,"LDEventType",{enumerable:!0,get:function(){return t.LDEventType}})}(oc),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),e.subsystem=void 0,i(Tu,e),i(Uu,e),i(Gu,e),i(Yu,e),i(Zu,e),e.subsystem=oc}(Mu);var uc={},cc={},dc={};Object.defineProperty(dc,"__esModule",{value:!0});const hc=ou;function fc(e){if("string"==typeof e)return e;if(void 0===e)return"undefined";if(null===e)return"null";if(Object.prototype.hasOwnProperty.call(e,"toString"))try{return e.toString()}catch(e){}if("bigint"==typeof e)return`${e}n`;try{return JSON.stringify(e)}catch(e){return e instanceof TypeError&&e.message.indexOf("circular")>=0?"[Circular]":"[Not Stringifiable]"}}const vc={s:e=>fc(e),d:e=>function(e){return"symbol"==typeof e?"NaN":"bigint"==typeof e?`${e}n`:String(Number(e))}(e),i:e=>function(e){return"symbol"==typeof e?"NaN":"bigint"==typeof e?`${e}n`:String(parseInt(e,10))}(e),f:e=>function(e){return"symbol"==typeof e?"NaN":String(parseFloat(e))}(e),j:e=>fc(e),o:e=>fc(e),O:e=>fc(e),c:()=>""};dc.default=function(...e){var t;const r=e.shift();if(hc.TypeValidators.String.is(r)){let i="",n=0;for(;n<r.length;){const s=r.charAt(n);if("%"===s){if(n+1<r.length){const s=r.charAt(n+1);if(s in vc&&e.length){const r=e.shift();i+=null===(t=vc[s])||void 0===t?void 0:t.call(vc,r)}else i+="%"===s?"%":`%${s}`;n+=2}}else i+=s,n+=1}return e.length&&(i.length&&(i+=" "),i+=e.map(fc).join(" ")),i}return e.map(fc).join(" ")},Object.defineProperty(cc,"__esModule",{value:!0});const pc=dc,gc={debug:0,info:1,warn:2,error:3,none:4},yc=["debug","info","warn","error","none"];class mc{static get(){return new mc({})}constructor(e){var t,r,i;this.logLevel=null!==(r=gc[null!==(t=e.level)&&void 0!==t?t:"info"])&&void 0!==r?r:gc.info,this.name=null!==(i=e.name)&&void 0!==i?i:"LaunchDarkly",this.destination=e.destination,this.formatter=e.formatter}tryFormat(...e){var t;try{return this.formatter?null===(t=this.formatter)||void 0===t?void 0:t.call(this,...e):(0,pc.default)(...e)}catch(t){return(0,pc.default)(...e)}}tryWrite(e){try{this.destination(e)}catch(t){console.error(e)}}log(e,t){if(e>=this.logLevel){const r=`${yc[e]}: [${this.name}]`;try{this.destination?this.tryWrite(this.tryFormat(r,...t)):console.error(...t)}catch(e){console.error(...t)}}}error(...e){this.log(gc.error,e)}warn(...e){this.log(gc.warn,e)}info(...e){this.log(gc.info,e)}debug(...e){this.log(gc.debug,e)}}cc.default=mc;var bc={};Object.defineProperty(bc,"__esModule",{value:!0});const Ec=ou,_c={error:Ec.TypeValidators.Function,warn:Ec.TypeValidators.Function,info:Ec.TypeValidators.Function,debug:Ec.TypeValidators.Function};bc.default=class{constructor(e,t){Object.entries(_c).forEach((([t,r])=>{if(!r.is(e[t]))throw new Error(`Provided logger instance must support logger.${t}(...) method`)})),this.logger=e,this.fallback=t}log(e,t){try{this.logger[e](...t)}catch(r){this.fallback[e](...t)}}error(...e){this.log("error",e)}warn(...e){this.log("warn",e)}info(...e){this.log("info",e)}debug(...e){this.log("debug",e)}},Object.defineProperty(uc,"__esModule",{value:!0}),uc.SafeLogger=uc.BasicLogger=void 0;const wc=cc;uc.BasicLogger=wc.default;const Oc=bc;uc.SafeLogger=Oc.default;var Sc={},xc={},Pc={};Object.defineProperty(Pc,"__esModule",{value:!0});Pc.default=class{static deprecated(e,t){return`"${e}" is deprecated, please use "${t}"`}static optionBelowMinimum(e,t,r){return`Config option "${e}" had invalid value of ${t}, using minimum of ${r} instead`}static unknownOption(e){return`Ignoring unknown config option "${e}"`}static wrongOptionType(e,t,r){return`Config option "${e}" should be of type ${t}, got ${r}, using default value`}static wrongOptionTypeBoolean(e,t){return`Config option "${e}" should be a boolean, got ${t}, converting to boolean`}static invalidTagValue(e){return`Config option "${e}" must only contain letters, numbers, ., _ or -.`}static tagValueTooLong(e){return`Value of "${e}" was longer than 64 characters and was discarded.`}static partialEndpoint(e){return`You have set custom uris without specifying the ${e} URI; connections may not work properly`}},Object.defineProperty(xc,"__esModule",{value:!0});const kc=Pc,Ic=ou.TypeValidators.stringMatchingRegex(/^(\w|\.|-)+$/),Ac=(e,t)=>Ic.is(e)?e.length>64?{valid:!1,message:kc.default.tagValueTooLong(t)}:{valid:!0}:{valid:!1,message:kc.default.invalidTagValue(t)};xc.default=class{constructor(e){var t,r;const i={},n=null==e?void 0:e.application;if(null!==(null==n?void 0:n.id)&&void 0!==(null==n?void 0:n.id)){const{valid:r,message:s}=Ac(n.id,"application.id");r?i["application-id"]=[n.id]:null===(t=e.logger)||void 0===t||t.warn(s)}if(null!==(null==n?void 0:n.version)&&void 0!==(null==n?void 0:n.version)){const{valid:t,message:s}=Ac(n.version,"application.version");t?i["application-version"]=[n.version]:null===(r=e.logger)||void 0===r||r.warn(s)}const s=Object.keys(i);s.length&&(this.value=s.sort().flatMap((e=>i[e].sort().map((t=>`${e}/${t}`)))).join(" "))}};var Rc={};function Mc(e){return e.replace(/\/+$/,"")}Object.defineProperty(Rc,"__esModule",{value:!0});Rc.default=class{constructor(e,t,r){this.streaming=Mc(e),this.polling=Mc(t),this.events=Mc(r)}};var Tc={};Object.defineProperty(Tc,"__esModule",{value:!0});Tc.default=class{constructor(e,t,r){this.platform=r,this.basicConfiguration={logger:t.logger,offline:t.offline,sdkKey:e,serviceEndpoints:t.serviceEndpoints}}},Object.defineProperty(Sc,"__esModule",{value:!0}),Sc.ClientContext=Sc.ServiceEndpoints=Sc.OptionMessages=Sc.ApplicationTags=void 0;const Dc=xc;Sc.ApplicationTags=Dc.default;const jc=Pc;Sc.OptionMessages=jc.default;const Nc=Rc;Sc.ServiceEndpoints=Nc.default;const $c=Tc;Sc.ClientContext=$c.default;var Fc={},Lc={};Object.defineProperty(Lc,"__esModule",{value:!0}),Lc.default=()=>{},Object.defineProperty(Fc,"__esModule",{value:!0}),Fc.noop=void 0;const Cc=Lc;Fc.noop=Cc.default;var Bc={},Vc={},Uc={};Object.defineProperty(Uc,"__esModule",{value:!0});Uc.default=class{constructor(e,t,r,i){this.key=t,this.data=r,this.metricValue=i,this.kind="custom",this.creationDate=Date.now(),this.context=e}};var zc={};Object.defineProperty(zc,"__esModule",{value:!0});zc.default=class{constructor(e,t,r,i,n,s,a,o,l,u,c){var d;this.key=r,this.kind="feature",this.creationDate=Date.now(),this.context=t,this.default=i,this.variation=null!==(d=n.variationIndex)&&void 0!==d?d:void 0,this.value=n.value,void 0!==s&&(this.version=s),void 0!==a&&(this.variation=a),void 0!==o&&(this.trackEvents=o),void 0!==l&&(this.prereqOf=l),void 0!==u&&(this.reason=u),void 0!==c&&(this.debugEventsUntilDate=c)}};var Kc={};Object.defineProperty(Kc,"__esModule",{value:!0});Kc.default=class{constructor(e){this.kind="identify",this.creationDate=Date.now(),this.context=e}};var Hc={},Gc={},qc={};Object.defineProperty(qc,"__esModule",{value:!0}),qc.isIdentify=qc.isCustom=qc.isFeature=void 0,qc.isFeature=function(e){return"feature"===e.kind},qc.isCustom=function(e){return"custom"===e.kind},qc.isIdentify=function(e){return"identify"===e.kind};var Wc={};Object.defineProperty(Wc,"__esModule",{value:!0});Wc.default=class{constructor(e,t,r,i,n,s){this.count=e,this.key=t,this.value=r,this.version=n,this.variation=s,this.default=i}increment(){this.count+=1}},Object.defineProperty(Gc,"__esModule",{value:!0});const Xc=qc,Jc=Wc;Gc.default=class{constructor(){this.startDate=0,this.endDate=0,this.counters={},this.contextKinds={}}summarizeEvent(e){if((0,Xc.isFeature)(e)){const t=function(e){return`${e.key}:${null!==e.variation&&void 0!==e.variation?e.variation:""}:${null!==e.version&&void 0!==e.version?e.version:""}`}(e),r=this.counters[t];let i=this.contextKinds[e.key];i||(i=new Set,this.contextKinds[e.key]=i),e.context.kinds.forEach((e=>i.add(e))),r?r.increment():this.counters[t]=new Jc.default(1,e.key,e.value,e.default,e.version,e.variation),(0===this.startDate||e.creationDate<this.startDate)&&(this.startDate=e.creationDate),e.creationDate>this.endDate&&(this.endDate=e.creationDate)}}getSummary(){const e=Object.values(this.counters).reduce(((e,t)=>{let r=e[t.key];r||(r={default:t.default,counters:[],contextKinds:[...this.contextKinds[t.key]]},e[t.key]=r);const i={value:t.value,count:t.count};return void 0!==t.variation&&null!==t.variation&&(i.variation=t.variation),void 0!==t.version&&null!==t.version?i.version=t.version:i.unknown=!0,r.counters.push(i),e}),{});return{startDate:this.startDate,endDate:this.endDate,features:e,kind:"summary"}}clearSummary(){this.startDate=0,this.endDate=0,this.counters={},this.contextKinds={}}};var Yc={};Object.defineProperty(Yc,"__esModule",{value:!0});class Zc extends Error{constructor(e){super(e),this.name="LaunchDarklyInvalidSDKKeyError"}}Yc.default=Zc;var Qc=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(Hc,"__esModule",{value:!0});const ed=lc,td=iu,rd=Pu,id=Gc,nd=qc,sd=Yc;Hc.default=class{constructor(e,t,r,i,n){if(this.eventSender=r,this.contextDeduplicator=i,this.diagnosticsManager=n,this.summarizer=new id.default,this.queue=[],this.lastKnownPastTime=0,this.droppedEvents=0,this.deduplicatedUsers=0,this.exceededCapacity=!1,this.eventsInLastBatch=0,this.shutdown=!1,this.flushUsersTimer=null,this.capacity=e.eventsCapacity,this.logger=t.basicConfiguration.logger,this.contextFilter=new rd.default(e.allAttributesPrivate,e.privateAttributes.map((e=>new td.default(e)))),void 0!==this.contextDeduplicator.flushInterval&&(this.flushUsersTimer=void this.contextDeduplicator.flushInterval),this.flushTimer=void e.flushInterval,this.diagnosticsManager){const t=n.createInitEvent();this.postDiagnosticEvent(t),this.diagnosticsTimer=void e.diagnosticRecordingInterval}}postDiagnosticEvent(e){this.eventSender.sendEventData(ed.LDEventType.DiagnosticEvent,e)}close(){clearInterval(this.flushTimer),this.flushUsersTimer&&clearInterval(this.flushUsersTimer),this.diagnosticsTimer&&clearInterval(this.diagnosticsTimer)}flush(){var e;return Qc(this,void 0,void 0,(function*(){if(this.shutdown)throw new sd.default("Events cannot be posted because SDK key is invalid");const t=this.queue;this.queue=[];const r=this.summarizer.getSummary();this.summarizer.clearSummary(),Object.keys(r.features).length&&t.push(r),t.length&&(this.eventsInLastBatch=t.length,null===(e=this.logger)||void 0===e||e.debug("Flushing %d events",t.length),yield this.tryPostingEvents(t))}))}sendEvent(e){if(this.shutdown)return;this.summarizer.summarizeEvent(e);const t=(0,nd.isFeature)(e),r=t&&e.trackEvents||!t,i=this.shouldDebugEvent(e),n=(0,nd.isIdentify)(e),s=this.contextDeduplicator.processContext(e.context);s||n||(this.deduplicatedUsers+=1);s&&!n&&this.enqueue({kind:"index",creationDate:e.creationDate,context:this.contextFilter.filter(e.context)}),r&&this.enqueue(this.makeOutputEvent(e,!1)),i&&this.enqueue(this.makeOutputEvent(e,!0))}makeOutputEvent(e,t){switch(e.kind){case"feature":{const r={kind:t?"debug":"feature",creationDate:e.creationDate,key:e.key,value:e.value,default:e.default,prereqOf:e.prereqOf};return void 0!==e.variation&&(r.variation=e.variation),void 0!==e.version&&(r.version=e.version),e.reason&&(r.reason=e.reason),t?r.context=this.contextFilter.filter(e.context):r.contextKeys=e.context.kindsAndKeys,r}case"identify":return{kind:"identify",creationDate:e.creationDate,context:this.contextFilter.filter(e.context)};case"custom":{const t={kind:"custom",creationDate:e.creationDate,key:e.key,contextKeys:e.context.kindsAndKeys};return void 0!==e.data&&(t.data=e.data),void 0!==e.metricValue&&(t.metricValue=e.metricValue),t}default:return e}}enqueue(e){var t;this.queue.length<this.capacity?(this.queue.push(e),this.exceededCapacity=!1):(this.exceededCapacity||(this.exceededCapacity=!0,null===(t=this.logger)||void 0===t||t.warn("Exceeded event queue capacity. Increase capacity to avoid dropping events.")),this.droppedEvents+=1)}shouldDebugEvent(e){return(0,nd.isFeature)(e)&&e.debugEventsUntilDate&&e.debugEventsUntilDate>this.lastKnownPastTime&&e.debugEventsUntilDate>Date.now()}tryPostingEvents(e){return Qc(this,void 0,void 0,(function*(){const t=yield this.eventSender.sendEventData(ed.LDEventType.AnalyticsEvents,e);if(t.status===ed.LDDeliveryStatus.FailedAndMustShutDown&&(this.shutdown=!0),t.serverTime&&(this.lastKnownPastTime=t.serverTime),t.error)throw t.error}))}},Object.defineProperty(Vc,"__esModule",{value:!0}),Vc.EventProcessor=Vc.InputIdentifyEvent=Vc.InputEvalEvent=Vc.InputCustomEvent=void 0;const ad=Uc;Vc.InputCustomEvent=ad.default;const od=zc;Vc.InputEvalEvent=od.default;const ld=Kc;Vc.InputIdentifyEvent=ld.default;const ud=Hc;Vc.EventProcessor=ud.default,function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(Vc,e)}(Bc),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),e.ContextFilter=e.Context=e.AttributeReference=e.internal=void 0;const n=iu;e.AttributeReference=n.default;const s=au;e.Context=s.default;const a=Pu;e.ContextFilter=a.default,i(Mu,e),i(ou,e),i(uc,e),i(Sc,e),i(Fc,e),e.internal=Bc}(ru);var cd={},dd={},hd=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(dd,"__esModule",{value:!0});dd.default=class{constructor(e){this.onRequestStatus=e}getStatus(){return this.lastStatus}requireStatus(){return hd(this,void 0,void 0,(function*(){return this.lastStatus||(yield this.onRequestStatus()),this.lastStatus}))}notify(){var e;this.lastStatus&&(null===(e=this.listener)||void 0===e||e.call(this,this.lastStatus))}setListener(e){this.listener=e}setStatus(e){this.lastStatus=e}};var fd={};Object.defineProperty(fd,"__esModule",{value:!0});fd.default=class{constructor(e){this.keyMap=new Map,this.head=0,this.tail=0,this.size=0;const{max:t}=e;this.max=t,this.values=new Array(t),this.keys=new Array(t),this.next=new Uint32Array(t),this.prev=new Uint32Array(t),e.maxAge?(this.lastUpdated=new Array(t).fill(0),this.maxAge=e.maxAge):(this.lastUpdated=[],this.maxAge=0)}set(e,t){let r=this.keyMap.get(e);void 0===r?(r=this.index(),this.keys[r]=e,this.keyMap.set(e,r),this.next[this.tail]=r,this.prev[r]=this.tail,this.tail=r,this.size+=1):this.setTail(r),this.values[r]=t,this.maxAge&&(this.lastUpdated[r]=Date.now())}get(e){const t=this.keyMap.get(e);if(void 0!==t){if(this.maxAge){const e=this.lastUpdated[t];if(Date.now()-e>this.maxAge)return}return this.setTail(t),this.maxAge&&(this.lastUpdated[t]=Date.now()),this.values[t]}}clear(){this.head=0,this.tail=0,this.size=0,this.values.fill(void 0),this.keys.fill(void 0),this.next.fill(0),this.prev.fill(0)}index(){return 0===this.size?this.tail:this.size===this.max?this.evict():this.size}evict(){const{head:e}=this,t=this.keys[e];return this.head=this.next[e],this.keyMap.delete(t),this.size-=1,e}link(e,t){this.prev[t]=e,this.next[e]=t}setTail(e){e!==this.tail&&(e===this.head?this.head=this.next[e]:this.link(this.prev[e],this.next[e]),this.link(this.tail,e),this.tail=e)}};var vd=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(cd,"__esModule",{value:!0});const pd=ru,gd=dd,yd=fd;cd.default=class{constructor(e,t,r,i){this.store=e,this.logger=r,this.crypto=i,this.statusProvider=new gd.default((()=>vd(this,void 0,void 0,(function*(){return this.pollStoreAndUpdateStatus()})))),this.staleTimeMs=1e3*(pd.TypeValidators.Number.is(t.staleAfter)&&t.staleAfter>0?t.staleAfter:120);pd.TypeValidators.Number.is(t.statusPollInterval)&&t.statusPollInterval>0&&t.statusPollInterval;this.pollHandle=e?void 0:null,e&&(this.cache=new yd.default({max:t.userCacheSize||1e3,maxAge:1e3*(t.userCacheTime||5)}))}close(){this.pollHandle&&(clearInterval(this.pollHandle),this.pollHandle=void 0),this.store&&this.store.close()}getUserMembership(e){var t,r,i;return vd(this,void 0,void 0,(function*(){if(!this.store)return;let n=null===(t=this.cache)||void 0===t?void 0:t.get(e);if(!n)try{n=yield this.store.getUserMembership(this.hashForUserKey(e)),null===(r=this.cache)||void 0===r||r.set(e,n)}catch(e){return null===(i=this.logger)||void 0===i||i.error(`Big Segment store membership query returned error: ${e}`),[null,"STORE_ERROR"]}this.statusProvider.getStatus()||(yield this.pollStoreAndUpdateStatus());const s=this.statusProvider.getStatus();return s.available?[n,s.stale?"STALE":"HEALTHY"]:[n,"STORE_ERROR"]}))}pollStoreAndUpdateStatus(){var e,t,r;return vd(this,void 0,void 0,(function*(){if(!this.store)return void this.statusProvider.setStatus({available:!1,stale:!1});let i;null===(e=this.logger)||void 0===e||e.debug("Querying Big Segment store status");try{const e=yield this.store.getMetadata();i={available:!0,stale:!e||!e.lastUpToDate||this.isStale(e.lastUpToDate)}}catch(e){null===(t=this.logger)||void 0===t||t.error(`Big Segment store status query returned error: ${e}`),i={available:!1,stale:!1}}const n=this.statusProvider.getStatus();n&&n.available===i.available&&n.stale===i.stale||(null===(r=this.logger)||void 0===r||r.debug("Big Segment store status changed from %s to %s",JSON.stringify(n),JSON.stringify(i)),this.statusProvider.setStatus(i),this.statusProvider.notify())}))}hashForUserKey(e){const t=this.crypto.createHash("sha256");return t.update(e),t.digest("base64")}isStale(e){return Date.now()-e>=this.staleTimeMs}};var md={};Object.defineProperty(md,"__esModule",{value:!0});class bd{}bd.missingContextKeyNoEvent="Context was unspecified or had no key; event will not be sent",md.default=bd;var Ed={},_d={};Object.defineProperty(_d,"__esModule",{value:!0});class wd{}wd.Features={namespace:"features",streamApiPath:"/flags/",requestPath:"/sdk/latest-flags/"},wd.Segments={namespace:"segments",streamApiPath:"/segments/",requestPath:"/sdk/latest-segments/"},_d.default=wd;var Od={},Sd={};Object.defineProperty(Sd,"__esModule",{value:!0});Sd.default=class{constructor(){this.itemsByNamespace={}}get(e,t){var r;return null===(r=this.itemsByNamespace[e])||void 0===r?void 0:r[t]}set(e,t,r){e in this.itemsByNamespace||(this.itemsByNamespace[e]={}),this.itemsByNamespace[e][t]=r}remove(e,t){const r=this.itemsByNamespace[e];r&&delete r[t]}removeAll(){this.itemsByNamespace={}}enumerate(e){Object.entries(this.itemsByNamespace).forEach((([t,r])=>{Object.entries(r).forEach((([r,i])=>{e(t,r,i)}))}))}mergeFrom(e){e.enumerate(this.set.bind(this))}},Object.defineProperty(Od,"__esModule",{value:!0});const xd=Sd;Od.default=class{constructor(){this.dependenciesFrom=new xd.default,this.dependenciesTo=new xd.default}updateDependenciesFrom(e,t,r){const i=this.dependenciesFrom.get(e,t);null==i||i.enumerate(((r,i)=>{const n=this.dependenciesTo.get(r,i);null==n||n.remove(e,t)})),this.dependenciesFrom.set(e,t,r),null==r||r.enumerate(((r,i)=>{let n=this.dependenciesTo.get(r,i);n||(n=new xd.default,this.dependenciesTo.set(r,i,n)),n.set(e,t,!0)}))}updateModifiedItems(e,t,r){if(!e.get(t,r)){e.set(t,r,!0);const i=this.dependenciesTo.get(t,r);null==i||i.enumerate(((t,r)=>{this.updateModifiedItems(e,t,r)}))}}reset(){this.dependenciesFrom.removeAll(),this.dependenciesTo.removeAll()}},Object.defineProperty(Ed,"__esModule",{value:!0});const Pd=_d,kd=Od,Id=Sd;function Ad(e,t){var r,i;const n=new Id.default,s=e===Pd.default.Features.namespace,a=e===Pd.default.Segments.namespace;if(s){const i=t;null===(r=null==i?void 0:i.prerequisites)||void 0===r||r.forEach((t=>{n.set(e,t.key,!0)}))}if(s||a){const e=t;null===(i=null==e?void 0:e.rules)||void 0===i||i.forEach((e=>{var t;null===(t=e.clauses)||void 0===t||t.forEach((e=>{"segmentMatch"===e.op&&e.values.forEach((e=>{n.set(Pd.default.Segments.namespace,e,!0)}))}))}))}return n}Ed.default=class{constructor(e,t,r){this.featureStore=e,this.hasEventListeners=t,this.onChange=r,this.dependencyTracker=new kd.default}init(e,t){const r=this.hasEventListeners(),i=i=>{this.featureStore.init(e,(()=>{if(this.dependencyTracker.reset(),Object.entries(e).forEach((([e,t])=>{Object.keys(t||{}).forEach((r=>{const i=t[r];this.dependencyTracker.updateDependenciesFrom(e,r,Ad(e,i))}))})),r){const t=new Id.default;Object.keys(e).forEach((r=>{const n=(null==i?void 0:i[r])||{},s=e[r],a=Object.assign(Object.assign({},n),s);Object.keys(a).forEach((e=>{this.addIfModified(r,e,n&&n[e],s&&s[e],t)}))})),this.sendChangeEvents(t)}null==t||t()}))};r?this.featureStore.all(Pd.default.Features,(e=>{this.featureStore.all(Pd.default.Segments,(t=>{const r={[Pd.default.Features.namespace]:e,[Pd.default.Segments.namespace]:t};i(r)}))})):i()}upsert(e,t,r){const{key:i}=t,n=this.hasEventListeners(),s=s=>{this.featureStore.upsert(e,t,(()=>{if(this.dependencyTracker.updateDependenciesFrom(e.namespace,i,Ad(e.namespace,t)),n){const r=new Id.default;this.addIfModified(e.namespace,i,s,t,r),this.sendChangeEvents(r)}null==r||r()}))};n?this.featureStore.get(e,i,s):s()}addIfModified(e,t,r,i,n){i&&r&&i.version<=r.version||this.dependencyTracker.updateModifiedItems(n,e,t)}sendChangeEvents(e){e.enumerate(((e,t)=>{e===Pd.default.Features.namespace&&this.onChange(t)}))}};var Rd={};Object.defineProperty(Rd,"__esModule",{value:!0});Rd.default=class{start(e){}stop(){}close(){}};var Md={},Td={};Object.defineProperty(Td,"__esModule",{value:!0}),Td.isHttpRecoverable=Td.LDClientError=Td.LDUnexpectedResponseError=Td.LDStreamingError=Td.LDPollingError=void 0;class Dd extends Error{constructor(e){super(e),this.name="LaunchDarklyPollingError"}}Td.LDPollingError=Dd;class jd extends Error{constructor(e,t){super(e),this.code=t,this.name="LaunchDarklyStreamingError"}}Td.LDStreamingError=jd;class Nd extends Error{constructor(e){super(e),this.name="LaunchDarklyUnexpectedResponseError"}}Td.LDUnexpectedResponseError=Nd;class $d extends Error{constructor(e){super(e),this.name="LaunchDarklyClientError"}}Td.LDClientError=$d,Td.isHttpRecoverable=function(e){return!(e>=400&&e<500)||(400===e||408===e||429===e)};var Fd={};Object.defineProperty(Fd,"__esModule",{value:!0}),Fd.deserializeSegment=Fd.serializeSegment=Fd.deserializeFlag=Fd.serializeFlag=Fd.deserializeDelete=Fd.deserializePatch=Fd.deserializePoll=Fd.deserializeAll=Fd.processSegment=Fd.processFlag=Fd.replacer=Fd.reviver=void 0;const Ld=ru,Cd=_d;function Bd(e,t){if(null!==t)return t}function Vd(e,t){if(!(t instanceof Ld.AttributeReference||Array.isArray(t)&&t[0]&&t[0]instanceof Ld.AttributeReference))return t}function Ud(e){e&&e.bucketBy&&(e.bucketByAttributeReference=new Ld.AttributeReference(e.bucketBy,!e.contextKind))}function zd(e){var t;if(e.fallthrough&&e.fallthrough.rollout){Ud(e.fallthrough.rollout)}null===(t=null==e?void 0:e.rules)||void 0===t||t.forEach((e=>{var t;Ud(e.rollout),null===(t=null==e?void 0:e.clauses)||void 0===t||t.forEach((e=>{e&&e.attribute?e.attributeReference=new Ld.AttributeReference(e.attribute,!e.contextKind):e&&(e.attributeReference=Ld.AttributeReference.invalidReference)}))}))}function Kd(e){var t;null===(t=null==e?void 0:e.rules)||void 0===t||t.forEach((e=>{var t;e.bucketBy&&(e.bucketByAttributeReference=new Ld.AttributeReference(e.bucketBy,!e.rolloutContextKind)),null===(t=null==e?void 0:e.clauses)||void 0===t||t.forEach((e=>{e&&e.attribute?e.attributeReference=new Ld.AttributeReference(e.attribute,!e.contextKind):e&&(e.attributeReference=Ld.AttributeReference.invalidReference)}))}))}function Hd(e){try{return JSON.parse(e,Bd)}catch(e){return}}Fd.reviver=Bd,Fd.replacer=Vd,Fd.processFlag=zd,Fd.processSegment=Kd,Fd.deserializeAll=function(e){var t,r;const i=Hd(e);if(i)return Object.values((null===(t=null==i?void 0:i.data)||void 0===t?void 0:t.flags)||[]).forEach((e=>{zd(e)})),Object.values((null===(r=null==i?void 0:i.data)||void 0===r?void 0:r.segments)||[]).forEach((e=>{Kd(e)})),i},Fd.deserializePoll=function(e){const t=Hd(e);if(t)return Object.values((null==t?void 0:t.flags)||[]).forEach((e=>{zd(e)})),Object.values((null==t?void 0:t.segments)||[]).forEach((e=>{Kd(e)})),t},Fd.deserializePatch=function(e){const t=Hd(e);if(t)return t.path.startsWith(Cd.default.Features.streamApiPath)?(zd(t.data),t.kind=Cd.default.Features):t.path.startsWith(Cd.default.Segments.streamApiPath)&&(Kd(t.data),t.kind=Cd.default.Segments),t},Fd.deserializeDelete=function(e){const t=Hd(e);if(t)return t.path.startsWith(Cd.default.Features.streamApiPath)?t.kind=Cd.default.Features:t.path.startsWith(Cd.default.Segments.streamApiPath)&&(t.kind=Cd.default.Segments),t},Fd.serializeFlag=function(e){return JSON.stringify(e,Vd)},Fd.deserializeFlag=function(e){const t=Hd(e);if(t)return zd(t),t},Fd.serializeSegment=function(e){return JSON.stringify(e,Vd)},Fd.deserializeSegment=function(e){const t=Hd(e);if(t)return Kd(t),t};var Gd={};Object.defineProperty(Gd,"__esModule",{value:!0}),Gd.default=function(e,t,r){let i;return i=e.status?`error ${e.status}${401===e.status?" (invalid SDK key)":""}`:`I/O error (${e.message||e})`,`Received ${i} for ${t} - ${null!=r?r:"giving up permanently"}`},Object.defineProperty(Md,"__esModule",{value:!0});const qd=Td,Wd=Fd,Xd=_d,Jd=Gd;Md.default=class{constructor(e,t,r){this.requestor=t,this.featureStore=r,this.stopped=!1,this.logger=e.logger,this.pollInterval=e.pollInterval,this.featureStore=r}poll(e){var t;if(this.stopped)return;const r=t=>{var r,i;null===(r=this.logger)||void 0===r||r.error("Polling received invalid data"),null===(i=this.logger)||void 0===i||i.debug(`Invalid JSON follows: ${t}`),null==e||e(new qd.LDPollingError("Malformed JSON data in polling response"))},i=Date.now();null===(t=this.logger)||void 0===t||t.debug("Polling LaunchDarkly for feature flag updates"),this.requestor.requestAllData(((t,n)=>{var s,a,o;const l=Date.now()-i,u=Math.max(1e3*this.pollInterval-l,0);if(null===(s=this.logger)||void 0===s||s.debug("Elapsed: %d ms, sleeping for %d ms",l,u),t){if(t.status&&!(0,qd.isHttpRecoverable)(t.status)){const r=(0,Jd.default)(t,"polling request");return null===(a=this.logger)||void 0===a||a.error(r),void(null==e||e(new qd.LDPollingError(r)))}null===(o=this.logger)||void 0===o||o.warn((0,Jd.default)(t,"polling request","will retry"))}else if(n){const t=(0,Wd.deserializePoll)(n);if(t){const r={[Xd.default.Features.namespace]:t.flags,[Xd.default.Segments.namespace]:t.segments};return void this.featureStore.init(r,(()=>{null==e||e(),this.timeoutHandle=e=>{e()}}))}r(n)}this.timeoutHandle=e=>{e()}}))}start(e){this.poll(e)}stop(){this.timeoutHandle&&(clearTimeout(this.timeoutHandle),this.timeoutHandle=void 0),this.stopped=!0}close(){this.stop()}};var Yd={},Zd={};Object.defineProperty(Zd,"__esModule",{value:!0}),Zd.default=function(e,t,r){const i=r.sdkData(),n={authorization:e,"user-agent":`NodeJSClient/${i.version}`};i.wrapperName&&(n["x-launchdarkly-wrapper"]=i.wrapperVersion?`${i.wrapperName}/${i.wrapperVersion}`:i.wrapperName);const s=t.tags.value;return s&&(n["x-launchdarkly-tags"]=s),n};var Qd=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(Yd,"__esModule",{value:!0});const eh=Td,th=Zd;Yd.default=class{constructor(e,t,r,i){this.requests=i,this.eTagCache={},this.headers=(0,th.default)(e,t,r),this.uri=`${t.serviceEndpoints.polling}/sdk/latest-all`}requestWithETagCache(e,t){return Qd(this,void 0,void 0,(function*(){const r=this.eTagCache[e],i=null==r?void 0:r.etag,n=i?Object.assign(Object.assign({},t),{headers:Object.assign(Object.assign({},t.headers),{"if-none-match":i})}):t,s=yield this.requests.fetch(e,n);if(304===s.status&&r)return{res:s,body:r.body};const a=s.headers.get("etag"),o=yield s.text();return a&&(this.eTagCache[e]={etag:a,body:o}),{res:s,body:o}}))}requestAllData(e){return Qd(this,void 0,void 0,(function*(){const t={method:"GET",headers:this.headers};try{const{res:r,body:i}=yield this.requestWithETagCache(this.uri,t);if(200!==r.status&&304!==r.status){const t=new eh.LDStreamingError(`Unexpected status code: ${r.status}`,r.status);return e(t,void 0)}return e(void 0,304===r.status?null:i)}catch(t){return e(t,void 0)}}))}};var rh={};Object.defineProperty(rh,"__esModule",{value:!0});const ih=Td,nh=Fd,sh=_d,ah=Zd,oh=Gd;function lh(e,t){return t.startsWith(e.streamApiPath)?t.substring(e.streamApiPath.length):void 0}rh.default=class{constructor(e,t,r,i,n,s){this.featureStore=n,this.diagnosticsManager=s,this.headers=(0,ah.default)(e,t,i),this.logger=t.logger,this.streamInitialReconnectDelay=t.streamInitialReconnectDelay,this.requests=r,this.streamUri=`${t.serviceEndpoints.streaming}/all`}logConnectionStarted(){this.connectionAttemptStartTime=Date.now()}logConnectionResult(e){this.connectionAttemptStartTime&&this.diagnosticsManager&&this.diagnosticsManager.recordStreamInit(this.connectionAttemptStartTime,!e,Date.now()-this.connectionAttemptStartTime),this.connectionAttemptStartTime=void 0}start(e){this.logConnectionStarted();const t=(t,r)=>{var i,n;null===(i=this.logger)||void 0===i||i.error(`Stream received invalid data in "${t}" message`),null===(n=this.logger)||void 0===n||n.debug(`Invalid JSON follows: ${r}`),null==e||e(new ih.LDStreamingError("Malformed JSON data in event stream"))},r=this.requests.createEventSource(this.streamUri,{headers:this.headers,errorFilter:t=>{var r,i;return t.status&&!(0,ih.isHttpRecoverable)(t.status)?(this.logConnectionResult(!1),null==e||e(new ih.LDStreamingError(t.message,t.status)),null===(r=this.logger)||void 0===r||r.error((0,oh.default)(t,"streaming request")),!1):(null===(i=this.logger)||void 0===i||i.warn((0,oh.default)(t,"streaming request","will retry")),this.logConnectionResult(!1),this.logConnectionStarted(),!0)},initialRetryDelayMillis:1e3*this.streamInitialReconnectDelay,readTimeoutMillis:3e5,retryResetIntervalMillis:6e4});this.eventSource=r,r.onclose=()=>{var e;null===(e=this.logger)||void 0===e||e.info("Closed LaunchDarkly stream connection")},r.onerror=()=>{},r.onopen=()=>{var e;null===(e=this.logger)||void 0===e||e.info("Opened LaunchDarkly stream connection")},r.onretrying=e=>{var t;null===(t=this.logger)||void 0===t||t.info(`Will retry stream connection in ${e.delayMillis} milliseconds`)},r.addEventListener("put",(r=>{var i;if(null===(i=this.logger)||void 0===i||i.debug("Received put event"),r&&r.data){this.logConnectionResult(!0);const i=(0,nh.deserializeAll)(r.data);if(!i)return void t("put",r.data);const n={[sh.default.Features.namespace]:i.data.flags,[sh.default.Segments.namespace]:i.data.segments};this.featureStore.init(n,(()=>null==e?void 0:e()))}else null==e||e(new ih.LDStreamingError("Unexpected payload from event stream"))})),r.addEventListener("patch",(r=>{var i,n;if(null===(i=this.logger)||void 0===i||i.debug("Received patch event"),r&&r.data){const e=(0,nh.deserializePatch)(r.data);if(!e)return void t("patch",r.data);if(e.kind){const t=lh(e.kind,e.path);t&&(null===(n=this.logger)||void 0===n||n.debug(`Updating ${t} in ${e.kind.namespace}`),this.featureStore.upsert(e.kind,e.data,(()=>{})))}}else null==e||e(new ih.LDStreamingError("Unexpected payload from event stream"))})),r.addEventListener("delete",(r=>{var i,n;if(null===(i=this.logger)||void 0===i||i.debug("Received delete event"),r&&r.data){const e=(0,nh.deserializeDelete)(r.data);if(!e)return void t("delete",r.data);if(e.kind){const t=lh(e.kind,e.path);t&&(null===(n=this.logger)||void 0===n||n.debug(`Deleting ${t} in ${e.kind.namespace}`),this.featureStore.upsert(e.kind,{key:t,version:e.version,deleted:!0},(()=>{})))}}else null==e||e(new ih.LDStreamingError("Unexpected payload from event stream"))}))}stop(){var e;null===(e=this.eventSource)||void 0===e||e.close(),this.eventSource=void 0}close(){this.stop()}};var uh={},ch=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};function dh(e,t,r){return ch(this,void 0,void 0,(function*(){if(!e)return!1;for(let i=0;i<e.length;i+=1){const n=yield t(e[i],i);if(r){if(!n)return!1}else if(n)return!0}return r}))}Object.defineProperty(uh,"__esModule",{value:!0}),uh.firstSeriesAsync=uh.allSeriesAsync=uh.firstResult=void 0,uh.firstResult=function(e,t){let r;return null==e||e.some(((e,i)=>(r=t(e,i),!!r))),r},uh.allSeriesAsync=function(e,t){return ch(this,void 0,void 0,(function*(){return dh(e,t,!0)}))},uh.firstSeriesAsync=function(e,t){return ch(this,void 0,void 0,(function*(){return dh(e,t,!1)}))};var hh,fh={};Object.defineProperty(fh,"__esModule",{value:!0}),function(e){e.MalformedFlag="MALFORMED_FLAG",e.UserNotSpecified="USER_NOT_SPECIFIED",e.FlagNotFound="FLAG_NOT_FOUND",e.ClientNotReady="CLIENT_NOT_READY"}(hh||(hh={})),fh.default=hh;var vh={},ph={};Object.defineProperty(ph,"__esModule",{value:!0});class gh{static prerequisiteFailed(e){return{kind:"PREREQUISITE_FAILED",prerequisiteKey:e}}static ruleMatch(e,t){return{kind:"RULE_MATCH",ruleId:e,ruleIndex:t}}}gh.Fallthrough={kind:"FALLTHROUGH"},gh.Off={kind:"OFF"},gh.TargetMatch={kind:"TARGET_MATCH"},ph.default=gh,Object.defineProperty(vh,"__esModule",{value:!0});const yh=ph;class mh{constructor(e,t,r){this.isError=e,this.detail=t,this.message=r,this.isError=e,this.detail=t,this.message=r}get isOff(){return this.detail.reason.kind===yh.default.Off.kind}setDefault(e){this.detail.value=e}static forError(e,t,r){return new mh(!0,{value:null!=r?r:null,variationIndex:null,reason:{kind:"ERROR",errorKind:e}},t)}static forSuccess(e,t,r){return new mh(!1,{value:e,variationIndex:void 0===r?null:r,reason:t})}}vh.default=mh;var bh={},Eh={};Object.defineProperty(Eh,"__esModule",{value:!0}),Eh.getBucketBy=Eh.getOffVariation=Eh.getVariation=void 0;const _h=ru,wh=fh,Oh=vh,Sh=new _h.AttributeReference("key");function xh(e,t,r){return _h.TypeValidators.Number.is(t)&&t>=0&&t<e.variations.length?Oh.default.forSuccess(e.variations[t],r,t):Oh.default.forError(wh.default.MalformedFlag,"Invalid variation index in flag")}Eh.getVariation=xh,Eh.getOffVariation=function(e,t){return _h.TypeValidators.Number.is(e.offVariation)?xh(e,e.offVariation,t):Oh.default.forSuccess(null,t)},Eh.getBucketBy=function(e,t){var r;return null!==(r=e?void 0:t)&&void 0!==r?r:Sh};var Ph={};Object.defineProperty(Ph,"__esModule",{value:!0});const kh=ru,Ih=Eh,Ah=ph,Rh=uh;function Mh(e,t,r){const i=r.key(t.contextKind);if(void 0!==i){if(t.values.indexOf(i)>=0)return(0,Ih.getVariation)(e,t.variation,Ah.default.TargetMatch)}}Ph.default=function(e,t){var r;return(null===(r=e.contextTargets)||void 0===r?void 0:r.length)?(0,Rh.firstResult)(e.contextTargets,(r=>{if(!r.contextKind||r.contextKind===kh.Context.userKind){const i=(e.targets||[]).find((e=>e.variation===r.variation));return i?Mh(e,i,t):void 0}return Mh(e,r,t)})):(0,Rh.firstResult)(e.targets,(r=>Mh(e,r,t)))};var Th={};Object.defineProperty(Th,"__esModule",{value:!0});Th.default=class{constructor(e){this.crypto=e}sha1Hex(e){const t=this.crypto.createHash("sha1");return t.update(e),t.digest("hex")}bucket(e,t,r,i,n="user",s){const a=function(e){return"string"==typeof e?e:Number.isInteger(e)?String(e):null}(e.valueForKind(r,n));if(null===a){return[0,e.kinds.indexOf(n)>=0]}const o=`${s?Number(s):`${t}.${i}`}.${a}`;return[parseInt(this.sha1Hex(o).substring(0,15),16)/0x1000000000000000,!0]}};var Dh={},jh={},Nh={exports:{}};var $h={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER||9007199254740991,RELEASE_TYPES:["major","premajor","minor","preminor","patch","prepatch","prerelease"],SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2};var Fh="object"==typeof process&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};!function(e,t){const{MAX_SAFE_COMPONENT_LENGTH:r}=$h,i=Fh,n=(t=e.exports={}).re=[],s=t.src=[],a=t.t={};let o=0;const l=(e,t,r)=>{const l=o++;i(e,l,t),a[e]=l,s[l]=t,n[l]=new RegExp(t,r?"g":void 0)};l("NUMERICIDENTIFIER","0|[1-9]\\d*"),l("NUMERICIDENTIFIERLOOSE","[0-9]+"),l("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),l("MAINVERSION",`(${s[a.NUMERICIDENTIFIER]})\\.(${s[a.NUMERICIDENTIFIER]})\\.(${s[a.NUMERICIDENTIFIER]})`),l("MAINVERSIONLOOSE",`(${s[a.NUMERICIDENTIFIERLOOSE]})\\.(${s[a.NUMERICIDENTIFIERLOOSE]})\\.(${s[a.NUMERICIDENTIFIERLOOSE]})`),l("PRERELEASEIDENTIFIER",`(?:${s[a.NUMERICIDENTIFIER]}|${s[a.NONNUMERICIDENTIFIER]})`),l("PRERELEASEIDENTIFIERLOOSE",`(?:${s[a.NUMERICIDENTIFIERLOOSE]}|${s[a.NONNUMERICIDENTIFIER]})`),l("PRERELEASE",`(?:-(${s[a.PRERELEASEIDENTIFIER]}(?:\\.${s[a.PRERELEASEIDENTIFIER]})*))`),l("PRERELEASELOOSE",`(?:-?(${s[a.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${s[a.PRERELEASEIDENTIFIERLOOSE]})*))`),l("BUILDIDENTIFIER","[0-9A-Za-z-]+"),l("BUILD",`(?:\\+(${s[a.BUILDIDENTIFIER]}(?:\\.${s[a.BUILDIDENTIFIER]})*))`),l("FULLPLAIN",`v?${s[a.MAINVERSION]}${s[a.PRERELEASE]}?${s[a.BUILD]}?`),l("FULL",`^${s[a.FULLPLAIN]}$`),l("LOOSEPLAIN",`[v=\\s]*${s[a.MAINVERSIONLOOSE]}${s[a.PRERELEASELOOSE]}?${s[a.BUILD]}?`),l("LOOSE",`^${s[a.LOOSEPLAIN]}$`),l("GTLT","((?:<|>)?=?)"),l("XRANGEIDENTIFIERLOOSE",`${s[a.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),l("XRANGEIDENTIFIER",`${s[a.NUMERICIDENTIFIER]}|x|X|\\*`),l("XRANGEPLAIN",`[v=\\s]*(${s[a.XRANGEIDENTIFIER]})(?:\\.(${s[a.XRANGEIDENTIFIER]})(?:\\.(${s[a.XRANGEIDENTIFIER]})(?:${s[a.PRERELEASE]})?${s[a.BUILD]}?)?)?`),l("XRANGEPLAINLOOSE",`[v=\\s]*(${s[a.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[a.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[a.XRANGEIDENTIFIERLOOSE]})(?:${s[a.PRERELEASELOOSE]})?${s[a.BUILD]}?)?)?`),l("XRANGE",`^${s[a.GTLT]}\\s*${s[a.XRANGEPLAIN]}$`),l("XRANGELOOSE",`^${s[a.GTLT]}\\s*${s[a.XRANGEPLAINLOOSE]}$`),l("COERCE",`(^|[^\\d])(\\d{1,${r}})(?:\\.(\\d{1,${r}}))?(?:\\.(\\d{1,${r}}))?(?:$|[^\\d])`),l("COERCERTL",s[a.COERCE],!0),l("LONETILDE","(?:~>?)"),l("TILDETRIM",`(\\s*)${s[a.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",l("TILDE",`^${s[a.LONETILDE]}${s[a.XRANGEPLAIN]}$`),l("TILDELOOSE",`^${s[a.LONETILDE]}${s[a.XRANGEPLAINLOOSE]}$`),l("LONECARET","(?:\\^)"),l("CARETTRIM",`(\\s*)${s[a.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",l("CARET",`^${s[a.LONECARET]}${s[a.XRANGEPLAIN]}$`),l("CARETLOOSE",`^${s[a.LONECARET]}${s[a.XRANGEPLAINLOOSE]}$`),l("COMPARATORLOOSE",`^${s[a.GTLT]}\\s*(${s[a.LOOSEPLAIN]})$|^$`),l("COMPARATOR",`^${s[a.GTLT]}\\s*(${s[a.FULLPLAIN]})$|^$`),l("COMPARATORTRIM",`(\\s*)${s[a.GTLT]}\\s*(${s[a.LOOSEPLAIN]}|${s[a.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",l("HYPHENRANGE",`^\\s*(${s[a.XRANGEPLAIN]})\\s+-\\s+(${s[a.XRANGEPLAIN]})\\s*$`),l("HYPHENRANGELOOSE",`^\\s*(${s[a.XRANGEPLAINLOOSE]})\\s+-\\s+(${s[a.XRANGEPLAINLOOSE]})\\s*$`),l("STAR","(<|>)?=?\\s*\\*"),l("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),l("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")}(Nh,Nh.exports);var Lh=Nh.exports;const Ch=Object.freeze({loose:!0}),Bh=Object.freeze({});var Vh=e=>e?"object"!=typeof e?Ch:e:Bh;const Uh=/^[0-9]+$/,zh=(e,t)=>{const r=Uh.test(e),i=Uh.test(t);return r&&i&&(e=+e,t=+t),e===t?0:r&&!i?-1:i&&!r?1:e<t?-1:1};var Kh={compareIdentifiers:zh,rcompareIdentifiers:(e,t)=>zh(t,e)};const Hh=Fh,{MAX_LENGTH:Gh,MAX_SAFE_INTEGER:qh}=$h,{re:Wh,t:Xh}=Lh,Jh=Vh,{compareIdentifiers:Yh}=Kh;var Zh=class e{constructor(t,r){if(r=Jh(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if("string"!=typeof t)throw new TypeError(`Invalid Version: ${t}`);if(t.length>Gh)throw new TypeError(`version is longer than ${Gh} characters`);Hh("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;const i=t.trim().match(r.loose?Wh[Xh.LOOSE]:Wh[Xh.FULL]);if(!i)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+i[1],this.minor=+i[2],this.patch=+i[3],this.major>qh||this.major<0)throw new TypeError("Invalid major version");if(this.minor>qh||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>qh||this.patch<0)throw new TypeError("Invalid patch version");i[4]?this.prerelease=i[4].split(".").map((e=>{if(/^[0-9]+$/.test(e)){const t=+e;if(t>=0&&t<qh)return t}return e})):this.prerelease=[],this.build=i[5]?i[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(Hh("SemVer.compare",this.version,this.options,t),!(t instanceof e)){if("string"==typeof t&&t===this.version)return 0;t=new e(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof e||(t=new e(t,this.options)),Yh(this.major,t.major)||Yh(this.minor,t.minor)||Yh(this.patch,t.patch)}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{const e=this.prerelease[r],i=t.prerelease[r];if(Hh("prerelease compare",r,e,i),void 0===e&&void 0===i)return 0;if(void 0===i)return 1;if(void 0===e)return-1;if(e!==i)return Yh(e,i)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{const e=this.build[r],i=t.build[r];if(Hh("prerelease compare",r,e,i),void 0===e&&void 0===i)return 0;if(void 0===i)return 1;if(void 0===e)return-1;if(e!==i)return Yh(e,i)}while(++r)}inc(e,t,r){switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t,r);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t,r);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t,r),this.inc("pre",t,r);break;case"prerelease":0===this.prerelease.length&&this.inc("patch",t,r),this.inc("pre",t,r);break;case"major":0===this.minor&&0===this.patch&&0!==this.prerelease.length||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":0===this.patch&&0!==this.prerelease.length||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":0===this.prerelease.length&&this.patch++,this.prerelease=[];break;case"pre":if(0===this.prerelease.length)this.prerelease=[0];else{let e=this.prerelease.length;for(;--e>=0;)"number"==typeof this.prerelease[e]&&(this.prerelease[e]++,e=-2);-1===e&&this.prerelease.push(0)}if(t){const e=Number(r)?1:0;0===Yh(this.prerelease[0],t)?isNaN(this.prerelease[1])&&(this.prerelease=[t,e]):this.prerelease=[t,e]}break;default:throw new Error(`invalid increment argument: ${e}`)}return this.format(),this.raw=this.version,this}};const{MAX_LENGTH:Qh}=$h,ef=Zh;var tf=(e,t)=>{if(e instanceof ef)return e;if("string"!=typeof e)return null;if(e.length>Qh)return null;try{return new ef(e,t)}catch(e){return null}};const rf=tf;var nf=(e,t)=>{const r=rf(e,t);return r?r.version:null};const sf=tf;var af=(e,t)=>{const r=sf(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};const of=Zh;var lf=(e,t,r,i,n)=>{"string"==typeof r&&(n=i,i=r,r=void 0);try{return new of(e instanceof of?e.version:e,r).inc(t,i,n).version}catch(e){return null}};const uf=Zh;var cf=(e,t,r)=>new uf(e,r).compare(new uf(t,r));const df=cf;var hf=(e,t,r)=>0===df(e,t,r);const ff=tf,vf=hf;var pf=(e,t)=>{const r=ff(e),i=ff(t);if(vf(r,i))return null;{const e=r.prerelease.length||i.prerelease.length,t=e?"pre":"",n=e?"prerelease":"";if(r.major!==i.major)return t+"major";if(r.minor!==i.minor)return t+"minor";if(r.patch!==i.patch)return t+"patch";if(!r.prerelease.length||!i.prerelease.length){if(r.patch)return"patch";if(r.minor)return"minor";if(r.major)return"major"}return n}};const gf=Zh;var yf=(e,t)=>new gf(e,t).major;const mf=Zh;var bf=(e,t)=>new mf(e,t).minor;const Ef=Zh;var _f=(e,t)=>new Ef(e,t).patch;const wf=tf;var Of=(e,t)=>{const r=wf(e,t);return r&&r.prerelease.length?r.prerelease:null};const Sf=cf;var xf=(e,t,r)=>Sf(t,e,r);const Pf=cf;var kf=(e,t)=>Pf(e,t,!0);const If=Zh;var Af=(e,t,r)=>{const i=new If(e,r),n=new If(t,r);return i.compare(n)||i.compareBuild(n)};const Rf=Af;var Mf=(e,t)=>e.sort(((e,r)=>Rf(e,r,t)));const Tf=Af;var Df=(e,t)=>e.sort(((e,r)=>Tf(r,e,t)));const jf=cf;var Nf=(e,t,r)=>jf(e,t,r)>0;const $f=cf;var Ff=(e,t,r)=>$f(e,t,r)<0;const Lf=cf;var Cf=(e,t,r)=>0!==Lf(e,t,r);const Bf=cf;var Vf=(e,t,r)=>Bf(e,t,r)>=0;const Uf=cf;var zf=(e,t,r)=>Uf(e,t,r)<=0;const Kf=hf,Hf=Cf,Gf=Nf,qf=Vf,Wf=Ff,Xf=zf;var Jf=(e,t,r,i)=>{switch(t){case"===":return"object"==typeof e&&(e=e.version),"object"==typeof r&&(r=r.version),e===r;case"!==":return"object"==typeof e&&(e=e.version),"object"==typeof r&&(r=r.version),e!==r;case"":case"=":case"==":return Kf(e,r,i);case"!=":return Hf(e,r,i);case">":return Gf(e,r,i);case">=":return qf(e,r,i);case"<":return Wf(e,r,i);case"<=":return Xf(e,r,i);default:throw new TypeError(`Invalid operator: ${t}`)}};const Yf=Zh,Zf=tf,{re:Qf,t:ev}=Lh;var tv,rv,iv,nv,sv,av,ov,lv,uv,cv,dv=(e,t)=>{if(e instanceof Yf)return e;if("number"==typeof e&&(e=String(e)),"string"!=typeof e)return null;let r=null;if((t=t||{}).rtl){let t;for(;(t=Qf[ev.COERCERTL].exec(e))&&(!r||r.index+r[0].length!==e.length);)r&&t.index+t[0].length===r.index+r[0].length||(r=t),Qf[ev.COERCERTL].lastIndex=t.index+t[1].length+t[2].length;Qf[ev.COERCERTL].lastIndex=-1}else r=e.match(Qf[ev.COERCE]);return null===r?null:Zf(`${r[2]}.${r[3]||"0"}.${r[4]||"0"}`,t)};function hv(){if(nv)return iv;function e(t){var r=this;if(r instanceof e||(r=new e),r.tail=null,r.head=null,r.length=0,t&&"function"==typeof t.forEach)t.forEach((function(e){r.push(e)}));else if(arguments.length>0)for(var i=0,n=arguments.length;i<n;i++)r.push(arguments[i]);return r}function t(e,t,r){var i=t===e.head?new n(r,null,t,e):new n(r,t,t.next,e);return null===i.next&&(e.tail=i),null===i.prev&&(e.head=i),e.length++,i}function r(e,t){e.tail=new n(t,e.tail,null,e),e.head||(e.head=e.tail),e.length++}function i(e,t){e.head=new n(t,null,e.head,e),e.tail||(e.tail=e.head),e.length++}function n(e,t,r,i){if(!(this instanceof n))return new n(e,t,r,i);this.list=i,this.value=e,t?(t.next=this,this.prev=t):this.prev=null,r?(r.prev=this,this.next=r):this.next=null}nv=1,iv=e,e.Node=n,e.create=e,e.prototype.removeNode=function(e){if(e.list!==this)throw new Error("removing node which does not belong to this list");var t=e.next,r=e.prev;return t&&(t.prev=r),r&&(r.next=t),e===this.head&&(this.head=t),e===this.tail&&(this.tail=r),e.list.length--,e.next=null,e.prev=null,e.list=null,t},e.prototype.unshiftNode=function(e){if(e!==this.head){e.list&&e.list.removeNode(e);var t=this.head;e.list=this,e.next=t,t&&(t.prev=e),this.head=e,this.tail||(this.tail=e),this.length++}},e.prototype.pushNode=function(e){if(e!==this.tail){e.list&&e.list.removeNode(e);var t=this.tail;e.list=this,e.prev=t,t&&(t.next=e),this.tail=e,this.head||(this.head=e),this.length++}},e.prototype.push=function(){for(var e=0,t=arguments.length;e<t;e++)r(this,arguments[e]);return this.length},e.prototype.unshift=function(){for(var e=0,t=arguments.length;e<t;e++)i(this,arguments[e]);return this.length},e.prototype.pop=function(){if(this.tail){var e=this.tail.value;return this.tail=this.tail.prev,this.tail?this.tail.next=null:this.head=null,this.length--,e}},e.prototype.shift=function(){if(this.head){var e=this.head.value;return this.head=this.head.next,this.head?this.head.prev=null:this.tail=null,this.length--,e}},e.prototype.forEach=function(e,t){t=t||this;for(var r=this.head,i=0;null!==r;i++)e.call(t,r.value,i,this),r=r.next},e.prototype.forEachReverse=function(e,t){t=t||this;for(var r=this.tail,i=this.length-1;null!==r;i--)e.call(t,r.value,i,this),r=r.prev},e.prototype.get=function(e){for(var t=0,r=this.head;null!==r&&t<e;t++)r=r.next;if(t===e&&null!==r)return r.value},e.prototype.getReverse=function(e){for(var t=0,r=this.tail;null!==r&&t<e;t++)r=r.prev;if(t===e&&null!==r)return r.value},e.prototype.map=function(t,r){r=r||this;for(var i=new e,n=this.head;null!==n;)i.push(t.call(r,n.value,this)),n=n.next;return i},e.prototype.mapReverse=function(t,r){r=r||this;for(var i=new e,n=this.tail;null!==n;)i.push(t.call(r,n.value,this)),n=n.prev;return i},e.prototype.reduce=function(e,t){var r,i=this.head;if(arguments.length>1)r=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");i=this.head.next,r=this.head.value}for(var n=0;null!==i;n++)r=e(r,i.value,n),i=i.next;return r},e.prototype.reduceReverse=function(e,t){var r,i=this.tail;if(arguments.length>1)r=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");i=this.tail.prev,r=this.tail.value}for(var n=this.length-1;null!==i;n--)r=e(r,i.value,n),i=i.prev;return r},e.prototype.toArray=function(){for(var e=new Array(this.length),t=0,r=this.head;null!==r;t++)e[t]=r.value,r=r.next;return e},e.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,r=this.tail;null!==r;t++)e[t]=r.value,r=r.prev;return e},e.prototype.slice=function(t,r){(r=r||this.length)<0&&(r+=this.length),(t=t||0)<0&&(t+=this.length);var i=new e;if(r<t||r<0)return i;t<0&&(t=0),r>this.length&&(r=this.length);for(var n=0,s=this.head;null!==s&&n<t;n++)s=s.next;for(;null!==s&&n<r;n++,s=s.next)i.push(s.value);return i},e.prototype.sliceReverse=function(t,r){(r=r||this.length)<0&&(r+=this.length),(t=t||0)<0&&(t+=this.length);var i=new e;if(r<t||r<0)return i;t<0&&(t=0),r>this.length&&(r=this.length);for(var n=this.length,s=this.tail;null!==s&&n>r;n--)s=s.prev;for(;null!==s&&n>t;n--,s=s.prev)i.push(s.value);return i},e.prototype.splice=function(e,r,...i){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var n=0,s=this.head;null!==s&&n<e;n++)s=s.next;var a=[];for(n=0;s&&n<r;n++)a.push(s.value),s=this.removeNode(s);null===s&&(s=this.tail),s!==this.head&&s!==this.tail&&(s=s.prev);for(n=0;n<i.length;n++)s=t(this,s,i[n]);return a},e.prototype.reverse=function(){for(var e=this.head,t=this.tail,r=e;null!==r;r=r.prev){var i=r.prev;r.prev=r.next,r.next=i}return this.head=t,this.tail=e,this};try{(rv?tv:(rv=1,tv=function(e){e.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}))(e)}catch(e){}return iv}function fv(){if(lv)return ov;lv=1;class e{constructor(t,r){if(r=i(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof n)return this.raw=t.value,this.set=[[t]],this.format(),this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t,this.set=t.split("||").map((e=>this.parseRange(e.trim()))).filter((e=>e.length)),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${t}`);if(this.set.length>1){const e=this.set[0];if(this.set=this.set.filter((e=>!v(e[0]))),0===this.set.length)this.set=[e];else if(this.set.length>1)for(const e of this.set)if(1===e.length&&p(e[0])){this.set=[e];break}}this.format()}format(){return this.range=this.set.map((e=>e.join(" ").trim())).join("||").trim(),this.range}toString(){return this.range}parseRange(e){e=e.trim();const t=((this.options.includePrerelease&&h)|(this.options.loose&&f))+":"+e,i=r.get(t);if(i)return i;const a=this.options.loose,p=a?o[l.HYPHENRANGELOOSE]:o[l.HYPHENRANGE];e=e.replace(p,k(this.options.includePrerelease)),s("hyphen replace",e),e=e.replace(o[l.COMPARATORTRIM],u),s("comparator trim",e);let g=(e=(e=(e=e.replace(o[l.TILDETRIM],c)).replace(o[l.CARETTRIM],d)).split(/\s+/).join(" ")).split(" ").map((e=>y(e,this.options))).join(" ").split(/\s+/).map((e=>P(e,this.options)));a&&(g=g.filter((e=>(s("loose invalid filter",e,this.options),!!e.match(o[l.COMPARATORLOOSE]))))),s("range list",g);const m=new Map,b=g.map((e=>new n(e,this.options)));for(const e of b){if(v(e))return[e];m.set(e.value,e)}m.size>1&&m.has("")&&m.delete("");const E=[...m.values()];return r.set(t,E),E}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some((e=>g(e,r)&&t.set.some((t=>g(t,r)&&e.every((e=>t.every((t=>e.intersects(t,r)))))))))}test(e){if(!e)return!1;if("string"==typeof e)try{e=new a(e,this.options)}catch(e){return!1}for(let t=0;t<this.set.length;t++)if(I(this.set[t],e,this.options))return!0;return!1}}ov=e;const t=function(){if(av)return sv;av=1;const e=hv(),t=Symbol("max"),r=Symbol("length"),i=Symbol("lengthCalculator"),n=Symbol("allowStale"),s=Symbol("maxAge"),a=Symbol("dispose"),o=Symbol("noDisposeOnSet"),l=Symbol("lruList"),u=Symbol("cache"),c=Symbol("updateAgeOnGet"),d=()=>1,h=(e,t,r)=>{const i=e[u].get(t);if(i){const t=i.value;if(f(e,t)){if(p(e,i),!e[n])return}else r&&(e[c]&&(i.value.now=Date.now()),e[l].unshiftNode(i));return t.value}},f=(e,t)=>{if(!t||!t.maxAge&&!e[s])return!1;const r=Date.now()-t.now;return t.maxAge?r>t.maxAge:e[s]&&r>e[s]},v=e=>{if(e[r]>e[t])for(let i=e[l].tail;e[r]>e[t]&&null!==i;){const t=i.prev;p(e,i),i=t}},p=(e,t)=>{if(t){const i=t.value;e[a]&&e[a](i.key,i.value),e[r]-=i.length,e[u].delete(i.key),e[l].removeNode(t)}};class g{constructor(e,t,r,i,n){this.key=e,this.value=t,this.length=r,this.now=i,this.maxAge=n||0}}const y=(e,t,r,i)=>{let s=r.value;f(e,s)&&(p(e,r),e[n]||(s=void 0)),s&&t.call(i,s.value,s.key,e)};return sv=class{constructor(e){if("number"==typeof e&&(e={max:e}),e||(e={}),e.max&&("number"!=typeof e.max||e.max<0))throw new TypeError("max must be a non-negative number");this[t]=e.max||1/0;const r=e.length||d;if(this[i]="function"!=typeof r?d:r,this[n]=e.stale||!1,e.maxAge&&"number"!=typeof e.maxAge)throw new TypeError("maxAge must be a number");this[s]=e.maxAge||0,this[a]=e.dispose,this[o]=e.noDisposeOnSet||!1,this[c]=e.updateAgeOnGet||!1,this.reset()}set max(e){if("number"!=typeof e||e<0)throw new TypeError("max must be a non-negative number");this[t]=e||1/0,v(this)}get max(){return this[t]}set allowStale(e){this[n]=!!e}get allowStale(){return this[n]}set maxAge(e){if("number"!=typeof e)throw new TypeError("maxAge must be a non-negative number");this[s]=e,v(this)}get maxAge(){return this[s]}set lengthCalculator(e){"function"!=typeof e&&(e=d),e!==this[i]&&(this[i]=e,this[r]=0,this[l].forEach((e=>{e.length=this[i](e.value,e.key),this[r]+=e.length}))),v(this)}get lengthCalculator(){return this[i]}get length(){return this[r]}get itemCount(){return this[l].length}rforEach(e,t){t=t||this;for(let r=this[l].tail;null!==r;){const i=r.prev;y(this,e,r,t),r=i}}forEach(e,t){t=t||this;for(let r=this[l].head;null!==r;){const i=r.next;y(this,e,r,t),r=i}}keys(){return this[l].toArray().map((e=>e.key))}values(){return this[l].toArray().map((e=>e.value))}reset(){this[a]&&this[l]&&this[l].length&&this[l].forEach((e=>this[a](e.key,e.value))),this[u]=new Map,this[l]=new e,this[r]=0}dump(){return this[l].map((e=>!f(this,e)&&{k:e.key,v:e.value,e:e.now+(e.maxAge||0)})).toArray().filter((e=>e))}dumpLru(){return this[l]}set(e,n,c){if((c=c||this[s])&&"number"!=typeof c)throw new TypeError("maxAge must be a number");const d=c?Date.now():0,h=this[i](n,e);if(this[u].has(e)){if(h>this[t])return p(this,this[u].get(e)),!1;const i=this[u].get(e).value;return this[a]&&(this[o]||this[a](e,i.value)),i.now=d,i.maxAge=c,i.value=n,this[r]+=h-i.length,i.length=h,this.get(e),v(this),!0}const f=new g(e,n,h,d,c);return f.length>this[t]?(this[a]&&this[a](e,n),!1):(this[r]+=f.length,this[l].unshift(f),this[u].set(e,this[l].head),v(this),!0)}has(e){if(!this[u].has(e))return!1;const t=this[u].get(e).value;return!f(this,t)}get(e){return h(this,e,!0)}peek(e){return h(this,e,!1)}pop(){const e=this[l].tail;return e?(p(this,e),e.value):null}del(e){p(this,this[u].get(e))}load(e){this.reset();const t=Date.now();for(let r=e.length-1;r>=0;r--){const i=e[r],n=i.e||0;if(0===n)this.set(i.k,i.v);else{const e=n-t;e>0&&this.set(i.k,i.v,e)}}}prune(){this[u].forEach(((e,t)=>h(this,t,!1)))}},sv}(),r=new t({max:1e3}),i=Vh,n=vv(),s=Fh,a=Zh,{re:o,t:l,comparatorTrimReplace:u,tildeTrimReplace:c,caretTrimReplace:d}=Lh,{FLAG_INCLUDE_PRERELEASE:h,FLAG_LOOSE:f}=$h,v=e=>"<0.0.0-0"===e.value,p=e=>""===e.value,g=(e,t)=>{let r=!0;const i=e.slice();let n=i.pop();for(;r&&i.length;)r=i.every((e=>n.intersects(e,t))),n=i.pop();return r},y=(e,t)=>(s("comp",e,t),e=_(e,t),s("caret",e),e=b(e,t),s("tildes",e),e=O(e,t),s("xrange",e),e=x(e,t),s("stars",e),e),m=e=>!e||"x"===e.toLowerCase()||"*"===e,b=(e,t)=>e.trim().split(/\s+/).map((e=>E(e,t))).join(" "),E=(e,t)=>{const r=t.loose?o[l.TILDELOOSE]:o[l.TILDE];return e.replace(r,((t,r,i,n,a)=>{let o;return s("tilde",e,t,r,i,n,a),m(r)?o="":m(i)?o=`>=${r}.0.0 <${+r+1}.0.0-0`:m(n)?o=`>=${r}.${i}.0 <${r}.${+i+1}.0-0`:a?(s("replaceTilde pr",a),o=`>=${r}.${i}.${n}-${a} <${r}.${+i+1}.0-0`):o=`>=${r}.${i}.${n} <${r}.${+i+1}.0-0`,s("tilde return",o),o}))},_=(e,t)=>e.trim().split(/\s+/).map((e=>w(e,t))).join(" "),w=(e,t)=>{s("caret",e,t);const r=t.loose?o[l.CARETLOOSE]:o[l.CARET],i=t.includePrerelease?"-0":"";return e.replace(r,((t,r,n,a,o)=>{let l;return s("caret",e,t,r,n,a,o),m(r)?l="":m(n)?l=`>=${r}.0.0${i} <${+r+1}.0.0-0`:m(a)?l="0"===r?`>=${r}.${n}.0${i} <${r}.${+n+1}.0-0`:`>=${r}.${n}.0${i} <${+r+1}.0.0-0`:o?(s("replaceCaret pr",o),l="0"===r?"0"===n?`>=${r}.${n}.${a}-${o} <${r}.${n}.${+a+1}-0`:`>=${r}.${n}.${a}-${o} <${r}.${+n+1}.0-0`:`>=${r}.${n}.${a}-${o} <${+r+1}.0.0-0`):(s("no pr"),l="0"===r?"0"===n?`>=${r}.${n}.${a}${i} <${r}.${n}.${+a+1}-0`:`>=${r}.${n}.${a}${i} <${r}.${+n+1}.0-0`:`>=${r}.${n}.${a} <${+r+1}.0.0-0`),s("caret return",l),l}))},O=(e,t)=>(s("replaceXRanges",e,t),e.split(/\s+/).map((e=>S(e,t))).join(" ")),S=(e,t)=>{e=e.trim();const r=t.loose?o[l.XRANGELOOSE]:o[l.XRANGE];return e.replace(r,((r,i,n,a,o,l)=>{s("xRange",e,r,i,n,a,o,l);const u=m(n),c=u||m(a),d=c||m(o),h=d;return"="===i&&h&&(i=""),l=t.includePrerelease?"-0":"",u?r=">"===i||"<"===i?"<0.0.0-0":"*":i&&h?(c&&(a=0),o=0,">"===i?(i=">=",c?(n=+n+1,a=0,o=0):(a=+a+1,o=0)):"<="===i&&(i="<",c?n=+n+1:a=+a+1),"<"===i&&(l="-0"),r=`${i+n}.${a}.${o}${l}`):c?r=`>=${n}.0.0${l} <${+n+1}.0.0-0`:d&&(r=`>=${n}.${a}.0${l} <${n}.${+a+1}.0-0`),s("xRange return",r),r}))},x=(e,t)=>(s("replaceStars",e,t),e.trim().replace(o[l.STAR],"")),P=(e,t)=>(s("replaceGTE0",e,t),e.trim().replace(o[t.includePrerelease?l.GTE0PRE:l.GTE0],"")),k=e=>(t,r,i,n,s,a,o,l,u,c,d,h,f)=>`${r=m(i)?"":m(n)?`>=${i}.0.0${e?"-0":""}`:m(s)?`>=${i}.${n}.0${e?"-0":""}`:a?`>=${r}`:`>=${r}${e?"-0":""}`} ${l=m(u)?"":m(c)?`<${+u+1}.0.0-0`:m(d)?`<${u}.${+c+1}.0-0`:h?`<=${u}.${c}.${d}-${h}`:e?`<${u}.${c}.${+d+1}-0`:`<=${l}`}`.trim(),I=(e,t,r)=>{for(let r=0;r<e.length;r++)if(!e[r].test(t))return!1;if(t.prerelease.length&&!r.includePrerelease){for(let r=0;r<e.length;r++)if(s(e[r].semver),e[r].semver!==n.ANY&&e[r].semver.prerelease.length>0){const i=e[r].semver;if(i.major===t.major&&i.minor===t.minor&&i.patch===t.patch)return!0}return!1}return!0};return ov}function vv(){if(cv)return uv;cv=1;const e=Symbol("SemVer ANY");class t{static get ANY(){return e}constructor(i,n){if(n=r(n),i instanceof t){if(i.loose===!!n.loose)return i;i=i.value}a("comparator",i,n),this.options=n,this.loose=!!n.loose,this.parse(i),this.semver===e?this.value="":this.value=this.operator+this.semver.version,a("comp",this)}parse(t){const r=this.options.loose?i[n.COMPARATORLOOSE]:i[n.COMPARATOR],s=t.match(r);if(!s)throw new TypeError(`Invalid comparator: ${t}`);this.operator=void 0!==s[1]?s[1]:"","="===this.operator&&(this.operator=""),s[2]?this.semver=new o(s[2],this.options.loose):this.semver=e}toString(){return this.value}test(t){if(a("Comparator.test",t,this.options.loose),this.semver===e||t===e)return!0;if("string"==typeof t)try{t=new o(t,this.options)}catch(e){return!1}return s(t,this.operator,this.semver,this.options)}intersects(e,i){if(!(e instanceof t))throw new TypeError("a Comparator is required");return""===this.operator?""===this.value||new l(e.value,i).test(this.value):""===e.operator?""===e.value||new l(this.value,i).test(e.semver):(!(i=r(i)).includePrerelease||"<0.0.0-0"!==this.value&&"<0.0.0-0"!==e.value)&&(!(!i.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0")))&&(!(!this.operator.startsWith(">")||!e.operator.startsWith(">"))||(!(!this.operator.startsWith("<")||!e.operator.startsWith("<"))||(!(this.semver.version!==e.semver.version||!this.operator.includes("=")||!e.operator.includes("="))||(!!(s(this.semver,"<",e.semver,i)&&this.operator.startsWith(">")&&e.operator.startsWith("<"))||!!(s(this.semver,">",e.semver,i)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))))))}}uv=t;const r=Vh,{re:i,t:n}=Lh,s=Jf,a=Fh,o=Zh,l=fv();return uv}const pv=fv();var gv=(e,t,r)=>{try{t=new pv(t,r)}catch(e){return!1}return t.test(e)};const yv=fv();var mv=(e,t)=>new yv(e,t).set.map((e=>e.map((e=>e.value)).join(" ").trim().split(" ")));const bv=Zh,Ev=fv();var _v=(e,t,r)=>{let i=null,n=null,s=null;try{s=new Ev(t,r)}catch(e){return null}return e.forEach((e=>{s.test(e)&&(i&&-1!==n.compare(e)||(i=e,n=new bv(i,r)))})),i};const wv=Zh,Ov=fv();var Sv=(e,t,r)=>{let i=null,n=null,s=null;try{s=new Ov(t,r)}catch(e){return null}return e.forEach((e=>{s.test(e)&&(i&&1!==n.compare(e)||(i=e,n=new wv(i,r)))})),i};const xv=Zh,Pv=fv(),kv=Nf;var Iv=(e,t)=>{e=new Pv(e,t);let r=new xv("0.0.0");if(e.test(r))return r;if(r=new xv("0.0.0-0"),e.test(r))return r;r=null;for(let t=0;t<e.set.length;++t){const i=e.set[t];let n=null;i.forEach((e=>{const t=new xv(e.semver.version);switch(e.operator){case">":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":n&&!kv(t,n)||(n=t);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${e.operator}`)}})),!n||r&&!kv(r,n)||(r=n)}return r&&e.test(r)?r:null};const Av=fv();var Rv=(e,t)=>{try{return new Av(e,t).range||"*"}catch(e){return null}};const Mv=Zh,Tv=vv(),{ANY:Dv}=Tv,jv=fv(),Nv=gv,$v=Nf,Fv=Ff,Lv=zf,Cv=Vf;var Bv=(e,t,r,i)=>{let n,s,a,o,l;switch(e=new Mv(e,i),t=new jv(t,i),r){case">":n=$v,s=Lv,a=Fv,o=">",l=">=";break;case"<":n=Fv,s=Cv,a=$v,o="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Nv(e,t,i))return!1;for(let r=0;r<t.set.length;++r){const u=t.set[r];let c=null,d=null;if(u.forEach((e=>{e.semver===Dv&&(e=new Tv(">=0.0.0")),c=c||e,d=d||e,n(e.semver,c.semver,i)?c=e:a(e.semver,d.semver,i)&&(d=e)})),c.operator===o||c.operator===l)return!1;if((!d.operator||d.operator===o)&&s(e,d.semver))return!1;if(d.operator===l&&a(e,d.semver))return!1}return!0};const Vv=Bv;var Uv=(e,t,r)=>Vv(e,t,">",r);const zv=Bv;var Kv=(e,t,r)=>zv(e,t,"<",r);const Hv=fv();var Gv=(e,t,r)=>(e=new Hv(e,r),t=new Hv(t,r),e.intersects(t,r));const qv=gv,Wv=cf;const Xv=fv(),Jv=vv(),{ANY:Yv}=Jv,Zv=gv,Qv=cf,ep=[new Jv(">=0.0.0-0")],tp=[new Jv(">=0.0.0")],rp=(e,t,r)=>{if(e===t)return!0;if(1===e.length&&e[0].semver===Yv){if(1===t.length&&t[0].semver===Yv)return!0;e=r.includePrerelease?ep:tp}if(1===t.length&&t[0].semver===Yv){if(r.includePrerelease)return!0;t=tp}const i=new Set;let n,s,a,o,l,u,c;for(const t of e)">"===t.operator||">="===t.operator?n=ip(n,t,r):"<"===t.operator||"<="===t.operator?s=np(s,t,r):i.add(t.semver);if(i.size>1)return null;if(n&&s){if(a=Qv(n.semver,s.semver,r),a>0)return null;if(0===a&&(">="!==n.operator||"<="!==s.operator))return null}for(const e of i){if(n&&!Zv(e,String(n),r))return null;if(s&&!Zv(e,String(s),r))return null;for(const i of t)if(!Zv(e,String(i),r))return!1;return!0}let d=!(!s||r.includePrerelease||!s.semver.prerelease.length)&&s.semver,h=!(!n||r.includePrerelease||!n.semver.prerelease.length)&&n.semver;d&&1===d.prerelease.length&&"<"===s.operator&&0===d.prerelease[0]&&(d=!1);for(const e of t){if(c=c||">"===e.operator||">="===e.operator,u=u||"<"===e.operator||"<="===e.operator,n)if(h&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===h.major&&e.semver.minor===h.minor&&e.semver.patch===h.patch&&(h=!1),">"===e.operator||">="===e.operator){if(o=ip(n,e,r),o===e&&o!==n)return!1}else if(">="===n.operator&&!Zv(n.semver,String(e),r))return!1;if(s)if(d&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===d.major&&e.semver.minor===d.minor&&e.semver.patch===d.patch&&(d=!1),"<"===e.operator||"<="===e.operator){if(l=np(s,e,r),l===e&&l!==s)return!1}else if("<="===s.operator&&!Zv(s.semver,String(e),r))return!1;if(!e.operator&&(s||n)&&0!==a)return!1}return!(n&&u&&!s&&0!==a)&&(!(s&&c&&!n&&0!==a)&&(!h&&!d))},ip=(e,t,r)=>{if(!e)return t;const i=Qv(e.semver,t.semver,r);return i>0?e:i<0||">"===t.operator&&">="===e.operator?t:e},np=(e,t,r)=>{if(!e)return t;const i=Qv(e.semver,t.semver,r);return i<0?e:i>0||"<"===t.operator&&"<="===e.operator?t:e};var sp=(e,t,r={})=>{if(e===t)return!0;e=new Xv(e,r),t=new Xv(t,r);let i=!1;e:for(const n of e.set){for(const e of t.set){const t=rp(n,e,r);if(i=i||null!==t,t)continue e}if(i)return!1}return!0};const ap=Lh,op=$h,lp=Zh,up=Kh,cp=(e,t,r)=>{const i=[];let n=null,s=null;const a=e.sort(((e,t)=>Wv(e,t,r)));for(const e of a){qv(e,t,r)?(s=e,n||(n=e)):(s&&i.push([n,s]),s=null,n=null)}n&&i.push([n,null]);const o=[];for(const[e,t]of i)e===t?o.push(e):t||e!==a[0]?t?e===a[0]?o.push(`<=${t}`):o.push(`${e} - ${t}`):o.push(`>=${e}`):o.push("*");const l=o.join(" || "),u="string"==typeof t.raw?t.raw:String(t);return l.length<u.length?l:t};var dp={parse:tf,valid:nf,clean:af,inc:lf,diff:pf,major:yf,minor:bf,patch:_f,prerelease:Of,compare:cf,rcompare:xf,compareLoose:kf,compareBuild:Af,sort:Mf,rsort:Df,gt:Nf,lt:Ff,eq:hf,neq:Cf,gte:Vf,lte:zf,cmp:Jf,coerce:dv,Comparator:vv(),Range:fv(),satisfies:gv,toComparators:mv,maxSatisfying:_v,minSatisfying:Sv,minVersion:Iv,validRange:Rv,outside:Bv,gtr:Uv,ltr:Kv,intersects:Gv,simplifyRange:cp,subset:sp,SemVer:lp,re:ap.re,src:ap.src,tokens:ap.t,SEMVER_SPEC_VERSION:op.SEMVER_SPEC_VERSION,RELEASE_TYPES:op.RELEASE_TYPES,compareIdentifiers:up.compareIdentifiers,rcompareIdentifiers:up.rcompareIdentifiers};Object.defineProperty(jh,"__esModule",{value:!0});const hp=ru,fp=dp,vp=/^\d+(\.\d+)?(\.\d+)?/;function pp(e){if(hp.TypeValidators.String.is(e)&&!e.startsWith("v")){const t=(0,fp.parse)(e);if(t)return t;const r=vp.exec(e);if(r){let t=r[0];for(let e=1;e<r.length;e+=1)void 0===r[e]&&(t+=".0");return t+=e.substring(r[0].length),(0,fp.parse)(t)}}return null}function gp(e){return(t,r)=>{const i=pp(t),n=pp(r);return!!(i&&n&&e(i,n))}}function yp(e,t,r){return(i,n)=>!(!t.is(i)||!t.is(n))&&(r?e(r(i),r(n)):e(i,n))}function mp(e){return"number"==typeof e?e:Date.parse(e)}const bp={in:(e,t)=>e===t,endsWith:yp(((e,t)=>e.endsWith(t)),hp.TypeValidators.String),startsWith:yp(((e,t)=>e.startsWith(t)),hp.TypeValidators.String),matches:yp(((e,t)=>function(e,t){try{return new RegExp(e).test(t)}catch(e){return!1}}(t,e)),hp.TypeValidators.String),contains:yp(((e,t)=>e.indexOf(t)>-1),hp.TypeValidators.String),lessThan:yp(((e,t)=>e<t),hp.TypeValidators.Number),lessThanOrEqual:yp(((e,t)=>e<=t),hp.TypeValidators.Number),greaterThan:yp(((e,t)=>e>t),hp.TypeValidators.Number),greaterThanOrEqual:yp(((e,t)=>e>=t),hp.TypeValidators.Number),before:yp(((e,t)=>e<t),hp.TypeValidators.Date,mp),after:yp(((e,t)=>e>t),hp.TypeValidators.Date,mp),semVerEqual:gp(((e,t)=>0===e.compare(t))),semVerLessThan:gp(((e,t)=>e.compare(t)<0)),semVerGreaterThan:gp(((e,t)=>e.compare(t)>0))};jh.default=class{static is(e){return Object.prototype.hasOwnProperty.call(bp,e)}static execute(e,t,r){var i,n;return null!==(n=null===(i=bp[e])||void 0===i?void 0:i.call(bp,t,r))&&void 0!==n&&n}},Object.defineProperty(Dh,"__esModule",{value:!0});const Ep=jh;function _p(e,t){return e.negate?!t:t}function wp(e,t,r){return r.some((r=>Ep.default.execute(e,t,r)))}Dh.default=function(e,t){const r=t.valueForKind(e.attributeReference,e.contextKind);return null!=r&&(Array.isArray(r)?_p(e,r.some((t=>wp(e.op,t,e.values)))):_p(e,wp(e.op,r,e.values)))};var Op={};function Sp(e,t,r){if(t)for(let r=0;r<t.length;r+=1){const i=t[r],n=e.key(i.contextKind);if(n&&i.values.includes(n))return!0}if(r){const t=e.key("user");if(t&&r.includes(t))return!0}return!1}Object.defineProperty(Op,"__esModule",{value:!0}),Op.default=function(e,t){if(Sp(t,e.includedContexts,e.included))return!0;const r=Sp(t,e.excludedContexts,e.excluded);return r?!r:void 0};var xp={};Object.defineProperty(xp,"__esModule",{value:!0}),xp.default=function(e){return`${e.key}.g${e.generation}`};var Pp=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(bh,"__esModule",{value:!0});const kp=vh,Ip=Eh,Ap=ph,Rp=fh,Mp=Ph,Tp=uh,Dp=Th,jp=Dh,Np=Op,$p=xp,Fp={HEALTHY:1,STALE:2,STORE_ERROR:3,NOT_CONFIGURED:4};function Lp(e){return void 0!==e&&Fp[e]||0}function Cp(e,t){return void 0!==e&&Lp(e)>Lp(t)?e:t}class Bp{}class Vp{constructor(e){this.isMatch=e,this.error=!1}}class Up{constructor(e){this.result=e,this.error=!0,this.isMatch=!1}}bh.default=class{constructor(e,t){this.queries=t,this.bucketer=new Dp.default(e.crypto)}evaluate(e,t,r){return Pp(this,void 0,void 0,(function*(){const i=new Bp,n=yield this.evaluateInternal(e,t,i,[],r);return i.bigSegmentsStatus&&(n.detail.reason.bigSegmentsStatus=i.bigSegmentsStatus),n.events=i.events,n}))}evaluateInternal(e,t,r,i,n){return Pp(this,void 0,void 0,(function*(){if(!e.on)return(0,Ip.getOffVariation)(e,Ap.default.Off);const s=yield this.checkPrerequisites(e,t,r,i,n);if(s)return s;const a=(0,Mp.default)(e,t);if(a)return a;const o=yield this.evaluateRules(e,t,r);return o||this.variationForContext(e.fallthrough,t,e,Ap.default.Fallthrough)}))}checkPrerequisites(e,t,r,i,n){return Pp(this,void 0,void 0,(function*(){let s;if(e.prerequisites&&e.prerequisites.length)return yield(0,Tp.allSeriesAsync)(e.prerequisites,(a=>Pp(this,void 0,void 0,(function*(){var o;if(-1!==i.indexOf(a.key))return s=kp.default.forError(Rp.default.MalformedFlag,`Prerequisite of ${e.key} causing a circular reference. This is probably a temporary condition due to an incomplete update.`),!1;const l=[...i,a.key],u=yield this.queries.getFlag(a.key);if(!u)return s=(0,Ip.getOffVariation)(e,Ap.default.prerequisiteFailed(a.key)),!1;const c=yield this.evaluateInternal(u,t,r,l,n);return r.events=null!==(o=r.events)&&void 0!==o?o:[],n&&r.events.push(n.evalEvent(u,t,c.detail,null,e)),c.isError?(s=c,!1):!c.isOff&&c.detail.variationIndex===a.variation||(s=(0,Ip.getOffVariation)(e,Ap.default.prerequisiteFailed(a.key)),!1)})))),s||void 0}))}evaluateRules(e,t,r){return Pp(this,void 0,void 0,(function*(){let i;return yield(0,Tp.firstSeriesAsync)(e.rules,((n,s)=>Pp(this,void 0,void 0,(function*(){return i=yield this.ruleMatchContext(e,n,s,t,r,[]),!!i})))),i}))}clauseMatchContext(e,t,r,i){return Pp(this,void 0,void 0,(function*(){let n;if("segmentMatch"===e.op){const s=yield(0,Tp.firstSeriesAsync)(e.values,(e=>Pp(this,void 0,void 0,(function*(){const s=yield this.queries.getSegment(e);if(s){if(r.includes(s.key))return n=kp.default.forError(Rp.default.MalformedFlag,`Segment rule referencing segment ${s.key} caused a circular reference. This is probably a temporary condition due to an incomplete update`),!0;const e=[...r,null==s?void 0:s.key],a=yield this.segmentMatchContext(s,t,i,e);return a.error&&(n=a.result),a.error||a.isMatch}return!1}))));return n?new Up(n):new Vp(s)}return e.attributeReference.isValid?new Vp((0,jp.default)(e,t)):new Up(kp.default.forError(Rp.default.MalformedFlag,"Invalid attribute reference in clause"))}))}ruleMatchContext(e,t,r,i,n,s){return Pp(this,void 0,void 0,(function*(){if(!t.clauses)return;let a;const o=yield(0,Tp.allSeriesAsync)(t.clauses,(e=>Pp(this,void 0,void 0,(function*(){const t=yield this.clauseMatchContext(e,i,s,n);return a=t.result,t.error||t.isMatch}))));return a||(o?this.variationForContext(t,i,e,Ap.default.ruleMatch(t.id,r)):void 0)}))}variationForContext(e,t,r,i){if(void 0===e)return kp.default.forError(Rp.default.MalformedFlag,"Fallthrough variation undefined");if(void 0!==e.variation)return(0,Ip.getVariation)(r,e.variation,i);if(e.rollout){const{rollout:n}=e,{variations:s}=n,a="experiment"===n.kind;if(s&&s.length){const e=(0,Ip.getBucketBy)(a,n.bucketByAttributeReference);if(!e.isValid)return kp.default.forError(Rp.default.MalformedFlag,"Invalid attribute reference for bucketBy in rollout");const[o,l]=this.bucketer.bucket(t,r.key,e,r.salt||"",n.contextKind,n.seed),u=Object.assign({},i);let c=0;for(let e=0;e<s.length;e+=1){const t=s[e];if(c+=t.weight/1e5,o<c)return a&&l&&!t.untracked&&(u.inExperiment=!0),(0,Ip.getVariation)(r,t.variation,u)}const d=s[s.length-1];return a&&!d.untracked&&(u.inExperiment=!0),(0,Ip.getVariation)(r,d.variation,u)}}return kp.default.forError(Rp.default.MalformedFlag,"Variation/rollout object with no variation or rollout")}segmentRuleMatchContext(e,t,r,i,n){return Pp(this,void 0,void 0,(function*(){let s;const a=yield(0,Tp.allSeriesAsync)(t.clauses,(e=>Pp(this,void 0,void 0,(function*(){const t=yield this.clauseMatchContext(e,r,n,i);return s=t.result,t.error||t.isMatch}))));if(s)return new Up(s);if(a){if(void 0===t.weight)return new Vp(a);const i=(0,Ip.getBucketBy)(!1,t.bucketByAttributeReference);if(!i.isValid)return new Up(kp.default.forError(Rp.default.MalformedFlag,"Invalid attribute reference in clause"));const[n]=this.bucketer.bucket(r,e.key,i,e.salt||"",t.rolloutContextKind);return new Vp(n<t.weight/1e5)}return new Vp(!1)}))}simpleSegmentMatchContext(e,t,r,i){return Pp(this,void 0,void 0,(function*(){const n=(0,Np.default)(e,t);if(void 0!==n)return new Vp(n);let s;const a=yield(0,Tp.firstSeriesAsync)(e.rules,(n=>Pp(this,void 0,void 0,(function*(){const a=yield this.segmentRuleMatchContext(e,n,t,r,i);return s=a.result,a.error||a.isMatch}))));return s?new Up(s):new Vp(a)}))}segmentMatchContext(e,t,r,i){return Pp(this,void 0,void 0,(function*(){if(!e.unbounded)return this.simpleSegmentMatchContext(e,t,r,i);if(!e.generation)return r.bigSegmentsStatus=Cp(r.bigSegmentsStatus,"NOT_CONFIGURED"),new Vp(!1);const n=e.unboundedContextKind||"user",s=t.key(n);if(void 0===s)return new Vp(!1);if(r.bigSegmentsMembership&&r.bigSegmentsMembership[s])return this.bigSegmentMatchContext(r.bigSegmentsMembership[s],e,t,r);const a=yield this.queries.getBigSegmentsMembership(s);if(r.bigSegmentsMembership=r.bigSegmentsMembership||{},a){const[e,t]=a;r.bigSegmentsMembership[s]=e,r.bigSegmentsStatus=Cp(r.bigSegmentsStatus,t)}else r.bigSegmentsStatus=Cp(r.bigSegmentsStatus,"NOT_CONFIGURED");return this.bigSegmentMatchContext(r.bigSegmentsMembership[s],e,t,r)}))}bigSegmentMatchContext(e,t,r,i){return Pp(this,void 0,void 0,(function*(){const n=(0,$p.default)(t);return(null==e?void 0:e[n])?new Vp(!0):this.simpleSegmentMatchContext(t,r,i,[])}))}};var zp={};Object.defineProperty(zp,"__esModule",{value:!0});const Kp=fd;zp.default=class{constructor(e){this.contextKeysCache=new Kp.default({max:e.contextKeysCapacity}),this.flushInterval=e.contextKeysFlushInterval}processContext(e){const{canonicalKey:t}=e,r=this.contextKeysCache.get(t);return this.contextKeysCache.set(t,!0),!r}flush(){this.contextKeysCache.clear()}};var Hp={},Gp={},qp={};Object.defineProperty(qp,"__esModule",{value:!0});qp.default=class{constructor(){this.allData={},this.initCalled=!1}addItem(e,t,r){let i=this.allData[e.namespace];if(i||(i={},this.allData[e.namespace]=i),Object.hasOwnProperty.call(i,t)){const e=i[t];(!e||e.version<r.version)&&(i[t]=r)}else i[t]=r}get(e,t,r){const i=this.allData[e.namespace];if(i&&Object.prototype.hasOwnProperty.call(i,t)){const e=i[t];if(e&&!e.deleted)return null==r?void 0:r(e)}return null==r?void 0:r(null)}all(e,t){var r;const i={},n=null!==(r=this.allData[e.namespace])&&void 0!==r?r:{};Object.entries(n).forEach((([e,t])=>{t&&!t.deleted&&(i[e]=t)})),null==t||t(i)}init(e,t){this.initCalled=!0,this.allData=e,null==t||t()}delete(e,t,r,i){const n={version:r,deleted:!0};this.addItem(e,t,n),null==i||i()}upsert(e,t,r){this.addItem(e,t.key,t),null==r||r()}initialized(e){return null==e?void 0:e(this.initCalled)}close(){}getDescription(){return"memory"}},function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.defaultValues=void 0;const t=ru,r=qp,i={baseUri:t.TypeValidators.String,streamUri:t.TypeValidators.String,eventsUri:t.TypeValidators.String,timeout:t.TypeValidators.Number,capacity:t.TypeValidators.Number,logger:t.TypeValidators.Object,featureStore:t.TypeValidators.ObjectOrFactory,bigSegments:t.TypeValidators.Object,updateProcessor:t.TypeValidators.ObjectOrFactory,flushInterval:t.TypeValidators.Number,pollInterval:t.TypeValidators.numberWithMin(30),proxyOptions:t.TypeValidators.Object,offline:t.TypeValidators.Boolean,stream:t.TypeValidators.Boolean,streamInitialReconnectDelay:t.TypeValidators.Number,useLdd:t.TypeValidators.Boolean,sendEvents:t.TypeValidators.Boolean,allAttributesPrivate:t.TypeValidators.Boolean,privateAttributes:t.TypeValidators.StringArray,contextKeysCapacity:t.TypeValidators.Number,contextKeysFlushInterval:t.TypeValidators.Number,tlsParams:t.TypeValidators.Object,diagnosticOptOut:t.TypeValidators.Boolean,diagnosticRecordingInterval:t.TypeValidators.numberWithMin(60),wrapperName:t.TypeValidators.String,wrapperVersion:t.TypeValidators.String,application:t.TypeValidators.Object};e.defaultValues={baseUri:"https://sdk.launchdarkly.com",streamUri:"https://stream.launchdarkly.com",eventsUri:"https://events.launchdarkly.com",stream:!0,streamInitialReconnectDelay:1,sendEvents:!0,timeout:5,capacity:1e4,flushInterval:5,pollInterval:30,offline:!1,useLdd:!1,allAttributesPrivate:!1,privateAttributes:[],contextKeysCapacity:1e3,contextKeysFlushInterval:300,diagnosticOptOut:!1,diagnosticRecordingInterval:900,featureStore:()=>new r.default};e.default=class{constructor(r={}){r=r||{},this.logger=r.logger;const{errors:n,validatedOptions:s}=function(r){const n=[],s=Object.assign({},e.defaultValues);return Object.keys(r).forEach((a=>{var o;const l=r[a],u=i[a];if(u)if(u.is(l))s[a]=l;else if("boolean"===u.getType())n.push(t.OptionMessages.wrongOptionTypeBoolean(a,typeof l)),s[a]=!!l;else if(u instanceof t.NumberWithMinimum&&t.TypeValidators.Number.is(l)){const{min:e}=u;n.push(t.OptionMessages.optionBelowMinimum(a,l,e)),s[a]=e}else n.push(t.OptionMessages.wrongOptionType(a,u.getType(),typeof l)),s[a]=e.defaultValues[a];else null===(o=r.logger)||void 0===o||o.warn(t.OptionMessages.unknownOption(a))})),{errors:n,validatedOptions:s}}(r);n.forEach((e=>{var t;null===(t=this.logger)||void 0===t||t.warn(e)})),function(e,r){var i,n,s;const{baseUri:a,streamUri:o,eventsUri:l}=e,u=null!=o,c=null!=a,d=null!=l;u===c&&u===d||(!u&&r.stream&&(null===(i=r.logger)||void 0===i||i.warn(t.OptionMessages.partialEndpoint("streamUri"))),c||null===(n=r.logger)||void 0===n||n.warn(t.OptionMessages.partialEndpoint("baseUri")),!d&&r.sendEvents&&(null===(s=r.logger)||void 0===s||s.warn(t.OptionMessages.partialEndpoint("eventsUri"))))}(r,s),this.serviceEndpoints=new t.ServiceEndpoints(s.streamUri,s.baseUri,s.eventsUri),this.eventsCapacity=s.capacity,this.timeout=s.timeout,this.bigSegments=s.bigSegments,this.flushInterval=s.flushInterval,this.pollInterval=s.pollInterval,this.proxyOptions=s.proxyOptions,this.offline=s.offline,this.stream=s.stream,this.streamInitialReconnectDelay=s.streamInitialReconnectDelay,this.useLdd=s.useLdd,this.sendEvents=s.sendEvents,this.allAttributesPrivate=s.allAttributesPrivate,this.privateAttributes=s.privateAttributes,this.contextKeysCapacity=s.contextKeysCapacity,this.contextKeysFlushInterval=s.contextKeysFlushInterval,this.tlsParams=s.tlsParams,this.diagnosticOptOut=s.diagnosticOptOut,this.wrapperName=s.wrapperName,this.wrapperVersion=s.wrapperVersion,this.tags=new t.ApplicationTags(s),this.diagnosticRecordingInterval=s.diagnosticRecordingInterval,t.TypeValidators.Function.is(s.updateProcessor)?this.updateProcessorFactory=s.updateProcessor:this.updateProcessorFactory=()=>s.updateProcessor,t.TypeValidators.Function.is(s.featureStore)?this.featureStoreFactory=s.featureStore:this.featureStoreFactory=()=>s.featureStore}}}(Gp),Object.defineProperty(Hp,"__esModule",{value:!0});const Wp=Gp;function Xp(e){return Math.trunc(1e3*e)}Hp.default=class{constructor(e,t,r,i){this.config=t,this.platform=r,this.featureStore=i,this.streamInits=[],this.startTime=Date.now(),this.dataSinceDate=this.startTime,this.id={diagnosticId:r.crypto.randomUUID(),sdkKeySuffix:e.length>6?e.substring(e.length-6):e}}createInitEvent(){var e,t,r,i,n,s,a,o,l,u;const c=this.platform.info.sdkData(),d=this.platform.info.platformData();return{kind:"diagnostic-init",id:this.id,creationDate:this.startTime,sdk:c,configuration:{customBaseURI:this.config.serviceEndpoints.polling!==Wp.defaultValues.baseUri,customStreamURI:this.config.serviceEndpoints.streaming!==Wp.defaultValues.streamUri,customEventsURI:this.config.serviceEndpoints.events!==Wp.defaultValues.eventsUri,eventsCapacity:this.config.eventsCapacity,connectTimeoutMillis:Xp(this.config.timeout),socketTimeoutMillis:Xp(this.config.timeout),eventsFlushIntervalMillis:Xp(this.config.flushInterval),pollingIntervalMillis:Xp(this.config.pollInterval),reconnectTimeMillis:Xp(this.config.streamInitialReconnectDelay),streamingDisabled:!this.config.stream,usingRelayDaemon:this.config.useLdd,offline:this.config.offline,allAttributesPrivate:this.config.allAttributesPrivate,contextKeysCapacity:this.config.contextKeysCapacity,contextKeysFlushIntervalMillis:Xp(this.config.contextKeysFlushInterval),usingProxy:!!(null===(t=(e=this.platform.requests).usingProxy)||void 0===t?void 0:t.call(e)),usingProxyAuthenticator:!!(null===(i=(r=this.platform.requests).usingProxyAuth)||void 0===i?void 0:i.call(r)),diagnosticRecordingIntervalMillis:Xp(this.config.diagnosticRecordingInterval),dataStoreType:null!==(a=null===(s=(n=this.featureStore).getDescription)||void 0===s?void 0:s.call(n))&&void 0!==a?a:"memory"},platform:Object.assign({name:d.name,osArch:null===(o=d.os)||void 0===o?void 0:o.arch,osName:null===(l=d.os)||void 0===l?void 0:l.name,osVersion:null===(u=d.os)||void 0===u?void 0:u.version},d.additional||{})}}recordStreamInit(e,t,r){const i={timestamp:e,failed:t,durationMillis:r};this.streamInits.push(i)}createStatsEventAndReset(e,t,r){const i=Date.now(),n={kind:"diagnostic",id:this.id,creationDate:i,dataSinceDate:this.dataSinceDate,droppedEvents:e,deduplicatedUsers:t,eventsInLastBatch:r,streamInits:this.streamInits};return this.streamInits=[],this.dataSinceDate=i,n}};var Jp={},Yp={};Object.defineProperty(Yp,"__esModule",{value:!0}),Yp.default=function(e,t){if(t){if(t.inExperiment)return!0;switch(t.kind){case"RULE_MATCH":{const r=t.ruleIndex;if(void 0!==r){const t=e.rules||[];return r>=0&&r<t.length&&!!t[r].trackEvents}break}case"FALLTHROUGH":return!!e.trackEventsFallthrough}}return!1},Object.defineProperty(Jp,"__esModule",{value:!0});const Zp=ru,Qp=Yp;Jp.default=class{constructor(e){this.withReasons=e}evalEvent(e,t,r,i,n){var s;const a=(0,Qp.default)(e,r.reason);return new Zp.internal.InputEvalEvent(this.withReasons,t,e.key,i,r,e.version,null!==(s=r.variationIndex)&&void 0!==s?s:void 0,e.trackEvents||a,null==n?void 0:n.key,this.withReasons||a?r.reason:void 0,e.debugEventsUntilDate)}unknownFlagEvent(e,t,r){return new Zp.internal.InputEvalEvent(this.withReasons,t,e,r.value,r)}identifyEvent(e){return new Zp.internal.InputIdentifyEvent(e)}customEvent(e,t,r,i){return new Zp.internal.InputCustomEvent(t,e,null!=r?r:void 0,null!=i?i:void 0)}};var eg={},tg=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(eg,"__esModule",{value:!0});const rg=ru,ig=Zd,ng=Gd,sg=Td;eg.default=class{constructor(e,t){this.defaultHeaders=Object.assign({},(0,ig.default)(t.basicConfiguration.sdkKey,e,t.platform.info)),this.eventsUri=`${t.basicConfiguration.serviceEndpoints.events}/bulk`,this.diagnosticEventsUri=`${t.basicConfiguration.serviceEndpoints.events}/diagnostic`,this.requests=t.platform.requests,this.crypto=t.platform.crypto}tryPostingEvents(e,t,r,i){return tg(this,void 0,void 0,(function*(){const n={status:rg.subsystem.LDDeliveryStatus.Succeeded},s=Object.assign({},this.defaultHeaders);let a;r&&(s["x-launchdarkly-payload-id"]=r,s["x-launchDarkly-event-schema"]="4");try{const r=yield this.requests.fetch(t,{headers:s,body:JSON.stringify(e),method:"POST"}),i=Date.parse(r.headers.get("date")||"");if(i&&(n.serverTime=i),r.status<=204)return n;if(a=new sg.LDUnexpectedResponseError((0,ng.default)({status:r.status,message:"some events were dropped"},"event posting")),!(0,sg.isHttpRecoverable)(r.status))return n.status=rg.subsystem.LDDeliveryStatus.FailedAndMustShutDown,n.error=a,n}catch(e){a=e}return a&&!i?(n.status=rg.subsystem.LDDeliveryStatus.Failed,n.error=a,n):(yield new Promise((e=>{})),this.tryPostingEvents(e,this.eventsUri,r,!1))}))}sendEventData(e,t){return tg(this,void 0,void 0,(function*(){const r=e===rg.subsystem.LDEventType.AnalyticsEvents?this.crypto.randomUUID():void 0,i=e===rg.subsystem.LDEventType.AnalyticsEvents?this.eventsUri:this.diagnosticEventsUri;return this.tryPostingEvents(t,i,r,!0)}))}};var ag={},og=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(ag,"__esModule",{value:!0});ag.default=class{close(){}flush(){return og(this,void 0,void 0,(function*(){}))}sendEvent(e){}};var lg={};Object.defineProperty(lg,"__esModule",{value:!0});lg.default=class{constructor(e,t){this.valid=e,this.withReasons=t,this.flagValues={},this.flagMetadata={}}addFlag(e,t,r,i,n,s,a){this.flagValues[e.key]=t;const o={};void 0!==r&&(o.variation=r);const l=a&&!n&&!s&&void 0===e.debugEventsUntilDate;l||(o.version=e.version),i&&(s||this.withReasons&&!l)&&(o.reason=i),n&&(o.trackEvents=!0),s&&(o.trackReason=!0),void 0!==e.debugEventsUntilDate&&(o.debugEventsUntilDate=e.debugEventsUntilDate),this.flagMetadata[e.key]=o}build(){const e=this;return{valid:e.valid,allValues:()=>e.flagValues,getFlagValue:t=>e.flagValues[t],getFlagReason:t=>{var r;return null!==(r=e.flagMetadata[t]?e.flagMetadata[t].reason:null)&&void 0!==r?r:null},toJSON:()=>Object.assign(Object.assign({},e.flagValues),{$flagsState:e.flagMetadata,$valid:e.valid})}}};var ug={},cg={};Object.defineProperty(cg,"__esModule",{value:!0}),cg.default=function(e){return new Promise((t=>{e((e=>{t(e)}))}))};var dg=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(ug,"__esModule",{value:!0});const hg=cg;ug.default=class{constructor(e){this.store=e}get(e,t){return dg(this,void 0,void 0,(function*(){return(0,hg.default)((r=>{this.store.get(e,t,r)}))}))}all(e){return dg(this,void 0,void 0,(function*(){return(0,hg.default)((t=>{this.store.all(e,t)}))}))}init(e){return dg(this,void 0,void 0,(function*(){return(0,hg.default)((t=>{this.store.init(e,t)}))}))}delete(e,t,r){return dg(this,void 0,void 0,(function*(){return(0,hg.default)((i=>{this.store.delete(e,t,r,i)}))}))}upsert(e,t){return dg(this,void 0,void 0,(function*(){return(0,hg.default)((r=>{this.store.upsert(e,t,r)}))}))}initialized(){return dg(this,void 0,void 0,(function*(){return(0,hg.default)((e=>{this.store.initialized(e)}))}))}close(){this.store.close()}};var fg=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(tu,"__esModule",{value:!0});const vg=ru,pg=cd,gg=md,yg=Ed,mg=Rd,bg=Md,Eg=Yd,_g=rh,wg=Td,Og=uh,Sg=fh,xg=vh,Pg=bh,kg=zp,Ig=Hp,Ag=Jp,Rg=eg,Mg=Yp,Tg=ag,Dg=lg,jg=Gp,Ng=ug,$g=_d;var Fg;!function(e){e[e.Initializing=0]="Initializing",e[e.Initialized=1]="Initialized",e[e.Failed=2]="Failed"}(Fg||(Fg={}));tu.default=class{constructor(e,t,r,i){var n,s,a,o,l;this.sdkKey=e,this.platform=t,this.initState=Fg.Initializing,this.eventFactoryDefault=new Ag.default(!1),this.eventFactoryWithReasons=new Ag.default(!0),this.onError=i.onError,this.onFailed=i.onFailed,this.onReady=i.onReady;const{onUpdate:u,hasEventListeners:c}=i,d=new jg.default(r);if(!e&&!d.offline)throw new Error("You must configure the client with an SDK key");this.config=d,this.logger=d.logger;const h=new vg.ClientContext(e,d,t),f=d.featureStoreFactory(h),v=new yg.default(f,c,u);!d.sendEvents||d.offline||d.diagnosticOptOut||(this.diagnosticsManager=new Ig.default(e,d,t,f));const p=()=>d.stream?new _g.default(e,d,this.platform.requests,this.platform.info,v,this.diagnosticsManager):new bg.default(d,new Eg.default(e,d,this.platform.info,this.platform.requests),v);d.offline||d.useLdd?this.updateProcessor=new mg.default:this.updateProcessor=null!==(s=null===(n=d.updateProcessorFactory)||void 0===n?void 0:n.call(d,h,v))&&void 0!==s?s:p(),!d.sendEvents||d.offline?this.eventProcessor=new Tg.default:this.eventProcessor=new vg.internal.EventProcessor(d,h,new Rg.default(d,h),new kg.default(d),this.diagnosticsManager);const g=new Ng.default(f);this.featureStore=g;const y=new pg.default(null===(o=null===(a=d.bigSegments)||void 0===a?void 0:a.store)||void 0===o?void 0:o.call(a,h),null!==(l=d.bigSegments)&&void 0!==l?l:{},d.logger,this.platform.crypto);this.bigSegmentsManager=y,this.bigSegmentStatusProviderInternal=y.statusProvider;const m={getFlag(e){var t;return fg(this,void 0,void 0,(function*(){return null!==(t=yield g.get($g.default.Features,e))&&void 0!==t?t:void 0}))},getSegment(e){var t;return fg(this,void 0,void 0,(function*(){return null!==(t=yield g.get($g.default.Segments,e))&&void 0!==t?t:void 0}))},getBigSegmentsMembership:e=>y.getUserMembership(e)};this.evaluator=new Pg.default(this.platform,m),this.updateProcessor.start((e=>{var t,r;if(e){let r;r=e.status&&401===e.status||e.code&&401===e.code?new Error("Authentication failed. Double check your SDK key."):e,this.onError(r),this.onFailed(r),null===(t=this.initReject)||void 0===t||t.call(this,r),this.initState=Fg.Failed}else this.initialized()||(this.initState=Fg.Initialized,null===(r=this.initResolve)||void 0===r||r.call(this,this),this.onReady())}))}initialized(){return this.initState===Fg.Initialized}waitForInitialization(){return this.initState===Fg.Initialized?Promise.resolve(this):(this.initializedPromise||(this.initializedPromise=new Promise(((e,t)=>{this.initResolve=e,this.initReject=t}))),this.initializedPromise)}variation(e,t,r,i){return fg(this,void 0,void 0,(function*(){const n=yield this.evaluateIfPossible(e,t,r,this.eventFactoryDefault);if(!i)return n.detail.value;i(null,n.detail.value)}))}variationDetail(e,t,r,i){return fg(this,void 0,void 0,(function*(){const n=yield this.evaluateIfPossible(e,t,r,this.eventFactoryWithReasons);return null==i||i(null,n.detail),n.detail}))}allFlagsState(e,t,r){var i,n,s,a,o;return fg(this,void 0,void 0,(function*(){if(this.config.offline){null===(i=this.logger)||void 0===i||i.info("allFlagsState() called in offline mode. Returning empty state.");const e=new Dg.default(!1,!1).build();return null==r||r(null,e),e}const l=vg.Context.fromLDContext(e);if(!l.valid)return null===(n=this.logger)||void 0===n||n.info(`${null!==(s=l.message)&&void 0!==s?s:"Invalid context."}. Returning empty state.`),new Dg.default(!1,!1).build();let u=!0;if(!this.initialized()){(yield this.featureStore.initialized())?null===(a=this.logger)||void 0===a||a.warn("Called allFlagsState before client initialization; using last known values from data store"):(null===(o=this.logger)||void 0===o||o.warn("Called allFlagsState before client initialization. Data store not available; returning empty state"),u=!1)}const c=new Dg.default(u,!!(null==t?void 0:t.withReasons)),d=!!(null==t?void 0:t.clientSideOnly),h=!!(null==t?void 0:t.detailsOnlyForTrackedFlags),f=yield this.featureStore.all($g.default.Features);yield(0,Og.allSeriesAsync)(Object.values(f),(e=>fg(this,void 0,void 0,(function*(){var t;const r=e;if(d&&!r.clientSide)return!0;const i=yield this.evaluator.evaluate(r,l);i.isError&&this.onError(new Error(`Error for feature flag "${r.key}" while evaluating all flags: ${i.message}`));const n=(0,Mg.default)(r,i.detail.reason);return c.addFlag(r,i.detail.value,null!==(t=i.detail.variationIndex)&&void 0!==t?t:void 0,i.detail.reason,r.trackEvents||n,n,h),!0}))));const v=c.build();return null==r||r(null,v),v}))}secureModeHash(e){const t=vg.Context.fromLDContext(e),r=t.valid?t.canonicalKey:void 0,i=this.platform.crypto.createHmac("sha256",this.sdkKey);if(void 0===r)throw new wg.LDClientError("Could not generate secure mode hash for invalid context");return i.update(r),i.digest("hex")}close(){this.eventProcessor.close(),this.updateProcessor.close(),this.featureStore.close(),this.bigSegmentsManager.close()}isOffline(){return this.config.offline}track(e,t,r,i){var n;const s=vg.Context.fromLDContext(t);s.valid?this.eventProcessor.sendEvent(this.eventFactoryDefault.customEvent(e,s,r,i)):null===(n=this.logger)||void 0===n||n.warn(gg.default.missingContextKeyNoEvent)}identify(e){var t;const r=vg.Context.fromLDContext(e);r.valid?this.eventProcessor.sendEvent(this.eventFactoryDefault.identifyEvent(r)):null===(t=this.logger)||void 0===t||t.warn(gg.default.missingContextKeyNoEvent)}flush(e){return fg(this,void 0,void 0,(function*(){try{yield this.eventProcessor.flush()}catch(t){null==e||e(t,!1)}null==e||e(null,!0)}))}variationInternal(e,t,r,i){var n,s,a,o;return fg(this,void 0,void 0,(function*(){if(this.config.offline)return null===(n=this.logger)||void 0===n||n.info("Variation called in offline mode. Returning default value."),xg.default.forError(Sg.default.ClientNotReady,void 0,r);const l=vg.Context.fromLDContext(t);if(!l.valid)return this.onError(new wg.LDClientError(`${null!==(s=l.message)&&void 0!==s?s:"Context not valid;"} returning default value.`)),xg.default.forError(Sg.default.UserNotSpecified,void 0,r);const u=yield this.featureStore.get($g.default.Features,e);if(!u){const t=new wg.LDClientError(`Unknown feature flag "${e}"; returning default value`);this.onError(t);const i=xg.default.forError(Sg.default.FlagNotFound,void 0,r);return this.eventProcessor.sendEvent(this.eventFactoryDefault.unknownFlagEvent(e,l,i.detail)),i}const c=yield this.evaluator.evaluate(u,l,i);return void 0!==c.detail.variationIndex&&null!==c.detail.variationIndex||(null===(a=this.logger)||void 0===a||a.debug("Result value is null in variation"),c.setDefault(r)),null===(o=c.events)||void 0===o||o.forEach((e=>{this.eventProcessor.sendEvent(e)})),this.eventProcessor.sendEvent(i.evalEvent(u,l,c.detail,r)),c}))}evaluateIfPossible(e,t,r,i){var n,s;return fg(this,void 0,void 0,(function*(){if(!this.initialized()){return(yield this.featureStore.initialized())?(null===(n=this.logger)||void 0===n||n.warn("Variation called before LaunchDarkly client initialization completed (did you wait for the 'ready' event?) - using last known values from feature store"),this.variationInternal(e,t,r,i)):(null===(s=this.logger)||void 0===s||s.warn("Variation called before LaunchDarkly client initialization completed (did you wait for the'ready' event?) - using default value"),xg.default.forError(Sg.default.ClientNotReady,void 0,r))}return this.variationInternal(e,t,r,i)}))}};var Lg={},Cg={},Bg={},Vg={},Ug=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(Vg,"__esModule",{value:!0});Vg.default=class{constructor(e,t,r,i){this.filesystem=e,this.paths=t,this.watch=r,this.callback=i,this.watchers=[],this.fileData={},this.fileTimestamps={}}loadAndWatch(){return Ug(this,void 0,void 0,(function*(){const e=this.paths.map((e=>Ug(this,void 0,void 0,(function*(){const t=yield this.filesystem.readFile(e),r=yield this.filesystem.getFileTimestamp(e);return{data:t,path:e,timeStamp:r}})))),t=yield Promise.all(e);t.forEach((e=>{this.fileData[e.path]=e.data,this.fileTimestamps[e.path]=e.timeStamp})),this.callback(t),this.watch&&this.paths.forEach((e=>{const t=this.filesystem.watch(e,((e,t)=>Ug(this,void 0,void 0,(function*(){const e=yield this.filesystem.getFileTimestamp(t);if(e===this.fileTimestamps[t])return;this.fileTimestamps[t]=e;const r=yield this.filesystem.readFile(t);this.fileData[t]=r,this.debounceCallback()}))));this.watchers.push(t)}))}))}close(){this.watchers.forEach((e=>e.close()))}debounceCallback(){this.debounceHandle||(this.debounceHandle=e=>{e()})}};var zg=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(Bg,"__esModule",{value:!0});const Kg=Fd,Hg=_d,Gg=Vg;Bg.default=class{constructor(e,t,r){var i;this.featureStore=r,this.allData={},this.fileLoader=new Gg.default(t,e.paths,null!==(i=e.autoUpdate)&&void 0!==i&&i,(e=>{var t,r;try{this.processFileData(e)}catch(e){null===(t=this.initCallback)||void 0===t||t.call(this,e),null===(r=this.logger)||void 0===r||r.error(`Error processing files: ${e}`)}})),this.logger=e.logger,this.yamlParser=e.yamlParser}start(e){this.initCallback=e,(()=>{zg(this,void 0,void 0,(function*(){try{yield this.fileLoader.loadAndWatch()}catch(t){null==e||e(t)}}))})()}stop(){this.fileLoader.close()}close(){this.stop()}addItem(e,t){if(this.allData[e.namespace]||(this.allData[e.namespace]={}),this.allData[e.namespace][t.key])throw new Error(`found duplicate key: "${t.key}"`);this.allData[e.namespace][t.key]=t}processFileData(e){this.allData={},e.forEach((e=>{let t;if(e.path.endsWith(".yml")||e.path.endsWith(".yaml")){if(!this.yamlParser)throw new Error(`Attempted to parse yaml file (${e.path}) without parser.`);t=this.yamlParser(e.data)}else t=JSON.parse(e.data);this.processParsedData(t)})),this.featureStore.init(this.allData,(()=>{var e;null===(e=this.initCallback)||void 0===e||e.call(this),this.initCallback=void 0}))}processParsedData(e){Object.keys(e.flags||{}).forEach((t=>{(0,Kg.processFlag)(e.flags[t]),this.addItem(Hg.default.Features,e.flags[t])})),Object.keys(e.flagValues||{}).forEach((t=>{const r=function(e,t){return{key:e,on:!0,fallthrough:{variation:0},variations:[t],version:1}}(t,e.flagValues[t]);(0,Kg.processFlag)(r),this.addItem(Hg.default.Features,r)})),Object.keys(e.segments||{}).forEach((t=>{(0,Kg.processSegment)(e.segments[t]),this.addItem(Hg.default.Segments,e.segments[t])}))}},Object.defineProperty(Cg,"__esModule",{value:!0});const qg=Bg;Cg.default=class{constructor(e){this.options=e}create(e,t){const r={paths:this.options.paths,autoUpdate:this.options.autoUpdate,logger:this.options.logger||e.basicConfiguration.logger,yamlParser:this.options.yamlParser};return new qg.default(r,e.platform.fileSystem,t)}getFactory(){return(e,t)=>this.create(e,t)}};var Wg={},Xg={},Jg={},Yg={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.variationForBoolean=e.FALSE_VARIATION_INDEX=e.TRUE_VARIATION_INDEX=void 0,e.TRUE_VARIATION_INDEX=0,e.FALSE_VARIATION_INDEX=1,e.variationForBoolean=function(t){return t?e.TRUE_VARIATION_INDEX:e.FALSE_VARIATION_INDEX}}(Yg);var Zg={};Object.defineProperty(Zg,"__esModule",{value:!0});const Qg=ru,ey=Yg;class ty{constructor(e,t,r){this.flagBuilder=e,this.clauses=[],t&&(this.clauses=[...t]),void 0!==r&&(this.variation=r)}andMatch(e,t,...r){return this.clauses.push({contextKind:e,attribute:t,attributeReference:new Qg.AttributeReference(t),op:"in",values:r,negate:!1}),this}andNotMatch(e,t,...r){return this.clauses.push({contextKind:e,attribute:t,attributeReference:new Qg.AttributeReference(t),op:"in",values:r,negate:!0}),this}thenReturn(e){return Qg.TypeValidators.Boolean.is(e)?(this.flagBuilder.booleanFlag(),this.thenReturn((0,ey.variationForBoolean)(e))):(this.variation=e,this.flagBuilder.addRule(this),this.flagBuilder)}build(e){return{id:`rule${e}`,variation:this.variation,clauses:this.clauses}}clone(){return new ty(this.flagBuilder,this.clauses,this.variation)}}Zg.default=ty,Object.defineProperty(Jg,"__esModule",{value:!0});const ry=ru,iy=Yg,ny=Zg;class sy{constructor(e,t){this.key=e,this.data={on:!0,variations:[]},t&&(this.data={on:t.on,variations:[...t.variations]},void 0!==t.offVariation&&(this.data.offVariation=t.offVariation),void 0!==t.fallthroughVariation&&(this.data.offVariation=t.offVariation),t.targetsByVariation&&(this.data.targetsByVariation=JSON.parse(JSON.stringify(t.targetsByVariation))),t.rules&&(this.data.rules=[],t.rules.forEach((e=>{var t;null===(t=this.data.rules)||void 0===t||t.push(e.clone())}))))}get isBooleanFlag(){return 2===this.data.variations.length&&!0===this.data.variations[iy.TRUE_VARIATION_INDEX]&&!1===this.data.variations[iy.FALSE_VARIATION_INDEX]}booleanFlag(){return this.isBooleanFlag?this:this.variations(!0,!1).fallthroughVariation(iy.TRUE_VARIATION_INDEX).offVariation(iy.FALSE_VARIATION_INDEX)}variations(...e){return this.data.variations=[...e],this}on(e){return this.data.on=e,this}fallthroughVariation(e){return ry.TypeValidators.Boolean.is(e)?this.booleanFlag().fallthroughVariation((0,iy.variationForBoolean)(e)):(this.data.fallthroughVariation=e,this)}offVariation(e){return ry.TypeValidators.Boolean.is(e)?this.booleanFlag().offVariation((0,iy.variationForBoolean)(e)):(this.data.offVariation=e,this)}variationForAll(e){return this.on(!0).clearRules().clearAllTargets().fallthroughVariation(e)}valueForAll(e){return this.variations(e).variationForAll(0)}variationForUser(e,t){return this.variationForContext("user",e,t)}variationForContext(e,t,r){return ry.TypeValidators.Boolean.is(r)?this.booleanFlag().variationForContext(e,t,(0,iy.variationForBoolean)(r)):(this.data.targetsByVariation||(this.data.targetsByVariation={}),this.data.variations.forEach(((i,n)=>{if(n===r){const r=this.data.targetsByVariation[n]||{};e in r||(r[e]=[]);-1!==r[e].indexOf(t)||r[e].push(t),this.data.targetsByVariation[n]=r}else{const r=this.data.targetsByVariation[n];if(r){const i=r[e];if(i){const n=i.indexOf(t);-1!==n&&(i.splice(n,1),i.length||delete r[e])}Object.keys(r).length||delete this.data.targetsByVariation[n]}}})),this)}clearRules(){return delete this.data.rules,this}clearAllTargets(){return delete this.data.targetsByVariation,this}ifMatch(e,t,...r){return new ny.default(this).andMatch(e,t,...r)}ifNotMatch(e,t,...r){return new ny.default(this).andNotMatch(e,t,...r)}addRule(e){this.data.rules||(this.data.rules=[]),this.data.rules.push(e)}build(e){const t={key:this.key,version:e,on:this.data.on,offVariation:this.data.offVariation,fallthrough:{variation:this.data.fallthroughVariation},variations:[...this.data.variations]};if(this.data.targetsByVariation){const e=[];Object.entries(this.data.targetsByVariation).forEach((([t,r])=>{Object.entries(r).forEach((([r,i])=>{e.push({contextKind:r,values:i,variation:parseInt(t,10)})}))})),t.contextTargets=e}return this.data.rules&&(t.rules=this.data.rules.map(((e,t)=>e.build(String(t))))),t}clone(){return new sy(this.key,this.data)}getKey(){return this.key}}Jg.default=sy;var ay={},oy=t&&t.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(n,s){function a(e){try{l(i.next(e))}catch(e){s(e)}}function o(e){try{l(i.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,o)}l((i=i.apply(e,t||[])).next())}))};Object.defineProperty(ay,"__esModule",{value:!0});const ly=_d;ay.default=class{constructor(e,t,r,i){this.featureStore=e,this.flags=t,this.segments=r,this.onStop=i}start(e){return oy(this,void 0,void 0,(function*(){yield this.featureStore.init({[ly.default.Features.namespace]:Object.assign({},this.flags),[ly.default.Segments.namespace]:Object.assign({},this.segments)}),null==e||e()}))}stop(){this.onStop(this)}close(){this.stop()}upsert(e,t){return oy(this,void 0,void 0,(function*(){return this.featureStore.upsert(e,t)}))}},Object.defineProperty(Xg,"__esModule",{value:!0});const uy=ug,cy=Fd,dy=_d,hy=Jg,fy=ay;Xg.default=class{constructor(){this.currentFlags={},this.currentSegments={},this.dataSources=[],this.flagBuilders={}}getFactory(){return(e,t)=>{const r=new fy.default(new uy.default(t),this.currentFlags,this.currentSegments,(e=>{this.dataSources.splice(this.dataSources.indexOf(e))}));return this.dataSources.push(r),r}}flag(e){return this.flagBuilders[e]?this.flagBuilders[e].clone():new hy.default(e).booleanFlag()}update(e){const t=e.getKey(),r=this.currentFlags[t],i=r?r.version:0,n=e.build(i+1);return this.currentFlags[t]=n,this.flagBuilders[t]=e.clone(),Promise.all(this.dataSources.map((e=>e.upsert(dy.default.Features,n))))}usePreconfiguredFlag(e){const t=JSON.parse(JSON.stringify(e)),r=this.currentFlags[t.key],i=Object.assign(Object.assign({},t),{version:r?r.version+1:t.version});return(0,cy.processFlag)(i),this.currentFlags[t.key]=i,Promise.all(this.dataSources.map((e=>e.upsert(dy.default.Features,i))))}usePreconfiguredSegment(e){const t=JSON.parse(JSON.stringify(e)),r=this.currentSegments[t.key],i=Object.assign(Object.assign({},t),{version:r?r.version+1:t.version});return(0,cy.processSegment)(i),this.currentSegments[t.key]=i,Promise.all(this.dataSources.map((e=>e.upsert(dy.default.Segments,i))))}},Object.defineProperty(Wg,"__esModule",{value:!0}),Wg.TestDataRuleBuilder=Wg.TestDataFlagBuilder=Wg.TestData=void 0;const vy=Xg;Wg.TestData=vy.default;const py=Jg;Wg.TestDataFlagBuilder=py.default;const gy=Zg;Wg.TestDataRuleBuilder=gy.default,function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),e.FileDataSourceFactory=void 0;const n=Cg;e.FileDataSourceFactory=n.default,i(Wg,e)}(Lg);var yy={},my={},by={};Object.defineProperty(by,"__esModule",{value:!0});var Ey={};Object.defineProperty(Ey,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(by,e),i(Ey,e)}(my);var _y={},wy={};Object.defineProperty(wy,"__esModule",{value:!0});var Oy={};Object.defineProperty(Oy,"__esModule",{value:!0});var Sy={};Object.defineProperty(Sy,"__esModule",{value:!0});var xy={};Object.defineProperty(xy,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(wy,e),i(Oy,e),i(Sy,e),i(xy,e)}(_y);var Py={};Object.defineProperty(Py,"__esModule",{value:!0});var ky={};Object.defineProperty(ky,"__esModule",{value:!0});var Iy={};Object.defineProperty(Iy,"__esModule",{value:!0});var Ay={};Object.defineProperty(Ay,"__esModule",{value:!0});var Ry={},My={};Object.defineProperty(My,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(My,e)}(Ry);var Ty={},Dy={};Object.defineProperty(Dy,"__esModule",{value:!0});var jy={};Object.defineProperty(jy,"__esModule",{value:!0});var Ny={};Object.defineProperty(Ny,"__esModule",{value:!0});var $y={};Object.defineProperty($y,"__esModule",{value:!0});var Fy={};Object.defineProperty(Fy,"__esModule",{value:!0});var Ly={};Object.defineProperty(Ly,"__esModule",{value:!0});var Cy={};Object.defineProperty(Cy,"__esModule",{value:!0});var By={};Object.defineProperty(By,"__esModule",{value:!0});var Vy={};Object.defineProperty(Vy,"__esModule",{value:!0});var Uy={};Object.defineProperty(Uy,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(Dy,e),i(jy,e),i(Ny,e),i($y,e),i(Fy,e),i(ky,e),i(Ly,e),i(Cy,e),i(By,e),i(Vy,e),i(Uy,e)}(Ty);var zy={},Ky={};Object.defineProperty(Ky,"__esModule",{value:!0});var Hy={};Object.defineProperty(Hy,"__esModule",{value:!0}),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),i(Ky,e),i(Iy,e),i(Ay,e),i(Hy,e)}(zy),function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),e.subsystems=e.interfaces=e.integrations=void 0,i(my,e),i(_y,e),i(Py,e),i(ky,e),i(Iy,e),i(Ay,e),e.integrations=Ry,e.interfaces=Ty,e.subsystems=zy}(yy);var Gy={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.deserializePoll=e.AsyncStoreFacade=void 0;const t=ug;e.AsyncStoreFacade=t.default;const r=Fd;Object.defineProperty(e,"deserializePoll",{enumerable:!0,get:function(){return r.deserializePoll}})}(Gy);var qy={},Wy={};Object.defineProperty(Wy,"__esModule",{value:!0});Wy.default=class{constructor(e,t){this.handlers={},this.closed=!1,this.url=e,this.options=t}addEventListener(e,t){this.handlers[e]=t}close(){this.closed=!0}simulateError(e){this.options.errorFilter(e)||(this.closed=!0)}},Object.defineProperty(qy,"__esModule",{value:!0}),qy.NullEventSource=void 0;const Xy=Wy;qy.NullEventSource=Xy.default,function(e){var r=t&&t.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),i=t&&t.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||r(t,e,i)};Object.defineProperty(e,"__esModule",{value:!0}),e.BigSegmentStoreStatusProviderImpl=e.LDClientImpl=e.platform=e.integrations=void 0;const n=tu;e.LDClientImpl=n.default;const s=dd;e.BigSegmentStoreStatusProviderImpl=s.default,e.integrations=Lg,e.platform=ru,i(yy,e),i(Gy,e),i(qy,e),i(ru,e)}(eu);const Jy=({options:e={},sdkKey:t,featureStoreProvider:r})=>{var i;const n=null!==(i=e.logger)&&void 0!==i?i:eu.BasicLogger.get();return Ql({sdkKey:t,options:e,edgeFeatureStore:new Zl(r,t,"Akamai",n),platformName:"Akamai EdgeWorker",sdkName:"@launchdarkly/akamai-server-base-sdk",sdkVersion:"0.2.0"})};export{Zl as EdgeFeatureStore,Jy as init};
|
|
34
34
|
//# sourceMappingURL=bundle.es.js.map
|