posthog-js 1.444.4 → 1.445.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/all-external-dependencies.js +1 -1
  2. package/dist/array.full.es5.js +1 -1
  3. package/dist/array.full.js +1 -1
  4. package/dist/array.full.no-external.js +1 -1
  5. package/dist/array.js +1 -1
  6. package/dist/array.no-external.js +1 -1
  7. package/dist/customizations.full.js +1 -1
  8. package/dist/customizations.js +1 -1
  9. package/dist/default-extensions.js +1 -1
  10. package/dist/extension-bundles.js +1 -1
  11. package/dist/integrity.json +52 -0
  12. package/dist/lazy-recorder.js +1 -1
  13. package/dist/loader-bootstrap.js +1 -1
  14. package/dist/loader-bootstrap.js.map +1 -1
  15. package/dist/loader.js +1 -1
  16. package/dist/loader.js.map +1 -1
  17. package/dist/main.js +1 -1
  18. package/dist/module.full.cjs +1 -1
  19. package/dist/module.full.js +1 -1
  20. package/dist/module.full.no-external.cjs +1 -1
  21. package/dist/module.full.no-external.js +1 -1
  22. package/dist/module.js +1 -1
  23. package/dist/module.mjs +1 -1
  24. package/dist/module.no-external.cjs +1 -1
  25. package/dist/module.no-external.js +1 -1
  26. package/dist/module.slim.js +1 -1
  27. package/dist/module.slim.no-external.js +1 -1
  28. package/dist/posthog-recorder.js +1 -1
  29. package/dist/src/utils/loader-script.d.ts +1 -0
  30. package/dist/surveys-preview.js +1 -1
  31. package/dist/surveys.js +1 -1
  32. package/lib/package.json +2 -2
  33. package/lib/src/entrypoints/loader-bootstrap.js +9 -0
  34. package/lib/src/entrypoints/loader-bootstrap.js.map +1 -1
  35. package/lib/src/entrypoints/loader.js +8 -0
  36. package/lib/src/entrypoints/loader.js.map +1 -1
  37. package/lib/src/utils/loader-script.d.ts +1 -0
  38. package/lib/src/utils/loader-script.js +10 -0
  39. package/lib/src/utils/loader-script.js.map +1 -1
  40. package/package.json +6 -6
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "posthog-js",
3
- "version": "1.444.4",
3
+ "version": "1.445.0",
4
4
  "bugs": {
5
5
  "url": "https://github.com/PostHog/posthog-js/issues"
6
6
  },
@@ -18,7 +18,7 @@
18
18
  "dev:compile": "tsc -b --watch",
19
19
  "dev:runtime": "pnpm build:runtime --watch",
20
20
  "dev:types": "pnpm build:types --watch",
21
- "build": "tsc -b && pnpm build:runtime && pnpm build:types",
21
+ "build": "tsc -b && pnpm build:runtime && node scripts/generate-integrity-manifest.mjs && pnpm build:types",
22
22
  "build:runtime": "rolldown -c rollup.config.mjs",
23
23
  "build:types": "BUILD_TYPES_ONLY=1 rolldown -c rollup.config.mjs",
24
24
  "bundle-size:array": "node scripts/compare-array-bundle-size.mjs",
@@ -5,6 +5,7 @@ var globals_1 = require("@posthog/browser-common/utils/globals");
5
5
  var logger_1 = require("@posthog/browser-common/utils/logger");
6
6
  var globals_2 = require("../utils/globals");
7
7
  var loader_stub_1 = require("../utils/loader-stub");
8
+ var loader_script_1 = require("../utils/loader-script");
8
9
  var logger = (0, logger_1.createLogger)('[Loader bootstrap]');
9
10
  function bootstrap() {
10
11
  var _a, _b, _c, _d, _e;
@@ -19,6 +20,11 @@ function bootstrap() {
19
20
  if (((_a = globals_2.assignableWindow.posthog) === null || _a === void 0 ? void 0 : _a.__SV) || (0, core_1.isFunction)((_b = globals_2.assignableWindow.posthog) === null || _b === void 0 ? void 0 : _b.init)) {
20
21
  return;
21
22
  }
23
+ var coreIntegrity = (0, loader_script_1.getCoreIntegrity)(script);
24
+ if ((0, core_1.isNull)(coreIntegrity)) {
25
+ logger.critical('data-core-integrity must be a SHA-384 integrity hash');
26
+ return;
27
+ }
22
28
  var source = (_c = script.getAttribute('data-asset-host')) === null || _c === void 0 ? void 0 : _c.trim();
23
29
  if (!source) {
24
30
  logger.critical('Missing data-asset-host');
@@ -51,6 +57,9 @@ function bootstrap() {
51
57
  core.src = url.href;
52
58
  core.async = true;
53
59
  core.crossOrigin = 'anonymous';
60
+ if (coreIntegrity) {
61
+ core.integrity = coreIntegrity;
62
+ }
54
63
  core.nonce = script.nonce;
55
64
  core.onerror = function () { return logger.critical('Failed to load the PostHog SDK'); };
56
65
  (_e = script.parentNode) === null || _e === void 0 ? void 0 : _e.insertBefore(core, script.nextSibling);
@@ -1 +1 @@
1
- {"version":3,"file":"loader-bootstrap.js","sourceRoot":"","sources":["../../../src/entrypoints/loader-bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader-bootstrap.js","sourceRoot":"","sources":["../../../src/entrypoints/loader-bootstrap.ts"],"names":[],"mappings":"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"}
@@ -68,6 +68,11 @@ function load() {
68
68
  if (((_a = globals_2.assignableWindow.posthog) === null || _a === void 0 ? void 0 : _a.__SV) || (0, core_1.isFunction)((_b = globals_2.assignableWindow.posthog) === null || _b === void 0 ? void 0 : _b.init)) {
69
69
  return;
70
70
  }
71
+ var coreIntegrity = (0, loader_script_1.getCoreIntegrity)(script);
72
+ if ((0, core_1.isNull)(coreIntegrity)) {
73
+ logger.critical('data-core-integrity must be a SHA-384 integrity hash');
74
+ return;
75
+ }
71
76
  var url = globals_1.document.createElement('a');
72
77
  url.href = script.src;
73
78
  var deferInit = script.getAttribute('data-defer-init') === 'true';
@@ -81,6 +86,9 @@ function load() {
81
86
  core.src = (0, loader_script_1.getSDKScriptURL)(url);
82
87
  core.async = true;
83
88
  core.crossOrigin = 'anonymous';
89
+ if (coreIntegrity) {
90
+ core.integrity = coreIntegrity;
91
+ }
84
92
  core.nonce = script.nonce;
85
93
  core.onerror = function () { return logger.critical('Failed to load the PostHog SDK'); };
86
94
  (_c = script.parentNode) === null || _c === void 0 ? void 0 : _c.insertBefore(core, script.nextSibling);
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/entrypoints/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/entrypoints/loader.ts"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
+ export declare function getCoreIntegrity(script: Element): string | null | undefined;
1
2
  export declare function getSDKScriptURL(url: HTMLAnchorElement): string;
@@ -1,6 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCoreIntegrity = getCoreIntegrity;
3
4
  exports.getSDKScriptURL = getSDKScriptURL;
5
+ var core_1 = require("@posthog/core");
6
+ function getCoreIntegrity(script) {
7
+ var _a;
8
+ var value = (_a = script.getAttribute('data-core-integrity')) === null || _a === void 0 ? void 0 : _a.trim();
9
+ if ((0, core_1.isUndefined)(value)) {
10
+ return undefined;
11
+ }
12
+ return /^sha384-[A-Za-z0-9+/]{64}$/.test(value) ? value : null;
13
+ }
4
14
  function getSDKScriptURL(url) {
5
15
  var directory = url.pathname.slice(0, url.pathname.lastIndexOf('/') + 1);
6
16
  url.pathname = directory + 'array.js';
@@ -1 +1 @@
1
- {"version":3,"file":"loader-script.js","sourceRoot":"","sources":["../../../src/utils/loader-script.ts"],"names":[],"mappings":";;AAAA,0CAMC;AAND,SAAgB,eAAe,CAAC,GAAsB;IAClD,IAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAC1E,GAAG,CAAC,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAA;IACrC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAA;IACf,GAAG,CAAC,IAAI,GAAG,EAAE,CAAA;IACb,OAAO,GAAG,CAAC,IAAI,CAAA;AACnB,CAAC"}
1
+ {"version":3,"file":"loader-script.js","sourceRoot":"","sources":["../../../src/utils/loader-script.ts"],"names":[],"mappings":";;AAEA,4CAMC;AAED,0CAMC;AAhBD,sCAA2C;AAE3C,SAAgB,gBAAgB,CAAC,MAAe;;IAC5C,IAAM,KAAK,GAAG,MAAA,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,0CAAE,IAAI,EAAE,CAAA;IAChE,IAAI,IAAA,kBAAW,EAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,SAAS,CAAA;IACpB,CAAC;IACD,OAAO,4BAA4B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AAClE,CAAC;AAED,SAAgB,eAAe,CAAC,GAAsB;IAClD,IAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAC1E,GAAG,CAAC,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAA;IACrC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAA;IACf,GAAG,CAAC,IAAI,GAAG,EAAE,CAAA;IACb,OAAO,GAAG,CAAC,IAAI,CAAA;AACnB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "posthog-js",
3
- "version": "1.444.4",
3
+ "version": "1.445.0",
4
4
  "bugs": {
5
5
  "url": "https://github.com/PostHog/posthog-js/issues"
6
6
  },
@@ -39,8 +39,8 @@
39
39
  "query-selector-shadow-dom": "^1.0.1",
40
40
  "web-vitals": "^6.2.1",
41
41
  "web-vitals-soft-navs": "npm:web-vitals@6.2.1",
42
- "@posthog/core": "^1.62.1",
43
42
  "@posthog/browser-common": "^0.10.4",
43
+ "@posthog/core": "^1.62.1",
44
44
  "@posthog/types": "^1.419.0"
45
45
  },
46
46
  "peerDependencies": {
@@ -105,12 +105,12 @@
105
105
  "typescript": "5.8.2",
106
106
  "yargs": "^17.7.2",
107
107
  "vitest": "^1.6.1",
108
+ "@posthog-tooling/rollup-utils": "1.1.1",
108
109
  "@posthog-tooling/sdk-mock-server": "0.0.0",
109
110
  "@posthog/rrweb": "0.1.9",
110
- "@posthog/rrweb-plugin-console-record": "1.0.9",
111
- "@posthog-tooling/rollup-utils": "1.1.1",
112
- "@posthog/rrweb-types": "0.0.62",
113
111
  "@posthog/rrweb-record": "0.0.89",
112
+ "@posthog/rrweb-types": "0.0.62",
113
+ "@posthog/rrweb-plugin-console-record": "1.0.9",
114
114
  "@posthog/rrweb-utils": "0.0.66"
115
115
  },
116
116
  "browserslist": [
@@ -124,7 +124,7 @@
124
124
  "dev:compile": "tsc -b --watch",
125
125
  "dev:runtime": "pnpm build:runtime --watch",
126
126
  "dev:types": "pnpm build:types --watch",
127
- "build": "tsc -b && pnpm build:runtime && pnpm build:types",
127
+ "build": "tsc -b && pnpm build:runtime && node scripts/generate-integrity-manifest.mjs && pnpm build:types",
128
128
  "build:runtime": "rolldown -c rollup.config.mjs",
129
129
  "build:types": "BUILD_TYPES_ONLY=1 rolldown -c rollup.config.mjs",
130
130
  "bundle-size:array": "node scripts/compare-array-bundle-size.mjs",