@syntrologie/runtime-sdk 0.2.13 → 0.2.14
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/bootstrap.d.ts +14 -0
- package/dist/bootstrap.js +102 -4
- package/dist/bootstrap.js.map +1 -1
- package/dist/experiments/registry.d.ts +5 -0
- package/dist/experiments/registry.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/metrics/index.d.ts +4 -0
- package/dist/metrics/index.js +5 -0
- package/dist/metrics/index.js.map +1 -0
- package/dist/metrics/sessionMetrics.d.ts +101 -0
- package/dist/metrics/sessionMetrics.js +178 -0
- package/dist/metrics/sessionMetrics.js.map +1 -0
- package/dist/overlays/runtime/overlay/highlight.d.ts +2 -0
- package/dist/overlays/runtime/overlay/highlight.js +17 -9
- package/dist/overlays/runtime/overlay/highlight.js.map +1 -1
- package/dist/overlays/runtime/overlay/runner.js +5 -3
- package/dist/overlays/runtime/overlay/runner.js.map +1 -1
- package/dist/smart-canvas.esm.js +11 -11
- package/dist/smart-canvas.esm.js.map +4 -4
- package/dist/smart-canvas.js +275 -15
- package/dist/smart-canvas.js.map +3 -3
- package/dist/smart-canvas.min.js +11 -11
- package/dist/smart-canvas.min.js.map +4 -4
- package/dist/telemetry/adapters/posthog.d.ts +24 -0
- package/dist/telemetry/adapters/posthog.js +58 -9
- package/dist/telemetry/adapters/posthog.js.map +1 -1
- package/dist/telemetry/registry.d.ts +9 -4
- package/dist/telemetry/registry.js.map +1 -1
- package/dist/telemetry/types.d.ts +15 -0
- package/package.json +1 -1
|
@@ -40,6 +40,19 @@ export interface PostHogAdapterOptions {
|
|
|
40
40
|
* @default true
|
|
41
41
|
*/
|
|
42
42
|
capturePageleave?: boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Enable PostHog feature flags for segment membership.
|
|
45
|
+
* When true, PostHog's /decide endpoint is called to get segment flags.
|
|
46
|
+
* These flags (in_segment_*) are used for segment-based targeting.
|
|
47
|
+
*
|
|
48
|
+
* @default true
|
|
49
|
+
*/
|
|
50
|
+
enableFeatureFlags?: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Callback when PostHog feature flags are loaded.
|
|
53
|
+
* Used to update GrowthBook attributes with segment membership.
|
|
54
|
+
*/
|
|
55
|
+
onFeatureFlagsLoaded?: (flags: Record<string, boolean | string>) => void;
|
|
43
56
|
}
|
|
44
57
|
interface CanvasAnalyticsPayload extends Properties {
|
|
45
58
|
rectangleId?: string;
|
|
@@ -51,7 +64,17 @@ interface CanvasAnalyticsPayload extends Properties {
|
|
|
51
64
|
export declare class PostHogAdapter implements TelemetryClient {
|
|
52
65
|
private readonly options;
|
|
53
66
|
private client?;
|
|
67
|
+
private featureFlagsCallback?;
|
|
54
68
|
constructor(options?: PostHogAdapterOptions);
|
|
69
|
+
/**
|
|
70
|
+
* Get all feature flags from PostHog.
|
|
71
|
+
* Used to extract segment membership flags (in_segment_*).
|
|
72
|
+
*/
|
|
73
|
+
getAllFeatureFlags(): Record<string, boolean | string> | undefined;
|
|
74
|
+
/**
|
|
75
|
+
* Get segment membership flags (in_segment_*) from PostHog.
|
|
76
|
+
*/
|
|
77
|
+
getSegmentFlags(): Record<string, boolean>;
|
|
55
78
|
identify(id: string, props?: Properties): void;
|
|
56
79
|
alias(id: string, aliasId: string): void;
|
|
57
80
|
track(eventName: string, payload?: CanvasAnalyticsPayload): void;
|
|
@@ -65,6 +88,7 @@ export declare class PostHogAdapter implements TelemetryClient {
|
|
|
65
88
|
trackExperiment(experimentKey: string, variationId: number, variationName?: string): void;
|
|
66
89
|
setPersonProperties(properties: Record<string, unknown>): void;
|
|
67
90
|
setPersonPropertiesOnce(properties: Record<string, unknown>): void;
|
|
91
|
+
getDistinctId(): string | undefined;
|
|
68
92
|
}
|
|
69
93
|
/**
|
|
70
94
|
* Create a TelemetryClient backed by PostHog.
|
|
@@ -4,22 +4,27 @@ import posthog from "posthog-js";
|
|
|
4
4
|
*/
|
|
5
5
|
export class PostHogAdapter {
|
|
6
6
|
constructor(options = {}) {
|
|
7
|
-
var _a, _b, _c, _d, _e;
|
|
7
|
+
var _a, _b, _c, _d, _e, _f;
|
|
8
8
|
this.options = options;
|
|
9
9
|
this.client = options.client;
|
|
10
|
+
this.featureFlagsCallback = options.onFeatureFlagsLoaded;
|
|
10
11
|
if (!this.client && typeof window !== "undefined" && options.apiKey) {
|
|
11
12
|
this.client = posthog;
|
|
13
|
+
// Determine if we should enable feature flags (for segment membership)
|
|
14
|
+
// Default: true (enabled) to support segment targeting via /decide
|
|
15
|
+
const enableFeatureFlags = (_a = options.enableFeatureFlags) !== null && _a !== void 0 ? _a : true;
|
|
12
16
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
13
17
|
this.client.init(options.apiKey, {
|
|
14
|
-
api_host: (
|
|
15
|
-
//
|
|
16
|
-
|
|
17
|
-
|
|
18
|
+
api_host: (_b = options.apiHost) !== null && _b !== void 0 ? _b : "https://posthog-dev.syntrologie.com",
|
|
19
|
+
// Feature flags for segment membership (in_segment_* flags)
|
|
20
|
+
// When enabled, /decide is called to get segment flags
|
|
21
|
+
advanced_disable_feature_flags: !enableFeatureFlags,
|
|
22
|
+
advanced_disable_feature_flags_on_first_load: !enableFeatureFlags,
|
|
18
23
|
// Full-page tracking - all ON by default
|
|
19
|
-
autocapture: (
|
|
20
|
-
capture_pageview: (
|
|
21
|
-
capture_pageleave: (
|
|
22
|
-
disable_session_recording: !((
|
|
24
|
+
autocapture: (_c = options.autocapture) !== null && _c !== void 0 ? _c : true,
|
|
25
|
+
capture_pageview: (_d = options.capturePageview) !== null && _d !== void 0 ? _d : true,
|
|
26
|
+
capture_pageleave: (_e = options.capturePageleave) !== null && _e !== void 0 ? _e : true,
|
|
27
|
+
disable_session_recording: !((_f = options.sessionRecording) !== null && _f !== void 0 ? _f : true),
|
|
23
28
|
// CRITICAL: Disable user agent filtering to allow headless Chrome
|
|
24
29
|
// PostHog blocks "HeadlessChrome" user agents by default as bot detection
|
|
25
30
|
// This enables session recording in Playwright/crawler sessions
|
|
@@ -32,9 +37,47 @@ export class PostHogAdapter {
|
|
|
32
37
|
capture_performance: true,
|
|
33
38
|
// Enable web vitals
|
|
34
39
|
enable_recording_console_log: true,
|
|
40
|
+
// Bootstrap callback for when flags are loaded
|
|
41
|
+
loaded: (ph) => {
|
|
42
|
+
if (enableFeatureFlags && this.featureFlagsCallback) {
|
|
43
|
+
// Register callback for when feature flags are ready
|
|
44
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
45
|
+
ph.onFeatureFlags(() => {
|
|
46
|
+
const allFlags = this.getAllFeatureFlags();
|
|
47
|
+
if (allFlags && this.featureFlagsCallback) {
|
|
48
|
+
this.featureFlagsCallback(allFlags);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
},
|
|
35
53
|
});
|
|
36
54
|
}
|
|
37
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* Get all feature flags from PostHog.
|
|
58
|
+
* Used to extract segment membership flags (in_segment_*).
|
|
59
|
+
*/
|
|
60
|
+
getAllFeatureFlags() {
|
|
61
|
+
var _a, _b, _c;
|
|
62
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
63
|
+
const flags = (_c = (_b = (_a = this.client) === null || _a === void 0 ? void 0 : _a.featureFlags) === null || _b === void 0 ? void 0 : _b.getFlagVariants) === null || _c === void 0 ? void 0 : _c.call(_b);
|
|
64
|
+
return flags;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Get segment membership flags (in_segment_*) from PostHog.
|
|
68
|
+
*/
|
|
69
|
+
getSegmentFlags() {
|
|
70
|
+
const allFlags = this.getAllFeatureFlags();
|
|
71
|
+
if (!allFlags)
|
|
72
|
+
return {};
|
|
73
|
+
const segmentFlags = {};
|
|
74
|
+
for (const [key, value] of Object.entries(allFlags)) {
|
|
75
|
+
if (key.startsWith("in_segment_")) {
|
|
76
|
+
segmentFlags[key] = value === true;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return segmentFlags;
|
|
80
|
+
}
|
|
38
81
|
identify(id, props) {
|
|
39
82
|
var _a;
|
|
40
83
|
(_a = this.client) === null || _a === void 0 ? void 0 : _a.identify(id, props);
|
|
@@ -99,6 +142,12 @@ export class PostHogAdapter {
|
|
|
99
142
|
// PostHog's $set_once only sets if property doesn't exist
|
|
100
143
|
(_a = this.client) === null || _a === void 0 ? void 0 : _a.capture("$set", { $set_once: properties });
|
|
101
144
|
}
|
|
145
|
+
getDistinctId() {
|
|
146
|
+
var _a, _b;
|
|
147
|
+
// PostHog's get_distinct_id returns the current user's ID
|
|
148
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
149
|
+
return (_b = (_a = this.client) === null || _a === void 0 ? void 0 : _a.get_distinct_id) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
150
|
+
}
|
|
102
151
|
}
|
|
103
152
|
/**
|
|
104
153
|
* Create a TelemetryClient backed by PostHog.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"posthog.js","sourceRoot":"","sources":["../../../src/telemetry/adapters/posthog.ts"],"names":[],"mappings":"AAOA,OAAO,OAAO,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"posthog.js","sourceRoot":"","sources":["../../../src/telemetry/adapters/posthog.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Telemetry provider registry.
|
|
3
|
+
*
|
|
4
|
+
* Maps provider names to their adapter factories.
|
|
5
|
+
* This allows the bootstrap module to dynamically create
|
|
6
|
+
* telemetry clients based on token configuration.
|
|
7
|
+
*/
|
|
8
|
+
import { PostHogAdapterOptions } from "./adapters/posthog";
|
|
1
9
|
import type { TelemetryClient } from "./types";
|
|
2
10
|
/**
|
|
3
11
|
* Create a telemetry client for the specified provider.
|
|
@@ -7,7 +15,4 @@ import type { TelemetryClient } from "./types";
|
|
|
7
15
|
* @returns A TelemetryClient instance
|
|
8
16
|
* @throws Error if the provider is not supported
|
|
9
17
|
*/
|
|
10
|
-
export declare function createTelemetryClient(provider: string, config:
|
|
11
|
-
apiKey: string;
|
|
12
|
-
apiHost?: string;
|
|
13
|
-
}): TelemetryClient;
|
|
18
|
+
export declare function createTelemetryClient(provider: string, config: PostHogAdapterOptions): TelemetryClient;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/telemetry/registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,mBAAmB,EAAyB,MAAM,oBAAoB,CAAC;AAKhF,MAAM,QAAQ,GAAmC;IAC/C,OAAO,EAAE,CAAC,MAA6B,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC;CACxE,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAAgB,EAChB,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/telemetry/registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,mBAAmB,EAAyB,MAAM,oBAAoB,CAAC;AAKhF,MAAM,QAAQ,GAAmC;IAC/C,OAAO,EAAE,CAAC,MAA6B,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC;CACxE,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAAgB,EAChB,MAA6B;IAE7B,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,+BAA+B,QAAQ,gBAAgB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC1F,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC;AACzB,CAAC"}
|
|
@@ -55,4 +55,19 @@ export interface TelemetryClient {
|
|
|
55
55
|
* Useful for tracking first-time events like tour completion.
|
|
56
56
|
*/
|
|
57
57
|
setPersonPropertiesOnce?(properties: Record<string, unknown>): void;
|
|
58
|
+
/**
|
|
59
|
+
* Get the current user's distinct ID from the telemetry provider.
|
|
60
|
+
* Used for segment targeting lookups.
|
|
61
|
+
*/
|
|
62
|
+
getDistinctId?(): string | undefined;
|
|
63
|
+
/**
|
|
64
|
+
* Get all feature flags from the telemetry provider.
|
|
65
|
+
* Used to extract segment membership flags (in_segment_*).
|
|
66
|
+
*/
|
|
67
|
+
getAllFeatureFlags?(): Record<string, boolean | string> | undefined;
|
|
68
|
+
/**
|
|
69
|
+
* Get segment membership flags (in_segment_*) from the telemetry provider.
|
|
70
|
+
* Returns only flags that start with "in_segment_".
|
|
71
|
+
*/
|
|
72
|
+
getSegmentFlags?(): Record<string, boolean>;
|
|
58
73
|
}
|