@zuplo/cli 6.71.20 → 6.71.22
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/node_modules/@posthog/core/dist/error-tracking/exception-steps.d.ts.map +1 -1
- package/node_modules/@posthog/core/dist/error-tracking/exception-steps.js +6 -24
- package/node_modules/@posthog/core/dist/error-tracking/exception-steps.mjs +7 -25
- package/node_modules/@posthog/core/dist/featureFlagUtils.d.ts +2 -1
- package/node_modules/@posthog/core/dist/featureFlagUtils.d.ts.map +1 -1
- package/node_modules/@posthog/core/dist/featureFlagUtils.js +13 -0
- package/node_modules/@posthog/core/dist/featureFlagUtils.mjs +11 -1
- package/node_modules/@posthog/core/dist/index.d.ts +1 -1
- package/node_modules/@posthog/core/dist/index.d.ts.map +1 -1
- package/node_modules/@posthog/core/dist/index.js +15 -6
- package/node_modules/@posthog/core/dist/index.mjs +2 -2
- package/node_modules/@posthog/core/dist/posthog-core-stateless.d.ts +2 -0
- package/node_modules/@posthog/core/dist/posthog-core-stateless.d.ts.map +1 -1
- package/node_modules/@posthog/core/dist/posthog-core-stateless.js +34 -8
- package/node_modules/@posthog/core/dist/posthog-core-stateless.mjs +35 -9
- package/node_modules/@posthog/core/dist/posthog-core.d.ts +5 -0
- package/node_modules/@posthog/core/dist/posthog-core.d.ts.map +1 -1
- package/node_modules/@posthog/core/dist/posthog-core.js +3 -0
- package/node_modules/@posthog/core/dist/posthog-core.mjs +4 -1
- package/node_modules/@posthog/core/dist/types.d.ts +7 -0
- package/node_modules/@posthog/core/dist/types.d.ts.map +1 -1
- package/node_modules/@posthog/core/dist/utils/string-utils.d.ts +1 -0
- package/node_modules/@posthog/core/dist/utils/string-utils.d.ts.map +1 -1
- package/node_modules/@posthog/core/dist/utils/string-utils.js +21 -0
- package/node_modules/@posthog/core/dist/utils/string-utils.mjs +19 -1
- package/node_modules/@posthog/core/package.json +2 -2
- package/node_modules/@posthog/core/src/error-tracking/exception-steps.ts +5 -42
- package/node_modules/@posthog/core/src/featureFlagUtils.ts +14 -0
- package/node_modules/@posthog/core/src/index.ts +7 -1
- package/node_modules/@posthog/core/src/posthog-core-stateless.ts +57 -11
- package/node_modules/@posthog/core/src/posthog-core.ts +9 -0
- package/node_modules/@posthog/core/src/types.ts +7 -0
- package/node_modules/@posthog/core/src/utils/string-utils.spec.ts +38 -1
- package/node_modules/@posthog/core/src/utils/string-utils.ts +42 -0
- package/node_modules/@posthog/types/dist/posthog-config.d.ts +16 -0
- package/node_modules/@posthog/types/dist/posthog-config.d.ts.map +1 -1
- package/node_modules/@posthog/types/package.json +1 -1
- package/node_modules/@posthog/types/src/posthog-config.ts +17 -0
- package/node_modules/@zuplo/core/customer.cli.minified.js +2 -2
- package/node_modules/@zuplo/core/index.minified.js +2 -2
- package/node_modules/@zuplo/core/package.json +1 -1
- package/node_modules/@zuplo/graphql/out/esm/index.js +34 -34
- package/node_modules/@zuplo/graphql/out/esm/index.js.map +1 -1
- package/node_modules/@zuplo/graphql/out/types/index.d.ts +109 -0
- package/node_modules/@zuplo/graphql/package.json +1 -1
- package/node_modules/@zuplo/openapi-tools/package.json +1 -1
- package/node_modules/@zuplo/otel/package.json +1 -1
- package/node_modules/@zuplo/runtime/out/esm/{chunk-S4J2WCVZ.js → chunk-36XLJ4X6.js} +143 -111
- package/node_modules/@zuplo/runtime/out/esm/chunk-36XLJ4X6.js.map +1 -0
- package/node_modules/@zuplo/runtime/out/esm/{chunk-DQ4ANJLR.js → chunk-4MNJC7E2.js} +2 -2
- package/node_modules/@zuplo/runtime/out/esm/chunk-4MNJC7E2.js.map +1 -0
- package/node_modules/@zuplo/runtime/out/esm/{chunk-2Y72LML3.js → chunk-54PA7VDV.js} +2 -2
- package/node_modules/@zuplo/runtime/out/esm/{chunk-2Y72LML3.js.map → chunk-54PA7VDV.js.map} +1 -1
- package/node_modules/@zuplo/runtime/out/esm/{chunk-L3MZGNQA.js → chunk-DSZS6PZJ.js} +10 -10
- package/node_modules/@zuplo/runtime/out/esm/chunk-DSZS6PZJ.js.map +1 -0
- package/node_modules/@zuplo/runtime/out/esm/index.js +1 -1
- package/node_modules/@zuplo/runtime/out/esm/index.js.map +1 -1
- package/node_modules/@zuplo/runtime/out/esm/internal/index.js +1 -1
- package/node_modules/@zuplo/runtime/out/esm/mcp-gateway/index.js +1 -1
- package/node_modules/@zuplo/runtime/out/esm/mcp-gateway/index.js.map +1 -1
- package/node_modules/@zuplo/runtime/out/esm/mocks/index.js +1 -1
- package/node_modules/@zuplo/runtime/out/types/index.d.ts +1007 -4
- package/node_modules/@zuplo/runtime/package.json +1 -1
- package/node_modules/brace-expansion/dist/commonjs/index.js +24 -14
- package/node_modules/brace-expansion/dist/commonjs/index.js.map +1 -1
- package/node_modules/brace-expansion/dist/esm/index.js +24 -14
- package/node_modules/brace-expansion/dist/esm/index.js.map +1 -1
- package/node_modules/brace-expansion/package.json +2 -2
- package/node_modules/fast-uri/index.js +1 -1
- package/node_modules/fast-uri/package.json +1 -1
- package/node_modules/fast-uri/test/security.test.js +28 -0
- package/node_modules/range-parser/README.md +13 -12
- package/node_modules/range-parser/index.js +27 -8
- package/node_modules/range-parser/package.json +12 -8
- package/package.json +6 -6
- package/node_modules/@zuplo/runtime/out/esm/chunk-DQ4ANJLR.js.map +0 -1
- package/node_modules/@zuplo/runtime/out/esm/chunk-L3MZGNQA.js.map +0 -1
- package/node_modules/@zuplo/runtime/out/esm/chunk-S4J2WCVZ.js.map +0 -1
- /package/node_modules/@zuplo/runtime/out/esm/{chunk-S4J2WCVZ.js.LEGAL.txt → chunk-36XLJ4X6.js.LEGAL.txt} +0 -0
- /package/node_modules/@zuplo/runtime/out/esm/{chunk-L3MZGNQA.js.LEGAL.txt → chunk-DSZS6PZJ.js.LEGAL.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exception-steps.d.ts","sourceRoot":"","sources":["../../src/error-tracking/exception-steps.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,8BAA8B;;;CAGjC,CAAA;AAOV,MAAM,MAAM,aAAa,GAAG;IAC1B,CAAC,8BAA8B,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChD,CAAC,8BAA8B,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC3D,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB,CAAA;AAED,kGAAkG;AAClG,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,8BAA8B,EAAE,4BAG5C,CAAA;AAED,wBAAgB,2BAA2B,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,IAAI,GAAG,4BAA4B,CAS9G;AAED,wBAAgB,gCAAgC,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG;IAC7F,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5C,WAAW,EAAE,MAAM,EAAE,CAAA;CACtB,CAmBA;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAA+C;IAC/D,OAAO,CAAC,WAAW,CAAY;IAC/B,OAAO,CAAC,OAAO,CAA8B;gBAEjC,MAAM,CAAC,EAAE,oBAAoB,GAAG,IAAI;IAIzC,SAAS,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI;IAKrD,GAAG,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAgB9B,aAAa,IAAI,aAAa,EAAE;IAIhC,KAAK,IAAI,IAAI;IAKb,IAAI,IAAI,MAAM;IAIrB,OAAO,CAAC,eAAe;CAQxB;
|
|
1
|
+
{"version":3,"file":"exception-steps.d.ts","sourceRoot":"","sources":["../../src/error-tracking/exception-steps.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,8BAA8B;;;CAGjC,CAAA;AAOV,MAAM,MAAM,aAAa,GAAG;IAC1B,CAAC,8BAA8B,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChD,CAAC,8BAA8B,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC3D,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB,CAAA;AAED,kGAAkG;AAClG,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,8BAA8B,EAAE,4BAG5C,CAAA;AAED,wBAAgB,2BAA2B,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,IAAI,GAAG,4BAA4B,CAS9G;AAED,wBAAgB,gCAAgC,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG;IAC7F,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5C,WAAW,EAAE,MAAM,EAAE,CAAA;CACtB,CAmBA;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAA+C;IAC/D,OAAO,CAAC,WAAW,CAAY;IAC/B,OAAO,CAAC,OAAO,CAA8B;gBAEjC,MAAM,CAAC,EAAE,oBAAoB,GAAG,IAAI;IAIzC,SAAS,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI;IAKrD,GAAG,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAgB9B,aAAa,IAAI,aAAa,EAAE;IAIhC,KAAK,IAAI,IAAI;IAKb,IAAI,IAAI,MAAM;IAIrB,OAAO,CAAC,eAAe;CAQxB;AAkDD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAiBvD"}
|
|
@@ -118,8 +118,12 @@ function normalizePositiveInteger(input, fallback) {
|
|
|
118
118
|
return normalized;
|
|
119
119
|
}
|
|
120
120
|
function normalizeAndSerializeStep(step) {
|
|
121
|
-
|
|
122
|
-
|
|
121
|
+
let json;
|
|
122
|
+
try {
|
|
123
|
+
json = (0, index_js_namespaceObject.safeJsonStringify)(step);
|
|
124
|
+
} catch {
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
123
127
|
try {
|
|
124
128
|
const parsed = JSON.parse(json);
|
|
125
129
|
if (!(0, index_js_namespaceObject.isObject)(parsed)) return;
|
|
@@ -136,28 +140,6 @@ function normalizeAndSerializeStep(step) {
|
|
|
136
140
|
return;
|
|
137
141
|
}
|
|
138
142
|
}
|
|
139
|
-
function safeStringify(value) {
|
|
140
|
-
const seen = new WeakSet();
|
|
141
|
-
try {
|
|
142
|
-
return JSON.stringify(value, (_key, replacementValue)=>{
|
|
143
|
-
if ('bigint' == typeof replacementValue) return replacementValue.toString();
|
|
144
|
-
if ('function' == typeof replacementValue || 'symbol' == typeof replacementValue) return;
|
|
145
|
-
if (replacementValue instanceof Date) return replacementValue.toISOString();
|
|
146
|
-
if (replacementValue instanceof Error) return {
|
|
147
|
-
name: replacementValue.name,
|
|
148
|
-
message: replacementValue.message,
|
|
149
|
-
stack: replacementValue.stack
|
|
150
|
-
};
|
|
151
|
-
if (replacementValue && 'object' == typeof replacementValue) {
|
|
152
|
-
if (seen.has(replacementValue)) return '[Circular]';
|
|
153
|
-
seen.add(replacementValue);
|
|
154
|
-
}
|
|
155
|
-
return replacementValue;
|
|
156
|
-
});
|
|
157
|
-
} catch {
|
|
158
|
-
return;
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
143
|
function getUtf8ByteLength(value) {
|
|
162
144
|
if ('undefined' != typeof TextEncoder) return new TextEncoder().encode(value).length;
|
|
163
145
|
const encoded = encodeURIComponent(value);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { isNumber, isObject, isString } from "../utils/index.mjs";
|
|
1
|
+
import { isNumber, isObject, isString, safeJsonStringify } from "../utils/index.mjs";
|
|
2
2
|
const EXCEPTION_STEP_INTERNAL_FIELDS = {
|
|
3
3
|
MESSAGE: '$message',
|
|
4
4
|
TIMESTAMP: '$timestamp'
|
|
@@ -85,8 +85,12 @@ function normalizePositiveInteger(input, fallback) {
|
|
|
85
85
|
return normalized;
|
|
86
86
|
}
|
|
87
87
|
function normalizeAndSerializeStep(step) {
|
|
88
|
-
|
|
89
|
-
|
|
88
|
+
let json;
|
|
89
|
+
try {
|
|
90
|
+
json = safeJsonStringify(step);
|
|
91
|
+
} catch {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
90
94
|
try {
|
|
91
95
|
const parsed = JSON.parse(json);
|
|
92
96
|
if (!isObject(parsed)) return;
|
|
@@ -103,28 +107,6 @@ function normalizeAndSerializeStep(step) {
|
|
|
103
107
|
return;
|
|
104
108
|
}
|
|
105
109
|
}
|
|
106
|
-
function safeStringify(value) {
|
|
107
|
-
const seen = new WeakSet();
|
|
108
|
-
try {
|
|
109
|
-
return JSON.stringify(value, (_key, replacementValue)=>{
|
|
110
|
-
if ('bigint' == typeof replacementValue) return replacementValue.toString();
|
|
111
|
-
if ('function' == typeof replacementValue || 'symbol' == typeof replacementValue) return;
|
|
112
|
-
if (replacementValue instanceof Date) return replacementValue.toISOString();
|
|
113
|
-
if (replacementValue instanceof Error) return {
|
|
114
|
-
name: replacementValue.name,
|
|
115
|
-
message: replacementValue.message,
|
|
116
|
-
stack: replacementValue.stack
|
|
117
|
-
};
|
|
118
|
-
if (replacementValue && 'object' == typeof replacementValue) {
|
|
119
|
-
if (seen.has(replacementValue)) return '[Circular]';
|
|
120
|
-
seen.add(replacementValue);
|
|
121
|
-
}
|
|
122
|
-
return replacementValue;
|
|
123
|
-
});
|
|
124
|
-
} catch {
|
|
125
|
-
return;
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
110
|
function getUtf8ByteLength(value) {
|
|
129
111
|
if ('undefined' != typeof TextEncoder) return new TextEncoder().encode(value).length;
|
|
130
112
|
const encoded = encodeURIComponent(value);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FeatureFlagDetail, FeatureFlagValue, PostHogFlagsResponse, PostHogV1FlagsResponse, PostHogV2FlagsResponse, PartialWithRequired, PostHogFeatureFlagsResponse } from './types';
|
|
1
|
+
import { FeatureFlagDetail, FeatureFlagResult, FeatureFlagValue, PostHogFlagsResponse, PostHogV1FlagsResponse, PostHogV2FlagsResponse, PartialWithRequired, PostHogFeatureFlagsResponse } from './types';
|
|
2
2
|
export declare const normalizeFlagsResponse: (flagsResponse: PartialWithRequired<PostHogV2FlagsResponse, "flags"> | PartialWithRequired<PostHogV1FlagsResponse, "featureFlags" | "featureFlagPayloads">) => PostHogFeatureFlagsResponse;
|
|
3
3
|
/**
|
|
4
4
|
* Get the flag values from the flags v4 response.
|
|
@@ -28,4 +28,5 @@ export declare const createFlagsResponseFromFlagsAndPayloads: (featureFlags: Pos
|
|
|
28
28
|
export declare const updateFlagValue: (flag: FeatureFlagDetail, value: FeatureFlagValue) => FeatureFlagDetail;
|
|
29
29
|
export declare function getEnabledFromValue(value: FeatureFlagValue): boolean;
|
|
30
30
|
export declare function getVariantFromValue(value: FeatureFlagValue): string | undefined;
|
|
31
|
+
export declare const flagDetailsToResults: (flagDetails: Record<string, FeatureFlagDetail>) => FeatureFlagResult[];
|
|
31
32
|
//# sourceMappingURL=featureFlagUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"featureFlagUtils.d.ts","sourceRoot":"","sources":["../src/featureFlagUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAEhB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EAEtB,mBAAmB,EACnB,2BAA2B,EAC5B,MAAM,SAAS,CAAA;AAEhB,eAAO,MAAM,sBAAsB,GACjC,eACI,mBAAmB,CAAC,sBAAsB,EAAE,OAAO,CAAC,GACpD,mBAAmB,CAAC,sBAAsB,EAAE,cAAc,GAAG,qBAAqB,CAAC,KACtF,2BAgCF,CAAA;AAqBD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GAAI,OAAO,oBAAoB,CAAC,OAAO,CAAC,KAAG,oBAAoB,CAAC,cAAc,CAMhH,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAC/B,OAAO,oBAAoB,CAAC,OAAO,CAAC,KACnC,oBAAoB,CAAC,qBAAqB,CAa5C,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,QAAQ,iBAAiB,GAAG,SAAS,KAAG,gBAAgB,GAAG,SAE9F,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,UAAU,GAAG,KAAG,GAU5C,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,uCAAuC,GAClD,cAAc,sBAAsB,CAAC,cAAc,CAAC,EACpD,qBAAqB,sBAAsB,CAAC,qBAAqB,CAAC,KACjE,2BAaF,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,MAAM,iBAAiB,EAAE,OAAO,gBAAgB,KAAG,iBAMlF,CAAA;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAEpE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAE/E"}
|
|
1
|
+
{"version":3,"file":"featureFlagUtils.d.ts","sourceRoot":"","sources":["../src/featureFlagUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAEhB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EAEtB,mBAAmB,EACnB,2BAA2B,EAC5B,MAAM,SAAS,CAAA;AAEhB,eAAO,MAAM,sBAAsB,GACjC,eACI,mBAAmB,CAAC,sBAAsB,EAAE,OAAO,CAAC,GACpD,mBAAmB,CAAC,sBAAsB,EAAE,cAAc,GAAG,qBAAqB,CAAC,KACtF,2BAgCF,CAAA;AAqBD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GAAI,OAAO,oBAAoB,CAAC,OAAO,CAAC,KAAG,oBAAoB,CAAC,cAAc,CAMhH,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAC/B,OAAO,oBAAoB,CAAC,OAAO,CAAC,KACnC,oBAAoB,CAAC,qBAAqB,CAa5C,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,QAAQ,iBAAiB,GAAG,SAAS,KAAG,gBAAgB,GAAG,SAE9F,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,UAAU,GAAG,KAAG,GAU5C,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,uCAAuC,GAClD,cAAc,sBAAsB,CAAC,cAAc,CAAC,EACpD,qBAAqB,sBAAsB,CAAC,qBAAqB,CAAC,KACjE,2BAaF,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,MAAM,iBAAiB,EAAE,OAAO,gBAAgB,KAAG,iBAMlF,CAAA;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAEpE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAE/E;AAED,eAAO,MAAM,oBAAoB,GAAI,aAAa,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,KAAG,iBAAiB,EAWtG,CAAA"}
|
|
@@ -25,6 +25,7 @@ var __webpack_exports__ = {};
|
|
|
25
25
|
__webpack_require__.r(__webpack_exports__);
|
|
26
26
|
__webpack_require__.d(__webpack_exports__, {
|
|
27
27
|
createFlagsResponseFromFlagsAndPayloads: ()=>createFlagsResponseFromFlagsAndPayloads,
|
|
28
|
+
flagDetailsToResults: ()=>flagDetailsToResults,
|
|
28
29
|
getEnabledFromValue: ()=>getEnabledFromValue,
|
|
29
30
|
getFeatureFlagValue: ()=>getFeatureFlagValue,
|
|
30
31
|
getFlagValuesFromFlags: ()=>getFlagValuesFromFlags,
|
|
@@ -127,7 +128,18 @@ function getEnabledFromValue(value) {
|
|
|
127
128
|
function getVariantFromValue(value) {
|
|
128
129
|
return 'string' == typeof value ? value : void 0;
|
|
129
130
|
}
|
|
131
|
+
const flagDetailsToResults = (flagDetails)=>Object.values(flagDetails).map((detail)=>{
|
|
132
|
+
const value = detail.variant ?? detail.enabled;
|
|
133
|
+
const rawPayload = detail.metadata?.payload;
|
|
134
|
+
return {
|
|
135
|
+
key: detail.key,
|
|
136
|
+
enabled: getEnabledFromValue(value),
|
|
137
|
+
variant: getVariantFromValue(value),
|
|
138
|
+
payload: void 0 !== rawPayload ? parsePayload(rawPayload) : null
|
|
139
|
+
};
|
|
140
|
+
});
|
|
130
141
|
exports.createFlagsResponseFromFlagsAndPayloads = __webpack_exports__.createFlagsResponseFromFlagsAndPayloads;
|
|
142
|
+
exports.flagDetailsToResults = __webpack_exports__.flagDetailsToResults;
|
|
131
143
|
exports.getEnabledFromValue = __webpack_exports__.getEnabledFromValue;
|
|
132
144
|
exports.getFeatureFlagValue = __webpack_exports__.getFeatureFlagValue;
|
|
133
145
|
exports.getFlagValuesFromFlags = __webpack_exports__.getFlagValuesFromFlags;
|
|
@@ -138,6 +150,7 @@ exports.parsePayload = __webpack_exports__.parsePayload;
|
|
|
138
150
|
exports.updateFlagValue = __webpack_exports__.updateFlagValue;
|
|
139
151
|
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
140
152
|
"createFlagsResponseFromFlagsAndPayloads",
|
|
153
|
+
"flagDetailsToResults",
|
|
141
154
|
"getEnabledFromValue",
|
|
142
155
|
"getFeatureFlagValue",
|
|
143
156
|
"getFlagValuesFromFlags",
|
|
@@ -91,4 +91,14 @@ function getEnabledFromValue(value) {
|
|
|
91
91
|
function getVariantFromValue(value) {
|
|
92
92
|
return 'string' == typeof value ? value : void 0;
|
|
93
93
|
}
|
|
94
|
-
|
|
94
|
+
const flagDetailsToResults = (flagDetails)=>Object.values(flagDetails).map((detail)=>{
|
|
95
|
+
const value = detail.variant ?? detail.enabled;
|
|
96
|
+
const rawPayload = detail.metadata?.payload;
|
|
97
|
+
return {
|
|
98
|
+
key: detail.key,
|
|
99
|
+
enabled: getEnabledFromValue(value),
|
|
100
|
+
variant: getVariantFromValue(value),
|
|
101
|
+
payload: void 0 !== rawPayload ? parsePayload(rawPayload) : null
|
|
102
|
+
};
|
|
103
|
+
});
|
|
104
|
+
export { createFlagsResponseFromFlagsAndPayloads, flagDetailsToResults, getEnabledFromValue, getFeatureFlagValue, getFlagValuesFromFlags, getPayloadsFromFlags, getVariantFromValue, normalizeFlagsResponse, parsePayload, updateFlagValue };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { getFeatureFlagValue, getEnabledFromValue, getVariantFromValue, parsePayload } from './featureFlagUtils';
|
|
1
|
+
export { getFeatureFlagValue, getEnabledFromValue, getVariantFromValue, parsePayload, flagDetailsToResults, } from './featureFlagUtils';
|
|
2
2
|
export { gzipCompress, isGzipData, isGzipRequest, isGzipSupported, isNativeAsyncGzipError, isNativeAsyncGzipReadError, } from './gzip';
|
|
3
3
|
export * from './utils';
|
|
4
4
|
export * as ErrorTracking from './error-tracking';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,oBAAoB,GACrB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,YAAY,EACZ,UAAU,EACV,aAAa,EACb,eAAe,EACf,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,QAAQ,CAAA;AACf,cAAc,SAAS,CAAA;AACvB,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAA;AACjD,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACd,kBAAkB,GACnB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,cAAc,CAAA;AAIrB,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AACzG,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,cAAc,UAAU,CAAA;AACxB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,0BAA0B,CAAA;AACxC,cAAc,mBAAmB,CAAA;AACjC,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA"}
|
|
@@ -89,6 +89,7 @@ var __webpack_exports__ = {};
|
|
|
89
89
|
buildOtlpLogRecord: ()=>_logs_logs_utils__WEBPACK_IMPORTED_MODULE_4__.buildOtlpLogRecord,
|
|
90
90
|
buildOtlpLogsPayload: ()=>_logs_logs_utils__WEBPACK_IMPORTED_MODULE_4__.buildOtlpLogsPayload,
|
|
91
91
|
buildResourceAttributes: ()=>_logs_logs_utils__WEBPACK_IMPORTED_MODULE_4__.buildResourceAttributes,
|
|
92
|
+
flagDetailsToResults: ()=>_featureFlagUtils__WEBPACK_IMPORTED_MODULE_0__.flagDetailsToResults,
|
|
92
93
|
getEnabledFromValue: ()=>_featureFlagUtils__WEBPACK_IMPORTED_MODULE_0__.getEnabledFromValue,
|
|
93
94
|
getFeatureFlagValue: ()=>_featureFlagUtils__WEBPACK_IMPORTED_MODULE_0__.getFeatureFlagValue,
|
|
94
95
|
getLengthFromRules: ()=>_surveys_validation__WEBPACK_IMPORTED_MODULE_12__.getLengthFromRules,
|
|
@@ -113,6 +114,7 @@ var __webpack_exports__ = {};
|
|
|
113
114
|
var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("./utils?637c");
|
|
114
115
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
115
116
|
for(var __WEBPACK_IMPORT_KEY__ in _utils__WEBPACK_IMPORTED_MODULE_2__)if ([
|
|
117
|
+
"toOtlpAnyValue",
|
|
116
118
|
"toOtlpKeyValueList",
|
|
117
119
|
"getLengthFromRules",
|
|
118
120
|
"PostHogLogs",
|
|
@@ -136,7 +138,7 @@ var __webpack_exports__ = {};
|
|
|
136
138
|
"isGzipSupported",
|
|
137
139
|
"buildOtlpLogsPayload",
|
|
138
140
|
"buildOtlpLogRecord",
|
|
139
|
-
"
|
|
141
|
+
"flagDetailsToResults"
|
|
140
142
|
].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
141
143
|
return _utils__WEBPACK_IMPORTED_MODULE_2__[key];
|
|
142
144
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
@@ -148,6 +150,7 @@ var __webpack_exports__ = {};
|
|
|
148
150
|
var _cookie__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("./cookie");
|
|
149
151
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
150
152
|
for(var __WEBPACK_IMPORT_KEY__ in _cookie__WEBPACK_IMPORTED_MODULE_7__)if ([
|
|
153
|
+
"toOtlpAnyValue",
|
|
151
154
|
"toOtlpKeyValueList",
|
|
152
155
|
"getLengthFromRules",
|
|
153
156
|
"PostHogLogs",
|
|
@@ -171,7 +174,7 @@ var __webpack_exports__ = {};
|
|
|
171
174
|
"isGzipSupported",
|
|
172
175
|
"buildOtlpLogsPayload",
|
|
173
176
|
"buildOtlpLogRecord",
|
|
174
|
-
"
|
|
177
|
+
"flagDetailsToResults"
|
|
175
178
|
].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
176
179
|
return _cookie__WEBPACK_IMPORTED_MODULE_7__[key];
|
|
177
180
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
@@ -179,6 +182,7 @@ var __webpack_exports__ = {};
|
|
|
179
182
|
var _posthog_core__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("./posthog-core");
|
|
180
183
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
181
184
|
for(var __WEBPACK_IMPORT_KEY__ in _posthog_core__WEBPACK_IMPORTED_MODULE_8__)if ([
|
|
185
|
+
"toOtlpAnyValue",
|
|
182
186
|
"toOtlpKeyValueList",
|
|
183
187
|
"getLengthFromRules",
|
|
184
188
|
"PostHogLogs",
|
|
@@ -202,7 +206,7 @@ var __webpack_exports__ = {};
|
|
|
202
206
|
"isGzipSupported",
|
|
203
207
|
"buildOtlpLogsPayload",
|
|
204
208
|
"buildOtlpLogRecord",
|
|
205
|
-
"
|
|
209
|
+
"flagDetailsToResults"
|
|
206
210
|
].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
207
211
|
return _posthog_core__WEBPACK_IMPORTED_MODULE_8__[key];
|
|
208
212
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
@@ -210,6 +214,7 @@ var __webpack_exports__ = {};
|
|
|
210
214
|
var _posthog_core_stateless__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("./posthog-core-stateless");
|
|
211
215
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
212
216
|
for(var __WEBPACK_IMPORT_KEY__ in _posthog_core_stateless__WEBPACK_IMPORTED_MODULE_9__)if ([
|
|
217
|
+
"toOtlpAnyValue",
|
|
213
218
|
"toOtlpKeyValueList",
|
|
214
219
|
"getLengthFromRules",
|
|
215
220
|
"PostHogLogs",
|
|
@@ -233,7 +238,7 @@ var __webpack_exports__ = {};
|
|
|
233
238
|
"isGzipSupported",
|
|
234
239
|
"buildOtlpLogsPayload",
|
|
235
240
|
"buildOtlpLogRecord",
|
|
236
|
-
"
|
|
241
|
+
"flagDetailsToResults"
|
|
237
242
|
].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
238
243
|
return _posthog_core_stateless__WEBPACK_IMPORTED_MODULE_9__[key];
|
|
239
244
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
@@ -241,6 +246,7 @@ var __webpack_exports__ = {};
|
|
|
241
246
|
var _tracing_headers__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("./tracing-headers");
|
|
242
247
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
243
248
|
for(var __WEBPACK_IMPORT_KEY__ in _tracing_headers__WEBPACK_IMPORTED_MODULE_10__)if ([
|
|
249
|
+
"toOtlpAnyValue",
|
|
244
250
|
"toOtlpKeyValueList",
|
|
245
251
|
"getLengthFromRules",
|
|
246
252
|
"PostHogLogs",
|
|
@@ -264,7 +270,7 @@ var __webpack_exports__ = {};
|
|
|
264
270
|
"isGzipSupported",
|
|
265
271
|
"buildOtlpLogsPayload",
|
|
266
272
|
"buildOtlpLogRecord",
|
|
267
|
-
"
|
|
273
|
+
"flagDetailsToResults"
|
|
268
274
|
].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
269
275
|
return _tracing_headers__WEBPACK_IMPORTED_MODULE_10__[key];
|
|
270
276
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
@@ -272,6 +278,7 @@ var __webpack_exports__ = {};
|
|
|
272
278
|
var _types__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("./types");
|
|
273
279
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
274
280
|
for(var __WEBPACK_IMPORT_KEY__ in _types__WEBPACK_IMPORTED_MODULE_11__)if ([
|
|
281
|
+
"toOtlpAnyValue",
|
|
275
282
|
"toOtlpKeyValueList",
|
|
276
283
|
"getLengthFromRules",
|
|
277
284
|
"PostHogLogs",
|
|
@@ -295,7 +302,7 @@ var __webpack_exports__ = {};
|
|
|
295
302
|
"isGzipSupported",
|
|
296
303
|
"buildOtlpLogsPayload",
|
|
297
304
|
"buildOtlpLogRecord",
|
|
298
|
-
"
|
|
305
|
+
"flagDetailsToResults"
|
|
299
306
|
].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
300
307
|
return _types__WEBPACK_IMPORTED_MODULE_11__[key];
|
|
301
308
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
@@ -307,6 +314,7 @@ exports.PostHogLogs = __webpack_exports__.PostHogLogs;
|
|
|
307
314
|
exports.buildOtlpLogRecord = __webpack_exports__.buildOtlpLogRecord;
|
|
308
315
|
exports.buildOtlpLogsPayload = __webpack_exports__.buildOtlpLogsPayload;
|
|
309
316
|
exports.buildResourceAttributes = __webpack_exports__.buildResourceAttributes;
|
|
317
|
+
exports.flagDetailsToResults = __webpack_exports__.flagDetailsToResults;
|
|
310
318
|
exports.getEnabledFromValue = __webpack_exports__.getEnabledFromValue;
|
|
311
319
|
exports.getFeatureFlagValue = __webpack_exports__.getFeatureFlagValue;
|
|
312
320
|
exports.getLengthFromRules = __webpack_exports__.getLengthFromRules;
|
|
@@ -331,6 +339,7 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
|
331
339
|
"buildOtlpLogRecord",
|
|
332
340
|
"buildOtlpLogsPayload",
|
|
333
341
|
"buildResourceAttributes",
|
|
342
|
+
"flagDetailsToResults",
|
|
334
343
|
"getEnabledFromValue",
|
|
335
344
|
"getFeatureFlagValue",
|
|
336
345
|
"getLengthFromRules",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getEnabledFromValue, getFeatureFlagValue, getVariantFromValue, parsePayload } from "./featureFlagUtils.mjs";
|
|
1
|
+
import { flagDetailsToResults, getEnabledFromValue, getFeatureFlagValue, getVariantFromValue, parsePayload } from "./featureFlagUtils.mjs";
|
|
2
2
|
import { gzipCompress, isGzipData, isGzipRequest, isGzipSupported, isNativeAsyncGzipError, isNativeAsyncGzipReadError } from "./gzip.mjs";
|
|
3
3
|
import { buildOtlpLogRecord, buildOtlpLogsPayload, buildResourceAttributes, getOtlpSeverityNumber, getOtlpSeverityText, toOtlpAnyValue, toOtlpKeyValueList } from "./logs/logs-utils.mjs";
|
|
4
4
|
import { PostHogLogs } from "./logs/index.mjs";
|
|
@@ -11,4 +11,4 @@ export * from "./posthog-core-stateless.mjs";
|
|
|
11
11
|
export * from "./tracing-headers.mjs";
|
|
12
12
|
export * from "./types.mjs";
|
|
13
13
|
import * as __WEBPACK_EXTERNAL_MODULE__error_tracking_index_mjs_b3406d6f__ from "./error-tracking/index.mjs";
|
|
14
|
-
export { __WEBPACK_EXTERNAL_MODULE__error_tracking_index_mjs_b3406d6f__ as ErrorTracking, PostHogLogs, buildOtlpLogRecord, buildOtlpLogsPayload, buildResourceAttributes, getEnabledFromValue, getFeatureFlagValue, getLengthFromRules, getOtlpSeverityNumber, getOtlpSeverityText, getRequirementsHint, getValidationError, getVariantFromValue, gzipCompress, isGzipData, isGzipRequest, isGzipSupported, isNativeAsyncGzipError, isNativeAsyncGzipReadError, parsePayload, toOtlpAnyValue, toOtlpKeyValueList, uuidv7 };
|
|
14
|
+
export { __WEBPACK_EXTERNAL_MODULE__error_tracking_index_mjs_b3406d6f__ as ErrorTracking, PostHogLogs, buildOtlpLogRecord, buildOtlpLogsPayload, buildResourceAttributes, flagDetailsToResults, getEnabledFromValue, getFeatureFlagValue, getLengthFromRules, getOtlpSeverityNumber, getOtlpSeverityText, getRequirementsHint, getValidationError, getVariantFromValue, gzipCompress, isGzipData, isGzipRequest, isGzipSupported, isNativeAsyncGzipError, isNativeAsyncGzipReadError, parsePayload, toOtlpAnyValue, toOtlpKeyValueList, uuidv7 };
|
|
@@ -58,6 +58,7 @@ export declare abstract class PostHogCoreStateless {
|
|
|
58
58
|
private shutdownPromise;
|
|
59
59
|
private requestTimeout;
|
|
60
60
|
private featureFlagsRequestTimeoutMs;
|
|
61
|
+
private featureFlagsRequestMaxRetries;
|
|
61
62
|
private remoteConfigRequestTimeoutMs;
|
|
62
63
|
private removeDebugCallback?;
|
|
63
64
|
private disableGeoip;
|
|
@@ -151,6 +152,7 @@ export declare abstract class PostHogCoreStateless {
|
|
|
151
152
|
*** GROUPS
|
|
152
153
|
***/
|
|
153
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>;
|
|
154
156
|
protected getRemoteConfig(): Promise<PostHogRemoteConfig | undefined>;
|
|
155
157
|
/***
|
|
156
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,
|
|
1
|
+
{"version":3,"file":"posthog-core-stateless.d.ts","sourceRoot":"","sources":["../src/posthog-core-stateless.ts"],"names":[],"mappings":"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"}
|
|
@@ -77,9 +77,19 @@ function isPostHogFetchError(err) {
|
|
|
77
77
|
function isPostHogFetchNetworkError(err) {
|
|
78
78
|
return err instanceof PostHogFetchNetworkError;
|
|
79
79
|
}
|
|
80
|
+
function isRetryableFlagsFetchError(err) {
|
|
81
|
+
if (!(err instanceof PostHogFetchNetworkError)) return false;
|
|
82
|
+
const cause = err.error;
|
|
83
|
+
const code = cause?.code ?? cause?.cause?.code;
|
|
84
|
+
return 'ECONNREFUSED' !== code;
|
|
85
|
+
}
|
|
80
86
|
function isPostHogFetchContentTooLargeError(err) {
|
|
81
87
|
return 'object' == typeof err && err instanceof PostHogFetchHttpError && 413 === err.status;
|
|
82
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
|
+
}
|
|
83
93
|
function isPostHogEventProperties(value) {
|
|
84
94
|
return null !== value && 'object' == typeof value && !Array.isArray(value);
|
|
85
95
|
}
|
|
@@ -124,10 +134,11 @@ class PostHogCoreStateless {
|
|
|
124
134
|
this._retryOptions = {
|
|
125
135
|
retryCount: options.fetchRetryCount ?? 3,
|
|
126
136
|
retryDelay: options.fetchRetryDelay ?? 3000,
|
|
127
|
-
retryCheck:
|
|
137
|
+
retryCheck: isPostHogFetchRetryableError
|
|
128
138
|
};
|
|
129
139
|
this.requestTimeout = options.requestTimeout ?? 10000;
|
|
130
140
|
this.featureFlagsRequestTimeoutMs = options.featureFlagsRequestTimeoutMs ?? 3000;
|
|
141
|
+
this.featureFlagsRequestMaxRetries = options.featureFlagsRequestMaxRetries ?? 1;
|
|
131
142
|
this.remoteConfigRequestTimeoutMs = options.remoteConfigRequestTimeoutMs ?? 3000;
|
|
132
143
|
this.disableGeoip = options.disableGeoip ?? true;
|
|
133
144
|
this.disabled = (options.disabled ?? false) || missingApiKey;
|
|
@@ -278,6 +289,19 @@ class PostHogCoreStateless {
|
|
|
278
289
|
this.enqueue('capture', payload, options);
|
|
279
290
|
});
|
|
280
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
|
+
}
|
|
281
305
|
async getRemoteConfig() {
|
|
282
306
|
await this._initPromise;
|
|
283
307
|
let host = this.host;
|
|
@@ -322,7 +346,8 @@ class PostHogCoreStateless {
|
|
|
322
346
|
};
|
|
323
347
|
this._logger.info('Flags URL', url);
|
|
324
348
|
return this.fetchWithRetry(url, fetchOptions, {
|
|
325
|
-
retryCount:
|
|
349
|
+
retryCount: this.featureFlagsRequestMaxRetries,
|
|
350
|
+
retryCheck: isRetryableFlagsFetchError
|
|
326
351
|
}, this.featureFlagsRequestTimeoutMs).then((response)=>response.json()).then((response)=>({
|
|
327
352
|
success: true,
|
|
328
353
|
response: (0, external_featureFlagUtils_js_namespaceObject.normalizeFlagsResponse)(response)
|
|
@@ -415,8 +440,9 @@ class PostHogCoreStateless {
|
|
|
415
440
|
}
|
|
416
441
|
async getFeatureFlagDetailsStateless(distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip, flagKeysToEvaluate) {
|
|
417
442
|
await this._initPromise;
|
|
418
|
-
const extraPayload = {
|
|
419
|
-
|
|
443
|
+
const extraPayload = {
|
|
444
|
+
geoip_disable: disableGeoip ?? this.disableGeoip
|
|
445
|
+
};
|
|
420
446
|
if (flagKeysToEvaluate) extraPayload['flag_keys_to_evaluate'] = flagKeysToEvaluate;
|
|
421
447
|
const result = await this.getFlags(distinctId, groups, personProperties, groupProperties, extraPayload);
|
|
422
448
|
if (!result.success) return;
|
|
@@ -529,7 +555,7 @@ class PostHogCoreStateless {
|
|
|
529
555
|
sent_at: (0, index_js_namespaceObject.currentISOTime)()
|
|
530
556
|
};
|
|
531
557
|
if (this.historicalMigration) data.historical_migration = true;
|
|
532
|
-
const payload =
|
|
558
|
+
const payload = (0, index_js_namespaceObject.safeJsonStringify)(data);
|
|
533
559
|
const url = `${this.host}/batch/`;
|
|
534
560
|
const gzippedPayload = this.disableCompression ? null : await (0, external_gzip_js_namespaceObject.gzipCompress)(payload, this.isDebug);
|
|
535
561
|
const fetchOptions = {
|
|
@@ -636,7 +662,7 @@ class PostHogCoreStateless {
|
|
|
636
662
|
sent_at: (0, index_js_namespaceObject.currentISOTime)()
|
|
637
663
|
};
|
|
638
664
|
if (this.historicalMigration) data.historical_migration = true;
|
|
639
|
-
const payload =
|
|
665
|
+
const payload = (0, index_js_namespaceObject.safeJsonStringify)(data);
|
|
640
666
|
const url = `${this.host}/batch/`;
|
|
641
667
|
const gzippedPayload = this.disableCompression ? null : await (0, external_gzip_js_namespaceObject.gzipCompress)(payload, this.isDebug);
|
|
642
668
|
const fetchOptions = {
|
|
@@ -653,7 +679,7 @@ class PostHogCoreStateless {
|
|
|
653
679
|
const retryOptions = {
|
|
654
680
|
retryCheck: (err)=>{
|
|
655
681
|
if (isPostHogFetchContentTooLargeError(err)) return false;
|
|
656
|
-
return
|
|
682
|
+
return isPostHogFetchRetryableError(err);
|
|
657
683
|
}
|
|
658
684
|
};
|
|
659
685
|
try {
|
|
@@ -697,7 +723,7 @@ class PostHogCoreStateless {
|
|
|
697
723
|
await this.fetchWithRetry(url, fetchOptions, {
|
|
698
724
|
retryCheck: (err)=>{
|
|
699
725
|
if (isPostHogFetchContentTooLargeError(err)) return false;
|
|
700
|
-
return
|
|
726
|
+
return isPostHogFetchRetryableError(err);
|
|
701
727
|
}
|
|
702
728
|
});
|
|
703
729
|
return {
|
|
@@ -2,7 +2,7 @@ import { SimpleEventEmitter } from "./eventemitter.mjs";
|
|
|
2
2
|
import { getFeatureFlagValue, normalizeFlagsResponse } from "./featureFlagUtils.mjs";
|
|
3
3
|
import { gzipCompress, isGzipSupported } from "./gzip.mjs";
|
|
4
4
|
import { PostHogPersistedProperty } from "./types.mjs";
|
|
5
|
-
import { PromiseQueue, STRING_FORMAT, allSettled, createLogger, currentISOTime, getEventUuid, removeTrailingSlash, retriable, safeSetTimeout } from "./utils/index.mjs";
|
|
5
|
+
import { PromiseQueue, STRING_FORMAT, allSettled, createLogger, currentISOTime, getEventUuid, removeTrailingSlash, retriable, safeJsonStringify, safeSetTimeout } from "./utils/index.mjs";
|
|
6
6
|
import { uuidv7 } from "./vendor/uuidv7.mjs";
|
|
7
7
|
import { ErrorCoercer, ErrorPropertiesBuilder, ObjectCoercer, PrimitiveCoercer, StringCoercer, createDefaultStackParser } from "./error-tracking/index.mjs";
|
|
8
8
|
class PostHogFetchHttpError extends Error {
|
|
@@ -45,9 +45,19 @@ function isPostHogFetchError(err) {
|
|
|
45
45
|
function isPostHogFetchNetworkError(err) {
|
|
46
46
|
return err instanceof PostHogFetchNetworkError;
|
|
47
47
|
}
|
|
48
|
+
function isRetryableFlagsFetchError(err) {
|
|
49
|
+
if (!(err instanceof PostHogFetchNetworkError)) return false;
|
|
50
|
+
const cause = err.error;
|
|
51
|
+
const code = cause?.code ?? cause?.cause?.code;
|
|
52
|
+
return 'ECONNREFUSED' !== code;
|
|
53
|
+
}
|
|
48
54
|
function isPostHogFetchContentTooLargeError(err) {
|
|
49
55
|
return 'object' == typeof err && err instanceof PostHogFetchHttpError && 413 === err.status;
|
|
50
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
|
+
}
|
|
51
61
|
function isPostHogEventProperties(value) {
|
|
52
62
|
return null !== value && 'object' == typeof value && !Array.isArray(value);
|
|
53
63
|
}
|
|
@@ -92,10 +102,11 @@ class PostHogCoreStateless {
|
|
|
92
102
|
this._retryOptions = {
|
|
93
103
|
retryCount: options.fetchRetryCount ?? 3,
|
|
94
104
|
retryDelay: options.fetchRetryDelay ?? 3000,
|
|
95
|
-
retryCheck:
|
|
105
|
+
retryCheck: isPostHogFetchRetryableError
|
|
96
106
|
};
|
|
97
107
|
this.requestTimeout = options.requestTimeout ?? 10000;
|
|
98
108
|
this.featureFlagsRequestTimeoutMs = options.featureFlagsRequestTimeoutMs ?? 3000;
|
|
109
|
+
this.featureFlagsRequestMaxRetries = options.featureFlagsRequestMaxRetries ?? 1;
|
|
99
110
|
this.remoteConfigRequestTimeoutMs = options.remoteConfigRequestTimeoutMs ?? 3000;
|
|
100
111
|
this.disableGeoip = options.disableGeoip ?? true;
|
|
101
112
|
this.disabled = (options.disabled ?? false) || missingApiKey;
|
|
@@ -246,6 +257,19 @@ class PostHogCoreStateless {
|
|
|
246
257
|
this.enqueue('capture', payload, options);
|
|
247
258
|
});
|
|
248
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
|
+
}
|
|
249
273
|
async getRemoteConfig() {
|
|
250
274
|
await this._initPromise;
|
|
251
275
|
let host = this.host;
|
|
@@ -290,7 +314,8 @@ class PostHogCoreStateless {
|
|
|
290
314
|
};
|
|
291
315
|
this._logger.info('Flags URL', url);
|
|
292
316
|
return this.fetchWithRetry(url, fetchOptions, {
|
|
293
|
-
retryCount:
|
|
317
|
+
retryCount: this.featureFlagsRequestMaxRetries,
|
|
318
|
+
retryCheck: isRetryableFlagsFetchError
|
|
294
319
|
}, this.featureFlagsRequestTimeoutMs).then((response)=>response.json()).then((response)=>({
|
|
295
320
|
success: true,
|
|
296
321
|
response: normalizeFlagsResponse(response)
|
|
@@ -383,8 +408,9 @@ class PostHogCoreStateless {
|
|
|
383
408
|
}
|
|
384
409
|
async getFeatureFlagDetailsStateless(distinctId, groups = {}, personProperties = {}, groupProperties = {}, disableGeoip, flagKeysToEvaluate) {
|
|
385
410
|
await this._initPromise;
|
|
386
|
-
const extraPayload = {
|
|
387
|
-
|
|
411
|
+
const extraPayload = {
|
|
412
|
+
geoip_disable: disableGeoip ?? this.disableGeoip
|
|
413
|
+
};
|
|
388
414
|
if (flagKeysToEvaluate) extraPayload['flag_keys_to_evaluate'] = flagKeysToEvaluate;
|
|
389
415
|
const result = await this.getFlags(distinctId, groups, personProperties, groupProperties, extraPayload);
|
|
390
416
|
if (!result.success) return;
|
|
@@ -497,7 +523,7 @@ class PostHogCoreStateless {
|
|
|
497
523
|
sent_at: currentISOTime()
|
|
498
524
|
};
|
|
499
525
|
if (this.historicalMigration) data.historical_migration = true;
|
|
500
|
-
const payload =
|
|
526
|
+
const payload = safeJsonStringify(data);
|
|
501
527
|
const url = `${this.host}/batch/`;
|
|
502
528
|
const gzippedPayload = this.disableCompression ? null : await gzipCompress(payload, this.isDebug);
|
|
503
529
|
const fetchOptions = {
|
|
@@ -604,7 +630,7 @@ class PostHogCoreStateless {
|
|
|
604
630
|
sent_at: currentISOTime()
|
|
605
631
|
};
|
|
606
632
|
if (this.historicalMigration) data.historical_migration = true;
|
|
607
|
-
const payload =
|
|
633
|
+
const payload = safeJsonStringify(data);
|
|
608
634
|
const url = `${this.host}/batch/`;
|
|
609
635
|
const gzippedPayload = this.disableCompression ? null : await gzipCompress(payload, this.isDebug);
|
|
610
636
|
const fetchOptions = {
|
|
@@ -621,7 +647,7 @@ class PostHogCoreStateless {
|
|
|
621
647
|
const retryOptions = {
|
|
622
648
|
retryCheck: (err)=>{
|
|
623
649
|
if (isPostHogFetchContentTooLargeError(err)) return false;
|
|
624
|
-
return
|
|
650
|
+
return isPostHogFetchRetryableError(err);
|
|
625
651
|
}
|
|
626
652
|
};
|
|
627
653
|
try {
|
|
@@ -665,7 +691,7 @@ class PostHogCoreStateless {
|
|
|
665
691
|
await this.fetchWithRetry(url, fetchOptions, {
|
|
666
692
|
retryCheck: (err)=>{
|
|
667
693
|
if (isPostHogFetchContentTooLargeError(err)) return false;
|
|
668
|
-
return
|
|
694
|
+
return isPostHogFetchRetryableError(err);
|
|
669
695
|
}
|
|
670
696
|
});
|
|
671
697
|
return {
|
|
@@ -135,6 +135,11 @@ export declare abstract class PostHogCore extends PostHogCoreStateless {
|
|
|
135
135
|
private getBootstrappedFeatureFlags;
|
|
136
136
|
private getBootstrappedFeatureFlagPayloads;
|
|
137
137
|
getFeatureFlagResult(key: string, options?: FeatureFlagResultOptions): FeatureFlagResult | undefined;
|
|
138
|
+
/**
|
|
139
|
+
* Returns all currently cached feature flags as `FeatureFlagResult`s. This is a synchronous read of
|
|
140
|
+
* the flags from the last load (no network request) and does not send a `$feature_flag_called` event.
|
|
141
|
+
*/
|
|
142
|
+
getAllFeatureFlags(): FeatureFlagResult[];
|
|
138
143
|
protected _getFeatureFlagResult(key: string, options?: {
|
|
139
144
|
/** Whether to send an event that the flag was evaluated. This defaults to true,
|
|
140
145
|
* but will respect the instance-level sendFeatureFlagEvent setting.
|