openreplay/tracker/tracker-mobx
Delirium ce4d625c36
fix(tracker): fix mobx plugin for prod builds (#1269)
* fix(tracker): fix mobx plugin for prod builds

* fix(tracker): fix mobx tracking
2023-05-24 11:56:40 +02:00
..
src fix(tracker): fix mobx plugin for prod builds (#1269) 2023-05-24 11:56:40 +02:00
.gitignore feat: tracker init 2021-05-03 13:31:55 +02:00
.npmignore feat: tracker init 2021-05-03 13:31:55 +02:00
.prettierrc.json feat: tracker init 2021-05-03 13:31:55 +02:00
LICENSE MIT license for OpenReplay protocol 2022-08-30 19:04:32 +02:00
package.json fix(tracker): fix mobx plugin for prod builds (#1269) 2023-05-24 11:56:40 +02:00
README.md fix(tracker): fix mobx plugin for prod builds (#1269) 2023-05-24 11:56:40 +02:00
tsconfig-cjs.json feat: tracker init 2021-05-03 13:31:55 +02:00
tsconfig.json v1.1.0 (#31) 2021-06-11 23:31:29 +05:30

OpenReplay Tracker MobX plugin

A MobX plugin for OpenReplay Tracker. This plugin allows you to see the MobX events during session replay.

Installation

npm i @openreplay/tracker-mobx

Usage

Initialize the @openreplay/tracker package as usual and load the plugin into it. Then put the generated middleware into your Redux chain.

import Tracker from '@openreplay/tracker';
import trackerMobX from '@openreplay/tracker-mobx';
import { observe } from 'mobx';

const tracker = new Tracker({
  projectKey: YOUR_PROJECT_KEY,
});

const mobxTrackerInstance = tracker.use(trackerMobX(options)); // look below for available options
observe(yourMobxStore, mobxTrackerInstance)

Options:

interface Options {
    predicate?: (ev: { type: string; name: string; object: any; debugObjectName: string }) => boolean;
    sanitize?: (ev: { state: any; type: string; property: string }) => { state: any; type: string; property: string };
    update?: boolean;
    add?: boolean;
    delete?: boolean;
}

trackerMobX({
  predicate: () => true,
  sanitize: (event) => event
})

Where predicate can be used to dynamically turn off capturing and sanitize can be used to modify the payload before sending it to backend.