core-decorators
Advanced tools
Comparing version 0.15.0 to 0.16.0
@@ -6,5 +6,5 @@ "use strict"; | ||
}); | ||
exports["default"] = applyDecorators; | ||
var defineProperty = Object.defineProperty; | ||
var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; | ||
exports.default = applyDecorators; | ||
var defineProperty = Object.defineProperty, | ||
getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; | ||
@@ -14,2 +14,3 @@ function applyDecorators(Class, props) { | ||
for (var key in props) { | ||
@@ -26,4 +27,2 @@ var decorators = props[key]; | ||
return Class; | ||
} | ||
module.exports = exports["default"]; | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports['default'] = autobind; | ||
exports.default = autobind; | ||
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; return arr2; } else { return Array.from(arr); } } | ||
var _utils = require('./private/utils'); | ||
var _privateUtils = require('./private/utils'); | ||
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } | ||
var defineProperty = Object.defineProperty; | ||
var getPrototypeOf = Object.getPrototypeOf; | ||
var defineProperty = Object.defineProperty, | ||
getPrototypeOf = Object.getPrototypeOf; | ||
function bind(fn, context) { | ||
@@ -25,3 +26,3 @@ if (fn.bind) { | ||
var mapStore = undefined; | ||
var mapStore = void 0; | ||
@@ -51,4 +52,4 @@ function getBoundSuper(obj, fn) { | ||
function autobindClass(klass) { | ||
var descs = (0, _privateUtils.getOwnPropertyDescriptors)(klass.prototype); | ||
var keys = (0, _privateUtils.getOwnKeys)(descs); | ||
var descs = (0, _utils.getOwnPropertyDescriptors)(klass.prototype); | ||
var keys = (0, _utils.getOwnKeys)(descs); | ||
@@ -68,5 +69,5 @@ for (var i = 0, l = keys.length; i < l; i++) { | ||
function autobindMethod(target, key, _ref) { | ||
var fn = _ref.value; | ||
var configurable = _ref.configurable; | ||
var enumerable = _ref.enumerable; | ||
var fn = _ref.value, | ||
configurable = _ref.configurable, | ||
enumerable = _ref.enumerable; | ||
@@ -79,2 +80,3 @@ if (typeof fn !== 'function') { | ||
return { | ||
@@ -117,3 +119,4 @@ configurable: configurable, | ||
}, | ||
set: (0, _privateUtils.createDefaultSetter)(key) | ||
set: (0, _utils.createDefaultSetter)(key) | ||
}; | ||
@@ -142,4 +145,2 @@ } | ||
} | ||
} | ||
module.exports = exports['default']; | ||
} |
@@ -1,86 +0,181 @@ | ||
/** | ||
* core-decorators.js | ||
* (c) 2016 Jay Phelps and contributors | ||
* MIT Licensed | ||
* https://github.com/jayphelps/core-decorators.js | ||
* @license | ||
*/ | ||
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
function _interopRequire(obj) { return obj && obj.__esModule ? obj['default'] : obj; } | ||
var _override = require('./override'); | ||
exports.override = _interopRequire(_override); | ||
Object.defineProperty(exports, 'override', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_override).default; | ||
} | ||
}); | ||
var _deprecate = require('./deprecate'); | ||
exports.deprecate = _interopRequire(_deprecate); | ||
exports.deprecated = _interopRequire(_deprecate); | ||
Object.defineProperty(exports, 'deprecate', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_deprecate).default; | ||
} | ||
}); | ||
Object.defineProperty(exports, 'deprecated', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_deprecate).default; | ||
} | ||
}); | ||
var _suppressWarnings = require('./suppress-warnings'); | ||
exports.suppressWarnings = _interopRequire(_suppressWarnings); | ||
Object.defineProperty(exports, 'suppressWarnings', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_suppressWarnings).default; | ||
} | ||
}); | ||
var _memoize = require('./memoize'); | ||
exports.memoize = _interopRequire(_memoize); | ||
Object.defineProperty(exports, 'memoize', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_memoize).default; | ||
} | ||
}); | ||
var _autobind = require('./autobind'); | ||
exports.autobind = _interopRequire(_autobind); | ||
Object.defineProperty(exports, 'autobind', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_autobind).default; | ||
} | ||
}); | ||
var _readonly = require('./readonly'); | ||
exports.readonly = _interopRequire(_readonly); | ||
Object.defineProperty(exports, 'readonly', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_readonly).default; | ||
} | ||
}); | ||
var _enumerable = require('./enumerable'); | ||
exports.enumerable = _interopRequire(_enumerable); | ||
Object.defineProperty(exports, 'enumerable', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_enumerable).default; | ||
} | ||
}); | ||
var _nonenumerable = require('./nonenumerable'); | ||
exports.nonenumerable = _interopRequire(_nonenumerable); | ||
Object.defineProperty(exports, 'nonenumerable', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_nonenumerable).default; | ||
} | ||
}); | ||
var _nonconfigurable = require('./nonconfigurable'); | ||
exports.nonconfigurable = _interopRequire(_nonconfigurable); | ||
Object.defineProperty(exports, 'nonconfigurable', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_nonconfigurable).default; | ||
} | ||
}); | ||
var _debounce = require('./debounce'); | ||
exports.debounce = _interopRequire(_debounce); | ||
Object.defineProperty(exports, 'debounce', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_debounce).default; | ||
} | ||
}); | ||
var _throttle = require('./throttle'); | ||
exports.throttle = _interopRequire(_throttle); | ||
Object.defineProperty(exports, 'throttle', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_throttle).default; | ||
} | ||
}); | ||
var _decorate = require('./decorate'); | ||
exports.decorate = _interopRequire(_decorate); | ||
Object.defineProperty(exports, 'decorate', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_decorate).default; | ||
} | ||
}); | ||
var _mixin = require('./mixin'); | ||
exports.mixin = _interopRequire(_mixin); | ||
exports.mixins = _interopRequire(_mixin); | ||
Object.defineProperty(exports, 'mixin', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_mixin).default; | ||
} | ||
}); | ||
Object.defineProperty(exports, 'mixins', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_mixin).default; | ||
} | ||
}); | ||
var _lazyInitialize = require('./lazy-initialize'); | ||
exports.lazyInitialize = _interopRequire(_lazyInitialize); | ||
Object.defineProperty(exports, 'lazyInitialize', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_lazyInitialize).default; | ||
} | ||
}); | ||
var _time = require('./time'); | ||
exports.time = _interopRequire(_time); | ||
Object.defineProperty(exports, 'time', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_time).default; | ||
} | ||
}); | ||
var _extendDescriptor = require('./extendDescriptor'); | ||
exports.extendDescriptor = _interopRequire(_extendDescriptor); | ||
Object.defineProperty(exports, 'extendDescriptor', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_extendDescriptor).default; | ||
} | ||
}); | ||
// Helper to apply decorators to a class without transpiler support | ||
var _profile = require('./profile'); | ||
Object.defineProperty(exports, 'profile', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_profile).default; | ||
} | ||
}); | ||
var _applyDecorators = require('./applyDecorators'); | ||
exports.applyDecorators = _interopRequire(_applyDecorators); | ||
Object.defineProperty(exports, 'applyDecorators', { | ||
enumerable: true, | ||
get: function get() { | ||
return _interopRequireDefault(_applyDecorators).default; | ||
} | ||
}); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
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 _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; | ||
exports['default'] = debounce; | ||
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 _privateUtils = require('./private/utils'); | ||
exports.default = debounce; | ||
var _utils = require('./private/utils'); | ||
var DEFAULT_TIMEOUT = 300; | ||
function handleDescriptor(target, key, descriptor, _ref) { | ||
var _ref2 = _slicedToArray(_ref, 2); | ||
var _ref2 = _slicedToArray(_ref, 2), | ||
_ref2$ = _ref2[0], | ||
wait = _ref2$ === undefined ? DEFAULT_TIMEOUT : _ref2$, | ||
_ref2$2 = _ref2[1], | ||
immediate = _ref2$2 === undefined ? false : _ref2$2; | ||
var _ref2$0 = _ref2[0]; | ||
var wait = _ref2$0 === undefined ? DEFAULT_TIMEOUT : _ref2$0; | ||
var _ref2$1 = _ref2[1]; | ||
var immediate = _ref2$1 === undefined ? false : _ref2$1; | ||
var callback = descriptor.value; | ||
@@ -35,6 +34,5 @@ | ||
var _metaFor = (0, _privateUtils.metaFor)(this); | ||
var _metaFor = (0, _utils.metaFor)(this), | ||
debounceTimeoutIds = _metaFor.debounceTimeoutIds; | ||
var debounceTimeoutIds = _metaFor.debounceTimeoutIds; | ||
var timeout = debounceTimeoutIds[key]; | ||
@@ -65,5 +63,3 @@ var callNow = immediate && !timeout; | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports['default'] = decorate; | ||
exports.default = decorate; | ||
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; return arr2; } else { return Array.from(arr); } } | ||
var _utils = require('./private/utils'); | ||
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } | ||
function _toArray(arr) { return Array.isArray(arr) ? arr : Array.from(arr); } | ||
var _privateUtils = require('./private/utils'); | ||
var defineProperty = Object.defineProperty; | ||
function handleDescriptor(target, key, descriptor, _ref) { | ||
var _ref2 = _toArray(_ref); | ||
var _ref2 = _toArray(_ref), | ||
decorator = _ref2[0], | ||
args = _ref2.slice(1); | ||
var decorator = _ref2[0]; | ||
var configurable = descriptor.configurable, | ||
enumerable = descriptor.enumerable, | ||
writable = descriptor.writable; | ||
var args = _ref2.slice(1); | ||
var configurable = descriptor.configurable; | ||
var enumerable = descriptor.enumerable; | ||
var writable = descriptor.writable; | ||
var originalGet = descriptor.get; | ||
@@ -55,3 +54,4 @@ var originalSet = descriptor.set; | ||
}, | ||
set: isGetter ? originalSet : (0, _privateUtils.createDefaultSetter)() | ||
set: isGetter ? originalSet : (0, _utils.createDefaultSetter)() | ||
}; | ||
@@ -65,5 +65,3 @@ } | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
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 _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; | ||
exports['default'] = deprecate; | ||
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 _privateUtils = require('./private/utils'); | ||
exports.default = deprecate; | ||
var _utils = require('./private/utils'); | ||
var DEFAULT_MSG = 'This function will be removed in future versions.'; | ||
function handleDescriptor(target, key, descriptor, _ref) { | ||
var _ref2 = _slicedToArray(_ref, 2); | ||
var _ref2 = _slicedToArray(_ref, 2), | ||
_ref2$ = _ref2[0], | ||
msg = _ref2$ === undefined ? DEFAULT_MSG : _ref2$, | ||
_ref2$2 = _ref2[1], | ||
options = _ref2$2 === undefined ? {} : _ref2$2; | ||
var _ref2$0 = _ref2[0]; | ||
var msg = _ref2$0 === undefined ? DEFAULT_MSG : _ref2$0; | ||
var _ref2$1 = _ref2[1]; | ||
var options = _ref2$1 === undefined ? {} : _ref2$1; | ||
if (typeof descriptor.value !== 'function') { | ||
@@ -48,5 +47,3 @@ throw new SyntaxError('Only functions can be marked as deprecated'); | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports['default'] = enumerable; | ||
exports.default = enumerable; | ||
var _privateUtils = require('./private/utils'); | ||
var _utils = require('./private/utils'); | ||
@@ -20,5 +20,3 @@ function handleDescriptor(target, key, descriptor) { | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
@@ -9,9 +9,10 @@ }); | ||
exports['default'] = extendDescriptor; | ||
exports.default = extendDescriptor; | ||
var _privateUtils = require('./private/utils'); | ||
var _utils = require('./private/utils'); | ||
var getPrototypeOf = Object.getPrototypeOf; | ||
var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; | ||
var getPrototypeOf = Object.getPrototypeOf, | ||
getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; | ||
function handleDescriptor(target, key, descriptor) { | ||
@@ -34,5 +35,3 @@ var superKlass = getPrototypeOf(target); | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports['default'] = lazyInitialize; | ||
exports.default = lazyInitialize; | ||
var _privateUtils = require('./private/utils'); | ||
var _utils = require('./private/utils'); | ||
var defineProperty = Object.defineProperty; | ||
function handleDescriptor(target, key, descriptor) { | ||
var configurable = descriptor.configurable; | ||
var enumerable = descriptor.enumerable; | ||
var initializer = descriptor.initializer; | ||
var value = descriptor.value; | ||
var configurable = descriptor.configurable, | ||
enumerable = descriptor.enumerable, | ||
initializer = descriptor.initializer, | ||
value = descriptor.value; | ||
@@ -41,3 +42,4 @@ return { | ||
set: (0, _privateUtils.createDefaultSetter)(key) | ||
set: (0, _utils.createDefaultSetter)(key) | ||
}; | ||
@@ -51,5 +53,3 @@ } | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
@@ -9,8 +9,8 @@ }); | ||
exports['default'] = memoize; | ||
exports.default = memoize; | ||
var _utils = require('./private/utils'); | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
var _privateUtils = require('./private/utils'); | ||
function toObject(cache, value) { | ||
@@ -30,4 +30,4 @@ if (value === Object(value)) { | ||
function metaForDescriptor(descriptor) { | ||
var fn = undefined, | ||
wrapKey = undefined; | ||
var fn = void 0, | ||
wrapKey = void 0; | ||
@@ -54,7 +54,6 @@ // This is ugly code, but way faster than other | ||
var _metaForDescriptor = metaForDescriptor(descriptor); | ||
var _metaForDescriptor = metaForDescriptor(descriptor), | ||
fn = _metaForDescriptor.fn, | ||
wrapKey = _metaForDescriptor.wrapKey; | ||
var fn = _metaForDescriptor.fn; | ||
var wrapKey = _metaForDescriptor.wrapKey; | ||
var argumentCache = new WeakMap(); | ||
@@ -94,5 +93,3 @@ var signatureCache = Object.create(null); | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports['default'] = mixin; | ||
var _privateUtils = require('./private/utils'); | ||
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; }; | ||
var defineProperty = Object.defineProperty; | ||
var getPrototypeOf = Object.getPrototypeOf; | ||
exports.default = mixin; | ||
var _utils = require('./private/utils'); | ||
var defineProperty = Object.defineProperty, | ||
getPrototypeOf = Object.getPrototypeOf; | ||
function buggySymbol(symbol) { | ||
return Object.prototype.toString.call(symbol) === '[object Symbol]' && typeof symbol === 'object'; | ||
return Object.prototype.toString.call(symbol) === '[object Symbol]' && (typeof symbol === 'undefined' ? 'undefined' : _typeof(symbol)) === 'object'; | ||
} | ||
@@ -46,4 +50,4 @@ | ||
for (var i = 0, l = mixins.length; i < l; i++) { | ||
var descs = (0, _privateUtils.getOwnPropertyDescriptors)(mixins[i]); | ||
var keys = (0, _privateUtils.getOwnKeys)(descs); | ||
var descs = (0, _utils.getOwnPropertyDescriptors)(mixins[i]); | ||
var keys = (0, _utils.getOwnKeys)(descs); | ||
@@ -72,4 +76,2 @@ for (var j = 0, k = keys.length; j < k; j++) { | ||
} | ||
} | ||
module.exports = exports['default']; | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports['default'] = nonconfigurable; | ||
exports.default = nonconfigurable; | ||
var _privateUtils = require('./private/utils'); | ||
var _utils = require('./private/utils'); | ||
@@ -20,5 +20,3 @@ function handleDescriptor(target, key, descriptor) { | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports['default'] = nonenumerable; | ||
exports.default = nonenumerable; | ||
var _privateUtils = require('./private/utils'); | ||
var _utils = require('./private/utils'); | ||
@@ -20,5 +20,3 @@ function handleDescriptor(target, key, descriptor) { | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
var _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })(); | ||
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'] = override; | ||
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } } | ||
exports.default = override; | ||
var _privateUtils = require('./private/utils'); | ||
var _utils = require('./private/utils'); | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
var GENERIC_FUNCTION_ERROR = '{child} does not properly override {parent}'; | ||
var FUNCTION_REGEXP = /^function ([_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)?(\([^\)]*\))[\s\S]+$/; | ||
var SyntaxErrorReporter = (function () { | ||
var SyntaxErrorReporter = function () { | ||
_createClass(SyntaxErrorReporter, [{ | ||
@@ -41,3 +43,3 @@ key: '_getTopic', | ||
value: function _extractTopicSignature(topic) { | ||
switch (typeof topic) { | ||
switch (typeof topic === 'undefined' ? 'undefined' : _typeof(topic)) { | ||
case 'function': | ||
@@ -54,4 +56,5 @@ return this._extractFunctionSignature(topic); | ||
return fn.toString().replace(FUNCTION_REGEXP, function (match, name, params) { | ||
if (name === undefined) name = _this.key; | ||
return fn.toString().replace(FUNCTION_REGEXP, function (match) { | ||
var name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _this.key; | ||
var params = arguments[2]; | ||
return name + params; | ||
@@ -109,3 +112,3 @@ }); | ||
value: function assert(condition) { | ||
var msg = arguments.length <= 1 || arguments[1] === undefined ? '' : arguments[1]; | ||
var msg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ''; | ||
@@ -134,3 +137,3 @@ if (condition !== true) { | ||
return SyntaxErrorReporter; | ||
})(); | ||
}(); | ||
@@ -156,4 +159,4 @@ function getDescriptorType(descriptor) { | ||
function checkDataDescriptors(parent, child, reporter) { | ||
var parentValueType = typeof parent.value; | ||
var childValueType = typeof child.value; | ||
var parentValueType = _typeof(parent.value); | ||
var childValueType = _typeof(child.value); | ||
@@ -289,5 +292,3 @@ if (parentValueType === 'undefined' && childValueType === 'undefined') { | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
var _slice = Array.prototype.slice; | ||
exports.getOwnKeys = undefined; | ||
var _createDecoratedClass = (function () { function defineProperties(target, descriptors, initializers) { for (var i = 0; i < descriptors.length; i++) { var descriptor = descriptors[i]; var decorators = descriptor.decorators; var key = descriptor.key; delete descriptor.key; delete descriptor.decorators; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor || descriptor.initializer) descriptor.writable = true; if (decorators) { for (var f = 0; f < decorators.length; f++) { var decorator = decorators[f]; if (typeof decorator === 'function') { descriptor = decorator(target, key, descriptor) || descriptor; } else { throw new TypeError('The decorator for method ' + descriptor.key + ' is of the invalid type ' + typeof decorator); } } if (descriptor.initializer !== undefined) { initializers[key] = descriptor; continue; } } Object.defineProperty(target, key, descriptor); } } return function (Constructor, protoProps, staticProps, protoInitializers, staticInitializers) { if (protoProps) defineProperties(Constructor.prototype, protoProps, protoInitializers); if (staticProps) defineProperties(Constructor, staticProps, staticInitializers); return Constructor; }; })(); | ||
var _desc, _value, _class, _descriptor, _descriptor2, _descriptor3, _descriptor4; | ||
@@ -16,19 +16,59 @@ exports.isDescriptor = isDescriptor; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } | ||
var _lazyInitialize = require('../lazy-initialize'); | ||
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; return arr2; } else { return Array.from(arr); } } | ||
var _lazyInitialize2 = _interopRequireDefault(_lazyInitialize); | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _defineDecoratedPropertyDescriptor(target, key, descriptors) { var _descriptor = descriptors[key]; if (!_descriptor) return; var descriptor = {}; for (var _key in _descriptor) descriptor[_key] = _descriptor[_key]; descriptor.value = descriptor.initializer ? descriptor.initializer.call(target) : undefined; Object.defineProperty(target, key, descriptor); } | ||
function _initDefineProp(target, property, descriptor, context) { | ||
if (!descriptor) return; | ||
Object.defineProperty(target, property, { | ||
enumerable: descriptor.enumerable, | ||
configurable: descriptor.configurable, | ||
writable: descriptor.writable, | ||
value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 | ||
}); | ||
} | ||
var _lazyInitialize = require('../lazy-initialize'); | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
var _lazyInitialize2 = _interopRequireDefault(_lazyInitialize); | ||
function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { | ||
var desc = {}; | ||
Object['ke' + 'ys'](descriptor).forEach(function (key) { | ||
desc[key] = descriptor[key]; | ||
}); | ||
desc.enumerable = !!desc.enumerable; | ||
desc.configurable = !!desc.configurable; | ||
var defineProperty = Object.defineProperty; | ||
var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; | ||
var getOwnPropertyNames = Object.getOwnPropertyNames; | ||
var getOwnPropertySymbols = Object.getOwnPropertySymbols; | ||
if ('value' in desc || desc.initializer) { | ||
desc.writable = true; | ||
} | ||
desc = decorators.slice().reverse().reduce(function (desc, decorator) { | ||
return decorator(target, property, desc) || desc; | ||
}, desc); | ||
if (context && desc.initializer !== void 0) { | ||
desc.value = desc.initializer ? desc.initializer.call(context) : void 0; | ||
desc.initializer = undefined; | ||
} | ||
if (desc.initializer === void 0) { | ||
Object['define' + 'Property'](target, property, desc); | ||
desc = null; | ||
} | ||
return desc; | ||
} | ||
function _initializerWarningHelper(descriptor, context) { | ||
throw new Error('Decorating class property failed. Please ensure that transform-class-properties is enabled.'); | ||
} | ||
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } | ||
var defineProperty = Object.defineProperty, | ||
getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor, | ||
getOwnPropertyNames = Object.getOwnPropertyNames, | ||
getOwnPropertySymbols = Object.getOwnPropertySymbols; | ||
function isDescriptor(desc) { | ||
@@ -55,3 +95,3 @@ if (!desc || !desc.hasOwnProperty) { | ||
return function () { | ||
return handleDescriptor.apply(undefined, _slice.call(arguments).concat([entryArgs])); | ||
return handleDescriptor.apply(undefined, Array.prototype.slice.call(arguments).concat([entryArgs])); | ||
}; | ||
@@ -61,50 +101,35 @@ } | ||
var Meta = (function () { | ||
var _instanceInitializers = {}; | ||
var Meta = (_class = function Meta() { | ||
_classCallCheck(this, Meta); | ||
function Meta() { | ||
_classCallCheck(this, Meta); | ||
_initDefineProp(this, 'debounceTimeoutIds', _descriptor, this); | ||
_defineDecoratedPropertyDescriptor(this, 'debounceTimeoutIds', _instanceInitializers); | ||
_initDefineProp(this, 'throttleTimeoutIds', _descriptor2, this); | ||
_defineDecoratedPropertyDescriptor(this, 'throttleTimeoutIds', _instanceInitializers); | ||
_initDefineProp(this, 'throttlePreviousTimestamps', _descriptor3, this); | ||
_defineDecoratedPropertyDescriptor(this, 'throttlePreviousTimestamps', _instanceInitializers); | ||
_defineDecoratedPropertyDescriptor(this, 'throttleTrailingArgs', _instanceInitializers); | ||
_initDefineProp(this, 'throttleTrailingArgs', _descriptor4, this); | ||
}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, 'debounceTimeoutIds', [_lazyInitialize2.default], { | ||
enumerable: true, | ||
initializer: function initializer() { | ||
return {}; | ||
} | ||
}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, 'throttleTimeoutIds', [_lazyInitialize2.default], { | ||
enumerable: true, | ||
initializer: function initializer() { | ||
return {}; | ||
} | ||
}), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, 'throttlePreviousTimestamps', [_lazyInitialize2.default], { | ||
enumerable: true, | ||
initializer: function initializer() { | ||
return {}; | ||
} | ||
}), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, 'throttleTrailingArgs', [_lazyInitialize2.default], { | ||
enumerable: true, | ||
initializer: function initializer() { | ||
return null; | ||
} | ||
})), _class); | ||
_createDecoratedClass(Meta, [{ | ||
key: 'debounceTimeoutIds', | ||
decorators: [_lazyInitialize2['default']], | ||
initializer: function initializer() { | ||
return {}; | ||
}, | ||
enumerable: true | ||
}, { | ||
key: 'throttleTimeoutIds', | ||
decorators: [_lazyInitialize2['default']], | ||
initializer: function initializer() { | ||
return {}; | ||
}, | ||
enumerable: true | ||
}, { | ||
key: 'throttlePreviousTimestamps', | ||
decorators: [_lazyInitialize2['default']], | ||
initializer: function initializer() { | ||
return {}; | ||
}, | ||
enumerable: true | ||
}, { | ||
key: 'throttleTrailingArgs', | ||
decorators: [_lazyInitialize2['default']], | ||
initializer: function initializer() { | ||
return null; | ||
}, | ||
enumerable: true | ||
}], null, _instanceInitializers); | ||
return Meta; | ||
})(); | ||
var META_KEY = typeof Symbol === 'function' ? Symbol('__core_decorators__') : '__core_decorators__'; | ||
@@ -123,8 +148,6 @@ | ||
var getOwnKeys = getOwnPropertySymbols ? function (object) { | ||
var getOwnKeys = exports.getOwnKeys = getOwnPropertySymbols ? function (object) { | ||
return getOwnPropertyNames(object).concat(getOwnPropertySymbols(object)); | ||
} : getOwnPropertyNames; | ||
exports.getOwnKeys = getOwnKeys; | ||
function getOwnPropertyDescriptors(obj) { | ||
@@ -131,0 +154,0 @@ var descs = {}; |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports['default'] = readonly; | ||
exports.default = readonly; | ||
var _privateUtils = require('./private/utils'); | ||
var _utils = require('./private/utils'); | ||
@@ -20,5 +20,3 @@ function handleDescriptor(target, key, descriptor) { | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
@@ -9,6 +9,8 @@ }); | ||
exports['default'] = suppressWarnings; | ||
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; }; | ||
var _privateUtils = require('./private/utils'); | ||
exports.default = suppressWarnings; | ||
var _utils = require('./private/utils'); | ||
function suppressedWarningNoop() { | ||
@@ -19,3 +21,3 @@ // Warnings are currently suppressed via @suppressWarnings | ||
function applyWithoutWarnings(context, fn, args) { | ||
if (typeof console === 'object') { | ||
if ((typeof console === 'undefined' ? 'undefined' : _typeof(console)) === 'object') { | ||
var nativeWarn = console.warn; | ||
@@ -44,5 +46,3 @@ console.warn = suppressedWarningNoop; | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
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 _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; | ||
exports['default'] = throttle; | ||
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 _privateUtils = require('./private/utils'); | ||
exports.default = throttle; | ||
var _utils = require('./private/utils'); | ||
var DEFAULT_TIMEOUT = 300; | ||
function handleDescriptor(target, key, descriptor, _ref) { | ||
var _ref2 = _slicedToArray(_ref, 2); | ||
var _ref2 = _slicedToArray(_ref, 2), | ||
_ref2$ = _ref2[0], | ||
wait = _ref2$ === undefined ? DEFAULT_TIMEOUT : _ref2$, | ||
_ref2$2 = _ref2[1], | ||
options = _ref2$2 === undefined ? {} : _ref2$2; | ||
var _ref2$0 = _ref2[0]; | ||
var wait = _ref2$0 === undefined ? DEFAULT_TIMEOUT : _ref2$0; | ||
var _ref2$1 = _ref2[1]; | ||
var options = _ref2$1 === undefined ? {} : _ref2$1; | ||
var callback = descriptor.value; | ||
@@ -43,5 +42,5 @@ | ||
var meta = (0, _privateUtils.metaFor)(this); | ||
var throttleTimeoutIds = meta.throttleTimeoutIds; | ||
var throttlePreviousTimestamps = meta.throttlePreviousTimestamps; | ||
var meta = (0, _utils.metaFor)(this); | ||
var throttleTimeoutIds = meta.throttleTimeoutIds, | ||
throttlePreviousTimestamps = meta.throttlePreviousTimestamps; | ||
@@ -88,5 +87,3 @@ var timeout = throttleTimeoutIds[key]; | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
} | ||
module.exports = exports['default']; | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.defaultConsole = undefined; | ||
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 _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; | ||
exports['default'] = time; | ||
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 _privateUtils = require('./private/utils'); | ||
exports.default = time; | ||
var _utils = require('./private/utils'); | ||
var labels = {}; | ||
// Exported for mocking in tests | ||
var defaultConsole = { | ||
var defaultConsole = exports.defaultConsole = { | ||
time: console.time ? console.time.bind(console) : function (label) { | ||
@@ -30,13 +31,11 @@ labels[label] = new Date(); | ||
exports.defaultConsole = defaultConsole; | ||
var count = 0; | ||
function handleDescriptor(target, key, descriptor, _ref) { | ||
var _ref2 = _slicedToArray(_ref, 2); | ||
var _ref2 = _slicedToArray(_ref, 2), | ||
_ref2$ = _ref2[0], | ||
prefix = _ref2$ === undefined ? null : _ref2$, | ||
_ref2$2 = _ref2[1], | ||
console = _ref2$2 === undefined ? defaultConsole : _ref2$2; | ||
var _ref2$0 = _ref2[0]; | ||
var prefix = _ref2$0 === undefined ? null : _ref2$0; | ||
var _ref2$1 = _ref2[1]; | ||
var console = _ref2$1 === undefined ? defaultConsole : _ref2$1; | ||
var fn = descriptor.value; | ||
@@ -72,3 +71,3 @@ | ||
return (0, _privateUtils.decorate)(handleDescriptor, args); | ||
return (0, _utils.decorate)(handleDescriptor, args); | ||
} |
{ | ||
"name": "core-decorators", | ||
"version": "0.15.0", | ||
"version": "0.16.0", | ||
"description": "Library of JavaScript stage-0 decorators (aka ES2016/ES7 decorators but that's not accurate!) inspired by languages that come with built-ins like @override, @deprecate, @autobind, @mixin and more! Works great with React/Angular/more!", | ||
"main": "lib/core-decorators.js", | ||
"module": "es/core-decorators.js", | ||
"jsnext:main": "es/core-decorators.js", | ||
"files": [ | ||
@@ -14,4 +16,5 @@ "lib", | ||
"build": "babel --out-dir lib src", | ||
"build-es": "BABEL_ENV=es babel --out-dir es src", | ||
"build-bower": "babel-node scripts/build-bower.js", | ||
"test": "npm run build && mocha --compilers js:babel/register --require babel/polyfill \"test/**/*.spec.js\"" | ||
"test": "npm run build && mocha --compilers js:babel-core/register --require babel-polyfill \"test/**/*.spec.js\"" | ||
}, | ||
@@ -47,12 +50,21 @@ "repository": { | ||
"devDependencies": { | ||
"babel": "^5.4.7", | ||
"camelcase": "^2.0.1", | ||
"chai": "^3.2.0", | ||
"glob": "^6.0.1", | ||
"babel-cli": "^6.24.0", | ||
"babel-core": "^6.24.0", | ||
"babel-plugin-transform-class-properties": "^6.23.0", | ||
"babel-plugin-transform-decorators-legacy": "^1.3.4", | ||
"babel-plugin-transform-es2015-modules-commonjs": "^6.24.0", | ||
"babel-plugin-transform-flow-strip-types": "^6.22.0", | ||
"babel-plugin-transform-object-rest-spread": "^6.23.0", | ||
"babel-polyfill": "^6.23.0", | ||
"babel-preset-es2015": "^6.24.0", | ||
"camelcase": "^4.1.0", | ||
"chai": "^3.5.0", | ||
"glob": "^7.1.1", | ||
"global-wrap": "^2.0.0", | ||
"interop-require": "1.0.0", | ||
"lodash": "4.10.0", | ||
"mocha": "^2.2.5", | ||
"sinon": "^1.15.4", | ||
"sinon-chai": "^2.8.0" | ||
"lodash": "4.17.4", | ||
"mocha": "^3.2.0", | ||
"sinon": "^2.1.0", | ||
"sinon-chai": "^2.9.0" | ||
} | ||
} |
@@ -15,4 +15,6 @@ # core-decorators.js [![Build Status](https://travis-ci.org/jayphelps/core-decorators.js.svg?branch=master)](https://travis-ci.org/jayphelps/core-decorators.js) | ||
This can be consumed by any transpiler that supports stage-0 of the decorators spec, like [babel.js](https://babeljs.io/) version 5 or using the recent iterations of TypeScript. *Babel 6 [does not yet support decorators natively](https://phabricator.babeljs.io/T2645), but you can include [babel-plugin-transform-decorators-legacy](https://github.com/loganfsmyth/babel-plugin-transform-decorators-legacy) or use the [`applyDecorators()` helper](#applydecorators-helper).* | ||
This can be consumed by any transpiler that supports stage-0 of the decorators spec, like [babel.js](https://babeljs.io/) version 5. *Babel 6 [does not yet support decorators natively](https://phabricator.babeljs.io/T2645), but you can include [babel-plugin-transform-decorators-legacy](https://github.com/loganfsmyth/babel-plugin-transform-decorators-legacy) or use the [`applyDecorators()` helper](#applydecorators-helper).* | ||
core-decorators does not officially support TypeScript. There are known incompatibilities with the way it transpiles the output. PRs certainly welcome to fix that! | ||
##### Bower/globals | ||
@@ -45,2 +47,3 @@ | ||
* [@time](#time) | ||
* [@profile](#profile) :new: | ||
@@ -92,3 +95,3 @@ ##### For Classes | ||
} | ||
getPersonAgain() { | ||
@@ -193,3 +196,3 @@ return this; | ||
Optional boolean second argument allows to trigger function on the leading instead of the trailing edge of the wait interval. Implementation is insired by similar method from [UnderscoreJS](http://underscorejs.org/#debounce). | ||
Optional boolean second argument allows to trigger function on the leading instead of the trailing edge of the wait interval. Implementation is inspired by similar method from [UnderscoreJS](http://underscorejs.org/#debounce). | ||
@@ -219,3 +222,3 @@ ```js | ||
Implementation is insired by similar method from [UnderscoreJS](http://underscorejs.org/#throttle). | ||
Implementation is inspired by similar method from [UnderscoreJS](http://underscorejs.org/#throttle). | ||
@@ -448,2 +451,34 @@ ```js | ||
### @profile | ||
Uses `console.profile` and `console.profileEnd` to provide function profiling with a unique label whose default prefix is `ClassName.method`. Supply a first argument to override the prefix: | ||
```js | ||
class Bird { | ||
@profile('sing') | ||
sing() { | ||
} | ||
} | ||
var bird = new Bird(); | ||
bird.sing(); // Adds a profile with label sing and marked as run 1 | ||
bird.sing(); // Adds a profile with label sing and marked as run 2 | ||
``` | ||
Because profiling is expensive, you may not want to run it every time the function is called. Supply a second argument of `true` to have the profiling only run once: | ||
```js | ||
class Bird { | ||
@profile(null, true) | ||
sing() { | ||
} | ||
} | ||
var bird = new Bird(); | ||
bird.sing(); // Adds a profile with label Bird.sing | ||
bird.sing(); // Does nothing | ||
``` | ||
Profiling is currently only supported in Chrome 53+, Firefox, and Edge. Unfortunately this feature can't be polyfilled or faked, so if used in an unsupported browser or Node.js then this decorator will automatically disable itself. | ||
### @extendDescriptor | ||
@@ -450,0 +485,0 @@ |
/** | ||
* core-decorators.js | ||
* (c) 2016 Jay Phelps and contributors | ||
* (c) 2017 Jay Phelps and contributors | ||
* MIT Licensed | ||
@@ -24,4 +24,5 @@ * https://github.com/jayphelps/core-decorators.js | ||
export { default as extendDescriptor } from './extendDescriptor'; | ||
export { default as profile } from './profile'; | ||
// Helper to apply decorators to a class without transpiler support | ||
export { default as applyDecorators } from './applyDecorators'; |
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
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
95618
43
2083
541
18