@leanbase.com/js 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"leanbase.iife.js","sources":["../../core/dist/featureFlagUtils.mjs","../../core/dist/vendor/uuidv7.mjs","../../core/dist/types.mjs","../../core/dist/utils/type-utils.mjs","../../core/dist/utils/promise-queue.mjs","../../core/dist/utils/index.mjs","../../core/dist/eventemitter.mjs","../../core/dist/gzip.mjs","../../core/dist/logger.mjs","../../core/dist/posthog-core-stateless.mjs","../../core/dist/posthog-core.mjs","../src/version.ts","../src/leanbase-logger.ts","../src/leanbase.ts","../src/iife.ts"],"sourcesContent":["const normalizeFlagsResponse = (flagsResponse)=>{\n if ('flags' in flagsResponse) {\n const featureFlags = getFlagValuesFromFlags(flagsResponse.flags);\n const featureFlagPayloads = getPayloadsFromFlags(flagsResponse.flags);\n return {\n ...flagsResponse,\n featureFlags,\n featureFlagPayloads\n };\n }\n {\n const featureFlags = flagsResponse.featureFlags ?? {};\n const featureFlagPayloads = Object.fromEntries(Object.entries(flagsResponse.featureFlagPayloads || {}).map(([k, v])=>[\n k,\n parsePayload(v)\n ]));\n const flags = Object.fromEntries(Object.entries(featureFlags).map(([key, value])=>[\n key,\n getFlagDetailFromFlagAndPayload(key, value, featureFlagPayloads[key])\n ]));\n return {\n ...flagsResponse,\n featureFlags,\n featureFlagPayloads,\n flags\n };\n }\n};\nfunction getFlagDetailFromFlagAndPayload(key, value, payload) {\n return {\n key: key,\n enabled: 'string' == typeof value ? true : value,\n variant: 'string' == typeof value ? value : void 0,\n reason: void 0,\n metadata: {\n id: void 0,\n version: void 0,\n payload: payload ? JSON.stringify(payload) : void 0,\n description: void 0\n }\n };\n}\nconst getFlagValuesFromFlags = (flags)=>Object.fromEntries(Object.entries(flags ?? {}).map(([key, detail])=>[\n key,\n getFeatureFlagValue(detail)\n ]).filter(([, value])=>void 0 !== value));\nconst getPayloadsFromFlags = (flags)=>{\n const safeFlags = flags ?? {};\n return Object.fromEntries(Object.keys(safeFlags).filter((flag)=>{\n const details = safeFlags[flag];\n return details.enabled && details.metadata && void 0 !== details.metadata.payload;\n }).map((flag)=>{\n const payload = safeFlags[flag].metadata?.payload;\n return [\n flag,\n payload ? parsePayload(payload) : void 0\n ];\n }));\n};\nconst getFlagDetailsFromFlagsAndPayloads = (flagsResponse)=>{\n const flags = flagsResponse.featureFlags ?? {};\n const payloads = flagsResponse.featureFlagPayloads ?? {};\n return Object.fromEntries(Object.entries(flags).map(([key, value])=>[\n key,\n {\n key: key,\n enabled: 'string' == typeof value ? true : value,\n variant: 'string' == typeof value ? value : void 0,\n reason: void 0,\n metadata: {\n id: void 0,\n version: void 0,\n payload: payloads?.[key] ? JSON.stringify(payloads[key]) : void 0,\n description: void 0\n }\n }\n ]));\n};\nconst getFeatureFlagValue = (detail)=>void 0 === detail ? void 0 : detail.variant ?? detail.enabled;\nconst parsePayload = (response)=>{\n if ('string' != typeof response) return response;\n try {\n return JSON.parse(response);\n } catch {\n return response;\n }\n};\nconst createFlagsResponseFromFlagsAndPayloads = (featureFlags, featureFlagPayloads)=>{\n const allKeys = [\n ...new Set([\n ...Object.keys(featureFlags ?? {}),\n ...Object.keys(featureFlagPayloads ?? {})\n ])\n ];\n const enabledFlags = allKeys.filter((flag)=>!!featureFlags[flag] || !!featureFlagPayloads[flag]).reduce((res, key)=>(res[key] = featureFlags[key] ?? true, res), {});\n const flagDetails = {\n featureFlags: enabledFlags,\n featureFlagPayloads: featureFlagPayloads ?? {}\n };\n return normalizeFlagsResponse(flagDetails);\n};\nconst updateFlagValue = (flag, value)=>({\n ...flag,\n enabled: getEnabledFromValue(value),\n variant: getVariantFromValue(value)\n });\nfunction getEnabledFromValue(value) {\n return 'string' == typeof value ? true : value;\n}\nfunction getVariantFromValue(value) {\n return 'string' == typeof value ? value : void 0;\n}\nexport { createFlagsResponseFromFlagsAndPayloads, getFeatureFlagValue, getFlagDetailsFromFlagsAndPayloads, getFlagValuesFromFlags, getPayloadsFromFlags, normalizeFlagsResponse, parsePayload, updateFlagValue };\n","/*! For license information please see uuidv7.mjs.LICENSE.txt */\n/**\n * uuidv7: An experimental implementation of the proposed UUID Version 7\n *\n * @license Apache-2.0\n * @copyright 2021-2023 LiosK\n * @packageDocumentation\n */ const DIGITS = \"0123456789abcdef\";\nclass UUID {\n constructor(bytes){\n this.bytes = bytes;\n }\n static ofInner(bytes) {\n if (16 === bytes.length) return new UUID(bytes);\n throw new TypeError(\"not 128-bit length\");\n }\n static fromFieldsV7(unixTsMs, randA, randBHi, randBLo) {\n if (!Number.isInteger(unixTsMs) || !Number.isInteger(randA) || !Number.isInteger(randBHi) || !Number.isInteger(randBLo) || unixTsMs < 0 || randA < 0 || randBHi < 0 || randBLo < 0 || unixTsMs > 0xffffffffffff || randA > 0xfff || randBHi > 0x3fffffff || randBLo > 0xffffffff) throw new RangeError(\"invalid field value\");\n const bytes = new Uint8Array(16);\n bytes[0] = unixTsMs / 2 ** 40;\n bytes[1] = unixTsMs / 2 ** 32;\n bytes[2] = unixTsMs / 2 ** 24;\n bytes[3] = unixTsMs / 2 ** 16;\n bytes[4] = unixTsMs / 256;\n bytes[5] = unixTsMs;\n bytes[6] = 0x70 | randA >>> 8;\n bytes[7] = randA;\n bytes[8] = 0x80 | randBHi >>> 24;\n bytes[9] = randBHi >>> 16;\n bytes[10] = randBHi >>> 8;\n bytes[11] = randBHi;\n bytes[12] = randBLo >>> 24;\n bytes[13] = randBLo >>> 16;\n bytes[14] = randBLo >>> 8;\n bytes[15] = randBLo;\n return new UUID(bytes);\n }\n static parse(uuid) {\n let hex;\n switch(uuid.length){\n case 32:\n hex = /^[0-9a-f]{32}$/i.exec(uuid)?.[0];\n break;\n case 36:\n hex = /^([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(uuid)?.slice(1, 6).join(\"\");\n break;\n case 38:\n hex = /^\\{([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})\\}$/i.exec(uuid)?.slice(1, 6).join(\"\");\n break;\n case 45:\n hex = /^urn:uuid:([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(uuid)?.slice(1, 6).join(\"\");\n break;\n default:\n break;\n }\n if (hex) {\n const inner = new Uint8Array(16);\n for(let i = 0; i < 16; i += 4){\n const n = parseInt(hex.substring(2 * i, 2 * i + 8), 16);\n inner[i + 0] = n >>> 24;\n inner[i + 1] = n >>> 16;\n inner[i + 2] = n >>> 8;\n inner[i + 3] = n;\n }\n return new UUID(inner);\n }\n throw new SyntaxError(\"could not parse UUID string\");\n }\n toString() {\n let text = \"\";\n for(let i = 0; i < this.bytes.length; i++){\n text += DIGITS.charAt(this.bytes[i] >>> 4);\n text += DIGITS.charAt(0xf & this.bytes[i]);\n if (3 === i || 5 === i || 7 === i || 9 === i) text += \"-\";\n }\n return text;\n }\n toHex() {\n let text = \"\";\n for(let i = 0; i < this.bytes.length; i++){\n text += DIGITS.charAt(this.bytes[i] >>> 4);\n text += DIGITS.charAt(0xf & this.bytes[i]);\n }\n return text;\n }\n toJSON() {\n return this.toString();\n }\n getVariant() {\n const n = this.bytes[8] >>> 4;\n if (n < 0) throw new Error(\"unreachable\");\n if (n <= 7) return this.bytes.every((e)=>0 === e) ? \"NIL\" : \"VAR_0\";\n if (n <= 11) return \"VAR_10\";\n if (n <= 13) return \"VAR_110\";\n if (n <= 15) return this.bytes.every((e)=>0xff === e) ? \"MAX\" : \"VAR_RESERVED\";\n else throw new Error(\"unreachable\");\n }\n getVersion() {\n return \"VAR_10\" === this.getVariant() ? this.bytes[6] >>> 4 : void 0;\n }\n clone() {\n return new UUID(this.bytes.slice(0));\n }\n equals(other) {\n return 0 === this.compareTo(other);\n }\n compareTo(other) {\n for(let i = 0; i < 16; i++){\n const diff = this.bytes[i] - other.bytes[i];\n if (0 !== diff) return Math.sign(diff);\n }\n return 0;\n }\n}\nclass V7Generator {\n constructor(randomNumberGenerator){\n this.timestamp = 0;\n this.counter = 0;\n this.random = randomNumberGenerator ?? getDefaultRandom();\n }\n generate() {\n return this.generateOrResetCore(Date.now(), 10000);\n }\n generateOrAbort() {\n return this.generateOrAbortCore(Date.now(), 10000);\n }\n generateOrResetCore(unixTsMs, rollbackAllowance) {\n let value = this.generateOrAbortCore(unixTsMs, rollbackAllowance);\n if (void 0 === value) {\n this.timestamp = 0;\n value = this.generateOrAbortCore(unixTsMs, rollbackAllowance);\n }\n return value;\n }\n generateOrAbortCore(unixTsMs, rollbackAllowance) {\n const MAX_COUNTER = 0x3ffffffffff;\n if (!Number.isInteger(unixTsMs) || unixTsMs < 1 || unixTsMs > 0xffffffffffff) throw new RangeError(\"`unixTsMs` must be a 48-bit positive integer\");\n if (rollbackAllowance < 0 || rollbackAllowance > 0xffffffffffff) throw new RangeError(\"`rollbackAllowance` out of reasonable range\");\n if (unixTsMs > this.timestamp) {\n this.timestamp = unixTsMs;\n this.resetCounter();\n } else {\n if (!(unixTsMs + rollbackAllowance >= this.timestamp)) return;\n this.counter++;\n if (this.counter > MAX_COUNTER) {\n this.timestamp++;\n this.resetCounter();\n }\n }\n return UUID.fromFieldsV7(this.timestamp, Math.trunc(this.counter / 2 ** 30), this.counter & 2 ** 30 - 1, this.random.nextUint32());\n }\n resetCounter() {\n this.counter = 0x400 * this.random.nextUint32() + (0x3ff & this.random.nextUint32());\n }\n generateV4() {\n const bytes = new Uint8Array(Uint32Array.of(this.random.nextUint32(), this.random.nextUint32(), this.random.nextUint32(), this.random.nextUint32()).buffer);\n bytes[6] = 0x40 | bytes[6] >>> 4;\n bytes[8] = 0x80 | bytes[8] >>> 2;\n return UUID.ofInner(bytes);\n }\n}\nconst getDefaultRandom = ()=>({\n nextUint32: ()=>0x10000 * Math.trunc(0x10000 * Math.random()) + Math.trunc(0x10000 * Math.random())\n });\nlet defaultGenerator;\nconst uuidv7 = ()=>uuidv7obj().toString();\nconst uuidv7obj = ()=>(defaultGenerator || (defaultGenerator = new V7Generator())).generate();\nconst uuidv4 = ()=>uuidv4obj().toString();\nconst uuidv4obj = ()=>(defaultGenerator || (defaultGenerator = new V7Generator())).generateV4();\nexport { UUID, V7Generator, uuidv4, uuidv4obj, uuidv7, uuidv7obj };\n","var types_PostHogPersistedProperty = /*#__PURE__*/ function(PostHogPersistedProperty) {\n PostHogPersistedProperty[\"AnonymousId\"] = \"anonymous_id\";\n PostHogPersistedProperty[\"DistinctId\"] = \"distinct_id\";\n PostHogPersistedProperty[\"Props\"] = \"props\";\n PostHogPersistedProperty[\"FeatureFlagDetails\"] = \"feature_flag_details\";\n PostHogPersistedProperty[\"FeatureFlags\"] = \"feature_flags\";\n PostHogPersistedProperty[\"FeatureFlagPayloads\"] = \"feature_flag_payloads\";\n PostHogPersistedProperty[\"BootstrapFeatureFlagDetails\"] = \"bootstrap_feature_flag_details\";\n PostHogPersistedProperty[\"BootstrapFeatureFlags\"] = \"bootstrap_feature_flags\";\n PostHogPersistedProperty[\"BootstrapFeatureFlagPayloads\"] = \"bootstrap_feature_flag_payloads\";\n PostHogPersistedProperty[\"OverrideFeatureFlags\"] = \"override_feature_flags\";\n PostHogPersistedProperty[\"Queue\"] = \"queue\";\n PostHogPersistedProperty[\"OptedOut\"] = \"opted_out\";\n PostHogPersistedProperty[\"SessionId\"] = \"session_id\";\n PostHogPersistedProperty[\"SessionStartTimestamp\"] = \"session_start_timestamp\";\n PostHogPersistedProperty[\"SessionLastTimestamp\"] = \"session_timestamp\";\n PostHogPersistedProperty[\"PersonProperties\"] = \"person_properties\";\n PostHogPersistedProperty[\"GroupProperties\"] = \"group_properties\";\n PostHogPersistedProperty[\"InstalledAppBuild\"] = \"installed_app_build\";\n PostHogPersistedProperty[\"InstalledAppVersion\"] = \"installed_app_version\";\n PostHogPersistedProperty[\"SessionReplay\"] = \"session_replay\";\n PostHogPersistedProperty[\"SurveyLastSeenDate\"] = \"survey_last_seen_date\";\n PostHogPersistedProperty[\"SurveysSeen\"] = \"surveys_seen\";\n PostHogPersistedProperty[\"Surveys\"] = \"surveys\";\n PostHogPersistedProperty[\"RemoteConfig\"] = \"remote_config\";\n PostHogPersistedProperty[\"FlagsEndpointWasHit\"] = \"flags_endpoint_was_hit\";\n return PostHogPersistedProperty;\n}({});\nvar types_Compression = /*#__PURE__*/ function(Compression) {\n Compression[\"GZipJS\"] = \"gzip-js\";\n Compression[\"Base64\"] = \"base64\";\n return Compression;\n}({});\nvar types_SurveyPosition = /*#__PURE__*/ function(SurveyPosition) {\n SurveyPosition[\"TopLeft\"] = \"top_left\";\n SurveyPosition[\"TopCenter\"] = \"top_center\";\n SurveyPosition[\"TopRight\"] = \"top_right\";\n SurveyPosition[\"MiddleLeft\"] = \"middle_left\";\n SurveyPosition[\"MiddleCenter\"] = \"middle_center\";\n SurveyPosition[\"MiddleRight\"] = \"middle_right\";\n SurveyPosition[\"Left\"] = \"left\";\n SurveyPosition[\"Right\"] = \"right\";\n SurveyPosition[\"Center\"] = \"center\";\n return SurveyPosition;\n}({});\nvar types_SurveyWidgetType = /*#__PURE__*/ function(SurveyWidgetType) {\n SurveyWidgetType[\"Button\"] = \"button\";\n SurveyWidgetType[\"Tab\"] = \"tab\";\n SurveyWidgetType[\"Selector\"] = \"selector\";\n return SurveyWidgetType;\n}({});\nvar types_SurveyType = /*#__PURE__*/ function(SurveyType) {\n SurveyType[\"Popover\"] = \"popover\";\n SurveyType[\"API\"] = \"api\";\n SurveyType[\"Widget\"] = \"widget\";\n SurveyType[\"ExternalSurvey\"] = \"external_survey\";\n return SurveyType;\n}({});\nvar types_SurveyQuestionDescriptionContentType = /*#__PURE__*/ function(SurveyQuestionDescriptionContentType) {\n SurveyQuestionDescriptionContentType[\"Html\"] = \"html\";\n SurveyQuestionDescriptionContentType[\"Text\"] = \"text\";\n return SurveyQuestionDescriptionContentType;\n}({});\nvar types_SurveyRatingDisplay = /*#__PURE__*/ function(SurveyRatingDisplay) {\n SurveyRatingDisplay[\"Number\"] = \"number\";\n SurveyRatingDisplay[\"Emoji\"] = \"emoji\";\n return SurveyRatingDisplay;\n}({});\nvar types_SurveyQuestionType = /*#__PURE__*/ function(SurveyQuestionType) {\n SurveyQuestionType[\"Open\"] = \"open\";\n SurveyQuestionType[\"MultipleChoice\"] = \"multiple_choice\";\n SurveyQuestionType[\"SingleChoice\"] = \"single_choice\";\n SurveyQuestionType[\"Rating\"] = \"rating\";\n SurveyQuestionType[\"Link\"] = \"link\";\n return SurveyQuestionType;\n}({});\nvar types_SurveyQuestionBranchingType = /*#__PURE__*/ function(SurveyQuestionBranchingType) {\n SurveyQuestionBranchingType[\"NextQuestion\"] = \"next_question\";\n SurveyQuestionBranchingType[\"End\"] = \"end\";\n SurveyQuestionBranchingType[\"ResponseBased\"] = \"response_based\";\n SurveyQuestionBranchingType[\"SpecificQuestion\"] = \"specific_question\";\n return SurveyQuestionBranchingType;\n}({});\nvar types_SurveyMatchType = /*#__PURE__*/ function(SurveyMatchType) {\n SurveyMatchType[\"Regex\"] = \"regex\";\n SurveyMatchType[\"NotRegex\"] = \"not_regex\";\n SurveyMatchType[\"Exact\"] = \"exact\";\n SurveyMatchType[\"IsNot\"] = \"is_not\";\n SurveyMatchType[\"Icontains\"] = \"icontains\";\n SurveyMatchType[\"NotIcontains\"] = \"not_icontains\";\n return SurveyMatchType;\n}({});\nvar types_ActionStepStringMatching = /*#__PURE__*/ function(ActionStepStringMatching) {\n ActionStepStringMatching[\"Contains\"] = \"contains\";\n ActionStepStringMatching[\"Exact\"] = \"exact\";\n ActionStepStringMatching[\"Regex\"] = \"regex\";\n return ActionStepStringMatching;\n}({});\nconst knownUnsafeEditableEvent = [\n '$snapshot',\n '$pageview',\n '$pageleave',\n '$set',\n 'survey dismissed',\n 'survey sent',\n 'survey shown',\n '$identify',\n '$groupidentify',\n '$create_alias',\n '$$client_ingestion_warning',\n '$web_experiment_applied',\n '$feature_enrollment_update',\n '$feature_flag_called'\n];\nexport { types_ActionStepStringMatching as ActionStepStringMatching, types_Compression as Compression, types_PostHogPersistedProperty as PostHogPersistedProperty, types_SurveyMatchType as SurveyMatchType, types_SurveyPosition as SurveyPosition, types_SurveyQuestionBranchingType as SurveyQuestionBranchingType, types_SurveyQuestionDescriptionContentType as SurveyQuestionDescriptionContentType, types_SurveyQuestionType as SurveyQuestionType, types_SurveyRatingDisplay as SurveyRatingDisplay, types_SurveyType as SurveyType, types_SurveyWidgetType as SurveyWidgetType, knownUnsafeEditableEvent };\n","import { knownUnsafeEditableEvent } from \"../types.mjs\";\nimport { includes } from \"./string-utils.mjs\";\nconst nativeIsArray = Array.isArray;\nconst ObjProto = Object.prototype;\nconst type_utils_hasOwnProperty = ObjProto.hasOwnProperty;\nconst type_utils_toString = ObjProto.toString;\nconst isArray = nativeIsArray || function(obj) {\n return '[object Array]' === type_utils_toString.call(obj);\n};\nconst isFunction = (x)=>'function' == typeof x;\nconst isNativeFunction = (x)=>isFunction(x) && -1 !== x.toString().indexOf('[native code]');\nconst isObject = (x)=>x === Object(x) && !isArray(x);\nconst isEmptyObject = (x)=>{\n if (isObject(x)) {\n for(const key in x)if (type_utils_hasOwnProperty.call(x, key)) return false;\n return true;\n }\n return false;\n};\nconst isUndefined = (x)=>void 0 === x;\nconst isString = (x)=>'[object String]' == type_utils_toString.call(x);\nconst isEmptyString = (x)=>isString(x) && 0 === x.trim().length;\nconst isNull = (x)=>null === x;\nconst isNullish = (x)=>isUndefined(x) || isNull(x);\nconst isNumber = (x)=>'[object Number]' == type_utils_toString.call(x);\nconst isBoolean = (x)=>'[object Boolean]' === type_utils_toString.call(x);\nconst isFormData = (x)=>x instanceof FormData;\nconst isFile = (x)=>x instanceof File;\nconst isPlainError = (x)=>x instanceof Error;\nconst isKnownUnsafeEditableEvent = (x)=>includes(knownUnsafeEditableEvent, x);\nfunction isInstanceOf(candidate, base) {\n try {\n return candidate instanceof base;\n } catch {\n return false;\n }\n}\nfunction isPrimitive(value) {\n return null === value || 'object' != typeof value;\n}\nfunction isBuiltin(candidate, className) {\n return Object.prototype.toString.call(candidate) === `[object ${className}]`;\n}\nfunction isError(candidate) {\n switch(Object.prototype.toString.call(candidate)){\n case '[object Error]':\n case '[object Exception]':\n case '[object DOMException]':\n case '[object DOMError]':\n case '[object WebAssembly.Exception]':\n return true;\n default:\n return isInstanceOf(candidate, Error);\n }\n}\nfunction isErrorEvent(event) {\n return isBuiltin(event, 'ErrorEvent');\n}\nfunction isEvent(candidate) {\n return !isUndefined(Event) && isInstanceOf(candidate, Event);\n}\nfunction isPlainObject(candidate) {\n return isBuiltin(candidate, 'Object');\n}\nconst yesLikeValues = [\n true,\n 'true',\n 1,\n '1',\n 'yes'\n];\nconst isYesLike = (val)=>includes(yesLikeValues, val);\nconst noLikeValues = [\n false,\n 'false',\n 0,\n '0',\n 'no'\n];\nconst isNoLike = (val)=>includes(noLikeValues, val);\nexport { type_utils_hasOwnProperty as hasOwnProperty, isArray, isBoolean, isBuiltin, isEmptyObject, isEmptyString, isError, isErrorEvent, isEvent, isFile, isFormData, isFunction, isInstanceOf, isKnownUnsafeEditableEvent, isNativeFunction, isNoLike, isNull, isNullish, isNumber, isObject, isPlainError, isPlainObject, isPrimitive, isString, isUndefined, isYesLike, noLikeValues, yesLikeValues };\n","import { uuidv7 } from \"../vendor/uuidv7.mjs\";\nclass PromiseQueue {\n add(promise) {\n const promiseUUID = uuidv7();\n this.promiseByIds[promiseUUID] = promise;\n promise.catch(()=>{}).finally(()=>{\n delete this.promiseByIds[promiseUUID];\n });\n return promise;\n }\n async join() {\n let promises = Object.values(this.promiseByIds);\n let length = promises.length;\n while(length > 0){\n await Promise.all(promises);\n promises = Object.values(this.promiseByIds);\n length = promises.length;\n }\n }\n get length() {\n return Object.keys(this.promiseByIds).length;\n }\n constructor(){\n this.promiseByIds = {};\n }\n}\nexport { PromiseQueue };\n","export * from \"./bucketed-rate-limiter.mjs\";\nexport * from \"./number-utils.mjs\";\nexport * from \"./string-utils.mjs\";\nexport * from \"./type-utils.mjs\";\nexport * from \"./promise-queue.mjs\";\nconst STRING_FORMAT = 'utf8';\nfunction assert(truthyValue, message) {\n if (!truthyValue || 'string' != typeof truthyValue || isEmpty(truthyValue)) throw new Error(message);\n}\nfunction isEmpty(truthyValue) {\n if (0 === truthyValue.trim().length) return true;\n return false;\n}\nfunction removeTrailingSlash(url) {\n return url?.replace(/\\/+$/, '');\n}\nasync function retriable(fn, props) {\n let lastError = null;\n for(let i = 0; i < props.retryCount + 1; i++){\n if (i > 0) await new Promise((r)=>setTimeout(r, props.retryDelay));\n try {\n const res = await fn();\n return res;\n } catch (e) {\n lastError = e;\n if (!props.retryCheck(e)) throw e;\n }\n }\n throw lastError;\n}\nfunction currentTimestamp() {\n return new Date().getTime();\n}\nfunction currentISOTime() {\n return new Date().toISOString();\n}\nfunction safeSetTimeout(fn, timeout) {\n const t = setTimeout(fn, timeout);\n t?.unref && t?.unref();\n return t;\n}\nconst isPromise = (obj)=>obj && 'function' == typeof obj.then;\nconst isError = (x)=>x instanceof Error;\nfunction getFetch() {\n return 'undefined' != typeof fetch ? fetch : void 0 !== globalThis.fetch ? globalThis.fetch : void 0;\n}\nfunction allSettled(promises) {\n return Promise.all(promises.map((p)=>(p ?? Promise.resolve()).then((value)=>({\n status: 'fulfilled',\n value\n }), (reason)=>({\n status: 'rejected',\n reason\n }))));\n}\nexport { STRING_FORMAT, allSettled, assert, currentISOTime, currentTimestamp, getFetch, isError, isPromise, removeTrailingSlash, retriable, safeSetTimeout };\n","class SimpleEventEmitter {\n constructor(){\n this.events = {};\n this.events = {};\n }\n on(event, listener) {\n if (!this.events[event]) this.events[event] = [];\n this.events[event].push(listener);\n return ()=>{\n this.events[event] = this.events[event].filter((x)=>x !== listener);\n };\n }\n emit(event, payload) {\n for (const listener of this.events[event] || [])listener(payload);\n for (const listener of this.events['*'] || [])listener(event, payload);\n }\n}\nexport { SimpleEventEmitter };\n","function isGzipSupported() {\n return 'CompressionStream' in globalThis;\n}\nasync function gzipCompress(input, isDebug = true) {\n try {\n const dataStream = new Blob([\n input\n ], {\n type: 'text/plain'\n }).stream();\n const compressedStream = dataStream.pipeThrough(new CompressionStream('gzip'));\n return await new Response(compressedStream).blob();\n } catch (error) {\n if (isDebug) console.error('Failed to gzip compress data', error);\n return null;\n }\n}\nexport { gzipCompress, isGzipSupported };\n","function createConsole(consoleLike = console) {\n const lockedMethods = {\n log: consoleLike.log.bind(consoleLike),\n warn: consoleLike.warn.bind(consoleLike),\n error: consoleLike.error.bind(consoleLike),\n debug: consoleLike.debug.bind(consoleLike)\n };\n return lockedMethods;\n}\nconst _createLogger = (prefix, maybeCall, consoleLike)=>{\n function _log(level, ...args) {\n maybeCall(()=>{\n const consoleMethod = consoleLike[level];\n consoleMethod(prefix, ...args);\n });\n }\n const logger = {\n info: (...args)=>{\n _log('log', ...args);\n },\n warn: (...args)=>{\n _log('warn', ...args);\n },\n error: (...args)=>{\n _log('error', ...args);\n },\n critical: (...args)=>{\n consoleLike['error'](prefix, ...args);\n },\n createLogger: (additionalPrefix)=>_createLogger(`${prefix} ${additionalPrefix}`, maybeCall, consoleLike)\n };\n return logger;\n};\nfunction createLogger(prefix, maybeCall) {\n return _createLogger(prefix, maybeCall, createConsole());\n}\nexport { _createLogger, createLogger };\n","import { SimpleEventEmitter } from \"./eventemitter.mjs\";\nimport { getFeatureFlagValue, normalizeFlagsResponse } from \"./featureFlagUtils.mjs\";\nimport { gzipCompress, isGzipSupported } from \"./gzip.mjs\";\nimport { createLogger } from \"./logger.mjs\";\nimport { PostHogPersistedProperty } from \"./types.mjs\";\nimport { PromiseQueue, STRING_FORMAT, allSettled, assert, currentISOTime, removeTrailingSlash, retriable, safeSetTimeout } from \"./utils/index.mjs\";\nimport { uuidv7 } from \"./vendor/uuidv7.mjs\";\nclass PostHogFetchHttpError extends Error {\n constructor(response, reqByteLength){\n super('HTTP error while fetching PostHog: status=' + response.status + ', reqByteLength=' + reqByteLength), this.response = response, this.reqByteLength = reqByteLength, this.name = 'PostHogFetchHttpError';\n }\n get status() {\n return this.response.status;\n }\n get text() {\n return this.response.text();\n }\n get json() {\n return this.response.json();\n }\n}\nclass PostHogFetchNetworkError extends Error {\n constructor(error){\n super('Network error while fetching PostHog', error instanceof Error ? {\n cause: error\n } : {}), this.error = error, this.name = 'PostHogFetchNetworkError';\n }\n}\nconst maybeAdd = (key, value)=>void 0 !== value ? {\n [key]: value\n } : {};\nasync function logFlushError(err) {\n if (err instanceof PostHogFetchHttpError) {\n let text = '';\n try {\n text = await err.text;\n } catch {}\n console.error(`Error while flushing PostHog: message=${err.message}, response body=${text}`, err);\n } else console.error('Error while flushing PostHog', err);\n return Promise.resolve();\n}\nfunction isPostHogFetchError(err) {\n return 'object' == typeof err && (err instanceof PostHogFetchHttpError || err instanceof PostHogFetchNetworkError);\n}\nfunction isPostHogFetchContentTooLargeError(err) {\n return 'object' == typeof err && err instanceof PostHogFetchHttpError && 413 === err.status;\n}\nvar posthog_core_stateless_QuotaLimitedFeature = /*#__PURE__*/ function(QuotaLimitedFeature) {\n QuotaLimitedFeature[\"FeatureFlags\"] = \"feature_flags\";\n QuotaLimitedFeature[\"Recordings\"] = \"recordings\";\n return QuotaLimitedFeature;\n}({});\nclass PostHogCoreStateless {\n constructor(apiKey, options = {}){\n this.flushPromise = null;\n this.shutdownPromise = null;\n this.promiseQueue = new PromiseQueue();\n this._events = new SimpleEventEmitter();\n this._isInitialized = false;\n assert(apiKey, \"You must pass your PostHog project's api key.\");\n this.apiKey = apiKey;\n this.host = removeTrailingSlash(options.host || 'https://us.i.posthog.com');\n this.flushAt = options.flushAt ? Math.max(options.flushAt, 1) : 20;\n this.maxBatchSize = Math.max(this.flushAt, options.maxBatchSize ?? 100);\n this.maxQueueSize = Math.max(this.flushAt, options.maxQueueSize ?? 1000);\n this.flushInterval = options.flushInterval ?? 10000;\n this.preloadFeatureFlags = options.preloadFeatureFlags ?? true;\n this.defaultOptIn = options.defaultOptIn ?? true;\n this.disableSurveys = options.disableSurveys ?? false;\n this._retryOptions = {\n retryCount: options.fetchRetryCount ?? 3,\n retryDelay: options.fetchRetryDelay ?? 3000,\n retryCheck: isPostHogFetchError\n };\n this.requestTimeout = options.requestTimeout ?? 10000;\n this.featureFlagsRequestTimeoutMs = options.featureFlagsRequestTimeoutMs ?? 3000;\n this.remoteConfigRequestTimeoutMs = options.remoteConfigRequestTimeoutMs ?? 3000;\n this.disableGeoip = options.disableGeoip ?? true;\n this.disabled = options.disabled ?? false;\n this.historicalMigration = options?.historicalMigration ?? false;\n this.evaluationEnvironments = options?.evaluationEnvironments;\n this._initPromise = Promise.resolve();\n this._isInitialized = true;\n this._logger = createLogger('[PostHog]', this.logMsgIfDebug.bind(this));\n this.disableCompression = !isGzipSupported() || (options?.disableCompression ?? false);\n }\n logMsgIfDebug(fn) {\n if (this.isDebug) fn();\n }\n wrap(fn) {\n if (this.disabled) return void this._logger.warn('The client is disabled');\n if (this._isInitialized) return fn();\n this._initPromise.then(()=>fn());\n }\n getCommonEventProperties() {\n return {\n $lib: this.getLibraryId(),\n $lib_version: this.getLibraryVersion()\n };\n }\n get optedOut() {\n return this.getPersistedProperty(PostHogPersistedProperty.OptedOut) ?? !this.defaultOptIn;\n }\n async optIn() {\n this.wrap(()=>{\n this.setPersistedProperty(PostHogPersistedProperty.OptedOut, false);\n });\n }\n async optOut() {\n this.wrap(()=>{\n this.setPersistedProperty(PostHogPersistedProperty.OptedOut, true);\n });\n }\n on(event, cb) {\n return this._events.on(event, cb);\n }\n debug(enabled = true) {\n this.removeDebugCallback?.();\n if (enabled) {\n const removeDebugCallback = this.on('*', (event, payload)=>this._logger.info(event, payload));\n this.removeDebugCallback = ()=>{\n removeDebugCallback();\n this.removeDebugCallback = void 0;\n };\n }\n }\n get isDebug() {\n return !!this.removeDebugCallback;\n }\n get isDisabled() {\n return this.disabled;\n }\n buildPayload(payload) {\n return {\n distinct_id: payload.distinct_id,\n event: payload.event,\n properties: {\n ...payload.properties || {},\n ...this.getCommonEventProperties()\n }\n };\n }\n addPendingPromise(promise) {\n return this.promiseQueue.add(promise);\n }\n identifyStateless(distinctId, properties, options) {\n this.wrap(()=>{\n const payload = {\n ...this.buildPayload({\n distinct_id: distinctId,\n event: '$identify',\n properties\n })\n };\n this.enqueue('identify', payload, options);\n });\n }\n async identifyStatelessImmediate(distinctId, properties, options) {\n const payload = {\n ...this.buildPayload({\n distinct_id: distinctId,\n event: '$identify',\n properties\n })\n };\n await this.sendImmediate('identify', payload, options);\n }\n captureStateless(distinctId, event, properties, options) {\n this.wrap(()=>{\n const payload = this.buildPayload({\n distinct_id: distinctId,\n event,\n properties\n });\n this.enqueue('capture', payload, options);\n });\n }\n async captureStatelessImmediate(distinctId, event, properties, options) {\n const payload = this.buildPayload({\n distinct_id: distinctId,\n event,\n properties\n });\n await this.sendImmediate('capture', payload, options);\n }\n aliasStateless(alias, distinctId, properties, options) {\n this.wrap(()=>{\n const payload = this.buildPayload({\n event: '$create_alias',\n distinct_id: distinctId,\n properties: {\n ...properties || {},\n distinct_id: distinctId,\n alias\n }\n });\n this.enqueue('alias', payload, options);\n });\n }\n async aliasStatelessImmediate(alias, distinctId, properties, options) {\n const payload = this.buildPayload({\n event: '$create_alias',\n distinct_id: distinctId,\n properties: {\n ...properties || {},\n distinct_id: distinctId,\n alias\n }\n });\n await this.sendImmediate('alias', payload, options);\n }\n groupIdentifyStateless(groupType, groupKey, groupProperties, options, distinctId, eventProperties) {\n this.wrap(()=>{\n const payload = this.buildPayload({\n distinct_id: distinctId || `$${groupType}_${groupKey}`,\n event: '$groupidentify',\n properties: {\n $group_type: groupType,\n $group_key: groupKey,\n $group_set: groupProperties || {},\n ...eventProperties || {}\n }\n });\n this.enqueue('capture', payload, options);\n });\n }\n async getRemoteConfig() {\n await this._initPromise;\n let host = this.host;\n if ('https://us.i.posthog.com' === host) host = 'https://us-assets.i.posthog.com';\n else if ('https://eu.i.posthog.com' === host) host = 'https://eu-assets.i.posthog.com';\n const url = `${host}/array/${this.apiKey}/config`;\n const fetchOptions = {\n method: 'GET',\n headers: {\n ...this.getCustomHeaders(),\n 'Content-Type': 'application/json'\n }\n };\n return this.fetchWithRetry(url, fetchOptions, {\n retryCount: 0\n }, this.remoteConfigRequestTimeoutMs).then((response)=>response.json()).catch((error)=>{\n this._logger.error('Remote config could not be loaded', error);\n this._events.emit('error', error);\n });\n }\n async getFlags(distinctId, groups = {}, personProperties = {}, groupProperties = {}, extraPayload = {}, fetchConfig = true) {\n await this._initPromise;\n const configParam = fetchConfig ? '&config=true' : '';\n const url = `${this.host}/flags/?v=2${configParam}`;\n const requestData = {\n token: this.apiKey,\n distinct_id: distinctId,\n groups,\n person_properties: personProperties,\n group_properties: groupProperties,\n ...extraPayload\n };\n if (this.evaluationEnvironments && this.evaluationEnvironments.length > 0) requestData.evaluation_environments = this.evaluationEnvironments;\n const fetchOptions = {\n method: 'POST',\n headers: {\n ...this.getCustomHeaders(),\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify(requestData)\n };\n this._logger.info('Flags URL', url);\n return this.fetchWithRetry(url, fetchOptions, {\n retryCount: 0\n }, this.featureFlagsRequestTimeoutMs).then((response)=>response.json()).then((response)=>normalizeFlagsResponse(response)).catch((error)=>{\n this._events.emit('error', error);\n });\n }\n async getFeatureFlagStateless(key, distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip) {\n await this._initPromise;\n const flagDetailResponse = await this.getFeatureFlagDetailStateless(key, distinctId, groups, personProperties, groupProperties, disableGeoip);\n if (void 0 === flagDetailResponse) return {\n response: void 0,\n requestId: void 0\n };\n let response = getFeatureFlagValue(flagDetailResponse.response);\n if (void 0 === response) response = false;\n return {\n response,\n requestId: flagDetailResponse.requestId\n };\n }\n async getFeatureFlagDetailStateless(key, distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip) {\n await this._initPromise;\n const flagsResponse = await this.getFeatureFlagDetailsStateless(distinctId, groups, personProperties, groupProperties, disableGeoip, [\n key\n ]);\n if (void 0 === flagsResponse) return;\n const featureFlags = flagsResponse.flags;\n const flagDetail = featureFlags[key];\n return {\n response: flagDetail,\n requestId: flagsResponse.requestId\n };\n }\n async getFeatureFlagPayloadStateless(key, distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip) {\n await this._initPromise;\n const payloads = await this.getFeatureFlagPayloadsStateless(distinctId, groups, personProperties, groupProperties, disableGeoip, [\n key\n ]);\n if (!payloads) return;\n const response = payloads[key];\n if (void 0 === response) return null;\n return response;\n }\n async getFeatureFlagPayloadsStateless(distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip, flagKeysToEvaluate) {\n await this._initPromise;\n const payloads = (await this.getFeatureFlagsAndPayloadsStateless(distinctId, groups, personProperties, groupProperties, disableGeoip, flagKeysToEvaluate)).payloads;\n return payloads;\n }\n async getFeatureFlagsStateless(distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip, flagKeysToEvaluate) {\n await this._initPromise;\n return await this.getFeatureFlagsAndPayloadsStateless(distinctId, groups, personProperties, groupProperties, disableGeoip, flagKeysToEvaluate);\n }\n async getFeatureFlagsAndPayloadsStateless(distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip, flagKeysToEvaluate) {\n await this._initPromise;\n const featureFlagDetails = await this.getFeatureFlagDetailsStateless(distinctId, groups, personProperties, groupProperties, disableGeoip, flagKeysToEvaluate);\n if (!featureFlagDetails) return {\n flags: void 0,\n payloads: void 0,\n requestId: void 0\n };\n return {\n flags: featureFlagDetails.featureFlags,\n payloads: featureFlagDetails.featureFlagPayloads,\n requestId: featureFlagDetails.requestId\n };\n }\n async getFeatureFlagDetailsStateless(distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip, flagKeysToEvaluate) {\n await this._initPromise;\n const extraPayload = {};\n if (disableGeoip ?? this.disableGeoip) extraPayload['geoip_disable'] = true;\n if (flagKeysToEvaluate) extraPayload['flag_keys_to_evaluate'] = flagKeysToEvaluate;\n const flagsResponse = await this.getFlags(distinctId, groups, personProperties, groupProperties, extraPayload);\n if (void 0 === flagsResponse) return;\n if (flagsResponse.errorsWhileComputingFlags) console.error('[FEATURE FLAGS] Error while computing feature flags, some flags may be missing or incorrect. Learn more at https://posthog.com/docs/feature-flags/best-practices');\n if (flagsResponse.quotaLimited?.includes(\"feature_flags\")) {\n console.warn('[FEATURE FLAGS] Feature flags quota limit exceeded - feature flags unavailable. Learn more about billing limits at https://posthog.com/docs/billing/limits-alerts');\n return {\n flags: {},\n featureFlags: {},\n featureFlagPayloads: {},\n requestId: flagsResponse?.requestId\n };\n }\n return flagsResponse;\n }\n async getSurveysStateless() {\n await this._initPromise;\n if (true === this.disableSurveys) {\n this._logger.info('Loading surveys is disabled.');\n return [];\n }\n const url = `${this.host}/api/surveys/?token=${this.apiKey}`;\n const fetchOptions = {\n method: 'GET',\n headers: {\n ...this.getCustomHeaders(),\n 'Content-Type': 'application/json'\n }\n };\n const response = await this.fetchWithRetry(url, fetchOptions).then((response)=>{\n if (200 !== response.status || !response.json) {\n const msg = `Surveys API could not be loaded: ${response.status}`;\n const error = new Error(msg);\n this._logger.error(error);\n this._events.emit('error', new Error(msg));\n return;\n }\n return response.json();\n }).catch((error)=>{\n this._logger.error('Surveys API could not be loaded', error);\n this._events.emit('error', error);\n });\n const newSurveys = response?.surveys;\n if (newSurveys) this._logger.info('Surveys fetched from API: ', JSON.stringify(newSurveys));\n return newSurveys ?? [];\n }\n get props() {\n if (!this._props) this._props = this.getPersistedProperty(PostHogPersistedProperty.Props);\n return this._props || {};\n }\n set props(val) {\n this._props = val;\n }\n async register(properties) {\n this.wrap(()=>{\n this.props = {\n ...this.props,\n ...properties\n };\n this.setPersistedProperty(PostHogPersistedProperty.Props, this.props);\n });\n }\n async unregister(property) {\n this.wrap(()=>{\n delete this.props[property];\n this.setPersistedProperty(PostHogPersistedProperty.Props, this.props);\n });\n }\n enqueue(type, _message, options) {\n this.wrap(()=>{\n if (this.optedOut) return void this._events.emit(type, \"Library is disabled. Not sending event. To re-enable, call posthog.optIn()\");\n const message = this.prepareMessage(type, _message, options);\n const queue = this.getPersistedProperty(PostHogPersistedProperty.Queue) || [];\n if (queue.length >= this.maxQueueSize) {\n queue.shift();\n this._logger.info('Queue is full, the oldest event is dropped.');\n }\n queue.push({\n message\n });\n this.setPersistedProperty(PostHogPersistedProperty.Queue, queue);\n this._events.emit(type, message);\n if (queue.length >= this.flushAt) this.flushBackground();\n if (this.flushInterval && !this._flushTimer) this._flushTimer = safeSetTimeout(()=>this.flushBackground(), this.flushInterval);\n });\n }\n async sendImmediate(type, _message, options) {\n if (this.disabled) return void this._logger.warn('The client is disabled');\n if (!this._isInitialized) await this._initPromise;\n if (this.optedOut) return void this._events.emit(type, \"Library is disabled. Not sending event. To re-enable, call posthog.optIn()\");\n const data = {\n api_key: this.apiKey,\n batch: [\n this.prepareMessage(type, _message, options)\n ],\n sent_at: currentISOTime()\n };\n if (this.historicalMigration) data.historical_migration = true;\n const payload = JSON.stringify(data);\n const url = `${this.host}/batch/`;\n const gzippedPayload = this.disableCompression ? null : await gzipCompress(payload, this.isDebug);\n const fetchOptions = {\n method: 'POST',\n headers: {\n ...this.getCustomHeaders(),\n 'Content-Type': 'application/json',\n ...null !== gzippedPayload && {\n 'Content-Encoding': 'gzip'\n }\n },\n body: gzippedPayload || payload\n };\n try {\n await this.fetchWithRetry(url, fetchOptions);\n } catch (err) {\n this._events.emit('error', err);\n }\n }\n prepareMessage(type, _message, options) {\n const message = {\n ..._message,\n type: type,\n library: this.getLibraryId(),\n library_version: this.getLibraryVersion(),\n timestamp: options?.timestamp ? options?.timestamp : currentISOTime(),\n uuid: options?.uuid ? options.uuid : uuidv7()\n };\n const addGeoipDisableProperty = options?.disableGeoip ?? this.disableGeoip;\n if (addGeoipDisableProperty) {\n if (!message.properties) message.properties = {};\n message['properties']['$geoip_disable'] = true;\n }\n if (message.distinctId) {\n message.distinct_id = message.distinctId;\n delete message.distinctId;\n }\n return message;\n }\n clearFlushTimer() {\n if (this._flushTimer) {\n clearTimeout(this._flushTimer);\n this._flushTimer = void 0;\n }\n }\n flushBackground() {\n this.flush().catch(async (err)=>{\n await logFlushError(err);\n });\n }\n async flush() {\n const nextFlushPromise = allSettled([\n this.flushPromise\n ]).then(()=>this._flush());\n this.flushPromise = nextFlushPromise;\n this.addPendingPromise(nextFlushPromise);\n allSettled([\n nextFlushPromise\n ]).then(()=>{\n if (this.flushPromise === nextFlushPromise) this.flushPromise = null;\n });\n return nextFlushPromise;\n }\n getCustomHeaders() {\n const customUserAgent = this.getCustomUserAgent();\n const headers = {};\n if (customUserAgent && '' !== customUserAgent) headers['User-Agent'] = customUserAgent;\n return headers;\n }\n async _flush() {\n this.clearFlushTimer();\n await this._initPromise;\n let queue = this.getPersistedProperty(PostHogPersistedProperty.Queue) || [];\n if (!queue.length) return;\n const sentMessages = [];\n const originalQueueLength = queue.length;\n while(queue.length > 0 && sentMessages.length < originalQueueLength){\n const batchItems = queue.slice(0, this.maxBatchSize);\n const batchMessages = batchItems.map((item)=>item.message);\n const persistQueueChange = ()=>{\n const refreshedQueue = this.getPersistedProperty(PostHogPersistedProperty.Queue) || [];\n const newQueue = refreshedQueue.slice(batchItems.length);\n this.setPersistedProperty(PostHogPersistedProperty.Queue, newQueue);\n queue = newQueue;\n };\n const data = {\n api_key: this.apiKey,\n batch: batchMessages,\n sent_at: currentISOTime()\n };\n if (this.historicalMigration) data.historical_migration = true;\n const payload = JSON.stringify(data);\n const url = `${this.host}/batch/`;\n const gzippedPayload = this.disableCompression ? null : await gzipCompress(payload, this.isDebug);\n const fetchOptions = {\n method: 'POST',\n headers: {\n ...this.getCustomHeaders(),\n 'Content-Type': 'application/json',\n ...null !== gzippedPayload && {\n 'Content-Encoding': 'gzip'\n }\n },\n body: gzippedPayload || payload\n };\n const retryOptions = {\n retryCheck: (err)=>{\n if (isPostHogFetchContentTooLargeError(err)) return false;\n return isPostHogFetchError(err);\n }\n };\n try {\n await this.fetchWithRetry(url, fetchOptions, retryOptions);\n } catch (err) {\n if (isPostHogFetchContentTooLargeError(err) && batchMessages.length > 1) {\n this.maxBatchSize = Math.max(1, Math.floor(batchMessages.length / 2));\n this._logger.warn(`Received 413 when sending batch of size ${batchMessages.length}, reducing batch size to ${this.maxBatchSize}`);\n continue;\n }\n if (!(err instanceof PostHogFetchNetworkError)) persistQueueChange();\n this._events.emit('error', err);\n throw err;\n }\n persistQueueChange();\n sentMessages.push(...batchMessages);\n }\n this._events.emit('flush', sentMessages);\n }\n async fetchWithRetry(url, options, retryOptions, requestTimeout) {\n AbortSignal.timeout ??= function(ms) {\n const ctrl = new AbortController();\n setTimeout(()=>ctrl.abort(), ms);\n return ctrl.signal;\n };\n const body = options.body ? options.body : '';\n let reqByteLength = -1;\n try {\n reqByteLength = body instanceof Blob ? body.size : Buffer.byteLength(body, STRING_FORMAT);\n } catch {\n if (body instanceof Blob) reqByteLength = body.size;\n else {\n const encoded = new TextEncoder().encode(body);\n reqByteLength = encoded.length;\n }\n }\n return await retriable(async ()=>{\n let res = null;\n try {\n res = await this.fetch(url, {\n signal: AbortSignal.timeout(requestTimeout ?? this.requestTimeout),\n ...options\n });\n } catch (e) {\n throw new PostHogFetchNetworkError(e);\n }\n const isNoCors = 'no-cors' === options.mode;\n if (!isNoCors && (res.status < 200 || res.status >= 400)) throw new PostHogFetchHttpError(res, reqByteLength);\n return res;\n }, {\n ...this._retryOptions,\n ...retryOptions\n });\n }\n async _shutdown(shutdownTimeoutMs = 30000) {\n await this._initPromise;\n let hasTimedOut = false;\n this.clearFlushTimer();\n const doShutdown = async ()=>{\n try {\n await this.promiseQueue.join();\n while(true){\n const queue = this.getPersistedProperty(PostHogPersistedProperty.Queue) || [];\n if (0 === queue.length) break;\n await this.flush();\n if (hasTimedOut) break;\n }\n } catch (e) {\n if (!isPostHogFetchError(e)) throw e;\n await logFlushError(e);\n }\n };\n return Promise.race([\n new Promise((_, reject)=>{\n safeSetTimeout(()=>{\n this._logger.error('Timed out while shutting down PostHog');\n hasTimedOut = true;\n reject('Timeout while shutting down PostHog. Some events may not have been sent.');\n }, shutdownTimeoutMs);\n }),\n doShutdown()\n ]);\n }\n async shutdown(shutdownTimeoutMs = 30000) {\n if (this.shutdownPromise) this._logger.warn('shutdown() called while already shutting down. shutdown() is meant to be called once before process exit - use flush() for per-request cleanup');\n else this.shutdownPromise = this._shutdown(shutdownTimeoutMs).finally(()=>{\n this.shutdownPromise = null;\n });\n return this.shutdownPromise;\n }\n}\nexport { PostHogCoreStateless, posthog_core_stateless_QuotaLimitedFeature as QuotaLimitedFeature, logFlushError, maybeAdd };\n","import { createFlagsResponseFromFlagsAndPayloads, getFeatureFlagValue, getFlagValuesFromFlags, getPayloadsFromFlags, normalizeFlagsResponse, updateFlagValue } from \"./featureFlagUtils.mjs\";\nimport { Compression, PostHogPersistedProperty } from \"./types.mjs\";\nimport { PostHogCoreStateless, QuotaLimitedFeature, maybeAdd } from \"./posthog-core-stateless.mjs\";\nimport { uuidv7 } from \"./vendor/uuidv7.mjs\";\nimport { isPlainError } from \"./utils/index.mjs\";\nclass PostHogCore extends PostHogCoreStateless {\n constructor(apiKey, options){\n const disableGeoipOption = options?.disableGeoip ?? false;\n const featureFlagsRequestTimeoutMs = options?.featureFlagsRequestTimeoutMs ?? 10000;\n super(apiKey, {\n ...options,\n disableGeoip: disableGeoipOption,\n featureFlagsRequestTimeoutMs\n }), this.flagCallReported = {}, this._sessionMaxLengthSeconds = 86400, this.sessionProps = {};\n this.sendFeatureFlagEvent = options?.sendFeatureFlagEvent ?? true;\n this._sessionExpirationTimeSeconds = options?.sessionExpirationTimeSeconds ?? 1800;\n }\n setupBootstrap(options) {\n const bootstrap = options?.bootstrap;\n if (!bootstrap) return;\n if (bootstrap.distinctId) if (bootstrap.isIdentifiedId) {\n const distinctId = this.getPersistedProperty(PostHogPersistedProperty.DistinctId);\n if (!distinctId) this.setPersistedProperty(PostHogPersistedProperty.DistinctId, bootstrap.distinctId);\n } else {\n const anonymousId = this.getPersistedProperty(PostHogPersistedProperty.AnonymousId);\n if (!anonymousId) this.setPersistedProperty(PostHogPersistedProperty.AnonymousId, bootstrap.distinctId);\n }\n const bootstrapFeatureFlags = bootstrap.featureFlags;\n const bootstrapFeatureFlagPayloads = bootstrap.featureFlagPayloads ?? {};\n if (bootstrapFeatureFlags && Object.keys(bootstrapFeatureFlags).length) {\n const normalizedBootstrapFeatureFlagDetails = createFlagsResponseFromFlagsAndPayloads(bootstrapFeatureFlags, bootstrapFeatureFlagPayloads);\n if (Object.keys(normalizedBootstrapFeatureFlagDetails.flags).length > 0) {\n this.setBootstrappedFeatureFlagDetails(normalizedBootstrapFeatureFlagDetails);\n const currentFeatureFlagDetails = this.getKnownFeatureFlagDetails() || {\n flags: {},\n requestId: void 0\n };\n const newFeatureFlagDetails = {\n flags: {\n ...normalizedBootstrapFeatureFlagDetails.flags,\n ...currentFeatureFlagDetails.flags\n },\n requestId: normalizedBootstrapFeatureFlagDetails.requestId\n };\n this.setKnownFeatureFlagDetails(newFeatureFlagDetails);\n }\n }\n }\n clearProps() {\n this.props = void 0;\n this.sessionProps = {};\n this.flagCallReported = {};\n }\n on(event, cb) {\n return this._events.on(event, cb);\n }\n reset(propertiesToKeep) {\n this.wrap(()=>{\n const allPropertiesToKeep = [\n PostHogPersistedProperty.Queue,\n ...propertiesToKeep || []\n ];\n this.clearProps();\n for (const key of Object.keys(PostHogPersistedProperty))if (!allPropertiesToKeep.includes(PostHogPersistedProperty[key])) this.setPersistedProperty(PostHogPersistedProperty[key], null);\n this.reloadFeatureFlags();\n });\n }\n getCommonEventProperties() {\n const featureFlags = this.getFeatureFlags();\n const featureVariantProperties = {};\n if (featureFlags) for (const [feature, variant] of Object.entries(featureFlags))featureVariantProperties[`$feature/${feature}`] = variant;\n return {\n ...maybeAdd('$active_feature_flags', featureFlags ? Object.keys(featureFlags) : void 0),\n ...featureVariantProperties,\n ...super.getCommonEventProperties()\n };\n }\n enrichProperties(properties) {\n return {\n ...this.props,\n ...this.sessionProps,\n ...properties || {},\n ...this.getCommonEventProperties(),\n $session_id: this.getSessionId()\n };\n }\n getSessionId() {\n if (!this._isInitialized) return '';\n let sessionId = this.getPersistedProperty(PostHogPersistedProperty.SessionId);\n const sessionLastTimestamp = this.getPersistedProperty(PostHogPersistedProperty.SessionLastTimestamp) || 0;\n const sessionStartTimestamp = this.getPersistedProperty(PostHogPersistedProperty.SessionStartTimestamp) || 0;\n const now = Date.now();\n const sessionLastDif = now - sessionLastTimestamp;\n const sessionStartDif = now - sessionStartTimestamp;\n if (!sessionId || sessionLastDif > 1000 * this._sessionExpirationTimeSeconds || sessionStartDif > 1000 * this._sessionMaxLengthSeconds) {\n sessionId = uuidv7();\n this.setPersistedProperty(PostHogPersistedProperty.SessionId, sessionId);\n this.setPersistedProperty(PostHogPersistedProperty.SessionStartTimestamp, now);\n }\n this.setPersistedProperty(PostHogPersistedProperty.SessionLastTimestamp, now);\n return sessionId;\n }\n resetSessionId() {\n this.wrap(()=>{\n this.setPersistedProperty(PostHogPersistedProperty.SessionId, null);\n this.setPersistedProperty(PostHogPersistedProperty.SessionLastTimestamp, null);\n this.setPersistedProperty(PostHogPersistedProperty.SessionStartTimestamp, null);\n });\n }\n getAnonymousId() {\n if (!this._isInitialized) return '';\n let anonId = this.getPersistedProperty(PostHogPersistedProperty.AnonymousId);\n if (!anonId) {\n anonId = uuidv7();\n this.setPersistedProperty(PostHogPersistedProperty.AnonymousId, anonId);\n }\n return anonId;\n }\n getDistinctId() {\n if (!this._isInitialized) return '';\n return this.getPersistedProperty(PostHogPersistedProperty.DistinctId) || this.getAnonymousId();\n }\n registerForSession(properties) {\n this.sessionProps = {\n ...this.sessionProps,\n ...properties\n };\n }\n unregisterForSession(property) {\n delete this.sessionProps[property];\n }\n identify(distinctId, properties, options) {\n this.wrap(()=>{\n const previousDistinctId = this.getDistinctId();\n distinctId = distinctId || previousDistinctId;\n if (properties?.$groups) this.groups(properties.$groups);\n const userPropsOnce = properties?.$set_once;\n delete properties?.$set_once;\n const userProps = properties?.$set || properties;\n const allProperties = this.enrichProperties({\n $anon_distinct_id: this.getAnonymousId(),\n ...maybeAdd('$set', userProps),\n ...maybeAdd('$set_once', userPropsOnce)\n });\n if (distinctId !== previousDistinctId) {\n this.setPersistedProperty(PostHogPersistedProperty.AnonymousId, previousDistinctId);\n this.setPersistedProperty(PostHogPersistedProperty.DistinctId, distinctId);\n this.reloadFeatureFlags();\n }\n super.identifyStateless(distinctId, allProperties, options);\n });\n }\n capture(event, properties, options) {\n this.wrap(()=>{\n const distinctId = this.getDistinctId();\n if (properties?.$groups) this.groups(properties.$groups);\n const allProperties = this.enrichProperties(properties);\n super.captureStateless(distinctId, event, allProperties, options);\n });\n }\n alias(alias) {\n this.wrap(()=>{\n const distinctId = this.getDistinctId();\n const allProperties = this.enrichProperties({});\n super.aliasStateless(alias, distinctId, allProperties);\n });\n }\n autocapture(eventType, elements, properties = {}, options) {\n this.wrap(()=>{\n const distinctId = this.getDistinctId();\n const payload = {\n distinct_id: distinctId,\n event: '$autocapture',\n properties: {\n ...this.enrichProperties(properties),\n $event_type: eventType,\n $elements: elements\n }\n };\n this.enqueue('autocapture', payload, options);\n });\n }\n groups(groups) {\n this.wrap(()=>{\n const existingGroups = this.props.$groups || {};\n this.register({\n $groups: {\n ...existingGroups,\n ...groups\n }\n });\n if (Object.keys(groups).find((type)=>existingGroups[type] !== groups[type])) this.reloadFeatureFlags();\n });\n }\n group(groupType, groupKey, groupProperties, options) {\n this.wrap(()=>{\n this.groups({\n [groupType]: groupKey\n });\n if (groupProperties) this.groupIdentify(groupType, groupKey, groupProperties, options);\n });\n }\n groupIdentify(groupType, groupKey, groupProperties, options) {\n this.wrap(()=>{\n const distinctId = this.getDistinctId();\n const eventProperties = this.enrichProperties({});\n super.groupIdentifyStateless(groupType, groupKey, groupProperties, options, distinctId, eventProperties);\n });\n }\n setPersonPropertiesForFlags(properties) {\n this.wrap(()=>{\n const existingProperties = this.getPersistedProperty(PostHogPersistedProperty.PersonProperties) || {};\n this.setPersistedProperty(PostHogPersistedProperty.PersonProperties, {\n ...existingProperties,\n ...properties\n });\n });\n }\n resetPersonPropertiesForFlags() {\n this.wrap(()=>{\n this.setPersistedProperty(PostHogPersistedProperty.PersonProperties, null);\n });\n }\n setGroupPropertiesForFlags(properties) {\n this.wrap(()=>{\n const existingProperties = this.getPersistedProperty(PostHogPersistedProperty.GroupProperties) || {};\n if (0 !== Object.keys(existingProperties).length) Object.keys(existingProperties).forEach((groupType)=>{\n existingProperties[groupType] = {\n ...existingProperties[groupType],\n ...properties[groupType]\n };\n delete properties[groupType];\n });\n this.setPersistedProperty(PostHogPersistedProperty.GroupProperties, {\n ...existingProperties,\n ...properties\n });\n });\n }\n resetGroupPropertiesForFlags() {\n this.wrap(()=>{\n this.setPersistedProperty(PostHogPersistedProperty.GroupProperties, null);\n });\n }\n async remoteConfigAsync() {\n await this._initPromise;\n if (this._remoteConfigResponsePromise) return this._remoteConfigResponsePromise;\n return this._remoteConfigAsync();\n }\n async flagsAsync(sendAnonDistinctId = true, fetchConfig = true) {\n await this._initPromise;\n if (this._flagsResponsePromise) return this._flagsResponsePromise;\n return this._flagsAsync(sendAnonDistinctId, fetchConfig);\n }\n cacheSessionReplay(source, response) {\n const sessionReplay = response?.sessionRecording;\n if (sessionReplay) {\n this.setPersistedProperty(PostHogPersistedProperty.SessionReplay, sessionReplay);\n this._logger.info(`Session replay config from ${source}: `, JSON.stringify(sessionReplay));\n } else if ('boolean' == typeof sessionReplay && false === sessionReplay) {\n this._logger.info(`Session replay config from ${source} disabled.`);\n this.setPersistedProperty(PostHogPersistedProperty.SessionReplay, null);\n }\n }\n async _remoteConfigAsync() {\n this._remoteConfigResponsePromise = this._initPromise.then(()=>{\n let remoteConfig = this.getPersistedProperty(PostHogPersistedProperty.RemoteConfig);\n this._logger.info('Cached remote config: ', JSON.stringify(remoteConfig));\n return super.getRemoteConfig().then((response)=>{\n if (response) {\n const remoteConfigWithoutSurveys = {\n ...response\n };\n delete remoteConfigWithoutSurveys.surveys;\n this._logger.info('Fetched remote config: ', JSON.stringify(remoteConfigWithoutSurveys));\n if (false === this.disableSurveys) {\n const surveys = response.surveys;\n let hasSurveys = true;\n if (Array.isArray(surveys)) this._logger.info('Surveys fetched from remote config: ', JSON.stringify(surveys));\n else {\n this._logger.info('There are no surveys.');\n hasSurveys = false;\n }\n if (hasSurveys) this.setPersistedProperty(PostHogPersistedProperty.Surveys, surveys);\n else this.setPersistedProperty(PostHogPersistedProperty.Surveys, null);\n } else this.setPersistedProperty(PostHogPersistedProperty.Surveys, null);\n this.setPersistedProperty(PostHogPersistedProperty.RemoteConfig, remoteConfigWithoutSurveys);\n this.cacheSessionReplay('remote config', response);\n if (false === response.hasFeatureFlags) {\n this.setKnownFeatureFlagDetails({\n flags: {}\n });\n this._logger.warn('Remote config has no feature flags, will not load feature flags.');\n } else if (false !== this.preloadFeatureFlags) this.reloadFeatureFlags();\n if (!response.supportedCompression?.includes(Compression.GZipJS)) this.disableCompression = true;\n remoteConfig = response;\n }\n return remoteConfig;\n });\n }).finally(()=>{\n this._remoteConfigResponsePromise = void 0;\n });\n return this._remoteConfigResponsePromise;\n }\n async _flagsAsync(sendAnonDistinctId = true, fetchConfig = true) {\n this._flagsResponsePromise = this._initPromise.then(async ()=>{\n const distinctId = this.getDistinctId();\n const groups = this.props.$groups || {};\n const personProperties = this.getPersistedProperty(PostHogPersistedProperty.PersonProperties) || {};\n const groupProperties = this.getPersistedProperty(PostHogPersistedProperty.GroupProperties) || {};\n const extraProperties = {\n $anon_distinct_id: sendAnonDistinctId ? this.getAnonymousId() : void 0\n };\n const res = await super.getFlags(distinctId, groups, personProperties, groupProperties, extraProperties, fetchConfig);\n if (res?.quotaLimited?.includes(QuotaLimitedFeature.FeatureFlags)) {\n this.setKnownFeatureFlagDetails(null);\n console.warn('[FEATURE FLAGS] Feature flags quota limit exceeded - unsetting all flags. Learn more about billing limits at https://posthog.com/docs/billing/limits-alerts');\n return res;\n }\n if (res?.featureFlags) {\n if (this.sendFeatureFlagEvent) this.flagCallReported = {};\n let newFeatureFlagDetails = res;\n if (res.errorsWhileComputingFlags) {\n const currentFlagDetails = this.getKnownFeatureFlagDetails();\n this._logger.info('Cached feature flags: ', JSON.stringify(currentFlagDetails));\n newFeatureFlagDetails = {\n ...res,\n flags: {\n ...currentFlagDetails?.flags,\n ...res.flags\n }\n };\n }\n this.setKnownFeatureFlagDetails(newFeatureFlagDetails);\n this.setPersistedProperty(PostHogPersistedProperty.FlagsEndpointWasHit, true);\n this.cacheSessionReplay('flags', res);\n }\n return res;\n }).finally(()=>{\n this._flagsResponsePromise = void 0;\n });\n return this._flagsResponsePromise;\n }\n setKnownFeatureFlagDetails(flagsResponse) {\n this.wrap(()=>{\n this.setPersistedProperty(PostHogPersistedProperty.FeatureFlagDetails, flagsResponse);\n this._events.emit('featureflags', getFlagValuesFromFlags(flagsResponse?.flags ?? {}));\n });\n }\n getKnownFeatureFlagDetails() {\n const storedDetails = this.getPersistedProperty(PostHogPersistedProperty.FeatureFlagDetails);\n if (!storedDetails) {\n const featureFlags = this.getPersistedProperty(PostHogPersistedProperty.FeatureFlags);\n const featureFlagPayloads = this.getPersistedProperty(PostHogPersistedProperty.FeatureFlagPayloads);\n if (void 0 === featureFlags && void 0 === featureFlagPayloads) return;\n return createFlagsResponseFromFlagsAndPayloads(featureFlags ?? {}, featureFlagPayloads ?? {});\n }\n return normalizeFlagsResponse(storedDetails);\n }\n getKnownFeatureFlags() {\n const featureFlagDetails = this.getKnownFeatureFlagDetails();\n if (!featureFlagDetails) return;\n return getFlagValuesFromFlags(featureFlagDetails.flags);\n }\n getKnownFeatureFlagPayloads() {\n const featureFlagDetails = this.getKnownFeatureFlagDetails();\n if (!featureFlagDetails) return;\n return getPayloadsFromFlags(featureFlagDetails.flags);\n }\n getBootstrappedFeatureFlagDetails() {\n const details = this.getPersistedProperty(PostHogPersistedProperty.BootstrapFeatureFlagDetails);\n if (!details) return;\n return details;\n }\n setBootstrappedFeatureFlagDetails(details) {\n this.setPersistedProperty(PostHogPersistedProperty.BootstrapFeatureFlagDetails, details);\n }\n getBootstrappedFeatureFlags() {\n const details = this.getBootstrappedFeatureFlagDetails();\n if (!details) return;\n return getFlagValuesFromFlags(details.flags);\n }\n getBootstrappedFeatureFlagPayloads() {\n const details = this.getBootstrappedFeatureFlagDetails();\n if (!details) return;\n return getPayloadsFromFlags(details.flags);\n }\n getFeatureFlag(key) {\n const details = this.getFeatureFlagDetails();\n if (!details) return;\n const featureFlag = details.flags[key];\n let response = getFeatureFlagValue(featureFlag);\n if (void 0 === response) response = false;\n if (this.sendFeatureFlagEvent && !this.flagCallReported[key]) {\n const bootstrappedResponse = this.getBootstrappedFeatureFlags()?.[key];\n const bootstrappedPayload = this.getBootstrappedFeatureFlagPayloads()?.[key];\n this.flagCallReported[key] = true;\n this.capture('$feature_flag_called', {\n $feature_flag: key,\n $feature_flag_response: response,\n ...maybeAdd('$feature_flag_id', featureFlag?.metadata?.id),\n ...maybeAdd('$feature_flag_version', featureFlag?.metadata?.version),\n ...maybeAdd('$feature_flag_reason', featureFlag?.reason?.description ?? featureFlag?.reason?.code),\n ...maybeAdd('$feature_flag_bootstrapped_response', bootstrappedResponse),\n ...maybeAdd('$feature_flag_bootstrapped_payload', bootstrappedPayload),\n $used_bootstrap_value: !this.getPersistedProperty(PostHogPersistedProperty.FlagsEndpointWasHit),\n ...maybeAdd('$feature_flag_request_id', details.requestId)\n });\n }\n return response;\n }\n getFeatureFlagPayload(key) {\n const payloads = this.getFeatureFlagPayloads();\n if (!payloads) return;\n const response = payloads[key];\n if (void 0 === response) return null;\n return response;\n }\n getFeatureFlagPayloads() {\n return this.getFeatureFlagDetails()?.featureFlagPayloads;\n }\n getFeatureFlags() {\n return this.getFeatureFlagDetails()?.featureFlags;\n }\n getFeatureFlagDetails() {\n let details = this.getKnownFeatureFlagDetails();\n const overriddenFlags = this.getPersistedProperty(PostHogPersistedProperty.OverrideFeatureFlags);\n if (!overriddenFlags) return details;\n details = details ?? {\n featureFlags: {},\n featureFlagPayloads: {},\n flags: {}\n };\n const flags = details.flags ?? {};\n for(const key in overriddenFlags)if (overriddenFlags[key]) flags[key] = updateFlagValue(flags[key], overriddenFlags[key]);\n else delete flags[key];\n const result = {\n ...details,\n flags\n };\n return normalizeFlagsResponse(result);\n }\n getFeatureFlagsAndPayloads() {\n const flags = this.getFeatureFlags();\n const payloads = this.getFeatureFlagPayloads();\n return {\n flags,\n payloads\n };\n }\n isFeatureEnabled(key) {\n const response = this.getFeatureFlag(key);\n if (void 0 === response) return;\n return !!response;\n }\n reloadFeatureFlags(options) {\n this.flagsAsync(true).then((res)=>{\n options?.cb?.(void 0, res?.featureFlags);\n }).catch((e)=>{\n options?.cb?.(e, void 0);\n if (!options?.cb) this._logger.info('Error reloading feature flags', e);\n });\n }\n async reloadRemoteConfigAsync() {\n return await this.remoteConfigAsync();\n }\n async reloadFeatureFlagsAsync(sendAnonDistinctId) {\n return (await this.flagsAsync(sendAnonDistinctId ?? true))?.featureFlags;\n }\n onFeatureFlags(cb) {\n return this.on('featureflags', async ()=>{\n const flags = this.getFeatureFlags();\n if (flags) cb(flags);\n });\n }\n onFeatureFlag(key, cb) {\n return this.on('featureflags', async ()=>{\n const flagResponse = this.getFeatureFlag(key);\n if (void 0 !== flagResponse) cb(flagResponse);\n });\n }\n async overrideFeatureFlag(flags) {\n this.wrap(()=>{\n if (null === flags) return this.setPersistedProperty(PostHogPersistedProperty.OverrideFeatureFlags, null);\n return this.setPersistedProperty(PostHogPersistedProperty.OverrideFeatureFlags, flags);\n });\n }\n captureException(error, additionalProperties) {\n const properties = {\n $exception_level: 'error',\n $exception_list: [\n {\n type: isPlainError(error) ? error.name : 'Error',\n value: isPlainError(error) ? error.message : error,\n mechanism: {\n handled: true,\n synthetic: false\n }\n }\n ],\n ...additionalProperties\n };\n this.capture('$exception', properties);\n }\n captureTraceFeedback(traceId, userFeedback) {\n this.capture('$ai_feedback', {\n $ai_feedback_text: userFeedback,\n $ai_trace_id: String(traceId)\n });\n }\n captureTraceMetric(traceId, metricName, metricValue) {\n this.capture('$ai_metric', {\n $ai_metric_name: metricName,\n $ai_metric_value: String(metricValue),\n $ai_trace_id: String(traceId)\n });\n }\n}\nexport { PostHogCore };\n",null,null,null,null],"names":["PostHogPersistedProperty","Compression","QuotaLimitedFeature","version","PREFIX","logger","info","args","console","log","warn","error","Leanbase","PostHogCore","constructor","apiKey","options","leanbaseOptions","host","_storage","Map","_storageKey","window","localStorage","stored","getItem","parsed","JSON","parse","Object","entries","forEach","key","value","set","err","preloadFeatureFlags","reloadFeatureFlags","fetch","url","fetchFn","getFetch","Promise","reject","Error","getLibraryId","getLibraryVersion","getCustomUserAgent","getPersistedProperty","get","setPersistedProperty","isNull","delete","obj","v","k","setItem","stringify","capture","event","properties","identify","distinctId","destroy","clear","api","_instance","_queue","init","q","fn","push","group","isFunction","alias","reset","getInstance","attachToGlobal","g","existing","leanbase","isArray","globalThis"],"mappings":"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"}
1
+ {"version":3,"file":"leanbase.iife.js","sources":["../../core/dist/featureFlagUtils.mjs","../../core/dist/vendor/uuidv7.mjs","../../core/dist/types.mjs","../../core/dist/utils/string-utils.mjs","../../core/dist/utils/type-utils.mjs","../../core/dist/utils/number-utils.mjs","../../core/dist/utils/promise-queue.mjs","../../core/dist/utils/index.mjs","../../core/dist/eventemitter.mjs","../../core/dist/gzip.mjs","../../core/dist/logger.mjs","../../core/dist/posthog-core-stateless.mjs","../../core/dist/posthog-core.mjs","../src/utils/index.ts","../src/constants.ts","../src/leanbase-logger.ts","../src/uuidv7.ts","../src/storage.ts","../src/utils/request-utils.ts","../src/utils/user-agent-utils.ts","../src/config.ts","../src/utils/event-utils.ts","../src/leanbase-persistence.ts","../src/utils/element-utils.ts","../src/autocapture-utils.ts","../src/extensions/rageclick.ts","../src/types.ts","../src/autocapture.ts","../src/page-view.ts","../src/scroll-manager.ts","../src/utils/blocked-uas.ts","../src/leanbase.ts","../src/iife.ts"],"sourcesContent":["const normalizeFlagsResponse = (flagsResponse)=>{\n if ('flags' in flagsResponse) {\n const featureFlags = getFlagValuesFromFlags(flagsResponse.flags);\n const featureFlagPayloads = getPayloadsFromFlags(flagsResponse.flags);\n return {\n ...flagsResponse,\n featureFlags,\n featureFlagPayloads\n };\n }\n {\n const featureFlags = flagsResponse.featureFlags ?? {};\n const featureFlagPayloads = Object.fromEntries(Object.entries(flagsResponse.featureFlagPayloads || {}).map(([k, v])=>[\n k,\n parsePayload(v)\n ]));\n const flags = Object.fromEntries(Object.entries(featureFlags).map(([key, value])=>[\n key,\n getFlagDetailFromFlagAndPayload(key, value, featureFlagPayloads[key])\n ]));\n return {\n ...flagsResponse,\n featureFlags,\n featureFlagPayloads,\n flags\n };\n }\n};\nfunction getFlagDetailFromFlagAndPayload(key, value, payload) {\n return {\n key: key,\n enabled: 'string' == typeof value ? true : value,\n variant: 'string' == typeof value ? value : void 0,\n reason: void 0,\n metadata: {\n id: void 0,\n version: void 0,\n payload: payload ? JSON.stringify(payload) : void 0,\n description: void 0\n }\n };\n}\nconst getFlagValuesFromFlags = (flags)=>Object.fromEntries(Object.entries(flags ?? {}).map(([key, detail])=>[\n key,\n getFeatureFlagValue(detail)\n ]).filter(([, value])=>void 0 !== value));\nconst getPayloadsFromFlags = (flags)=>{\n const safeFlags = flags ?? {};\n return Object.fromEntries(Object.keys(safeFlags).filter((flag)=>{\n const details = safeFlags[flag];\n return details.enabled && details.metadata && void 0 !== details.metadata.payload;\n }).map((flag)=>{\n const payload = safeFlags[flag].metadata?.payload;\n return [\n flag,\n payload ? parsePayload(payload) : void 0\n ];\n }));\n};\nconst getFlagDetailsFromFlagsAndPayloads = (flagsResponse)=>{\n const flags = flagsResponse.featureFlags ?? {};\n const payloads = flagsResponse.featureFlagPayloads ?? {};\n return Object.fromEntries(Object.entries(flags).map(([key, value])=>[\n key,\n {\n key: key,\n enabled: 'string' == typeof value ? true : value,\n variant: 'string' == typeof value ? value : void 0,\n reason: void 0,\n metadata: {\n id: void 0,\n version: void 0,\n payload: payloads?.[key] ? JSON.stringify(payloads[key]) : void 0,\n description: void 0\n }\n }\n ]));\n};\nconst getFeatureFlagValue = (detail)=>void 0 === detail ? void 0 : detail.variant ?? detail.enabled;\nconst parsePayload = (response)=>{\n if ('string' != typeof response) return response;\n try {\n return JSON.parse(response);\n } catch {\n return response;\n }\n};\nconst createFlagsResponseFromFlagsAndPayloads = (featureFlags, featureFlagPayloads)=>{\n const allKeys = [\n ...new Set([\n ...Object.keys(featureFlags ?? {}),\n ...Object.keys(featureFlagPayloads ?? {})\n ])\n ];\n const enabledFlags = allKeys.filter((flag)=>!!featureFlags[flag] || !!featureFlagPayloads[flag]).reduce((res, key)=>(res[key] = featureFlags[key] ?? true, res), {});\n const flagDetails = {\n featureFlags: enabledFlags,\n featureFlagPayloads: featureFlagPayloads ?? {}\n };\n return normalizeFlagsResponse(flagDetails);\n};\nconst updateFlagValue = (flag, value)=>({\n ...flag,\n enabled: getEnabledFromValue(value),\n variant: getVariantFromValue(value)\n });\nfunction getEnabledFromValue(value) {\n return 'string' == typeof value ? true : value;\n}\nfunction getVariantFromValue(value) {\n return 'string' == typeof value ? value : void 0;\n}\nexport { createFlagsResponseFromFlagsAndPayloads, getFeatureFlagValue, getFlagDetailsFromFlagsAndPayloads, getFlagValuesFromFlags, getPayloadsFromFlags, normalizeFlagsResponse, parsePayload, updateFlagValue };\n","/*! For license information please see uuidv7.mjs.LICENSE.txt */\n/**\n * uuidv7: An experimental implementation of the proposed UUID Version 7\n *\n * @license Apache-2.0\n * @copyright 2021-2023 LiosK\n * @packageDocumentation\n */ const DIGITS = \"0123456789abcdef\";\nclass UUID {\n constructor(bytes){\n this.bytes = bytes;\n }\n static ofInner(bytes) {\n if (16 === bytes.length) return new UUID(bytes);\n throw new TypeError(\"not 128-bit length\");\n }\n static fromFieldsV7(unixTsMs, randA, randBHi, randBLo) {\n if (!Number.isInteger(unixTsMs) || !Number.isInteger(randA) || !Number.isInteger(randBHi) || !Number.isInteger(randBLo) || unixTsMs < 0 || randA < 0 || randBHi < 0 || randBLo < 0 || unixTsMs > 0xffffffffffff || randA > 0xfff || randBHi > 0x3fffffff || randBLo > 0xffffffff) throw new RangeError(\"invalid field value\");\n const bytes = new Uint8Array(16);\n bytes[0] = unixTsMs / 2 ** 40;\n bytes[1] = unixTsMs / 2 ** 32;\n bytes[2] = unixTsMs / 2 ** 24;\n bytes[3] = unixTsMs / 2 ** 16;\n bytes[4] = unixTsMs / 256;\n bytes[5] = unixTsMs;\n bytes[6] = 0x70 | randA >>> 8;\n bytes[7] = randA;\n bytes[8] = 0x80 | randBHi >>> 24;\n bytes[9] = randBHi >>> 16;\n bytes[10] = randBHi >>> 8;\n bytes[11] = randBHi;\n bytes[12] = randBLo >>> 24;\n bytes[13] = randBLo >>> 16;\n bytes[14] = randBLo >>> 8;\n bytes[15] = randBLo;\n return new UUID(bytes);\n }\n static parse(uuid) {\n let hex;\n switch(uuid.length){\n case 32:\n hex = /^[0-9a-f]{32}$/i.exec(uuid)?.[0];\n break;\n case 36:\n hex = /^([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(uuid)?.slice(1, 6).join(\"\");\n break;\n case 38:\n hex = /^\\{([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})\\}$/i.exec(uuid)?.slice(1, 6).join(\"\");\n break;\n case 45:\n hex = /^urn:uuid:([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(uuid)?.slice(1, 6).join(\"\");\n break;\n default:\n break;\n }\n if (hex) {\n const inner = new Uint8Array(16);\n for(let i = 0; i < 16; i += 4){\n const n = parseInt(hex.substring(2 * i, 2 * i + 8), 16);\n inner[i + 0] = n >>> 24;\n inner[i + 1] = n >>> 16;\n inner[i + 2] = n >>> 8;\n inner[i + 3] = n;\n }\n return new UUID(inner);\n }\n throw new SyntaxError(\"could not parse UUID string\");\n }\n toString() {\n let text = \"\";\n for(let i = 0; i < this.bytes.length; i++){\n text += DIGITS.charAt(this.bytes[i] >>> 4);\n text += DIGITS.charAt(0xf & this.bytes[i]);\n if (3 === i || 5 === i || 7 === i || 9 === i) text += \"-\";\n }\n return text;\n }\n toHex() {\n let text = \"\";\n for(let i = 0; i < this.bytes.length; i++){\n text += DIGITS.charAt(this.bytes[i] >>> 4);\n text += DIGITS.charAt(0xf & this.bytes[i]);\n }\n return text;\n }\n toJSON() {\n return this.toString();\n }\n getVariant() {\n const n = this.bytes[8] >>> 4;\n if (n < 0) throw new Error(\"unreachable\");\n if (n <= 7) return this.bytes.every((e)=>0 === e) ? \"NIL\" : \"VAR_0\";\n if (n <= 11) return \"VAR_10\";\n if (n <= 13) return \"VAR_110\";\n if (n <= 15) return this.bytes.every((e)=>0xff === e) ? \"MAX\" : \"VAR_RESERVED\";\n else throw new Error(\"unreachable\");\n }\n getVersion() {\n return \"VAR_10\" === this.getVariant() ? this.bytes[6] >>> 4 : void 0;\n }\n clone() {\n return new UUID(this.bytes.slice(0));\n }\n equals(other) {\n return 0 === this.compareTo(other);\n }\n compareTo(other) {\n for(let i = 0; i < 16; i++){\n const diff = this.bytes[i] - other.bytes[i];\n if (0 !== diff) return Math.sign(diff);\n }\n return 0;\n }\n}\nclass V7Generator {\n constructor(randomNumberGenerator){\n this.timestamp = 0;\n this.counter = 0;\n this.random = randomNumberGenerator ?? getDefaultRandom();\n }\n generate() {\n return this.generateOrResetCore(Date.now(), 10000);\n }\n generateOrAbort() {\n return this.generateOrAbortCore(Date.now(), 10000);\n }\n generateOrResetCore(unixTsMs, rollbackAllowance) {\n let value = this.generateOrAbortCore(unixTsMs, rollbackAllowance);\n if (void 0 === value) {\n this.timestamp = 0;\n value = this.generateOrAbortCore(unixTsMs, rollbackAllowance);\n }\n return value;\n }\n generateOrAbortCore(unixTsMs, rollbackAllowance) {\n const MAX_COUNTER = 0x3ffffffffff;\n if (!Number.isInteger(unixTsMs) || unixTsMs < 1 || unixTsMs > 0xffffffffffff) throw new RangeError(\"`unixTsMs` must be a 48-bit positive integer\");\n if (rollbackAllowance < 0 || rollbackAllowance > 0xffffffffffff) throw new RangeError(\"`rollbackAllowance` out of reasonable range\");\n if (unixTsMs > this.timestamp) {\n this.timestamp = unixTsMs;\n this.resetCounter();\n } else {\n if (!(unixTsMs + rollbackAllowance >= this.timestamp)) return;\n this.counter++;\n if (this.counter > MAX_COUNTER) {\n this.timestamp++;\n this.resetCounter();\n }\n }\n return UUID.fromFieldsV7(this.timestamp, Math.trunc(this.counter / 2 ** 30), this.counter & 2 ** 30 - 1, this.random.nextUint32());\n }\n resetCounter() {\n this.counter = 0x400 * this.random.nextUint32() + (0x3ff & this.random.nextUint32());\n }\n generateV4() {\n const bytes = new Uint8Array(Uint32Array.of(this.random.nextUint32(), this.random.nextUint32(), this.random.nextUint32(), this.random.nextUint32()).buffer);\n bytes[6] = 0x40 | bytes[6] >>> 4;\n bytes[8] = 0x80 | bytes[8] >>> 2;\n return UUID.ofInner(bytes);\n }\n}\nconst getDefaultRandom = ()=>({\n nextUint32: ()=>0x10000 * Math.trunc(0x10000 * Math.random()) + Math.trunc(0x10000 * Math.random())\n });\nlet defaultGenerator;\nconst uuidv7 = ()=>uuidv7obj().toString();\nconst uuidv7obj = ()=>(defaultGenerator || (defaultGenerator = new V7Generator())).generate();\nconst uuidv4 = ()=>uuidv4obj().toString();\nconst uuidv4obj = ()=>(defaultGenerator || (defaultGenerator = new V7Generator())).generateV4();\nexport { UUID, V7Generator, uuidv4, uuidv4obj, uuidv7, uuidv7obj };\n","var types_PostHogPersistedProperty = /*#__PURE__*/ function(PostHogPersistedProperty) {\n PostHogPersistedProperty[\"AnonymousId\"] = \"anonymous_id\";\n PostHogPersistedProperty[\"DistinctId\"] = \"distinct_id\";\n PostHogPersistedProperty[\"Props\"] = \"props\";\n PostHogPersistedProperty[\"FeatureFlagDetails\"] = \"feature_flag_details\";\n PostHogPersistedProperty[\"FeatureFlags\"] = \"feature_flags\";\n PostHogPersistedProperty[\"FeatureFlagPayloads\"] = \"feature_flag_payloads\";\n PostHogPersistedProperty[\"BootstrapFeatureFlagDetails\"] = \"bootstrap_feature_flag_details\";\n PostHogPersistedProperty[\"BootstrapFeatureFlags\"] = \"bootstrap_feature_flags\";\n PostHogPersistedProperty[\"BootstrapFeatureFlagPayloads\"] = \"bootstrap_feature_flag_payloads\";\n PostHogPersistedProperty[\"OverrideFeatureFlags\"] = \"override_feature_flags\";\n PostHogPersistedProperty[\"Queue\"] = \"queue\";\n PostHogPersistedProperty[\"OptedOut\"] = \"opted_out\";\n PostHogPersistedProperty[\"SessionId\"] = \"session_id\";\n PostHogPersistedProperty[\"SessionStartTimestamp\"] = \"session_start_timestamp\";\n PostHogPersistedProperty[\"SessionLastTimestamp\"] = \"session_timestamp\";\n PostHogPersistedProperty[\"PersonProperties\"] = \"person_properties\";\n PostHogPersistedProperty[\"GroupProperties\"] = \"group_properties\";\n PostHogPersistedProperty[\"InstalledAppBuild\"] = \"installed_app_build\";\n PostHogPersistedProperty[\"InstalledAppVersion\"] = \"installed_app_version\";\n PostHogPersistedProperty[\"SessionReplay\"] = \"session_replay\";\n PostHogPersistedProperty[\"SurveyLastSeenDate\"] = \"survey_last_seen_date\";\n PostHogPersistedProperty[\"SurveysSeen\"] = \"surveys_seen\";\n PostHogPersistedProperty[\"Surveys\"] = \"surveys\";\n PostHogPersistedProperty[\"RemoteConfig\"] = \"remote_config\";\n PostHogPersistedProperty[\"FlagsEndpointWasHit\"] = \"flags_endpoint_was_hit\";\n return PostHogPersistedProperty;\n}({});\nvar types_Compression = /*#__PURE__*/ function(Compression) {\n Compression[\"GZipJS\"] = \"gzip-js\";\n Compression[\"Base64\"] = \"base64\";\n return Compression;\n}({});\nvar types_SurveyPosition = /*#__PURE__*/ function(SurveyPosition) {\n SurveyPosition[\"TopLeft\"] = \"top_left\";\n SurveyPosition[\"TopCenter\"] = \"top_center\";\n SurveyPosition[\"TopRight\"] = \"top_right\";\n SurveyPosition[\"MiddleLeft\"] = \"middle_left\";\n SurveyPosition[\"MiddleCenter\"] = \"middle_center\";\n SurveyPosition[\"MiddleRight\"] = \"middle_right\";\n SurveyPosition[\"Left\"] = \"left\";\n SurveyPosition[\"Right\"] = \"right\";\n SurveyPosition[\"Center\"] = \"center\";\n return SurveyPosition;\n}({});\nvar types_SurveyWidgetType = /*#__PURE__*/ function(SurveyWidgetType) {\n SurveyWidgetType[\"Button\"] = \"button\";\n SurveyWidgetType[\"Tab\"] = \"tab\";\n SurveyWidgetType[\"Selector\"] = \"selector\";\n return SurveyWidgetType;\n}({});\nvar types_SurveyType = /*#__PURE__*/ function(SurveyType) {\n SurveyType[\"Popover\"] = \"popover\";\n SurveyType[\"API\"] = \"api\";\n SurveyType[\"Widget\"] = \"widget\";\n SurveyType[\"ExternalSurvey\"] = \"external_survey\";\n return SurveyType;\n}({});\nvar types_SurveyQuestionDescriptionContentType = /*#__PURE__*/ function(SurveyQuestionDescriptionContentType) {\n SurveyQuestionDescriptionContentType[\"Html\"] = \"html\";\n SurveyQuestionDescriptionContentType[\"Text\"] = \"text\";\n return SurveyQuestionDescriptionContentType;\n}({});\nvar types_SurveyRatingDisplay = /*#__PURE__*/ function(SurveyRatingDisplay) {\n SurveyRatingDisplay[\"Number\"] = \"number\";\n SurveyRatingDisplay[\"Emoji\"] = \"emoji\";\n return SurveyRatingDisplay;\n}({});\nvar types_SurveyQuestionType = /*#__PURE__*/ function(SurveyQuestionType) {\n SurveyQuestionType[\"Open\"] = \"open\";\n SurveyQuestionType[\"MultipleChoice\"] = \"multiple_choice\";\n SurveyQuestionType[\"SingleChoice\"] = \"single_choice\";\n SurveyQuestionType[\"Rating\"] = \"rating\";\n SurveyQuestionType[\"Link\"] = \"link\";\n return SurveyQuestionType;\n}({});\nvar types_SurveyQuestionBranchingType = /*#__PURE__*/ function(SurveyQuestionBranchingType) {\n SurveyQuestionBranchingType[\"NextQuestion\"] = \"next_question\";\n SurveyQuestionBranchingType[\"End\"] = \"end\";\n SurveyQuestionBranchingType[\"ResponseBased\"] = \"response_based\";\n SurveyQuestionBranchingType[\"SpecificQuestion\"] = \"specific_question\";\n return SurveyQuestionBranchingType;\n}({});\nvar types_SurveyMatchType = /*#__PURE__*/ function(SurveyMatchType) {\n SurveyMatchType[\"Regex\"] = \"regex\";\n SurveyMatchType[\"NotRegex\"] = \"not_regex\";\n SurveyMatchType[\"Exact\"] = \"exact\";\n SurveyMatchType[\"IsNot\"] = \"is_not\";\n SurveyMatchType[\"Icontains\"] = \"icontains\";\n SurveyMatchType[\"NotIcontains\"] = \"not_icontains\";\n return SurveyMatchType;\n}({});\nvar types_ActionStepStringMatching = /*#__PURE__*/ function(ActionStepStringMatching) {\n ActionStepStringMatching[\"Contains\"] = \"contains\";\n ActionStepStringMatching[\"Exact\"] = \"exact\";\n ActionStepStringMatching[\"Regex\"] = \"regex\";\n return ActionStepStringMatching;\n}({});\nconst knownUnsafeEditableEvent = [\n '$snapshot',\n '$pageview',\n '$pageleave',\n '$set',\n 'survey dismissed',\n 'survey sent',\n 'survey shown',\n '$identify',\n '$groupidentify',\n '$create_alias',\n '$$client_ingestion_warning',\n '$web_experiment_applied',\n '$feature_enrollment_update',\n '$feature_flag_called'\n];\nexport { types_ActionStepStringMatching as ActionStepStringMatching, types_Compression as Compression, types_PostHogPersistedProperty as PostHogPersistedProperty, types_SurveyMatchType as SurveyMatchType, types_SurveyPosition as SurveyPosition, types_SurveyQuestionBranchingType as SurveyQuestionBranchingType, types_SurveyQuestionDescriptionContentType as SurveyQuestionDescriptionContentType, types_SurveyQuestionType as SurveyQuestionType, types_SurveyRatingDisplay as SurveyRatingDisplay, types_SurveyType as SurveyType, types_SurveyWidgetType as SurveyWidgetType, knownUnsafeEditableEvent };\n","function includes(str, needle) {\n return -1 !== str.indexOf(needle);\n}\nconst trim = function(str) {\n return str.trim();\n};\nconst stripLeadingDollar = function(s) {\n return s.replace(/^\\$/, '');\n};\nfunction isDistinctIdStringLike(value) {\n return [\n 'distinct_id',\n 'distinctid'\n ].includes(value.toLowerCase());\n}\nexport { includes, isDistinctIdStringLike, stripLeadingDollar, trim };\n","import { knownUnsafeEditableEvent } from \"../types.mjs\";\nimport { includes } from \"./string-utils.mjs\";\nconst nativeIsArray = Array.isArray;\nconst ObjProto = Object.prototype;\nconst type_utils_hasOwnProperty = ObjProto.hasOwnProperty;\nconst type_utils_toString = ObjProto.toString;\nconst isArray = nativeIsArray || function(obj) {\n return '[object Array]' === type_utils_toString.call(obj);\n};\nconst isFunction = (x)=>'function' == typeof x;\nconst isNativeFunction = (x)=>isFunction(x) && -1 !== x.toString().indexOf('[native code]');\nconst isObject = (x)=>x === Object(x) && !isArray(x);\nconst isEmptyObject = (x)=>{\n if (isObject(x)) {\n for(const key in x)if (type_utils_hasOwnProperty.call(x, key)) return false;\n return true;\n }\n return false;\n};\nconst isUndefined = (x)=>void 0 === x;\nconst isString = (x)=>'[object String]' == type_utils_toString.call(x);\nconst isEmptyString = (x)=>isString(x) && 0 === x.trim().length;\nconst isNull = (x)=>null === x;\nconst isNullish = (x)=>isUndefined(x) || isNull(x);\nconst isNumber = (x)=>'[object Number]' == type_utils_toString.call(x);\nconst isBoolean = (x)=>'[object Boolean]' === type_utils_toString.call(x);\nconst isFormData = (x)=>x instanceof FormData;\nconst isFile = (x)=>x instanceof File;\nconst isPlainError = (x)=>x instanceof Error;\nconst isKnownUnsafeEditableEvent = (x)=>includes(knownUnsafeEditableEvent, x);\nfunction isInstanceOf(candidate, base) {\n try {\n return candidate instanceof base;\n } catch {\n return false;\n }\n}\nfunction isPrimitive(value) {\n return null === value || 'object' != typeof value;\n}\nfunction isBuiltin(candidate, className) {\n return Object.prototype.toString.call(candidate) === `[object ${className}]`;\n}\nfunction isError(candidate) {\n switch(Object.prototype.toString.call(candidate)){\n case '[object Error]':\n case '[object Exception]':\n case '[object DOMException]':\n case '[object DOMError]':\n case '[object WebAssembly.Exception]':\n return true;\n default:\n return isInstanceOf(candidate, Error);\n }\n}\nfunction isErrorEvent(event) {\n return isBuiltin(event, 'ErrorEvent');\n}\nfunction isEvent(candidate) {\n return !isUndefined(Event) && isInstanceOf(candidate, Event);\n}\nfunction isPlainObject(candidate) {\n return isBuiltin(candidate, 'Object');\n}\nconst yesLikeValues = [\n true,\n 'true',\n 1,\n '1',\n 'yes'\n];\nconst isYesLike = (val)=>includes(yesLikeValues, val);\nconst noLikeValues = [\n false,\n 'false',\n 0,\n '0',\n 'no'\n];\nconst isNoLike = (val)=>includes(noLikeValues, val);\nexport { type_utils_hasOwnProperty as hasOwnProperty, isArray, isBoolean, isBuiltin, isEmptyObject, isEmptyString, isError, isErrorEvent, isEvent, isFile, isFormData, isFunction, isInstanceOf, isKnownUnsafeEditableEvent, isNativeFunction, isNoLike, isNull, isNullish, isNumber, isObject, isPlainError, isPlainObject, isPrimitive, isString, isUndefined, isYesLike, noLikeValues, yesLikeValues };\n","import { isNumber } from \"./type-utils.mjs\";\nfunction clampToRange(value, min, max, logger, fallbackValue) {\n if (min > max) {\n logger.warn('min cannot be greater than max.');\n min = max;\n }\n if (isNumber(value)) if (value > max) {\n logger.warn(' cannot be greater than max: ' + max + '. Using max value instead.');\n return max;\n } else {\n if (!(value < min)) return value;\n logger.warn(' cannot be less than min: ' + min + '. Using min value instead.');\n return min;\n }\n logger.warn(' must be a number. using max or fallback. max: ' + max + ', fallback: ' + fallbackValue);\n return clampToRange(fallbackValue || max, min, max, logger);\n}\nexport { clampToRange };\n","import { uuidv7 } from \"../vendor/uuidv7.mjs\";\nclass PromiseQueue {\n add(promise) {\n const promiseUUID = uuidv7();\n this.promiseByIds[promiseUUID] = promise;\n promise.catch(()=>{}).finally(()=>{\n delete this.promiseByIds[promiseUUID];\n });\n return promise;\n }\n async join() {\n let promises = Object.values(this.promiseByIds);\n let length = promises.length;\n while(length > 0){\n await Promise.all(promises);\n promises = Object.values(this.promiseByIds);\n length = promises.length;\n }\n }\n get length() {\n return Object.keys(this.promiseByIds).length;\n }\n constructor(){\n this.promiseByIds = {};\n }\n}\nexport { PromiseQueue };\n","export * from \"./bucketed-rate-limiter.mjs\";\nexport * from \"./number-utils.mjs\";\nexport * from \"./string-utils.mjs\";\nexport * from \"./type-utils.mjs\";\nexport * from \"./promise-queue.mjs\";\nconst STRING_FORMAT = 'utf8';\nfunction assert(truthyValue, message) {\n if (!truthyValue || 'string' != typeof truthyValue || isEmpty(truthyValue)) throw new Error(message);\n}\nfunction isEmpty(truthyValue) {\n if (0 === truthyValue.trim().length) return true;\n return false;\n}\nfunction removeTrailingSlash(url) {\n return url?.replace(/\\/+$/, '');\n}\nasync function retriable(fn, props) {\n let lastError = null;\n for(let i = 0; i < props.retryCount + 1; i++){\n if (i > 0) await new Promise((r)=>setTimeout(r, props.retryDelay));\n try {\n const res = await fn();\n return res;\n } catch (e) {\n lastError = e;\n if (!props.retryCheck(e)) throw e;\n }\n }\n throw lastError;\n}\nfunction currentTimestamp() {\n return new Date().getTime();\n}\nfunction currentISOTime() {\n return new Date().toISOString();\n}\nfunction safeSetTimeout(fn, timeout) {\n const t = setTimeout(fn, timeout);\n t?.unref && t?.unref();\n return t;\n}\nconst isPromise = (obj)=>obj && 'function' == typeof obj.then;\nconst isError = (x)=>x instanceof Error;\nfunction getFetch() {\n return 'undefined' != typeof fetch ? fetch : void 0 !== globalThis.fetch ? globalThis.fetch : void 0;\n}\nfunction allSettled(promises) {\n return Promise.all(promises.map((p)=>(p ?? Promise.resolve()).then((value)=>({\n status: 'fulfilled',\n value\n }), (reason)=>({\n status: 'rejected',\n reason\n }))));\n}\nexport { STRING_FORMAT, allSettled, assert, currentISOTime, currentTimestamp, getFetch, isError, isPromise, removeTrailingSlash, retriable, safeSetTimeout };\n","class SimpleEventEmitter {\n constructor(){\n this.events = {};\n this.events = {};\n }\n on(event, listener) {\n if (!this.events[event]) this.events[event] = [];\n this.events[event].push(listener);\n return ()=>{\n this.events[event] = this.events[event].filter((x)=>x !== listener);\n };\n }\n emit(event, payload) {\n for (const listener of this.events[event] || [])listener(payload);\n for (const listener of this.events['*'] || [])listener(event, payload);\n }\n}\nexport { SimpleEventEmitter };\n","function isGzipSupported() {\n return 'CompressionStream' in globalThis;\n}\nasync function gzipCompress(input, isDebug = true) {\n try {\n const dataStream = new Blob([\n input\n ], {\n type: 'text/plain'\n }).stream();\n const compressedStream = dataStream.pipeThrough(new CompressionStream('gzip'));\n return await new Response(compressedStream).blob();\n } catch (error) {\n if (isDebug) console.error('Failed to gzip compress data', error);\n return null;\n }\n}\nexport { gzipCompress, isGzipSupported };\n","function createConsole(consoleLike = console) {\n const lockedMethods = {\n log: consoleLike.log.bind(consoleLike),\n warn: consoleLike.warn.bind(consoleLike),\n error: consoleLike.error.bind(consoleLike),\n debug: consoleLike.debug.bind(consoleLike)\n };\n return lockedMethods;\n}\nconst _createLogger = (prefix, maybeCall, consoleLike)=>{\n function _log(level, ...args) {\n maybeCall(()=>{\n const consoleMethod = consoleLike[level];\n consoleMethod(prefix, ...args);\n });\n }\n const logger = {\n info: (...args)=>{\n _log('log', ...args);\n },\n warn: (...args)=>{\n _log('warn', ...args);\n },\n error: (...args)=>{\n _log('error', ...args);\n },\n critical: (...args)=>{\n consoleLike['error'](prefix, ...args);\n },\n createLogger: (additionalPrefix)=>_createLogger(`${prefix} ${additionalPrefix}`, maybeCall, consoleLike)\n };\n return logger;\n};\nfunction createLogger(prefix, maybeCall) {\n return _createLogger(prefix, maybeCall, createConsole());\n}\nexport { _createLogger, createLogger };\n","import { SimpleEventEmitter } from \"./eventemitter.mjs\";\nimport { getFeatureFlagValue, normalizeFlagsResponse } from \"./featureFlagUtils.mjs\";\nimport { gzipCompress, isGzipSupported } from \"./gzip.mjs\";\nimport { createLogger } from \"./logger.mjs\";\nimport { PostHogPersistedProperty } from \"./types.mjs\";\nimport { PromiseQueue, STRING_FORMAT, allSettled, assert, currentISOTime, removeTrailingSlash, retriable, safeSetTimeout } from \"./utils/index.mjs\";\nimport { uuidv7 } from \"./vendor/uuidv7.mjs\";\nclass PostHogFetchHttpError extends Error {\n constructor(response, reqByteLength){\n super('HTTP error while fetching PostHog: status=' + response.status + ', reqByteLength=' + reqByteLength), this.response = response, this.reqByteLength = reqByteLength, this.name = 'PostHogFetchHttpError';\n }\n get status() {\n return this.response.status;\n }\n get text() {\n return this.response.text();\n }\n get json() {\n return this.response.json();\n }\n}\nclass PostHogFetchNetworkError extends Error {\n constructor(error){\n super('Network error while fetching PostHog', error instanceof Error ? {\n cause: error\n } : {}), this.error = error, this.name = 'PostHogFetchNetworkError';\n }\n}\nconst maybeAdd = (key, value)=>void 0 !== value ? {\n [key]: value\n } : {};\nasync function logFlushError(err) {\n if (err instanceof PostHogFetchHttpError) {\n let text = '';\n try {\n text = await err.text;\n } catch {}\n console.error(`Error while flushing PostHog: message=${err.message}, response body=${text}`, err);\n } else console.error('Error while flushing PostHog', err);\n return Promise.resolve();\n}\nfunction isPostHogFetchError(err) {\n return 'object' == typeof err && (err instanceof PostHogFetchHttpError || err instanceof PostHogFetchNetworkError);\n}\nfunction isPostHogFetchContentTooLargeError(err) {\n return 'object' == typeof err && err instanceof PostHogFetchHttpError && 413 === err.status;\n}\nvar posthog_core_stateless_QuotaLimitedFeature = /*#__PURE__*/ function(QuotaLimitedFeature) {\n QuotaLimitedFeature[\"FeatureFlags\"] = \"feature_flags\";\n QuotaLimitedFeature[\"Recordings\"] = \"recordings\";\n return QuotaLimitedFeature;\n}({});\nclass PostHogCoreStateless {\n constructor(apiKey, options = {}){\n this.flushPromise = null;\n this.shutdownPromise = null;\n this.promiseQueue = new PromiseQueue();\n this._events = new SimpleEventEmitter();\n this._isInitialized = false;\n assert(apiKey, \"You must pass your PostHog project's api key.\");\n this.apiKey = apiKey;\n this.host = removeTrailingSlash(options.host || 'https://us.i.posthog.com');\n this.flushAt = options.flushAt ? Math.max(options.flushAt, 1) : 20;\n this.maxBatchSize = Math.max(this.flushAt, options.maxBatchSize ?? 100);\n this.maxQueueSize = Math.max(this.flushAt, options.maxQueueSize ?? 1000);\n this.flushInterval = options.flushInterval ?? 10000;\n this.preloadFeatureFlags = options.preloadFeatureFlags ?? true;\n this.defaultOptIn = options.defaultOptIn ?? true;\n this.disableSurveys = options.disableSurveys ?? false;\n this._retryOptions = {\n retryCount: options.fetchRetryCount ?? 3,\n retryDelay: options.fetchRetryDelay ?? 3000,\n retryCheck: isPostHogFetchError\n };\n this.requestTimeout = options.requestTimeout ?? 10000;\n this.featureFlagsRequestTimeoutMs = options.featureFlagsRequestTimeoutMs ?? 3000;\n this.remoteConfigRequestTimeoutMs = options.remoteConfigRequestTimeoutMs ?? 3000;\n this.disableGeoip = options.disableGeoip ?? true;\n this.disabled = options.disabled ?? false;\n this.historicalMigration = options?.historicalMigration ?? false;\n this.evaluationEnvironments = options?.evaluationEnvironments;\n this._initPromise = Promise.resolve();\n this._isInitialized = true;\n this._logger = createLogger('[PostHog]', this.logMsgIfDebug.bind(this));\n this.disableCompression = !isGzipSupported() || (options?.disableCompression ?? false);\n }\n logMsgIfDebug(fn) {\n if (this.isDebug) fn();\n }\n wrap(fn) {\n if (this.disabled) return void this._logger.warn('The client is disabled');\n if (this._isInitialized) return fn();\n this._initPromise.then(()=>fn());\n }\n getCommonEventProperties() {\n return {\n $lib: this.getLibraryId(),\n $lib_version: this.getLibraryVersion()\n };\n }\n get optedOut() {\n return this.getPersistedProperty(PostHogPersistedProperty.OptedOut) ?? !this.defaultOptIn;\n }\n async optIn() {\n this.wrap(()=>{\n this.setPersistedProperty(PostHogPersistedProperty.OptedOut, false);\n });\n }\n async optOut() {\n this.wrap(()=>{\n this.setPersistedProperty(PostHogPersistedProperty.OptedOut, true);\n });\n }\n on(event, cb) {\n return this._events.on(event, cb);\n }\n debug(enabled = true) {\n this.removeDebugCallback?.();\n if (enabled) {\n const removeDebugCallback = this.on('*', (event, payload)=>this._logger.info(event, payload));\n this.removeDebugCallback = ()=>{\n removeDebugCallback();\n this.removeDebugCallback = void 0;\n };\n }\n }\n get isDebug() {\n return !!this.removeDebugCallback;\n }\n get isDisabled() {\n return this.disabled;\n }\n buildPayload(payload) {\n return {\n distinct_id: payload.distinct_id,\n event: payload.event,\n properties: {\n ...payload.properties || {},\n ...this.getCommonEventProperties()\n }\n };\n }\n addPendingPromise(promise) {\n return this.promiseQueue.add(promise);\n }\n identifyStateless(distinctId, properties, options) {\n this.wrap(()=>{\n const payload = {\n ...this.buildPayload({\n distinct_id: distinctId,\n event: '$identify',\n properties\n })\n };\n this.enqueue('identify', payload, options);\n });\n }\n async identifyStatelessImmediate(distinctId, properties, options) {\n const payload = {\n ...this.buildPayload({\n distinct_id: distinctId,\n event: '$identify',\n properties\n })\n };\n await this.sendImmediate('identify', payload, options);\n }\n captureStateless(distinctId, event, properties, options) {\n this.wrap(()=>{\n const payload = this.buildPayload({\n distinct_id: distinctId,\n event,\n properties\n });\n this.enqueue('capture', payload, options);\n });\n }\n async captureStatelessImmediate(distinctId, event, properties, options) {\n const payload = this.buildPayload({\n distinct_id: distinctId,\n event,\n properties\n });\n await this.sendImmediate('capture', payload, options);\n }\n aliasStateless(alias, distinctId, properties, options) {\n this.wrap(()=>{\n const payload = this.buildPayload({\n event: '$create_alias',\n distinct_id: distinctId,\n properties: {\n ...properties || {},\n distinct_id: distinctId,\n alias\n }\n });\n this.enqueue('alias', payload, options);\n });\n }\n async aliasStatelessImmediate(alias, distinctId, properties, options) {\n const payload = this.buildPayload({\n event: '$create_alias',\n distinct_id: distinctId,\n properties: {\n ...properties || {},\n distinct_id: distinctId,\n alias\n }\n });\n await this.sendImmediate('alias', payload, options);\n }\n groupIdentifyStateless(groupType, groupKey, groupProperties, options, distinctId, eventProperties) {\n this.wrap(()=>{\n const payload = this.buildPayload({\n distinct_id: distinctId || `$${groupType}_${groupKey}`,\n event: '$groupidentify',\n properties: {\n $group_type: groupType,\n $group_key: groupKey,\n $group_set: groupProperties || {},\n ...eventProperties || {}\n }\n });\n this.enqueue('capture', payload, options);\n });\n }\n async getRemoteConfig() {\n await this._initPromise;\n let host = this.host;\n if ('https://us.i.posthog.com' === host) host = 'https://us-assets.i.posthog.com';\n else if ('https://eu.i.posthog.com' === host) host = 'https://eu-assets.i.posthog.com';\n const url = `${host}/array/${this.apiKey}/config`;\n const fetchOptions = {\n method: 'GET',\n headers: {\n ...this.getCustomHeaders(),\n 'Content-Type': 'application/json'\n }\n };\n return this.fetchWithRetry(url, fetchOptions, {\n retryCount: 0\n }, this.remoteConfigRequestTimeoutMs).then((response)=>response.json()).catch((error)=>{\n this._logger.error('Remote config could not be loaded', error);\n this._events.emit('error', error);\n });\n }\n async getFlags(distinctId, groups = {}, personProperties = {}, groupProperties = {}, extraPayload = {}, fetchConfig = true) {\n await this._initPromise;\n const configParam = fetchConfig ? '&config=true' : '';\n const url = `${this.host}/flags/?v=2${configParam}`;\n const requestData = {\n token: this.apiKey,\n distinct_id: distinctId,\n groups,\n person_properties: personProperties,\n group_properties: groupProperties,\n ...extraPayload\n };\n if (this.evaluationEnvironments && this.evaluationEnvironments.length > 0) requestData.evaluation_environments = this.evaluationEnvironments;\n const fetchOptions = {\n method: 'POST',\n headers: {\n ...this.getCustomHeaders(),\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify(requestData)\n };\n this._logger.info('Flags URL', url);\n return this.fetchWithRetry(url, fetchOptions, {\n retryCount: 0\n }, this.featureFlagsRequestTimeoutMs).then((response)=>response.json()).then((response)=>normalizeFlagsResponse(response)).catch((error)=>{\n this._events.emit('error', error);\n });\n }\n async getFeatureFlagStateless(key, distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip) {\n await this._initPromise;\n const flagDetailResponse = await this.getFeatureFlagDetailStateless(key, distinctId, groups, personProperties, groupProperties, disableGeoip);\n if (void 0 === flagDetailResponse) return {\n response: void 0,\n requestId: void 0\n };\n let response = getFeatureFlagValue(flagDetailResponse.response);\n if (void 0 === response) response = false;\n return {\n response,\n requestId: flagDetailResponse.requestId\n };\n }\n async getFeatureFlagDetailStateless(key, distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip) {\n await this._initPromise;\n const flagsResponse = await this.getFeatureFlagDetailsStateless(distinctId, groups, personProperties, groupProperties, disableGeoip, [\n key\n ]);\n if (void 0 === flagsResponse) return;\n const featureFlags = flagsResponse.flags;\n const flagDetail = featureFlags[key];\n return {\n response: flagDetail,\n requestId: flagsResponse.requestId\n };\n }\n async getFeatureFlagPayloadStateless(key, distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip) {\n await this._initPromise;\n const payloads = await this.getFeatureFlagPayloadsStateless(distinctId, groups, personProperties, groupProperties, disableGeoip, [\n key\n ]);\n if (!payloads) return;\n const response = payloads[key];\n if (void 0 === response) return null;\n return response;\n }\n async getFeatureFlagPayloadsStateless(distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip, flagKeysToEvaluate) {\n await this._initPromise;\n const payloads = (await this.getFeatureFlagsAndPayloadsStateless(distinctId, groups, personProperties, groupProperties, disableGeoip, flagKeysToEvaluate)).payloads;\n return payloads;\n }\n async getFeatureFlagsStateless(distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip, flagKeysToEvaluate) {\n await this._initPromise;\n return await this.getFeatureFlagsAndPayloadsStateless(distinctId, groups, personProperties, groupProperties, disableGeoip, flagKeysToEvaluate);\n }\n async getFeatureFlagsAndPayloadsStateless(distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip, flagKeysToEvaluate) {\n await this._initPromise;\n const featureFlagDetails = await this.getFeatureFlagDetailsStateless(distinctId, groups, personProperties, groupProperties, disableGeoip, flagKeysToEvaluate);\n if (!featureFlagDetails) return {\n flags: void 0,\n payloads: void 0,\n requestId: void 0\n };\n return {\n flags: featureFlagDetails.featureFlags,\n payloads: featureFlagDetails.featureFlagPayloads,\n requestId: featureFlagDetails.requestId\n };\n }\n async getFeatureFlagDetailsStateless(distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip, flagKeysToEvaluate) {\n await this._initPromise;\n const extraPayload = {};\n if (disableGeoip ?? this.disableGeoip) extraPayload['geoip_disable'] = true;\n if (flagKeysToEvaluate) extraPayload['flag_keys_to_evaluate'] = flagKeysToEvaluate;\n const flagsResponse = await this.getFlags(distinctId, groups, personProperties, groupProperties, extraPayload);\n if (void 0 === flagsResponse) return;\n if (flagsResponse.errorsWhileComputingFlags) console.error('[FEATURE FLAGS] Error while computing feature flags, some flags may be missing or incorrect. Learn more at https://posthog.com/docs/feature-flags/best-practices');\n if (flagsResponse.quotaLimited?.includes(\"feature_flags\")) {\n console.warn('[FEATURE FLAGS] Feature flags quota limit exceeded - feature flags unavailable. Learn more about billing limits at https://posthog.com/docs/billing/limits-alerts');\n return {\n flags: {},\n featureFlags: {},\n featureFlagPayloads: {},\n requestId: flagsResponse?.requestId\n };\n }\n return flagsResponse;\n }\n async getSurveysStateless() {\n await this._initPromise;\n if (true === this.disableSurveys) {\n this._logger.info('Loading surveys is disabled.');\n return [];\n }\n const url = `${this.host}/api/surveys/?token=${this.apiKey}`;\n const fetchOptions = {\n method: 'GET',\n headers: {\n ...this.getCustomHeaders(),\n 'Content-Type': 'application/json'\n }\n };\n const response = await this.fetchWithRetry(url, fetchOptions).then((response)=>{\n if (200 !== response.status || !response.json) {\n const msg = `Surveys API could not be loaded: ${response.status}`;\n const error = new Error(msg);\n this._logger.error(error);\n this._events.emit('error', new Error(msg));\n return;\n }\n return response.json();\n }).catch((error)=>{\n this._logger.error('Surveys API could not be loaded', error);\n this._events.emit('error', error);\n });\n const newSurveys = response?.surveys;\n if (newSurveys) this._logger.info('Surveys fetched from API: ', JSON.stringify(newSurveys));\n return newSurveys ?? [];\n }\n get props() {\n if (!this._props) this._props = this.getPersistedProperty(PostHogPersistedProperty.Props);\n return this._props || {};\n }\n set props(val) {\n this._props = val;\n }\n async register(properties) {\n this.wrap(()=>{\n this.props = {\n ...this.props,\n ...properties\n };\n this.setPersistedProperty(PostHogPersistedProperty.Props, this.props);\n });\n }\n async unregister(property) {\n this.wrap(()=>{\n delete this.props[property];\n this.setPersistedProperty(PostHogPersistedProperty.Props, this.props);\n });\n }\n enqueue(type, _message, options) {\n this.wrap(()=>{\n if (this.optedOut) return void this._events.emit(type, \"Library is disabled. Not sending event. To re-enable, call posthog.optIn()\");\n const message = this.prepareMessage(type, _message, options);\n const queue = this.getPersistedProperty(PostHogPersistedProperty.Queue) || [];\n if (queue.length >= this.maxQueueSize) {\n queue.shift();\n this._logger.info('Queue is full, the oldest event is dropped.');\n }\n queue.push({\n message\n });\n this.setPersistedProperty(PostHogPersistedProperty.Queue, queue);\n this._events.emit(type, message);\n if (queue.length >= this.flushAt) this.flushBackground();\n if (this.flushInterval && !this._flushTimer) this._flushTimer = safeSetTimeout(()=>this.flushBackground(), this.flushInterval);\n });\n }\n async sendImmediate(type, _message, options) {\n if (this.disabled) return void this._logger.warn('The client is disabled');\n if (!this._isInitialized) await this._initPromise;\n if (this.optedOut) return void this._events.emit(type, \"Library is disabled. Not sending event. To re-enable, call posthog.optIn()\");\n const data = {\n api_key: this.apiKey,\n batch: [\n this.prepareMessage(type, _message, options)\n ],\n sent_at: currentISOTime()\n };\n if (this.historicalMigration) data.historical_migration = true;\n const payload = JSON.stringify(data);\n const url = `${this.host}/batch/`;\n const gzippedPayload = this.disableCompression ? null : await gzipCompress(payload, this.isDebug);\n const fetchOptions = {\n method: 'POST',\n headers: {\n ...this.getCustomHeaders(),\n 'Content-Type': 'application/json',\n ...null !== gzippedPayload && {\n 'Content-Encoding': 'gzip'\n }\n },\n body: gzippedPayload || payload\n };\n try {\n await this.fetchWithRetry(url, fetchOptions);\n } catch (err) {\n this._events.emit('error', err);\n }\n }\n prepareMessage(type, _message, options) {\n const message = {\n ..._message,\n type: type,\n library: this.getLibraryId(),\n library_version: this.getLibraryVersion(),\n timestamp: options?.timestamp ? options?.timestamp : currentISOTime(),\n uuid: options?.uuid ? options.uuid : uuidv7()\n };\n const addGeoipDisableProperty = options?.disableGeoip ?? this.disableGeoip;\n if (addGeoipDisableProperty) {\n if (!message.properties) message.properties = {};\n message['properties']['$geoip_disable'] = true;\n }\n if (message.distinctId) {\n message.distinct_id = message.distinctId;\n delete message.distinctId;\n }\n return message;\n }\n clearFlushTimer() {\n if (this._flushTimer) {\n clearTimeout(this._flushTimer);\n this._flushTimer = void 0;\n }\n }\n flushBackground() {\n this.flush().catch(async (err)=>{\n await logFlushError(err);\n });\n }\n async flush() {\n const nextFlushPromise = allSettled([\n this.flushPromise\n ]).then(()=>this._flush());\n this.flushPromise = nextFlushPromise;\n this.addPendingPromise(nextFlushPromise);\n allSettled([\n nextFlushPromise\n ]).then(()=>{\n if (this.flushPromise === nextFlushPromise) this.flushPromise = null;\n });\n return nextFlushPromise;\n }\n getCustomHeaders() {\n const customUserAgent = this.getCustomUserAgent();\n const headers = {};\n if (customUserAgent && '' !== customUserAgent) headers['User-Agent'] = customUserAgent;\n return headers;\n }\n async _flush() {\n this.clearFlushTimer();\n await this._initPromise;\n let queue = this.getPersistedProperty(PostHogPersistedProperty.Queue) || [];\n if (!queue.length) return;\n const sentMessages = [];\n const originalQueueLength = queue.length;\n while(queue.length > 0 && sentMessages.length < originalQueueLength){\n const batchItems = queue.slice(0, this.maxBatchSize);\n const batchMessages = batchItems.map((item)=>item.message);\n const persistQueueChange = ()=>{\n const refreshedQueue = this.getPersistedProperty(PostHogPersistedProperty.Queue) || [];\n const newQueue = refreshedQueue.slice(batchItems.length);\n this.setPersistedProperty(PostHogPersistedProperty.Queue, newQueue);\n queue = newQueue;\n };\n const data = {\n api_key: this.apiKey,\n batch: batchMessages,\n sent_at: currentISOTime()\n };\n if (this.historicalMigration) data.historical_migration = true;\n const payload = JSON.stringify(data);\n const url = `${this.host}/batch/`;\n const gzippedPayload = this.disableCompression ? null : await gzipCompress(payload, this.isDebug);\n const fetchOptions = {\n method: 'POST',\n headers: {\n ...this.getCustomHeaders(),\n 'Content-Type': 'application/json',\n ...null !== gzippedPayload && {\n 'Content-Encoding': 'gzip'\n }\n },\n body: gzippedPayload || payload\n };\n const retryOptions = {\n retryCheck: (err)=>{\n if (isPostHogFetchContentTooLargeError(err)) return false;\n return isPostHogFetchError(err);\n }\n };\n try {\n await this.fetchWithRetry(url, fetchOptions, retryOptions);\n } catch (err) {\n if (isPostHogFetchContentTooLargeError(err) && batchMessages.length > 1) {\n this.maxBatchSize = Math.max(1, Math.floor(batchMessages.length / 2));\n this._logger.warn(`Received 413 when sending batch of size ${batchMessages.length}, reducing batch size to ${this.maxBatchSize}`);\n continue;\n }\n if (!(err instanceof PostHogFetchNetworkError)) persistQueueChange();\n this._events.emit('error', err);\n throw err;\n }\n persistQueueChange();\n sentMessages.push(...batchMessages);\n }\n this._events.emit('flush', sentMessages);\n }\n async fetchWithRetry(url, options, retryOptions, requestTimeout) {\n AbortSignal.timeout ??= function(ms) {\n const ctrl = new AbortController();\n setTimeout(()=>ctrl.abort(), ms);\n return ctrl.signal;\n };\n const body = options.body ? options.body : '';\n let reqByteLength = -1;\n try {\n reqByteLength = body instanceof Blob ? body.size : Buffer.byteLength(body, STRING_FORMAT);\n } catch {\n if (body instanceof Blob) reqByteLength = body.size;\n else {\n const encoded = new TextEncoder().encode(body);\n reqByteLength = encoded.length;\n }\n }\n return await retriable(async ()=>{\n let res = null;\n try {\n res = await this.fetch(url, {\n signal: AbortSignal.timeout(requestTimeout ?? this.requestTimeout),\n ...options\n });\n } catch (e) {\n throw new PostHogFetchNetworkError(e);\n }\n const isNoCors = 'no-cors' === options.mode;\n if (!isNoCors && (res.status < 200 || res.status >= 400)) throw new PostHogFetchHttpError(res, reqByteLength);\n return res;\n }, {\n ...this._retryOptions,\n ...retryOptions\n });\n }\n async _shutdown(shutdownTimeoutMs = 30000) {\n await this._initPromise;\n let hasTimedOut = false;\n this.clearFlushTimer();\n const doShutdown = async ()=>{\n try {\n await this.promiseQueue.join();\n while(true){\n const queue = this.getPersistedProperty(PostHogPersistedProperty.Queue) || [];\n if (0 === queue.length) break;\n await this.flush();\n if (hasTimedOut) break;\n }\n } catch (e) {\n if (!isPostHogFetchError(e)) throw e;\n await logFlushError(e);\n }\n };\n return Promise.race([\n new Promise((_, reject)=>{\n safeSetTimeout(()=>{\n this._logger.error('Timed out while shutting down PostHog');\n hasTimedOut = true;\n reject('Timeout while shutting down PostHog. Some events may not have been sent.');\n }, shutdownTimeoutMs);\n }),\n doShutdown()\n ]);\n }\n async shutdown(shutdownTimeoutMs = 30000) {\n if (this.shutdownPromise) this._logger.warn('shutdown() called while already shutting down. shutdown() is meant to be called once before process exit - use flush() for per-request cleanup');\n else this.shutdownPromise = this._shutdown(shutdownTimeoutMs).finally(()=>{\n this.shutdownPromise = null;\n });\n return this.shutdownPromise;\n }\n}\nexport { PostHogCoreStateless, posthog_core_stateless_QuotaLimitedFeature as QuotaLimitedFeature, logFlushError, maybeAdd };\n","import { createFlagsResponseFromFlagsAndPayloads, getFeatureFlagValue, getFlagValuesFromFlags, getPayloadsFromFlags, normalizeFlagsResponse, updateFlagValue } from \"./featureFlagUtils.mjs\";\nimport { Compression, PostHogPersistedProperty } from \"./types.mjs\";\nimport { PostHogCoreStateless, QuotaLimitedFeature, maybeAdd } from \"./posthog-core-stateless.mjs\";\nimport { uuidv7 } from \"./vendor/uuidv7.mjs\";\nimport { isPlainError } from \"./utils/index.mjs\";\nclass PostHogCore extends PostHogCoreStateless {\n constructor(apiKey, options){\n const disableGeoipOption = options?.disableGeoip ?? false;\n const featureFlagsRequestTimeoutMs = options?.featureFlagsRequestTimeoutMs ?? 10000;\n super(apiKey, {\n ...options,\n disableGeoip: disableGeoipOption,\n featureFlagsRequestTimeoutMs\n }), this.flagCallReported = {}, this._sessionMaxLengthSeconds = 86400, this.sessionProps = {};\n this.sendFeatureFlagEvent = options?.sendFeatureFlagEvent ?? true;\n this._sessionExpirationTimeSeconds = options?.sessionExpirationTimeSeconds ?? 1800;\n }\n setupBootstrap(options) {\n const bootstrap = options?.bootstrap;\n if (!bootstrap) return;\n if (bootstrap.distinctId) if (bootstrap.isIdentifiedId) {\n const distinctId = this.getPersistedProperty(PostHogPersistedProperty.DistinctId);\n if (!distinctId) this.setPersistedProperty(PostHogPersistedProperty.DistinctId, bootstrap.distinctId);\n } else {\n const anonymousId = this.getPersistedProperty(PostHogPersistedProperty.AnonymousId);\n if (!anonymousId) this.setPersistedProperty(PostHogPersistedProperty.AnonymousId, bootstrap.distinctId);\n }\n const bootstrapFeatureFlags = bootstrap.featureFlags;\n const bootstrapFeatureFlagPayloads = bootstrap.featureFlagPayloads ?? {};\n if (bootstrapFeatureFlags && Object.keys(bootstrapFeatureFlags).length) {\n const normalizedBootstrapFeatureFlagDetails = createFlagsResponseFromFlagsAndPayloads(bootstrapFeatureFlags, bootstrapFeatureFlagPayloads);\n if (Object.keys(normalizedBootstrapFeatureFlagDetails.flags).length > 0) {\n this.setBootstrappedFeatureFlagDetails(normalizedBootstrapFeatureFlagDetails);\n const currentFeatureFlagDetails = this.getKnownFeatureFlagDetails() || {\n flags: {},\n requestId: void 0\n };\n const newFeatureFlagDetails = {\n flags: {\n ...normalizedBootstrapFeatureFlagDetails.flags,\n ...currentFeatureFlagDetails.flags\n },\n requestId: normalizedBootstrapFeatureFlagDetails.requestId\n };\n this.setKnownFeatureFlagDetails(newFeatureFlagDetails);\n }\n }\n }\n clearProps() {\n this.props = void 0;\n this.sessionProps = {};\n this.flagCallReported = {};\n }\n on(event, cb) {\n return this._events.on(event, cb);\n }\n reset(propertiesToKeep) {\n this.wrap(()=>{\n const allPropertiesToKeep = [\n PostHogPersistedProperty.Queue,\n ...propertiesToKeep || []\n ];\n this.clearProps();\n for (const key of Object.keys(PostHogPersistedProperty))if (!allPropertiesToKeep.includes(PostHogPersistedProperty[key])) this.setPersistedProperty(PostHogPersistedProperty[key], null);\n this.reloadFeatureFlags();\n });\n }\n getCommonEventProperties() {\n const featureFlags = this.getFeatureFlags();\n const featureVariantProperties = {};\n if (featureFlags) for (const [feature, variant] of Object.entries(featureFlags))featureVariantProperties[`$feature/${feature}`] = variant;\n return {\n ...maybeAdd('$active_feature_flags', featureFlags ? Object.keys(featureFlags) : void 0),\n ...featureVariantProperties,\n ...super.getCommonEventProperties()\n };\n }\n enrichProperties(properties) {\n return {\n ...this.props,\n ...this.sessionProps,\n ...properties || {},\n ...this.getCommonEventProperties(),\n $session_id: this.getSessionId()\n };\n }\n getSessionId() {\n if (!this._isInitialized) return '';\n let sessionId = this.getPersistedProperty(PostHogPersistedProperty.SessionId);\n const sessionLastTimestamp = this.getPersistedProperty(PostHogPersistedProperty.SessionLastTimestamp) || 0;\n const sessionStartTimestamp = this.getPersistedProperty(PostHogPersistedProperty.SessionStartTimestamp) || 0;\n const now = Date.now();\n const sessionLastDif = now - sessionLastTimestamp;\n const sessionStartDif = now - sessionStartTimestamp;\n if (!sessionId || sessionLastDif > 1000 * this._sessionExpirationTimeSeconds || sessionStartDif > 1000 * this._sessionMaxLengthSeconds) {\n sessionId = uuidv7();\n this.setPersistedProperty(PostHogPersistedProperty.SessionId, sessionId);\n this.setPersistedProperty(PostHogPersistedProperty.SessionStartTimestamp, now);\n }\n this.setPersistedProperty(PostHogPersistedProperty.SessionLastTimestamp, now);\n return sessionId;\n }\n resetSessionId() {\n this.wrap(()=>{\n this.setPersistedProperty(PostHogPersistedProperty.SessionId, null);\n this.setPersistedProperty(PostHogPersistedProperty.SessionLastTimestamp, null);\n this.setPersistedProperty(PostHogPersistedProperty.SessionStartTimestamp, null);\n });\n }\n getAnonymousId() {\n if (!this._isInitialized) return '';\n let anonId = this.getPersistedProperty(PostHogPersistedProperty.AnonymousId);\n if (!anonId) {\n anonId = uuidv7();\n this.setPersistedProperty(PostHogPersistedProperty.AnonymousId, anonId);\n }\n return anonId;\n }\n getDistinctId() {\n if (!this._isInitialized) return '';\n return this.getPersistedProperty(PostHogPersistedProperty.DistinctId) || this.getAnonymousId();\n }\n registerForSession(properties) {\n this.sessionProps = {\n ...this.sessionProps,\n ...properties\n };\n }\n unregisterForSession(property) {\n delete this.sessionProps[property];\n }\n identify(distinctId, properties, options) {\n this.wrap(()=>{\n const previousDistinctId = this.getDistinctId();\n distinctId = distinctId || previousDistinctId;\n if (properties?.$groups) this.groups(properties.$groups);\n const userPropsOnce = properties?.$set_once;\n delete properties?.$set_once;\n const userProps = properties?.$set || properties;\n const allProperties = this.enrichProperties({\n $anon_distinct_id: this.getAnonymousId(),\n ...maybeAdd('$set', userProps),\n ...maybeAdd('$set_once', userPropsOnce)\n });\n if (distinctId !== previousDistinctId) {\n this.setPersistedProperty(PostHogPersistedProperty.AnonymousId, previousDistinctId);\n this.setPersistedProperty(PostHogPersistedProperty.DistinctId, distinctId);\n this.reloadFeatureFlags();\n }\n super.identifyStateless(distinctId, allProperties, options);\n });\n }\n capture(event, properties, options) {\n this.wrap(()=>{\n const distinctId = this.getDistinctId();\n if (properties?.$groups) this.groups(properties.$groups);\n const allProperties = this.enrichProperties(properties);\n super.captureStateless(distinctId, event, allProperties, options);\n });\n }\n alias(alias) {\n this.wrap(()=>{\n const distinctId = this.getDistinctId();\n const allProperties = this.enrichProperties({});\n super.aliasStateless(alias, distinctId, allProperties);\n });\n }\n autocapture(eventType, elements, properties = {}, options) {\n this.wrap(()=>{\n const distinctId = this.getDistinctId();\n const payload = {\n distinct_id: distinctId,\n event: '$autocapture',\n properties: {\n ...this.enrichProperties(properties),\n $event_type: eventType,\n $elements: elements\n }\n };\n this.enqueue('autocapture', payload, options);\n });\n }\n groups(groups) {\n this.wrap(()=>{\n const existingGroups = this.props.$groups || {};\n this.register({\n $groups: {\n ...existingGroups,\n ...groups\n }\n });\n if (Object.keys(groups).find((type)=>existingGroups[type] !== groups[type])) this.reloadFeatureFlags();\n });\n }\n group(groupType, groupKey, groupProperties, options) {\n this.wrap(()=>{\n this.groups({\n [groupType]: groupKey\n });\n if (groupProperties) this.groupIdentify(groupType, groupKey, groupProperties, options);\n });\n }\n groupIdentify(groupType, groupKey, groupProperties, options) {\n this.wrap(()=>{\n const distinctId = this.getDistinctId();\n const eventProperties = this.enrichProperties({});\n super.groupIdentifyStateless(groupType, groupKey, groupProperties, options, distinctId, eventProperties);\n });\n }\n setPersonPropertiesForFlags(properties) {\n this.wrap(()=>{\n const existingProperties = this.getPersistedProperty(PostHogPersistedProperty.PersonProperties) || {};\n this.setPersistedProperty(PostHogPersistedProperty.PersonProperties, {\n ...existingProperties,\n ...properties\n });\n });\n }\n resetPersonPropertiesForFlags() {\n this.wrap(()=>{\n this.setPersistedProperty(PostHogPersistedProperty.PersonProperties, null);\n });\n }\n setGroupPropertiesForFlags(properties) {\n this.wrap(()=>{\n const existingProperties = this.getPersistedProperty(PostHogPersistedProperty.GroupProperties) || {};\n if (0 !== Object.keys(existingProperties).length) Object.keys(existingProperties).forEach((groupType)=>{\n existingProperties[groupType] = {\n ...existingProperties[groupType],\n ...properties[groupType]\n };\n delete properties[groupType];\n });\n this.setPersistedProperty(PostHogPersistedProperty.GroupProperties, {\n ...existingProperties,\n ...properties\n });\n });\n }\n resetGroupPropertiesForFlags() {\n this.wrap(()=>{\n this.setPersistedProperty(PostHogPersistedProperty.GroupProperties, null);\n });\n }\n async remoteConfigAsync() {\n await this._initPromise;\n if (this._remoteConfigResponsePromise) return this._remoteConfigResponsePromise;\n return this._remoteConfigAsync();\n }\n async flagsAsync(sendAnonDistinctId = true, fetchConfig = true) {\n await this._initPromise;\n if (this._flagsResponsePromise) return this._flagsResponsePromise;\n return this._flagsAsync(sendAnonDistinctId, fetchConfig);\n }\n cacheSessionReplay(source, response) {\n const sessionReplay = response?.sessionRecording;\n if (sessionReplay) {\n this.setPersistedProperty(PostHogPersistedProperty.SessionReplay, sessionReplay);\n this._logger.info(`Session replay config from ${source}: `, JSON.stringify(sessionReplay));\n } else if ('boolean' == typeof sessionReplay && false === sessionReplay) {\n this._logger.info(`Session replay config from ${source} disabled.`);\n this.setPersistedProperty(PostHogPersistedProperty.SessionReplay, null);\n }\n }\n async _remoteConfigAsync() {\n this._remoteConfigResponsePromise = this._initPromise.then(()=>{\n let remoteConfig = this.getPersistedProperty(PostHogPersistedProperty.RemoteConfig);\n this._logger.info('Cached remote config: ', JSON.stringify(remoteConfig));\n return super.getRemoteConfig().then((response)=>{\n if (response) {\n const remoteConfigWithoutSurveys = {\n ...response\n };\n delete remoteConfigWithoutSurveys.surveys;\n this._logger.info('Fetched remote config: ', JSON.stringify(remoteConfigWithoutSurveys));\n if (false === this.disableSurveys) {\n const surveys = response.surveys;\n let hasSurveys = true;\n if (Array.isArray(surveys)) this._logger.info('Surveys fetched from remote config: ', JSON.stringify(surveys));\n else {\n this._logger.info('There are no surveys.');\n hasSurveys = false;\n }\n if (hasSurveys) this.setPersistedProperty(PostHogPersistedProperty.Surveys, surveys);\n else this.setPersistedProperty(PostHogPersistedProperty.Surveys, null);\n } else this.setPersistedProperty(PostHogPersistedProperty.Surveys, null);\n this.setPersistedProperty(PostHogPersistedProperty.RemoteConfig, remoteConfigWithoutSurveys);\n this.cacheSessionReplay('remote config', response);\n if (false === response.hasFeatureFlags) {\n this.setKnownFeatureFlagDetails({\n flags: {}\n });\n this._logger.warn('Remote config has no feature flags, will not load feature flags.');\n } else if (false !== this.preloadFeatureFlags) this.reloadFeatureFlags();\n if (!response.supportedCompression?.includes(Compression.GZipJS)) this.disableCompression = true;\n remoteConfig = response;\n }\n return remoteConfig;\n });\n }).finally(()=>{\n this._remoteConfigResponsePromise = void 0;\n });\n return this._remoteConfigResponsePromise;\n }\n async _flagsAsync(sendAnonDistinctId = true, fetchConfig = true) {\n this._flagsResponsePromise = this._initPromise.then(async ()=>{\n const distinctId = this.getDistinctId();\n const groups = this.props.$groups || {};\n const personProperties = this.getPersistedProperty(PostHogPersistedProperty.PersonProperties) || {};\n const groupProperties = this.getPersistedProperty(PostHogPersistedProperty.GroupProperties) || {};\n const extraProperties = {\n $anon_distinct_id: sendAnonDistinctId ? this.getAnonymousId() : void 0\n };\n const res = await super.getFlags(distinctId, groups, personProperties, groupProperties, extraProperties, fetchConfig);\n if (res?.quotaLimited?.includes(QuotaLimitedFeature.FeatureFlags)) {\n this.setKnownFeatureFlagDetails(null);\n console.warn('[FEATURE FLAGS] Feature flags quota limit exceeded - unsetting all flags. Learn more about billing limits at https://posthog.com/docs/billing/limits-alerts');\n return res;\n }\n if (res?.featureFlags) {\n if (this.sendFeatureFlagEvent) this.flagCallReported = {};\n let newFeatureFlagDetails = res;\n if (res.errorsWhileComputingFlags) {\n const currentFlagDetails = this.getKnownFeatureFlagDetails();\n this._logger.info('Cached feature flags: ', JSON.stringify(currentFlagDetails));\n newFeatureFlagDetails = {\n ...res,\n flags: {\n ...currentFlagDetails?.flags,\n ...res.flags\n }\n };\n }\n this.setKnownFeatureFlagDetails(newFeatureFlagDetails);\n this.setPersistedProperty(PostHogPersistedProperty.FlagsEndpointWasHit, true);\n this.cacheSessionReplay('flags', res);\n }\n return res;\n }).finally(()=>{\n this._flagsResponsePromise = void 0;\n });\n return this._flagsResponsePromise;\n }\n setKnownFeatureFlagDetails(flagsResponse) {\n this.wrap(()=>{\n this.setPersistedProperty(PostHogPersistedProperty.FeatureFlagDetails, flagsResponse);\n this._events.emit('featureflags', getFlagValuesFromFlags(flagsResponse?.flags ?? {}));\n });\n }\n getKnownFeatureFlagDetails() {\n const storedDetails = this.getPersistedProperty(PostHogPersistedProperty.FeatureFlagDetails);\n if (!storedDetails) {\n const featureFlags = this.getPersistedProperty(PostHogPersistedProperty.FeatureFlags);\n const featureFlagPayloads = this.getPersistedProperty(PostHogPersistedProperty.FeatureFlagPayloads);\n if (void 0 === featureFlags && void 0 === featureFlagPayloads) return;\n return createFlagsResponseFromFlagsAndPayloads(featureFlags ?? {}, featureFlagPayloads ?? {});\n }\n return normalizeFlagsResponse(storedDetails);\n }\n getKnownFeatureFlags() {\n const featureFlagDetails = this.getKnownFeatureFlagDetails();\n if (!featureFlagDetails) return;\n return getFlagValuesFromFlags(featureFlagDetails.flags);\n }\n getKnownFeatureFlagPayloads() {\n const featureFlagDetails = this.getKnownFeatureFlagDetails();\n if (!featureFlagDetails) return;\n return getPayloadsFromFlags(featureFlagDetails.flags);\n }\n getBootstrappedFeatureFlagDetails() {\n const details = this.getPersistedProperty(PostHogPersistedProperty.BootstrapFeatureFlagDetails);\n if (!details) return;\n return details;\n }\n setBootstrappedFeatureFlagDetails(details) {\n this.setPersistedProperty(PostHogPersistedProperty.BootstrapFeatureFlagDetails, details);\n }\n getBootstrappedFeatureFlags() {\n const details = this.getBootstrappedFeatureFlagDetails();\n if (!details) return;\n return getFlagValuesFromFlags(details.flags);\n }\n getBootstrappedFeatureFlagPayloads() {\n const details = this.getBootstrappedFeatureFlagDetails();\n if (!details) return;\n return getPayloadsFromFlags(details.flags);\n }\n getFeatureFlag(key) {\n const details = this.getFeatureFlagDetails();\n if (!details) return;\n const featureFlag = details.flags[key];\n let response = getFeatureFlagValue(featureFlag);\n if (void 0 === response) response = false;\n if (this.sendFeatureFlagEvent && !this.flagCallReported[key]) {\n const bootstrappedResponse = this.getBootstrappedFeatureFlags()?.[key];\n const bootstrappedPayload = this.getBootstrappedFeatureFlagPayloads()?.[key];\n this.flagCallReported[key] = true;\n this.capture('$feature_flag_called', {\n $feature_flag: key,\n $feature_flag_response: response,\n ...maybeAdd('$feature_flag_id', featureFlag?.metadata?.id),\n ...maybeAdd('$feature_flag_version', featureFlag?.metadata?.version),\n ...maybeAdd('$feature_flag_reason', featureFlag?.reason?.description ?? featureFlag?.reason?.code),\n ...maybeAdd('$feature_flag_bootstrapped_response', bootstrappedResponse),\n ...maybeAdd('$feature_flag_bootstrapped_payload', bootstrappedPayload),\n $used_bootstrap_value: !this.getPersistedProperty(PostHogPersistedProperty.FlagsEndpointWasHit),\n ...maybeAdd('$feature_flag_request_id', details.requestId)\n });\n }\n return response;\n }\n getFeatureFlagPayload(key) {\n const payloads = this.getFeatureFlagPayloads();\n if (!payloads) return;\n const response = payloads[key];\n if (void 0 === response) return null;\n return response;\n }\n getFeatureFlagPayloads() {\n return this.getFeatureFlagDetails()?.featureFlagPayloads;\n }\n getFeatureFlags() {\n return this.getFeatureFlagDetails()?.featureFlags;\n }\n getFeatureFlagDetails() {\n let details = this.getKnownFeatureFlagDetails();\n const overriddenFlags = this.getPersistedProperty(PostHogPersistedProperty.OverrideFeatureFlags);\n if (!overriddenFlags) return details;\n details = details ?? {\n featureFlags: {},\n featureFlagPayloads: {},\n flags: {}\n };\n const flags = details.flags ?? {};\n for(const key in overriddenFlags)if (overriddenFlags[key]) flags[key] = updateFlagValue(flags[key], overriddenFlags[key]);\n else delete flags[key];\n const result = {\n ...details,\n flags\n };\n return normalizeFlagsResponse(result);\n }\n getFeatureFlagsAndPayloads() {\n const flags = this.getFeatureFlags();\n const payloads = this.getFeatureFlagPayloads();\n return {\n flags,\n payloads\n };\n }\n isFeatureEnabled(key) {\n const response = this.getFeatureFlag(key);\n if (void 0 === response) return;\n return !!response;\n }\n reloadFeatureFlags(options) {\n this.flagsAsync(true).then((res)=>{\n options?.cb?.(void 0, res?.featureFlags);\n }).catch((e)=>{\n options?.cb?.(e, void 0);\n if (!options?.cb) this._logger.info('Error reloading feature flags', e);\n });\n }\n async reloadRemoteConfigAsync() {\n return await this.remoteConfigAsync();\n }\n async reloadFeatureFlagsAsync(sendAnonDistinctId) {\n return (await this.flagsAsync(sendAnonDistinctId ?? true))?.featureFlags;\n }\n onFeatureFlags(cb) {\n return this.on('featureflags', async ()=>{\n const flags = this.getFeatureFlags();\n if (flags) cb(flags);\n });\n }\n onFeatureFlag(key, cb) {\n return this.on('featureflags', async ()=>{\n const flagResponse = this.getFeatureFlag(key);\n if (void 0 !== flagResponse) cb(flagResponse);\n });\n }\n async overrideFeatureFlag(flags) {\n this.wrap(()=>{\n if (null === flags) return this.setPersistedProperty(PostHogPersistedProperty.OverrideFeatureFlags, null);\n return this.setPersistedProperty(PostHogPersistedProperty.OverrideFeatureFlags, flags);\n });\n }\n captureException(error, additionalProperties) {\n const properties = {\n $exception_level: 'error',\n $exception_list: [\n {\n type: isPlainError(error) ? error.name : 'Error',\n value: isPlainError(error) ? error.message : error,\n mechanism: {\n handled: true,\n synthetic: false\n }\n }\n ],\n ...additionalProperties\n };\n this.capture('$exception', properties);\n }\n captureTraceFeedback(traceId, userFeedback) {\n this.capture('$ai_feedback', {\n $ai_feedback_text: userFeedback,\n $ai_trace_id: String(traceId)\n });\n }\n captureTraceMetric(traceId, metricName, metricValue) {\n this.capture('$ai_metric', {\n $ai_metric_name: metricName,\n $ai_metric_value: String(metricValue),\n $ai_trace_id: String(traceId)\n });\n }\n}\nexport { PostHogCore };\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["DIGITS","UUID","defaultGenerator","uuidv7","uuidv7obj","V7Generator","PostHogPersistedProperty","Compression","QuotaLimitedFeature","breaker","ArrayProto","Array","prototype","nativeForEach","forEach","nativeIndexOf","indexOf","win","window","undefined","global","globalThis","navigator","document","location","fetch","XMLHttpRequest","AbortController","userAgent","eachArray","obj","iterator","thisArg","isArray","length","i","l","call","each","isNullish","isFormData","pair","entries","key","hasOwnProperty","extend","args","source","prop","extendArray","item","push","include","target","found","isNull","value","ownProps","Object","keys","resArray","addEventListener","element","event","callback","options","capture","passive","stripEmptyProperties","p","ret","v","k","isString","isNumber","EXCLUDED_FROM_CROSS_SUBDOMAIN_COOKIE","isCrossDomainCookie","documentLocation","hostname","lastTwoParts","split","slice","join","excluded","deepCircularCopy","customizer","COPY_IN_PROGRESS_SET","Set","internalDeepCircularCopy","has","add","result","it","val","copyAndTruncateStrings","object","maxStringLength","PEOPLE_DISTINCT_ID_KEY","DISTINCT_ID","ALIAS_ID_KEY","CAMPAIGN_IDS_KEY","EVENT_TIMERS_KEY","AUTOCAPTURE_DISABLED_SERVER_SIDE","HEATMAPS_ENABLED_SERVER_SIDE","ERROR_TRACKING_SUPPRESSION_RULES","SESSION_RECORDING_ENABLED_SERVER_SIDE","SESSION_ID","SESSION_RECORDING_IS_SAMPLED","ENABLED_FEATURE_FLAGS","PERSISTENCE_EARLY_ACCESS_FEATURES","PERSISTENCE_FEATURE_FLAG_DETAILS","STORED_PERSON_PROPERTIES_KEY","STORED_GROUP_PROPERTIES_KEY","SURVEYS","FLAG_CALL_REPORTED","USER_STATE","CLIENT_SESSION_PROPS","CAPTURE_RATE_LIMIT","INITIAL_CAMPAIGN_PARAMS","INITIAL_REFERRER_INFO","INITIAL_PERSON_INFO","ENABLE_PERSON_PROCESSING","COOKIELESS_MODE_FLAG_PROPERTY","PERSISTENCE_RESERVED_PROPERTIES","Queue","FeatureFlagDetails","FlagsEndpointWasHit","AnonymousId","RemoteConfig","Surveys","FeatureFlags","PREFIX","logger","info","console","log","warn","error","critical","Math","trunc","ceil","floor","Number","isInteger","isFinite","constructor","bytes","TypeError","fromFieldsV7","unixTsMs","randA","randBHi","randBLo","RangeError","Uint8Array","toString","text","charAt","Error","clone","equals","other","compareTo","diff","sign","_timestamp","_counter","_random","DefaultRandom","generate","generateOrAbort","isUndefined","valueAfterReset","MAX_COUNTER","ROLLBACK_ALLOWANCE","ts","Date","now","_resetCounter","nextUint32","getRandomValues","buffer","UUIDV7_DENY_WEAK_RNG","random","crypto","_buffer","Uint32Array","_cursor","Infinity","firstNonPublicSubDomain","seekFirstNonPublicSubDomain","cookieJar","includes","list","len","min","candidate","candidateCookieValue","cookie","DOMAIN_MATCH_REGEX","originalCookieDomainFn","matches","match","chooseCookieDomain","cross_subdomain","matchedSubDomain","originalMatch","cookieStore","_is_supported","_error","msg","_get","name","nameEQ","ca","filter","x","c","substring","decodeURIComponent","_parse","JSON","parse","_set","days","is_secure","expires","secure","cdomain","date","setTime","getTime","toUTCString","new_cookie_val","encodeURIComponent","stringify","_remove","_localStorage_supported","localStore","supported","localStorage","getItem","err","setItem","removeItem","COOKIE_PERSISTED_PROPERTIES","localPlusCookieStore","cookieProperties","debug","cookiePersistedProperties","memoryStorage","memoryStore","sessionStorageSupported","sessionStore","sessionStorage","convertToURL","url","createElement","href","getQueryParam","param","withoutHash","queryParams","cleanedQueryParams","replace","queryParts","keyValuePair","parts","maskQueryParams","maskedParams","mask","splitHash","hash","splitQuery","queryString","urlWithoutQueryAndHash","paramStrings","FACEBOOK","MOBILE","IOS","ANDROID","TABLET","ANDROID_TABLET","IPAD","APPLE","APPLE_WATCH","SAFARI","BLACKBERRY","SAMSUNG","SAMSUNG_BROWSER","SAMSUNG_INTERNET","CHROME","CHROME_OS","CHROME_IOS","INTERNET_EXPLORER","INTERNET_EXPLORER_MOBILE","OPERA","OPERA_MINI","EDGE","MICROSOFT_EDGE","FIREFOX","FIREFOX_IOS","NINTENDO","PLAYSTATION","XBOX","ANDROID_MOBILE","MOBILE_SAFARI","WINDOWS","WINDOWS_PHONE","NOKIA","OUYA","GENERIC","GENERIC_MOBILE","toLowerCase","GENERIC_TABLET","KONQUEROR","BROWSER_VERSION_REGEX_SUFFIX","DEFAULT_BROWSER_VERSION_REGEX","RegExp","XBOX_REGEX","PLAYSTATION_REGEX","NINTENDO_REGEX","BLACKBERRY_REGEX","windowsVersionMap","isSafari","safariCheck","ua","vendor","detectBrowser","user_agent","test","versionRegexes","Mozilla","detectBrowserVersion","browser","regexes","regex","parseFloat","osMatchers","_","exec","version","osVersion","versionParts","detectOS","rgex","resultOrFn","isFunction","detectDevice","detectDeviceType","device","Config","DEBUG","LIB_VERSION","packageInfo","URL_REGEX_PREFIX","PERSONAL_DATA_CAMPAIGN_PARAMS","CAMPAIGN_PARAMS","MASKED","COOKIE_CAMPAIGN_PARAMS","getCampaignParams","customTrackedParams","maskPersonalDataProperties","customPersonalDataProperties","paramsToMask","urlCampaignParams","_getCampaignParamsFromUrl","URL","cookieCampaignParams","_getCampaignParamsFromCookie","customParams","campaign_keywords","concat","params","kwkey","kw","_getSearchEngine","referrer","search","_getSearchInfoFromReferrer","keyword","getSearchInfo","getBrowserLanguage","language","userLanguage","getBrowserLanguagePrefix","lang","getReferrer","getReferringDomain","host","getReferrerInfo","$referrer","$referring_domain","getPersonInfo","r","u","getPersonPropsFromInfo","referring_domain","props","pathname","campaignParams","searchInfo","getInitialPersonPropsFromInfo","personProps","stripLeadingDollar","getTimezone","Intl","DateTimeFormat","resolvedOptions","timeZone","getTimezoneOffset","getEventProperties","os_name","os_version","$os","$os_version","$browser","$device","$device_type","$timezone","$timezone_offset","$current_url","$host","$pathname","$raw_user_agent","$browser_version","$browser_language","$browser_language_prefix","$screen_height","screen","height","$screen_width","width","$viewport_height","innerHeight","$viewport_width","innerWidth","$lib","$lib_version","$insert_id","$time","CASE_INSENSITIVE_PERSISTENCE_TYPES","parseName","config","token","LeanbasePersistence","isDisabled","_config","_campaign_params_saved","_name","_storage","_buildStorage","load","update_config","save","_disabled","store","storage_type","properties","isObject","entry","_expire_days","_cross_subdomain","_secure","remove","clear","register_once","default_value","_default_expiry","hasChanges","register","unregister","update_campaign_params","custom_campaign_params","mask_personal_data_properties","custom_personal_data_properties","isEmptyObject","update_search_keyword","update_referrer_info","set_initial_person_info","get_initial_props","initialReferrerInfo","initialPersonInfo","initialPersonProps","safe_merge","oldConfig","set_disabled","set_cross_subdomain","set_secure","persistence","newStore","disabled","set_event_timer","event_name","timestamp","timers","remove_event_timer","get_property","set_property","to","isElementNode","el","nodeType","isTag","tag","tagName","isTextNode","isDocumentFragment","splitClassString","s","trim","checkForURLMatches","urlsList","some","getClassNames","className","baseVal","getAttribute","makeSafeText","shouldCaptureValue","getSafeText","elText","shouldCaptureElement","isSensitiveElement","childNodes","child","textContent","getEventTarget","e","srcElement","shadowRoot","composedPath","autocaptureCompatibleElements","checkIfElementTreePassesElementAllowList","elements","autocaptureConfig","allowlist","element_allowlist","elementType","checkIfElementsMatchCSSSelector","selectorList","selector","getParentElement","curEl","parentNode","DEFAULT_RAGE_CLICK_IGNORE_LIST","shouldCaptureRageclick","cannotCheckForAutocapture","selectorIgnoreList","isBoolean","css_selector_ignorelist","targetElementList","getElementAndParentsForElement","captureOnAnyElement","parentIsUsefulElement","compStyles","getComputedStyle","getPropertyValue","shouldCaptureDomEvent","allowedEventTypes","url_allowlist","url_ignorelist","dom_event_allowlist","eventType","type","css_selector_allowlist","classes","id","sensitiveNameRegex","allowedInputTypes","coreCCPattern","anchoredCCRegex","unanchoredCCRegex","coreSSNPattern","anchoredSSNRegex","unanchoredSSNRegex","anchorRegexes","ccRegex","ssnRegex","isAngularStyleAttr","attributeName","getDirectAndNestedSpanText","getNestedSpanText","spanText","getElementsChainString","elementsToString","extractElements","escapeQuotes","input","map","el_string","tag_name","attr_class","sort","single_class","attributes","nth_child","nth_of_type","attr_id","sortedAttributes","a","b","localeCompare","response","extractAttrClass","RAGE_CLICK_THRESHOLD_PX","RAGE_CLICK_TIMEOUT_MS","RAGE_CLICK_CLICK_COUNT","RageClick","clicks","isRageClick","y","lastClick","abs","COPY_AUTOCAPTURE_EVENT","limitText","getAugmentPropertiesFromElement","elem","shouldCaptureEl","attr","propertyKey","propertyValue","previousElementSibling","_el","previousSibling","getDefaultProperties","$event_type","$ce_version","getPropertiesFromElement","maskAllAttributes","maskText","elementAttributeIgnorelist","nthChild","nthOfType","currentElem","autocapturePropertiesForElement","maskAllElementAttributes","maskAllText","elementAttributeIgnoreList","elementsChainAsString","elementsJson","autocaptureAugmentProperties","explicitNoCapture","augmentProperties","externalHref","hrefHost","locationHost","$elements","$elements_chain","$el_text","$external_click_url","Autocapture","instance","_initialized","_isDisabledServerSide","rageclicks","_elementsChainAsString","_elementSelectors","autocapture","_addDomEventHandlers","isBrowserSupported","handler","_captureEvent","capture_copied_text","copiedTextHandler","startIfEnabled","isEnabled","onRemoteConfig","setElementSelectors","selectors","getElementSelectors","elementSelectors","matchedElements","querySelectorAll","matchedElement","persistedServerDisabled","memoryDisabled","disabledServer","disabledClient","eventName","MouseEvent","rageclick","clientX","clientY","isCopyAutocapture","mask_all_element_attributes","mask_all_text","element_attribute_ignorelist","selectedContent","getSelection","clipType","PageViewManager","_instance","doPageView","pageViewId","_previousPageViewProperties","_currentPageview","scrollManager","resetContext","doPageLeave","doEvent","$pageview_id","pageviewId","previousPageView","$prev_pageview_id","scrollContext","getContext","disable_scroll_properties","maxScrollHeight","lastScrollY","maxScrollY","maxContentHeight","lastContentY","maxContentY","lastScrollPercentage","clampToRange","maxScrollPercentage","lastContentPercentage","maxContentPercentage","$prev_pageview_last_scroll","$prev_pageview_last_scroll_percentage","$prev_pageview_max_scroll","$prev_pageview_max_scroll_percentage","$prev_pageview_last_content","$prev_pageview_last_content_percentage","$prev_pageview_max_content","$prev_pageview_max_content_percentage","$prev_pageview_pathname","$prev_pageview_duration","ScrollManager","_updateScrollData","_context","scrollElement","scrollY","scrollHeight","max","clientHeight","contentY","contentHeight","ctx","setTimeout","startMeasuringScrollPosition","scroll_root_selector","querySelector","documentElement","scrollTop","pageYOffset","scrollX","scrollLeft","pageXOffset","DEFAULT_BLOCKED_UA_STRS","isBlockedUA","customBlockedUserAgents","uaLower","blockedUA","blockedUaLower","isLikelyBot","uaData","userAgentData","brands","brandObj","brand","webdriver","defaultConfig","capture_pageview","capture_pageleave","persistence_name","cookie_expiration","cross_subdomain_cookie","disable_persistence","secure_cookie","protocol","bootstrap","session_idle_timeout_seconds","save_campaign_params","save_referrer","opt_out_useragent_filter","properties_string_max_length","loaded","Leanbase","PostHogCore","mergedConfig","personProcessingSetOncePropertiesSent","isLoaded","visibilityStateListener","initialPageviewCaptured","pageViewManager","init","setConfig","replayAutocapture","preloadFeatureFlags","reloadFeatureFlags","cookieless_mode","captureInitialPageview","loadRemoteConfig","self","capturePageLeave","bind","visibilityState","title","removeEventListener","isRemoteConfigLoaded","remoteConfig","reloadRemoteConfigAsync","body","fetchFn","getFetch","Promise","reject","isTempStorage","sessionPersistence","getLibraryId","getLibraryVersion","getCustomUserAgent","getPersistedProperty","setPersistedProperty","calculateEventProperties","eventProperties","uuid","readOnly","startTimestamp","persistenceProps","distinct_id","isEmptyString","infoProperties","sessionManager","sessionId","windowId","checkAndGetSessionAndWindowId","sessionPropsManager","getSessionProps","pageviewProperties","duration_in_ms","toFixed","isIdentified","calculateSetOnceProperties","dataSetOnce","initialProps","sessionProps","getSetOnceProps","setOnceProperties","systemTime","data","setProperties","$set","$set_once","_noTruncate","finalSet","setPersonPropertiesForFlags","identify","distinctId","destroy","api","_queue","apiKey","q","fn","captureException","group","alias","reset","getInstance","attachToGlobal","g","existing","leanbase"],"mappings":"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"}