New:Socket for Asana Is Now Available.Learn more
Sign In

posthog-node

Package Overview
Dependencies
Maintainers
22
Versions
321
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

posthog-node - npm Package Compare versions

Comparing version
5.51.1
to
5.51.2
+1
-1
dist/client.d.ts.map

@@ -1,1 +0,1 @@

{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}

@@ -731,3 +731,11 @@ "use strict";

}
const { groups, disableGeoip, flagKeys } = resolvedOptions || {};
const { groups, disableGeoip } = resolvedOptions || {};
const flagKeys = resolvedOptions?.flagKeys ?? void 0;
if (flagKeys?.length === 0) return new external_feature_flag_evaluations_js_namespaceObject.FeatureFlagEvaluations({
host: this._getFeatureFlagEvaluationsHost(),
distinctId: resolvedDistinctId,
groups,
disableGeoip,
flags: {}
});
let { onlyEvaluateLocally, personProperties, groupProperties } = resolvedOptions || {};

@@ -734,0 +742,0 @@ const adjustedProperties = this.addLocalPersonAndGroupProperties(resolvedDistinctId, groups, personProperties, groupProperties);

@@ -692,3 +692,11 @@ import { version } from "./version.mjs";

}
const { groups, disableGeoip, flagKeys } = resolvedOptions || {};
const { groups, disableGeoip } = resolvedOptions || {};
const flagKeys = resolvedOptions?.flagKeys ?? void 0;
if (flagKeys?.length === 0) return new FeatureFlagEvaluations({
host: this._getFeatureFlagEvaluationsHost(),
distinctId: resolvedDistinctId,
groups,
disableGeoip,
flags: {}
});
let { onlyEvaluateLocally, personProperties, groupProperties } = resolvedOptions || {};

@@ -695,0 +703,0 @@ const adjustedProperties = this.addLocalPersonAndGroupProperties(resolvedDistinctId, groups, personProperties, groupProperties);

@@ -1,2 +0,2 @@

export declare function hashSHA1(text: string): Promise<string>;
export { hashSHA1 } from '@posthog/core';
//# sourceMappingURL=crypto.d.ts.map

@@ -1,1 +0,1 @@

{"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../src/extensions/feature-flags/crypto.ts"],"names":[],"mappings":"AAEA,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAS5D"}
{"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../src/extensions/feature-flags/crypto.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA"}

@@ -27,11 +27,5 @@ "use strict";

__webpack_require__.d(__webpack_exports__, {
hashSHA1: ()=>hashSHA1
hashSHA1: ()=>core_namespaceObject.hashSHA1
});
async function hashSHA1(text) {
const subtle = globalThis.crypto?.subtle;
if (!subtle) throw new Error('SubtleCrypto API not available');
const hashBuffer = await subtle.digest('SHA-1', new TextEncoder().encode(text));
const hashArray = Array.from(new Uint8Array(hashBuffer));
return hashArray.map((byte)=>byte.toString(16).padStart(2, '0')).join('');
}
const core_namespaceObject = require("@posthog/core");
exports.hashSHA1 = __webpack_exports__.hashSHA1;

@@ -38,0 +32,0 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [

@@ -1,8 +0,2 @@

async function hashSHA1(text) {
const subtle = globalThis.crypto?.subtle;
if (!subtle) throw new Error('SubtleCrypto API not available');
const hashBuffer = await subtle.digest('SHA-1', new TextEncoder().encode(text));
const hashArray = Array.from(new Uint8Array(hashBuffer));
return hashArray.map((byte)=>byte.toString(16).padStart(2, '0')).join('');
}
import { hashSHA1 } from "@posthog/core";
export { hashSHA1 };
import { FeatureFlagCondition, PostHogFeatureFlag, PropertyGroup } from '../../types';
import type { FeatureFlagValue, JsonType, PostHogFetchOptions, PostHogFetchResponse } from '@posthog/core';
import { InconclusiveMatchError, relativeDateParseForFeatureFlagMatching } from '@posthog/core';
import { FlagDefinitionCacheProvider } from './cache';

@@ -8,5 +9,2 @@ type ConditionMatchResult = 'match' | 'no_match' | 'out_of_rollout_bound';

}
declare class InconclusiveMatchError extends Error {
constructor(message: string);
}
declare class RequiresServerEvaluation extends Error {

@@ -153,15 +151,4 @@ constructor(message: string);

declare function matchProperty(property: FeatureFlagCondition['properties'][number], propertyValues: Record<string, any>, warnFunction?: (msg: string) => void): boolean;
type SemverTuple = [number, number, number];
/**
* Parse a version string into a [major, minor, patch] tuple.
* - Strips leading/trailing whitespace
* - Strips 'v' or 'V' prefix
* - Strips pre-release and build metadata (-alpha, +build)
* - Defaults missing components to 0
* - Ignores extra components beyond the third
* - Throws InconclusiveMatchError for invalid input
*/
declare function parseSemver(value: string): SemverTuple;
declare function relativeDateParseForFeatureFlagMatching(value: string): Date | null;
declare function parseSemver(value: string): [number, number, number];
export { FeatureFlagsPoller, matchProperty, relativeDateParseForFeatureFlagMatching, parseSemver, InconclusiveMatchError, RequiresServerEvaluation, ClientError, };
//# sourceMappingURL=feature-flags.d.ts.map

@@ -1,1 +0,1 @@

{"version":3,"file":"feature-flags.d.ts","sourceRoot":"","sources":["../../../src/extensions/feature-flags/feature-flags.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAmC,kBAAkB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AACtH,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAG1G,OAAO,EAAE,2BAA2B,EAA2B,MAAM,SAAS,CAAA;AAe9E,KAAK,oBAAoB,GAAG,OAAO,GAAG,UAAU,GAAG,sBAAsB,CAAA;AAEzE,cAAM,WAAY,SAAQ,KAAK;gBACjB,OAAO,EAAE,MAAM;CAO5B;AAWD,cAAM,sBAAuB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAI5B;AAED,cAAM,wBAAyB,SAAQ,KAAK;gBAC9B,OAAO,EAAE,MAAM;CAI5B;AAED,KAAK,yBAAyB,GAAG;IAC/B,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,eAAe,EAAE,MAAM,CAAA;IACvB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAA;IACpF,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAChC;;;;;OAKG;IACH,yBAAyB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;IACtD,aAAa,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;IACzC,aAAa,CAAC,EAAE,2BAA2B,CAAA;IAC3C,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9B,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAA;IACpD,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;CAClD,CAAA;AAED,KAAK,4BAA4B,GAAG;IAClC,UAAU,CAAC,EAAE,gBAAgB,CAAA;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,cAAM,kBAAkB;IACtB,eAAe,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAA;IACvC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;IACrD,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACxC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACtC,sBAAsB,EAAE,OAAO,CAAA;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,CAAA;IACvB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAA;IACnF,SAAS,EAAE,OAAO,CAAQ;IAC1B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,aAAa,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;IACzC,6BAA6B,EAAE,OAAO,CAAQ;IAC9C,YAAY,EAAE,MAAM,CAAI;IACxB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAChC,OAAO,CAAC,aAAa,CAAC,CAA6B;IACnD,OAAO,CAAC,cAAc,CAAC,CAAe;IACtC,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,SAAS,CAAC,CAAQ;IAC1B,OAAO,CAAC,kBAAkB,CAAC,CAAQ;IACnC,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,uBAAuB,CAAC,CAAQ;IACxC,OAAO,CAAC,yBAAyB,CAAC,CAA4B;gBAElD,EACV,eAAe,EACf,cAAc,EACd,aAAa,EACb,OAAO,EACP,IAAI,EACJ,aAAa,EACb,GAAG,OAAO,EACX,EAAE,yBAAyB;IAsB5B,KAAK,CAAC,OAAO,GAAE,OAAc,GAAG,IAAI;IAIpC,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,uBAAuB;IAgBzB,cAAc,CAClB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,EACnC,gBAAgB,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,EAC1C,eAAe,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM,GACxD,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IA8BlC,sBAAsB,CAC1B,iBAAiB,EAAE,4BAA4B,EAC/C,4BAA4B,CAAC,EAAE,MAAM,EAAE,GACtC,OAAO,CAAC;QACT,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;QAC1C,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QAClC,eAAe,EAAE,OAAO,CAAA;KACzB,CAAC;IAyCI,4BAA4B,CAChC,IAAI,EAAE,kBAAkB,EACxB,iBAAiB,EAAE,4BAA4B,EAC/C,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC;QACT,KAAK,EAAE,gBAAgB,CAAA;QACvB,OAAO,EAAE,QAAQ,GAAG,IAAI,CAAA;KACzB,CAAC;YA2BY,uBAAuB;IAkErC,OAAO,CAAC,wBAAwB;IAuBhC,OAAO,CAAC,qBAAqB;YA+Bf,sBAAsB;IAwEpC,OAAO,CAAC,4BAA4B;IAkB9B,0BAA0B,CAC9B,IAAI,EAAE,kBAAkB,EACxB,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/B,iBAAiB,EAAE,4BAA4B,GAC9C,OAAO,CAAC,gBAAgB,CAAC;IA8FtB,gBAAgB,CACpB,IAAI,EAAE,kBAAkB,EACxB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,oBAAoB,EAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/B,iBAAiB,EAAE,4BAA4B,GAC9C,OAAO,CAAC,oBAAoB,CAAC;IA4C1B,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAYjH,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE;IAkBnG;;OAEG;IACH,OAAO,CAAC,eAAe;IAavB;;;;OAIG;IACH,OAAO,CAAC,kCAAkC;IAoB1C;;;OAGG;YACW,aAAa;IAqBrB,gBAAgB,CAAC,WAAW,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB1D;;;OAGG;IACH,sBAAsB,IAAI,OAAO;IAIjC;;;OAGG;IACH,0BAA0B,IAAI,MAAM,GAAG,SAAS;IAIhD;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;;OAGG;IACH,OAAO,CAAC,YAAY;IAQpB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAMd,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmKxC,OAAO,CAAC,+BAA+B;IAoBjC,8BAA8B,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAqD/D,UAAU,CAAC,SAAS,GAAE,MAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CAsB3D;AAWD,iBAAS,aAAa,CACpB,QAAQ,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,EACpD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACnC,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GACnC,OAAO,CA6JT;AA6JD,KAAK,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAgB3C;;;;;;;;GAQG;AACH,iBAAS,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAwB/C;AAuGD,iBAAS,uCAAuC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAmC3E;AAED,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,uCAAuC,EACvC,WAAW,EACX,sBAAsB,EACtB,wBAAwB,EACxB,WAAW,GACZ,CAAA"}
{"version":3,"file":"feature-flags.d.ts","sourceRoot":"","sources":["../../../src/extensions/feature-flags/feature-flags.ts"],"names":[],"mappings":"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"}

@@ -30,4 +30,4 @@ "use strict";

ClientError: ()=>ClientError,
relativeDateParseForFeatureFlagMatching: ()=>relativeDateParseForFeatureFlagMatching,
InconclusiveMatchError: ()=>InconclusiveMatchError,
relativeDateParseForFeatureFlagMatching: ()=>core_namespaceObject.relativeDateParseForFeatureFlagMatching,
InconclusiveMatchError: ()=>core_namespaceObject.InconclusiveMatchError,
FeatureFlagsPoller: ()=>FeatureFlagsPoller,

@@ -37,9 +37,3 @@ RequiresServerEvaluation: ()=>RequiresServerEvaluation

const core_namespaceObject = require("@posthog/core");
const external_crypto_js_namespaceObject = require("./crypto.js");
const SIXTY_SECONDS = 60000;
const LONG_SCALE = 0xfffffffffffffff;
const NULL_VALUES_ALLOWED_OPERATORS = [
'is_not',
'is_set'
];
class ClientError extends Error {

@@ -59,8 +53,2 @@ constructor(message){

}
class InconclusiveMatchError extends Error {
constructor(message){
super(message);
setCustomErrorPrototype(this, InconclusiveMatchError);
}
}
class RequiresServerEvaluation extends Error {

@@ -126,3 +114,3 @@ constructor(message){

} catch (e) {
if (e instanceof RequiresServerEvaluation || e instanceof InconclusiveMatchError) this.logMsgIfDebug(()=>console.debug(`${e.name} when computing flag locally: ${key}: ${e.message}`));
if (e instanceof RequiresServerEvaluation || e instanceof core_namespaceObject.InconclusiveMatchError) this.logMsgIfDebug(()=>console.debug(`${e.name} when computing flag locally: ${key}: ${e.message}`));
else if (e instanceof Error) this.onError?.(new Error(`Error computing flag locally: ${key}: ${e}`));

@@ -149,3 +137,3 @@ }

} catch (e) {
if (e instanceof RequiresServerEvaluation || e instanceof InconclusiveMatchError) this.logMsgIfDebug(()=>console.debug(`${e.name} when computing flag locally: ${flag.key}: ${e.message}`));
if (e instanceof RequiresServerEvaluation || e instanceof core_namespaceObject.InconclusiveMatchError) this.logMsgIfDebug(()=>console.debug(`${e.name} when computing flag locally: ${flag.key}: ${e.message}`));
else if (e instanceof Error) this.onError?.(new Error(`Error computing flag locally: ${flag.key}: ${e}`));

@@ -179,3 +167,3 @@ fallbackToFlags = true;

if (!flag.active) return false;
if (flag.ensure_experience_continuity) throw new InconclusiveMatchError('Flag has experience continuity enabled');
if (flag.ensure_experience_continuity) throw new core_namespaceObject.InconclusiveMatchError('Flag has experience continuity enabled');
const flagFilters = flag.filters || {};

@@ -187,3 +175,3 @@ const aggregation_group_type_index = flagFilters.aggregation_group_type_index;

this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Unknown group type index ${aggregation_group_type_index} for feature flag ${flag.key}`));
throw new InconclusiveMatchError('Flag has unknown group type index');
throw new core_namespaceObject.InconclusiveMatchError('Flag has unknown group type index');
}

@@ -202,3 +190,3 @@ if (!(groupName in groups)) {

this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Can't compute feature flag: ${flag.key} without $device_id, falling back to server evaluation`));
throw new InconclusiveMatchError(`Can't compute feature flag: ${flag.key} without $device_id`);
throw new core_namespaceObject.InconclusiveMatchError(`Can't compute feature flag: ${flag.key} without $device_id`);
}

@@ -218,15 +206,3 @@ return await this.matchFeatureFlagProperties(flag, bucketingValue, personProperties, evaluationContext);

getFeatureFlagPayload(key, flagValue) {
let payload = null;
if (false !== flagValue && null != flagValue) {
if ('boolean' == typeof flagValue) payload = this.featureFlagsByKey?.[key]?.filters?.payloads?.[flagValue.toString()] || null;
else if ('string' == typeof flagValue) payload = this.featureFlagsByKey?.[key]?.filters?.payloads?.[flagValue] || null;
if (null != payload) {
if ('object' == typeof payload) return payload;
if ('string' == typeof payload) try {
return JSON.parse(payload);
} catch {}
return payload;
}
}
return null;
return (0, core_namespaceObject.resolveFeatureFlagPayload)(this.featureFlagsByKey?.[key]?.filters?.payloads, flagValue);
}

@@ -236,7 +212,7 @@ async evaluateFlagDependency(property, properties, evaluationContext) {

const targetFlagKey = property.key;
if (!this.featureFlagsByKey) throw new InconclusiveMatchError('Feature flags not available for dependency evaluation');
if (!('dependency_chain' in property)) throw new InconclusiveMatchError(`Flag dependency property for '${targetFlagKey}' is missing required 'dependency_chain' field`);
if (!this.featureFlagsByKey) throw new core_namespaceObject.InconclusiveMatchError('Feature flags not available for dependency evaluation');
if (!('dependency_chain' in property)) throw new core_namespaceObject.InconclusiveMatchError(`Flag dependency property for '${targetFlagKey}' is missing required 'dependency_chain' field`);
const dependencyChain = property.dependency_chain;
if (!Array.isArray(dependencyChain)) throw new InconclusiveMatchError(`Flag dependency property for '${targetFlagKey}' has an invalid 'dependency_chain' (expected array, got ${typeof dependencyChain})`);
if (0 === dependencyChain.length) throw new InconclusiveMatchError(`Circular dependency detected for flag '${targetFlagKey}' (empty dependency chain)`);
if (!Array.isArray(dependencyChain)) throw new core_namespaceObject.InconclusiveMatchError(`Flag dependency property for '${targetFlagKey}' has an invalid 'dependency_chain' (expected array, got ${typeof dependencyChain})`);
if (0 === dependencyChain.length) throw new core_namespaceObject.InconclusiveMatchError(`Circular dependency detected for flag '${targetFlagKey}' (empty dependency chain)`);
for (const depFlagKey of dependencyChain){

@@ -249,9 +225,9 @@ if (!(depFlagKey in evaluationCache)) {

} catch (error) {
throw new InconclusiveMatchError(`Error evaluating flag dependency '${depFlagKey}' for flag '${targetFlagKey}': ${error}`);
throw new core_namespaceObject.InconclusiveMatchError(`Error evaluating flag dependency '${depFlagKey}' for flag '${targetFlagKey}': ${error}`);
}
else evaluationCache[depFlagKey] = false;
else throw new InconclusiveMatchError(`Missing flag dependency '${depFlagKey}' for flag '${targetFlagKey}'`);
else throw new core_namespaceObject.InconclusiveMatchError(`Missing flag dependency '${depFlagKey}' for flag '${targetFlagKey}'`);
}
const cachedResult = evaluationCache[depFlagKey];
if (null == cachedResult) throw new InconclusiveMatchError(`Dependency '${depFlagKey}' could not be evaluated`);
if (null == cachedResult) throw new core_namespaceObject.InconclusiveMatchError(`Dependency '${depFlagKey}' could not be evaluated`);
}

@@ -303,7 +279,7 @@ const targetFlagValue = evaluationCache[targetFlagKey];

if (e instanceof RequiresServerEvaluation) throw e;
if (e instanceof InconclusiveMatchError) isInconclusive = true;
if (e instanceof core_namespaceObject.InconclusiveMatchError) isInconclusive = true;
else throw e;
}
if (void 0 !== result) return result;
if (isInconclusive) throw new InconclusiveMatchError("Can't determine if feature flag is enabled or not with given properties");
if (isInconclusive) throw new core_namespaceObject.InconclusiveMatchError("Can't determine if feature flag is enabled or not with given properties");
return false;

@@ -328,26 +304,10 @@ }

}
if (void 0 != rolloutPercentage && await _hash(flag.key, bucketingValue) > rolloutPercentage / 100.0) return 'out_of_rollout_bound';
if (void 0 != rolloutPercentage && await (0, core_namespaceObject.getFeatureFlagHash)(flag.key, bucketingValue) > rolloutPercentage / 100.0) return 'out_of_rollout_bound';
return 'match';
}
async getMatchingVariant(flag, bucketingValue) {
const hashValue = await _hash(flag.key, bucketingValue, 'variant');
const matchingVariant = this.variantLookupTable(flag).find((variant)=>hashValue >= variant.valueMin && hashValue < variant.valueMax);
if (matchingVariant) return matchingVariant.key;
return (0, core_namespaceObject.getFeatureFlagVariant)(flag.key, bucketingValue, flag.filters?.multivariate?.variants || []);
}
variantLookupTable(flag) {
const lookupTable = [];
let valueMin = 0;
let valueMax = 0;
const flagFilters = flag.filters || {};
const multivariates = flagFilters.multivariate?.variants || [];
multivariates.forEach((variant)=>{
valueMax = valueMin + variant.rollout_percentage / 100.0;
lookupTable.push({
valueMin,
valueMax,
key: variant.key
});
valueMin = valueMax;
});
return lookupTable;
return (0, core_namespaceObject.getFeatureFlagVariantLookupTable)(flag.filters?.multivariate?.variants || []);
}

@@ -556,131 +516,10 @@ updateFlagState(flagData) {

}
async function _hash(key, bucketingValue, salt = '') {
const hashString = await (0, external_crypto_js_namespaceObject.hashSHA1)(`${key}.${bucketingValue}${salt}`);
return parseInt(hashString.slice(0, 15), 16) / LONG_SCALE;
}
function matchProperty(property, propertyValues, warnFunction) {
const key = property.key;
const value = property.value;
const operator = property.operator || 'exact';
if (key in propertyValues) {
if ('is_not_set' === operator) return false;
} else {
if ('is_not_set' === operator) return true;
throw new InconclusiveMatchError(`Property ${key} not found in propertyValues`);
}
const overrideValue = propertyValues[key];
if (null == overrideValue && !NULL_VALUES_ALLOWED_OPERATORS.includes(operator)) {
if (warnFunction) warnFunction(`Property ${key} cannot have a value of null/undefined with the ${operator} operator`);
return false;
}
function computeExactMatch(value, overrideValue) {
if (Array.isArray(value)) return value.map((val)=>String(val).toLowerCase()).includes(String(overrideValue).toLowerCase());
return String(value).toLowerCase() === String(overrideValue).toLowerCase();
}
function compare(lhs, rhs, operator) {
if ('gt' === operator) return lhs > rhs;
if ('gte' === operator) return lhs >= rhs;
if ('lt' === operator) return lhs < rhs;
if ('lte' === operator) return lhs <= rhs;
throw new Error(`Invalid operator: ${operator}`);
}
switch(operator){
case 'exact':
return computeExactMatch(value, overrideValue);
case 'is_not':
return !computeExactMatch(value, overrideValue);
case 'is_set':
return key in propertyValues;
case 'icontains':
return String(overrideValue).toLowerCase().includes(String(value).toLowerCase());
case 'not_icontains':
return !String(overrideValue).toLowerCase().includes(String(value).toLowerCase());
case 'starts_with':
return String(overrideValue).toLowerCase().startsWith(String(value).toLowerCase());
case 'not_starts_with':
return !String(overrideValue).toLowerCase().startsWith(String(value).toLowerCase());
case 'ends_with':
return String(overrideValue).toLowerCase().endsWith(String(value).toLowerCase());
case 'not_ends_with':
return !String(overrideValue).toLowerCase().endsWith(String(value).toLowerCase());
case 'regex':
return isValidRegex(String(value)) && null !== String(overrideValue).match(String(value));
case 'not_regex':
return isValidRegex(String(value)) && null === String(overrideValue).match(String(value));
case 'gt':
case 'gte':
case 'lt':
case 'lte':
{
const parsedValue = 'number' == typeof value ? value : parseFloat(String(value));
let parsedOverride;
parsedOverride = 'number' == typeof overrideValue ? overrideValue : null != overrideValue ? parseFloat(String(overrideValue)) : NaN;
if (Number.isFinite(parsedValue) && Number.isFinite(parsedOverride)) return compare(parsedOverride, parsedValue, operator);
return compare(String(overrideValue), String(value), operator);
}
case 'is_date_after':
case 'is_date_before':
{
if ('boolean' == typeof value) throw new InconclusiveMatchError("Date operations cannot be performed on boolean values");
let parsedDate = relativeDateParseForFeatureFlagMatching(String(value));
if (null == parsedDate) parsedDate = convertToDateTime(value);
if (null == parsedDate) throw new InconclusiveMatchError(`Invalid date: ${value}`);
const overrideDate = convertToDateTime(overrideValue);
if ([
'is_date_before'
].includes(operator)) return overrideDate < parsedDate;
return overrideDate > parsedDate;
}
case 'semver_eq':
{
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)));
return 0 === cmp;
}
case 'semver_neq':
{
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)));
return 0 !== cmp;
}
case 'semver_gt':
{
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)));
return cmp > 0;
}
case 'semver_gte':
{
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)));
return cmp >= 0;
}
case 'semver_lt':
{
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)));
return cmp < 0;
}
case 'semver_lte':
{
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)));
return cmp <= 0;
}
case 'semver_tilde':
{
const overrideParsed = parseSemver(String(overrideValue));
const { lower, upper } = computeTildeBounds(String(value));
return compareSemverTuples(overrideParsed, lower) >= 0 && compareSemverTuples(overrideParsed, upper) < 0;
}
case 'semver_caret':
{
const overrideParsed = parseSemver(String(overrideValue));
const { lower, upper } = computeCaretBounds(String(value));
return compareSemverTuples(overrideParsed, lower) >= 0 && compareSemverTuples(overrideParsed, upper) < 0;
}
case 'semver_wildcard':
{
const overrideParsed = parseSemver(String(overrideValue));
const { lower, upper } = computeWildcardBounds(String(value));
return compareSemverTuples(overrideParsed, lower) >= 0 && compareSemverTuples(overrideParsed, upper) < 0;
}
default:
throw new InconclusiveMatchError(`Unknown operator: ${operator}`);
}
return (0, core_namespaceObject.matchFeatureFlagProperty)(property, propertyValues, {
warnFunction
});
}
function parseSemver(value) {
return (0, core_namespaceObject.parseFeatureFlagSemver)(value, 'strict');
}
function checkCohortExists(cohortId, cohortProperties) {

@@ -709,3 +548,3 @@ if (!(cohortId in cohortProperties)) throw new RequiresServerEvaluation(`cohort ${cohortId} not found in local cohorts - likely a static cohort that requires server evaluation`);

if (err instanceof RequiresServerEvaluation) throw err;
if (err instanceof InconclusiveMatchError) {
if (err instanceof core_namespaceObject.InconclusiveMatchError) {
if (debugMode) console.debug(`Failed to compute property ${prop} locally: ${err}`);

@@ -715,3 +554,3 @@ errorMatchingLocally = true;

}
if (errorMatchingLocally) throw new InconclusiveMatchError("Can't match cohort without a given cohort property value");
if (errorMatchingLocally) throw new core_namespaceObject.InconclusiveMatchError("Can't match cohort without a given cohort property value");
return 'AND' === propertyGroupType;

@@ -723,3 +562,3 @@ }

else if ('flag' === prop.type) {
if (!flagDependencyEvaluator) throw new InconclusiveMatchError(`Flag dependency '${prop.key || 'unknown'}' cannot be evaluated without a flag dependency evaluator`);
if (!flagDependencyEvaluator) throw new core_namespaceObject.InconclusiveMatchError(`Flag dependency '${prop.key || 'unknown'}' cannot be evaluated without a flag dependency evaluator`);
matches = await flagDependencyEvaluator(prop);

@@ -737,3 +576,3 @@ } else matches = matchProperty(prop, propertyValues);

if (err instanceof RequiresServerEvaluation) throw err;
if (err instanceof InconclusiveMatchError) {
if (err instanceof core_namespaceObject.InconclusiveMatchError) {
if (debugMode) console.debug(`Failed to compute property ${prop} locally: ${err}`);

@@ -743,161 +582,5 @@ errorMatchingLocally = true;

}
if (errorMatchingLocally) throw new InconclusiveMatchError("can't match cohort without a given cohort property value");
if (errorMatchingLocally) throw new core_namespaceObject.InconclusiveMatchError("can't match cohort without a given cohort property value");
return 'AND' === propertyGroupType;
}
function isValidRegex(regex) {
try {
new RegExp(regex);
return true;
} catch (err) {
return false;
}
}
function parseSemverNumericIdentifier(part, raw) {
if (!/^\d+$/.test(part)) throw new InconclusiveMatchError(`Invalid semver: ${raw}`);
if (part.length > 1 && '0' === part[0]) throw new InconclusiveMatchError(`Invalid semver: ${raw}`);
return parseInt(part, 10);
}
function parseSemver(value) {
const text = String(value).trim().replace(/^[vV]/, '');
const baseVersion = text.split('-')[0].split('+')[0];
if (!baseVersion || baseVersion.startsWith('.')) throw new InconclusiveMatchError(`Invalid semver: ${value}`);
const parts = baseVersion.split('.');
const parsePart = (part)=>{
if (void 0 === part || '' === part) return 0;
return parseSemverNumericIdentifier(part, value);
};
const major = parsePart(parts[0]);
const minor = parsePart(parts[1]);
const patch = parsePart(parts[2]);
return [
major,
minor,
patch
];
}
function compareSemverTuples(a, b) {
for(let i = 0; i < 3; i++){
if (a[i] < b[i]) return -1;
if (a[i] > b[i]) return 1;
}
return 0;
}
function computeTildeBounds(value) {
const parsed = parseSemver(value);
const lower = [
parsed[0],
parsed[1],
parsed[2]
];
const upper = [
parsed[0],
parsed[1] + 1,
0
];
return {
lower,
upper
};
}
function computeCaretBounds(value) {
const parsed = parseSemver(value);
const [major, minor, patch] = parsed;
const lower = [
major,
minor,
patch
];
let upper;
upper = major > 0 ? [
major + 1,
0,
0
] : minor > 0 ? [
0,
minor + 1,
0
] : [
0,
0,
patch + 1
];
return {
lower,
upper
};
}
function computeWildcardBounds(value) {
const text = String(value).trim().replace(/^[vV]/, '');
const cleanedText = text.replace(/\.\*$/, '').replace(/\*$/, '');
if (!cleanedText) throw new InconclusiveMatchError(`Invalid wildcard semver: ${value}`);
const parts = cleanedText.split('.');
const parseWildcardPart = (part)=>{
try {
return parseSemverNumericIdentifier(part, value);
} catch {
throw new InconclusiveMatchError(`Invalid wildcard semver: ${value}`);
}
};
const major = parseWildcardPart(parts[0]);
let lower;
let upper;
if (1 === parts.length) {
lower = [
major,
0,
0
];
upper = [
major + 1,
0,
0
];
} else {
const minor = parseWildcardPart(parts[1]);
lower = [
major,
minor,
0
];
upper = [
major,
minor + 1,
0
];
}
return {
lower,
upper
};
}
function convertToDateTime(value) {
if (value instanceof Date) return value;
if ('string' == typeof value || 'number' == typeof value) {
const date = new Date(value);
if (!isNaN(date.valueOf())) return date;
throw new InconclusiveMatchError(`${value} is in an invalid date format`);
}
throw new InconclusiveMatchError(`The date provided ${value} must be a string, number, or date object`);
}
function relativeDateParseForFeatureFlagMatching(value) {
const regex = /^-?(?<number>[0-9]+)(?<interval>[a-z])$/;
const match = value.match(regex);
const parsedDt = new Date(new Date().toISOString());
if (!match) return null;
{
if (!match.groups) return null;
const number = parseInt(match.groups['number']);
if (number >= 10000) return null;
const interval = match.groups['interval'];
if ('h' == interval) parsedDt.setUTCHours(parsedDt.getUTCHours() - number);
else if ('d' == interval) parsedDt.setUTCDate(parsedDt.getUTCDate() - number);
else if ('w' == interval) parsedDt.setUTCDate(parsedDt.getUTCDate() - 7 * number);
else if ('m' == interval) parsedDt.setUTCMonth(parsedDt.getUTCMonth() - number);
else {
if ('y' != interval) return null;
parsedDt.setUTCFullYear(parsedDt.getUTCFullYear() - number);
}
return parsedDt;
}
}
exports.ClientError = __webpack_exports__.ClientError;

@@ -904,0 +587,0 @@ exports.FeatureFlagsPoller = __webpack_exports__.FeatureFlagsPoller;

@@ -1,9 +0,3 @@

import { raceWithTimeout, safeSetTimeout } from "@posthog/core";
import { hashSHA1 } from "./crypto.mjs";
import { InconclusiveMatchError, getFeatureFlagHash, getFeatureFlagVariant, getFeatureFlagVariantLookupTable, matchFeatureFlagProperty, parseFeatureFlagSemver, raceWithTimeout, relativeDateParseForFeatureFlagMatching, resolveFeatureFlagPayload, safeSetTimeout } from "@posthog/core";
const SIXTY_SECONDS = 60000;
const LONG_SCALE = 0xfffffffffffffff;
const NULL_VALUES_ALLOWED_OPERATORS = [
'is_not',
'is_set'
];
class ClientError extends Error {

@@ -23,8 +17,2 @@ constructor(message){

}
class InconclusiveMatchError extends Error {
constructor(message){
super(message);
setCustomErrorPrototype(this, InconclusiveMatchError);
}
}
class RequiresServerEvaluation extends Error {

@@ -177,15 +165,3 @@ constructor(message){

getFeatureFlagPayload(key, flagValue) {
let payload = null;
if (false !== flagValue && null != flagValue) {
if ('boolean' == typeof flagValue) payload = this.featureFlagsByKey?.[key]?.filters?.payloads?.[flagValue.toString()] || null;
else if ('string' == typeof flagValue) payload = this.featureFlagsByKey?.[key]?.filters?.payloads?.[flagValue] || null;
if (null != payload) {
if ('object' == typeof payload) return payload;
if ('string' == typeof payload) try {
return JSON.parse(payload);
} catch {}
return payload;
}
}
return null;
return resolveFeatureFlagPayload(this.featureFlagsByKey?.[key]?.filters?.payloads, flagValue);
}

@@ -284,26 +260,10 @@ async evaluateFlagDependency(property, properties, evaluationContext) {

}
if (void 0 != rolloutPercentage && await _hash(flag.key, bucketingValue) > rolloutPercentage / 100.0) return 'out_of_rollout_bound';
if (void 0 != rolloutPercentage && await getFeatureFlagHash(flag.key, bucketingValue) > rolloutPercentage / 100.0) return 'out_of_rollout_bound';
return 'match';
}
async getMatchingVariant(flag, bucketingValue) {
const hashValue = await _hash(flag.key, bucketingValue, 'variant');
const matchingVariant = this.variantLookupTable(flag).find((variant)=>hashValue >= variant.valueMin && hashValue < variant.valueMax);
if (matchingVariant) return matchingVariant.key;
return getFeatureFlagVariant(flag.key, bucketingValue, flag.filters?.multivariate?.variants || []);
}
variantLookupTable(flag) {
const lookupTable = [];
let valueMin = 0;
let valueMax = 0;
const flagFilters = flag.filters || {};
const multivariates = flagFilters.multivariate?.variants || [];
multivariates.forEach((variant)=>{
valueMax = valueMin + variant.rollout_percentage / 100.0;
lookupTable.push({
valueMin,
valueMax,
key: variant.key
});
valueMin = valueMax;
});
return lookupTable;
return getFeatureFlagVariantLookupTable(flag.filters?.multivariate?.variants || []);
}

@@ -512,131 +472,10 @@ updateFlagState(flagData) {

}
async function _hash(key, bucketingValue, salt = '') {
const hashString = await hashSHA1(`${key}.${bucketingValue}${salt}`);
return parseInt(hashString.slice(0, 15), 16) / LONG_SCALE;
}
function matchProperty(property, propertyValues, warnFunction) {
const key = property.key;
const value = property.value;
const operator = property.operator || 'exact';
if (key in propertyValues) {
if ('is_not_set' === operator) return false;
} else {
if ('is_not_set' === operator) return true;
throw new InconclusiveMatchError(`Property ${key} not found in propertyValues`);
}
const overrideValue = propertyValues[key];
if (null == overrideValue && !NULL_VALUES_ALLOWED_OPERATORS.includes(operator)) {
if (warnFunction) warnFunction(`Property ${key} cannot have a value of null/undefined with the ${operator} operator`);
return false;
}
function computeExactMatch(value, overrideValue) {
if (Array.isArray(value)) return value.map((val)=>String(val).toLowerCase()).includes(String(overrideValue).toLowerCase());
return String(value).toLowerCase() === String(overrideValue).toLowerCase();
}
function compare(lhs, rhs, operator) {
if ('gt' === operator) return lhs > rhs;
if ('gte' === operator) return lhs >= rhs;
if ('lt' === operator) return lhs < rhs;
if ('lte' === operator) return lhs <= rhs;
throw new Error(`Invalid operator: ${operator}`);
}
switch(operator){
case 'exact':
return computeExactMatch(value, overrideValue);
case 'is_not':
return !computeExactMatch(value, overrideValue);
case 'is_set':
return key in propertyValues;
case 'icontains':
return String(overrideValue).toLowerCase().includes(String(value).toLowerCase());
case 'not_icontains':
return !String(overrideValue).toLowerCase().includes(String(value).toLowerCase());
case 'starts_with':
return String(overrideValue).toLowerCase().startsWith(String(value).toLowerCase());
case 'not_starts_with':
return !String(overrideValue).toLowerCase().startsWith(String(value).toLowerCase());
case 'ends_with':
return String(overrideValue).toLowerCase().endsWith(String(value).toLowerCase());
case 'not_ends_with':
return !String(overrideValue).toLowerCase().endsWith(String(value).toLowerCase());
case 'regex':
return isValidRegex(String(value)) && null !== String(overrideValue).match(String(value));
case 'not_regex':
return isValidRegex(String(value)) && null === String(overrideValue).match(String(value));
case 'gt':
case 'gte':
case 'lt':
case 'lte':
{
const parsedValue = 'number' == typeof value ? value : parseFloat(String(value));
let parsedOverride;
parsedOverride = 'number' == typeof overrideValue ? overrideValue : null != overrideValue ? parseFloat(String(overrideValue)) : NaN;
if (Number.isFinite(parsedValue) && Number.isFinite(parsedOverride)) return compare(parsedOverride, parsedValue, operator);
return compare(String(overrideValue), String(value), operator);
}
case 'is_date_after':
case 'is_date_before':
{
if ('boolean' == typeof value) throw new InconclusiveMatchError("Date operations cannot be performed on boolean values");
let parsedDate = relativeDateParseForFeatureFlagMatching(String(value));
if (null == parsedDate) parsedDate = convertToDateTime(value);
if (null == parsedDate) throw new InconclusiveMatchError(`Invalid date: ${value}`);
const overrideDate = convertToDateTime(overrideValue);
if ([
'is_date_before'
].includes(operator)) return overrideDate < parsedDate;
return overrideDate > parsedDate;
}
case 'semver_eq':
{
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)));
return 0 === cmp;
}
case 'semver_neq':
{
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)));
return 0 !== cmp;
}
case 'semver_gt':
{
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)));
return cmp > 0;
}
case 'semver_gte':
{
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)));
return cmp >= 0;
}
case 'semver_lt':
{
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)));
return cmp < 0;
}
case 'semver_lte':
{
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)));
return cmp <= 0;
}
case 'semver_tilde':
{
const overrideParsed = parseSemver(String(overrideValue));
const { lower, upper } = computeTildeBounds(String(value));
return compareSemverTuples(overrideParsed, lower) >= 0 && compareSemverTuples(overrideParsed, upper) < 0;
}
case 'semver_caret':
{
const overrideParsed = parseSemver(String(overrideValue));
const { lower, upper } = computeCaretBounds(String(value));
return compareSemverTuples(overrideParsed, lower) >= 0 && compareSemverTuples(overrideParsed, upper) < 0;
}
case 'semver_wildcard':
{
const overrideParsed = parseSemver(String(overrideValue));
const { lower, upper } = computeWildcardBounds(String(value));
return compareSemverTuples(overrideParsed, lower) >= 0 && compareSemverTuples(overrideParsed, upper) < 0;
}
default:
throw new InconclusiveMatchError(`Unknown operator: ${operator}`);
}
return matchFeatureFlagProperty(property, propertyValues, {
warnFunction
});
}
function parseSemver(value) {
return parseFeatureFlagSemver(value, 'strict');
}
function checkCohortExists(cohortId, cohortProperties) {

@@ -698,158 +537,2 @@ if (!(cohortId in cohortProperties)) throw new RequiresServerEvaluation(`cohort ${cohortId} not found in local cohorts - likely a static cohort that requires server evaluation`);

}
function isValidRegex(regex) {
try {
new RegExp(regex);
return true;
} catch (err) {
return false;
}
}
function parseSemverNumericIdentifier(part, raw) {
if (!/^\d+$/.test(part)) throw new InconclusiveMatchError(`Invalid semver: ${raw}`);
if (part.length > 1 && '0' === part[0]) throw new InconclusiveMatchError(`Invalid semver: ${raw}`);
return parseInt(part, 10);
}
function parseSemver(value) {
const text = String(value).trim().replace(/^[vV]/, '');
const baseVersion = text.split('-')[0].split('+')[0];
if (!baseVersion || baseVersion.startsWith('.')) throw new InconclusiveMatchError(`Invalid semver: ${value}`);
const parts = baseVersion.split('.');
const parsePart = (part)=>{
if (void 0 === part || '' === part) return 0;
return parseSemverNumericIdentifier(part, value);
};
const major = parsePart(parts[0]);
const minor = parsePart(parts[1]);
const patch = parsePart(parts[2]);
return [
major,
minor,
patch
];
}
function compareSemverTuples(a, b) {
for(let i = 0; i < 3; i++){
if (a[i] < b[i]) return -1;
if (a[i] > b[i]) return 1;
}
return 0;
}
function computeTildeBounds(value) {
const parsed = parseSemver(value);
const lower = [
parsed[0],
parsed[1],
parsed[2]
];
const upper = [
parsed[0],
parsed[1] + 1,
0
];
return {
lower,
upper
};
}
function computeCaretBounds(value) {
const parsed = parseSemver(value);
const [major, minor, patch] = parsed;
const lower = [
major,
minor,
patch
];
let upper;
upper = major > 0 ? [
major + 1,
0,
0
] : minor > 0 ? [
0,
minor + 1,
0
] : [
0,
0,
patch + 1
];
return {
lower,
upper
};
}
function computeWildcardBounds(value) {
const text = String(value).trim().replace(/^[vV]/, '');
const cleanedText = text.replace(/\.\*$/, '').replace(/\*$/, '');
if (!cleanedText) throw new InconclusiveMatchError(`Invalid wildcard semver: ${value}`);
const parts = cleanedText.split('.');
const parseWildcardPart = (part)=>{
try {
return parseSemverNumericIdentifier(part, value);
} catch {
throw new InconclusiveMatchError(`Invalid wildcard semver: ${value}`);
}
};
const major = parseWildcardPart(parts[0]);
let lower;
let upper;
if (1 === parts.length) {
lower = [
major,
0,
0
];
upper = [
major + 1,
0,
0
];
} else {
const minor = parseWildcardPart(parts[1]);
lower = [
major,
minor,
0
];
upper = [
major,
minor + 1,
0
];
}
return {
lower,
upper
};
}
function convertToDateTime(value) {
if (value instanceof Date) return value;
if ('string' == typeof value || 'number' == typeof value) {
const date = new Date(value);
if (!isNaN(date.valueOf())) return date;
throw new InconclusiveMatchError(`${value} is in an invalid date format`);
}
throw new InconclusiveMatchError(`The date provided ${value} must be a string, number, or date object`);
}
function relativeDateParseForFeatureFlagMatching(value) {
const regex = /^-?(?<number>[0-9]+)(?<interval>[a-z])$/;
const match = value.match(regex);
const parsedDt = new Date(new Date().toISOString());
if (!match) return null;
{
if (!match.groups) return null;
const number = parseInt(match.groups['number']);
if (number >= 10000) return null;
const interval = match.groups['interval'];
if ('h' == interval) parsedDt.setUTCHours(parsedDt.getUTCHours() - number);
else if ('d' == interval) parsedDt.setUTCDate(parsedDt.getUTCDate() - number);
else if ('w' == interval) parsedDt.setUTCDate(parsedDt.getUTCDate() - 7 * number);
else if ('m' == interval) parsedDt.setUTCMonth(parsedDt.getUTCMonth() - number);
else {
if ('y' != interval) return null;
parsedDt.setUTCFullYear(parsedDt.getUTCFullYear() - number);
}
return parsedDt;
}
}
export { ClientError, FeatureFlagsPoller, InconclusiveMatchError, RequiresServerEvaluation, matchProperty, parseSemver, relativeDateParseForFeatureFlagMatching };

@@ -96,5 +96,6 @@ import type { PostHogCoreOptions, ExceptionRateLimiterConfig, FeatureFlagValue, JsonType, Metrics, MetricsConfig, PostHogFetchOptions, PostHogFetchResponse, PostHogFlagsAndPayloadsResponse, Properties } from '@posthog/core';

* Restrict local evaluation, the `/flags` request, and the returned snapshot to these keys.
* `evaluateFlags()` falls back remotely when a requested key is missing from local definitions
* unless `onlyEvaluateLocally` is true. Remote evaluation responses are not cached, so a key
* missing both locally and remotely costs one `/flags` request per `evaluateFlags()` call.
* An empty array returns an empty snapshot without evaluating flags; omitting this option
* evaluates all flags. `evaluateFlags()` falls back remotely when a requested key is missing
* from local definitions unless `onlyEvaluateLocally` is true. Remote evaluation responses are
* not cached, so a key missing both locally and remotely costs one `/flags` request per call.
*/

@@ -101,0 +102,0 @@ flagKeys?: string[];

@@ -1,1 +0,1 @@

{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,0BAA0B,EAC1B,gBAAgB,EAChB,QAAQ,EACR,OAAO,EACP,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,+BAA+B,EAC/B,UAAU,EACX,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAExE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AACxE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAA;AAEnF,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAA;IACzC,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAA;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,gBAAgB,CAAC,EAAE,UAAU,CAAA;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAC5C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,GAAG;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAA;IACxC;;;;OAIG;IACH,KAAK,CAAC,EAAE,sBAAsB,CAAA;IAC9B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAA;IACpD,gHAAgH;IAChH,SAAS,CAAC,EAAE,IAAI,CAAA;IAChB,iFAAiF;IACjF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;OAIG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAA;CAC1C,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAA;IACzC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,KAAK,GAAG,IAAI,CAAA;IAClB,MAAM,EAAE,aAAa,EAAE,GAAG,YAAY,EAAE,CAAA;CACzC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,iBAAiB,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,CAAA;AAE/E;;;;;;;;GAQG;AACH,MAAM,MAAM,2BAA2B,GACnC,KAAK,GACL,MAAM,EAAE,GACR,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAChC,0BAA0B,CAAA;AAE9B,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,gBAAgB,CAAC,EAAE,UAAU,CAAA;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAC5C,iFAAiF;IACjF,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AACD,MAAM,MAAM,qBAAqB,GAAG,yBAAyB,GAAG;IAC9D,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,yBAAyB,GAAG;IACxD;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;IAC3D;;;;OAIG;IACH,QAAQ,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;CAC5C,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,EAAE,YAAY,EAAE,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4BAA4B,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC7C,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG,aAAa,GAAG,WAAW,GAAG,EAAE,GAAG,IAAI,CAAA;AAEpF,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,KAAK,YAAY,GAAG,IAAI,CAAA;AAE9E,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,EAAE,aAAa,GAAG,eAAe,GAAG,cAAc,CAAC,GAAG;IACxG,WAAW,CAAC,EAAE,QAAQ,CAAA;IACtB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,0BAA0B,CAAC,EAAE,OAAO,CAAA;IAEpC,2BAA2B,CAAC,EAAE,MAAM,CAAA;IAEpC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAA;IAGpF,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,2BAA2B,CAAC,EAAE,2BAA2B,CAAA;IACzD;;;;OAIG;IACH,WAAW,CAAC,EAAE,YAAY,GAAG,YAAY,EAAE,CAAA;IAC3C;;;;;;;;;OASG;IACH,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACtC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC1C;;;;;OAKG;IACH,yBAAyB,CAAC,EAAE,MAAM,EAAE,CAAA;IACpC;;;;;;;;;;;;;;;;OAgBG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAA;IACzC;;;;;;;;;OASG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B;;;;;;OAMG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,CAAA;IAC/C;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B,GAAG,0BAA0B,CAAA;AAE9B,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,oBAAoB,CAAC,EAAE,8BAA8B,CAAA;IACrD,OAAO,CAAC,EAAE;QACR,4BAA4B,CAAC,EAAE,MAAM,CAAA;QACrC,MAAM,CAAC,EAAE,oBAAoB,EAAE,CAAA;QAC/B,YAAY,CAAC,EAAE;YACb,QAAQ,EAAE;gBACR,GAAG,EAAE,MAAM,CAAA;gBACX,kBAAkB,EAAE,MAAM,CAAA;aAC3B,EAAE,CAAA;SACJ,CAAA;QACD,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAIjC,UAAU,CAAC,EAAE,OAAO,CAAA;KACrB,CAAA;IACD,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,kBAAkB,EAAE,IAAI,GAAG,MAAM,CAAA;IACjC,4BAA4B,EAAE,OAAO,CAAA;IACrC,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,8FAA8F;IAC9F,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAA;AAEV,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,GAAG,MAAM,CAAA;AAEpG;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAA;CAC9B,CAAA;AAED,MAAM,WAAW,QAAQ;IACvB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,YAAY,GAAG,IAAI,CAAA;IAE/F;;;;;;;;OAQG;IACH,gBAAgB,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEjH;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CAAA;IAE/G;;;;;;;;;OASG;IACH,kBAAkB,CAAC,EACjB,UAAU,EACV,KAAK,EACL,UAAU,EACV,MAAM,EACN,KAAK,EACL,gBAAgB,GACjB,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAE7C;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,eAAe,GAAG,IAAI,CAAA;IAE3D;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE7E;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE,0BAA0B,GAAG,IAAI,CAAA;IAEjG;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,4BAA4B,GAAG,IAAI,CAAA;IAErF;;;;;;;;;;OAUG;IACH,KAAK,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IAExD;;;;;OAKG;IACH,cAAc,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE1E;;;;;;;;;;;;;;;;;;OAkBG;IACH,gBAAgB,CACd,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC/B,gBAAgB,CAAC,EAAE,UAAU,CAAA;QAC7B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;QAC5C,mBAAmB,CAAC,EAAE,OAAO,CAAA;QAC7B,qBAAqB,CAAC,EAAE,OAAO,CAAA;KAChC,GACA,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAAA;IAE/B;;;;;;;;;;;;;;;;;;OAkBG;IACH,cAAc,CACZ,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC/B,gBAAgB,CAAC,EAAE,UAAU,CAAA;QAC7B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;QAC5C,mBAAmB,CAAC,EAAE,OAAO,CAAA;QAC7B,qBAAqB,CAAC,EAAE,OAAO,CAAA;KAChC,GACA,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAA;IAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,qBAAqB,CACnB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,UAAU,CAAC,EAAE,gBAAgB,EAC7B,OAAO,CAAC,EAAE;QACR,mBAAmB,CAAC,EAAE,OAAO,CAAA;KAC9B,GACA,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAA;IAEhC;;OAEG;IACH,WAAW,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAA;IAEjF;;;;;;OAMG;IACH,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAA;IAErG;;OAEG;IACH,sBAAsB,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAA;IAE3F;;;;;;OAMG;IACH,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAA;IAE/G;;OAEG;IACH,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAAA;IAE1G;;;;;;;;;;;;;;;;;;OAkBG;IACH,oBAAoB,CAClB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAAA;IAEzC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,aAAa,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAA;IACzE;;;;;OAKG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAA;IAE7F;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,oBAAoB,GAAG,IAAI,CAAA;IAE9E;;;;;;;OAOG;IACH,sBAAsB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEhG;;;OAGG;IACH,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEnC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,oBAAoB,CAAC,SAAS,EAAE,2BAA2B,GAAG,IAAI,CAAA;IAElE;;;;;;OAMG;IACH,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,CAAC,CAAA;IAEpF;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,IAAI,CAAA;IAExE;;;OAGG;IACH,UAAU,IAAI,WAAW,GAAG,SAAS,CAAA;IAErC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IAEzB;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEnD;;;;OAIG;IACH,2BAA2B,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEjE;;;OAGG;IACH,sBAAsB,IAAI,OAAO,CAAA;CAClC"}

@@ -1,2 +0,2 @@

export declare const version = "5.51.1";
export declare const version = "5.51.2";
//# sourceMappingURL=version.d.ts.map

@@ -29,3 +29,3 @@ "use strict";

});
const version = '5.51.1';
const version = '5.51.2';
exports.version = __webpack_exports__.version;

@@ -32,0 +32,0 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [

@@ -1,2 +0,2 @@

const version = '5.51.1';
const version = '5.51.2';
export { version };
{
"name": "posthog-node",
"version": "5.51.1",
"version": "5.51.2",
"bugs": {

@@ -31,3 +31,3 @@ "url": "https://github.com/PostHog/posthog-js/issues"

"dependencies": {
"@posthog/core": "^1.48.9"
"@posthog/core": "^1.48.11"
},

@@ -34,0 +34,0 @@ "devDependencies": {

/// <reference lib="dom" />
export async function hashSHA1(text: string): Promise<string> {
const subtle = globalThis.crypto?.subtle
if (!subtle) {
throw new Error('SubtleCrypto API not available')
}
const hashBuffer = await subtle.digest('SHA-1', new TextEncoder().encode(text))
const hashArray = Array.from(new Uint8Array(hashBuffer))
return hashArray.map((byte) => byte.toString(16).padStart(2, '0')).join('')
}
export { hashSHA1 } from '@posthog/core'
import { FeatureFlagCondition, FlagProperty, FlagPropertyValue, PostHogFeatureFlag, PropertyGroup } from '../../types'
import type { FeatureFlagValue, JsonType, PostHogFetchOptions, PostHogFetchResponse } from '@posthog/core'
import { raceWithTimeout, safeSetTimeout } from '@posthog/core'
import { hashSHA1 } from './crypto'
import {
getFeatureFlagHash,
getFeatureFlagVariant,
getFeatureFlagVariantLookupTable,
InconclusiveMatchError,
matchFeatureFlagProperty,
parseFeatureFlagSemver,
raceWithTimeout,
relativeDateParseForFeatureFlagMatching,
resolveFeatureFlagPayload,
safeSetTimeout,
} from '@posthog/core'
import { FlagDefinitionCacheProvider, FlagDefinitionCacheData } from './cache'

@@ -9,10 +19,2 @@

// eslint-disable-next-line
const LONG_SCALE = 0xfffffffffffffff
// Operators that should still run their switch case when the property value is null/undefined.
// `is_not` may legitimately compare against null; `is_set` only cares about key presence and
// must not be short-circuited by the null guard in `matchProperty`.
const NULL_VALUES_ALLOWED_OPERATORS = ['is_not', 'is_set']
// Outcome of evaluating a single condition group. `out_of_rollout_bound` means the group's property

@@ -42,9 +44,2 @@ // filters matched (or there were none) but the rollout percentage excluded the user — the only case

class InconclusiveMatchError extends Error {
constructor(message: string) {
super(message)
setCustomErrorPrototype(this, InconclusiveMatchError)
}
}
class RequiresServerEvaluation extends Error {

@@ -383,30 +378,3 @@ constructor(message: string) {

private getFeatureFlagPayload(key: string, flagValue: FeatureFlagValue): JsonType | null {
let payload: JsonType | null = null
if (flagValue !== false && flagValue !== null && flagValue !== undefined) {
if (typeof flagValue == 'boolean') {
payload = this.featureFlagsByKey?.[key]?.filters?.payloads?.[flagValue.toString()] || null
} else if (typeof flagValue == 'string') {
payload = this.featureFlagsByKey?.[key]?.filters?.payloads?.[flagValue] || null
}
if (payload !== null && payload !== undefined) {
// If payload is already an object, return it directly
if (typeof payload === 'object') {
return payload
}
// If payload is a string, try to parse it as JSON
if (typeof payload === 'string') {
try {
return JSON.parse(payload)
} catch {
// If parsing fails, return the string as is
return payload
}
}
// For other types, return as is
return payload
}
}
return null
return resolveFeatureFlagPayload(this.featureFlagsByKey?.[key]?.filters?.payloads, flagValue)
}

@@ -646,3 +614,6 @@

// user was targeted but excluded by rollout — the server-side engine's `OutOfRolloutBound`.
if (rolloutPercentage != undefined && (await _hash(flag.key, bucketingValue)) > rolloutPercentage / 100.0) {
if (
rolloutPercentage != undefined &&
(await getFeatureFlagHash(flag.key, bucketingValue)) > rolloutPercentage / 100.0
) {
return 'out_of_rollout_bound'

@@ -655,29 +626,7 @@ }

async getMatchingVariant(flag: PostHogFeatureFlag, bucketingValue: string): Promise<FeatureFlagValue | undefined> {
const hashValue = await _hash(flag.key, bucketingValue, 'variant')
const matchingVariant = this.variantLookupTable(flag).find((variant) => {
return hashValue >= variant.valueMin && hashValue < variant.valueMax
})
if (matchingVariant) {
return matchingVariant.key
}
return undefined
return getFeatureFlagVariant(flag.key, bucketingValue, flag.filters?.multivariate?.variants || [])
}
variantLookupTable(flag: PostHogFeatureFlag): { valueMin: number; valueMax: number; key: string }[] {
const lookupTable: { valueMin: number; valueMax: number; key: string }[] = []
let valueMin = 0
let valueMax = 0
const flagFilters = flag.filters || {}
const multivariates: {
key: string
rollout_percentage: number
}[] = flagFilters.multivariate?.variants || []
multivariates.forEach((variant) => {
valueMax = valueMin + variant.rollout_percentage / 100.0
lookupTable.push({ valueMin, valueMax, key: variant.key })
valueMin = valueMax
})
return lookupTable
return getFeatureFlagVariantLookupTable(flag.filters?.multivariate?.variants || [])
}

@@ -1086,11 +1035,2 @@

// # This function takes a bucketing identifier and a feature flag key and returns a float between 0 and 1.
// # Given the same bucketing identifier and key, it'll always return the same float. These floats are
// # uniformly distributed between 0 and 1, so if we want to show this feature to 20% of traffic
// # we can do _hash(key, bucketing_identifier) < 0.2
async function _hash(key: string, bucketingValue: string, salt: string = ''): Promise<number> {
const hashString = await hashSHA1(`${key}.${bucketingValue}${salt}`)
return parseInt(hashString.slice(0, 15), 16) / LONG_SCALE
}
function matchProperty(

@@ -1101,158 +1041,7 @@ property: FeatureFlagCondition['properties'][number],

): boolean {
const key = property.key
const value = property.value
const operator = property.operator || 'exact'
return matchFeatureFlagProperty(property, propertyValues, { warnFunction })
}
if (!(key in propertyValues)) {
// When the property is genuinely absent we can answer `is_not_set` locally — no need to
// bail out as inconclusive and force the flag to return undefined.
if (operator === 'is_not_set') {
return true
}
throw new InconclusiveMatchError(`Property ${key} not found in propertyValues`)
} else if (operator === 'is_not_set') {
return false
}
const overrideValue = propertyValues[key]
if (overrideValue == null && !NULL_VALUES_ALLOWED_OPERATORS.includes(operator)) {
// if the value is null, just fail the feature flag comparison
// this isn't an InconclusiveMatchError because the property value was provided.
if (warnFunction) {
warnFunction(`Property ${key} cannot have a value of null/undefined with the ${operator} operator`)
}
return false
}
function computeExactMatch(value: any, overrideValue: any): boolean {
if (Array.isArray(value)) {
return value.map((val) => String(val).toLowerCase()).includes(String(overrideValue).toLowerCase())
}
return String(value).toLowerCase() === String(overrideValue).toLowerCase()
}
function compare(lhs: any, rhs: any, operator: string): boolean {
if (operator === 'gt') {
return lhs > rhs
} else if (operator === 'gte') {
return lhs >= rhs
} else if (operator === 'lt') {
return lhs < rhs
} else if (operator === 'lte') {
return lhs <= rhs
} else {
throw new Error(`Invalid operator: ${operator}`)
}
}
switch (operator) {
case 'exact':
return computeExactMatch(value, overrideValue)
case 'is_not':
return !computeExactMatch(value, overrideValue)
case 'is_set':
return key in propertyValues
case 'icontains':
return String(overrideValue).toLowerCase().includes(String(value).toLowerCase())
case 'not_icontains':
return !String(overrideValue).toLowerCase().includes(String(value).toLowerCase())
case 'starts_with':
return String(overrideValue).toLowerCase().startsWith(String(value).toLowerCase())
case 'not_starts_with':
return !String(overrideValue).toLowerCase().startsWith(String(value).toLowerCase())
case 'ends_with':
return String(overrideValue).toLowerCase().endsWith(String(value).toLowerCase())
case 'not_ends_with':
return !String(overrideValue).toLowerCase().endsWith(String(value).toLowerCase())
case 'regex':
return isValidRegex(String(value)) && String(overrideValue).match(String(value)) !== null
case 'not_regex':
return isValidRegex(String(value)) && String(overrideValue).match(String(value)) === null
case 'gt':
case 'gte':
case 'lt':
case 'lte': {
// Try a numeric comparison first; only fall back to lexicographic when one side genuinely
// isn't a number. `parseFloat` returns NaN for non-numeric strings, so `Number.isFinite`
// is the right guard — `NaN != null` would slip through and produce nonsense comparisons
// like `NaN > 5`. Likewise, when a person property arrives as the string `"10"` we want
// `"10" > "9"` to evaluate numerically (true), not lexicographically (false).
const parsedValue = typeof value === 'number' ? value : parseFloat(String(value))
let parsedOverride: number
if (typeof overrideValue === 'number') {
parsedOverride = overrideValue
} else if (overrideValue != null) {
parsedOverride = parseFloat(String(overrideValue))
} else {
parsedOverride = NaN
}
if (Number.isFinite(parsedValue) && Number.isFinite(parsedOverride)) {
return compare(parsedOverride, parsedValue, operator)
}
return compare(String(overrideValue), String(value), operator)
}
case 'is_date_after':
case 'is_date_before': {
// Boolean values should never be used with date operations
if (typeof value === 'boolean') {
throw new InconclusiveMatchError(`Date operations cannot be performed on boolean values`)
}
let parsedDate = relativeDateParseForFeatureFlagMatching(String(value))
if (parsedDate == null) {
parsedDate = convertToDateTime(value)
}
if (parsedDate == null) {
throw new InconclusiveMatchError(`Invalid date: ${value}`)
}
const overrideDate = convertToDateTime(overrideValue)
if (['is_date_before'].includes(operator)) {
return overrideDate < parsedDate
}
return overrideDate > parsedDate
}
case 'semver_eq': {
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)))
return cmp === 0
}
case 'semver_neq': {
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)))
return cmp !== 0
}
case 'semver_gt': {
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)))
return cmp > 0
}
case 'semver_gte': {
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)))
return cmp >= 0
}
case 'semver_lt': {
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)))
return cmp < 0
}
case 'semver_lte': {
const cmp = compareSemverTuples(parseSemver(String(overrideValue)), parseSemver(String(value)))
return cmp <= 0
}
case 'semver_tilde': {
const overrideParsed = parseSemver(String(overrideValue))
const { lower, upper } = computeTildeBounds(String(value))
return compareSemverTuples(overrideParsed, lower) >= 0 && compareSemverTuples(overrideParsed, upper) < 0
}
case 'semver_caret': {
const overrideParsed = parseSemver(String(overrideValue))
const { lower, upper } = computeCaretBounds(String(value))
return compareSemverTuples(overrideParsed, lower) >= 0 && compareSemverTuples(overrideParsed, upper) < 0
}
case 'semver_wildcard': {
const overrideParsed = parseSemver(String(overrideValue))
const { lower, upper } = computeWildcardBounds(String(value))
return compareSemverTuples(overrideParsed, lower) >= 0 && compareSemverTuples(overrideParsed, upper) < 0
}
default:
throw new InconclusiveMatchError(`Unknown operator: ${operator}`)
}
function parseSemver(value: string): [number, number, number] {
return parseFeatureFlagSemver(value, 'strict')
}

@@ -1406,200 +1195,2 @@

function isValidRegex(regex: string): boolean {
try {
new RegExp(regex)
return true
} catch (err) {
return false
}
}
type SemverTuple = [number, number, number]
/**
* Parse a single numeric identifier from a semver string.
* Per semver 2.0.0 §2, numeric identifiers MUST NOT include leading zeros.
*/
function parseSemverNumericIdentifier(part: string, raw: string): number {
if (!/^\d+$/.test(part)) {
throw new InconclusiveMatchError(`Invalid semver: ${raw}`)
}
if (part.length > 1 && part[0] === '0') {
throw new InconclusiveMatchError(`Invalid semver: ${raw}`)
}
return parseInt(part, 10)
}
/**
* Parse a version string into a [major, minor, patch] tuple.
* - Strips leading/trailing whitespace
* - Strips 'v' or 'V' prefix
* - Strips pre-release and build metadata (-alpha, +build)
* - Defaults missing components to 0
* - Ignores extra components beyond the third
* - Throws InconclusiveMatchError for invalid input
*/
function parseSemver(value: string): SemverTuple {
const text = String(value).trim().replace(/^[vV]/, '')
// Strip pre-release and build metadata
const baseVersion = text.split('-')[0].split('+')[0]
if (!baseVersion || baseVersion.startsWith('.')) {
throw new InconclusiveMatchError(`Invalid semver: ${value}`)
}
const parts = baseVersion.split('.')
const parsePart = (part: string | undefined): number => {
if (part === undefined || part === '') {
return 0
}
return parseSemverNumericIdentifier(part, value)
}
const major = parsePart(parts[0])
const minor = parsePart(parts[1])
const patch = parsePart(parts[2])
return [major, minor, patch]
}
/**
* Compare two semver tuples.
* Returns -1 if a < b, 0 if a == b, 1 if a > b
*/
function compareSemverTuples(a: SemverTuple, b: SemverTuple): number {
for (let i = 0; i < 3; i++) {
if (a[i] < b[i]) return -1
if (a[i] > b[i]) return 1
}
return 0
}
/**
* Compute bounds for tilde operator: ~X.Y.Z means >=X.Y.Z and <X.(Y+1).0
*/
function computeTildeBounds(value: string): { lower: SemverTuple; upper: SemverTuple } {
const parsed = parseSemver(value)
const lower: SemverTuple = [parsed[0], parsed[1], parsed[2]]
const upper: SemverTuple = [parsed[0], parsed[1] + 1, 0]
return { lower, upper }
}
/**
* Compute bounds for caret operator:
* - ^X.Y.Z where X > 0: >=X.Y.Z <(X+1).0.0
* - ^0.Y.Z where Y > 0: >=0.Y.Z <0.(Y+1).0
* - ^0.0.Z: >=0.0.Z <0.0.(Z+1)
*/
function computeCaretBounds(value: string): { lower: SemverTuple; upper: SemverTuple } {
const parsed = parseSemver(value)
const [major, minor, patch] = parsed
const lower: SemverTuple = [major, minor, patch]
let upper: SemverTuple
if (major > 0) {
upper = [major + 1, 0, 0]
} else if (minor > 0) {
upper = [0, minor + 1, 0]
} else {
upper = [0, 0, patch + 1]
}
return { lower, upper }
}
/**
* Compute bounds for wildcard operator:
* - "X.*" or "X" with wildcard: >=X.0.0 <(X+1).0.0
* - "X.Y.*": >=X.Y.0 <X.(Y+1).0
*/
function computeWildcardBounds(value: string): { lower: SemverTuple; upper: SemverTuple } {
const text = String(value).trim().replace(/^[vV]/, '')
// Remove trailing .* or *
const cleanedText = text.replace(/\.\*$/, '').replace(/\*$/, '')
if (!cleanedText) {
throw new InconclusiveMatchError(`Invalid wildcard semver: ${value}`)
}
const parts = cleanedText.split('.')
const parseWildcardPart = (part: string): number => {
try {
return parseSemverNumericIdentifier(part, value)
} catch {
throw new InconclusiveMatchError(`Invalid wildcard semver: ${value}`)
}
}
const major = parseWildcardPart(parts[0])
let lower: SemverTuple
let upper: SemverTuple
if (parts.length === 1) {
// X.* pattern
lower = [major, 0, 0]
upper = [major + 1, 0, 0]
} else {
// X.Y.* pattern
const minor = parseWildcardPart(parts[1])
lower = [major, minor, 0]
upper = [major, minor + 1, 0]
}
return { lower, upper }
}
function convertToDateTime(value: FlagPropertyValue | Date): Date {
if (value instanceof Date) {
return value
} else if (typeof value === 'string' || typeof value === 'number') {
const date = new Date(value)
if (!isNaN(date.valueOf())) {
return date
}
throw new InconclusiveMatchError(`${value} is in an invalid date format`)
} else {
throw new InconclusiveMatchError(`The date provided ${value} must be a string, number, or date object`)
}
}
function relativeDateParseForFeatureFlagMatching(value: string): Date | null {
const regex = /^-?(?<number>[0-9]+)(?<interval>[a-z])$/
const match = value.match(regex)
const parsedDt = new Date(new Date().toISOString())
if (match) {
if (!match.groups) {
return null
}
const number = parseInt(match.groups['number'])
if (number >= 10000) {
// Guard against overflow, disallow numbers greater than 10_000
return null
}
const interval = match.groups['interval']
if (interval == 'h') {
parsedDt.setUTCHours(parsedDt.getUTCHours() - number)
} else if (interval == 'd') {
parsedDt.setUTCDate(parsedDt.getUTCDate() - number)
} else if (interval == 'w') {
parsedDt.setUTCDate(parsedDt.getUTCDate() - number * 7)
} else if (interval == 'm') {
parsedDt.setUTCMonth(parsedDt.getUTCMonth() - number)
} else if (interval == 'y') {
parsedDt.setUTCFullYear(parsedDt.getUTCFullYear() - number)
} else {
return null
}
return parsedDt
} else {
return null
}
}
export {

@@ -1606,0 +1197,0 @@ FeatureFlagsPoller,

@@ -124,5 +124,6 @@ import type {

* Restrict local evaluation, the `/flags` request, and the returned snapshot to these keys.
* `evaluateFlags()` falls back remotely when a requested key is missing from local definitions
* unless `onlyEvaluateLocally` is true. Remote evaluation responses are not cached, so a key
* missing both locally and remotely costs one `/flags` request per `evaluateFlags()` call.
* An empty array returns an empty snapshot without evaluating flags; omitting this option
* evaluates all flags. `evaluateFlags()` falls back remotely when a requested key is missing
* from local definitions unless `onlyEvaluateLocally` is true. Remote evaluation responses are
* not cached, so a key missing both locally and remotely costs one `/flags` request per call.
*/

@@ -129,0 +130,0 @@ flagKeys?: string[]

@@ -1,1 +0,1 @@

export const version = '5.51.1'
export const version = '5.51.2'

Sorry, the diff of this file is too big to display