@spotify-confidence/session-recording 0.18.0 → 0.18.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.18.1](https://github.com/spotify/confidence-sdk-js/compare/session-recording-v0.18.0...session-recording-v0.18.1) (2026-07-01)
4
+
5
+
6
+ ### ✨ New Features
7
+
8
+ * **csr:** expose userTriggeredOnInput option ([#389](https://github.com/spotify/confidence-sdk-js/issues/389)) ([9780b29](https://github.com/spotify/confidence-sdk-js/commit/9780b29f87a8847fed6190ce0322c8f48cc27d98))
9
+
10
+
11
+ ### Dependencies
12
+
13
+ * The following workspace dependencies were updated
14
+ * dependencies
15
+ * @spotify-confidence/csr-recorder bumped to 0.17.6
16
+
3
17
  ## [0.18.0](https://github.com/spotify/confidence-sdk-js/compare/session-recording-v0.17.4...session-recording-v0.18.0) (2026-06-30)
4
18
 
5
19
 
package/dist/index.cjs CHANGED
@@ -11138,6 +11138,7 @@ var RrwebEngine = class {
11138
11138
  ...maskSelectors.length ? { maskTextSelector: maskSelectors.join(",") } : {},
11139
11139
  ...blockSelectors.length ? { blockSelector: blockSelectors.join(",") } : {},
11140
11140
  ...plugins.length ? { plugins } : {},
11141
+ ...config.userTriggeredOnInput ? { userTriggeredOnInput: true } : {},
11141
11142
  sampling: {
11142
11143
  mousemove: 100,
11143
11144
  input: "last"
@@ -13152,7 +13153,7 @@ function writeCounter(counter) {
13152
13153
  }
13153
13154
  //#endregion
13154
13155
  //#region src/version.ts
13155
- const SDK_VERSION = "0.18.0";
13156
+ const SDK_VERSION = "0.18.1";
13156
13157
  //#endregion
13157
13158
  //#region src/index.ts
13158
13159
  const DEFAULT_API_URL = "https://recording.confidence.dev";
@@ -13185,7 +13186,8 @@ function initSessionRecorder(options) {
13185
13186
  captureConsoleLogs: options.captureConsoleLogs,
13186
13187
  captureNetworkRequests: options.captureNetworkRequests,
13187
13188
  captureRouteChanges: options.captureRouteChanges,
13188
- parameterizeRoute: options.parameterizeRoute
13189
+ parameterizeRoute: options.parameterizeRoute,
13190
+ userTriggeredOnInput: options.userTriggeredOnInput
13189
13191
  };
13190
13192
  async function initAndRecord(forceRecord) {
13191
13193
  try {
package/dist/index.d.cts CHANGED
@@ -52,6 +52,12 @@ interface InitSessionRecorderOptions {
52
52
  /** Capture client-side route changes (pathname only). Defaults to `true`. */
53
53
  captureRouteChanges?: boolean;
54
54
  /**
55
+ * Tag each input event with a `userTriggered` flag derived from the
56
+ * browser's `event.isTrusted` property. When enabled, the analyzer can
57
+ * filter out programmatic input changes. Defaults to `false`.
58
+ */
59
+ userTriggeredOnInput?: boolean;
60
+ /**
55
61
  * Transform a raw pathname into a route pattern before it is emitted in
56
62
  * route-change and Meta events. For example, `/users/123/profile` becomes
57
63
  * `/users/:id/profile`. This ensures per-page metrics are grouped by route
package/dist/index.d.ts CHANGED
@@ -52,6 +52,12 @@ interface InitSessionRecorderOptions {
52
52
  /** Capture client-side route changes (pathname only). Defaults to `true`. */
53
53
  captureRouteChanges?: boolean;
54
54
  /**
55
+ * Tag each input event with a `userTriggered` flag derived from the
56
+ * browser's `event.isTrusted` property. When enabled, the analyzer can
57
+ * filter out programmatic input changes. Defaults to `false`.
58
+ */
59
+ userTriggeredOnInput?: boolean;
60
+ /**
55
61
  * Transform a raw pathname into a route pattern before it is emitted in
56
62
  * route-change and Meta events. For example, `/users/123/profile` becomes
57
63
  * `/users/:id/profile`. This ensures per-page metrics are grouped by route
package/dist/index.js CHANGED
@@ -11119,6 +11119,7 @@ var RrwebEngine = class {
11119
11119
  ...maskSelectors.length ? { maskTextSelector: maskSelectors.join(",") } : {},
11120
11120
  ...blockSelectors.length ? { blockSelector: blockSelectors.join(",") } : {},
11121
11121
  ...plugins.length ? { plugins } : {},
11122
+ ...config.userTriggeredOnInput ? { userTriggeredOnInput: true } : {},
11122
11123
  sampling: {
11123
11124
  mousemove: 100,
11124
11125
  input: "last"
@@ -13133,7 +13134,7 @@ function writeCounter(counter) {
13133
13134
  }
13134
13135
  //#endregion
13135
13136
  //#region src/version.ts
13136
- const SDK_VERSION = "0.18.0";
13137
+ const SDK_VERSION = "0.18.1";
13137
13138
  //#endregion
13138
13139
  //#region src/index.ts
13139
13140
  const DEFAULT_API_URL = "https://recording.confidence.dev";
@@ -13166,7 +13167,8 @@ function initSessionRecorder(options) {
13166
13167
  captureConsoleLogs: options.captureConsoleLogs,
13167
13168
  captureNetworkRequests: options.captureNetworkRequests,
13168
13169
  captureRouteChanges: options.captureRouteChanges,
13169
- parameterizeRoute: options.parameterizeRoute
13170
+ parameterizeRoute: options.parameterizeRoute,
13171
+ userTriggeredOnInput: options.userTriggeredOnInput
13170
13172
  };
13171
13173
  async function initAndRecord(forceRecord) {
13172
13174
  try {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@spotify-confidence/session-recording",
3
3
  "license": "Apache-2.0",
4
- "version": "0.18.0",
4
+ "version": "0.18.1",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/spotify/confidence-sdk-js.git",
@@ -36,7 +36,7 @@
36
36
  },
37
37
  "dependencies": {
38
38
  "@spotify-confidence/csr-common": "0.18.0",
39
- "@spotify-confidence/csr-recorder": "0.17.5"
39
+ "@spotify-confidence/csr-recorder": "0.17.6"
40
40
  },
41
41
  "module": "./dist/index.js",
42
42
  "exports": {
package/src/index.ts CHANGED
@@ -30,6 +30,12 @@ export interface InitSessionRecorderOptions {
30
30
  captureNetworkRequests?: boolean;
31
31
  /** Capture client-side route changes (pathname only). Defaults to `true`. */
32
32
  captureRouteChanges?: boolean;
33
+ /**
34
+ * Tag each input event with a `userTriggered` flag derived from the
35
+ * browser's `event.isTrusted` property. When enabled, the analyzer can
36
+ * filter out programmatic input changes. Defaults to `false`.
37
+ */
38
+ userTriggeredOnInput?: boolean;
33
39
  /**
34
40
  * Transform a raw pathname into a route pattern before it is emitted in
35
41
  * route-change and Meta events. For example, `/users/123/profile` becomes
@@ -109,6 +115,7 @@ export function initSessionRecorder(options: InitSessionRecorderOptions): Sessio
109
115
  captureNetworkRequests: options.captureNetworkRequests,
110
116
  captureRouteChanges: options.captureRouteChanges,
111
117
  parameterizeRoute: options.parameterizeRoute,
118
+ userTriggeredOnInput: options.userTriggeredOnInput,
112
119
  };
113
120
 
114
121
  async function initAndRecord(forceRecord: boolean) {
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const SDK_VERSION = '0.18.0';
1
+ export const SDK_VERSION = '0.18.1';