Socket
Socket
Sign inDemoInstall

logrocket-mobx

Package Overview
Dependencies
Maintainers
2
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

logrocket-mobx - npm Package Compare versions

Comparing version 0.1.5 to 2.0.2

dist/index.js.map

132

dist/index.js

@@ -1,127 +0,5 @@

'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
exports.default = createPlugin;
var _mobx = require('mobx');
var _invariant = require('invariant');
var _invariant2 = _interopRequireDefault(_invariant);
var _kindOf = require('kind-of');
var _kindOf2 = _interopRequireDefault(_kindOf);
var _isDataDescriptor = require('is-data-descriptor');
var _isDataDescriptor2 = _interopRequireDefault(_isDataDescriptor);
var _isAccessorDescriptor = require('is-accessor-descriptor');
var _isAccessorDescriptor2 = _interopRequireDefault(_isAccessorDescriptor);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var isDescriptor = function isDescriptor(value) {
if ((0, _kindOf2.default)(value) !== 'object') {
return false;
}
if ('get' in value) {
return (0, _isAccessorDescriptor2.default)(value);
}
return (0, _isDataDescriptor2.default)(value);
};
var isUndefined = function isUndefined(value) {
return typeof value === 'undefined';
};
var isFunction = function isFunction(value) {
return typeof value === 'function';
};
function createPlugin(logrocket) {
if (isUndefined(logrocket)) {
throw new Error('Missing logrocket instance. Be sure you are passing LogRocket into logrocket-mobx.');
}
var observeProperty = function observeProperty(target, property) {
var sanitizer = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function (event) {
return event;
};
(0, _invariant2.default)((0, _mobx.isObservable)(target), 'Target must be observable');
(0, _invariant2.default)(isFunction(sanitizer) || isUndefined(sanitizer), 'sanitizer property must be a function, was given a ' + (typeof sanitizer === 'undefined' ? 'undefined' : _typeof(sanitizer)));
(0, _mobx.observe)(target, property, function (change) {
// if we have an observer name, add it
if (!isUndefined(change.object.name)) {
change.observerName = change.object.name;
}
// remove the observable property because it can't be sanitized
delete change.object;
var sanitized = sanitizer(change);
if (sanitized) {
logrocket.log('change', sanitized);
}
});
};
var decorate = function decorate(props, sanitizer) {
var _props = _slicedToArray(props, 3),
instance = _props[0],
property = _props[1],
descriptor = _props[2];
// the property won't exist until mobx adds it when its needed
// so let's wait until it is by adding a callback to __mobxLazyInitializers
// see mobx-decorators for examples of this
instance.__mobxLazyInitializers = (instance.__mobxLazyInitializers || []).slice();
instance.__mobxLazyInitializers.push(function (instance) {
observeProperty(instance, property, sanitizer);
});
descriptor.configurable = true;
return descriptor;
};
return {
logObservable: function logObservable() {
for (var _len = arguments.length, props = Array(_len), _key = 0; _key < _len; _key++) {
props[_key] = arguments[_key];
}
if (isDescriptor(props[props.length - 1])) {
// used as a decorator
decorate(props);
} else if (isFunction(props[0])) {
// used as a decorator factory
var sanitizer = props[0];
return function () {
for (var _len2 = arguments.length, props = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
props[_key2] = arguments[_key2];
}
return decorate(props, sanitizer);
};
} else if (!isUndefined(props[0])) {
// used as a function
var target = props[0];
var _sanitizer = props[1];
observeProperty(target, undefined, _sanitizer);
}
}
};
}
module.exports = exports['default'];
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var plugin_1 = require("./plugin");
exports.default = plugin_1.createPlugin;
//# sourceMappingURL=index.js.map
{
"name": "logrocket-mobx",
"version": "0.1.5",
"version": "2.0.2",
"description": "MobX plugin for [LogRocket](https://logrocket.com/).",
"main": "dist/index.js",
"main": "dist/index",
"typings": "dist/types",
"author": "Logrocket <support@logrocket.com> (https://logrocket.com/)",

@@ -16,31 +17,22 @@ "license": "MIT",

"scripts": {
"lint": "eslint src/",
"test": "mocha --compilers js:babel-register",
"build": "babel src --out-dir dist"
"install-peers": "npm install logrocket mobx@5.0.3 --no-save",
"test": "jest",
"build": "tsc"
},
"dependencies": {
"invariant": "^2.2.2",
"is-accessor-descriptor": "^0.1.6",
"is-data-descriptor": "^0.1.4",
"kind-of": "^4.0.0",
"mobx": "^3.1.15"
"@types/invariant": "^2.2.29",
"invariant": "^2.2.2"
},
"peerDependencies": {
"mobx": "3.x"
"mobx": "5.x",
"logrocket": "^0.6"
},
"devDependencies": {
"babel-cli": "^6.11.4",
"babel-core": "^6.13.0",
"babel-eslint": "^7.0.0",
"babel-plugin-add-module-exports": "^0.2.1",
"babel-plugin-transform-class-properties": "^6.24.1",
"babel-plugin-transform-decorators-legacy": "^1.3.4",
"babel-polyfill": "^6.13.0",
"babel-preset-es2015": "^6.13.2",
"babel-preset-stage-3": "^6.17.0",
"eslint": "^3.19.0",
"expect.js": "^0.3.1",
"mocha": "^3.4.2",
"sinon": "^2.3.4"
"@types/jest": "^23.3.1",
"jest": "^23.4.2",
"jest-puppeteer": "^3.2.1",
"puppeteer": "^1.6.2",
"ts-jest": "^23.0.1",
"typescript": "^2.8.1"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc