logrocket-mobx
Advanced tools
Comparing version 0.1.5 to 2.0.2
@@ -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" | ||
} | ||
} |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
13525
4
6
10
130
1
1
+ Added@types/invariant@^2.2.29
+ Added@types/invariant@2.2.37(transitive)
+ Addedlogrocket@0.6.21(transitive)
+ Addedmobx@5.15.7(transitive)
- Removedis-accessor-descriptor@^0.1.6
- Removedis-data-descriptor@^0.1.4
- Removedkind-of@^4.0.0
- Removedmobx@^3.1.15
- Removedes-errors@1.3.0(transitive)
- Removedfunction-bind@1.1.2(transitive)
- Removedget-intrinsic@1.2.4(transitive)
- Removedgopd@1.0.1(transitive)
- Removedhas-proto@1.0.3(transitive)
- Removedhas-symbols@1.0.3(transitive)
- Removedhasown@2.0.2(transitive)
- Removedis-accessor-descriptor@0.1.7(transitive)
- Removedis-buffer@1.1.6(transitive)
- Removedis-data-descriptor@0.1.5(transitive)
- Removedkind-of@4.0.0(transitive)
- Removedmobx@3.6.2(transitive)