@flagsmith/flagsmith 11.0.0-internal.1 → 11.0.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/flagsmith-flagsmith-11.0.0.tgz +0 -0
- package/index.js +1 -1
- package/index.js.map +1 -1
- package/index.mjs +1 -1
- package/index.mjs.map +1 -1
- package/isomorphic.js +1 -1
- package/isomorphic.js.map +1 -1
- package/isomorphic.mjs +1 -1
- package/isomorphic.mjs.map +1 -1
- package/next-middleware.js +1 -1
- package/next-middleware.js.map +1 -1
- package/next-middleware.mjs +1 -1
- package/next-middleware.mjs.map +1 -1
- package/package.json +1 -1
- package/src/flagsmith-core.ts +0 -122
- package/src/types.d.ts +0 -28
- package/src/utils/version.ts +1 -1
- package/src/verify-fix-345-types.d.ts +7 -0
- package/types.d.ts +0 -28
- package/utils/version.d.ts +1 -1
- package/verify-fix-345-types.d.ts +7 -0
package/next-middleware.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self)["next-middleware"]={})}(this,(function(t){"use strict";var e=function(){return e=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var a in e=arguments[i])Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t},e.apply(this,arguments)};function i(t,e,i,n){return new(i||(i=Promise))((function(a,o){function l(t){try{r(n.next(t))}catch(t){o(t)}}function s(t){try{r(n.throw(t))}catch(t){o(t)}}function r(t){var e;t.done?a(t.value):(e=t.value,e instanceof i?e:new i((function(t){t(e)}))).then(l,s)}r((n=n.apply(t,e||[])).next())}))}function n(t,e){var i,n,a,o,l={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(i)throw new TypeError("Generator is already executing.");for(;l;)try{if(i=1,n&&(a=2&o[0]?n.return:o[0]?n.throw||((a=n.return)&&a.call(n),0):n.next)&&!(a=a.call(n,o[1])).done)return a;switch(n=0,a&&(o=[2&o[0],a.value]),o[0]){case 0:case 1:a=o;break;case 4:return l.label++,{value:o[1],done:!1};case 5:l.label++,n=o[1],o=[0];continue;case 7:o=l.ops.pop(),l.trys.pop();continue;default:if(!(a=l.trys,(a=a.length>0&&a[a.length-1])||6!==o[0]&&2!==o[0])){l=0;continue}if(3===o[0]&&(!a||o[1]>a[0]&&o[1]<a[3])){l.label=o[1];break}if(6===o[0]&&l.label<a[1]){l.label=a[1],a=o;break}if(a&&l.label<a[2]){l.label=a[2],l.ops.push(o);break}a[2]&&l.ops.pop(),l.trys.pop();continue}o=e.call(t,l)}catch(t){o=[6,t],n=0}finally{i=a=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}}function a(t,e,i){if(i||2===arguments.length)for(var n,a=0,o=e.length;a<o;a++)!n&&a in e||(n||(n=Array.prototype.slice.call(e,0,a)),n[a]=e[a]);return t.concat(n||Array.prototype.slice.call(e))}var o=function t(e,i){if(e===i)return!0;if(e&&i&&"object"==typeof e&&"object"==typeof i){if(e.constructor!==i.constructor)return!1;var n,a,o;if(Array.isArray(e)){if((n=e.length)!=i.length)return!1;for(a=n;0!=a--;)if(!t(e[a],i[a]))return!1;return!0}if(e.constructor===RegExp)return e.source===i.source&&e.flags===i.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===i.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===i.toString();if((n=(o=Object.keys(e)).length)!==Object.keys(i).length)return!1;for(a=n;0!=a--;)if(!Object.prototype.hasOwnProperty.call(i,o[a]))return!1;for(a=n;0!=a--;){var l=o[a];if(!t(e[l],i[l]))return!1}return!0}return e!=e&&i!=i};function l(t,e){var i=Object.keys(e||{}).filter((function(i){var n=null==t?void 0:t[i],a=null==e?void 0:e[i];return!o(n,a)}));return Object.keys(t||{}).filter((function(t){Object.keys(e||{}).includes(t)||i.push(t)})),Object.keys(i).length?i:null}function s(t,e,i){var n="shortString",a=!0;"number"==typeof i&&(n="javaDouble",a=!1),t[n]=t[n]||{},t[n][e]=a?i+"":i}function r(t){return!!t&&"object"==typeof t&&void 0!==t.value}function u(t){return Object.fromEntries(Object.entries(t).map((function(t){var e=t[0],i=t[1];return[e,r(i)?i:{value:i}]})))}function c(t){return e(e({},t),{identity:t.identity?e(e({},t.identity),{traits:u(t.identity.traits||{})}):void 0})}function v(t){return t.endsWith("/")?t:t+"/"}var d,h,g="11.0.0-internal.1";t.FlagSource=void 0,(d=t.FlagSource||(t.FlagSource={})).NONE="NONE",d.DEFAULT_FLAGS="DEFAULT_FLAGS",d.CACHE="CACHE",d.SERVER="SERVER";var f,p=null,y="FLAGSMITH_EVENT",m=y,S="https://edge.api.flagsmith.com/api/v1/",C="flagsmith_value_",b="flagsmith_enabled_",F="flagsmith_trait_",E=function(){function d(a){var o=this;this._trigger=null,this._triggerLoadingState=null,this.timestamp=null,this.isLoading=!1,this.eventSource=null,this.getFlags=function(){var i=o,n=i.api,a=i.evaluationContext;o.log("Get Flags"),o.isLoading=!0,o.loadingState.isFetching||o.setLoadingState(e(e({},o.loadingState),{isFetching:!0}));var r="".concat(o.getContext().identity),u=function(i){var n,a,u,c;if(i&&r==="".concat(o.getContext().identity)){var v=i.flags,d=i.traits,h=i.identifier;o.isLoading=!1;var g={},f={};d=d||[],(v=v||[]).forEach((function(t){g[t.feature.name.toLowerCase().replace(/ /g,"_")]={id:t.feature.id,enabled:t.enabled,value:t.feature_state_value}})),d.forEach((function(t){f[t.trait_key.toLowerCase().replace(/ /g,"_")]={transient:t.transient,value:t.trait_value}})),o.oldFlags=e({},o.flags);var p=l(o.oldFlags,g),y=l(null===(n=o.evaluationContext.identity)||void 0===n?void 0:n.traits,f);if((h||Object.keys(f).length)&&(o.evaluationContext.identity=e(e({},o.evaluationContext.identity),{traits:f}),h&&(o.evaluationContext.identity.identifier=h,o.identity=h)),o.flags=g,o.updateStorage(),o._onChange(o.oldFlags,{isFromServer:!0,flagsChanged:p,traitsChanged:y},o._loadedState(null,t.FlagSource.SERVER)),o.datadogRum)try{if(o.datadogRum.trackTraits){var m={};Object.keys((null===(a=o.evaluationContext.identity)||void 0===a?void 0:a.traits)||{}).map((function(t){m[F+t]=o.getTrait(t)}));var S=e(e(e({},o.datadogRum.client.getUser()),{id:o.datadogRum.client.getUser().id||(null===(u=o.evaluationContext.identity)||void 0===u?void 0:u.identifier)}),m);o.log("Setting Datadog user",S),o.datadogRum.client.setUser(S)}}catch(t){console.error(t)}if(o.dtrum)try{var E={javaDouble:{},date:{},shortString:{},javaLongOrObject:{}};Object.keys(o.flags).map((function(t){s(E,C+t,o.getValue(t,{skipAnalytics:!0})),s(E,b+t,o.hasFeature(t,{skipAnalytics:!0}))})),Object.keys((null===(c=o.evaluationContext.identity)||void 0===c?void 0:c.traits)||{}).map((function(t){s(E,F+t,o.getTrait(t))})),o.log("Sending javaLongOrObject traits to dynatrace",E.javaLongOrObject),o.log("Sending date traits to dynatrace",E.date),o.log("Sending shortString traits to dynatrace",E.shortString),o.log("Sending javaDouble to dynatrace",E.javaDouble),o.dtrum.sendSessionProperties(E.javaLongOrObject,E.date,E.shortString,E.javaDouble)}catch(t){console.error(t)}}};return a.identity?Promise.all([a.identity.traits&&Object.keys(a.identity.traits).length||!a.identity.identifier?o.getJSON(n+"identities/","POST",JSON.stringify({identifier:a.identity.identifier,transient:a.identity.transient,traits:Object.entries(a.identity.traits).map((function(t){var e=t[0],i=t[1];return{trait_key:e,trait_value:null==i?void 0:i.value,transient:null==i?void 0:i.transient}})).filter((function(t){return void 0!==t.trait_value||(o.log("Warning - attempted to set an undefined trait value for key",t.trait_key),!1)}))})):o.getJSON(n+"identities/?identifier="+encodeURIComponent(a.identity.identifier)+(a.identity.transient?"&transient=true":""))]).then((function(t){return o.evaluationContext.identity=e(e({},o.evaluationContext.identity),{traits:{}}),u(null==t?void 0:t[0])})).catch((function(t){var e=t.message,i=new Error(e);return Promise.reject(i)})):o.getJSON(n+"flags/").then((function(t){return u({flags:t,traits:void 0})}))},this.analyticsFlags=function(){var t=o.api;if(o.evaluationEvent&&o.evaluationContext.environment&&o.evaluationEvent[o.evaluationContext.environment.apiKey])return o.evaluationEvent&&0!==Object.getOwnPropertyNames(o.evaluationEvent).length&&0!==Object.getOwnPropertyNames(o.evaluationEvent[o.evaluationContext.environment.apiKey]).length?o.getJSON(t+"analytics/flags/","POST",JSON.stringify(o.evaluationEvent[o.evaluationContext.environment.apiKey])).then((function(t){if(o.evaluationContext.environment){var i=o.getState();o.evaluationEvent||(o.evaluationEvent={}),o.evaluationEvent[o.evaluationContext.environment.apiKey]={},o.setState(e(e({},i),{evaluationEvent:o.evaluationEvent})),o.updateEventStorage()}})).catch((function(t){o.log("Exception fetching evaluationEvent",t)})):void 0},this.flushPipelineAnalytics=function(){return i(o,void 0,void 0,(function(){var t,i,a,o,l,s,r;return n(this,(function(n){switch(n.label){case 0:if(t=this.evaluationAnalyticsUrl&&this.evaluationContext.environment,i=this.pipelineEvents.length>0&&(!this.isPipelineFlushing||0===this.pipelineFlushInterval),!t||!i)return[2];a=this.evaluationContext.environment.apiKey,this.isPipelineFlushing=!0,o=this.pipelineEvents,this.pipelineEvents=[],l={events:o,environment_key:a},n.label=1;case 1:return n.trys.push([1,3,4,5]),[4,h(this.evaluationAnalyticsUrl+"v1/analytics/batch",{method:"POST",body:JSON.stringify(l),headers:e({"Content-Type":"application/json; charset=utf-8","X-Environment-Key":a},{"Flagsmith-SDK-User-Agent":"flagsmith-js-sdk/".concat(g)})})];case 2:if(!(s=n.sent()).status||s.status<200||s.status>=300)throw new Error("Pipeline analytics: unexpected status ".concat(s.status));return this.log("Pipeline analytics: flush successful"),[3,5];case 3:return r=n.sent(),this.pipelineEvents=o.concat(this.pipelineEvents),this.trimPipelineBuffer(),this.log("Pipeline analytics: flush failed, events re-queued",r),[3,5];case 4:return this.isPipelineFlushing=!1,[7];case 5:return[2]}}))}))},this.datadogRum=null,this.loadingState={isLoading:!0,isFetching:!0,error:null,source:t.FlagSource.NONE},this.canUseStorage=!1,this.analyticsInterval=null,this.api=null,this.cacheFlags=!1,this.enableAnalytics=!1,this.enableLogs=!1,this.evaluationContext={},this.evaluationEvent=null,this.flags=null,this.getFlagInterval=null,this.headers=null,this.identity=null,this.initialised=!1,this.oldFlags=null,this.onChange=null,this.onError=null,this.ticks=null,this.timer=null,this.dtrum=null,this.sentryClient=null,this.withTraits=null,this.cacheOptions={ttl:0,skipAPI:!1,loadStale:!1,storageKey:void 0},this.evaluationAnalyticsUrl=null,this.evaluationAnalyticsMaxBuffer=1e3,this.pipelineEvents=[],this.pipelineAnalyticsInterval=null,this.isPipelineFlushing=!1,this.getValue=function(t,e,i){var n=o.flags&&o.flags[t.toLowerCase().replace(/ /g,"_")],a=null;if(n&&(a=n.value),(null==e?void 0:e.skipAnalytics)||i||o.evaluateFlag(t,"VALUE"),null===a&&void 0!==(null==e?void 0:e.fallback))return e.fallback;if(null==e?void 0:e.json)try{return null===a?(o.log("Tried to parse null flag as JSON: "+t),null):JSON.parse(a)}catch(t){return e.fallback}return a},this.getTrait=function(t){var e,i;return(null===(e=o.evaluationContext.identity)||void 0===e?void 0:e.traits)&&(null===(i=o.evaluationContext.identity.traits[t.toLowerCase().replace(/ /g,"_")])||void 0===i?void 0:i.value)},this.getAllTraits=function(){var t;return Object.fromEntries(Object.entries((null===(t=o.evaluationContext.identity)||void 0===t?void 0:t.traits)||{}).map((function(t){var e=t[0],i=t[1];return[e,null==i?void 0:i.value]})))},this.setContext=function(t){var i,n,a=c(t);return o.evaluationContext=e(e({},a),{environment:a.environment||o.evaluationContext.environment}),o.identity=null===(n=null===(i=o.getContext())||void 0===i?void 0:i.identity)||void 0===n?void 0:n.identifier,o.initialised?o.getFlags():Promise.resolve()},this.getContext=function(){return o.evaluationContext},this.updateContext=function(t){return o.setContext(e(e({},o.getContext()),t))},this.setTrait=function(t,i){var n;if(o.api)return o.setContext(e(e({},o.evaluationContext),{identity:e(e({},o.evaluationContext.identity),{traits:e(e({},null===(n=o.evaluationContext.identity)||void 0===n?void 0:n.traits),u(Object.fromEntries([[t,i]])))})}))},this.setTraits=function(t){var i;if(o.api)return o.setContext(e(e({},o.evaluationContext),{identity:e(e({},o.evaluationContext.identity),{traits:e(e({},null===(i=o.evaluationContext.identity)||void 0===i?void 0:i.traits),Object.fromEntries(Object.entries(t).map((function(t){var e=t[0],i=t[1];return[e,r(i)?i:{value:i}]}))))})}));console.error("Attempted to "+"setTraits"+" a user before calling flagsmith.init. Call flagsmith.init first, if you wish to prevent it sending a request for flags, call init with preventFetch:true.")},this.hasFeature=function(t,e){var i,n,a="object"==typeof e,l=o.flags&&o.flags[t.toLowerCase().replace(/ /g,"_")],s=!1;if(!l&&a&&void 0!==e.fallback?s=null==e?void 0:e.fallback:l&&l.enabled&&(s=!0),(a&&!e.skipAnalytics||!e)&&o.evaluateFlag(t,"ENABLED"),o.sentryClient)try{null===(n=null===(i=o.sentryClient.getIntegrationByName("FeatureFlags"))||void 0===i?void 0:i.addFeatureFlag)||void 0===n||n.call(i,t,s)}catch(t){console.error(t)}return s},this.getStorageKey=function(){var t,e;return(null===(t=o.cacheOptions)||void 0===t?void 0:t.storageKey)||"FLAGSMITH_DB_"+(null===(e=o.evaluationContext.environment)||void 0===e?void 0:e.apiKey)},this.getJSON=function(t,e,i){var n,a,l,s=o.headers,r={method:e||"GET",body:i,cache:"no-cache",headers:{}};o.evaluationContext.environment&&(r.headers["X-Environment-Key"]=o.evaluationContext.environment.apiKey),e&&"GET"!==e&&(r.headers["Content-Type"]="application/json; charset=utf-8"),(null===(n=o.applicationMetadata)||void 0===n?void 0:n.name)&&(r.headers["Flagsmith-Application-Name"]=o.applicationMetadata.name),(null===(a=o.applicationMetadata)||void 0===a?void 0:a.version)&&(r.headers["Flagsmith-Application-Version"]=o.applicationMetadata.version),r.headers["Flagsmith-SDK-User-Agent"]="flagsmith-js-sdk/".concat(g),s&&Object.assign(r.headers,s),h||console.error("Flagsmith: fetch is undefined, please specify a fetch implementation into flagsmith.init to support SSR.");var u="".concat(null===(l=o.evaluationContext.identity)||void 0===l?void 0:l.identifier);return h(t,r).then((function(i){var n,a,l="".concat(null===(n=o.evaluationContext.identity)||void 0===n?void 0:n.identifier);if(u===l){var s=null===(a=i.headers)||void 0===a?void 0:a.get("x-flagsmith-document-updated-at");if(s)try{var r=parseFloat(s);if(isNaN(r))return Promise.reject("Failed to parse x-flagsmith-document-updated-at");o.timestamp=r}catch(t){o.log(t,"Failed to parse x-flagsmith-document-updated-at",s)}return o.log("Fetch response: "+i.status+" "+(e||"GET")+0+t),i.text().then((function(t){var e=t;try{e=JSON.parse(t)}catch(t){}return!e&&i.status&&(e="API Response: ".concat(i.status)),i.status&&i.status>=200&&i.status<300?e:Promise.reject(new Error(e))}))}o.log("Received response with identity mismatch, ignoring response. Requested: ".concat(u,", Current: ").concat(l))}))},this.evaluateFlag=function(t,e){if(o.datadogRum&&(o.datadogRum.client.addFeatureFlagEvaluation?"VALUE"===e?o.datadogRum.client.addFeatureFlagEvaluation(C+t,o.getValue(t,{},!0)):o.datadogRum.client.addFeatureFlagEvaluation(b+t,o.hasFeature(t,!0)):console.error("Flagsmith: Your datadog RUM client does not support the function addFeatureFlagEvaluation, please update it.")),o.enableAnalytics){if(!o.evaluationEvent||!o.evaluationContext.environment)return;o.evaluationEvent[o.evaluationContext.environment.apiKey]||(o.evaluationEvent[o.evaluationContext.environment.apiKey]={}),void 0===o.evaluationEvent[o.evaluationContext.environment.apiKey][t]&&(o.evaluationEvent[o.evaluationContext.environment.apiKey][t]=0),o.evaluationEvent[o.evaluationContext.environment.apiKey][t]+=1}o.evaluationAnalyticsUrl&&o.recordPipelineEvent(t),o.updateEventStorage()},this.pipelineFlushInterval=1e4,this._onChange=function(t,e,i){var n,a;o.setLoadingState(i),null===(n=o.onChange)||void 0===n||n.call(o,t,e,o.loadingState),null===(a=o._trigger)||void 0===a||a.call(o)},h=a.fetch?a.fetch:"undefined"!=typeof fetch?fetch:null===global||void 0===global?void 0:global.fetch,this.canUseStorage="undefined"!=typeof window||!!a.browserlessStorage,this.applicationMetadata=a.applicationMetadata,this.log("Constructing flagsmith instance "+a),a.eventSource&&(f=a.eventSource),a.AsyncStorage&&(p=a.AsyncStorage)}return d.prototype.init=function(a){var o,s,r,u;return i(this,void 0,void 0,(function(){var d,g,f,y,C,b,F,E,x,O,A,w,_,I,j,L,P,k,T,N,K,U,R,D,J,M,G,B,V,H,q,W,X,Y,z,Q,Z=this;return n(this,(function($){switch($.label){case 0:d=c(a.evaluationContext||this.evaluationContext),$.label=1;case 1:if($.trys.push([1,13,,14]),g=a.AsyncStorage,f=a._trigger,y=a._triggerLoadingState,C=a.angularHttpClient,b=a.api,F=void 0===b?S:b,E=a.applicationMetadata,x=a.cacheFlags,O=a.cacheOptions,A=a.datadogRum,w=a.defaultFlags,_=a.enableAnalytics,I=a.enableDynatrace,j=a.enableLogs,L=a.environmentID,P=a.evaluationAnalyticsConfig,k=a.eventSourceUrl,T=void 0===k?"https://realtime.flagsmith.com/":k,N=a.fetch,K=a.headers,U=a.identity,R=a.onChange,D=a.onError,J=a.preventFetch,M=a.realtime,G=a.sentryClient,B=a.state,V=a.traits,d.environment=L?{apiKey:L}:d.environment,!d.environment||!d.environment.apiKey)throw new Error("Please provide `evaluationContext.environment` with non-empty `apiKey`");if(d.identity=U||V?{identifier:U,traits:V?Object.fromEntries(Object.entries(V).map((function(t){return[t[0],{value:t[1]}]}))):{}}:d.identity,this.evaluationContext=d,this.api=v(F),this.headers=K,this.getFlagInterval=null,this.analyticsInterval=null,this.onChange=R,H="Wrong Flagsmith Configuration: preventFetch is true and no defaulFlags provided",this._trigger=f||this._trigger,this._triggerLoadingState=y||this._triggerLoadingState,this.onError=function(t){Z.setLoadingState(e(e({},Z.loadingState),{isFetching:!1,isLoading:!1,error:t})),null==D||D(t)},this.enableLogs=j||!1,this.cacheOptions=O?{skipAPI:!!O.skipAPI,ttl:O.ttl||0,storageKey:O.storageKey,loadStale:!!O.loadStale}:this.cacheOptions,!this.cacheOptions.ttl&&this.cacheOptions.skipAPI&&console.warn("Flagsmith: you have set a cache ttl of 0 and are skipping API calls, this means the API will not be hit unless you clear local storage."),N&&(h=N),this.enableAnalytics=_||!1,this.flags=Object.assign({},w)||{},this.datadogRum=A||null,this.initialised=!0,this.ticks=1e4,this.timer=this.enableLogs?(new Date).valueOf():null,this.cacheFlags=void 0!==p&&!!x,this.applicationMetadata=E,m="FLAGSMITH_EVENT_"+d.environment.apiKey,g&&(p=g),M&&"undefined"!=typeof window&&this.setupRealtime(T,d.environment.apiKey),Object.keys(this.flags).length&&(this.loadingState=e(e({},this.loadingState),{isLoading:!1,source:t.FlagSource.DEFAULT_FLAGS})),this.setState(B),this.log("Initialising with properties",a,this),I&&("undefined"==typeof dtrum?console.error("You have attempted to enable dynatrace but dtrum is undefined, please check you have the Dynatrace RUM JavaScript API installed."):this.dtrum=dtrum),G&&(this.sentryClient=G),C&&(h=function(t){return function(e,i){var n=i.headers,a=i.method,o=i.body,l={headers:n,observe:"response",responseType:"text"},s=function(t,e){var i=t.status,n=t.headers,a=t.body,o=t.error,l=t.message;return{status:null!=i?i:e?200:500,ok:e,headers:{get:function(t){var e,i;return null!==(i=null===(e=null==n?void 0:n.get)||void 0===e?void 0:e.call(n,t))&&void 0!==i?i:null}},text:function(){var t,e,i=null!==(e=null!==(t=null!=a?a:o)&&void 0!==t?t:l)&&void 0!==e?e:"";return Promise.resolve("string"!=typeof i?JSON.stringify(i):i)}}};return new Promise((function(i){var n=function(t){return i(s(t,!t.status||t.status>=200&&t.status<300))},r=function(t){return i(s(t,!1))};switch(a){case"GET":return t.get(e,l).subscribe(n,r);case"POST":case"PUT":return t.post(e,null!=o?o:"",l).subscribe(n,r);default:return r({status:405,message:"Unsupported method: ".concat(a)})}}))}}(C)),p&&this.canUseStorage&&p.getItem(m).then((function(t){try{Z.evaluationEvent=JSON.parse(t)||{}}catch(t){Z.evaluationEvent={}}Z.analyticsInterval=setInterval(Z.analyticsFlags,Z.ticks)})),this.enableAnalytics&&(this.analyticsInterval&&clearInterval(this.analyticsInterval),p&&this.canUseStorage&&p.getItem(m,(function(t,i){if(i&&Z.evaluationContext.environment){var n=JSON.parse(i);if(n[Z.evaluationContext.environment.apiKey]){var a=Z.getState();Z.log("Retrieved events from cache",i),Z.setState(e(e({},a),{evaluationEvent:n[Z.evaluationContext.environment.apiKey]}))}}}))),P?this.initPipelineAnalytics(P):this.stopPipelineAnalytics(),!x)return[3,9];if(!p||!this.canUseStorage)return[3,8];q=function(a,o){return i(Z,void 0,void 0,(function(){var i,a,s,r,u,v,d,h,g,f,p,y,m,S,C,b,F,E,x,O=this;return n(this,(function(n){switch(n.label){case 0:if(!o)return[3,7];i=null,a=null,n.label=1;case 1:return n.trys.push([1,5,,6]),s=JSON.parse(o),r=!1,u=!1,s&&s.api===this.api&&(null===(f=null===(g=s.evaluationContext)||void 0===g?void 0:g.environment)||void 0===f?void 0:f.apiKey)===(null===(p=this.evaluationContext.environment)||void 0===p?void 0:p.apiKey)&&(v=!0,this.evaluationContext.identity&&(null===(m=null===(y=s.evaluationContext)||void 0===y?void 0:y.identity)||void 0===m?void 0:m.identifier)!==this.evaluationContext.identity.identifier&&(this.log("Ignoring cache, identity has changed from "+(null===(C=null===(S=s.evaluationContext)||void 0===S?void 0:S.identity)||void 0===C?void 0:C.identifier)+" to "+this.evaluationContext.identity.identifier),v=!1),this.cacheOptions.ttl&&(!s.ts||(new Date).valueOf()-s.ts>this.cacheOptions.ttl)&&(s.ts&&!this.cacheOptions.loadStale?(this.log("Ignoring cache, timestamp is too old ts:"+s.ts+" ttl: "+this.cacheOptions.ttl+" time elapsed since cache: "+((new Date).valueOf()-s.ts)+"ms"),v=!1):s.ts&&this.cacheOptions.loadStale&&(this.log("Loading stale cache, timestamp ts:"+s.ts+" ttl: "+this.cacheOptions.ttl+" time elapsed since cache: "+((new Date).valueOf()-s.ts)+"ms"),u=!0,v=!0)),v&&(r=!0,i=l(this.flags,s.flags),this.setState(e(e({},s),{evaluationContext:c(e(e({},s.evaluationContext),{identity:(null===(b=s.evaluationContext)||void 0===b?void 0:b.identity)?e(e({},null===(F=s.evaluationContext)||void 0===F?void 0:F.identity),{traits:e({},V||{})}):void 0}))})),this.log("Retrieved flags from cache",s))),r?(d=!J&&(!this.cacheOptions.skipAPI||u),this._onChange(null,{isFromServer:!1,flagsChanged:i,traitsChanged:a},this._loadedState(null,t.FlagSource.CACHE,d)),this.oldFlags=this.flags,this.cacheOptions.skipAPI&&r&&!u&&this.log("Skipping API, using cache"),d&&this.getFlags().catch((function(t){var e;null===(e=O.onError)||void 0===e||e.call(O,t)})),[3,4]):[3,2];case 2:return J?[3,4]:[4,this.getFlags()];case 3:n.sent(),n.label=4;case 4:return[3,6];case 5:throw h=n.sent(),this.log("Exception fetching cached logs",h),h;case 6:return[3,10];case 7:return J?[3,9]:[4,this.getFlags()];case 8:return n.sent(),[3,10];case 9:if(w)this._onChange(null,{isFromServer:!1,flagsChanged:l({},this.flags),traitsChanged:l({},null===(E=this.evaluationContext.identity)||void 0===E?void 0:E.traits)},this._loadedState(null,t.FlagSource.DEFAULT_FLAGS));else{if(!this.flags)throw new Error(H);this._onChange(null,{isFromServer:!1,flagsChanged:l({},this.flags),traitsChanged:l({},null===(x=this.evaluationContext.identity)||void 0===x?void 0:x.traits)},this._loadedState(null,t.FlagSource.DEFAULT_FLAGS))}n.label=10;case 10:return[2]}}))}))},$.label=2;case 2:return $.trys.push([2,7,,8]),p.getItemSync?(W=p.getItemSync(this.getStorageKey()),[3,5]):[3,3];case 3:return[4,p.getItem(this.getStorageKey())];case 4:W=$.sent(),$.label=5;case 5:return[4,q(null,W)];case 6:return $.sent(),[3,8];case 7:if(X=$.sent(),!this.flags||0===Object.keys(this.flags).length)throw X;return Q=X instanceof Error?X:new Error("".concat(X)),null===(o=this.onError)||void 0===o||o.call(this,Q),[3,8];case 8:return[3,12];case 9:return J?[3,11]:[4,this.getFlags()];case 10:return $.sent(),[3,12];case 11:if(w)this._onChange(null,{isFromServer:!1,flagsChanged:l({},w),traitsChanged:l({},null===(s=d.identity)||void 0===s?void 0:s.traits)},this._loadedState(null,t.FlagSource.DEFAULT_FLAGS));else if(this.flags&&(Y=null,0===Object.keys(this.flags).length&&(Y=H),this._onChange(null,{isFromServer:!1,flagsChanged:l({},this.flags),traitsChanged:l({},null===(r=d.identity)||void 0===r?void 0:r.traits)},this._loadedState(Y,t.FlagSource.DEFAULT_FLAGS)),Y))throw new Error(Y);$.label=12;case 12:return[3,14];case 13:throw z=$.sent(),this.log("Error during initialisation ",z),Q=z instanceof Error?z:new Error("".concat(z)),null===(u=this.onError)||void 0===u||u.call(this,Q),z;case 14:return[2]}}))}))},d.prototype.getAllFlags=function(){return this.flags},d.prototype.identify=function(t,e,i){return this.identity=t,this.evaluationContext.identity={identifier:t,transient:i,traits:this.evaluationContext.identity&&this.evaluationContext.identity.identifier==t?this.evaluationContext.identity.traits:{}},this.evaluationContext.identity.identifier=t,this.log("Identify: "+this.evaluationContext.identity.identifier),e&&(this.evaluationContext.identity.traits=Object.fromEntries(Object.entries(e).map((function(t){var e=t[0],i=t[1];return[e,r(i)?i:{value:i}]})))),this.initialised?this.getFlags():Promise.resolve()},d.prototype.getState=function(){return{api:this.api,flags:this.flags,ts:this.ts,evaluationContext:this.evaluationContext,identity:this.identity,evaluationEvent:this.evaluationEvent}},d.prototype.setState=function(t){var e,i;t&&(this.initialised=!0,this.api=t.api||this.api||S,this.flags=t.flags||this.flags,this.evaluationContext=t.evaluationContext||this.evaluationContext,this.evaluationEvent=t.evaluationEvent||this.evaluationEvent,this.identity=null===(i=null===(e=this.getContext())||void 0===e?void 0:e.identity)||void 0===i?void 0:i.identifier,this.log("setState called",this))},d.prototype.logout=function(){return this.identity=null,this.evaluationContext.identity=null,this.initialised?this.getFlags():Promise.resolve()},d.prototype.startListening=function(t){void 0===t&&(t=1e3),this.getFlagInterval&&clearInterval(this.getFlagInterval),this.getFlagInterval=setInterval(this.getFlags,t)},d.prototype.stopListening=function(){this.getFlagInterval&&(clearInterval(this.getFlagInterval),this.getFlagInterval=null)},d.prototype._loadedState=function(t,e,i){return void 0===t&&(t=null),void 0===i&&(i=!1),{error:t,isFetching:i,isLoading:!1,source:e}},d.prototype.log=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];this.enableLogs&&console.log.apply(this,a(["FLAGSMITH:",(new Date).valueOf()-(this.timer||0),"ms"],t,!0))},d.prototype.updateStorage=function(){if(this.cacheFlags){this.ts=(new Date).valueOf();var t=JSON.stringify(this.getState());this.log("Setting storage",t),p.setItem(this.getStorageKey(),t)}},d.prototype.updateEventStorage=function(){if(this.enableAnalytics){var t=JSON.stringify(this.getState().evaluationEvent);p.setItem(m,t).catch((function(t){return console.error("Flagsmith: Error setting item in async storage",t)}))}},d.prototype.initPipelineAnalytics=function(t){var e,i,n,a;this.stopPipelineAnalytics(),this.evaluationAnalyticsUrl=v(t.analyticsServerUrl),this.evaluationAnalyticsMaxBuffer=null!==(e=t.maxBuffer)&&void 0!==e?e:1e3,this.pipelineFlushInterval=null!==(i=t.flushInterval)&&void 0!==i?i:1e4,this.pipelineEvents=[],this.pipelineFlushInterval>0&&(this.pipelineAnalyticsInterval=setInterval(this.flushPipelineAnalytics,this.pipelineFlushInterval),null===(a=null===(n=this.pipelineAnalyticsInterval)||void 0===n?void 0:n.unref)||void 0===a||a.call(n))},d.prototype.stopPipelineAnalytics=function(){this.pipelineAnalyticsInterval&&(clearInterval(this.pipelineAnalyticsInterval),this.pipelineAnalyticsInterval=null),this.evaluationAnalyticsUrl=null,this.pipelineEvents=[]},d.prototype.trimPipelineBuffer=function(){if(this.pipelineEvents.length>this.evaluationAnalyticsMaxBuffer){var t=this.pipelineEvents.length-this.evaluationAnalyticsMaxBuffer;this.pipelineEvents=this.pipelineEvents.slice(t)}},d.prototype.recordPipelineEvent=function(t){var i,n,a,o=t.toLowerCase().replace(/ /g,"_"),l=this.flags&&this.flags[o],s={event_id:o,event_type:"flag_evaluation",evaluated_at:Date.now(),identity_identifier:null!==(n=null===(i=this.evaluationContext.identity)||void 0===i?void 0:i.identifier)&&void 0!==n?n:null,enabled:l?l.enabled:null,value:l?l.value:null,traits:(null===(a=this.evaluationContext.identity)||void 0===a?void 0:a.traits)?e({},this.evaluationContext.identity.traits):null,metadata:e(e(e({},l?{id:l.id}:{}),"undefined"!=typeof window&&window.location?{page_url:window.location.href}:{}),{sdk_version:g})};this.pipelineEvents.push(s),this.trimPipelineBuffer(),0===this.pipelineFlushInterval&&this.flushPipelineAnalytics()},d.prototype.setLoadingState=function(t){var i;o(t,this.loadingState)||(this.loadingState=e({},t),this.log("Loading state changed",t),null===(i=this._triggerLoadingState)||void 0===i||i.call(this))},d.prototype.setupRealtime=function(t,e){var i=this,n=t+"sse/environments/"+e+"/stream";f?this.eventSource||(this.log("Creating event source with url "+n),this.eventSource=new f(n),this.eventSource.addEventListener("environment_updated",(function(t){var e;try{e=JSON.parse(t.data).updated_at}catch(t){i.log("Could not parse sse event",t)}e?!i.timestamp||e>i.timestamp?i.isLoading?i.log("updated_at is new, but flags are loading",t.data,i.timestamp):(i.log("updated_at is new, fetching flags",t.data,i.timestamp),i.getFlags()):i.log("updated_at is outdated, skipping get flags",t.data,i.timestamp):i.log("No updated_at received, fetching flags",t)}))):this.log("Error, EventSource is undefined")},d}();function x(t){var e=t.fetch,i=t.AsyncStorage,n=t.eventSource;return new E({fetch:e,AsyncStorage:i,eventSource:n})}var O=x({});t.createFlagsmithInstance=function(){return x({})},t.default=O,Object.defineProperty(t,"__esModule",{value:!0})}));
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self)["next-middleware"]={})}(this,(function(t){"use strict";var e=function(){return e=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var a in e=arguments[n])Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t},e.apply(this,arguments)};function n(t,e,n,i){return new(n||(n=Promise))((function(a,o){function r(t){try{s(i.next(t))}catch(t){o(t)}}function l(t){try{s(i.throw(t))}catch(t){o(t)}}function s(t){var e;t.done?a(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(r,l)}s((i=i.apply(t,e||[])).next())}))}function i(t,e){var n,i,a,o,r={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return o={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function l(o){return function(l){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,i&&(a=2&o[0]?i.return:o[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,o[1])).done)return a;switch(i=0,a&&(o=[2&o[0],a.value]),o[0]){case 0:case 1:a=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,i=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(a=r.trys,(a=a.length>0&&a[a.length-1])||6!==o[0]&&2!==o[0])){r=0;continue}if(3===o[0]&&(!a||o[1]>a[0]&&o[1]<a[3])){r.label=o[1];break}if(6===o[0]&&r.label<a[1]){r.label=a[1],a=o;break}if(a&&r.label<a[2]){r.label=a[2],r.ops.push(o);break}a[2]&&r.ops.pop(),r.trys.pop();continue}o=e.call(t,r)}catch(t){o=[6,t],i=0}finally{n=a=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,l])}}}function a(t,e,n){if(n||2===arguments.length)for(var i,a=0,o=e.length;a<o;a++)!i&&a in e||(i||(i=Array.prototype.slice.call(e,0,a)),i[a]=e[a]);return t.concat(i||Array.prototype.slice.call(e))}var o=function t(e,n){if(e===n)return!0;if(e&&n&&"object"==typeof e&&"object"==typeof n){if(e.constructor!==n.constructor)return!1;var i,a,o;if(Array.isArray(e)){if((i=e.length)!=n.length)return!1;for(a=i;0!=a--;)if(!t(e[a],n[a]))return!1;return!0}if(e.constructor===RegExp)return e.source===n.source&&e.flags===n.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===n.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===n.toString();if((i=(o=Object.keys(e)).length)!==Object.keys(n).length)return!1;for(a=i;0!=a--;)if(!Object.prototype.hasOwnProperty.call(n,o[a]))return!1;for(a=i;0!=a--;){var r=o[a];if(!t(e[r],n[r]))return!1}return!0}return e!=e&&n!=n};function r(t,e){var n=Object.keys(e||{}).filter((function(n){var i=null==t?void 0:t[n],a=null==e?void 0:e[n];return!o(i,a)}));return Object.keys(t||{}).filter((function(t){Object.keys(e||{}).includes(t)||n.push(t)})),Object.keys(n).length?n:null}function l(t,e,n){var i="shortString",a=!0;"number"==typeof n&&(i="javaDouble",a=!1),t[i]=t[i]||{},t[i][e]=a?n+"":n}function s(t){return!!t&&"object"==typeof t&&void 0!==t.value}function u(t){return Object.fromEntries(Object.entries(t).map((function(t){var e=t[0],n=t[1];return[e,s(n)?n:{value:n}]})))}function c(t){return e(e({},t),{identity:t.identity?e(e({},t.identity),{traits:u(t.identity.traits||{})}):void 0})}var d,v;t.FlagSource=void 0,(d=t.FlagSource||(t.FlagSource={})).NONE="NONE",d.DEFAULT_FLAGS="DEFAULT_FLAGS",d.CACHE="CACHE",d.SERVER="SERVER";var g,h=null,f="FLAGSMITH_EVENT",p=f,y="https://edge.api.flagsmith.com/api/v1/",m="flagsmith_value_",S="flagsmith_enabled_",C="flagsmith_trait_",b=function(){function d(n){var i=this;this._trigger=null,this._triggerLoadingState=null,this.timestamp=null,this.isLoading=!1,this.eventSource=null,this.getFlags=function(){var n=i,a=n.api,o=n.evaluationContext;i.log("Get Flags"),i.isLoading=!0,i.loadingState.isFetching||i.setLoadingState(e(e({},i.loadingState),{isFetching:!0}));var s="".concat(i.getContext().identity),u=function(n){var a,o,u,c;if(n&&s==="".concat(i.getContext().identity)){var d=n.flags,v=n.traits,g=n.identifier;i.isLoading=!1;var h={},f={};v=v||[],(d=d||[]).forEach((function(t){h[t.feature.name.toLowerCase().replace(/ /g,"_")]={id:t.feature.id,enabled:t.enabled,value:t.feature_state_value}})),v.forEach((function(t){f[t.trait_key.toLowerCase().replace(/ /g,"_")]={transient:t.transient,value:t.trait_value}})),i.oldFlags=e({},i.flags);var p=r(i.oldFlags,h),y=r(null===(a=i.evaluationContext.identity)||void 0===a?void 0:a.traits,f);if((g||Object.keys(f).length)&&(i.evaluationContext.identity=e(e({},i.evaluationContext.identity),{traits:f}),g&&(i.evaluationContext.identity.identifier=g,i.identity=g)),i.flags=h,i.updateStorage(),i._onChange(i.oldFlags,{isFromServer:!0,flagsChanged:p,traitsChanged:y},i._loadedState(null,t.FlagSource.SERVER)),i.datadogRum)try{if(i.datadogRum.trackTraits){var b={};Object.keys((null===(o=i.evaluationContext.identity)||void 0===o?void 0:o.traits)||{}).map((function(t){b[C+t]=i.getTrait(t)}));var F=e(e(e({},i.datadogRum.client.getUser()),{id:i.datadogRum.client.getUser().id||(null===(u=i.evaluationContext.identity)||void 0===u?void 0:u.identifier)}),b);i.log("Setting Datadog user",F),i.datadogRum.client.setUser(F)}}catch(t){console.error(t)}if(i.dtrum)try{var x={javaDouble:{},date:{},shortString:{},javaLongOrObject:{}};Object.keys(i.flags).map((function(t){l(x,m+t,i.getValue(t,{skipAnalytics:!0})),l(x,S+t,i.hasFeature(t,{skipAnalytics:!0}))})),Object.keys((null===(c=i.evaluationContext.identity)||void 0===c?void 0:c.traits)||{}).map((function(t){l(x,C+t,i.getTrait(t))})),i.log("Sending javaLongOrObject traits to dynatrace",x.javaLongOrObject),i.log("Sending date traits to dynatrace",x.date),i.log("Sending shortString traits to dynatrace",x.shortString),i.log("Sending javaDouble to dynatrace",x.javaDouble),i.dtrum.sendSessionProperties(x.javaLongOrObject,x.date,x.shortString,x.javaDouble)}catch(t){console.error(t)}}};return o.identity?Promise.all([o.identity.traits&&Object.keys(o.identity.traits).length||!o.identity.identifier?i.getJSON(a+"identities/","POST",JSON.stringify({identifier:o.identity.identifier,transient:o.identity.transient,traits:Object.entries(o.identity.traits).map((function(t){var e=t[0],n=t[1];return{trait_key:e,trait_value:null==n?void 0:n.value,transient:null==n?void 0:n.transient}})).filter((function(t){return void 0!==t.trait_value||(i.log("Warning - attempted to set an undefined trait value for key",t.trait_key),!1)}))})):i.getJSON(a+"identities/?identifier="+encodeURIComponent(o.identity.identifier)+(o.identity.transient?"&transient=true":""))]).then((function(t){return i.evaluationContext.identity=e(e({},i.evaluationContext.identity),{traits:{}}),u(null==t?void 0:t[0])})).catch((function(t){var e=t.message,n=new Error(e);return Promise.reject(n)})):i.getJSON(a+"flags/").then((function(t){return u({flags:t,traits:void 0})}))},this.analyticsFlags=function(){var t=i.api;if(i.evaluationEvent&&i.evaluationContext.environment&&i.evaluationEvent[i.evaluationContext.environment.apiKey])return i.evaluationEvent&&0!==Object.getOwnPropertyNames(i.evaluationEvent).length&&0!==Object.getOwnPropertyNames(i.evaluationEvent[i.evaluationContext.environment.apiKey]).length?i.getJSON(t+"analytics/flags/","POST",JSON.stringify(i.evaluationEvent[i.evaluationContext.environment.apiKey])).then((function(t){if(i.evaluationContext.environment){var n=i.getState();i.evaluationEvent||(i.evaluationEvent={}),i.evaluationEvent[i.evaluationContext.environment.apiKey]={},i.setState(e(e({},n),{evaluationEvent:i.evaluationEvent})),i.updateEventStorage()}})).catch((function(t){i.log("Exception fetching evaluationEvent",t)})):void 0},this.datadogRum=null,this.loadingState={isLoading:!0,isFetching:!0,error:null,source:t.FlagSource.NONE},this.canUseStorage=!1,this.analyticsInterval=null,this.api=null,this.cacheFlags=!1,this.enableAnalytics=!1,this.enableLogs=!1,this.evaluationContext={},this.evaluationEvent=null,this.flags=null,this.getFlagInterval=null,this.headers=null,this.identity=null,this.initialised=!1,this.oldFlags=null,this.onChange=null,this.onError=null,this.ticks=null,this.timer=null,this.dtrum=null,this.sentryClient=null,this.withTraits=null,this.cacheOptions={ttl:0,skipAPI:!1,loadStale:!1,storageKey:void 0},this.getValue=function(t,e,n){var a=i.flags&&i.flags[t.toLowerCase().replace(/ /g,"_")],o=null;if(a&&(o=a.value),(null==e?void 0:e.skipAnalytics)||n||i.evaluateFlag(t,"VALUE"),null===o&&void 0!==(null==e?void 0:e.fallback))return e.fallback;if(null==e?void 0:e.json)try{return null===o?(i.log("Tried to parse null flag as JSON: "+t),null):JSON.parse(o)}catch(t){return e.fallback}return o},this.getTrait=function(t){var e,n;return(null===(e=i.evaluationContext.identity)||void 0===e?void 0:e.traits)&&(null===(n=i.evaluationContext.identity.traits[t.toLowerCase().replace(/ /g,"_")])||void 0===n?void 0:n.value)},this.getAllTraits=function(){var t;return Object.fromEntries(Object.entries((null===(t=i.evaluationContext.identity)||void 0===t?void 0:t.traits)||{}).map((function(t){var e=t[0],n=t[1];return[e,null==n?void 0:n.value]})))},this.setContext=function(t){var n,a,o=c(t);return i.evaluationContext=e(e({},o),{environment:o.environment||i.evaluationContext.environment}),i.identity=null===(a=null===(n=i.getContext())||void 0===n?void 0:n.identity)||void 0===a?void 0:a.identifier,i.initialised?i.getFlags():Promise.resolve()},this.getContext=function(){return i.evaluationContext},this.updateContext=function(t){return i.setContext(e(e({},i.getContext()),t))},this.setTrait=function(t,n){var a;if(i.api)return i.setContext(e(e({},i.evaluationContext),{identity:e(e({},i.evaluationContext.identity),{traits:e(e({},null===(a=i.evaluationContext.identity)||void 0===a?void 0:a.traits),u(Object.fromEntries([[t,n]])))})}))},this.setTraits=function(t){var n;if(i.api)return i.setContext(e(e({},i.evaluationContext),{identity:e(e({},i.evaluationContext.identity),{traits:e(e({},null===(n=i.evaluationContext.identity)||void 0===n?void 0:n.traits),Object.fromEntries(Object.entries(t).map((function(t){var e=t[0],n=t[1];return[e,s(n)?n:{value:n}]}))))})}));console.error("Attempted to "+"setTraits"+" a user before calling flagsmith.init. Call flagsmith.init first, if you wish to prevent it sending a request for flags, call init with preventFetch:true.")},this.hasFeature=function(t,e){var n,a,o="object"==typeof e,r=i.flags&&i.flags[t.toLowerCase().replace(/ /g,"_")],l=!1;if(!r&&o&&void 0!==e.fallback?l=null==e?void 0:e.fallback:r&&r.enabled&&(l=!0),(o&&!e.skipAnalytics||!e)&&i.evaluateFlag(t,"ENABLED"),i.sentryClient)try{null===(a=null===(n=i.sentryClient.getIntegrationByName("FeatureFlags"))||void 0===n?void 0:n.addFeatureFlag)||void 0===a||a.call(n,t,l)}catch(t){console.error(t)}return l},this.getStorageKey=function(){var t,e;return(null===(t=i.cacheOptions)||void 0===t?void 0:t.storageKey)||"FLAGSMITH_DB_"+(null===(e=i.evaluationContext.environment)||void 0===e?void 0:e.apiKey)},this.getJSON=function(t,e,n){var a,o,r,l=i.headers,s={method:e||"GET",body:n,cache:"no-cache",headers:{}};i.evaluationContext.environment&&(s.headers["X-Environment-Key"]=i.evaluationContext.environment.apiKey),e&&"GET"!==e&&(s.headers["Content-Type"]="application/json; charset=utf-8"),(null===(a=i.applicationMetadata)||void 0===a?void 0:a.name)&&(s.headers["Flagsmith-Application-Name"]=i.applicationMetadata.name),(null===(o=i.applicationMetadata)||void 0===o?void 0:o.version)&&(s.headers["Flagsmith-Application-Version"]=i.applicationMetadata.version),s.headers["Flagsmith-SDK-User-Agent"]="flagsmith-js-sdk/".concat("11.0.0"),l&&Object.assign(s.headers,l),v||console.error("Flagsmith: fetch is undefined, please specify a fetch implementation into flagsmith.init to support SSR.");var u="".concat(null===(r=i.evaluationContext.identity)||void 0===r?void 0:r.identifier);return v(t,s).then((function(n){var a,o,r="".concat(null===(a=i.evaluationContext.identity)||void 0===a?void 0:a.identifier);if(u===r){var l=null===(o=n.headers)||void 0===o?void 0:o.get("x-flagsmith-document-updated-at");if(l)try{var s=parseFloat(l);if(isNaN(s))return Promise.reject("Failed to parse x-flagsmith-document-updated-at");i.timestamp=s}catch(t){i.log(t,"Failed to parse x-flagsmith-document-updated-at",l)}return i.log("Fetch response: "+n.status+" "+(e||"GET")+0+t),n.text().then((function(t){var e=t;try{e=JSON.parse(t)}catch(t){}return!e&&n.status&&(e="API Response: ".concat(n.status)),n.status&&n.status>=200&&n.status<300?e:Promise.reject(new Error(e))}))}i.log("Received response with identity mismatch, ignoring response. Requested: ".concat(u,", Current: ").concat(r))}))},this.evaluateFlag=function(t,e){if(i.datadogRum&&(i.datadogRum.client.addFeatureFlagEvaluation?"VALUE"===e?i.datadogRum.client.addFeatureFlagEvaluation(m+t,i.getValue(t,{},!0)):i.datadogRum.client.addFeatureFlagEvaluation(S+t,i.hasFeature(t,!0)):console.error("Flagsmith: Your datadog RUM client does not support the function addFeatureFlagEvaluation, please update it.")),i.enableAnalytics){if(!i.evaluationEvent||!i.evaluationContext.environment)return;i.evaluationEvent[i.evaluationContext.environment.apiKey]||(i.evaluationEvent[i.evaluationContext.environment.apiKey]={}),void 0===i.evaluationEvent[i.evaluationContext.environment.apiKey][t]&&(i.evaluationEvent[i.evaluationContext.environment.apiKey][t]=0),i.evaluationEvent[i.evaluationContext.environment.apiKey][t]+=1}i.updateEventStorage()},this._onChange=function(t,e,n){var a,o;i.setLoadingState(n),null===(a=i.onChange)||void 0===a||a.call(i,t,e,i.loadingState),null===(o=i._trigger)||void 0===o||o.call(i)},v=n.fetch?n.fetch:"undefined"!=typeof fetch?fetch:null===global||void 0===global?void 0:global.fetch,this.canUseStorage="undefined"!=typeof window||!!n.browserlessStorage,this.applicationMetadata=n.applicationMetadata,this.log("Constructing flagsmith instance "+n),n.eventSource&&(g=n.eventSource),n.AsyncStorage&&(h=n.AsyncStorage)}return d.prototype.init=function(a){var o,l,s,u;return n(this,void 0,void 0,(function(){var d,g,f,m,S,C,b,F,x,E,O,_,w,j,A,L,I,k,T,N,P,K,R,D,U,J,G,M,V,H,B,W,q,Y,X,z=this;return i(this,(function(Q){switch(Q.label){case 0:d=c(a.evaluationContext||this.evaluationContext),Q.label=1;case 1:if(Q.trys.push([1,13,,14]),g=a.AsyncStorage,f=a._trigger,m=a._triggerLoadingState,S=a.angularHttpClient,C=a.api,b=void 0===C?y:C,F=a.applicationMetadata,x=a.cacheFlags,E=a.cacheOptions,O=a.datadogRum,_=a.defaultFlags,w=a.enableAnalytics,j=a.enableDynatrace,A=a.enableLogs,L=a.environmentID,I=a.eventSourceUrl,k=void 0===I?"https://realtime.flagsmith.com/":I,T=a.fetch,N=a.headers,P=a.identity,K=a.onChange,R=a.onError,D=a.preventFetch,U=a.realtime,J=a.sentryClient,G=a.state,M=a.traits,d.environment=L?{apiKey:L}:d.environment,!d.environment||!d.environment.apiKey)throw new Error("Please provide `evaluationContext.environment` with non-empty `apiKey`");if(d.identity=P||M?{identifier:P,traits:M?Object.fromEntries(Object.entries(M).map((function(t){return[t[0],{value:t[1]}]}))):{}}:d.identity,this.evaluationContext=d,this.api=(Z=b).endsWith("/")?Z:Z+"/",this.headers=N,this.getFlagInterval=null,this.analyticsInterval=null,this.onChange=K,V="Wrong Flagsmith Configuration: preventFetch is true and no defaulFlags provided",this._trigger=f||this._trigger,this._triggerLoadingState=m||this._triggerLoadingState,this.onError=function(t){z.setLoadingState(e(e({},z.loadingState),{isFetching:!1,isLoading:!1,error:t})),null==R||R(t)},this.enableLogs=A||!1,this.cacheOptions=E?{skipAPI:!!E.skipAPI,ttl:E.ttl||0,storageKey:E.storageKey,loadStale:!!E.loadStale}:this.cacheOptions,!this.cacheOptions.ttl&&this.cacheOptions.skipAPI&&console.warn("Flagsmith: you have set a cache ttl of 0 and are skipping API calls, this means the API will not be hit unless you clear local storage."),T&&(v=T),this.enableAnalytics=w||!1,this.flags=Object.assign({},_)||{},this.datadogRum=O||null,this.initialised=!0,this.ticks=1e4,this.timer=this.enableLogs?(new Date).valueOf():null,this.cacheFlags=void 0!==h&&!!x,this.applicationMetadata=F,p="FLAGSMITH_EVENT_"+d.environment.apiKey,g&&(h=g),U&&"undefined"!=typeof window&&this.setupRealtime(k,d.environment.apiKey),Object.keys(this.flags).length&&(this.loadingState=e(e({},this.loadingState),{isLoading:!1,source:t.FlagSource.DEFAULT_FLAGS})),this.setState(G),this.log("Initialising with properties",a,this),j&&("undefined"==typeof dtrum?console.error("You have attempted to enable dynatrace but dtrum is undefined, please check you have the Dynatrace RUM JavaScript API installed."):this.dtrum=dtrum),J&&(this.sentryClient=J),S&&(v=function(t){return function(e,n){var i=n.headers,a=n.method,o=n.body,r={headers:i,observe:"response",responseType:"text"},l=function(t,e){var n=t.status,i=t.headers,a=t.body,o=t.error,r=t.message;return{status:null!=n?n:e?200:500,ok:e,headers:{get:function(t){var e,n;return null!==(n=null===(e=null==i?void 0:i.get)||void 0===e?void 0:e.call(i,t))&&void 0!==n?n:null}},text:function(){var t,e,n=null!==(e=null!==(t=null!=a?a:o)&&void 0!==t?t:r)&&void 0!==e?e:"";return Promise.resolve("string"!=typeof n?JSON.stringify(n):n)}}};return new Promise((function(n){var i=function(t){return n(l(t,!t.status||t.status>=200&&t.status<300))},s=function(t){return n(l(t,!1))};switch(a){case"GET":return t.get(e,r).subscribe(i,s);case"POST":case"PUT":return t.post(e,null!=o?o:"",r).subscribe(i,s);default:return s({status:405,message:"Unsupported method: ".concat(a)})}}))}}(S)),h&&this.canUseStorage&&h.getItem(p).then((function(t){try{z.evaluationEvent=JSON.parse(t)||{}}catch(t){z.evaluationEvent={}}z.analyticsInterval=setInterval(z.analyticsFlags,z.ticks)})),this.enableAnalytics&&(this.analyticsInterval&&clearInterval(this.analyticsInterval),h&&this.canUseStorage&&h.getItem(p,(function(t,n){if(n&&z.evaluationContext.environment){var i=JSON.parse(n);if(i[z.evaluationContext.environment.apiKey]){var a=z.getState();z.log("Retrieved events from cache",n),z.setState(e(e({},a),{evaluationEvent:i[z.evaluationContext.environment.apiKey]}))}}}))),!x)return[3,9];if(!h||!this.canUseStorage)return[3,8];H=function(a,o){return n(z,void 0,void 0,(function(){var n,a,l,s,u,d,v,g,h,f,p,y,m,S,C,b,F,x,E,O=this;return i(this,(function(i){switch(i.label){case 0:if(!o)return[3,7];n=null,a=null,i.label=1;case 1:return i.trys.push([1,5,,6]),l=JSON.parse(o),s=!1,u=!1,l&&l.api===this.api&&(null===(f=null===(h=l.evaluationContext)||void 0===h?void 0:h.environment)||void 0===f?void 0:f.apiKey)===(null===(p=this.evaluationContext.environment)||void 0===p?void 0:p.apiKey)&&(d=!0,this.evaluationContext.identity&&(null===(m=null===(y=l.evaluationContext)||void 0===y?void 0:y.identity)||void 0===m?void 0:m.identifier)!==this.evaluationContext.identity.identifier&&(this.log("Ignoring cache, identity has changed from "+(null===(C=null===(S=l.evaluationContext)||void 0===S?void 0:S.identity)||void 0===C?void 0:C.identifier)+" to "+this.evaluationContext.identity.identifier),d=!1),this.cacheOptions.ttl&&(!l.ts||(new Date).valueOf()-l.ts>this.cacheOptions.ttl)&&(l.ts&&!this.cacheOptions.loadStale?(this.log("Ignoring cache, timestamp is too old ts:"+l.ts+" ttl: "+this.cacheOptions.ttl+" time elapsed since cache: "+((new Date).valueOf()-l.ts)+"ms"),d=!1):l.ts&&this.cacheOptions.loadStale&&(this.log("Loading stale cache, timestamp ts:"+l.ts+" ttl: "+this.cacheOptions.ttl+" time elapsed since cache: "+((new Date).valueOf()-l.ts)+"ms"),u=!0,d=!0)),d&&(s=!0,n=r(this.flags,l.flags),this.setState(e(e({},l),{evaluationContext:c(e(e({},l.evaluationContext),{identity:(null===(b=l.evaluationContext)||void 0===b?void 0:b.identity)?e(e({},null===(F=l.evaluationContext)||void 0===F?void 0:F.identity),{traits:e({},M||{})}):void 0}))})),this.log("Retrieved flags from cache",l))),s?(v=!D&&(!this.cacheOptions.skipAPI||u),this._onChange(null,{isFromServer:!1,flagsChanged:n,traitsChanged:a},this._loadedState(null,t.FlagSource.CACHE,v)),this.oldFlags=this.flags,this.cacheOptions.skipAPI&&s&&!u&&this.log("Skipping API, using cache"),v&&this.getFlags().catch((function(t){var e;null===(e=O.onError)||void 0===e||e.call(O,t)})),[3,4]):[3,2];case 2:return D?[3,4]:[4,this.getFlags()];case 3:i.sent(),i.label=4;case 4:return[3,6];case 5:throw g=i.sent(),this.log("Exception fetching cached logs",g),g;case 6:return[3,10];case 7:return D?[3,9]:[4,this.getFlags()];case 8:return i.sent(),[3,10];case 9:if(_)this._onChange(null,{isFromServer:!1,flagsChanged:r({},this.flags),traitsChanged:r({},null===(x=this.evaluationContext.identity)||void 0===x?void 0:x.traits)},this._loadedState(null,t.FlagSource.DEFAULT_FLAGS));else{if(!this.flags)throw new Error(V);this._onChange(null,{isFromServer:!1,flagsChanged:r({},this.flags),traitsChanged:r({},null===(E=this.evaluationContext.identity)||void 0===E?void 0:E.traits)},this._loadedState(null,t.FlagSource.DEFAULT_FLAGS))}i.label=10;case 10:return[2]}}))}))},Q.label=2;case 2:return Q.trys.push([2,7,,8]),h.getItemSync?(B=h.getItemSync(this.getStorageKey()),[3,5]):[3,3];case 3:return[4,h.getItem(this.getStorageKey())];case 4:B=Q.sent(),Q.label=5;case 5:return[4,H(null,B)];case 6:return Q.sent(),[3,8];case 7:if(W=Q.sent(),!this.flags||0===Object.keys(this.flags).length)throw W;return X=W instanceof Error?W:new Error("".concat(W)),null===(o=this.onError)||void 0===o||o.call(this,X),[3,8];case 8:return[3,12];case 9:return D?[3,11]:[4,this.getFlags()];case 10:return Q.sent(),[3,12];case 11:if(_)this._onChange(null,{isFromServer:!1,flagsChanged:r({},_),traitsChanged:r({},null===(l=d.identity)||void 0===l?void 0:l.traits)},this._loadedState(null,t.FlagSource.DEFAULT_FLAGS));else if(this.flags&&(q=null,0===Object.keys(this.flags).length&&(q=V),this._onChange(null,{isFromServer:!1,flagsChanged:r({},this.flags),traitsChanged:r({},null===(s=d.identity)||void 0===s?void 0:s.traits)},this._loadedState(q,t.FlagSource.DEFAULT_FLAGS)),q))throw new Error(q);Q.label=12;case 12:return[3,14];case 13:throw Y=Q.sent(),this.log("Error during initialisation ",Y),X=Y instanceof Error?Y:new Error("".concat(Y)),null===(u=this.onError)||void 0===u||u.call(this,X),Y;case 14:return[2]}var Z}))}))},d.prototype.getAllFlags=function(){return this.flags},d.prototype.identify=function(t,e,n){return this.identity=t,this.evaluationContext.identity={identifier:t,transient:n,traits:this.evaluationContext.identity&&this.evaluationContext.identity.identifier==t?this.evaluationContext.identity.traits:{}},this.evaluationContext.identity.identifier=t,this.log("Identify: "+this.evaluationContext.identity.identifier),e&&(this.evaluationContext.identity.traits=Object.fromEntries(Object.entries(e).map((function(t){var e=t[0],n=t[1];return[e,s(n)?n:{value:n}]})))),this.initialised?this.getFlags():Promise.resolve()},d.prototype.getState=function(){return{api:this.api,flags:this.flags,ts:this.ts,evaluationContext:this.evaluationContext,identity:this.identity,evaluationEvent:this.evaluationEvent}},d.prototype.setState=function(t){var e,n;t&&(this.initialised=!0,this.api=t.api||this.api||y,this.flags=t.flags||this.flags,this.evaluationContext=t.evaluationContext||this.evaluationContext,this.evaluationEvent=t.evaluationEvent||this.evaluationEvent,this.identity=null===(n=null===(e=this.getContext())||void 0===e?void 0:e.identity)||void 0===n?void 0:n.identifier,this.log("setState called",this))},d.prototype.logout=function(){return this.identity=null,this.evaluationContext.identity=null,this.initialised?this.getFlags():Promise.resolve()},d.prototype.startListening=function(t){void 0===t&&(t=1e3),this.getFlagInterval&&clearInterval(this.getFlagInterval),this.getFlagInterval=setInterval(this.getFlags,t)},d.prototype.stopListening=function(){this.getFlagInterval&&(clearInterval(this.getFlagInterval),this.getFlagInterval=null)},d.prototype._loadedState=function(t,e,n){return void 0===t&&(t=null),void 0===n&&(n=!1),{error:t,isFetching:n,isLoading:!1,source:e}},d.prototype.log=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];this.enableLogs&&console.log.apply(this,a(["FLAGSMITH:",(new Date).valueOf()-(this.timer||0),"ms"],t,!0))},d.prototype.updateStorage=function(){if(this.cacheFlags){this.ts=(new Date).valueOf();var t=JSON.stringify(this.getState());this.log("Setting storage",t),h.setItem(this.getStorageKey(),t)}},d.prototype.updateEventStorage=function(){if(this.enableAnalytics){var t=JSON.stringify(this.getState().evaluationEvent);h.setItem(p,t).catch((function(t){return console.error("Flagsmith: Error setting item in async storage",t)}))}},d.prototype.setLoadingState=function(t){var n;o(t,this.loadingState)||(this.loadingState=e({},t),this.log("Loading state changed",t),null===(n=this._triggerLoadingState)||void 0===n||n.call(this))},d.prototype.setupRealtime=function(t,e){var n=this,i=t+"sse/environments/"+e+"/stream";g?this.eventSource||(this.log("Creating event source with url "+i),this.eventSource=new g(i),this.eventSource.addEventListener("environment_updated",(function(t){var e;try{e=JSON.parse(t.data).updated_at}catch(t){n.log("Could not parse sse event",t)}e?!n.timestamp||e>n.timestamp?n.isLoading?n.log("updated_at is new, but flags are loading",t.data,n.timestamp):(n.log("updated_at is new, fetching flags",t.data,n.timestamp),n.getFlags()):n.log("updated_at is outdated, skipping get flags",t.data,n.timestamp):n.log("No updated_at received, fetching flags",t)}))):this.log("Error, EventSource is undefined")},d}();function F(t){var e=t.fetch,n=t.AsyncStorage,i=t.eventSource;return new b({fetch:e,AsyncStorage:n,eventSource:i})}var x=F({});t.createFlagsmithInstance=function(){return F({})},t.default=x,Object.defineProperty(t,"__esModule",{value:!0})}));
|
|
2
2
|
//# sourceMappingURL=next-middleware.js.map
|
package/next-middleware.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"next-middleware.js","sources":["../../node_modules/tslib/tslib.es6.js","../../node_modules/fast-deep-equal/index.js","./src/utils/get-changes.ts","./src/utils/set-dynatrace-value.ts","./src/utils/types.ts","./src/utils/ensureTrailingSlash.ts","./src/utils/version.ts","./src/flagsmith-core.ts","./src/utils/angular-fetch.ts","./src/next-middleware.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","'use strict';\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nmodule.exports = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n",null,null,null,null,null,null,null,null],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","__generator","body","f","y","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","v","op","TypeError","pop","push","__spreadArray","to","from","pack","ar","l","Array","slice","concat","fastDeepEqual","equal","a","b","constructor","keys","isArray","RegExp","source","flags","valueOf","toString","key","getChanges","before","after","changedValues","filter","flagKey","beforeValue","afterValue","deepEqual","includes","setDynatraceValue","obj","trait","convertToString","isTraitEvaluationContext","undefined","toTraitEvaluationContextObject","traits","fromEntries","entries","map","_a","tKey","tValue","toEvaluationContext","clientEvaluationContext","identity","ensureTrailingSlash","str","endsWith","FlagSource","_fetch","SDK_VERSION","exports","eventSource","AsyncStorage","DEFAULT_FLAGSMITH_EVENT","FlagsmithEvent","defaultAPI","FLAGSMITH_CONFIG_ANALYTICS_KEY","FLAGSMITH_FLAG_ANALYTICS_KEY","FLAGSMITH_TRAIT_ANALYTICS_KEY","Flagsmith","class_1","props","_this","_trigger","_triggerLoadingState","timestamp","isLoading","getFlags","api","evaluationContext","log","loadingState","isFetching","setLoadingState","previousIdentity","getContext","handleResponse","response","features","identifier","userTraits","forEach","feature","name","toLowerCase","replace","id","enabled","feature_state_value","trait_key","transient","trait_value","oldFlags","flagsChanged","traitsChanged","updateStorage","_onChange","isFromServer","_loadedState","SERVER","datadogRum","trackTraits","traits_1","_b","getTrait","datadogRumData","client","getUser","_c","setUser","console","error","dtrum","traits_2","javaDouble","date","shortString","javaLongOrObject","getValue","skipAnalytics","hasFeature","_d","sendSessionProperties","all","getJSON","JSON","stringify","tContext","encodeURIComponent","res","message","Error","analyticsFlags","evaluationEvent","environment","apiKey","getOwnPropertyNames","state","getState","setState","updateEventStorage","err","flushPipelineAnalytics","isEvaluationEnabled","evaluationAnalyticsUrl","isReadyToFlush","pipelineEvents","isPipelineFlushing","pipelineFlushInterval","environmentKey","eventsToSend","batch","events","environment_key","method","headers","status","trimPipelineBuffer","err_1","NONE","canUseStorage","analyticsInterval","cacheFlags","enableAnalytics","enableLogs","getFlagInterval","initialised","onChange","onError","ticks","timer","sentryClient","withTraits","cacheOptions","ttl","skipAPI","loadStale","storageKey","evaluationAnalyticsMaxBuffer","pipelineAnalyticsInterval","options","flag","evaluateFlag","fallback","json","parse","getAllTraits","setContext","updateContext","setTrait","setTraits","usingNewOptions","getIntegrationByName","addFeatureFlag","getStorageKey","DEFAULT_FLAGSMITH_KEY","url","cache","applicationMetadata","version","requestedIdentity","newIdentity","lastUpdated","get","lastUpdatedFloat","parseFloat","isNaN","text","addFeatureFlagEvaluation","recordPipelineEvent","previousFlags","params","fetch","global","window","browserlessStorage","init","config","_AsyncStorage","angularHttpClient","_e","defaultFlags_1","defaultFlags","enableDynatrace","environmentID","evaluationAnalyticsConfig","_f","eventSourceUrl","fetchImplementation","onError_1","preventFetch_1","preventFetch","realtime","traits_3","WRONG_FLAGSMITH_CONFIG_1","warn","Date","setupRealtime","DEFAULT_FLAGS","observe","responseType","buildResponse","ok","onNext","subscribe","post","angularFetch","getItem","setInterval","clearInterval","state_1","initPipelineAnalytics","stopPipelineAnalytics","onRetrievedStorage","cachePopulated","staleCachePopulated","_g","ts","_h","_j","shouldFetchFlags","CACHE","_m","e_2","_k","_l","getItemSync","e_1","typedError","error_1","getAllFlags","identify","userId","logout","startListening","stopListening","args","_i","setItem","analyticsServerUrl","maxBuffer","flushInterval","unref","excess","event","event_id","event_type","evaluated_at","now","identity_identifier","metadata","location","page_url","href","sdk_version","connectionUrl","addEventListener","updated_at","data","core","flagsmith"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"next-middleware.js","sources":["../../node_modules/tslib/tslib.es6.js","../../node_modules/fast-deep-equal/index.js","./src/utils/get-changes.ts","./src/utils/set-dynatrace-value.ts","./src/utils/types.ts","./src/utils/version.ts","./src/flagsmith-core.ts","./src/utils/ensureTrailingSlash.ts","./src/utils/angular-fetch.ts","./src/next-middleware.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","'use strict';\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nmodule.exports = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n",null,null,null,null,null,null,null,null],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","__generator","body","f","y","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","v","op","TypeError","pop","push","__spreadArray","to","from","pack","ar","l","Array","slice","concat","fastDeepEqual","equal","a","b","constructor","keys","isArray","RegExp","source","flags","valueOf","toString","key","getChanges","before","after","changedValues","filter","flagKey","beforeValue","afterValue","deepEqual","includes","setDynatraceValue","obj","trait","convertToString","isTraitEvaluationContext","undefined","toTraitEvaluationContextObject","traits","fromEntries","entries","map","_a","tKey","tValue","toEvaluationContext","clientEvaluationContext","identity","FlagSource","_fetch","exports","eventSource","AsyncStorage","DEFAULT_FLAGSMITH_EVENT","FlagsmithEvent","defaultAPI","FLAGSMITH_CONFIG_ANALYTICS_KEY","FLAGSMITH_FLAG_ANALYTICS_KEY","FLAGSMITH_TRAIT_ANALYTICS_KEY","Flagsmith","class_1","props","_this","_trigger","_triggerLoadingState","timestamp","isLoading","getFlags","api","evaluationContext","log","loadingState","isFetching","setLoadingState","previousIdentity","getContext","handleResponse","response","features","identifier","userTraits","forEach","feature","name","toLowerCase","replace","id","enabled","feature_state_value","trait_key","transient","trait_value","oldFlags","flagsChanged","traitsChanged","updateStorage","_onChange","isFromServer","_loadedState","SERVER","datadogRum","trackTraits","traits_1","_b","getTrait","datadogRumData","client","getUser","_c","setUser","console","error","dtrum","traits_2","javaDouble","date","shortString","javaLongOrObject","getValue","skipAnalytics","hasFeature","_d","sendSessionProperties","all","getJSON","JSON","stringify","tContext","encodeURIComponent","res","message","Error","analyticsFlags","evaluationEvent","environment","apiKey","getOwnPropertyNames","state","getState","setState","updateEventStorage","err","NONE","canUseStorage","analyticsInterval","cacheFlags","enableAnalytics","enableLogs","getFlagInterval","headers","initialised","onChange","onError","ticks","timer","sentryClient","withTraits","cacheOptions","ttl","skipAPI","loadStale","storageKey","options","flag","evaluateFlag","fallback","json","parse","getAllTraits","setContext","updateContext","setTrait","setTraits","usingNewOptions","getIntegrationByName","addFeatureFlag","getStorageKey","DEFAULT_FLAGSMITH_KEY","url","method","cache","applicationMetadata","version","requestedIdentity","newIdentity","lastUpdated","get","lastUpdatedFloat","parseFloat","isNaN","status","text","addFeatureFlagEvaluation","previousFlags","params","fetch","global","window","browserlessStorage","init","config","_AsyncStorage","angularHttpClient","_e","defaultFlags_1","defaultFlags","enableDynatrace","environmentID","_f","eventSourceUrl","fetchImplementation","onError_1","preventFetch_1","preventFetch","realtime","traits_3","str","endsWith","WRONG_FLAGSMITH_CONFIG_1","warn","Date","setupRealtime","DEFAULT_FLAGS","observe","responseType","buildResponse","ok","onNext","subscribe","post","angularFetch","getItem","setInterval","clearInterval","state_1","onRetrievedStorage","cachePopulated","staleCachePopulated","_g","ts","_h","_j","shouldFetchFlags","CACHE","_m","e_2","_k","_l","getItemSync","e_1","typedError","error_1","getAllFlags","identify","userId","logout","startListening","stopListening","args","_i","setItem","events","connectionUrl","addEventListener","updated_at","data","core","flagsmith"],"mappings":"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"}
|
package/next-middleware.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var t=function(){return t=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var a in e=arguments[i])Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t},t.apply(this,arguments)};function e(t,e,i,n){return new(i||(i=Promise))((function(a,o){function l(t){try{r(n.next(t))}catch(t){o(t)}}function s(t){try{r(n.throw(t))}catch(t){o(t)}}function r(t){var e;t.done?a(t.value):(e=t.value,e instanceof i?e:new i((function(t){t(e)}))).then(l,s)}r((n=n.apply(t,e||[])).next())}))}function i(t,e){var i,n,a,o,l={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(i)throw new TypeError("Generator is already executing.");for(;l;)try{if(i=1,n&&(a=2&o[0]?n.return:o[0]?n.throw||((a=n.return)&&a.call(n),0):n.next)&&!(a=a.call(n,o[1])).done)return a;switch(n=0,a&&(o=[2&o[0],a.value]),o[0]){case 0:case 1:a=o;break;case 4:return l.label++,{value:o[1],done:!1};case 5:l.label++,n=o[1],o=[0];continue;case 7:o=l.ops.pop(),l.trys.pop();continue;default:if(!(a=l.trys,(a=a.length>0&&a[a.length-1])||6!==o[0]&&2!==o[0])){l=0;continue}if(3===o[0]&&(!a||o[1]>a[0]&&o[1]<a[3])){l.label=o[1];break}if(6===o[0]&&l.label<a[1]){l.label=a[1],a=o;break}if(a&&l.label<a[2]){l.label=a[2],l.ops.push(o);break}a[2]&&l.ops.pop(),l.trys.pop();continue}o=e.call(t,l)}catch(t){o=[6,t],n=0}finally{i=a=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}}function n(t,e,i){if(i||2===arguments.length)for(var n,a=0,o=e.length;a<o;a++)!n&&a in e||(n||(n=Array.prototype.slice.call(e,0,a)),n[a]=e[a]);return t.concat(n||Array.prototype.slice.call(e))}var a=function t(e,i){if(e===i)return!0;if(e&&i&&"object"==typeof e&&"object"==typeof i){if(e.constructor!==i.constructor)return!1;var n,a,o;if(Array.isArray(e)){if((n=e.length)!=i.length)return!1;for(a=n;0!=a--;)if(!t(e[a],i[a]))return!1;return!0}if(e.constructor===RegExp)return e.source===i.source&&e.flags===i.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===i.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===i.toString();if((n=(o=Object.keys(e)).length)!==Object.keys(i).length)return!1;for(a=n;0!=a--;)if(!Object.prototype.hasOwnProperty.call(i,o[a]))return!1;for(a=n;0!=a--;){var l=o[a];if(!t(e[l],i[l]))return!1}return!0}return e!=e&&i!=i};function o(t,e){var i=Object.keys(e||{}).filter((function(i){var n=null==t?void 0:t[i],o=null==e?void 0:e[i];return!a(n,o)}));return Object.keys(t||{}).filter((function(t){Object.keys(e||{}).includes(t)||i.push(t)})),Object.keys(i).length?i:null}function l(t,e,i){var n="shortString",a=!0;"number"==typeof i&&(n="javaDouble",a=!1),t[n]=t[n]||{},t[n][e]=a?i+"":i}function s(t){return!!t&&"object"==typeof t&&void 0!==t.value}function r(t){return Object.fromEntries(Object.entries(t).map((function(t){var e=t[0],i=t[1];return[e,s(i)?i:{value:i}]})))}function u(e){return t(t({},e),{identity:e.identity?t(t({},e.identity),{traits:r(e.identity.traits||{})}):void 0})}function c(t){return t.endsWith("/")?t:t+"/"}var v,h;!function(t){t.NONE="NONE",t.DEFAULT_FLAGS="DEFAULT_FLAGS",t.CACHE="CACHE",t.SERVER="SERVER"}(v||(v={}));var d,g=null,f="FLAGSMITH_EVENT",p="https://edge.api.flagsmith.com/api/v1/",y=function(){function y(n){var a=this;this._trigger=null,this._triggerLoadingState=null,this.timestamp=null,this.isLoading=!1,this.eventSource=null,this.getFlags=function(){var e=a,i=e.api,n=e.evaluationContext;a.log("Get Flags"),a.isLoading=!0,a.loadingState.isFetching||a.setLoadingState(t(t({},a.loadingState),{isFetching:!0}));var s="".concat(a.getContext().identity),r=function(e){var i,n,r,u;if(e&&s==="".concat(a.getContext().identity)){var c=e.flags,h=e.traits,d=e.identifier;a.isLoading=!1;var g={},f={};h=h||[],(c=c||[]).forEach((function(t){g[t.feature.name.toLowerCase().replace(/ /g,"_")]={id:t.feature.id,enabled:t.enabled,value:t.feature_state_value}})),h.forEach((function(t){f[t.trait_key.toLowerCase().replace(/ /g,"_")]={transient:t.transient,value:t.trait_value}})),a.oldFlags=t({},a.flags);var p=o(a.oldFlags,g),y=o(null===(i=a.evaluationContext.identity)||void 0===i?void 0:i.traits,f);if((d||Object.keys(f).length)&&(a.evaluationContext.identity=t(t({},a.evaluationContext.identity),{traits:f}),d&&(a.evaluationContext.identity.identifier=d,a.identity=d)),a.flags=g,a.updateStorage(),a._onChange(a.oldFlags,{isFromServer:!0,flagsChanged:p,traitsChanged:y},a._loadedState(null,v.SERVER)),a.datadogRum)try{if(a.datadogRum.trackTraits){var m={};Object.keys((null===(n=a.evaluationContext.identity)||void 0===n?void 0:n.traits)||{}).map((function(t){m["flagsmith_trait_"+t]=a.getTrait(t)}));var C=t(t(t({},a.datadogRum.client.getUser()),{id:a.datadogRum.client.getUser().id||(null===(r=a.evaluationContext.identity)||void 0===r?void 0:r.identifier)}),m);a.log("Setting Datadog user",C),a.datadogRum.client.setUser(C)}}catch(t){console.error(t)}if(a.dtrum)try{var S={javaDouble:{},date:{},shortString:{},javaLongOrObject:{}};Object.keys(a.flags).map((function(t){l(S,"flagsmith_value_"+t,a.getValue(t,{skipAnalytics:!0})),l(S,"flagsmith_enabled_"+t,a.hasFeature(t,{skipAnalytics:!0}))})),Object.keys((null===(u=a.evaluationContext.identity)||void 0===u?void 0:u.traits)||{}).map((function(t){l(S,"flagsmith_trait_"+t,a.getTrait(t))})),a.log("Sending javaLongOrObject traits to dynatrace",S.javaLongOrObject),a.log("Sending date traits to dynatrace",S.date),a.log("Sending shortString traits to dynatrace",S.shortString),a.log("Sending javaDouble to dynatrace",S.javaDouble),a.dtrum.sendSessionProperties(S.javaLongOrObject,S.date,S.shortString,S.javaDouble)}catch(t){console.error(t)}}};return n.identity?Promise.all([n.identity.traits&&Object.keys(n.identity.traits).length||!n.identity.identifier?a.getJSON(i+"identities/","POST",JSON.stringify({identifier:n.identity.identifier,transient:n.identity.transient,traits:Object.entries(n.identity.traits).map((function(t){var e=t[0],i=t[1];return{trait_key:e,trait_value:null==i?void 0:i.value,transient:null==i?void 0:i.transient}})).filter((function(t){return void 0!==t.trait_value||(a.log("Warning - attempted to set an undefined trait value for key",t.trait_key),!1)}))})):a.getJSON(i+"identities/?identifier="+encodeURIComponent(n.identity.identifier)+(n.identity.transient?"&transient=true":""))]).then((function(e){return a.evaluationContext.identity=t(t({},a.evaluationContext.identity),{traits:{}}),r(null==e?void 0:e[0])})).catch((function(t){var e=t.message,i=new Error(e);return Promise.reject(i)})):a.getJSON(i+"flags/").then((function(t){return r({flags:t,traits:void 0})}))},this.analyticsFlags=function(){var e=a.api;if(a.evaluationEvent&&a.evaluationContext.environment&&a.evaluationEvent[a.evaluationContext.environment.apiKey])return a.evaluationEvent&&0!==Object.getOwnPropertyNames(a.evaluationEvent).length&&0!==Object.getOwnPropertyNames(a.evaluationEvent[a.evaluationContext.environment.apiKey]).length?a.getJSON(e+"analytics/flags/","POST",JSON.stringify(a.evaluationEvent[a.evaluationContext.environment.apiKey])).then((function(e){if(a.evaluationContext.environment){var i=a.getState();a.evaluationEvent||(a.evaluationEvent={}),a.evaluationEvent[a.evaluationContext.environment.apiKey]={},a.setState(t(t({},i),{evaluationEvent:a.evaluationEvent})),a.updateEventStorage()}})).catch((function(t){a.log("Exception fetching evaluationEvent",t)})):void 0},this.flushPipelineAnalytics=function(){return e(a,void 0,void 0,(function(){var e,n,a,o,l,s,r;return i(this,(function(i){switch(i.label){case 0:if(e=this.evaluationAnalyticsUrl&&this.evaluationContext.environment,n=this.pipelineEvents.length>0&&(!this.isPipelineFlushing||0===this.pipelineFlushInterval),!e||!n)return[2];a=this.evaluationContext.environment.apiKey,this.isPipelineFlushing=!0,o=this.pipelineEvents,this.pipelineEvents=[],l={events:o,environment_key:a},i.label=1;case 1:return i.trys.push([1,3,4,5]),[4,h(this.evaluationAnalyticsUrl+"v1/analytics/batch",{method:"POST",body:JSON.stringify(l),headers:t({"Content-Type":"application/json; charset=utf-8","X-Environment-Key":a},{"Flagsmith-SDK-User-Agent":"flagsmith-js-sdk/".concat("11.0.0-internal.1")})})];case 2:if(!(s=i.sent()).status||s.status<200||s.status>=300)throw new Error("Pipeline analytics: unexpected status ".concat(s.status));return this.log("Pipeline analytics: flush successful"),[3,5];case 3:return r=i.sent(),this.pipelineEvents=o.concat(this.pipelineEvents),this.trimPipelineBuffer(),this.log("Pipeline analytics: flush failed, events re-queued",r),[3,5];case 4:return this.isPipelineFlushing=!1,[7];case 5:return[2]}}))}))},this.datadogRum=null,this.loadingState={isLoading:!0,isFetching:!0,error:null,source:v.NONE},this.canUseStorage=!1,this.analyticsInterval=null,this.api=null,this.cacheFlags=!1,this.enableAnalytics=!1,this.enableLogs=!1,this.evaluationContext={},this.evaluationEvent=null,this.flags=null,this.getFlagInterval=null,this.headers=null,this.identity=null,this.initialised=!1,this.oldFlags=null,this.onChange=null,this.onError=null,this.ticks=null,this.timer=null,this.dtrum=null,this.sentryClient=null,this.withTraits=null,this.cacheOptions={ttl:0,skipAPI:!1,loadStale:!1,storageKey:void 0},this.evaluationAnalyticsUrl=null,this.evaluationAnalyticsMaxBuffer=1e3,this.pipelineEvents=[],this.pipelineAnalyticsInterval=null,this.isPipelineFlushing=!1,this.getValue=function(t,e,i){var n=a.flags&&a.flags[t.toLowerCase().replace(/ /g,"_")],o=null;if(n&&(o=n.value),(null==e?void 0:e.skipAnalytics)||i||a.evaluateFlag(t,"VALUE"),null===o&&void 0!==(null==e?void 0:e.fallback))return e.fallback;if(null==e?void 0:e.json)try{return null===o?(a.log("Tried to parse null flag as JSON: "+t),null):JSON.parse(o)}catch(t){return e.fallback}return o},this.getTrait=function(t){var e,i;return(null===(e=a.evaluationContext.identity)||void 0===e?void 0:e.traits)&&(null===(i=a.evaluationContext.identity.traits[t.toLowerCase().replace(/ /g,"_")])||void 0===i?void 0:i.value)},this.getAllTraits=function(){var t;return Object.fromEntries(Object.entries((null===(t=a.evaluationContext.identity)||void 0===t?void 0:t.traits)||{}).map((function(t){var e=t[0],i=t[1];return[e,null==i?void 0:i.value]})))},this.setContext=function(e){var i,n,o=u(e);return a.evaluationContext=t(t({},o),{environment:o.environment||a.evaluationContext.environment}),a.identity=null===(n=null===(i=a.getContext())||void 0===i?void 0:i.identity)||void 0===n?void 0:n.identifier,a.initialised?a.getFlags():Promise.resolve()},this.getContext=function(){return a.evaluationContext},this.updateContext=function(e){return a.setContext(t(t({},a.getContext()),e))},this.setTrait=function(e,i){var n;if(a.api)return a.setContext(t(t({},a.evaluationContext),{identity:t(t({},a.evaluationContext.identity),{traits:t(t({},null===(n=a.evaluationContext.identity)||void 0===n?void 0:n.traits),r(Object.fromEntries([[e,i]])))})}))},this.setTraits=function(e){var i;if(a.api)return a.setContext(t(t({},a.evaluationContext),{identity:t(t({},a.evaluationContext.identity),{traits:t(t({},null===(i=a.evaluationContext.identity)||void 0===i?void 0:i.traits),Object.fromEntries(Object.entries(e).map((function(t){var e=t[0],i=t[1];return[e,s(i)?i:{value:i}]}))))})}));console.error("Attempted to "+"setTraits"+" a user before calling flagsmith.init. Call flagsmith.init first, if you wish to prevent it sending a request for flags, call init with preventFetch:true.")},this.hasFeature=function(t,e){var i,n,o="object"==typeof e,l=a.flags&&a.flags[t.toLowerCase().replace(/ /g,"_")],s=!1;if(!l&&o&&void 0!==e.fallback?s=null==e?void 0:e.fallback:l&&l.enabled&&(s=!0),(o&&!e.skipAnalytics||!e)&&a.evaluateFlag(t,"ENABLED"),a.sentryClient)try{null===(n=null===(i=a.sentryClient.getIntegrationByName("FeatureFlags"))||void 0===i?void 0:i.addFeatureFlag)||void 0===n||n.call(i,t,s)}catch(t){console.error(t)}return s},this.getStorageKey=function(){var t,e;return(null===(t=a.cacheOptions)||void 0===t?void 0:t.storageKey)||"FLAGSMITH_DB_"+(null===(e=a.evaluationContext.environment)||void 0===e?void 0:e.apiKey)},this.getJSON=function(t,e,i){var n,o,l,s=a.headers,r={method:e||"GET",body:i,cache:"no-cache",headers:{}};a.evaluationContext.environment&&(r.headers["X-Environment-Key"]=a.evaluationContext.environment.apiKey),e&&"GET"!==e&&(r.headers["Content-Type"]="application/json; charset=utf-8"),(null===(n=a.applicationMetadata)||void 0===n?void 0:n.name)&&(r.headers["Flagsmith-Application-Name"]=a.applicationMetadata.name),(null===(o=a.applicationMetadata)||void 0===o?void 0:o.version)&&(r.headers["Flagsmith-Application-Version"]=a.applicationMetadata.version),r.headers["Flagsmith-SDK-User-Agent"]="flagsmith-js-sdk/".concat("11.0.0-internal.1"),s&&Object.assign(r.headers,s),h||console.error("Flagsmith: fetch is undefined, please specify a fetch implementation into flagsmith.init to support SSR.");var u="".concat(null===(l=a.evaluationContext.identity)||void 0===l?void 0:l.identifier);return h(t,r).then((function(i){var n,o,l="".concat(null===(n=a.evaluationContext.identity)||void 0===n?void 0:n.identifier);if(u===l){var s=null===(o=i.headers)||void 0===o?void 0:o.get("x-flagsmith-document-updated-at");if(s)try{var r=parseFloat(s);if(isNaN(r))return Promise.reject("Failed to parse x-flagsmith-document-updated-at");a.timestamp=r}catch(t){a.log(t,"Failed to parse x-flagsmith-document-updated-at",s)}return a.log("Fetch response: "+i.status+" "+(e||"GET")+0+t),i.text().then((function(t){var e=t;try{e=JSON.parse(t)}catch(t){}return!e&&i.status&&(e="API Response: ".concat(i.status)),i.status&&i.status>=200&&i.status<300?e:Promise.reject(new Error(e))}))}a.log("Received response with identity mismatch, ignoring response. Requested: ".concat(u,", Current: ").concat(l))}))},this.evaluateFlag=function(t,e){if(a.datadogRum&&(a.datadogRum.client.addFeatureFlagEvaluation?"VALUE"===e?a.datadogRum.client.addFeatureFlagEvaluation("flagsmith_value_"+t,a.getValue(t,{},!0)):a.datadogRum.client.addFeatureFlagEvaluation("flagsmith_enabled_"+t,a.hasFeature(t,!0)):console.error("Flagsmith: Your datadog RUM client does not support the function addFeatureFlagEvaluation, please update it.")),a.enableAnalytics){if(!a.evaluationEvent||!a.evaluationContext.environment)return;a.evaluationEvent[a.evaluationContext.environment.apiKey]||(a.evaluationEvent[a.evaluationContext.environment.apiKey]={}),void 0===a.evaluationEvent[a.evaluationContext.environment.apiKey][t]&&(a.evaluationEvent[a.evaluationContext.environment.apiKey][t]=0),a.evaluationEvent[a.evaluationContext.environment.apiKey][t]+=1}a.evaluationAnalyticsUrl&&a.recordPipelineEvent(t),a.updateEventStorage()},this.pipelineFlushInterval=1e4,this._onChange=function(t,e,i){var n,o;a.setLoadingState(i),null===(n=a.onChange)||void 0===n||n.call(a,t,e,a.loadingState),null===(o=a._trigger)||void 0===o||o.call(a)},h=n.fetch?n.fetch:"undefined"!=typeof fetch?fetch:null===global||void 0===global?void 0:global.fetch,this.canUseStorage="undefined"!=typeof window||!!n.browserlessStorage,this.applicationMetadata=n.applicationMetadata,this.log("Constructing flagsmith instance "+n),n.eventSource&&(d=n.eventSource),n.AsyncStorage&&(g=n.AsyncStorage)}return y.prototype.init=function(n){var a,l,s,r;return e(this,void 0,void 0,(function(){var d,y,m,C,S,b,E,x,F,O,A,_,w,I,j,L,P,k,T,N,K,U,R,D,J,M,G,B,V,H,q,W,X,Y,z,Q,Z=this;return i(this,(function($){switch($.label){case 0:d=u(n.evaluationContext||this.evaluationContext),$.label=1;case 1:if($.trys.push([1,13,,14]),y=n.AsyncStorage,m=n._trigger,C=n._triggerLoadingState,S=n.angularHttpClient,b=n.api,E=void 0===b?p:b,x=n.applicationMetadata,F=n.cacheFlags,O=n.cacheOptions,A=n.datadogRum,_=n.defaultFlags,w=n.enableAnalytics,I=n.enableDynatrace,j=n.enableLogs,L=n.environmentID,P=n.evaluationAnalyticsConfig,k=n.eventSourceUrl,T=void 0===k?"https://realtime.flagsmith.com/":k,N=n.fetch,K=n.headers,U=n.identity,R=n.onChange,D=n.onError,J=n.preventFetch,M=n.realtime,G=n.sentryClient,B=n.state,V=n.traits,d.environment=L?{apiKey:L}:d.environment,!d.environment||!d.environment.apiKey)throw new Error("Please provide `evaluationContext.environment` with non-empty `apiKey`");if(d.identity=U||V?{identifier:U,traits:V?Object.fromEntries(Object.entries(V).map((function(t){return[t[0],{value:t[1]}]}))):{}}:d.identity,this.evaluationContext=d,this.api=c(E),this.headers=K,this.getFlagInterval=null,this.analyticsInterval=null,this.onChange=R,H="Wrong Flagsmith Configuration: preventFetch is true and no defaulFlags provided",this._trigger=m||this._trigger,this._triggerLoadingState=C||this._triggerLoadingState,this.onError=function(e){Z.setLoadingState(t(t({},Z.loadingState),{isFetching:!1,isLoading:!1,error:e})),null==D||D(e)},this.enableLogs=j||!1,this.cacheOptions=O?{skipAPI:!!O.skipAPI,ttl:O.ttl||0,storageKey:O.storageKey,loadStale:!!O.loadStale}:this.cacheOptions,!this.cacheOptions.ttl&&this.cacheOptions.skipAPI&&console.warn("Flagsmith: you have set a cache ttl of 0 and are skipping API calls, this means the API will not be hit unless you clear local storage."),N&&(h=N),this.enableAnalytics=w||!1,this.flags=Object.assign({},_)||{},this.datadogRum=A||null,this.initialised=!0,this.ticks=1e4,this.timer=this.enableLogs?(new Date).valueOf():null,this.cacheFlags=void 0!==g&&!!F,this.applicationMetadata=x,f="FLAGSMITH_EVENT_"+d.environment.apiKey,y&&(g=y),M&&"undefined"!=typeof window&&this.setupRealtime(T,d.environment.apiKey),Object.keys(this.flags).length&&(this.loadingState=t(t({},this.loadingState),{isLoading:!1,source:v.DEFAULT_FLAGS})),this.setState(B),this.log("Initialising with properties",n,this),I&&("undefined"==typeof dtrum?console.error("You have attempted to enable dynatrace but dtrum is undefined, please check you have the Dynatrace RUM JavaScript API installed."):this.dtrum=dtrum),G&&(this.sentryClient=G),S&&(h=function(t){return function(e,i){var n=i.headers,a=i.method,o=i.body,l={headers:n,observe:"response",responseType:"text"},s=function(t,e){var i=t.status,n=t.headers,a=t.body,o=t.error,l=t.message;return{status:null!=i?i:e?200:500,ok:e,headers:{get:function(t){var e,i;return null!==(i=null===(e=null==n?void 0:n.get)||void 0===e?void 0:e.call(n,t))&&void 0!==i?i:null}},text:function(){var t,e,i=null!==(e=null!==(t=null!=a?a:o)&&void 0!==t?t:l)&&void 0!==e?e:"";return Promise.resolve("string"!=typeof i?JSON.stringify(i):i)}}};return new Promise((function(i){var n=function(t){return i(s(t,!t.status||t.status>=200&&t.status<300))},r=function(t){return i(s(t,!1))};switch(a){case"GET":return t.get(e,l).subscribe(n,r);case"POST":case"PUT":return t.post(e,null!=o?o:"",l).subscribe(n,r);default:return r({status:405,message:"Unsupported method: ".concat(a)})}}))}}(S)),g&&this.canUseStorage&&g.getItem(f).then((function(t){try{Z.evaluationEvent=JSON.parse(t)||{}}catch(t){Z.evaluationEvent={}}Z.analyticsInterval=setInterval(Z.analyticsFlags,Z.ticks)})),this.enableAnalytics&&(this.analyticsInterval&&clearInterval(this.analyticsInterval),g&&this.canUseStorage&&g.getItem(f,(function(e,i){if(i&&Z.evaluationContext.environment){var n=JSON.parse(i);if(n[Z.evaluationContext.environment.apiKey]){var a=Z.getState();Z.log("Retrieved events from cache",i),Z.setState(t(t({},a),{evaluationEvent:n[Z.evaluationContext.environment.apiKey]}))}}}))),P?this.initPipelineAnalytics(P):this.stopPipelineAnalytics(),!F)return[3,9];if(!g||!this.canUseStorage)return[3,8];q=function(n,a){return e(Z,void 0,void 0,(function(){var e,n,l,s,r,c,h,d,g,f,p,y,m,C,S,b,E,x,F,O=this;return i(this,(function(i){switch(i.label){case 0:if(!a)return[3,7];e=null,n=null,i.label=1;case 1:return i.trys.push([1,5,,6]),l=JSON.parse(a),s=!1,r=!1,l&&l.api===this.api&&(null===(f=null===(g=l.evaluationContext)||void 0===g?void 0:g.environment)||void 0===f?void 0:f.apiKey)===(null===(p=this.evaluationContext.environment)||void 0===p?void 0:p.apiKey)&&(c=!0,this.evaluationContext.identity&&(null===(m=null===(y=l.evaluationContext)||void 0===y?void 0:y.identity)||void 0===m?void 0:m.identifier)!==this.evaluationContext.identity.identifier&&(this.log("Ignoring cache, identity has changed from "+(null===(S=null===(C=l.evaluationContext)||void 0===C?void 0:C.identity)||void 0===S?void 0:S.identifier)+" to "+this.evaluationContext.identity.identifier),c=!1),this.cacheOptions.ttl&&(!l.ts||(new Date).valueOf()-l.ts>this.cacheOptions.ttl)&&(l.ts&&!this.cacheOptions.loadStale?(this.log("Ignoring cache, timestamp is too old ts:"+l.ts+" ttl: "+this.cacheOptions.ttl+" time elapsed since cache: "+((new Date).valueOf()-l.ts)+"ms"),c=!1):l.ts&&this.cacheOptions.loadStale&&(this.log("Loading stale cache, timestamp ts:"+l.ts+" ttl: "+this.cacheOptions.ttl+" time elapsed since cache: "+((new Date).valueOf()-l.ts)+"ms"),r=!0,c=!0)),c&&(s=!0,e=o(this.flags,l.flags),this.setState(t(t({},l),{evaluationContext:u(t(t({},l.evaluationContext),{identity:(null===(b=l.evaluationContext)||void 0===b?void 0:b.identity)?t(t({},null===(E=l.evaluationContext)||void 0===E?void 0:E.identity),{traits:t({},V||{})}):void 0}))})),this.log("Retrieved flags from cache",l))),s?(h=!J&&(!this.cacheOptions.skipAPI||r),this._onChange(null,{isFromServer:!1,flagsChanged:e,traitsChanged:n},this._loadedState(null,v.CACHE,h)),this.oldFlags=this.flags,this.cacheOptions.skipAPI&&s&&!r&&this.log("Skipping API, using cache"),h&&this.getFlags().catch((function(t){var e;null===(e=O.onError)||void 0===e||e.call(O,t)})),[3,4]):[3,2];case 2:return J?[3,4]:[4,this.getFlags()];case 3:i.sent(),i.label=4;case 4:return[3,6];case 5:throw d=i.sent(),this.log("Exception fetching cached logs",d),d;case 6:return[3,10];case 7:return J?[3,9]:[4,this.getFlags()];case 8:return i.sent(),[3,10];case 9:if(_)this._onChange(null,{isFromServer:!1,flagsChanged:o({},this.flags),traitsChanged:o({},null===(x=this.evaluationContext.identity)||void 0===x?void 0:x.traits)},this._loadedState(null,v.DEFAULT_FLAGS));else{if(!this.flags)throw new Error(H);this._onChange(null,{isFromServer:!1,flagsChanged:o({},this.flags),traitsChanged:o({},null===(F=this.evaluationContext.identity)||void 0===F?void 0:F.traits)},this._loadedState(null,v.DEFAULT_FLAGS))}i.label=10;case 10:return[2]}}))}))},$.label=2;case 2:return $.trys.push([2,7,,8]),g.getItemSync?(W=g.getItemSync(this.getStorageKey()),[3,5]):[3,3];case 3:return[4,g.getItem(this.getStorageKey())];case 4:W=$.sent(),$.label=5;case 5:return[4,q(null,W)];case 6:return $.sent(),[3,8];case 7:if(X=$.sent(),!this.flags||0===Object.keys(this.flags).length)throw X;return Q=X instanceof Error?X:new Error("".concat(X)),null===(a=this.onError)||void 0===a||a.call(this,Q),[3,8];case 8:return[3,12];case 9:return J?[3,11]:[4,this.getFlags()];case 10:return $.sent(),[3,12];case 11:if(_)this._onChange(null,{isFromServer:!1,flagsChanged:o({},_),traitsChanged:o({},null===(l=d.identity)||void 0===l?void 0:l.traits)},this._loadedState(null,v.DEFAULT_FLAGS));else if(this.flags&&(Y=null,0===Object.keys(this.flags).length&&(Y=H),this._onChange(null,{isFromServer:!1,flagsChanged:o({},this.flags),traitsChanged:o({},null===(s=d.identity)||void 0===s?void 0:s.traits)},this._loadedState(Y,v.DEFAULT_FLAGS)),Y))throw new Error(Y);$.label=12;case 12:return[3,14];case 13:throw z=$.sent(),this.log("Error during initialisation ",z),Q=z instanceof Error?z:new Error("".concat(z)),null===(r=this.onError)||void 0===r||r.call(this,Q),z;case 14:return[2]}}))}))},y.prototype.getAllFlags=function(){return this.flags},y.prototype.identify=function(t,e,i){return this.identity=t,this.evaluationContext.identity={identifier:t,transient:i,traits:this.evaluationContext.identity&&this.evaluationContext.identity.identifier==t?this.evaluationContext.identity.traits:{}},this.evaluationContext.identity.identifier=t,this.log("Identify: "+this.evaluationContext.identity.identifier),e&&(this.evaluationContext.identity.traits=Object.fromEntries(Object.entries(e).map((function(t){var e=t[0],i=t[1];return[e,s(i)?i:{value:i}]})))),this.initialised?this.getFlags():Promise.resolve()},y.prototype.getState=function(){return{api:this.api,flags:this.flags,ts:this.ts,evaluationContext:this.evaluationContext,identity:this.identity,evaluationEvent:this.evaluationEvent}},y.prototype.setState=function(t){var e,i;t&&(this.initialised=!0,this.api=t.api||this.api||p,this.flags=t.flags||this.flags,this.evaluationContext=t.evaluationContext||this.evaluationContext,this.evaluationEvent=t.evaluationEvent||this.evaluationEvent,this.identity=null===(i=null===(e=this.getContext())||void 0===e?void 0:e.identity)||void 0===i?void 0:i.identifier,this.log("setState called",this))},y.prototype.logout=function(){return this.identity=null,this.evaluationContext.identity=null,this.initialised?this.getFlags():Promise.resolve()},y.prototype.startListening=function(t){void 0===t&&(t=1e3),this.getFlagInterval&&clearInterval(this.getFlagInterval),this.getFlagInterval=setInterval(this.getFlags,t)},y.prototype.stopListening=function(){this.getFlagInterval&&(clearInterval(this.getFlagInterval),this.getFlagInterval=null)},y.prototype._loadedState=function(t,e,i){return void 0===t&&(t=null),void 0===i&&(i=!1),{error:t,isFetching:i,isLoading:!1,source:e}},y.prototype.log=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];this.enableLogs&&console.log.apply(this,n(["FLAGSMITH:",(new Date).valueOf()-(this.timer||0),"ms"],t,!0))},y.prototype.updateStorage=function(){if(this.cacheFlags){this.ts=(new Date).valueOf();var t=JSON.stringify(this.getState());this.log("Setting storage",t),g.setItem(this.getStorageKey(),t)}},y.prototype.updateEventStorage=function(){if(this.enableAnalytics){var t=JSON.stringify(this.getState().evaluationEvent);g.setItem(f,t).catch((function(t){return console.error("Flagsmith: Error setting item in async storage",t)}))}},y.prototype.initPipelineAnalytics=function(t){var e,i,n,a;this.stopPipelineAnalytics(),this.evaluationAnalyticsUrl=c(t.analyticsServerUrl),this.evaluationAnalyticsMaxBuffer=null!==(e=t.maxBuffer)&&void 0!==e?e:1e3,this.pipelineFlushInterval=null!==(i=t.flushInterval)&&void 0!==i?i:1e4,this.pipelineEvents=[],this.pipelineFlushInterval>0&&(this.pipelineAnalyticsInterval=setInterval(this.flushPipelineAnalytics,this.pipelineFlushInterval),null===(a=null===(n=this.pipelineAnalyticsInterval)||void 0===n?void 0:n.unref)||void 0===a||a.call(n))},y.prototype.stopPipelineAnalytics=function(){this.pipelineAnalyticsInterval&&(clearInterval(this.pipelineAnalyticsInterval),this.pipelineAnalyticsInterval=null),this.evaluationAnalyticsUrl=null,this.pipelineEvents=[]},y.prototype.trimPipelineBuffer=function(){if(this.pipelineEvents.length>this.evaluationAnalyticsMaxBuffer){var t=this.pipelineEvents.length-this.evaluationAnalyticsMaxBuffer;this.pipelineEvents=this.pipelineEvents.slice(t)}},y.prototype.recordPipelineEvent=function(e){var i,n,a,o=e.toLowerCase().replace(/ /g,"_"),l=this.flags&&this.flags[o],s={event_id:o,event_type:"flag_evaluation",evaluated_at:Date.now(),identity_identifier:null!==(n=null===(i=this.evaluationContext.identity)||void 0===i?void 0:i.identifier)&&void 0!==n?n:null,enabled:l?l.enabled:null,value:l?l.value:null,traits:(null===(a=this.evaluationContext.identity)||void 0===a?void 0:a.traits)?t({},this.evaluationContext.identity.traits):null,metadata:t(t(t({},l?{id:l.id}:{}),"undefined"!=typeof window&&window.location?{page_url:window.location.href}:{}),{sdk_version:"11.0.0-internal.1"})};this.pipelineEvents.push(s),this.trimPipelineBuffer(),0===this.pipelineFlushInterval&&this.flushPipelineAnalytics()},y.prototype.setLoadingState=function(e){var i;a(e,this.loadingState)||(this.loadingState=t({},e),this.log("Loading state changed",e),null===(i=this._triggerLoadingState)||void 0===i||i.call(this))},y.prototype.setupRealtime=function(t,e){var i=this,n=t+"sse/environments/"+e+"/stream";d?this.eventSource||(this.log("Creating event source with url "+n),this.eventSource=new d(n),this.eventSource.addEventListener("environment_updated",(function(t){var e;try{e=JSON.parse(t.data).updated_at}catch(t){i.log("Could not parse sse event",t)}e?!i.timestamp||e>i.timestamp?i.isLoading?i.log("updated_at is new, but flags are loading",t.data,i.timestamp):(i.log("updated_at is new, fetching flags",t.data,i.timestamp),i.getFlags()):i.log("updated_at is outdated, skipping get flags",t.data,i.timestamp):i.log("No updated_at received, fetching flags",t)}))):this.log("Error, EventSource is undefined")},y}();function m(t){var e=t.fetch,i=t.AsyncStorage,n=t.eventSource;return new y({fetch:e,AsyncStorage:i,eventSource:n})}var C=m({}),S=function(){return m({})};export{v as FlagSource,S as createFlagsmithInstance,C as default};
|
|
1
|
+
var t=function(){return t=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var a in e=arguments[n])Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t},t.apply(this,arguments)};function e(t,e,n,i){return new(n||(n=Promise))((function(a,o){function r(t){try{s(i.next(t))}catch(t){o(t)}}function l(t){try{s(i.throw(t))}catch(t){o(t)}}function s(t){var e;t.done?a(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(r,l)}s((i=i.apply(t,e||[])).next())}))}function n(t,e){var n,i,a,o,r={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return o={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function l(o){return function(l){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,i&&(a=2&o[0]?i.return:o[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,o[1])).done)return a;switch(i=0,a&&(o=[2&o[0],a.value]),o[0]){case 0:case 1:a=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,i=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(a=r.trys,(a=a.length>0&&a[a.length-1])||6!==o[0]&&2!==o[0])){r=0;continue}if(3===o[0]&&(!a||o[1]>a[0]&&o[1]<a[3])){r.label=o[1];break}if(6===o[0]&&r.label<a[1]){r.label=a[1],a=o;break}if(a&&r.label<a[2]){r.label=a[2],r.ops.push(o);break}a[2]&&r.ops.pop(),r.trys.pop();continue}o=e.call(t,r)}catch(t){o=[6,t],i=0}finally{n=a=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,l])}}}function i(t,e,n){if(n||2===arguments.length)for(var i,a=0,o=e.length;a<o;a++)!i&&a in e||(i||(i=Array.prototype.slice.call(e,0,a)),i[a]=e[a]);return t.concat(i||Array.prototype.slice.call(e))}var a=function t(e,n){if(e===n)return!0;if(e&&n&&"object"==typeof e&&"object"==typeof n){if(e.constructor!==n.constructor)return!1;var i,a,o;if(Array.isArray(e)){if((i=e.length)!=n.length)return!1;for(a=i;0!=a--;)if(!t(e[a],n[a]))return!1;return!0}if(e.constructor===RegExp)return e.source===n.source&&e.flags===n.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===n.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===n.toString();if((i=(o=Object.keys(e)).length)!==Object.keys(n).length)return!1;for(a=i;0!=a--;)if(!Object.prototype.hasOwnProperty.call(n,o[a]))return!1;for(a=i;0!=a--;){var r=o[a];if(!t(e[r],n[r]))return!1}return!0}return e!=e&&n!=n};function o(t,e){var n=Object.keys(e||{}).filter((function(n){var i=null==t?void 0:t[n],o=null==e?void 0:e[n];return!a(i,o)}));return Object.keys(t||{}).filter((function(t){Object.keys(e||{}).includes(t)||n.push(t)})),Object.keys(n).length?n:null}function r(t,e,n){var i="shortString",a=!0;"number"==typeof n&&(i="javaDouble",a=!1),t[i]=t[i]||{},t[i][e]=a?n+"":n}function l(t){return!!t&&"object"==typeof t&&void 0!==t.value}function s(t){return Object.fromEntries(Object.entries(t).map((function(t){var e=t[0],n=t[1];return[e,l(n)?n:{value:n}]})))}function u(e){return t(t({},e),{identity:e.identity?t(t({},e.identity),{traits:s(e.identity.traits||{})}):void 0})}var c,d;!function(t){t.NONE="NONE",t.DEFAULT_FLAGS="DEFAULT_FLAGS",t.CACHE="CACHE",t.SERVER="SERVER"}(c||(c={}));var v,h=null,g="FLAGSMITH_EVENT",f="https://edge.api.flagsmith.com/api/v1/",p=function(){function p(e){var n=this;this._trigger=null,this._triggerLoadingState=null,this.timestamp=null,this.isLoading=!1,this.eventSource=null,this.getFlags=function(){var e=n,i=e.api,a=e.evaluationContext;n.log("Get Flags"),n.isLoading=!0,n.loadingState.isFetching||n.setLoadingState(t(t({},n.loadingState),{isFetching:!0}));var l="".concat(n.getContext().identity),s=function(e){var i,a,s,u;if(e&&l==="".concat(n.getContext().identity)){var d=e.flags,v=e.traits,h=e.identifier;n.isLoading=!1;var g={},f={};v=v||[],(d=d||[]).forEach((function(t){g[t.feature.name.toLowerCase().replace(/ /g,"_")]={id:t.feature.id,enabled:t.enabled,value:t.feature_state_value}})),v.forEach((function(t){f[t.trait_key.toLowerCase().replace(/ /g,"_")]={transient:t.transient,value:t.trait_value}})),n.oldFlags=t({},n.flags);var p=o(n.oldFlags,g),y=o(null===(i=n.evaluationContext.identity)||void 0===i?void 0:i.traits,f);if((h||Object.keys(f).length)&&(n.evaluationContext.identity=t(t({},n.evaluationContext.identity),{traits:f}),h&&(n.evaluationContext.identity.identifier=h,n.identity=h)),n.flags=g,n.updateStorage(),n._onChange(n.oldFlags,{isFromServer:!0,flagsChanged:p,traitsChanged:y},n._loadedState(null,c.SERVER)),n.datadogRum)try{if(n.datadogRum.trackTraits){var m={};Object.keys((null===(a=n.evaluationContext.identity)||void 0===a?void 0:a.traits)||{}).map((function(t){m["flagsmith_trait_"+t]=n.getTrait(t)}));var S=t(t(t({},n.datadogRum.client.getUser()),{id:n.datadogRum.client.getUser().id||(null===(s=n.evaluationContext.identity)||void 0===s?void 0:s.identifier)}),m);n.log("Setting Datadog user",S),n.datadogRum.client.setUser(S)}}catch(t){console.error(t)}if(n.dtrum)try{var C={javaDouble:{},date:{},shortString:{},javaLongOrObject:{}};Object.keys(n.flags).map((function(t){r(C,"flagsmith_value_"+t,n.getValue(t,{skipAnalytics:!0})),r(C,"flagsmith_enabled_"+t,n.hasFeature(t,{skipAnalytics:!0}))})),Object.keys((null===(u=n.evaluationContext.identity)||void 0===u?void 0:u.traits)||{}).map((function(t){r(C,"flagsmith_trait_"+t,n.getTrait(t))})),n.log("Sending javaLongOrObject traits to dynatrace",C.javaLongOrObject),n.log("Sending date traits to dynatrace",C.date),n.log("Sending shortString traits to dynatrace",C.shortString),n.log("Sending javaDouble to dynatrace",C.javaDouble),n.dtrum.sendSessionProperties(C.javaLongOrObject,C.date,C.shortString,C.javaDouble)}catch(t){console.error(t)}}};return a.identity?Promise.all([a.identity.traits&&Object.keys(a.identity.traits).length||!a.identity.identifier?n.getJSON(i+"identities/","POST",JSON.stringify({identifier:a.identity.identifier,transient:a.identity.transient,traits:Object.entries(a.identity.traits).map((function(t){var e=t[0],n=t[1];return{trait_key:e,trait_value:null==n?void 0:n.value,transient:null==n?void 0:n.transient}})).filter((function(t){return void 0!==t.trait_value||(n.log("Warning - attempted to set an undefined trait value for key",t.trait_key),!1)}))})):n.getJSON(i+"identities/?identifier="+encodeURIComponent(a.identity.identifier)+(a.identity.transient?"&transient=true":""))]).then((function(e){return n.evaluationContext.identity=t(t({},n.evaluationContext.identity),{traits:{}}),s(null==e?void 0:e[0])})).catch((function(t){var e=t.message,n=new Error(e);return Promise.reject(n)})):n.getJSON(i+"flags/").then((function(t){return s({flags:t,traits:void 0})}))},this.analyticsFlags=function(){var e=n.api;if(n.evaluationEvent&&n.evaluationContext.environment&&n.evaluationEvent[n.evaluationContext.environment.apiKey])return n.evaluationEvent&&0!==Object.getOwnPropertyNames(n.evaluationEvent).length&&0!==Object.getOwnPropertyNames(n.evaluationEvent[n.evaluationContext.environment.apiKey]).length?n.getJSON(e+"analytics/flags/","POST",JSON.stringify(n.evaluationEvent[n.evaluationContext.environment.apiKey])).then((function(e){if(n.evaluationContext.environment){var i=n.getState();n.evaluationEvent||(n.evaluationEvent={}),n.evaluationEvent[n.evaluationContext.environment.apiKey]={},n.setState(t(t({},i),{evaluationEvent:n.evaluationEvent})),n.updateEventStorage()}})).catch((function(t){n.log("Exception fetching evaluationEvent",t)})):void 0},this.datadogRum=null,this.loadingState={isLoading:!0,isFetching:!0,error:null,source:c.NONE},this.canUseStorage=!1,this.analyticsInterval=null,this.api=null,this.cacheFlags=!1,this.enableAnalytics=!1,this.enableLogs=!1,this.evaluationContext={},this.evaluationEvent=null,this.flags=null,this.getFlagInterval=null,this.headers=null,this.identity=null,this.initialised=!1,this.oldFlags=null,this.onChange=null,this.onError=null,this.ticks=null,this.timer=null,this.dtrum=null,this.sentryClient=null,this.withTraits=null,this.cacheOptions={ttl:0,skipAPI:!1,loadStale:!1,storageKey:void 0},this.getValue=function(t,e,i){var a=n.flags&&n.flags[t.toLowerCase().replace(/ /g,"_")],o=null;if(a&&(o=a.value),(null==e?void 0:e.skipAnalytics)||i||n.evaluateFlag(t,"VALUE"),null===o&&void 0!==(null==e?void 0:e.fallback))return e.fallback;if(null==e?void 0:e.json)try{return null===o?(n.log("Tried to parse null flag as JSON: "+t),null):JSON.parse(o)}catch(t){return e.fallback}return o},this.getTrait=function(t){var e,i;return(null===(e=n.evaluationContext.identity)||void 0===e?void 0:e.traits)&&(null===(i=n.evaluationContext.identity.traits[t.toLowerCase().replace(/ /g,"_")])||void 0===i?void 0:i.value)},this.getAllTraits=function(){var t;return Object.fromEntries(Object.entries((null===(t=n.evaluationContext.identity)||void 0===t?void 0:t.traits)||{}).map((function(t){var e=t[0],n=t[1];return[e,null==n?void 0:n.value]})))},this.setContext=function(e){var i,a,o=u(e);return n.evaluationContext=t(t({},o),{environment:o.environment||n.evaluationContext.environment}),n.identity=null===(a=null===(i=n.getContext())||void 0===i?void 0:i.identity)||void 0===a?void 0:a.identifier,n.initialised?n.getFlags():Promise.resolve()},this.getContext=function(){return n.evaluationContext},this.updateContext=function(e){return n.setContext(t(t({},n.getContext()),e))},this.setTrait=function(e,i){var a;if(n.api)return n.setContext(t(t({},n.evaluationContext),{identity:t(t({},n.evaluationContext.identity),{traits:t(t({},null===(a=n.evaluationContext.identity)||void 0===a?void 0:a.traits),s(Object.fromEntries([[e,i]])))})}))},this.setTraits=function(e){var i;if(n.api)return n.setContext(t(t({},n.evaluationContext),{identity:t(t({},n.evaluationContext.identity),{traits:t(t({},null===(i=n.evaluationContext.identity)||void 0===i?void 0:i.traits),Object.fromEntries(Object.entries(e).map((function(t){var e=t[0],n=t[1];return[e,l(n)?n:{value:n}]}))))})}));console.error("Attempted to "+"setTraits"+" a user before calling flagsmith.init. Call flagsmith.init first, if you wish to prevent it sending a request for flags, call init with preventFetch:true.")},this.hasFeature=function(t,e){var i,a,o="object"==typeof e,r=n.flags&&n.flags[t.toLowerCase().replace(/ /g,"_")],l=!1;if(!r&&o&&void 0!==e.fallback?l=null==e?void 0:e.fallback:r&&r.enabled&&(l=!0),(o&&!e.skipAnalytics||!e)&&n.evaluateFlag(t,"ENABLED"),n.sentryClient)try{null===(a=null===(i=n.sentryClient.getIntegrationByName("FeatureFlags"))||void 0===i?void 0:i.addFeatureFlag)||void 0===a||a.call(i,t,l)}catch(t){console.error(t)}return l},this.getStorageKey=function(){var t,e;return(null===(t=n.cacheOptions)||void 0===t?void 0:t.storageKey)||"FLAGSMITH_DB_"+(null===(e=n.evaluationContext.environment)||void 0===e?void 0:e.apiKey)},this.getJSON=function(t,e,i){var a,o,r,l=n.headers,s={method:e||"GET",body:i,cache:"no-cache",headers:{}};n.evaluationContext.environment&&(s.headers["X-Environment-Key"]=n.evaluationContext.environment.apiKey),e&&"GET"!==e&&(s.headers["Content-Type"]="application/json; charset=utf-8"),(null===(a=n.applicationMetadata)||void 0===a?void 0:a.name)&&(s.headers["Flagsmith-Application-Name"]=n.applicationMetadata.name),(null===(o=n.applicationMetadata)||void 0===o?void 0:o.version)&&(s.headers["Flagsmith-Application-Version"]=n.applicationMetadata.version),s.headers["Flagsmith-SDK-User-Agent"]="flagsmith-js-sdk/".concat("11.0.0"),l&&Object.assign(s.headers,l),d||console.error("Flagsmith: fetch is undefined, please specify a fetch implementation into flagsmith.init to support SSR.");var u="".concat(null===(r=n.evaluationContext.identity)||void 0===r?void 0:r.identifier);return d(t,s).then((function(i){var a,o,r="".concat(null===(a=n.evaluationContext.identity)||void 0===a?void 0:a.identifier);if(u===r){var l=null===(o=i.headers)||void 0===o?void 0:o.get("x-flagsmith-document-updated-at");if(l)try{var s=parseFloat(l);if(isNaN(s))return Promise.reject("Failed to parse x-flagsmith-document-updated-at");n.timestamp=s}catch(t){n.log(t,"Failed to parse x-flagsmith-document-updated-at",l)}return n.log("Fetch response: "+i.status+" "+(e||"GET")+0+t),i.text().then((function(t){var e=t;try{e=JSON.parse(t)}catch(t){}return!e&&i.status&&(e="API Response: ".concat(i.status)),i.status&&i.status>=200&&i.status<300?e:Promise.reject(new Error(e))}))}n.log("Received response with identity mismatch, ignoring response. Requested: ".concat(u,", Current: ").concat(r))}))},this.evaluateFlag=function(t,e){if(n.datadogRum&&(n.datadogRum.client.addFeatureFlagEvaluation?"VALUE"===e?n.datadogRum.client.addFeatureFlagEvaluation("flagsmith_value_"+t,n.getValue(t,{},!0)):n.datadogRum.client.addFeatureFlagEvaluation("flagsmith_enabled_"+t,n.hasFeature(t,!0)):console.error("Flagsmith: Your datadog RUM client does not support the function addFeatureFlagEvaluation, please update it.")),n.enableAnalytics){if(!n.evaluationEvent||!n.evaluationContext.environment)return;n.evaluationEvent[n.evaluationContext.environment.apiKey]||(n.evaluationEvent[n.evaluationContext.environment.apiKey]={}),void 0===n.evaluationEvent[n.evaluationContext.environment.apiKey][t]&&(n.evaluationEvent[n.evaluationContext.environment.apiKey][t]=0),n.evaluationEvent[n.evaluationContext.environment.apiKey][t]+=1}n.updateEventStorage()},this._onChange=function(t,e,i){var a,o;n.setLoadingState(i),null===(a=n.onChange)||void 0===a||a.call(n,t,e,n.loadingState),null===(o=n._trigger)||void 0===o||o.call(n)},d=e.fetch?e.fetch:"undefined"!=typeof fetch?fetch:null===global||void 0===global?void 0:global.fetch,this.canUseStorage="undefined"!=typeof window||!!e.browserlessStorage,this.applicationMetadata=e.applicationMetadata,this.log("Constructing flagsmith instance "+e),e.eventSource&&(v=e.eventSource),e.AsyncStorage&&(h=e.AsyncStorage)}return p.prototype.init=function(i){var a,r,l,s;return e(this,void 0,void 0,(function(){var v,p,y,m,S,C,b,x,E,F,O,_,w,A,j,L,k,I,T,N,P,K,R,D,U,J,G,M,V,H,B,W,q,Y,X,z=this;return n(this,(function(Q){switch(Q.label){case 0:v=u(i.evaluationContext||this.evaluationContext),Q.label=1;case 1:if(Q.trys.push([1,13,,14]),p=i.AsyncStorage,y=i._trigger,m=i._triggerLoadingState,S=i.angularHttpClient,C=i.api,b=void 0===C?f:C,x=i.applicationMetadata,E=i.cacheFlags,F=i.cacheOptions,O=i.datadogRum,_=i.defaultFlags,w=i.enableAnalytics,A=i.enableDynatrace,j=i.enableLogs,L=i.environmentID,k=i.eventSourceUrl,I=void 0===k?"https://realtime.flagsmith.com/":k,T=i.fetch,N=i.headers,P=i.identity,K=i.onChange,R=i.onError,D=i.preventFetch,U=i.realtime,J=i.sentryClient,G=i.state,M=i.traits,v.environment=L?{apiKey:L}:v.environment,!v.environment||!v.environment.apiKey)throw new Error("Please provide `evaluationContext.environment` with non-empty `apiKey`");if(v.identity=P||M?{identifier:P,traits:M?Object.fromEntries(Object.entries(M).map((function(t){return[t[0],{value:t[1]}]}))):{}}:v.identity,this.evaluationContext=v,this.api=(Z=b).endsWith("/")?Z:Z+"/",this.headers=N,this.getFlagInterval=null,this.analyticsInterval=null,this.onChange=K,V="Wrong Flagsmith Configuration: preventFetch is true and no defaulFlags provided",this._trigger=y||this._trigger,this._triggerLoadingState=m||this._triggerLoadingState,this.onError=function(e){z.setLoadingState(t(t({},z.loadingState),{isFetching:!1,isLoading:!1,error:e})),null==R||R(e)},this.enableLogs=j||!1,this.cacheOptions=F?{skipAPI:!!F.skipAPI,ttl:F.ttl||0,storageKey:F.storageKey,loadStale:!!F.loadStale}:this.cacheOptions,!this.cacheOptions.ttl&&this.cacheOptions.skipAPI&&console.warn("Flagsmith: you have set a cache ttl of 0 and are skipping API calls, this means the API will not be hit unless you clear local storage."),T&&(d=T),this.enableAnalytics=w||!1,this.flags=Object.assign({},_)||{},this.datadogRum=O||null,this.initialised=!0,this.ticks=1e4,this.timer=this.enableLogs?(new Date).valueOf():null,this.cacheFlags=void 0!==h&&!!E,this.applicationMetadata=x,g="FLAGSMITH_EVENT_"+v.environment.apiKey,p&&(h=p),U&&"undefined"!=typeof window&&this.setupRealtime(I,v.environment.apiKey),Object.keys(this.flags).length&&(this.loadingState=t(t({},this.loadingState),{isLoading:!1,source:c.DEFAULT_FLAGS})),this.setState(G),this.log("Initialising with properties",i,this),A&&("undefined"==typeof dtrum?console.error("You have attempted to enable dynatrace but dtrum is undefined, please check you have the Dynatrace RUM JavaScript API installed."):this.dtrum=dtrum),J&&(this.sentryClient=J),S&&(d=function(t){return function(e,n){var i=n.headers,a=n.method,o=n.body,r={headers:i,observe:"response",responseType:"text"},l=function(t,e){var n=t.status,i=t.headers,a=t.body,o=t.error,r=t.message;return{status:null!=n?n:e?200:500,ok:e,headers:{get:function(t){var e,n;return null!==(n=null===(e=null==i?void 0:i.get)||void 0===e?void 0:e.call(i,t))&&void 0!==n?n:null}},text:function(){var t,e,n=null!==(e=null!==(t=null!=a?a:o)&&void 0!==t?t:r)&&void 0!==e?e:"";return Promise.resolve("string"!=typeof n?JSON.stringify(n):n)}}};return new Promise((function(n){var i=function(t){return n(l(t,!t.status||t.status>=200&&t.status<300))},s=function(t){return n(l(t,!1))};switch(a){case"GET":return t.get(e,r).subscribe(i,s);case"POST":case"PUT":return t.post(e,null!=o?o:"",r).subscribe(i,s);default:return s({status:405,message:"Unsupported method: ".concat(a)})}}))}}(S)),h&&this.canUseStorage&&h.getItem(g).then((function(t){try{z.evaluationEvent=JSON.parse(t)||{}}catch(t){z.evaluationEvent={}}z.analyticsInterval=setInterval(z.analyticsFlags,z.ticks)})),this.enableAnalytics&&(this.analyticsInterval&&clearInterval(this.analyticsInterval),h&&this.canUseStorage&&h.getItem(g,(function(e,n){if(n&&z.evaluationContext.environment){var i=JSON.parse(n);if(i[z.evaluationContext.environment.apiKey]){var a=z.getState();z.log("Retrieved events from cache",n),z.setState(t(t({},a),{evaluationEvent:i[z.evaluationContext.environment.apiKey]}))}}}))),!E)return[3,9];if(!h||!this.canUseStorage)return[3,8];H=function(i,a){return e(z,void 0,void 0,(function(){var e,i,r,l,s,d,v,h,g,f,p,y,m,S,C,b,x,E,F,O=this;return n(this,(function(n){switch(n.label){case 0:if(!a)return[3,7];e=null,i=null,n.label=1;case 1:return n.trys.push([1,5,,6]),r=JSON.parse(a),l=!1,s=!1,r&&r.api===this.api&&(null===(f=null===(g=r.evaluationContext)||void 0===g?void 0:g.environment)||void 0===f?void 0:f.apiKey)===(null===(p=this.evaluationContext.environment)||void 0===p?void 0:p.apiKey)&&(d=!0,this.evaluationContext.identity&&(null===(m=null===(y=r.evaluationContext)||void 0===y?void 0:y.identity)||void 0===m?void 0:m.identifier)!==this.evaluationContext.identity.identifier&&(this.log("Ignoring cache, identity has changed from "+(null===(C=null===(S=r.evaluationContext)||void 0===S?void 0:S.identity)||void 0===C?void 0:C.identifier)+" to "+this.evaluationContext.identity.identifier),d=!1),this.cacheOptions.ttl&&(!r.ts||(new Date).valueOf()-r.ts>this.cacheOptions.ttl)&&(r.ts&&!this.cacheOptions.loadStale?(this.log("Ignoring cache, timestamp is too old ts:"+r.ts+" ttl: "+this.cacheOptions.ttl+" time elapsed since cache: "+((new Date).valueOf()-r.ts)+"ms"),d=!1):r.ts&&this.cacheOptions.loadStale&&(this.log("Loading stale cache, timestamp ts:"+r.ts+" ttl: "+this.cacheOptions.ttl+" time elapsed since cache: "+((new Date).valueOf()-r.ts)+"ms"),s=!0,d=!0)),d&&(l=!0,e=o(this.flags,r.flags),this.setState(t(t({},r),{evaluationContext:u(t(t({},r.evaluationContext),{identity:(null===(b=r.evaluationContext)||void 0===b?void 0:b.identity)?t(t({},null===(x=r.evaluationContext)||void 0===x?void 0:x.identity),{traits:t({},M||{})}):void 0}))})),this.log("Retrieved flags from cache",r))),l?(v=!D&&(!this.cacheOptions.skipAPI||s),this._onChange(null,{isFromServer:!1,flagsChanged:e,traitsChanged:i},this._loadedState(null,c.CACHE,v)),this.oldFlags=this.flags,this.cacheOptions.skipAPI&&l&&!s&&this.log("Skipping API, using cache"),v&&this.getFlags().catch((function(t){var e;null===(e=O.onError)||void 0===e||e.call(O,t)})),[3,4]):[3,2];case 2:return D?[3,4]:[4,this.getFlags()];case 3:n.sent(),n.label=4;case 4:return[3,6];case 5:throw h=n.sent(),this.log("Exception fetching cached logs",h),h;case 6:return[3,10];case 7:return D?[3,9]:[4,this.getFlags()];case 8:return n.sent(),[3,10];case 9:if(_)this._onChange(null,{isFromServer:!1,flagsChanged:o({},this.flags),traitsChanged:o({},null===(E=this.evaluationContext.identity)||void 0===E?void 0:E.traits)},this._loadedState(null,c.DEFAULT_FLAGS));else{if(!this.flags)throw new Error(V);this._onChange(null,{isFromServer:!1,flagsChanged:o({},this.flags),traitsChanged:o({},null===(F=this.evaluationContext.identity)||void 0===F?void 0:F.traits)},this._loadedState(null,c.DEFAULT_FLAGS))}n.label=10;case 10:return[2]}}))}))},Q.label=2;case 2:return Q.trys.push([2,7,,8]),h.getItemSync?(B=h.getItemSync(this.getStorageKey()),[3,5]):[3,3];case 3:return[4,h.getItem(this.getStorageKey())];case 4:B=Q.sent(),Q.label=5;case 5:return[4,H(null,B)];case 6:return Q.sent(),[3,8];case 7:if(W=Q.sent(),!this.flags||0===Object.keys(this.flags).length)throw W;return X=W instanceof Error?W:new Error("".concat(W)),null===(a=this.onError)||void 0===a||a.call(this,X),[3,8];case 8:return[3,12];case 9:return D?[3,11]:[4,this.getFlags()];case 10:return Q.sent(),[3,12];case 11:if(_)this._onChange(null,{isFromServer:!1,flagsChanged:o({},_),traitsChanged:o({},null===(r=v.identity)||void 0===r?void 0:r.traits)},this._loadedState(null,c.DEFAULT_FLAGS));else if(this.flags&&(q=null,0===Object.keys(this.flags).length&&(q=V),this._onChange(null,{isFromServer:!1,flagsChanged:o({},this.flags),traitsChanged:o({},null===(l=v.identity)||void 0===l?void 0:l.traits)},this._loadedState(q,c.DEFAULT_FLAGS)),q))throw new Error(q);Q.label=12;case 12:return[3,14];case 13:throw Y=Q.sent(),this.log("Error during initialisation ",Y),X=Y instanceof Error?Y:new Error("".concat(Y)),null===(s=this.onError)||void 0===s||s.call(this,X),Y;case 14:return[2]}var Z}))}))},p.prototype.getAllFlags=function(){return this.flags},p.prototype.identify=function(t,e,n){return this.identity=t,this.evaluationContext.identity={identifier:t,transient:n,traits:this.evaluationContext.identity&&this.evaluationContext.identity.identifier==t?this.evaluationContext.identity.traits:{}},this.evaluationContext.identity.identifier=t,this.log("Identify: "+this.evaluationContext.identity.identifier),e&&(this.evaluationContext.identity.traits=Object.fromEntries(Object.entries(e).map((function(t){var e=t[0],n=t[1];return[e,l(n)?n:{value:n}]})))),this.initialised?this.getFlags():Promise.resolve()},p.prototype.getState=function(){return{api:this.api,flags:this.flags,ts:this.ts,evaluationContext:this.evaluationContext,identity:this.identity,evaluationEvent:this.evaluationEvent}},p.prototype.setState=function(t){var e,n;t&&(this.initialised=!0,this.api=t.api||this.api||f,this.flags=t.flags||this.flags,this.evaluationContext=t.evaluationContext||this.evaluationContext,this.evaluationEvent=t.evaluationEvent||this.evaluationEvent,this.identity=null===(n=null===(e=this.getContext())||void 0===e?void 0:e.identity)||void 0===n?void 0:n.identifier,this.log("setState called",this))},p.prototype.logout=function(){return this.identity=null,this.evaluationContext.identity=null,this.initialised?this.getFlags():Promise.resolve()},p.prototype.startListening=function(t){void 0===t&&(t=1e3),this.getFlagInterval&&clearInterval(this.getFlagInterval),this.getFlagInterval=setInterval(this.getFlags,t)},p.prototype.stopListening=function(){this.getFlagInterval&&(clearInterval(this.getFlagInterval),this.getFlagInterval=null)},p.prototype._loadedState=function(t,e,n){return void 0===t&&(t=null),void 0===n&&(n=!1),{error:t,isFetching:n,isLoading:!1,source:e}},p.prototype.log=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];this.enableLogs&&console.log.apply(this,i(["FLAGSMITH:",(new Date).valueOf()-(this.timer||0),"ms"],t,!0))},p.prototype.updateStorage=function(){if(this.cacheFlags){this.ts=(new Date).valueOf();var t=JSON.stringify(this.getState());this.log("Setting storage",t),h.setItem(this.getStorageKey(),t)}},p.prototype.updateEventStorage=function(){if(this.enableAnalytics){var t=JSON.stringify(this.getState().evaluationEvent);h.setItem(g,t).catch((function(t){return console.error("Flagsmith: Error setting item in async storage",t)}))}},p.prototype.setLoadingState=function(e){var n;a(e,this.loadingState)||(this.loadingState=t({},e),this.log("Loading state changed",e),null===(n=this._triggerLoadingState)||void 0===n||n.call(this))},p.prototype.setupRealtime=function(t,e){var n=this,i=t+"sse/environments/"+e+"/stream";v?this.eventSource||(this.log("Creating event source with url "+i),this.eventSource=new v(i),this.eventSource.addEventListener("environment_updated",(function(t){var e;try{e=JSON.parse(t.data).updated_at}catch(t){n.log("Could not parse sse event",t)}e?!n.timestamp||e>n.timestamp?n.isLoading?n.log("updated_at is new, but flags are loading",t.data,n.timestamp):(n.log("updated_at is new, fetching flags",t.data,n.timestamp),n.getFlags()):n.log("updated_at is outdated, skipping get flags",t.data,n.timestamp):n.log("No updated_at received, fetching flags",t)}))):this.log("Error, EventSource is undefined")},p}();function y(t){var e=t.fetch,n=t.AsyncStorage,i=t.eventSource;return new p({fetch:e,AsyncStorage:n,eventSource:i})}var m=y({}),S=function(){return y({})};export{c as FlagSource,S as createFlagsmithInstance,m as default};
|
|
2
2
|
//# sourceMappingURL=next-middleware.mjs.map
|