@posthog/core 1.24.0 → 1.24.2

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/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export { getFeatureFlagValue } from './featureFlagUtils';
2
+ export { gzipCompress } from './gzip';
2
3
  export * from './utils';
3
4
  export * as ErrorTracking from './error-tracking';
4
5
  export { uuidv7 } from './vendor/uuidv7';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,cAAc,SAAS,CAAA;AACvB,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,0BAA0B,CAAA;AACxC,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AACrC,cAAc,SAAS,CAAA;AACvB,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,0BAA0B,CAAA;AACxC,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA"}
package/dist/index.js CHANGED
@@ -6,6 +6,9 @@ var __webpack_modules__ = {
6
6
  "./featureFlagUtils": function(module) {
7
7
  module.exports = require("./featureFlagUtils.js");
8
8
  },
9
+ "./gzip": function(module) {
10
+ module.exports = require("./gzip.js");
11
+ },
9
12
  "./posthog-core-stateless": function(module) {
10
13
  module.exports = require("./posthog-core-stateless.js");
11
14
  },
@@ -69,79 +72,86 @@ var __webpack_exports__ = {};
69
72
  (()=>{
70
73
  __webpack_require__.r(__webpack_exports__);
71
74
  __webpack_require__.d(__webpack_exports__, {
72
- ErrorTracking: ()=>_error_tracking__WEBPACK_IMPORTED_MODULE_2__,
75
+ ErrorTracking: ()=>_error_tracking__WEBPACK_IMPORTED_MODULE_3__,
73
76
  getFeatureFlagValue: ()=>_featureFlagUtils__WEBPACK_IMPORTED_MODULE_0__.getFeatureFlagValue,
74
- getLengthFromRules: ()=>_surveys_validation__WEBPACK_IMPORTED_MODULE_7__.getLengthFromRules,
75
- getRequirementsHint: ()=>_surveys_validation__WEBPACK_IMPORTED_MODULE_7__.getRequirementsHint,
76
- getValidationError: ()=>_surveys_validation__WEBPACK_IMPORTED_MODULE_7__.getValidationError,
77
- uuidv7: ()=>_vendor_uuidv7__WEBPACK_IMPORTED_MODULE_3__.uuidv7
77
+ getLengthFromRules: ()=>_surveys_validation__WEBPACK_IMPORTED_MODULE_8__.getLengthFromRules,
78
+ getRequirementsHint: ()=>_surveys_validation__WEBPACK_IMPORTED_MODULE_8__.getRequirementsHint,
79
+ getValidationError: ()=>_surveys_validation__WEBPACK_IMPORTED_MODULE_8__.getValidationError,
80
+ gzipCompress: ()=>_gzip__WEBPACK_IMPORTED_MODULE_1__.gzipCompress,
81
+ uuidv7: ()=>_vendor_uuidv7__WEBPACK_IMPORTED_MODULE_4__.uuidv7
78
82
  });
79
83
  var _featureFlagUtils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("./featureFlagUtils");
80
- var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("./utils?637c");
84
+ var _gzip__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("./gzip");
85
+ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("./utils?637c");
81
86
  var __WEBPACK_REEXPORT_OBJECT__ = {};
82
- for(var __WEBPACK_IMPORT_KEY__ in _utils__WEBPACK_IMPORTED_MODULE_1__)if ([
87
+ for(var __WEBPACK_IMPORT_KEY__ in _utils__WEBPACK_IMPORTED_MODULE_2__)if ([
83
88
  "ErrorTracking",
89
+ "uuidv7",
84
90
  "default",
91
+ "getRequirementsHint",
85
92
  "getLengthFromRules",
86
93
  "getFeatureFlagValue",
87
- "getRequirementsHint",
88
- "uuidv7",
89
- "getValidationError"
94
+ "getValidationError",
95
+ "gzipCompress"
90
96
  ].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
91
- return _utils__WEBPACK_IMPORTED_MODULE_1__[key];
97
+ return _utils__WEBPACK_IMPORTED_MODULE_2__[key];
92
98
  }).bind(0, __WEBPACK_IMPORT_KEY__);
93
99
  __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
94
- var _error_tracking__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("./error-tracking");
95
- var _vendor_uuidv7__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("./vendor/uuidv7");
96
- var _posthog_core__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("./posthog-core");
100
+ var _error_tracking__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("./error-tracking");
101
+ var _vendor_uuidv7__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("./vendor/uuidv7");
102
+ var _posthog_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("./posthog-core");
97
103
  var __WEBPACK_REEXPORT_OBJECT__ = {};
98
- for(var __WEBPACK_IMPORT_KEY__ in _posthog_core__WEBPACK_IMPORTED_MODULE_4__)if ([
104
+ for(var __WEBPACK_IMPORT_KEY__ in _posthog_core__WEBPACK_IMPORTED_MODULE_5__)if ([
99
105
  "ErrorTracking",
106
+ "uuidv7",
100
107
  "default",
108
+ "getRequirementsHint",
101
109
  "getLengthFromRules",
102
110
  "getFeatureFlagValue",
103
- "getRequirementsHint",
104
- "uuidv7",
105
- "getValidationError"
111
+ "getValidationError",
112
+ "gzipCompress"
106
113
  ].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
107
- return _posthog_core__WEBPACK_IMPORTED_MODULE_4__[key];
114
+ return _posthog_core__WEBPACK_IMPORTED_MODULE_5__[key];
108
115
  }).bind(0, __WEBPACK_IMPORT_KEY__);
109
116
  __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
110
- var _posthog_core_stateless__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("./posthog-core-stateless");
117
+ var _posthog_core_stateless__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("./posthog-core-stateless");
111
118
  var __WEBPACK_REEXPORT_OBJECT__ = {};
112
- for(var __WEBPACK_IMPORT_KEY__ in _posthog_core_stateless__WEBPACK_IMPORTED_MODULE_5__)if ([
119
+ for(var __WEBPACK_IMPORT_KEY__ in _posthog_core_stateless__WEBPACK_IMPORTED_MODULE_6__)if ([
113
120
  "ErrorTracking",
121
+ "uuidv7",
114
122
  "default",
123
+ "getRequirementsHint",
115
124
  "getLengthFromRules",
116
125
  "getFeatureFlagValue",
117
- "getRequirementsHint",
118
- "uuidv7",
119
- "getValidationError"
126
+ "getValidationError",
127
+ "gzipCompress"
120
128
  ].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
121
- return _posthog_core_stateless__WEBPACK_IMPORTED_MODULE_5__[key];
129
+ return _posthog_core_stateless__WEBPACK_IMPORTED_MODULE_6__[key];
122
130
  }).bind(0, __WEBPACK_IMPORT_KEY__);
123
131
  __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
124
- var _types__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("./types");
132
+ var _types__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("./types");
125
133
  var __WEBPACK_REEXPORT_OBJECT__ = {};
126
- for(var __WEBPACK_IMPORT_KEY__ in _types__WEBPACK_IMPORTED_MODULE_6__)if ([
134
+ for(var __WEBPACK_IMPORT_KEY__ in _types__WEBPACK_IMPORTED_MODULE_7__)if ([
127
135
  "ErrorTracking",
136
+ "uuidv7",
128
137
  "default",
138
+ "getRequirementsHint",
129
139
  "getLengthFromRules",
130
140
  "getFeatureFlagValue",
131
- "getRequirementsHint",
132
- "uuidv7",
133
- "getValidationError"
141
+ "getValidationError",
142
+ "gzipCompress"
134
143
  ].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
135
- return _types__WEBPACK_IMPORTED_MODULE_6__[key];
144
+ return _types__WEBPACK_IMPORTED_MODULE_7__[key];
136
145
  }).bind(0, __WEBPACK_IMPORT_KEY__);
137
146
  __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
138
- var _surveys_validation__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("./surveys/validation");
147
+ var _surveys_validation__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("./surveys/validation");
139
148
  })();
140
149
  exports.ErrorTracking = __webpack_exports__.ErrorTracking;
141
150
  exports.getFeatureFlagValue = __webpack_exports__.getFeatureFlagValue;
142
151
  exports.getLengthFromRules = __webpack_exports__.getLengthFromRules;
143
152
  exports.getRequirementsHint = __webpack_exports__.getRequirementsHint;
144
153
  exports.getValidationError = __webpack_exports__.getValidationError;
154
+ exports.gzipCompress = __webpack_exports__.gzipCompress;
145
155
  exports.uuidv7 = __webpack_exports__.uuidv7;
146
156
  for(var __webpack_i__ in __webpack_exports__)if (-1 === [
147
157
  "ErrorTracking",
@@ -149,6 +159,7 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
149
159
  "getLengthFromRules",
150
160
  "getRequirementsHint",
151
161
  "getValidationError",
162
+ "gzipCompress",
152
163
  "uuidv7"
153
164
  ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
154
165
  Object.defineProperty(exports, '__esModule', {
package/dist/index.mjs CHANGED
@@ -1,4 +1,5 @@
1
1
  import { getFeatureFlagValue } from "./featureFlagUtils.mjs";
2
+ import { gzipCompress } from "./gzip.mjs";
2
3
  import { uuidv7 } from "./vendor/uuidv7.mjs";
3
4
  import { getLengthFromRules, getRequirementsHint, getValidationError } from "./surveys/validation.mjs";
4
5
  export * from "./utils/index.mjs";
@@ -6,4 +7,4 @@ export * from "./posthog-core.mjs";
6
7
  export * from "./posthog-core-stateless.mjs";
7
8
  export * from "./types.mjs";
8
9
  import * as __WEBPACK_EXTERNAL_MODULE__error_tracking_index_mjs_b3406d6f__ from "./error-tracking/index.mjs";
9
- export { __WEBPACK_EXTERNAL_MODULE__error_tracking_index_mjs_b3406d6f__ as ErrorTracking, getFeatureFlagValue, getLengthFromRules, getRequirementsHint, getValidationError, uuidv7 };
10
+ export { __WEBPACK_EXTERNAL_MODULE__error_tracking_index_mjs_b3406d6f__ as ErrorTracking, getFeatureFlagValue, getLengthFromRules, getRequirementsHint, getValidationError, gzipCompress, uuidv7 };
@@ -0,0 +1,23 @@
1
+ import { ResolvedPluginConfig } from './config';
2
+ /**
3
+ * Build CLI arguments for `posthog-cli sourcemap process`.
4
+ */
5
+ export declare function buildSourcemapCliArgs(config: ResolvedPluginConfig, mode: {
6
+ stdin: true;
7
+ } | {
8
+ directory: string;
9
+ }): string[];
10
+ /**
11
+ * Build environment variables for CLI invocation.
12
+ * Plugin config values override any existing process.env values.
13
+ */
14
+ export declare function buildCliEnv(config: ResolvedPluginConfig): NodeJS.ProcessEnv;
15
+ /**
16
+ * Spawn the PostHog CLI for sourcemap processing via stdin (file list).
17
+ */
18
+ export declare function runSourcemapCli(config: ResolvedPluginConfig, options: {
19
+ filePaths: string[];
20
+ } | {
21
+ directory: string;
22
+ }): Promise<void>;
23
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/process/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAG/C;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,oBAAoB,EAC5B,IAAI,EAAE;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAC5C,MAAM,EAAE,CA0BV;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAAC,UAAU,CAQ3E;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,oBAAoB,EAC5B,OAAO,EAAE;IAAE,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GACvD,OAAO,CAAC,IAAI,CAAC,CAgBf"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, definition)=>{
5
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
+ enumerable: true,
7
+ get: definition[key]
8
+ });
9
+ };
10
+ })();
11
+ (()=>{
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
+ })();
14
+ (()=>{
15
+ __webpack_require__.r = (exports1)=>{
16
+ if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
+ value: 'Module'
18
+ });
19
+ Object.defineProperty(exports1, '__esModule', {
20
+ value: true
21
+ });
22
+ };
23
+ })();
24
+ var __webpack_exports__ = {};
25
+ __webpack_require__.r(__webpack_exports__);
26
+ __webpack_require__.d(__webpack_exports__, {
27
+ runSourcemapCli: ()=>runSourcemapCli,
28
+ buildCliEnv: ()=>buildCliEnv,
29
+ buildSourcemapCliArgs: ()=>buildSourcemapCliArgs
30
+ });
31
+ const external_spawn_local_js_namespaceObject = require("./spawn-local.js");
32
+ function buildSourcemapCliArgs(config, mode) {
33
+ const args = [
34
+ 'sourcemap',
35
+ 'process'
36
+ ];
37
+ if ('stdin' in mode) args.push('--stdin');
38
+ else args.push('--directory', mode.directory);
39
+ if (config.sourcemaps.releaseName) args.push('--release-name', config.sourcemaps.releaseName);
40
+ if (config.sourcemaps.releaseVersion) args.push('--release-version', config.sourcemaps.releaseVersion);
41
+ if (config.sourcemaps.deleteAfterUpload) args.push('--delete-after');
42
+ if (config.sourcemaps.batchSize) args.push('--batch-size', config.sourcemaps.batchSize.toString());
43
+ return args;
44
+ }
45
+ function buildCliEnv(config) {
46
+ return {
47
+ ...process.env,
48
+ RUST_LOG: `posthog_cli=${config.logLevel}`,
49
+ POSTHOG_CLI_HOST: config.host,
50
+ POSTHOG_CLI_API_KEY: config.personalApiKey,
51
+ POSTHOG_CLI_PROJECT_ID: config.projectId
52
+ };
53
+ }
54
+ async function runSourcemapCli(config, options) {
55
+ const mode = 'filePaths' in options ? {
56
+ stdin: true
57
+ } : {
58
+ directory: options.directory
59
+ };
60
+ const args = buildSourcemapCliArgs(config, mode);
61
+ const env = buildCliEnv(config);
62
+ const spawnOptions = {
63
+ cwd: process.cwd(),
64
+ env,
65
+ stdio: 'inherit'
66
+ };
67
+ if ('filePaths' in options) spawnOptions.stdin = options.filePaths.join('\n') + '\n';
68
+ await (0, external_spawn_local_js_namespaceObject.spawnLocal)(config.cliBinaryPath, args, spawnOptions);
69
+ }
70
+ exports.buildCliEnv = __webpack_exports__.buildCliEnv;
71
+ exports.buildSourcemapCliArgs = __webpack_exports__.buildSourcemapCliArgs;
72
+ exports.runSourcemapCli = __webpack_exports__.runSourcemapCli;
73
+ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
74
+ "buildCliEnv",
75
+ "buildSourcemapCliArgs",
76
+ "runSourcemapCli"
77
+ ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
78
+ Object.defineProperty(exports, '__esModule', {
79
+ value: true
80
+ });
@@ -0,0 +1,40 @@
1
+ import { spawnLocal } from "./spawn-local.mjs";
2
+ function buildSourcemapCliArgs(config, mode) {
3
+ const args = [
4
+ 'sourcemap',
5
+ 'process'
6
+ ];
7
+ if ('stdin' in mode) args.push('--stdin');
8
+ else args.push('--directory', mode.directory);
9
+ if (config.sourcemaps.releaseName) args.push('--release-name', config.sourcemaps.releaseName);
10
+ if (config.sourcemaps.releaseVersion) args.push('--release-version', config.sourcemaps.releaseVersion);
11
+ if (config.sourcemaps.deleteAfterUpload) args.push('--delete-after');
12
+ if (config.sourcemaps.batchSize) args.push('--batch-size', config.sourcemaps.batchSize.toString());
13
+ return args;
14
+ }
15
+ function buildCliEnv(config) {
16
+ return {
17
+ ...process.env,
18
+ RUST_LOG: `posthog_cli=${config.logLevel}`,
19
+ POSTHOG_CLI_HOST: config.host,
20
+ POSTHOG_CLI_API_KEY: config.personalApiKey,
21
+ POSTHOG_CLI_PROJECT_ID: config.projectId
22
+ };
23
+ }
24
+ async function runSourcemapCli(config, options) {
25
+ const mode = 'filePaths' in options ? {
26
+ stdin: true
27
+ } : {
28
+ directory: options.directory
29
+ };
30
+ const args = buildSourcemapCliArgs(config, mode);
31
+ const env = buildCliEnv(config);
32
+ const spawnOptions = {
33
+ cwd: process.cwd(),
34
+ env,
35
+ stdio: 'inherit'
36
+ };
37
+ if ('filePaths' in options) spawnOptions.stdin = options.filePaths.join('\n') + '\n';
38
+ await spawnLocal(config.cliBinaryPath, args, spawnOptions);
39
+ }
40
+ export { buildCliEnv, buildSourcemapCliArgs, runSourcemapCli };
@@ -0,0 +1,42 @@
1
+ export type LogLevel = 'debug' | 'info' | 'warn' | 'error' | 'silent';
2
+ export interface PluginConfig {
3
+ personalApiKey: string;
4
+ /** @deprecated Use projectId instead */
5
+ envId?: string;
6
+ projectId?: string;
7
+ host?: string;
8
+ logLevel?: LogLevel;
9
+ cliBinaryPath?: string;
10
+ sourcemaps?: {
11
+ enabled?: boolean;
12
+ /** @deprecated Use releaseName instead */
13
+ project?: string;
14
+ releaseName?: string;
15
+ /** @deprecated Use releaseVersion instead */
16
+ version?: string;
17
+ releaseVersion?: string;
18
+ deleteAfterUpload?: boolean;
19
+ batchSize?: number;
20
+ };
21
+ }
22
+ export interface ResolvedPluginConfig extends Omit<PluginConfig, 'envId' | 'projectId'> {
23
+ projectId?: string;
24
+ host: string;
25
+ logLevel: LogLevel;
26
+ cliBinaryPath: string;
27
+ sourcemaps: {
28
+ enabled: boolean;
29
+ releaseName?: string;
30
+ releaseVersion?: string;
31
+ deleteAfterUpload: boolean;
32
+ batchSize?: number;
33
+ };
34
+ }
35
+ export interface ResolveConfigOptions {
36
+ /** Default value for sourcemaps.enabled when not explicitly set. Defaults to true. */
37
+ defaultEnabled?: boolean;
38
+ /** The cwd used for resolving the CLI binary path. Defaults to process.cwd(). */
39
+ cwd?: string;
40
+ }
41
+ export declare function resolveConfig(options: PluginConfig, resolveOptions?: ResolveConfigOptions): ResolvedPluginConfig;
42
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/process/config.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;AAErE,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAA;IACtB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,OAAO,CAAA;QACjB,0CAA0C;QAC1C,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,6CAA6C;QAC7C,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,iBAAiB,CAAC,EAAE,OAAO,CAAA;QAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,YAAY,EAAE,OAAO,GAAG,WAAW,CAAC;IACrF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,QAAQ,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE;QACV,OAAO,EAAE,OAAO,CAAA;QAChB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,iBAAiB,EAAE,OAAO,CAAA;QAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED,MAAM,WAAW,oBAAoB;IACnC,sFAAsF;IACtF,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,iFAAiF;IACjF,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,YAAY,EAAE,cAAc,CAAC,EAAE,oBAAoB,GAAG,oBAAoB,CAuChH"}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, definition)=>{
5
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
+ enumerable: true,
7
+ get: definition[key]
8
+ });
9
+ };
10
+ })();
11
+ (()=>{
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
+ })();
14
+ (()=>{
15
+ __webpack_require__.r = (exports1)=>{
16
+ if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
+ value: 'Module'
18
+ });
19
+ Object.defineProperty(exports1, '__esModule', {
20
+ value: true
21
+ });
22
+ };
23
+ })();
24
+ var __webpack_exports__ = {};
25
+ __webpack_require__.r(__webpack_exports__);
26
+ __webpack_require__.d(__webpack_exports__, {
27
+ resolveConfig: ()=>resolveConfig
28
+ });
29
+ const external_utils_js_namespaceObject = require("./utils.js");
30
+ function resolveConfig(options, resolveOptions) {
31
+ const projectId = options.projectId ?? options.envId;
32
+ const host = options.host ?? 'https://us.i.posthog.com';
33
+ const logLevel = options.logLevel ?? 'info';
34
+ const cwd = resolveOptions?.cwd ?? process.cwd();
35
+ const cliBinaryPath = options.cliBinaryPath ?? (0, external_utils_js_namespaceObject.resolveBinaryPath)('posthog-cli', {
36
+ path: process.env.PATH ?? '',
37
+ cwd
38
+ });
39
+ const userSourcemaps = options.sourcemaps ?? {};
40
+ const defaultEnabled = resolveOptions?.defaultEnabled ?? true;
41
+ const enabled = userSourcemaps.enabled ?? defaultEnabled;
42
+ if (enabled) {
43
+ if (!projectId) throw new Error('projectId is required when sourcemaps are enabled (envId is deprecated)');
44
+ if (!options.personalApiKey) throw new Error('personalApiKey is required when sourcemaps are enabled');
45
+ }
46
+ return {
47
+ personalApiKey: options.personalApiKey,
48
+ projectId,
49
+ host,
50
+ logLevel,
51
+ cliBinaryPath,
52
+ sourcemaps: {
53
+ enabled,
54
+ releaseName: userSourcemaps.releaseName ?? userSourcemaps.project,
55
+ releaseVersion: userSourcemaps.releaseVersion ?? userSourcemaps.version,
56
+ deleteAfterUpload: userSourcemaps.deleteAfterUpload ?? true,
57
+ batchSize: userSourcemaps.batchSize
58
+ }
59
+ };
60
+ }
61
+ exports.resolveConfig = __webpack_exports__.resolveConfig;
62
+ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
63
+ "resolveConfig"
64
+ ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
65
+ Object.defineProperty(exports, '__esModule', {
66
+ value: true
67
+ });
@@ -0,0 +1,33 @@
1
+ import { resolveBinaryPath } from "./utils.mjs";
2
+ function resolveConfig(options, resolveOptions) {
3
+ const projectId = options.projectId ?? options.envId;
4
+ const host = options.host ?? 'https://us.i.posthog.com';
5
+ const logLevel = options.logLevel ?? 'info';
6
+ const cwd = resolveOptions?.cwd ?? process.cwd();
7
+ const cliBinaryPath = options.cliBinaryPath ?? resolveBinaryPath('posthog-cli', {
8
+ path: process.env.PATH ?? '',
9
+ cwd
10
+ });
11
+ const userSourcemaps = options.sourcemaps ?? {};
12
+ const defaultEnabled = resolveOptions?.defaultEnabled ?? true;
13
+ const enabled = userSourcemaps.enabled ?? defaultEnabled;
14
+ if (enabled) {
15
+ if (!projectId) throw new Error('projectId is required when sourcemaps are enabled (envId is deprecated)');
16
+ if (!options.personalApiKey) throw new Error('personalApiKey is required when sourcemaps are enabled');
17
+ }
18
+ return {
19
+ personalApiKey: options.personalApiKey,
20
+ projectId,
21
+ host,
22
+ logLevel,
23
+ cliBinaryPath,
24
+ sourcemaps: {
25
+ enabled,
26
+ releaseName: userSourcemaps.releaseName ?? userSourcemaps.project,
27
+ releaseVersion: userSourcemaps.releaseVersion ?? userSourcemaps.version,
28
+ deleteAfterUpload: userSourcemaps.deleteAfterUpload ?? true,
29
+ batchSize: userSourcemaps.batchSize
30
+ }
31
+ };
32
+ }
33
+ export { resolveConfig };
@@ -1,4 +1,5 @@
1
1
  export * from './spawn-local';
2
2
  export { resolveBinaryPath } from './utils';
3
- export type LogLevel = 'debug' | 'info' | 'warn' | 'error';
3
+ export * from './config';
4
+ export * from './cli';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/process/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAE3C,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/process/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAC3C,cAAc,UAAU,CAAA;AACxB,cAAc,OAAO,CAAA"}
@@ -1,5 +1,11 @@
1
1
  "use strict";
2
2
  var __webpack_modules__ = {
3
+ "./cli": function(module) {
4
+ module.exports = require("./cli.js");
5
+ },
6
+ "./config": function(module) {
7
+ module.exports = require("./config.js");
8
+ },
3
9
  "./spawn-local": function(module) {
4
10
  module.exports = require("./spawn-local.js");
5
11
  },
@@ -63,6 +69,24 @@ var __webpack_exports__ = {};
63
69
  }).bind(0, __WEBPACK_IMPORT_KEY__);
64
70
  __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
65
71
  var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("./utils?198b");
72
+ var _config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("./config");
73
+ var __WEBPACK_REEXPORT_OBJECT__ = {};
74
+ for(var __WEBPACK_IMPORT_KEY__ in _config__WEBPACK_IMPORTED_MODULE_2__)if ([
75
+ "resolveBinaryPath",
76
+ "default"
77
+ ].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
78
+ return _config__WEBPACK_IMPORTED_MODULE_2__[key];
79
+ }).bind(0, __WEBPACK_IMPORT_KEY__);
80
+ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
81
+ var _cli__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("./cli");
82
+ var __WEBPACK_REEXPORT_OBJECT__ = {};
83
+ for(var __WEBPACK_IMPORT_KEY__ in _cli__WEBPACK_IMPORTED_MODULE_3__)if ([
84
+ "resolveBinaryPath",
85
+ "default"
86
+ ].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
87
+ return _cli__WEBPACK_IMPORTED_MODULE_3__[key];
88
+ }).bind(0, __WEBPACK_IMPORT_KEY__);
89
+ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
66
90
  })();
67
91
  exports.resolveBinaryPath = __webpack_exports__.resolveBinaryPath;
68
92
  for(var __webpack_i__ in __webpack_exports__)if (-1 === [
@@ -1,3 +1,5 @@
1
1
  import { resolveBinaryPath } from "./utils.mjs";
2
2
  export * from "./spawn-local.mjs";
3
+ export * from "./config.mjs";
4
+ export * from "./cli.mjs";
3
5
  export { resolveBinaryPath };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@posthog/core",
3
- "version": "1.24.0",
3
+ "version": "1.24.2",
4
4
  "license": "MIT",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
package/src/index.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export { getFeatureFlagValue } from './featureFlagUtils'
2
+ export { gzipCompress } from './gzip'
2
3
  export * from './utils'
3
4
  export * as ErrorTracking from './error-tracking'
4
5
  export { uuidv7 } from './vendor/uuidv7'
@@ -0,0 +1,74 @@
1
+ import { ResolvedPluginConfig } from './config'
2
+ import { spawnLocal } from './spawn-local'
3
+
4
+ /**
5
+ * Build CLI arguments for `posthog-cli sourcemap process`.
6
+ */
7
+ export function buildSourcemapCliArgs(
8
+ config: ResolvedPluginConfig,
9
+ mode: { stdin: true } | { directory: string }
10
+ ): string[] {
11
+ const args = ['sourcemap', 'process']
12
+
13
+ if ('stdin' in mode) {
14
+ args.push('--stdin')
15
+ } else {
16
+ args.push('--directory', mode.directory)
17
+ }
18
+
19
+ if (config.sourcemaps.releaseName) {
20
+ args.push('--release-name', config.sourcemaps.releaseName)
21
+ }
22
+
23
+ if (config.sourcemaps.releaseVersion) {
24
+ args.push('--release-version', config.sourcemaps.releaseVersion)
25
+ }
26
+
27
+ if (config.sourcemaps.deleteAfterUpload) {
28
+ args.push('--delete-after')
29
+ }
30
+
31
+ if (config.sourcemaps.batchSize) {
32
+ args.push('--batch-size', config.sourcemaps.batchSize.toString())
33
+ }
34
+
35
+ return args
36
+ }
37
+
38
+ /**
39
+ * Build environment variables for CLI invocation.
40
+ * Plugin config values override any existing process.env values.
41
+ */
42
+ export function buildCliEnv(config: ResolvedPluginConfig): NodeJS.ProcessEnv {
43
+ return {
44
+ ...process.env,
45
+ RUST_LOG: `posthog_cli=${config.logLevel}`,
46
+ POSTHOG_CLI_HOST: config.host,
47
+ POSTHOG_CLI_API_KEY: config.personalApiKey,
48
+ POSTHOG_CLI_PROJECT_ID: config.projectId,
49
+ }
50
+ }
51
+
52
+ /**
53
+ * Spawn the PostHog CLI for sourcemap processing via stdin (file list).
54
+ */
55
+ export async function runSourcemapCli(
56
+ config: ResolvedPluginConfig,
57
+ options: { filePaths: string[] } | { directory: string }
58
+ ): Promise<void> {
59
+ const mode = 'filePaths' in options ? { stdin: true as const } : { directory: options.directory }
60
+ const args = buildSourcemapCliArgs(config, mode)
61
+ const env = buildCliEnv(config)
62
+
63
+ const spawnOptions: Parameters<typeof spawnLocal>[2] = {
64
+ cwd: process.cwd(),
65
+ env,
66
+ stdio: 'inherit',
67
+ }
68
+
69
+ if ('filePaths' in options) {
70
+ spawnOptions.stdin = options.filePaths.join('\n') + '\n'
71
+ }
72
+
73
+ await spawnLocal(config.cliBinaryPath, args, spawnOptions)
74
+ }
@@ -0,0 +1,86 @@
1
+ import { resolveBinaryPath } from './utils'
2
+
3
+ export type LogLevel = 'debug' | 'info' | 'warn' | 'error' | 'silent'
4
+
5
+ export interface PluginConfig {
6
+ personalApiKey: string
7
+ /** @deprecated Use projectId instead */
8
+ envId?: string
9
+ projectId?: string
10
+ host?: string
11
+ logLevel?: LogLevel
12
+ cliBinaryPath?: string
13
+ sourcemaps?: {
14
+ enabled?: boolean
15
+ /** @deprecated Use releaseName instead */
16
+ project?: string
17
+ releaseName?: string
18
+ /** @deprecated Use releaseVersion instead */
19
+ version?: string
20
+ releaseVersion?: string
21
+ deleteAfterUpload?: boolean
22
+ batchSize?: number
23
+ }
24
+ }
25
+
26
+ export interface ResolvedPluginConfig extends Omit<PluginConfig, 'envId' | 'projectId'> {
27
+ projectId?: string
28
+ host: string
29
+ logLevel: LogLevel
30
+ cliBinaryPath: string
31
+ sourcemaps: {
32
+ enabled: boolean
33
+ releaseName?: string
34
+ releaseVersion?: string
35
+ deleteAfterUpload: boolean
36
+ batchSize?: number
37
+ }
38
+ }
39
+
40
+ export interface ResolveConfigOptions {
41
+ /** Default value for sourcemaps.enabled when not explicitly set. Defaults to true. */
42
+ defaultEnabled?: boolean
43
+ /** The cwd used for resolving the CLI binary path. Defaults to process.cwd(). */
44
+ cwd?: string
45
+ }
46
+
47
+ export function resolveConfig(options: PluginConfig, resolveOptions?: ResolveConfigOptions): ResolvedPluginConfig {
48
+ const projectId = options.projectId ?? options.envId
49
+ const host = options.host ?? 'https://us.i.posthog.com'
50
+ const logLevel = options.logLevel ?? 'info'
51
+ const cwd = resolveOptions?.cwd ?? process.cwd()
52
+ const cliBinaryPath =
53
+ options.cliBinaryPath ??
54
+ resolveBinaryPath('posthog-cli', {
55
+ path: process.env.PATH ?? '',
56
+ cwd,
57
+ })
58
+
59
+ const userSourcemaps = options.sourcemaps ?? {}
60
+ const defaultEnabled = resolveOptions?.defaultEnabled ?? true
61
+ const enabled = userSourcemaps.enabled ?? defaultEnabled
62
+
63
+ if (enabled) {
64
+ if (!projectId) {
65
+ throw new Error('projectId is required when sourcemaps are enabled (envId is deprecated)')
66
+ }
67
+ if (!options.personalApiKey) {
68
+ throw new Error('personalApiKey is required when sourcemaps are enabled')
69
+ }
70
+ }
71
+
72
+ return {
73
+ personalApiKey: options.personalApiKey,
74
+ projectId,
75
+ host,
76
+ logLevel,
77
+ cliBinaryPath,
78
+ sourcemaps: {
79
+ enabled,
80
+ releaseName: userSourcemaps.releaseName ?? userSourcemaps.project,
81
+ releaseVersion: userSourcemaps.releaseVersion ?? userSourcemaps.version,
82
+ deleteAfterUpload: userSourcemaps.deleteAfterUpload ?? true,
83
+ batchSize: userSourcemaps.batchSize,
84
+ },
85
+ }
86
+ }
@@ -1,4 +1,4 @@
1
1
  export * from './spawn-local'
2
2
  export { resolveBinaryPath } from './utils'
3
-
4
- export type LogLevel = 'debug' | 'info' | 'warn' | 'error'
3
+ export * from './config'
4
+ export * from './cli'