@posthog/core 1.38.1 → 1.39.1
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.
|
@@ -152,6 +152,7 @@ export declare abstract class PostHogCoreStateless {
|
|
|
152
152
|
*** GROUPS
|
|
153
153
|
***/
|
|
154
154
|
protected groupIdentifyStateless(groupType: string, groupKey: string | number, groupProperties?: PostHogEventProperties, options?: PostHogCaptureOptions, distinctId?: string, eventProperties?: PostHogEventProperties): void;
|
|
155
|
+
protected groupIdentifyStatelessImmediate(groupType: string, groupKey: string | number, groupProperties?: PostHogEventProperties, options?: PostHogCaptureOptions, distinctId?: string, eventProperties?: PostHogEventProperties): Promise<void>;
|
|
155
156
|
protected getRemoteConfig(): Promise<PostHogRemoteConfig | undefined>;
|
|
156
157
|
/***
|
|
157
158
|
*** FEATURE FLAGS
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"posthog-core-stateless.d.ts","sourceRoot":"","sources":["../src/posthog-core-stateless.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAGnD,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,QAAQ,EACR,mBAAmB,EACnB,gBAAgB,EAGhB,yBAAyB,EACzB,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EAExB,MAAM,EACN,cAAc,EAEf,MAAM,SAAS,CAAA;AAChB,OAAO,EAML,gBAAgB,EAKjB,MAAM,SAAS,CAAA;AAEhB,OAAO,EACL,sBAAsB,EAMvB,MAAM,kBAAkB,CAAA;AAyBzB,cAAM,wBAAyB,SAAQ,KAAK;IAGvB,KAAK,EAAE,OAAO;IAFjC,IAAI,SAA6B;gBAEd,KAAK,EAAE,OAAO;CAMlC;AAED,eAAO,MAAM,QAAQ,GAAI,KAAK,MAAM,EAAE,OAAO,QAAQ,GAAG,SAAS,KAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAC9C,CAAA;AAE7C,wBAAsB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAY3D;AAMD;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,wBAAwB,CAExF;
|
|
1
|
+
{"version":3,"file":"posthog-core-stateless.d.ts","sourceRoot":"","sources":["../src/posthog-core-stateless.ts"],"names":[],"mappings":"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"}
|
|
@@ -86,6 +86,10 @@ function isRetryableFlagsFetchError(err) {
|
|
|
86
86
|
function isPostHogFetchContentTooLargeError(err) {
|
|
87
87
|
return 'object' == typeof err && err instanceof PostHogFetchHttpError && 413 === err.status;
|
|
88
88
|
}
|
|
89
|
+
function isPostHogFetchRetryableError(err) {
|
|
90
|
+
if (err instanceof PostHogFetchHttpError) return 408 === err.status || 429 === err.status || err.status >= 500;
|
|
91
|
+
return isPostHogFetchNetworkError(err);
|
|
92
|
+
}
|
|
89
93
|
function isPostHogEventProperties(value) {
|
|
90
94
|
return null !== value && 'object' == typeof value && !Array.isArray(value);
|
|
91
95
|
}
|
|
@@ -130,7 +134,7 @@ class PostHogCoreStateless {
|
|
|
130
134
|
this._retryOptions = {
|
|
131
135
|
retryCount: options.fetchRetryCount ?? 3,
|
|
132
136
|
retryDelay: options.fetchRetryDelay ?? 3000,
|
|
133
|
-
retryCheck:
|
|
137
|
+
retryCheck: isPostHogFetchRetryableError
|
|
134
138
|
};
|
|
135
139
|
this.requestTimeout = options.requestTimeout ?? 10000;
|
|
136
140
|
this.featureFlagsRequestTimeoutMs = options.featureFlagsRequestTimeoutMs ?? 3000;
|
|
@@ -285,6 +289,19 @@ class PostHogCoreStateless {
|
|
|
285
289
|
this.enqueue('capture', payload, options);
|
|
286
290
|
});
|
|
287
291
|
}
|
|
292
|
+
async groupIdentifyStatelessImmediate(groupType, groupKey, groupProperties, options, distinctId, eventProperties) {
|
|
293
|
+
const payload = this.buildPayload({
|
|
294
|
+
distinct_id: distinctId || `$${groupType}_${groupKey}`,
|
|
295
|
+
event: '$groupidentify',
|
|
296
|
+
properties: {
|
|
297
|
+
$group_type: groupType,
|
|
298
|
+
$group_key: groupKey,
|
|
299
|
+
$group_set: groupProperties || {},
|
|
300
|
+
...eventProperties || {}
|
|
301
|
+
}
|
|
302
|
+
});
|
|
303
|
+
await this.sendImmediate('capture', payload, options);
|
|
304
|
+
}
|
|
288
305
|
async getRemoteConfig() {
|
|
289
306
|
await this._initPromise;
|
|
290
307
|
let host = this.host;
|
|
@@ -423,8 +440,9 @@ class PostHogCoreStateless {
|
|
|
423
440
|
}
|
|
424
441
|
async getFeatureFlagDetailsStateless(distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip, flagKeysToEvaluate) {
|
|
425
442
|
await this._initPromise;
|
|
426
|
-
const extraPayload = {
|
|
427
|
-
|
|
443
|
+
const extraPayload = {
|
|
444
|
+
geoip_disable: disableGeoip ?? this.disableGeoip
|
|
445
|
+
};
|
|
428
446
|
if (flagKeysToEvaluate) extraPayload['flag_keys_to_evaluate'] = flagKeysToEvaluate;
|
|
429
447
|
const result = await this.getFlags(distinctId, groups, personProperties, groupProperties, extraPayload);
|
|
430
448
|
if (!result.success) return;
|
|
@@ -661,7 +679,7 @@ class PostHogCoreStateless {
|
|
|
661
679
|
const retryOptions = {
|
|
662
680
|
retryCheck: (err)=>{
|
|
663
681
|
if (isPostHogFetchContentTooLargeError(err)) return false;
|
|
664
|
-
return
|
|
682
|
+
return isPostHogFetchRetryableError(err);
|
|
665
683
|
}
|
|
666
684
|
};
|
|
667
685
|
try {
|
|
@@ -705,7 +723,7 @@ class PostHogCoreStateless {
|
|
|
705
723
|
await this.fetchWithRetry(url, fetchOptions, {
|
|
706
724
|
retryCheck: (err)=>{
|
|
707
725
|
if (isPostHogFetchContentTooLargeError(err)) return false;
|
|
708
|
-
return
|
|
726
|
+
return isPostHogFetchRetryableError(err);
|
|
709
727
|
}
|
|
710
728
|
});
|
|
711
729
|
return {
|
|
@@ -54,6 +54,10 @@ function isRetryableFlagsFetchError(err) {
|
|
|
54
54
|
function isPostHogFetchContentTooLargeError(err) {
|
|
55
55
|
return 'object' == typeof err && err instanceof PostHogFetchHttpError && 413 === err.status;
|
|
56
56
|
}
|
|
57
|
+
function isPostHogFetchRetryableError(err) {
|
|
58
|
+
if (err instanceof PostHogFetchHttpError) return 408 === err.status || 429 === err.status || err.status >= 500;
|
|
59
|
+
return isPostHogFetchNetworkError(err);
|
|
60
|
+
}
|
|
57
61
|
function isPostHogEventProperties(value) {
|
|
58
62
|
return null !== value && 'object' == typeof value && !Array.isArray(value);
|
|
59
63
|
}
|
|
@@ -98,7 +102,7 @@ class PostHogCoreStateless {
|
|
|
98
102
|
this._retryOptions = {
|
|
99
103
|
retryCount: options.fetchRetryCount ?? 3,
|
|
100
104
|
retryDelay: options.fetchRetryDelay ?? 3000,
|
|
101
|
-
retryCheck:
|
|
105
|
+
retryCheck: isPostHogFetchRetryableError
|
|
102
106
|
};
|
|
103
107
|
this.requestTimeout = options.requestTimeout ?? 10000;
|
|
104
108
|
this.featureFlagsRequestTimeoutMs = options.featureFlagsRequestTimeoutMs ?? 3000;
|
|
@@ -253,6 +257,19 @@ class PostHogCoreStateless {
|
|
|
253
257
|
this.enqueue('capture', payload, options);
|
|
254
258
|
});
|
|
255
259
|
}
|
|
260
|
+
async groupIdentifyStatelessImmediate(groupType, groupKey, groupProperties, options, distinctId, eventProperties) {
|
|
261
|
+
const payload = this.buildPayload({
|
|
262
|
+
distinct_id: distinctId || `$${groupType}_${groupKey}`,
|
|
263
|
+
event: '$groupidentify',
|
|
264
|
+
properties: {
|
|
265
|
+
$group_type: groupType,
|
|
266
|
+
$group_key: groupKey,
|
|
267
|
+
$group_set: groupProperties || {},
|
|
268
|
+
...eventProperties || {}
|
|
269
|
+
}
|
|
270
|
+
});
|
|
271
|
+
await this.sendImmediate('capture', payload, options);
|
|
272
|
+
}
|
|
256
273
|
async getRemoteConfig() {
|
|
257
274
|
await this._initPromise;
|
|
258
275
|
let host = this.host;
|
|
@@ -391,8 +408,9 @@ class PostHogCoreStateless {
|
|
|
391
408
|
}
|
|
392
409
|
async getFeatureFlagDetailsStateless(distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip, flagKeysToEvaluate) {
|
|
393
410
|
await this._initPromise;
|
|
394
|
-
const extraPayload = {
|
|
395
|
-
|
|
411
|
+
const extraPayload = {
|
|
412
|
+
geoip_disable: disableGeoip ?? this.disableGeoip
|
|
413
|
+
};
|
|
396
414
|
if (flagKeysToEvaluate) extraPayload['flag_keys_to_evaluate'] = flagKeysToEvaluate;
|
|
397
415
|
const result = await this.getFlags(distinctId, groups, personProperties, groupProperties, extraPayload);
|
|
398
416
|
if (!result.success) return;
|
|
@@ -629,7 +647,7 @@ class PostHogCoreStateless {
|
|
|
629
647
|
const retryOptions = {
|
|
630
648
|
retryCheck: (err)=>{
|
|
631
649
|
if (isPostHogFetchContentTooLargeError(err)) return false;
|
|
632
|
-
return
|
|
650
|
+
return isPostHogFetchRetryableError(err);
|
|
633
651
|
}
|
|
634
652
|
};
|
|
635
653
|
try {
|
|
@@ -673,7 +691,7 @@ class PostHogCoreStateless {
|
|
|
673
691
|
await this.fetchWithRetry(url, fetchOptions, {
|
|
674
692
|
retryCheck: (err)=>{
|
|
675
693
|
if (isPostHogFetchContentTooLargeError(err)) return false;
|
|
676
|
-
return
|
|
694
|
+
return isPostHogFetchRetryableError(err);
|
|
677
695
|
}
|
|
678
696
|
});
|
|
679
697
|
return {
|
package/package.json
CHANGED
|
@@ -126,6 +126,13 @@ function isPostHogFetchContentTooLargeError(err: unknown): err is PostHogFetchHt
|
|
|
126
126
|
return typeof err === 'object' && err instanceof PostHogFetchHttpError && err.status === 413
|
|
127
127
|
}
|
|
128
128
|
|
|
129
|
+
function isPostHogFetchRetryableError(err: unknown): err is PostHogFetchHttpError | PostHogFetchNetworkError {
|
|
130
|
+
if (err instanceof PostHogFetchHttpError) {
|
|
131
|
+
return err.status === 408 || err.status === 429 || err.status >= 500
|
|
132
|
+
}
|
|
133
|
+
return isPostHogFetchNetworkError(err)
|
|
134
|
+
}
|
|
135
|
+
|
|
129
136
|
function isPostHogEventProperties(value: JsonType | undefined): value is PostHogEventProperties {
|
|
130
137
|
return value !== null && typeof value === 'object' && !Array.isArray(value)
|
|
131
138
|
}
|
|
@@ -250,7 +257,7 @@ export abstract class PostHogCoreStateless {
|
|
|
250
257
|
this._retryOptions = {
|
|
251
258
|
retryCount: options.fetchRetryCount ?? 3,
|
|
252
259
|
retryDelay: options.fetchRetryDelay ?? 3000, // 3 seconds
|
|
253
|
-
retryCheck:
|
|
260
|
+
retryCheck: isPostHogFetchRetryableError,
|
|
254
261
|
}
|
|
255
262
|
this.requestTimeout = options.requestTimeout ?? 10000 // 10 seconds
|
|
256
263
|
this.featureFlagsRequestTimeoutMs = options.featureFlagsRequestTimeoutMs ?? 3000 // 3 seconds
|
|
@@ -515,6 +522,28 @@ export abstract class PostHogCoreStateless {
|
|
|
515
522
|
})
|
|
516
523
|
}
|
|
517
524
|
|
|
525
|
+
protected async groupIdentifyStatelessImmediate(
|
|
526
|
+
groupType: string,
|
|
527
|
+
groupKey: string | number,
|
|
528
|
+
groupProperties?: PostHogEventProperties,
|
|
529
|
+
options?: PostHogCaptureOptions,
|
|
530
|
+
distinctId?: string,
|
|
531
|
+
eventProperties?: PostHogEventProperties
|
|
532
|
+
): Promise<void> {
|
|
533
|
+
const payload = this.buildPayload({
|
|
534
|
+
distinct_id: distinctId || `$${groupType}_${groupKey}`,
|
|
535
|
+
event: '$groupidentify',
|
|
536
|
+
properties: {
|
|
537
|
+
$group_type: groupType,
|
|
538
|
+
$group_key: groupKey,
|
|
539
|
+
$group_set: groupProperties || {},
|
|
540
|
+
...(eventProperties || {}),
|
|
541
|
+
},
|
|
542
|
+
})
|
|
543
|
+
|
|
544
|
+
await this.sendImmediate('capture', payload, options)
|
|
545
|
+
}
|
|
546
|
+
|
|
518
547
|
protected async getRemoteConfig(): Promise<PostHogRemoteConfig | undefined> {
|
|
519
548
|
await this._initPromise
|
|
520
549
|
|
|
@@ -831,9 +860,8 @@ export abstract class PostHogCoreStateless {
|
|
|
831
860
|
): Promise<PostHogFeatureFlagDetails | undefined> {
|
|
832
861
|
await this._initPromise
|
|
833
862
|
|
|
834
|
-
const extraPayload: Record<string, any> = {
|
|
835
|
-
|
|
836
|
-
extraPayload['geoip_disable'] = true
|
|
863
|
+
const extraPayload: Record<string, any> = {
|
|
864
|
+
geoip_disable: disableGeoip ?? this.disableGeoip,
|
|
837
865
|
}
|
|
838
866
|
if (flagKeysToEvaluate) {
|
|
839
867
|
extraPayload['flag_keys_to_evaluate'] = flagKeysToEvaluate
|
|
@@ -1271,8 +1299,8 @@ export abstract class PostHogCoreStateless {
|
|
|
1271
1299
|
if (isPostHogFetchContentTooLargeError(err)) {
|
|
1272
1300
|
return false
|
|
1273
1301
|
}
|
|
1274
|
-
// otherwise, retry on network errors
|
|
1275
|
-
return
|
|
1302
|
+
// otherwise, retry on transient HTTP and network errors
|
|
1303
|
+
return isPostHogFetchRetryableError(err)
|
|
1276
1304
|
},
|
|
1277
1305
|
}
|
|
1278
1306
|
|
|
@@ -1345,7 +1373,7 @@ export abstract class PostHogCoreStateless {
|
|
|
1345
1373
|
if (isPostHogFetchContentTooLargeError(err)) {
|
|
1346
1374
|
return false
|
|
1347
1375
|
}
|
|
1348
|
-
return
|
|
1376
|
+
return isPostHogFetchRetryableError(err)
|
|
1349
1377
|
},
|
|
1350
1378
|
})
|
|
1351
1379
|
return { kind: 'ok' }
|