@posthog/core 1.10.0 → 1.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/posthog-core-stateless.d.ts +12 -4
- package/dist/posthog-core-stateless.d.ts.map +1 -1
- package/dist/posthog-core-stateless.js +42 -7
- package/dist/posthog-core-stateless.mjs +42 -7
- package/dist/posthog-core.d.ts +23 -4
- package/dist/posthog-core.d.ts.map +1 -1
- package/dist/posthog-core.js +95 -16
- package/dist/posthog-core.mjs +96 -17
- package/dist/testing/PostHogCoreTestClient.d.ts +2 -2
- package/dist/testing/PostHogCoreTestClient.d.ts.map +1 -1
- package/dist/types.d.ts +82 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +12 -0
- package/dist/types.mjs +10 -1
- package/package.json +1 -1
- package/src/posthog-core-stateless.ts +68 -16
- package/src/posthog-core.ts +168 -32
- package/src/testing/PostHogCoreTestClient.ts +2 -8
- package/src/types.ts +88 -2
package/dist/posthog-core.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createFlagsResponseFromFlagsAndPayloads, getFeatureFlagValue, getFlagValuesFromFlags, getPayloadsFromFlags, normalizeFlagsResponse, updateFlagValue } from "./featureFlagUtils.mjs";
|
|
2
|
-
import { Compression, PostHogPersistedProperty } from "./types.mjs";
|
|
2
|
+
import { Compression, FeatureFlagError, PostHogPersistedProperty } from "./types.mjs";
|
|
3
3
|
import { PostHogCoreStateless, QuotaLimitedFeature, maybeAdd } from "./posthog-core-stateless.mjs";
|
|
4
4
|
import { uuidv7 } from "./vendor/uuidv7.mjs";
|
|
5
5
|
import { isPlainError } from "./utils/index.mjs";
|
|
@@ -14,6 +14,7 @@ class PostHogCore extends PostHogCoreStateless {
|
|
|
14
14
|
}), this.flagCallReported = {}, this._sessionMaxLengthSeconds = 86400, this.sessionProps = {};
|
|
15
15
|
this.sendFeatureFlagEvent = options?.sendFeatureFlagEvent ?? true;
|
|
16
16
|
this._sessionExpirationTimeSeconds = options?.sessionExpirationTimeSeconds ?? 1800;
|
|
17
|
+
this._beforeSend = options?.before_send;
|
|
17
18
|
}
|
|
18
19
|
setupBootstrap(options) {
|
|
19
20
|
const bootstrap = options?.bootstrap;
|
|
@@ -311,10 +312,18 @@ class PostHogCore extends PostHogCoreStateless {
|
|
|
311
312
|
const extraProperties = {
|
|
312
313
|
$anon_distinct_id: sendAnonDistinctId ? this.getAnonymousId() : void 0
|
|
313
314
|
};
|
|
314
|
-
const
|
|
315
|
+
const result = await super.getFlags(distinctId, groups, personProperties, groupProperties, extraProperties, fetchConfig);
|
|
316
|
+
if (!result.success) return void this.setKnownFeatureFlagDetails({
|
|
317
|
+
flags: this.getKnownFeatureFlagDetails()?.flags ?? {},
|
|
318
|
+
requestError: result.error
|
|
319
|
+
});
|
|
320
|
+
const res = result.response;
|
|
315
321
|
if (res?.quotaLimited?.includes(QuotaLimitedFeature.FeatureFlags)) {
|
|
316
|
-
this.setKnownFeatureFlagDetails(
|
|
317
|
-
|
|
322
|
+
this.setKnownFeatureFlagDetails({
|
|
323
|
+
flags: this.getKnownFeatureFlagDetails()?.flags ?? {},
|
|
324
|
+
quotaLimited: res.quotaLimited
|
|
325
|
+
});
|
|
326
|
+
console.warn('[FEATURE FLAGS] Feature flags quota limit exceeded. Learn more about billing limits at https://posthog.com/docs/billing/limits-alerts');
|
|
318
327
|
return res;
|
|
319
328
|
}
|
|
320
329
|
if (res?.featureFlags) {
|
|
@@ -331,7 +340,13 @@ class PostHogCore extends PostHogCoreStateless {
|
|
|
331
340
|
}
|
|
332
341
|
};
|
|
333
342
|
}
|
|
334
|
-
this.setKnownFeatureFlagDetails(
|
|
343
|
+
this.setKnownFeatureFlagDetails({
|
|
344
|
+
flags: newFeatureFlagDetails.flags,
|
|
345
|
+
requestId: res.requestId,
|
|
346
|
+
evaluatedAt: res.evaluatedAt,
|
|
347
|
+
errorsWhileComputingFlags: res.errorsWhileComputingFlags,
|
|
348
|
+
quotaLimited: res.quotaLimited
|
|
349
|
+
});
|
|
335
350
|
this.setPersistedProperty(PostHogPersistedProperty.FlagsEndpointWasHit, true);
|
|
336
351
|
this.cacheSessionReplay('flags', res);
|
|
337
352
|
}
|
|
@@ -357,16 +372,14 @@ class PostHogCore extends PostHogCoreStateless {
|
|
|
357
372
|
}
|
|
358
373
|
return normalizeFlagsResponse(storedDetails);
|
|
359
374
|
}
|
|
375
|
+
getStoredFlagDetails() {
|
|
376
|
+
return this.getPersistedProperty(PostHogPersistedProperty.FeatureFlagDetails);
|
|
377
|
+
}
|
|
360
378
|
getKnownFeatureFlags() {
|
|
361
379
|
const featureFlagDetails = this.getKnownFeatureFlagDetails();
|
|
362
380
|
if (!featureFlagDetails) return;
|
|
363
381
|
return getFlagValuesFromFlags(featureFlagDetails.flags);
|
|
364
382
|
}
|
|
365
|
-
getKnownFeatureFlagPayloads() {
|
|
366
|
-
const featureFlagDetails = this.getKnownFeatureFlagDetails();
|
|
367
|
-
if (!featureFlagDetails) return;
|
|
368
|
-
return getPayloadsFromFlags(featureFlagDetails.flags);
|
|
369
|
-
}
|
|
370
383
|
getBootstrappedFeatureFlagDetails() {
|
|
371
384
|
const details = this.getPersistedProperty(PostHogPersistedProperty.BootstrapFeatureFlagDetails);
|
|
372
385
|
if (!details) return;
|
|
@@ -386,16 +399,33 @@ class PostHogCore extends PostHogCoreStateless {
|
|
|
386
399
|
return getPayloadsFromFlags(details.flags);
|
|
387
400
|
}
|
|
388
401
|
getFeatureFlag(key) {
|
|
402
|
+
const storedDetails = this.getStoredFlagDetails();
|
|
389
403
|
const details = this.getFeatureFlagDetails();
|
|
390
|
-
|
|
391
|
-
const
|
|
404
|
+
const errors = [];
|
|
405
|
+
const isQuotaLimited = storedDetails?.quotaLimited?.includes(QuotaLimitedFeature.FeatureFlags);
|
|
406
|
+
if (storedDetails?.requestError) {
|
|
407
|
+
const { type, statusCode } = storedDetails.requestError;
|
|
408
|
+
if ('timeout' === type) errors.push(FeatureFlagError.TIMEOUT);
|
|
409
|
+
else if ('api_error' === type && void 0 !== statusCode) errors.push(FeatureFlagError.apiError(statusCode));
|
|
410
|
+
else if ('connection_error' === type) errors.push(FeatureFlagError.CONNECTION_ERROR);
|
|
411
|
+
else errors.push(FeatureFlagError.UNKNOWN_ERROR);
|
|
412
|
+
} else if (storedDetails) {
|
|
413
|
+
if (storedDetails.errorsWhileComputingFlags) errors.push(FeatureFlagError.ERRORS_WHILE_COMPUTING);
|
|
414
|
+
if (isQuotaLimited) errors.push(FeatureFlagError.QUOTA_LIMITED);
|
|
415
|
+
}
|
|
416
|
+
const featureFlag = details?.flags[key];
|
|
392
417
|
let response = getFeatureFlagValue(featureFlag);
|
|
393
|
-
if (void 0 === response)
|
|
418
|
+
if (void 0 === response) {
|
|
419
|
+
const hasCachedFlags = details && Object.keys(details.flags).length > 0;
|
|
420
|
+
if (hasCachedFlags) response = false;
|
|
421
|
+
if (details && !featureFlag && !storedDetails?.requestError && !isQuotaLimited) errors.push(FeatureFlagError.FLAG_MISSING);
|
|
422
|
+
}
|
|
394
423
|
if (this.sendFeatureFlagEvent && !this.flagCallReported[key]) {
|
|
395
424
|
const bootstrappedResponse = this.getBootstrappedFeatureFlags()?.[key];
|
|
396
425
|
const bootstrappedPayload = this.getBootstrappedFeatureFlagPayloads()?.[key];
|
|
426
|
+
const featureFlagError = errors.length > 0 ? errors.join(',') : void 0;
|
|
397
427
|
this.flagCallReported[key] = true;
|
|
398
|
-
|
|
428
|
+
const properties = {
|
|
399
429
|
$feature_flag: key,
|
|
400
430
|
$feature_flag_response: response,
|
|
401
431
|
...maybeAdd('$feature_flag_id', featureFlag?.metadata?.id),
|
|
@@ -404,9 +434,11 @@ class PostHogCore extends PostHogCoreStateless {
|
|
|
404
434
|
...maybeAdd('$feature_flag_bootstrapped_response', bootstrappedResponse),
|
|
405
435
|
...maybeAdd('$feature_flag_bootstrapped_payload', bootstrappedPayload),
|
|
406
436
|
$used_bootstrap_value: !this.getPersistedProperty(PostHogPersistedProperty.FlagsEndpointWasHit),
|
|
407
|
-
...maybeAdd('$feature_flag_request_id', details
|
|
408
|
-
...maybeAdd('$feature_flag_evaluated_at', details
|
|
409
|
-
|
|
437
|
+
...maybeAdd('$feature_flag_request_id', details?.requestId),
|
|
438
|
+
...maybeAdd('$feature_flag_evaluated_at', details?.evaluatedAt),
|
|
439
|
+
...maybeAdd('$feature_flag_error', featureFlagError)
|
|
440
|
+
};
|
|
441
|
+
this.capture('$feature_flag_called', properties);
|
|
410
442
|
}
|
|
411
443
|
return response;
|
|
412
444
|
}
|
|
@@ -516,5 +548,52 @@ class PostHogCore extends PostHogCoreStateless {
|
|
|
516
548
|
$ai_trace_id: String(traceId)
|
|
517
549
|
});
|
|
518
550
|
}
|
|
551
|
+
processBeforeEnqueue(message) {
|
|
552
|
+
if (!this._beforeSend) return message;
|
|
553
|
+
const timestamp = message.timestamp;
|
|
554
|
+
const props = message.properties || {};
|
|
555
|
+
const captureEvent = {
|
|
556
|
+
uuid: message.uuid,
|
|
557
|
+
event: message.event,
|
|
558
|
+
properties: props,
|
|
559
|
+
$set: props.$set,
|
|
560
|
+
$set_once: props.$set_once,
|
|
561
|
+
timestamp: 'string' == typeof timestamp ? new Date(timestamp) : timestamp
|
|
562
|
+
};
|
|
563
|
+
const result = this._runBeforeSend(captureEvent);
|
|
564
|
+
if (!result) return null;
|
|
565
|
+
const resultProps = {
|
|
566
|
+
...result.properties ?? props
|
|
567
|
+
};
|
|
568
|
+
if (void 0 !== result.$set) resultProps.$set = result.$set;
|
|
569
|
+
else delete resultProps.$set;
|
|
570
|
+
if (void 0 !== result.$set_once) resultProps.$set_once = result.$set_once;
|
|
571
|
+
else delete resultProps.$set_once;
|
|
572
|
+
return {
|
|
573
|
+
...message,
|
|
574
|
+
uuid: result.uuid ?? message.uuid,
|
|
575
|
+
event: result.event,
|
|
576
|
+
properties: resultProps,
|
|
577
|
+
timestamp: result.timestamp
|
|
578
|
+
};
|
|
579
|
+
}
|
|
580
|
+
_runBeforeSend(captureEvent) {
|
|
581
|
+
const beforeSend = this._beforeSend;
|
|
582
|
+
if (!beforeSend) return captureEvent;
|
|
583
|
+
const fns = Array.isArray(beforeSend) ? beforeSend : [
|
|
584
|
+
beforeSend
|
|
585
|
+
];
|
|
586
|
+
let result = captureEvent;
|
|
587
|
+
for (const fn of fns)try {
|
|
588
|
+
result = fn(result);
|
|
589
|
+
if (!result) {
|
|
590
|
+
this._logger.info(`Event '${captureEvent.event}' was rejected in before_send function`);
|
|
591
|
+
return null;
|
|
592
|
+
}
|
|
593
|
+
} catch (e) {
|
|
594
|
+
this._logger.error(`Error in before_send function for event '${captureEvent.event}':`, e);
|
|
595
|
+
}
|
|
596
|
+
return result;
|
|
597
|
+
}
|
|
519
598
|
}
|
|
520
599
|
export { PostHogCore };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PostHogCore } from '../posthog-core';
|
|
2
|
-
import type { JsonType, PostHogCoreOptions, PostHogFetchOptions, PostHogFetchResponse
|
|
2
|
+
import type { GetFlagsResult, JsonType, PostHogCoreOptions, PostHogFetchOptions, PostHogFetchResponse } from '../types';
|
|
3
3
|
export interface PostHogCoreTestClientMocks {
|
|
4
4
|
fetch: jest.Mock<Promise<PostHogFetchResponse>, [string, PostHogFetchOptions]>;
|
|
5
5
|
storage: {
|
|
@@ -11,7 +11,7 @@ export declare class PostHogCoreTestClient extends PostHogCore {
|
|
|
11
11
|
private mocks;
|
|
12
12
|
_cachedDistinctId?: string;
|
|
13
13
|
constructor(mocks: PostHogCoreTestClientMocks, apiKey: string, options?: PostHogCoreOptions);
|
|
14
|
-
getFlags(distinctId: string, groups?: Record<string, string | number>, personProperties?: Record<string, string>, groupProperties?: Record<string, Record<string, string>>, extraPayload?: Record<string, any>): Promise<
|
|
14
|
+
getFlags(distinctId: string, groups?: Record<string, string | number>, personProperties?: Record<string, string>, groupProperties?: Record<string, Record<string, string>>, extraPayload?: Record<string, any>): Promise<GetFlagsResult>;
|
|
15
15
|
getPersistedProperty<T>(key: string): T;
|
|
16
16
|
setPersistedProperty<T>(key: string, value: T | null): void;
|
|
17
17
|
fetch(url: string, options: PostHogFetchOptions): Promise<PostHogFetchResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostHogCoreTestClient.d.ts","sourceRoot":"","sources":["../../src/testing/PostHogCoreTestClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"PostHogCoreTestClient.d.ts","sourceRoot":"","sources":["../../src/testing/PostHogCoreTestClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAItH,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAA;IAC9E,OAAO,EAAE;QACP,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;QAC7C,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC,CAAA;KAC/C,CAAA;CACF;AAED,qBAAa,qBAAsB,SAAQ,WAAW;IAIlD,OAAO,CAAC,KAAK;IAHR,iBAAiB,CAAC,EAAE,MAAM,CAAA;gBAGvB,KAAK,EAAE,0BAA0B,EACzC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,kBAAkB;IAQvB,QAAQ,CACb,UAAU,EAAE,MAAM,EAClB,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAM,EAC5C,gBAAgB,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,EAC7C,eAAe,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM,EAC5D,YAAY,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GACrC,OAAO,CAAC,cAAc,CAAC;IAI1B,oBAAoB,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC;IAGvC,oBAAoB,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;IAG3D,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAG/E,YAAY,IAAI,MAAM;IAGtB,iBAAiB,IAAI,MAAM;IAG3B,kBAAkB,IAAI,MAAM;CAG7B;AAED,eAAO,MAAM,gBAAgB,GAC3B,QAAQ,MAAM,EACd,UAAU,kBAAkB,EAC5B,aAAa,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,EACxD,eAAc;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAA;CAAO,KACtD,CAAC,qBAAqB,EAAE,0BAA0B,CAsBpD,CAAA"}
|
package/dist/types.d.ts
CHANGED
|
@@ -56,7 +56,7 @@ export type PostHogCoreOptions = {
|
|
|
56
56
|
/** Special flag to indicate ingested data is for a historical migration. */
|
|
57
57
|
historicalMigration?: boolean;
|
|
58
58
|
/**
|
|
59
|
-
* Evaluation
|
|
59
|
+
* Evaluation contexts for feature flags.
|
|
60
60
|
* When set, only feature flags that have at least one matching evaluation tag
|
|
61
61
|
* will be evaluated for this SDK instance. Feature flags with no evaluation tags
|
|
62
62
|
* will always be evaluated.
|
|
@@ -65,7 +65,18 @@ export type PostHogCoreOptions = {
|
|
|
65
65
|
*
|
|
66
66
|
* @default undefined
|
|
67
67
|
*/
|
|
68
|
+
evaluationContexts?: readonly string[];
|
|
69
|
+
/**
|
|
70
|
+
* Evaluation environments for feature flags.
|
|
71
|
+
* @deprecated Use evaluationContexts instead. This property will be removed in a future version.
|
|
72
|
+
*/
|
|
68
73
|
evaluationEnvironments?: readonly string[];
|
|
74
|
+
/**
|
|
75
|
+
* Allows modification or dropping of events before they're sent to PostHog.
|
|
76
|
+
* If an array is provided, the functions are run in order.
|
|
77
|
+
* If a function returns null, the event will be dropped.
|
|
78
|
+
*/
|
|
79
|
+
before_send?: BeforeSendFn | BeforeSendFn[];
|
|
69
80
|
};
|
|
70
81
|
export declare enum PostHogPersistedProperty {
|
|
71
82
|
AnonymousId = "anonymous_id",
|
|
@@ -224,7 +235,11 @@ export type PostHogV2FlagsResponse = Omit<PostHogFlagsResponse, 'featureFlags' |
|
|
|
224
235
|
* When we pull flags from persistence, we can normalize them to PostHogFeatureFlagDetails
|
|
225
236
|
* so that we can support v1 and v2 of the API.
|
|
226
237
|
*/
|
|
227
|
-
export type PostHogFlagsStorageFormat = Pick<PostHogFeatureFlagDetails, 'flags'
|
|
238
|
+
export type PostHogFlagsStorageFormat = Pick<PostHogFeatureFlagDetails, 'flags'> & Partial<Pick<PostHogFlagsResponse, 'requestId' | 'evaluatedAt'>> & {
|
|
239
|
+
errorsWhileComputingFlags?: boolean;
|
|
240
|
+
quotaLimited?: string[];
|
|
241
|
+
requestError?: FeatureFlagRequestError;
|
|
242
|
+
};
|
|
228
243
|
/**
|
|
229
244
|
* Models legacy flags and payloads return type for many public methods.
|
|
230
245
|
*/
|
|
@@ -233,6 +248,48 @@ export type JsonType = string | number | boolean | null | {
|
|
|
233
248
|
[key: string]: JsonType;
|
|
234
249
|
} | Array<JsonType> | JsonType[];
|
|
235
250
|
export type FetchLike = (url: string, options: PostHogFetchOptions) => Promise<PostHogFetchResponse>;
|
|
251
|
+
/**
|
|
252
|
+
* Error type constants for the $feature_flag_error property.
|
|
253
|
+
*
|
|
254
|
+
* These values are sent in analytics events to track flag evaluation failures.
|
|
255
|
+
* They should not be changed without considering impact on existing dashboards
|
|
256
|
+
* and queries that filter on these values.
|
|
257
|
+
*
|
|
258
|
+
* Error values:
|
|
259
|
+
* ERRORS_WHILE_COMPUTING: Server returned errorsWhileComputingFlags=true
|
|
260
|
+
* FLAG_MISSING: Requested flag not in API response
|
|
261
|
+
* QUOTA_LIMITED: Rate/quota limit exceeded
|
|
262
|
+
* TIMEOUT: Request timed out
|
|
263
|
+
* CONNECTION_ERROR: Network connection failed
|
|
264
|
+
* apiError: HTTP error with status code (e.g., api_error_500)
|
|
265
|
+
*/
|
|
266
|
+
export declare const FeatureFlagError: {
|
|
267
|
+
readonly ERRORS_WHILE_COMPUTING: "errors_while_computing_flags";
|
|
268
|
+
readonly FLAG_MISSING: "flag_missing";
|
|
269
|
+
readonly QUOTA_LIMITED: "quota_limited";
|
|
270
|
+
readonly TIMEOUT: "timeout";
|
|
271
|
+
readonly CONNECTION_ERROR: "connection_error";
|
|
272
|
+
readonly UNKNOWN_ERROR: "unknown_error";
|
|
273
|
+
readonly apiError: (status: number) => string;
|
|
274
|
+
};
|
|
275
|
+
export type FeatureFlagErrorType = (typeof FeatureFlagError)[Exclude<keyof typeof FeatureFlagError, 'apiError'>] | ReturnType<typeof FeatureFlagError.apiError> | string;
|
|
276
|
+
/**
|
|
277
|
+
* Represents an error that occurred during a feature flag request.
|
|
278
|
+
*/
|
|
279
|
+
export type FeatureFlagRequestError = {
|
|
280
|
+
type: 'timeout' | 'connection_error' | 'api_error' | 'unknown_error';
|
|
281
|
+
statusCode?: number;
|
|
282
|
+
};
|
|
283
|
+
/**
|
|
284
|
+
* Result type for getFlags that includes either a successful response or error information.
|
|
285
|
+
*/
|
|
286
|
+
export type GetFlagsResult = {
|
|
287
|
+
success: true;
|
|
288
|
+
response: PostHogFeatureFlagsResponse;
|
|
289
|
+
} | {
|
|
290
|
+
success: false;
|
|
291
|
+
error: FeatureFlagRequestError;
|
|
292
|
+
};
|
|
236
293
|
export type FeatureFlagDetail = {
|
|
237
294
|
key: string;
|
|
238
295
|
enabled: boolean;
|
|
@@ -471,5 +528,28 @@ export declare const knownUnsafeEditableEvent: readonly ["$snapshot", "$pageview
|
|
|
471
528
|
* Some features of PostHog rely on receiving 100% of these events
|
|
472
529
|
*/
|
|
473
530
|
export type KnownUnsafeEditableEvent = (typeof knownUnsafeEditableEvent)[number];
|
|
531
|
+
/**
|
|
532
|
+
* Represents an event before it's sent to PostHog.
|
|
533
|
+
* This is the interface exposed to the `before_send` hook, matching the web SDK's `CaptureResult`.
|
|
534
|
+
*/
|
|
535
|
+
export type CaptureEvent = {
|
|
536
|
+
/** UUID for the event (optional to allow compatibility with Node SDK's EventMessage) */
|
|
537
|
+
uuid?: string;
|
|
538
|
+
/** The name of the event */
|
|
539
|
+
event: string;
|
|
540
|
+
/** Properties associated with the event (optional to allow compatibility with Node SDK's EventMessage) */
|
|
541
|
+
properties?: PostHogEventProperties;
|
|
542
|
+
/** Properties to set on the person (overrides existing values) */
|
|
543
|
+
$set?: PostHogEventProperties;
|
|
544
|
+
/** Properties to set on the person only once (does not override existing values) */
|
|
545
|
+
$set_once?: PostHogEventProperties;
|
|
546
|
+
/** Timestamp for the event */
|
|
547
|
+
timestamp?: Date;
|
|
548
|
+
};
|
|
549
|
+
/**
|
|
550
|
+
* Function type for the `before_send` hook.
|
|
551
|
+
* Receives an event and can return a modified event or null to drop the event.
|
|
552
|
+
*/
|
|
553
|
+
export type BeforeSendFn = (event: CaptureEvent | null) => CaptureEvent | null;
|
|
474
554
|
export {};
|
|
475
555
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -26,6 +26,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
26
26
|
__webpack_require__.d(__webpack_exports__, {
|
|
27
27
|
ActionStepStringMatching: ()=>ActionStepStringMatching,
|
|
28
28
|
Compression: ()=>Compression,
|
|
29
|
+
FeatureFlagError: ()=>FeatureFlagError,
|
|
29
30
|
PostHogPersistedProperty: ()=>PostHogPersistedProperty,
|
|
30
31
|
SurveyMatchType: ()=>SurveyMatchType,
|
|
31
32
|
SurveyPosition: ()=>SurveyPosition,
|
|
@@ -70,6 +71,15 @@ var Compression = /*#__PURE__*/ function(Compression) {
|
|
|
70
71
|
Compression["Base64"] = "base64";
|
|
71
72
|
return Compression;
|
|
72
73
|
}({});
|
|
74
|
+
const FeatureFlagError = {
|
|
75
|
+
ERRORS_WHILE_COMPUTING: 'errors_while_computing_flags',
|
|
76
|
+
FLAG_MISSING: 'flag_missing',
|
|
77
|
+
QUOTA_LIMITED: 'quota_limited',
|
|
78
|
+
TIMEOUT: 'timeout',
|
|
79
|
+
CONNECTION_ERROR: 'connection_error',
|
|
80
|
+
UNKNOWN_ERROR: 'unknown_error',
|
|
81
|
+
apiError: (status)=>`api_error_${status}`
|
|
82
|
+
};
|
|
73
83
|
var SurveyPosition = /*#__PURE__*/ function(SurveyPosition) {
|
|
74
84
|
SurveyPosition["TopLeft"] = "top_left";
|
|
75
85
|
SurveyPosition["TopCenter"] = "top_center";
|
|
@@ -153,6 +163,7 @@ const knownUnsafeEditableEvent = [
|
|
|
153
163
|
];
|
|
154
164
|
exports.ActionStepStringMatching = __webpack_exports__.ActionStepStringMatching;
|
|
155
165
|
exports.Compression = __webpack_exports__.Compression;
|
|
166
|
+
exports.FeatureFlagError = __webpack_exports__.FeatureFlagError;
|
|
156
167
|
exports.PostHogPersistedProperty = __webpack_exports__.PostHogPersistedProperty;
|
|
157
168
|
exports.SurveyMatchType = __webpack_exports__.SurveyMatchType;
|
|
158
169
|
exports.SurveyPosition = __webpack_exports__.SurveyPosition;
|
|
@@ -166,6 +177,7 @@ exports.knownUnsafeEditableEvent = __webpack_exports__.knownUnsafeEditableEvent;
|
|
|
166
177
|
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
167
178
|
"ActionStepStringMatching",
|
|
168
179
|
"Compression",
|
|
180
|
+
"FeatureFlagError",
|
|
169
181
|
"PostHogPersistedProperty",
|
|
170
182
|
"SurveyMatchType",
|
|
171
183
|
"SurveyPosition",
|
package/dist/types.mjs
CHANGED
|
@@ -31,6 +31,15 @@ var types_Compression = /*#__PURE__*/ function(Compression) {
|
|
|
31
31
|
Compression["Base64"] = "base64";
|
|
32
32
|
return Compression;
|
|
33
33
|
}({});
|
|
34
|
+
const FeatureFlagError = {
|
|
35
|
+
ERRORS_WHILE_COMPUTING: 'errors_while_computing_flags',
|
|
36
|
+
FLAG_MISSING: 'flag_missing',
|
|
37
|
+
QUOTA_LIMITED: 'quota_limited',
|
|
38
|
+
TIMEOUT: 'timeout',
|
|
39
|
+
CONNECTION_ERROR: 'connection_error',
|
|
40
|
+
UNKNOWN_ERROR: 'unknown_error',
|
|
41
|
+
apiError: (status)=>`api_error_${status}`
|
|
42
|
+
};
|
|
34
43
|
var types_SurveyPosition = /*#__PURE__*/ function(SurveyPosition) {
|
|
35
44
|
SurveyPosition["TopLeft"] = "top_left";
|
|
36
45
|
SurveyPosition["TopCenter"] = "top_center";
|
|
@@ -112,4 +121,4 @@ const knownUnsafeEditableEvent = [
|
|
|
112
121
|
'$feature_enrollment_update',
|
|
113
122
|
'$feature_flag_called'
|
|
114
123
|
];
|
|
115
|
-
export { 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 };
|
|
124
|
+
export { types_ActionStepStringMatching as ActionStepStringMatching, types_Compression as Compression, FeatureFlagError, 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 };
|
package/package.json
CHANGED
|
@@ -19,6 +19,8 @@ import {
|
|
|
19
19
|
PostHogPersistedProperty,
|
|
20
20
|
PostHogQueueItem,
|
|
21
21
|
Logger,
|
|
22
|
+
GetFlagsResult,
|
|
23
|
+
FeatureFlagRequestError,
|
|
22
24
|
} from './types'
|
|
23
25
|
import {
|
|
24
26
|
allSettled,
|
|
@@ -116,7 +118,7 @@ export abstract class PostHogCoreStateless {
|
|
|
116
118
|
private removeDebugCallback?: () => void
|
|
117
119
|
private disableGeoip: boolean
|
|
118
120
|
private historicalMigration: boolean
|
|
119
|
-
private
|
|
121
|
+
private evaluationContexts?: readonly string[]
|
|
120
122
|
protected disabled
|
|
121
123
|
protected disableCompression: boolean
|
|
122
124
|
|
|
@@ -167,11 +169,17 @@ export abstract class PostHogCoreStateless {
|
|
|
167
169
|
this.disableGeoip = options.disableGeoip ?? true
|
|
168
170
|
this.disabled = options.disabled ?? false
|
|
169
171
|
this.historicalMigration = options?.historicalMigration ?? false
|
|
170
|
-
this.evaluationEnvironments = options?.evaluationEnvironments
|
|
171
172
|
// Init promise allows the derived class to block calls until it is ready
|
|
172
173
|
this._initPromise = Promise.resolve()
|
|
173
174
|
this._isInitialized = true
|
|
174
175
|
this._logger = createLogger('[PostHog]', this.logMsgIfDebug.bind(this))
|
|
176
|
+
// Support both evaluationContexts (new) and evaluationEnvironments (deprecated)
|
|
177
|
+
this.evaluationContexts = options?.evaluationContexts ?? options?.evaluationEnvironments
|
|
178
|
+
if (options?.evaluationEnvironments && !options?.evaluationContexts) {
|
|
179
|
+
this._logger.warn(
|
|
180
|
+
'evaluationEnvironments is deprecated. Use evaluationContexts instead. This property will be removed in a future version.'
|
|
181
|
+
)
|
|
182
|
+
}
|
|
175
183
|
this.disableCompression = !isGzipSupported() || (options?.disableCompression ?? false)
|
|
176
184
|
}
|
|
177
185
|
|
|
@@ -452,7 +460,7 @@ export abstract class PostHogCoreStateless {
|
|
|
452
460
|
groupProperties: Record<string, Record<string, string>> = {},
|
|
453
461
|
extraPayload: Record<string, any> = {},
|
|
454
462
|
fetchConfig: boolean = true
|
|
455
|
-
): Promise<
|
|
463
|
+
): Promise<GetFlagsResult> {
|
|
456
464
|
await this._initPromise
|
|
457
465
|
|
|
458
466
|
const configParam = fetchConfig ? '&config=true' : ''
|
|
@@ -466,9 +474,9 @@ export abstract class PostHogCoreStateless {
|
|
|
466
474
|
...extraPayload,
|
|
467
475
|
}
|
|
468
476
|
|
|
469
|
-
// Add evaluation
|
|
470
|
-
if (this.
|
|
471
|
-
requestData.
|
|
477
|
+
// Add evaluation contexts if configured
|
|
478
|
+
if (this.evaluationContexts && this.evaluationContexts.length > 0) {
|
|
479
|
+
requestData.evaluation_contexts = this.evaluationContexts
|
|
472
480
|
}
|
|
473
481
|
|
|
474
482
|
const fetchOptions: PostHogFetchOptions = {
|
|
@@ -482,11 +490,28 @@ export abstract class PostHogCoreStateless {
|
|
|
482
490
|
// Don't retry /flags API calls
|
|
483
491
|
return this.fetchWithRetry(url, fetchOptions, { retryCount: 0 }, this.featureFlagsRequestTimeoutMs)
|
|
484
492
|
.then((response) => response.json() as Promise<PostHogV1FlagsResponse | PostHogV2FlagsResponse>)
|
|
485
|
-
.then((response) => normalizeFlagsResponse(response))
|
|
486
|
-
.catch((error) => {
|
|
493
|
+
.then((response) => ({ success: true as const, response: normalizeFlagsResponse(response) }))
|
|
494
|
+
.catch((error): GetFlagsResult => {
|
|
487
495
|
this._events.emit('error', error)
|
|
488
|
-
return
|
|
489
|
-
})
|
|
496
|
+
return { success: false, error: this.categorizeRequestError(error) }
|
|
497
|
+
})
|
|
498
|
+
}
|
|
499
|
+
|
|
500
|
+
private categorizeRequestError(error: unknown): FeatureFlagRequestError {
|
|
501
|
+
if (error instanceof PostHogFetchHttpError) {
|
|
502
|
+
return { type: 'api_error', statusCode: error.status }
|
|
503
|
+
}
|
|
504
|
+
|
|
505
|
+
if (error instanceof PostHogFetchNetworkError) {
|
|
506
|
+
const cause = error.error
|
|
507
|
+
// AbortError/TimeoutError is thrown when the request times out via AbortSignal.timeout()
|
|
508
|
+
if (cause instanceof Error && (cause.name === 'AbortError' || cause.name === 'TimeoutError')) {
|
|
509
|
+
return { type: 'timeout' }
|
|
510
|
+
}
|
|
511
|
+
return { type: 'connection_error' }
|
|
512
|
+
}
|
|
513
|
+
|
|
514
|
+
return { type: 'unknown_error' }
|
|
490
515
|
}
|
|
491
516
|
|
|
492
517
|
protected async getFeatureFlagStateless(
|
|
@@ -710,13 +735,15 @@ export abstract class PostHogCoreStateless {
|
|
|
710
735
|
if (flagKeysToEvaluate) {
|
|
711
736
|
extraPayload['flag_keys_to_evaluate'] = flagKeysToEvaluate
|
|
712
737
|
}
|
|
713
|
-
const
|
|
738
|
+
const result = await this.getFlags(distinctId, groups, personProperties, groupProperties, extraPayload)
|
|
714
739
|
|
|
715
|
-
if (
|
|
716
|
-
//
|
|
740
|
+
if (!result.success) {
|
|
741
|
+
// Request failed, return undefined
|
|
717
742
|
return undefined
|
|
718
743
|
}
|
|
719
744
|
|
|
745
|
+
const flagsResponse = result.response
|
|
746
|
+
|
|
720
747
|
// if there's an error on the flagsResponse, log a console error, but don't throw an error
|
|
721
748
|
if (flagsResponse.errorsWhileComputingFlags) {
|
|
722
749
|
console.error(
|
|
@@ -824,6 +851,17 @@ export abstract class PostHogCoreStateless {
|
|
|
824
851
|
/***
|
|
825
852
|
*** QUEUEING AND FLUSHING
|
|
826
853
|
***/
|
|
854
|
+
|
|
855
|
+
/**
|
|
856
|
+
* Hook that allows subclasses to transform or filter a message before it's queued.
|
|
857
|
+
* Return null to drop the message.
|
|
858
|
+
* @param message The prepared message
|
|
859
|
+
* @returns The transformed message, or null to drop it
|
|
860
|
+
*/
|
|
861
|
+
protected processBeforeEnqueue(message: PostHogEventProperties): PostHogEventProperties | null {
|
|
862
|
+
return message
|
|
863
|
+
}
|
|
864
|
+
|
|
827
865
|
protected enqueue(type: string, _message: any, options?: PostHogCaptureOptions): void {
|
|
828
866
|
this.wrap(() => {
|
|
829
867
|
if (this.optedOut) {
|
|
@@ -831,7 +869,13 @@ export abstract class PostHogCoreStateless {
|
|
|
831
869
|
return
|
|
832
870
|
}
|
|
833
871
|
|
|
834
|
-
|
|
872
|
+
let message: PostHogEventProperties | null = this.prepareMessage(type, _message, options)
|
|
873
|
+
|
|
874
|
+
// Allow subclasses to transform or filter the message
|
|
875
|
+
message = this.processBeforeEnqueue(message)
|
|
876
|
+
if (message === null) {
|
|
877
|
+
return
|
|
878
|
+
}
|
|
835
879
|
|
|
836
880
|
const queue = this.getPersistedProperty<PostHogQueueItem[]>(PostHogPersistedProperty.Queue) || []
|
|
837
881
|
|
|
@@ -871,9 +915,17 @@ export abstract class PostHogCoreStateless {
|
|
|
871
915
|
return
|
|
872
916
|
}
|
|
873
917
|
|
|
918
|
+
let message: PostHogEventProperties | null = this.prepareMessage(type, _message, options)
|
|
919
|
+
|
|
920
|
+
// Allow subclasses to transform or filter the message (e.g., before_send hook)
|
|
921
|
+
message = this.processBeforeEnqueue(message)
|
|
922
|
+
if (message === null) {
|
|
923
|
+
return
|
|
924
|
+
}
|
|
925
|
+
|
|
874
926
|
const data: Record<string, any> = {
|
|
875
927
|
api_key: this.apiKey,
|
|
876
|
-
batch: [
|
|
928
|
+
batch: [message],
|
|
877
929
|
sent_at: currentISOTime(),
|
|
878
930
|
}
|
|
879
931
|
|
|
@@ -903,7 +955,7 @@ export abstract class PostHogCoreStateless {
|
|
|
903
955
|
}
|
|
904
956
|
}
|
|
905
957
|
|
|
906
|
-
|
|
958
|
+
protected prepareMessage(type: string, _message: any, options?: PostHogCaptureOptions): PostHogEventProperties {
|
|
907
959
|
const message = {
|
|
908
960
|
..._message,
|
|
909
961
|
type: type,
|