@simple-contacts/react-traverse
Advanced tools
Comparing version 1.0.10 to 2.0.0
@@ -1,2 +0,2 @@ | ||
'use strict'; | ||
"use strict"; | ||
@@ -6,6 +6,6 @@ Object.defineProperty(exports, "__esModule", { | ||
}); | ||
exports.default = autobind; | ||
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; }; | ||
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } | ||
exports.default = autobind; | ||
/* | ||
@@ -35,3 +35,3 @@ * @copyright 2015, Andrey Popp <8mayday@gmail.com> | ||
if (typeof fn !== 'function') { | ||
throw new Error('@autobind decorator can only be applied to methods not: ' + (typeof fn === 'undefined' ? 'undefined' : _typeof(fn))); | ||
throw new Error("@autobind decorator can only be applied to methods not: ".concat(_typeof(fn))); | ||
} | ||
@@ -45,2 +45,3 @@ | ||
} | ||
var boundFn = fn.bind(this); | ||
@@ -56,10 +57,10 @@ Reflect.defineProperty(this, key, { | ||
} | ||
/* | ||
* Use boundMethod to bind all methods on the target.prototype | ||
*/ | ||
function boundClass(target) { | ||
// (Using reflect to get all keys including symbols) | ||
var keys = Reflect.ownKeys(target.prototype); | ||
keys.forEach(function (key) { | ||
@@ -71,5 +72,4 @@ // Ignore special case target method | ||
var descriptor = Reflect.getOwnPropertyDescriptor(target.prototype, key); | ||
var descriptor = Reflect.getOwnPropertyDescriptor(target.prototype, key); // Only methods need binding | ||
// Only methods need binding | ||
if (typeof descriptor.value === 'function') { | ||
@@ -84,5 +84,6 @@ Reflect.defineProperty(target.prototype, key, boundMethod(target, key, descriptor)); | ||
if (arguments.length === 1) { | ||
return boundClass.apply(undefined, arguments); | ||
return boundClass.apply(void 0, arguments); | ||
} | ||
return boundMethod.apply(undefined, arguments); | ||
return boundMethod.apply(void 0, arguments); | ||
} |
@@ -1,2 +0,2 @@ | ||
'use strict'; | ||
"use strict"; | ||
@@ -6,46 +6,32 @@ Object.defineProperty(exports, "__esModule", { | ||
}); | ||
exports.default = void 0; | ||
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 _autobind = _interopRequireDefault(require("./autobind")); | ||
var _dec, _dec2, _class, _desc, _value, _class2; | ||
var _dec, _dec2, _class, _class2; | ||
var _autobind = require('./autobind'); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
var _autobind2 = _interopRequireDefault(_autobind); | ||
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
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); } } | ||
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } | ||
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } | ||
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } | ||
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; | ||
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } | ||
if ('value' in desc || desc.initializer) { | ||
desc.writable = true; | ||
} | ||
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } | ||
desc = decorators.slice().reverse().reduce(function (desc, decorator) { | ||
return decorator(target, property, desc) || desc; | ||
}, desc); | ||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } | ||
if (context && desc.initializer !== void 0) { | ||
desc.value = desc.initializer ? desc.initializer.call(context) : void 0; | ||
desc.initializer = undefined; | ||
} | ||
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } | ||
if (desc.initializer === void 0) { | ||
Object['define' + 'Property'](target, property, desc); | ||
desc = null; | ||
} | ||
function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; 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.defineProperty(target, property, desc); desc = null; } return desc; } | ||
return desc; | ||
} | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; } | ||
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; } | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
@@ -61,5 +47,5 @@ | ||
return function $multiply(target, name, descriptor) { | ||
return Object.assign({}, descriptor, { | ||
return _objectSpread({}, descriptor, { | ||
value: function value() { | ||
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { | ||
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { | ||
args[_key] = arguments[_key]; | ||
@@ -76,4 +62,5 @@ } | ||
var SEVEN = 7; | ||
var Complex = (_dec = multiply(SEVEN), _dec2 = multiply(1 / SEVEN), (0, _autobind2.default)(_class = (_class2 = function (_Base) { | ||
var Complex = (_dec = multiply(SEVEN), _dec2 = multiply(1 / SEVEN), (0, _autobind.default)(_class = (_class2 = | ||
/*#__PURE__*/ | ||
function (_Base) { | ||
_inherits(Complex, _Base); | ||
@@ -84,7 +71,7 @@ | ||
return _possibleConstructorReturn(this, (Complex.__proto__ || Object.getPrototypeOf(Complex)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(Complex).apply(this, arguments)); | ||
} | ||
_createClass(Complex, [{ | ||
key: 'multiplyByFortyFive', | ||
key: "multiplyByFortyFive", | ||
value: function multiplyByFortyFive() { | ||
@@ -94,3 +81,3 @@ return SEVEN * this.constructor.multiplyByFortyFive(this.v); | ||
}], [{ | ||
key: 'multiplyByFortyFive', | ||
key: "multiplyByFortyFive", | ||
value: function multiplyByFortyFive(v) { | ||
@@ -102,7 +89,5 @@ return FIVE * v; | ||
return Complex; | ||
}(Base), (_applyDecoratedDescriptor(_class2, 'multiplyByFortyFive', [_dec], Object.getOwnPropertyDescriptor(_class2, 'multiplyByFortyFive'), _class2), _applyDecoratedDescriptor(_class2.prototype, 'multiplyByFortyFive', [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, 'multiplyByFortyFive'), _class2.prototype)), _class2)) || _class); | ||
}(Base), (_applyDecoratedDescriptor(_class2, "multiplyByFortyFive", [_dec], Object.getOwnPropertyDescriptor(_class2, "multiplyByFortyFive"), _class2), _applyDecoratedDescriptor(_class2.prototype, "multiplyByFortyFive", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, "multiplyByFortyFive"), _class2.prototype)), _class2)) || _class); | ||
var x = Complex; | ||
exports.default = x; | ||
var _default = x; | ||
exports.default = _default; |
@@ -1,25 +0,21 @@ | ||
'use strict'; | ||
"use strict"; | ||
require('babel-polyfill'); | ||
require("@babel/polyfill"); | ||
var _asFunction = require('should/as-function'); | ||
var _asFunction = _interopRequireDefault(require("should/as-function")); | ||
var _asFunction2 = _interopRequireDefault(_asFunction); | ||
var _ComplexClass = _interopRequireDefault(require("./fixtures/ComplexClass")); | ||
var _ComplexClass = require('./fixtures/ComplexClass'); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
var _ComplexClass2 = _interopRequireDefault(_ComplexClass); | ||
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } | ||
function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; } | ||
var _global = global, | ||
describe = _global.describe, | ||
it = _global.it; | ||
describe('sanity', function () { | ||
it('shouldjs should not extend Object.prototype', function () { | ||
return (0, _asFunction2.default)(Object.prototype).not.have.property('should'); | ||
return (0, _asFunction.default)(Object.prototype).not.have.property('should'); | ||
}); | ||
@@ -29,13 +25,18 @@ it('Complex class transforms should work', function () { | ||
var THIRTYFIVE = 35; | ||
var inst = new _ComplexClass2.default(TEN); | ||
(0, _asFunction2.default)(inst).be.an.instanceOf(_ComplexClass2.default); | ||
(0, _asFunction2.default)(inst.v).be.exactly(TEN); | ||
var inst = new _ComplexClass.default(TEN); | ||
(0, _asFunction.default)(inst).be.an.instanceOf(_ComplexClass.default); | ||
(0, _asFunction.default)(inst.v).be.exactly(TEN); | ||
var multiplyByFortyFive = inst.multiplyByFortyFive; | ||
(0, _asFunction2.default)(multiplyByFortyFive()).be.exactly(TEN * THIRTYFIVE); | ||
(0, _asFunction2.default)(_ComplexClass2.default.multiplyByFortyFive(TEN)).be.exactly(TEN * THIRTYFIVE); | ||
(0, _asFunction.default)(multiplyByFortyFive()).be.exactly(TEN * THIRTYFIVE); | ||
(0, _asFunction.default)(_ComplexClass.default.multiplyByFortyFive(TEN)).be.exactly(TEN * THIRTYFIVE); | ||
}); | ||
it('should transform async functions properly', function () { | ||
var asyncFunc = function () { | ||
var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { | ||
function asyncFunc() { | ||
return _asyncFunc.apply(this, arguments); | ||
} | ||
function _asyncFunc() { | ||
_asyncFunc = _asyncToGenerator( | ||
/*#__PURE__*/ | ||
regeneratorRuntime.mark(function _callee() { | ||
var result; | ||
@@ -51,21 +52,18 @@ return regeneratorRuntime.wrap(function _callee$(_context) { | ||
result = _context.sent; | ||
return _context.abrupt('return', result); | ||
return _context.abrupt("return", result); | ||
case 4: | ||
case 'end': | ||
case "end": | ||
return _context.stop(); | ||
} | ||
} | ||
}, _callee, this); | ||
}, _callee); | ||
})); | ||
return _asyncFunc.apply(this, arguments); | ||
} | ||
return function asyncFunc() { | ||
return _ref.apply(this, arguments); | ||
}; | ||
}(); | ||
return asyncFunc().then(function (result) { | ||
return (0, _asFunction2.default)(result).be.exactly('foobar'); | ||
return (0, _asFunction.default)(result).be.exactly('foobar'); | ||
}); | ||
}); | ||
}); |
@@ -1,38 +0,44 @@ | ||
'use strict'; | ||
"use strict"; | ||
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 _react = _interopRequireDefault(require("react")); | ||
var _react = require('react'); | ||
var _asFunction = _interopRequireDefault(require("should/as-function")); | ||
var _react2 = _interopRequireDefault(_react); | ||
var _ = require(".."); | ||
var _asFunction = require('should/as-function'); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
var _asFunction2 = _interopRequireDefault(_asFunction); | ||
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } | ||
var _ = require('..'); | ||
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 _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); } } | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } | ||
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } | ||
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } | ||
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } | ||
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } | ||
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } | ||
var _global = global, | ||
describe = _global.describe, | ||
it = _global.it; | ||
describe('isStatelessComponent', function () { | ||
function RegularFunctionComponent() { | ||
return _react2.default.createElement('div', null); | ||
return _react.default.createElement("div", null); | ||
} | ||
var ArrowFunctionComponent = function ArrowFunctionComponent() { | ||
return _react2.default.createElement('div', null); | ||
return _react.default.createElement("div", null); | ||
}; | ||
var ClassComponent = function (_React$Component) { | ||
var ClassComponent = | ||
/*#__PURE__*/ | ||
function (_React$Component) { | ||
_inherits(ClassComponent, _React$Component); | ||
@@ -43,9 +49,9 @@ | ||
return _possibleConstructorReturn(this, (ClassComponent.__proto__ || Object.getPrototypeOf(ClassComponent)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(ClassComponent).apply(this, arguments)); | ||
} | ||
_createClass(ClassComponent, [{ | ||
key: 'render', | ||
key: "render", | ||
value: function render() { | ||
return _react2.default.createElement('div', null); | ||
return _react.default.createElement("div", null); | ||
} | ||
@@ -55,24 +61,22 @@ }]); | ||
return ClassComponent; | ||
}(_react2.default.Component); | ||
}(_react.default.Component); | ||
it('detects regular functions as stateless components', function () { | ||
var _ref = _react2.default.createElement(RegularFunctionComponent, null), | ||
var _ref = _react.default.createElement(RegularFunctionComponent, null), | ||
type = _ref.type; | ||
(0, _asFunction2.default)((0, _.isStatelessComponent)(type)).be.exactly(true); | ||
(0, _asFunction.default)((0, _.isStatelessComponent)(type)).be.exactly(true); | ||
}); | ||
it('detects arrow functions as stateless components', function () { | ||
var _ref2 = _react2.default.createElement(ArrowFunctionComponent, null), | ||
var _ref2 = _react.default.createElement(ArrowFunctionComponent, null), | ||
type = _ref2.type; | ||
(0, _asFunction2.default)((0, _.isStatelessComponent)(type)).be.exactly(true); | ||
(0, _asFunction.default)((0, _.isStatelessComponent)(type)).be.exactly(true); | ||
}); | ||
it('detects classes extending React.Component as stateful components', function () { | ||
var _ref3 = _react2.default.createElement(ClassComponent, null), | ||
var _ref3 = _react.default.createElement(ClassComponent, null), | ||
type = _ref3.type; | ||
(0, _asFunction2.default)((0, _.isStatelessComponent)(type)).be.exactly(false); | ||
(0, _asFunction.default)((0, _.isStatelessComponent)(type)).be.exactly(false); | ||
}); | ||
}); |
@@ -1,44 +0,50 @@ | ||
'use strict'; | ||
"use strict"; | ||
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 _react = _interopRequireDefault(require("react")); | ||
var _react = require('react'); | ||
var _server = _interopRequireDefault(require("react-dom/server")); | ||
var _react2 = _interopRequireDefault(_react); | ||
var _sha = _interopRequireDefault(require("sha1")); | ||
var _server = require('react-dom/server'); | ||
var _asFunction = _interopRequireDefault(require("should/as-function")); | ||
var _server2 = _interopRequireDefault(_server); | ||
var _ = _interopRequireWildcard(require("..")); | ||
var _sha = require('sha1'); | ||
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } | ||
var _sha2 = _interopRequireDefault(_sha); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
var _asFunction = require('should/as-function'); | ||
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } | ||
var _asFunction2 = _interopRequireDefault(_asFunction); | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
var _ = require('..'); | ||
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); } } | ||
var _2 = _interopRequireDefault(_); | ||
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } | ||
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } | ||
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } | ||
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 _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } | ||
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } | ||
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } | ||
function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } | ||
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } | ||
var _global = global, | ||
describe = _global.describe, | ||
it = _global.it; | ||
describe('transformComponents', function () { | ||
describe('replaces divs with spans', function () { | ||
function replaceDivsWithSpansInNode(node) { | ||
return (0, _2.default)(node, { | ||
return (0, _.default)(node, { | ||
DOMElement: function DOMElement(path) { | ||
@@ -48,3 +54,4 @@ if (path.node.type !== 'div') { | ||
} | ||
return _react2.default.createElement.apply(_react2.default, ['span', path.node.props].concat(_toConsumableArray(path.traverseChildren()))); | ||
return _react.default.createElement.apply(_react.default, ['span', path.node.props].concat(_toConsumableArray(path.traverseChildren()))); | ||
} | ||
@@ -55,32 +62,23 @@ }); | ||
var replaceDivsWithSpansInComponent = (0, _.wrapRender)(replaceDivsWithSpansInNode); | ||
it('replaces in stateless components', function () { | ||
function Foo() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'foo' | ||
) | ||
); | ||
return _react.default.createElement("div", { | ||
className: "foo" | ||
}, _react.default.createElement("span", null, 'foo')); | ||
} | ||
var TransformedFoo = (0, _.transformComponents)(replaceDivsWithSpansInComponent)(Foo); | ||
var actual = _react2.default.createElement(TransformedFoo, null); | ||
var expected = _react2.default.createElement( | ||
'span', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'foo' | ||
) | ||
); | ||
(0, _asFunction2.default)(_server2.default.renderToStaticMarkup(actual)).be.exactly(_server2.default.renderToStaticMarkup(expected)); | ||
var actual = _react.default.createElement(TransformedFoo, null); | ||
var expected = _react.default.createElement("span", { | ||
className: "foo" | ||
}, _react.default.createElement("span", null, 'foo')); | ||
(0, _asFunction.default)(_server.default.renderToStaticMarkup(actual)).be.exactly(_server.default.renderToStaticMarkup(expected)); | ||
}); | ||
it('replaces in stateful components', function () { | ||
var Foo = function (_React$Component) { | ||
var Foo = | ||
/*#__PURE__*/ | ||
function (_React$Component) { | ||
_inherits(Foo, _React$Component); | ||
@@ -91,17 +89,11 @@ | ||
return _possibleConstructorReturn(this, (Foo.__proto__ || Object.getPrototypeOf(Foo)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(Foo).apply(this, arguments)); | ||
} | ||
_createClass(Foo, [{ | ||
key: 'render', | ||
key: "render", | ||
value: function render() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'foo' | ||
) | ||
); | ||
return _react.default.createElement("div", { | ||
className: "foo" | ||
}, _react.default.createElement("span", null, 'foo')); | ||
} | ||
@@ -111,51 +103,43 @@ }]); | ||
return Foo; | ||
}(_react2.default.Component); | ||
}(_react.default.Component); | ||
var TransformedFoo = (0, _.transformComponents)(replaceDivsWithSpansInComponent)(Foo); | ||
var actual = _react2.default.createElement(TransformedFoo, null); | ||
var expected = _react2.default.createElement( | ||
'span', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'foo' | ||
) | ||
); | ||
(0, _asFunction2.default)(_server2.default.renderToStaticMarkup(actual)).be.exactly(_server2.default.renderToStaticMarkup(expected)); | ||
var actual = _react.default.createElement(TransformedFoo, null); | ||
var expected = _react.default.createElement("span", { | ||
className: "foo" | ||
}, _react.default.createElement("span", null, 'foo')); | ||
(0, _asFunction.default)(_server.default.renderToStaticMarkup(actual)).be.exactly(_server.default.renderToStaticMarkup(expected)); | ||
}); | ||
it('replaces in nested stateless components', function () { | ||
function Bar() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'bar' }, | ||
'bar' | ||
); | ||
return _react.default.createElement("div", { | ||
className: "bar" | ||
}, 'bar'); | ||
} | ||
function Foo() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'foo' }, | ||
_react2.default.createElement(Bar, null) | ||
); | ||
return _react.default.createElement("div", { | ||
className: "foo" | ||
}, _react.default.createElement(Bar, null)); | ||
} | ||
var TransformedFoo = (0, _.transformComponents)(replaceDivsWithSpansInComponent)(Foo); | ||
var actual = _react2.default.createElement(TransformedFoo, null); | ||
var expected = _react2.default.createElement( | ||
'span', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
{ className: 'bar' }, | ||
'bar' | ||
) | ||
); | ||
(0, _asFunction2.default)(_server2.default.renderToStaticMarkup(actual)).be.exactly(_server2.default.renderToStaticMarkup(expected)); | ||
var actual = _react.default.createElement(TransformedFoo, null); | ||
var expected = _react.default.createElement("span", { | ||
className: "foo" | ||
}, _react.default.createElement("span", { | ||
className: "bar" | ||
}, 'bar')); | ||
(0, _asFunction.default)(_server.default.renderToStaticMarkup(actual)).be.exactly(_server.default.renderToStaticMarkup(expected)); | ||
}); | ||
it('replaces in nested stateful components', function () { | ||
var Bar = function (_React$Component2) { | ||
var Bar = | ||
/*#__PURE__*/ | ||
function (_React$Component2) { | ||
_inherits(Bar, _React$Component2); | ||
@@ -166,13 +150,11 @@ | ||
return _possibleConstructorReturn(this, (Bar.__proto__ || Object.getPrototypeOf(Bar)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(Bar).apply(this, arguments)); | ||
} | ||
_createClass(Bar, [{ | ||
key: 'render', | ||
key: "render", | ||
value: function render() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'bar' }, | ||
'bar' | ||
); | ||
return _react.default.createElement("div", { | ||
className: "bar" | ||
}, 'bar'); | ||
} | ||
@@ -182,5 +164,7 @@ }]); | ||
return Bar; | ||
}(_react2.default.Component); | ||
}(_react.default.Component); | ||
var Foo = function (_React$Component3) { | ||
var Foo = | ||
/*#__PURE__*/ | ||
function (_React$Component3) { | ||
_inherits(Foo, _React$Component3); | ||
@@ -191,13 +175,11 @@ | ||
return _possibleConstructorReturn(this, (Foo.__proto__ || Object.getPrototypeOf(Foo)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(Foo).apply(this, arguments)); | ||
} | ||
_createClass(Foo, [{ | ||
key: 'render', | ||
key: "render", | ||
value: function render() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'foo' }, | ||
_react2.default.createElement(Bar, null) | ||
); | ||
return _react.default.createElement("div", { | ||
className: "foo" | ||
}, _react.default.createElement(Bar, null)); | ||
} | ||
@@ -207,28 +189,26 @@ }]); | ||
return Foo; | ||
}(_react2.default.Component); | ||
}(_react.default.Component); | ||
var TransformedFoo = (0, _.transformComponents)(replaceDivsWithSpansInComponent)(Foo); | ||
var actual = _react2.default.createElement(TransformedFoo, null); | ||
var expected = _react2.default.createElement( | ||
'span', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
{ className: 'bar' }, | ||
'bar' | ||
) | ||
); | ||
(0, _asFunction2.default)(_server2.default.renderToStaticMarkup(actual)).be.exactly(_server2.default.renderToStaticMarkup(expected)); | ||
var actual = _react.default.createElement(TransformedFoo, null); | ||
var expected = _react.default.createElement("span", { | ||
className: "foo" | ||
}, _react.default.createElement("span", { | ||
className: "bar" | ||
}, 'bar')); | ||
(0, _asFunction.default)(_server.default.renderToStaticMarkup(actual)).be.exactly(_server.default.renderToStaticMarkup(expected)); | ||
}); | ||
it('replaces in nested mixed stateless and stateful components', function () { | ||
function Bar() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'bar' }, | ||
'bar' | ||
); | ||
return _react.default.createElement("div", { | ||
className: "bar" | ||
}, 'bar'); | ||
} | ||
var Foo = function (_React$Component4) { | ||
var Foo = | ||
/*#__PURE__*/ | ||
function (_React$Component4) { | ||
_inherits(Foo, _React$Component4); | ||
@@ -239,13 +219,11 @@ | ||
return _possibleConstructorReturn(this, (Foo.__proto__ || Object.getPrototypeOf(Foo)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(Foo).apply(this, arguments)); | ||
} | ||
_createClass(Foo, [{ | ||
key: 'render', | ||
key: "render", | ||
value: function render() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'foo' }, | ||
_react2.default.createElement(Bar, null) | ||
); | ||
return _react.default.createElement("div", { | ||
className: "foo" | ||
}, _react.default.createElement(Bar, null)); | ||
} | ||
@@ -255,28 +233,26 @@ }]); | ||
return Foo; | ||
}(_react2.default.Component); | ||
}(_react.default.Component); | ||
var TransformedFoo = (0, _.transformComponents)(replaceDivsWithSpansInComponent)(Foo); | ||
var actual = _react2.default.createElement(TransformedFoo, null); | ||
var expected = _react2.default.createElement( | ||
'span', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
{ className: 'bar' }, | ||
'bar' | ||
) | ||
); | ||
(0, _asFunction2.default)(_server2.default.renderToStaticMarkup(actual)).be.exactly(_server2.default.renderToStaticMarkup(expected)); | ||
var actual = _react.default.createElement(TransformedFoo, null); | ||
var expected = _react.default.createElement("span", { | ||
className: "foo" | ||
}, _react.default.createElement("span", { | ||
className: "bar" | ||
}, 'bar')); | ||
(0, _asFunction.default)(_server.default.renderToStaticMarkup(actual)).be.exactly(_server.default.renderToStaticMarkup(expected)); | ||
}); | ||
it('replaces in complex components nested in a ReactElement', function () { | ||
function Bar() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'bar' }, | ||
'bar' | ||
); | ||
return _react.default.createElement("div", { | ||
className: "bar" | ||
}, 'bar'); | ||
} | ||
var Foo = function (_React$Component5) { | ||
var Foo = | ||
/*#__PURE__*/ | ||
function (_React$Component5) { | ||
_inherits(Foo, _React$Component5); | ||
@@ -287,13 +263,11 @@ | ||
return _possibleConstructorReturn(this, (Foo.__proto__ || Object.getPrototypeOf(Foo)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(Foo).apply(this, arguments)); | ||
} | ||
_createClass(Foo, [{ | ||
key: 'render', | ||
key: "render", | ||
value: function render() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'foo' }, | ||
_react2.default.createElement(Bar, null) | ||
); | ||
return _react.default.createElement("div", { | ||
className: "foo" | ||
}, _react.default.createElement(Bar, null)); | ||
} | ||
@@ -303,25 +277,18 @@ }]); | ||
return Foo; | ||
}(_react2.default.Component); | ||
}(_react.default.Component); | ||
var actual = (0, _.transformComponents)(replaceDivsWithSpansInComponent)(_react2.default.createElement( | ||
'div', | ||
{ className: 'wrapper' }, | ||
_react2.default.createElement(Foo, null) | ||
)); | ||
var expected = _react2.default.createElement( | ||
'span', | ||
{ className: 'wrapper' }, | ||
_react2.default.createElement( | ||
'span', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
{ className: 'bar' }, | ||
'bar' | ||
) | ||
) | ||
); | ||
(0, _asFunction2.default)(_server2.default.renderToStaticMarkup(actual)).be.exactly(_server2.default.renderToStaticMarkup(expected)); | ||
var actual = (0, _.transformComponents)(replaceDivsWithSpansInComponent)(_react.default.createElement("div", { | ||
className: "wrapper" | ||
}, _react.default.createElement(Foo, null))); | ||
var expected = _react.default.createElement("span", { | ||
className: "wrapper" | ||
}, _react.default.createElement("span", { | ||
className: "foo" | ||
}, _react.default.createElement("span", { | ||
className: "bar" | ||
}, 'bar'))); | ||
(0, _asFunction.default)(_server.default.renderToStaticMarkup(actual)).be.exactly(_server.default.renderToStaticMarkup(expected)); | ||
}); | ||
it('decorates mixed stateless and stateful components', function () { | ||
@@ -331,10 +298,10 @@ var _dec, _class; | ||
function Bar() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'bar' }, | ||
'bar' | ||
); | ||
return _react.default.createElement("div", { | ||
className: "bar" | ||
}, 'bar'); | ||
} | ||
var TransformedFoo = (_dec = (0, _.transformComponents)(replaceDivsWithSpansInComponent), _dec(_class = function (_React$Component6) { | ||
var TransformedFoo = (_dec = (0, _.transformComponents)(replaceDivsWithSpansInComponent), _dec(_class = | ||
/*#__PURE__*/ | ||
function (_React$Component6) { | ||
_inherits(TransformedFoo, _React$Component6); | ||
@@ -345,13 +312,11 @@ | ||
return _possibleConstructorReturn(this, (TransformedFoo.__proto__ || Object.getPrototypeOf(TransformedFoo)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(TransformedFoo).apply(this, arguments)); | ||
} | ||
_createClass(TransformedFoo, [{ | ||
key: 'render', | ||
key: "render", | ||
value: function render() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'foo' }, | ||
_react2.default.createElement(Bar, null) | ||
); | ||
return _react.default.createElement("div", { | ||
className: "foo" | ||
}, _react.default.createElement(Bar, null)); | ||
} | ||
@@ -361,19 +326,15 @@ }]); | ||
return TransformedFoo; | ||
}(_react2.default.Component)) || _class); | ||
}(_react.default.Component)) || _class); | ||
var actual = _react.default.createElement(TransformedFoo, null); | ||
var actual = _react2.default.createElement(TransformedFoo, null); | ||
var expected = _react2.default.createElement( | ||
'span', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
{ className: 'bar' }, | ||
'bar' | ||
) | ||
); | ||
(0, _asFunction2.default)(_server2.default.renderToStaticMarkup(actual)).be.exactly(_server2.default.renderToStaticMarkup(expected)); | ||
var expected = _react.default.createElement("span", { | ||
className: "foo" | ||
}, _react.default.createElement("span", { | ||
className: "bar" | ||
}, 'bar')); | ||
(0, _asFunction.default)(_server.default.renderToStaticMarkup(actual)).be.exactly(_server.default.renderToStaticMarkup(expected)); | ||
}); | ||
}); | ||
describe('hashes all classNames', function () { | ||
@@ -384,3 +345,3 @@ var HASH_LENGTH = 10; | ||
return function (className) { | ||
return (0, _sha2.default)(className + ':' + hashKey).slice(0, HASH_LENGTH); | ||
return (0, _sha.default)("".concat(className, ":").concat(hashKey)).slice(0, HASH_LENGTH); | ||
}; // eslint-disable-line new-cap | ||
@@ -391,3 +352,3 @@ } | ||
return function (node) { | ||
return (0, _2.default)(node, { | ||
return (0, _.default)(node, { | ||
DOMElement: function DOMElement(path) { | ||
@@ -397,5 +358,6 @@ if (typeof path.node.props.className !== 'string') { | ||
} | ||
var nextProps = Object.assign({}, path.node.props); | ||
nextProps.className = path.node.props.className.split(' ').map(hashClassName(hashKey)).join(' '); | ||
return _react2.default.cloneElement.apply(_react2.default, [path.node, nextProps].concat(_toConsumableArray(path.traverseChildren()))); | ||
return _react.default.cloneElement.apply(_react.default, [path.node, nextProps].concat(_toConsumableArray(path.traverseChildren()))); | ||
} | ||
@@ -416,10 +378,10 @@ }); | ||
function Bar() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'bar' }, | ||
'bar' | ||
); | ||
return _react.default.createElement("div", { | ||
className: "bar" | ||
}, 'bar'); | ||
} | ||
var Foo = (_dec2 = (0, _.transformComponents)(createTransformComponent(hashKey)), _dec2(_class2 = function (_React$Component7) { | ||
var Foo = (_dec2 = (0, _.transformComponents)(createTransformComponent(hashKey)), _dec2(_class2 = | ||
/*#__PURE__*/ | ||
function (_React$Component7) { | ||
_inherits(Foo, _React$Component7); | ||
@@ -430,17 +392,13 @@ | ||
return _possibleConstructorReturn(this, (Foo.__proto__ || Object.getPrototypeOf(Foo)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(Foo).apply(this, arguments)); | ||
} | ||
_createClass(Foo, [{ | ||
key: 'render', | ||
key: "render", | ||
value: function render() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
{ className: 'foo-bar bar-foo' }, | ||
_react2.default.createElement(Bar, null) | ||
) | ||
); | ||
return _react.default.createElement("div", { | ||
className: "foo" | ||
}, _react.default.createElement("span", { | ||
className: "foo-bar bar-foo" | ||
}, _react.default.createElement(Bar, null))); | ||
} | ||
@@ -450,24 +408,17 @@ }]); | ||
return Foo; | ||
}(_react2.default.Component)) || _class2); | ||
}(_react.default.Component)) || _class2); | ||
var actual = _react.default.createElement(Foo, null); | ||
var actual = _react2.default.createElement(Foo, null); | ||
var expected = _react2.default.createElement( | ||
'div', | ||
{ className: hashClassName(hashKey)('foo') }, | ||
_react2.default.createElement( | ||
'span', | ||
{ | ||
className: hashClassName(hashKey)('foo-bar') + ' ' + hashClassName(hashKey)('bar-foo') | ||
}, | ||
_react2.default.createElement( | ||
'div', | ||
{ className: hashClassName(hashKey)('bar') }, | ||
'bar' | ||
) | ||
) | ||
); | ||
(0, _asFunction2.default)(_server2.default.renderToStaticMarkup(actual)).be.exactly(_server2.default.renderToStaticMarkup(expected)); | ||
var expected = _react.default.createElement("div", { | ||
className: hashClassName(hashKey)('foo') | ||
}, _react.default.createElement("span", { | ||
className: "".concat(hashClassName(hashKey)('foo-bar'), " ").concat(hashClassName(hashKey)('bar-foo')) | ||
}, _react.default.createElement("div", { | ||
className: hashClassName(hashKey)('bar') | ||
}, 'bar'))); | ||
(0, _asFunction.default)(_server.default.renderToStaticMarkup(actual)).be.exactly(_server.default.renderToStaticMarkup(expected)); | ||
}); | ||
}); | ||
}); |
@@ -1,32 +0,32 @@ | ||
'use strict'; | ||
"use strict"; | ||
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 _react = _interopRequireDefault(require("react")); | ||
var _react = require('react'); | ||
var _propTypes = _interopRequireDefault(require("prop-types")); | ||
var _react2 = _interopRequireDefault(_react); | ||
var _server = _interopRequireDefault(require("react-dom/server")); | ||
var _propTypes = require('prop-types'); | ||
var _asFunction = _interopRequireDefault(require("should/as-function")); | ||
var _propTypes2 = _interopRequireDefault(_propTypes); | ||
var _ = _interopRequireDefault(require("..")); | ||
var _server = require('react-dom/server'); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
var _server2 = _interopRequireDefault(_server); | ||
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } | ||
var _asFunction = require('should/as-function'); | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
var _asFunction2 = _interopRequireDefault(_asFunction); | ||
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); } } | ||
var _ = require('..'); | ||
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } | ||
var _2 = _interopRequireDefault(_); | ||
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } | ||
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } | ||
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } | ||
@@ -36,7 +36,7 @@ var _global = global, | ||
it = _global.it; | ||
describe('traverse', function () { | ||
it('capitalize all text', function () { | ||
var Foo = function (_React$Component) { | ||
var Foo = | ||
/*#__PURE__*/ | ||
function (_React$Component) { | ||
_inherits(Foo, _React$Component); | ||
@@ -47,22 +47,9 @@ | ||
return _possibleConstructorReturn(this, (Foo.__proto__ || Object.getPrototypeOf(Foo)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(Foo).apply(this, arguments)); | ||
} | ||
_createClass(Foo, [{ | ||
key: 'render', | ||
key: "render", | ||
value: function render() { | ||
return _react2.default.createElement( | ||
'div', | ||
null, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'Foo:' | ||
), | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
this.props.children | ||
) | ||
); | ||
return _react.default.createElement("div", null, _react.default.createElement("span", null, 'Foo:'), _react.default.createElement("span", null, this.props.children)); | ||
} | ||
@@ -72,22 +59,10 @@ }]); | ||
return Foo; | ||
}(_react2.default.Component); | ||
}(_react.default.Component); | ||
function Bar(props) { | ||
return _react2.default.createElement( | ||
'div', | ||
null, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'Bar:' | ||
), | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
props.children | ||
) | ||
); | ||
return _react.default.createElement("div", null, _react.default.createElement("span", null, 'Bar:'), _react.default.createElement("span", null, props.children)); | ||
} | ||
Bar.propTypes = { | ||
children: _propTypes2.default.node | ||
children: _propTypes.default.node | ||
}; | ||
@@ -97,50 +72,6 @@ Bar.defaultProps = { | ||
}; | ||
var original = _react2.default.createElement( | ||
'ul', | ||
null, | ||
_react2.default.createElement( | ||
'li', | ||
null, | ||
'foo' | ||
), | ||
_react2.default.createElement( | ||
'li', | ||
null, | ||
'Bar' | ||
), | ||
_react2.default.createElement( | ||
'li', | ||
null, | ||
'BAZ' | ||
), | ||
_react2.default.createElement( | ||
'li', | ||
null, | ||
'buZZ' | ||
), | ||
_react2.default.createElement( | ||
'li', | ||
null, | ||
_react2.default.createElement( | ||
Foo, | ||
null, | ||
'bazZ' | ||
), | ||
_react2.default.createElement( | ||
Bar, | ||
null, | ||
'fozZ' | ||
) | ||
), | ||
_react2.default.createElement( | ||
'li', | ||
null, | ||
_react2.default.createElement( | ||
'div', | ||
null, | ||
1 | ||
) | ||
) | ||
); | ||
var traversed = (0, _2.default)(original, { | ||
var original = _react.default.createElement("ul", null, _react.default.createElement("li", null, 'foo'), _react.default.createElement("li", null, 'Bar'), _react.default.createElement("li", null, 'BAZ'), _react.default.createElement("li", null, 'buZZ'), _react.default.createElement("li", null, _react.default.createElement(Foo, null, 'bazZ'), _react.default.createElement(Bar, null, 'fozZ')), _react.default.createElement("li", null, _react.default.createElement("div", null, 1))); | ||
var traversed = (0, _.default)(original, { | ||
Text: function Text(path) { | ||
@@ -150,72 +81,11 @@ if (typeof path.node === 'string') { | ||
} | ||
return path.node; | ||
} | ||
}); | ||
var expected = _react2.default.createElement( | ||
'ul', | ||
null, | ||
_react2.default.createElement( | ||
'li', | ||
null, | ||
'FOO' | ||
), | ||
_react2.default.createElement( | ||
'li', | ||
null, | ||
'BAR' | ||
), | ||
_react2.default.createElement( | ||
'li', | ||
null, | ||
'BAZ' | ||
), | ||
_react2.default.createElement( | ||
'li', | ||
null, | ||
'BUZZ' | ||
), | ||
_react2.default.createElement( | ||
'li', | ||
null, | ||
_react2.default.createElement( | ||
'div', | ||
null, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'Foo:' | ||
), | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'BAZZ' | ||
) | ||
), | ||
_react2.default.createElement( | ||
'div', | ||
null, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'Bar:' | ||
), | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'FOZZ' | ||
) | ||
) | ||
), | ||
_react2.default.createElement( | ||
'li', | ||
null, | ||
_react2.default.createElement( | ||
'div', | ||
null, | ||
1 | ||
) | ||
) | ||
); | ||
(0, _asFunction2.default)(_server2.default.renderToStaticMarkup(traversed)).be.exactly(_server2.default.renderToStaticMarkup(expected)); | ||
var expected = _react.default.createElement("ul", null, _react.default.createElement("li", null, 'FOO'), _react.default.createElement("li", null, 'BAR'), _react.default.createElement("li", null, 'BAZ'), _react.default.createElement("li", null, 'BUZZ'), _react.default.createElement("li", null, _react.default.createElement("div", null, _react.default.createElement("span", null, 'Foo:'), _react.default.createElement("span", null, 'BAZZ')), _react.default.createElement("div", null, _react.default.createElement("span", null, 'Bar:'), _react.default.createElement("span", null, 'FOZZ'))), _react.default.createElement("li", null, _react.default.createElement("div", null, 1))); | ||
(0, _asFunction.default)(_server.default.renderToStaticMarkup(traversed)).be.exactly(_server.default.renderToStaticMarkup(expected)); | ||
}); | ||
}); |
@@ -1,45 +0,55 @@ | ||
'use strict'; | ||
"use strict"; | ||
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 _react = _interopRequireDefault(require("react")); | ||
var _react = require('react'); | ||
var _server = _interopRequireDefault(require("react-dom/server")); | ||
var _react2 = _interopRequireDefault(_react); | ||
var _asFunction = _interopRequireDefault(require("should/as-function")); | ||
var _server = require('react-dom/server'); | ||
var _ = _interopRequireWildcard(require("..")); | ||
var _server2 = _interopRequireDefault(_server); | ||
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } | ||
var _asFunction = require('should/as-function'); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
var _asFunction2 = _interopRequireDefault(_asFunction); | ||
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } | ||
var _ = require('..'); | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
var _2 = _interopRequireDefault(_); | ||
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); } } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _createClass(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"); } } | ||
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } | ||
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } | ||
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } | ||
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } | ||
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 _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } | ||
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } | ||
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } | ||
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } | ||
function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } | ||
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } | ||
var _global = global, | ||
describe = _global.describe, | ||
it = _global.it; | ||
describe('wrapRender', function () { | ||
function wrapFoo(node) { | ||
return (0, _2.default)(node, { | ||
return (0, _.default)(node, { | ||
DOMElement: function DOMElement(path) { | ||
var nextProps = Object.assign({}, path.node.props); | ||
if (nextProps.className === 'foo') { | ||
nextProps.className = nextProps.className + ' foo-wrapped'; | ||
nextProps.className = "".concat(nextProps.className, " foo-wrapped"); | ||
} | ||
return _react2.default.cloneElement.apply(_react2.default, [path.node, nextProps].concat(_toConsumableArray(path.traverseChildren()))); | ||
return _react.default.cloneElement.apply(_react.default, [path.node, nextProps].concat(_toConsumableArray(path.traverseChildren()))); | ||
} | ||
@@ -51,11 +61,5 @@ }); | ||
function Foo() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'foo' | ||
) | ||
); | ||
return _react.default.createElement("div", { | ||
className: "foo" | ||
}, _react.default.createElement("span", null, 'foo')); | ||
} | ||
@@ -65,17 +69,14 @@ | ||
var actual = _react2.default.createElement(WrappedFoo, null); | ||
var expected = _react2.default.createElement( | ||
'div', | ||
{ className: 'foo foo-wrapped' }, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'foo' | ||
) | ||
); | ||
(0, _asFunction2.default)(_server2.default.renderToStaticMarkup(actual)).be.exactly(_server2.default.renderToStaticMarkup(expected)); | ||
var actual = _react.default.createElement(WrappedFoo, null); | ||
var expected = _react.default.createElement("div", { | ||
className: "foo foo-wrapped" | ||
}, _react.default.createElement("span", null, 'foo')); | ||
(0, _asFunction.default)(_server.default.renderToStaticMarkup(actual)).be.exactly(_server.default.renderToStaticMarkup(expected)); | ||
}); | ||
it('wraps stateful components', function () { | ||
var Foo = function (_React$Component) { | ||
var Foo = | ||
/*#__PURE__*/ | ||
function (_React$Component) { | ||
_inherits(Foo, _React$Component); | ||
@@ -86,17 +87,11 @@ | ||
return _possibleConstructorReturn(this, (Foo.__proto__ || Object.getPrototypeOf(Foo)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(Foo).apply(this, arguments)); | ||
} | ||
_createClass(Foo, [{ | ||
key: 'render', | ||
key: "render", | ||
value: function render() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'foo' | ||
) | ||
); | ||
return _react.default.createElement("div", { | ||
className: "foo" | ||
}, _react.default.createElement("span", null, 'foo')); | ||
} | ||
@@ -106,23 +101,20 @@ }]); | ||
return Foo; | ||
}(_react2.default.Component); | ||
}(_react.default.Component); | ||
var WrappedFoo = (0, _.wrapRender)(wrapFoo)(Foo); | ||
var actual = _react2.default.createElement(WrappedFoo, null); | ||
var expected = _react2.default.createElement( | ||
'div', | ||
{ className: 'foo foo-wrapped' }, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'foo' | ||
) | ||
); | ||
(0, _asFunction2.default)(_server2.default.renderToStaticMarkup(actual)).be.exactly(_server2.default.renderToStaticMarkup(expected)); | ||
var actual = _react.default.createElement(WrappedFoo, null); | ||
var expected = _react.default.createElement("div", { | ||
className: "foo foo-wrapped" | ||
}, _react.default.createElement("span", null, 'foo')); | ||
(0, _asFunction.default)(_server.default.renderToStaticMarkup(actual)).be.exactly(_server.default.renderToStaticMarkup(expected)); | ||
}); | ||
it('decorates stateful components', function () { | ||
var _dec, _class; | ||
var WrappedFoo = (_dec = (0, _.wrapRender)(wrapFoo), _dec(_class = function (_React$Component2) { | ||
var WrappedFoo = (_dec = (0, _.wrapRender)(wrapFoo), _dec(_class = | ||
/*#__PURE__*/ | ||
function (_React$Component2) { | ||
_inherits(WrappedFoo, _React$Component2); | ||
@@ -133,17 +125,11 @@ | ||
return _possibleConstructorReturn(this, (WrappedFoo.__proto__ || Object.getPrototypeOf(WrappedFoo)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(WrappedFoo).apply(this, arguments)); | ||
} | ||
_createClass(WrappedFoo, [{ | ||
key: 'render', | ||
key: "render", | ||
value: function render() { | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'foo' }, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'foo' | ||
) | ||
); | ||
return _react.default.createElement("div", { | ||
className: "foo" | ||
}, _react.default.createElement("span", null, 'foo')); | ||
} | ||
@@ -153,17 +139,12 @@ }]); | ||
return WrappedFoo; | ||
}(_react2.default.Component)) || _class); | ||
}(_react.default.Component)) || _class); | ||
var actual = _react.default.createElement(WrappedFoo, null); | ||
var actual = _react2.default.createElement(WrappedFoo, null); | ||
var expected = _react2.default.createElement( | ||
'div', | ||
{ className: 'foo foo-wrapped' }, | ||
_react2.default.createElement( | ||
'span', | ||
null, | ||
'foo' | ||
) | ||
); | ||
(0, _asFunction2.default)(_server2.default.renderToStaticMarkup(actual)).be.exactly(_server2.default.renderToStaticMarkup(expected)); | ||
var expected = _react.default.createElement("div", { | ||
className: "foo foo-wrapped" | ||
}, _react.default.createElement("span", null, 'foo')); | ||
(0, _asFunction.default)(_server.default.renderToStaticMarkup(actual)).be.exactly(_server.default.renderToStaticMarkup(expected)); | ||
}); | ||
}); |
@@ -1,2 +0,2 @@ | ||
'use strict'; | ||
"use strict"; | ||
@@ -6,25 +6,33 @@ Object.defineProperty(exports, "__esModule", { | ||
}); | ||
exports.wrapRender = exports.transformComponents = exports.isStatelessComponent = undefined; | ||
Object.defineProperty(exports, "isStatelessComponent", { | ||
enumerable: true, | ||
get: function get() { | ||
return _isStatelessComponent.default; | ||
} | ||
}); | ||
Object.defineProperty(exports, "transformComponents", { | ||
enumerable: true, | ||
get: function get() { | ||
return _transformComponents.default; | ||
} | ||
}); | ||
Object.defineProperty(exports, "wrapRender", { | ||
enumerable: true, | ||
get: function get() { | ||
return _wrapRender.default; | ||
} | ||
}); | ||
exports.default = void 0; | ||
var _isStatelessComponent = require('./isStatelessComponent'); | ||
var _isStatelessComponent = _interopRequireDefault(require("./isStatelessComponent")); | ||
var _isStatelessComponent2 = _interopRequireDefault(_isStatelessComponent); | ||
var _traverse = _interopRequireDefault(require("./traverse")); | ||
var _traverse = require('./traverse'); | ||
var _transformComponents = _interopRequireDefault(require("./transformComponents")); | ||
var _traverse2 = _interopRequireDefault(_traverse); | ||
var _wrapRender = _interopRequireDefault(require("./wrapRender")); | ||
var _transformComponents = require('./transformComponents'); | ||
var _transformComponents2 = _interopRequireDefault(_transformComponents); | ||
var _wrapRender = require('./wrapRender'); | ||
var _wrapRender2 = _interopRequireDefault(_wrapRender); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
exports.isStatelessComponent = _isStatelessComponent2.default; | ||
exports.transformComponents = _transformComponents2.default; | ||
exports.wrapRender = _wrapRender2.default; | ||
exports.default = _traverse2.default; | ||
var _default = _traverse.default; | ||
exports.default = _default; |
@@ -1,2 +0,2 @@ | ||
'use strict'; | ||
"use strict"; | ||
@@ -7,4 +7,5 @@ Object.defineProperty(exports, "__esModule", { | ||
exports.default = isStatelessComponent; | ||
function isStatelessComponent(type) { | ||
return typeof type.prototype === 'undefined' || typeof type.prototype.render !== 'function'; | ||
} |
@@ -1,2 +0,2 @@ | ||
'use strict'; | ||
"use strict"; | ||
@@ -9,18 +9,12 @@ Object.defineProperty(exports, "__esModule", { | ||
var _react = require('react'); | ||
var _react = _interopRequireDefault(require("react")); | ||
var _react2 = _interopRequireDefault(_react); | ||
var _traverse = _interopRequireDefault(require("./traverse")); | ||
var _traverse = require('./traverse'); | ||
var _wrapRender = _interopRequireDefault(require("./wrapRender")); | ||
var _traverse2 = _interopRequireDefault(_traverse); | ||
var _wrapRender = require('./wrapRender'); | ||
var _wrapRender2 = _interopRequireDefault(_wrapRender); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function transformComponentsInNode(node, transformComponent) { | ||
return (0, _traverse2.default)(node, { | ||
return (0, _traverse.default)(node, { | ||
ComponentElement: function ComponentElement(path) { | ||
@@ -30,4 +24,3 @@ var _path$node = path.node, | ||
props = _path$node.props; | ||
return _react2.default.createElement(transformComponent(type), props); | ||
return _react.default.createElement(transformComponent(type), props); | ||
} | ||
@@ -38,2 +31,3 @@ }); | ||
var transformComponentsMemo = new WeakMap(); | ||
function transformComponents(transformComponent) { | ||
@@ -43,2 +37,3 @@ if (!transformComponentsMemo.has(transformComponent)) { | ||
} | ||
var transformComponentMemo = transformComponentsMemo.get(transformComponent); | ||
@@ -49,9 +44,10 @@ return function (type) { | ||
} | ||
if (!transformComponentMemo.has(type)) { | ||
if (_react2.default.isValidElement(type)) { | ||
transformComponentMemo.set(type, _react2.default.createElement(transformComponents(transformComponent)(function () { | ||
if (_react.default.isValidElement(type)) { | ||
transformComponentMemo.set(type, _react.default.createElement(transformComponents(transformComponent)(function () { | ||
return type; | ||
}))); | ||
} else { | ||
transformComponentMemo.set(type, transformComponent((0, _wrapRender2.default)(function (node) { | ||
transformComponentMemo.set(type, transformComponent((0, _wrapRender.default)(function (node) { | ||
return transformComponentsInNode(node, function (childType) { | ||
@@ -63,4 +59,5 @@ return transformComponents(transformComponent)(childType); | ||
} | ||
return transformComponentMemo.get(type); | ||
}; | ||
} |
@@ -1,2 +0,2 @@ | ||
'use strict'; | ||
"use strict"; | ||
@@ -6,13 +6,18 @@ Object.defineProperty(exports, "__esModule", { | ||
}); | ||
exports.default = exports.defaultTraverse = undefined; | ||
exports.kindOf = kindOf; | ||
exports.defaultTraverse = _defaultTraverse; | ||
exports.default = _traverse; | ||
var _react = require('react'); | ||
var _react = _interopRequireDefault(require("react")); | ||
var _react2 = _interopRequireDefault(_react); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
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 _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } | ||
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } | ||
function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } | ||
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } | ||
function kindOf(node) { | ||
@@ -22,8 +27,11 @@ if (node === null || node === void 0 || typeof node === 'boolean') { | ||
} | ||
if (typeof node === 'string' || typeof node === 'number') { | ||
return 'Text'; | ||
} | ||
if (Array.isArray(node)) { | ||
return 'Fragment'; | ||
} | ||
var type = node.type; | ||
@@ -34,2 +42,3 @@ | ||
} | ||
return 'ComponentElement'; | ||
@@ -40,27 +49,29 @@ } | ||
var kind = kindOf(path.node); | ||
if (kind === 'Empty') { | ||
return path.node; | ||
} | ||
if (kind === 'Text') { | ||
return path.node; | ||
} | ||
if (kind === 'Fragment') { | ||
return path.node.map(path.traverse); | ||
} | ||
return _react2.default.cloneElement.apply(_react2.default, [path.node, path.node.props].concat(_toConsumableArray(path.traverseChildren()))); | ||
return _react.default.cloneElement.apply(_react.default, [path.node, path.node.props].concat(_toConsumableArray(path.traverseChildren()))); | ||
} | ||
exports.defaultTraverse = _defaultTraverse; | ||
function _traverse(node, visitor) { | ||
var _visitor$Empty = visitor.Empty, | ||
Empty = _visitor$Empty === undefined ? _defaultTraverse : _visitor$Empty, | ||
Empty = _visitor$Empty === void 0 ? _defaultTraverse : _visitor$Empty, | ||
_visitor$Text = visitor.Text, | ||
Text = _visitor$Text === undefined ? _defaultTraverse : _visitor$Text, | ||
Text = _visitor$Text === void 0 ? _defaultTraverse : _visitor$Text, | ||
_visitor$Fragment = visitor.Fragment, | ||
Fragment = _visitor$Fragment === undefined ? _defaultTraverse : _visitor$Fragment, | ||
Fragment = _visitor$Fragment === void 0 ? _defaultTraverse : _visitor$Fragment, | ||
_visitor$DOMElement = visitor.DOMElement, | ||
DOMElement = _visitor$DOMElement === undefined ? _defaultTraverse : _visitor$DOMElement, | ||
DOMElement = _visitor$DOMElement === void 0 ? _defaultTraverse : _visitor$DOMElement, | ||
_visitor$ComponentEle = visitor.ComponentElement, | ||
ComponentElement = _visitor$ComponentEle === undefined ? _defaultTraverse : _visitor$ComponentEle; | ||
ComponentElement = _visitor$ComponentEle === void 0 ? _defaultTraverse : _visitor$ComponentEle; | ||
var path = { | ||
@@ -74,3 +85,2 @@ node: node, | ||
var childVisitor = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : visitor; | ||
return _traverse(childNode, childVisitor); | ||
@@ -80,19 +90,21 @@ }, | ||
var childVisitor = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : visitor; | ||
return _react2.default.Children.toArray(path.node.props.children).map(function (childNode) { | ||
return _react.default.Children.toArray(path.node.props.children).map(function (childNode) { | ||
return path.traverse(childNode, childVisitor); | ||
}); | ||
}, | ||
visitor: visitor | ||
}; | ||
if (node === null || node === void 0 || typeof node === 'boolean') { | ||
return Empty(path); // eslint-disable-line new-cap | ||
} | ||
if (typeof node === 'string' || typeof node === 'number') { | ||
return Text(path); // eslint-disable-line new-cap | ||
} | ||
if (Array.isArray(node)) { | ||
return Fragment(path); // eslint-disable-line new-cap | ||
} | ||
var type = node.type; | ||
@@ -103,4 +115,4 @@ | ||
} | ||
return ComponentElement(path); // eslint-disable-line new-cap | ||
} | ||
exports.default = _traverse; | ||
} |
@@ -1,2 +0,2 @@ | ||
'use strict'; | ||
"use strict"; | ||
@@ -6,26 +6,34 @@ Object.defineProperty(exports, "__esModule", { | ||
}); | ||
exports.default = wrapRender; | ||
var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } }; | ||
var _react = _interopRequireDefault(require("react")); | ||
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 _isStatelessComponent = _interopRequireDefault(require("./isStatelessComponent")); | ||
exports.default = wrapRender; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
var _react = require('react'); | ||
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } | ||
var _react2 = _interopRequireDefault(_react); | ||
function _get(target, property, receiver) { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); } | ||
var _isStatelessComponent = require('./isStatelessComponent'); | ||
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; } | ||
var _isStatelessComponent2 = _interopRequireDefault(_isStatelessComponent); | ||
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 _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); } } | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } | ||
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } | ||
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } | ||
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } | ||
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } | ||
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } | ||
var wrapRenderMemo = new WeakMap(); | ||
function wrapRender(transformNode) { | ||
@@ -35,2 +43,3 @@ if (!wrapRenderMemo.has(transformNode)) { | ||
} | ||
var memo = wrapRenderMemo.get(transformNode); | ||
@@ -40,4 +49,6 @@ return function (type) { | ||
memo.set(type, function () { | ||
if ((0, _isStatelessComponent2.default)(type)) { | ||
var klass = function (_React$Component) { | ||
if ((0, _isStatelessComponent.default)(type)) { | ||
var klass = | ||
/*#__PURE__*/ | ||
function (_React$Component) { | ||
_inherits(klass, _React$Component); | ||
@@ -48,7 +59,7 @@ | ||
return _possibleConstructorReturn(this, (klass.__proto__ || Object.getPrototypeOf(klass)).apply(this, arguments)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(klass).apply(this, arguments)); | ||
} | ||
_createClass(klass, [{ | ||
key: 'render', | ||
key: "render", | ||
value: function render() { | ||
@@ -60,3 +71,3 @@ return transformNode(type(this.props)); | ||
return klass; | ||
}(_react2.default.Component); | ||
}(_react.default.Component); | ||
@@ -67,24 +78,29 @@ klass.displayName = type.displayName || type.name; | ||
} | ||
return function (_type) { | ||
_inherits(_class, _type); | ||
function _class() { | ||
_classCallCheck(this, _class); | ||
return ( | ||
/*#__PURE__*/ | ||
function (_type) { | ||
_inherits(_class, _type); | ||
return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments)); | ||
} | ||
function _class() { | ||
_classCallCheck(this, _class); | ||
_createClass(_class, [{ | ||
key: 'render', | ||
value: function render() { | ||
return transformNode(_get(_class.prototype.__proto__ || Object.getPrototypeOf(_class.prototype), 'render', this).call(this)); | ||
return _possibleConstructorReturn(this, _getPrototypeOf(_class).apply(this, arguments)); | ||
} | ||
}]); | ||
return _class; | ||
}(type); | ||
_createClass(_class, [{ | ||
key: "render", | ||
value: function render() { | ||
return transformNode(_get(_getPrototypeOf(_class.prototype), "render", this).call(this)); | ||
} | ||
}]); | ||
return _class; | ||
}(type) | ||
); | ||
}()); | ||
} | ||
return memo.get(type); | ||
}; | ||
} |
{ | ||
"name": "@simple-contacts/react-traverse", | ||
"version": "1.0.10", | ||
"version": "2.0.0", | ||
"description": "React Nodes and Components Traversal", | ||
"main": "dist/index.js", | ||
"scripts": { | ||
"test": "eslint . && mocha --compilers js:babel-core/register ./src/__tests__/*.js", | ||
"test": "eslint . && mocha --compilers js:@babel/register ./src/__tests__/*.js", | ||
"build": "babel src --out-dir dist", | ||
@@ -12,11 +12,12 @@ "precommit": "lint-staged" | ||
"devDependencies": { | ||
"babel-cli": "6.26.0", | ||
"babel-core": "^6.24.1", | ||
"babel-eslint": "^8.2.3", | ||
"@babel/cli": "^7.4.4", | ||
"@babel/core": "^7.4.4", | ||
"@babel/plugin-proposal-decorators": "^7.4.4", | ||
"@babel/plugin-proposal-object-rest-spread": "^7.4.4", | ||
"@babel/polyfill": "^7.4.4", | ||
"@babel/preset-env": "^7.4.4", | ||
"@babel/register": "7.4.4", | ||
"babel-eslint": "^10.0.1", | ||
"babel-plugin-react-display-name": "^2.0.0", | ||
"babel-plugin-transform-decorators-legacy": "^1.3.4", | ||
"babel-plugin-transform-object-rest-spread": "^6.23.0", | ||
"babel-polyfill": "^6.23.0", | ||
"babel-preset-env": "^1.5.1", | ||
"babel-preset-react": "^6.24.1", | ||
"babel-preset-react": "^7.0.0-beta.3", | ||
"eslint": "^4.19.1", | ||
@@ -33,2 +34,3 @@ "eslint-config-airbnb": "^16.1.0", | ||
"prettier": "1.13.3", | ||
"prop-types": "^15.6.1", | ||
"react": "^16", | ||
@@ -39,5 +41,3 @@ "react-dom": "^16", | ||
}, | ||
"dependencies": { | ||
"prop-types": "^15.6.1" | ||
}, | ||
"dependencies": {}, | ||
"lint-staged": { | ||
@@ -44,0 +44,0 @@ "*.js": [ |
Sorry, the diff of this file is not supported yet
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
60567
1
26
972
1
- Removedprop-types@^15.6.1