diff --git a/dist/component-playground.js b/dist/component-playground.js index 17472cf..c949b16 100644 --- a/dist/component-playground.js +++ b/dist/component-playground.js @@ -7,7 +7,7 @@ exports["ComponentPlayground"] = factory(require("react"), require("react-dom")); else root["ComponentPlayground"] = factory(root["React"], root["ReactDom"]); -})(this, function(__WEBPACK_EXTERNAL_MODULE_300__, __WEBPACK_EXTERNAL_MODULE_310__) { +})(this, function(__WEBPACK_EXTERNAL_MODULE_299__, __WEBPACK_EXTERNAL_MODULE_309__) { return /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; @@ -78,136 +78,169 @@ return /******/ (function(modules) { // webpackBootstrap 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; }; }(); + __webpack_require__(3); - var _react = __webpack_require__(300); + var _react = __webpack_require__(299); var _react2 = _interopRequireDefault(_react); - var _editor = __webpack_require__(301); + var _editor = __webpack_require__(300); var _editor2 = _interopRequireDefault(_editor); - var _preview = __webpack_require__(309); + var _preview = __webpack_require__(308); var _preview2 = _interopRequireDefault(_preview); - var _es6Preview = __webpack_require__(469); + var _es6Preview = __webpack_require__(474); var _es6Preview2 = _interopRequireDefault(_es6Preview); - var _doc = __webpack_require__(470); + var _doc = __webpack_require__(475); var _doc2 = _interopRequireDefault(_doc); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - /* eslint no-unused-vars:0 */ - - var ReactPlayground = _react2.default.createClass({ - displayName: "ReactPlayground", - - propTypes: { - codeText: _react2.default.PropTypes.string.isRequired, - scope: _react2.default.PropTypes.object.isRequired, - collapsableCode: _react2.default.PropTypes.bool, - docClass: _react2.default.PropTypes.func, - propDescriptionMap: _react2.default.PropTypes.object, - theme: _react2.default.PropTypes.string, - selectedLines: _react2.default.PropTypes.array, - noRender: _react2.default.PropTypes.bool, - es6Console: _react2.default.PropTypes.bool, - context: _react2.default.PropTypes.object, - initiallyExpanded: _react2.default.PropTypes.bool, - previewComponent: _react2.default.PropTypes.node - }, + function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - getDefaultProps: function getDefaultProps() { - return { - theme: "monokai", - noRender: true, - context: {}, - initiallyExpanded: false - }; - }, - getInitialState: function getInitialState() { - return { - code: this.props.codeText, - expandedCode: this.props.initiallyExpanded, - external: true - }; - }, - componentWillReceiveProps: function componentWillReceiveProps(nextProps) { - this.setState({ - code: nextProps.codeText, + 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, 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; } /* eslint no-unused-vars:0 */ + + + var ReactPlayground = function (_Component) { + _inherits(ReactPlayground, _Component); + + function ReactPlayground() { + var _Object$getPrototypeO; + + var _temp, _this, _ret; + + _classCallCheck(this, ReactPlayground); + + for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_Object$getPrototypeO = Object.getPrototypeOf(ReactPlayground)).call.apply(_Object$getPrototypeO, [this].concat(args))), _this), _this.state = { + code: _this.props.codeText, + expandedCode: _this.props.initiallyExpanded, external: true - }); - }, - _handleCodeChange: function _handleCodeChange(code) { - this.setState({ - code: code, - external: false - }); - }, - _toggleCode: function _toggleCode() { - this.setState({ - expandedCode: !this.state.expandedCode - }); - }, - render: function render() { - if (this.props.noRender === false) { - if (process.env.NODE_ENV !== "production") { - /* eslint-disable no-console, no-undef, max-len */ - if (typeof console !== "undefined" && console.warn) { - console.warn("\n Deprecation warning: noRender is being deprecated in favor of wrapped components and will be removed in the 1.x release.\n https://github.com/FormidableLabs/component-playground/issues/19 for details.\n "); + }, _this.componentWillReceiveProps = function (nextProps) { + _this.setState({ + code: nextProps.codeText, + external: true + }); + }, _this._handleCodeChange = function (code) { + _this.setState({ + code: code, + external: false + }); + }, _this._toggleCode = function () { + _this.setState({ + expandedCode: !_this.state.expandedCode + }); + }, _temp), _possibleConstructorReturn(_this, _ret); + } + + _createClass(ReactPlayground, [{ + key: "render", + value: function render() { + var _state = this.state; + var code = _state.code; + var external = _state.external; + var expandedCode = _state.expandedCode; + var _props = this.props; + var collapsableCode = _props.collapsableCode; + var context = _props.context; + var docClass = _props.docClass; + var es6Console = _props.es6Console; + var noRender = _props.noRender; + var previewComponent = _props.previewComponent; + var propDescriptionMap = _props.propDescriptionMap; + var scope = _props.scope; + var selectedLines = _props.selectedLines; + var theme = _props.theme; + + + if (this.props.noRender === false) { + if (process.env.NODE_ENV !== "production") { + /* eslint-disable no-console, no-undef, max-len */ + if (typeof console !== "undefined" && console.warn) { + console.warn("\n Deprecation warning: noRender is being deprecated in favor of wrapped components and will be removed in the 1.x release.\n https://github.com/FormidableLabs/component-playground/issues/19 for details.\n "); + } + /* eslint-enable no-console, no-undef, max-len */ } - /* eslint-enable no-console, no-undef, max-len */ } - } - return _react2.default.createElement( - "div", - { className: "playground" + (this.props.collapsableCode ? " collapsableCode" : "") }, - this.props.docClass ? _react2.default.createElement(_doc2.default, { - componentClass: this.props.docClass, - propDescriptionMap: this.props.propDescriptionMap }) : "", - _react2.default.createElement( + return _react2.default.createElement( "div", - { className: "playgroundCode" + (this.state.expandedCode ? " expandedCode" : "") }, - _react2.default.createElement(_editor2.default, { - className: "playgroundStage", - codeText: this.state.code, - external: this.state.external, - onChange: this._handleCodeChange, - selectedLines: this.props.selectedLines, - theme: this.props.theme - }) - ), - this.props.collapsableCode ? _react2.default.createElement( - "div", - { className: "playgroundToggleCodeBar" }, + { className: "playground" + (collapsableCode ? " collapsableCode" : "") }, + docClass ? _react2.default.createElement(_doc2.default, { + componentClass: docClass, + propDescriptionMap: propDescriptionMap }) : null, _react2.default.createElement( - "span", - { className: "playgroundToggleCodeLink", onClick: this._toggleCode }, - this.state.expandedCode ? "collapse" : "expand" + "div", + { className: "playgroundCode" + (expandedCode ? " expandedCode" : "") }, + _react2.default.createElement(_editor2.default, { + className: "playgroundStage", + codeText: code, + external: external, + onChange: this._handleCodeChange, + selectedLines: selectedLines, + theme: theme }) + ), + collapsableCode ? _react2.default.createElement( + "div", + { className: "playgroundToggleCodeBar" }, + _react2.default.createElement( + "span", + { className: "playgroundToggleCodeLink", onClick: this._toggleCode }, + expandedCode ? "collapse" : "expand" + ) + ) : null, + _react2.default.createElement( + "div", + { className: "playgroundPreview" }, + es6Console ? _react2.default.createElement(_es6Preview2.default, { + code: code, + scope: scope }) : _react2.default.createElement(_preview2.default, { + context: context, + code: code, + scope: scope, + noRender: noRender, + previewComponent: previewComponent }) ) - ) : "", - _react2.default.createElement( - "div", - { className: "playgroundPreview" }, - this.props.es6Console ? _react2.default.createElement(_es6Preview2.default, { - code: this.state.code, - scope: this.props.scope }) : _react2.default.createElement(_preview2.default, { - context: this.props.context, - code: this.state.code, - scope: this.props.scope, - noRender: this.props.noRender, - previewComponent: this.props.previewComponent }) - ) - ); - } - }); + ); + } + }]); + return ReactPlayground; + }(_react.Component); + + ReactPlayground.defaultProps = { + theme: "monokai", + noRender: true, + context: {}, + initiallyExpanded: false + }; + ReactPlayground.propTypes = { + codeText: _react.PropTypes.string.isRequired, + scope: _react.PropTypes.object.isRequired, + collapsableCode: _react.PropTypes.bool, + docClass: _react.PropTypes.func, + propDescriptionMap: _react.PropTypes.object, + theme: _react.PropTypes.string, + selectedLines: _react.PropTypes.array, + noRender: _react.PropTypes.bool, + es6Console: _react.PropTypes.bool, + context: _react.PropTypes.object, + initiallyExpanded: _react.PropTypes.bool, + previewComponent: _react.PropTypes.node + }; exports.default = ReactPlayground; /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(2))) @@ -216,8 +249,46 @@ return /******/ (function(modules) { // webpackBootstrap /***/ function(module, exports) { // shim for using process in browser - var process = module.exports = {}; + + // cached from whatever global is present so that test runners that stub it + // don't break things. But we need to wrap it in a try catch in case it is + // wrapped in strict mode code which doesn't define any globals. It's inside a + // function because try/catches deoptimize in certain engines. + + var cachedSetTimeout; + var cachedClearTimeout; + + (function () { + try { + cachedSetTimeout = setTimeout; + } catch (e) { + cachedSetTimeout = function () { + throw new Error('setTimeout is not defined'); + } + } + try { + cachedClearTimeout = clearTimeout; + } catch (e) { + cachedClearTimeout = function () { + throw new Error('clearTimeout is not defined'); + } + } + } ()) + function runTimeout(fun) { + if (cachedSetTimeout === setTimeout) { + return setTimeout(fun, 0); + } else { + return cachedSetTimeout.call(null, fun, 0); + } + } + function runClearTimeout(marker) { + if (cachedClearTimeout === clearTimeout) { + clearTimeout(marker); + } else { + cachedClearTimeout.call(null, marker); + } + } var queue = []; var draining = false; var currentQueue; @@ -242,7 +313,7 @@ return /******/ (function(modules) { // webpackBootstrap if (draining) { return; } - var timeout = setTimeout(cleanUpNextTick); + var timeout = runTimeout(cleanUpNextTick); draining = true; var len = queue.length; @@ -259,7 +330,7 @@ return /******/ (function(modules) { // webpackBootstrap } currentQueue = null; draining = false; - clearTimeout(timeout); + runClearTimeout(timeout); } process.nextTick = function (fun) { @@ -271,7 +342,7 @@ return /******/ (function(modules) { // webpackBootstrap } queue.push(new Item(fun, args)); if (queue.length === 1 && !draining) { - setTimeout(drainQueue, 0); + runTimeout(drainQueue); } }; @@ -319,9 +390,9 @@ return /******/ (function(modules) { // webpackBootstrap __webpack_require__(4); - __webpack_require__(296); + __webpack_require__(295); - __webpack_require__(297); + __webpack_require__(296); /* eslint max-len: 0 */ @@ -378,23 +449,24 @@ return /******/ (function(modules) { // webpackBootstrap __webpack_require__(87); __webpack_require__(89); __webpack_require__(91); + __webpack_require__(94); __webpack_require__(95); __webpack_require__(96); __webpack_require__(97); - __webpack_require__(98); + __webpack_require__(99); __webpack_require__(100); __webpack_require__(101); __webpack_require__(102); __webpack_require__(103); __webpack_require__(104); __webpack_require__(105); - __webpack_require__(106); + __webpack_require__(107); __webpack_require__(108); __webpack_require__(109); - __webpack_require__(110); + __webpack_require__(111); __webpack_require__(112); __webpack_require__(113); - __webpack_require__(114); + __webpack_require__(115); __webpack_require__(116); __webpack_require__(117); __webpack_require__(118); @@ -408,13 +480,13 @@ return /******/ (function(modules) { // webpackBootstrap __webpack_require__(126); __webpack_require__(127); __webpack_require__(128); - __webpack_require__(129); + __webpack_require__(133); __webpack_require__(134); - __webpack_require__(135); + __webpack_require__(138); __webpack_require__(139); __webpack_require__(140); __webpack_require__(141); - __webpack_require__(142); + __webpack_require__(143); __webpack_require__(144); __webpack_require__(145); __webpack_require__(146); @@ -431,36 +503,35 @@ return /******/ (function(modules) { // webpackBootstrap __webpack_require__(157); __webpack_require__(158); __webpack_require__(159); - __webpack_require__(160); + __webpack_require__(161); __webpack_require__(162); - __webpack_require__(163); + __webpack_require__(168); __webpack_require__(169); - __webpack_require__(170); + __webpack_require__(171); __webpack_require__(172); __webpack_require__(173); - __webpack_require__(174); + __webpack_require__(177); __webpack_require__(178); __webpack_require__(179); __webpack_require__(180); __webpack_require__(181); - __webpack_require__(182); + __webpack_require__(183); __webpack_require__(184); __webpack_require__(185); __webpack_require__(186); - __webpack_require__(187); - __webpack_require__(190); + __webpack_require__(189); + __webpack_require__(191); __webpack_require__(192); __webpack_require__(193); - __webpack_require__(194); - __webpack_require__(196); - __webpack_require__(198); + __webpack_require__(195); + __webpack_require__(197); + __webpack_require__(199); __webpack_require__(200); __webpack_require__(201); - __webpack_require__(202); + __webpack_require__(203); __webpack_require__(204); __webpack_require__(205); __webpack_require__(206); - __webpack_require__(207); __webpack_require__(213); __webpack_require__(216); __webpack_require__(217); @@ -468,6 +539,7 @@ return /******/ (function(modules) { // webpackBootstrap __webpack_require__(220); __webpack_require__(223); __webpack_require__(224); + __webpack_require__(226); __webpack_require__(227); __webpack_require__(228); __webpack_require__(229); @@ -486,13 +558,13 @@ return /******/ (function(modules) { // webpackBootstrap __webpack_require__(242); __webpack_require__(243); __webpack_require__(244); - __webpack_require__(245); + __webpack_require__(246); __webpack_require__(247); __webpack_require__(248); __webpack_require__(249); __webpack_require__(250); __webpack_require__(251); - __webpack_require__(252); + __webpack_require__(253); __webpack_require__(254); __webpack_require__(255); __webpack_require__(256); @@ -500,13 +572,13 @@ return /******/ (function(modules) { // webpackBootstrap __webpack_require__(258); __webpack_require__(259); __webpack_require__(260); - __webpack_require__(261); + __webpack_require__(262); __webpack_require__(263); - __webpack_require__(264); + __webpack_require__(265); __webpack_require__(266); __webpack_require__(267); __webpack_require__(268); - __webpack_require__(269); + __webpack_require__(271); __webpack_require__(272); __webpack_require__(273); __webpack_require__(274); @@ -514,7 +586,7 @@ return /******/ (function(modules) { // webpackBootstrap __webpack_require__(276); __webpack_require__(277); __webpack_require__(278); - __webpack_require__(279); + __webpack_require__(280); __webpack_require__(281); __webpack_require__(282); __webpack_require__(283); @@ -525,9 +597,8 @@ return /******/ (function(modules) { // webpackBootstrap __webpack_require__(288); __webpack_require__(289); __webpack_require__(290); - __webpack_require__(291); + __webpack_require__(293); __webpack_require__(294); - __webpack_require__(295); module.exports = __webpack_require__(11); /***/ }, @@ -920,8 +991,8 @@ return /******/ (function(modules) { // webpackBootstrap /* 16 */ /***/ function(module, exports, __webpack_require__) { - module.exports = !__webpack_require__(8) && !__webpack_require__(9)(function(){ - return Object.defineProperty(__webpack_require__(17)('div'), 'a', {get: function(){ return 7; }}).a != 7; + module.exports = !__webpack_require__(8) && !__webpack_require__(9)(function(){ + return Object.defineProperty(__webpack_require__(17)('div'), 'a', {get: function(){ return 7; }}).a != 7; }); /***/ }, @@ -1154,14 +1225,14 @@ return /******/ (function(modules) { // webpackBootstrap /* 29 */ /***/ function(module, exports, __webpack_require__) { - var global = __webpack_require__(6) - , core = __webpack_require__(11) - , LIBRARY = __webpack_require__(30) - , wksExt = __webpack_require__(28) - , defineProperty = __webpack_require__(13).f; - module.exports = function(name){ - var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); - if(name.charAt(0) != '_' && !(name in $Symbol))defineProperty($Symbol, name, {value: wksExt.f(name)}); + var global = __webpack_require__(6) + , core = __webpack_require__(11) + , LIBRARY = __webpack_require__(30) + , wksExt = __webpack_require__(28) + , defineProperty = __webpack_require__(13).f; + module.exports = function(name){ + var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); + if(name.charAt(0) != '_' && !(name in $Symbol))defineProperty($Symbol, name, {value: wksExt.f(name)}); }; /***/ }, @@ -1189,34 +1260,34 @@ return /******/ (function(modules) { // webpackBootstrap /* 32 */ /***/ function(module, exports, __webpack_require__) { - // 19.1.2.14 / 15.2.3.14 Object.keys(O) - var $keys = __webpack_require__(33) - , enumBugKeys = __webpack_require__(43); - - module.exports = Object.keys || function keys(O){ - return $keys(O, enumBugKeys); + // 19.1.2.14 / 15.2.3.14 Object.keys(O) + var $keys = __webpack_require__(33) + , enumBugKeys = __webpack_require__(43); + + module.exports = Object.keys || function keys(O){ + return $keys(O, enumBugKeys); }; /***/ }, /* 33 */ /***/ function(module, exports, __webpack_require__) { - var has = __webpack_require__(7) - , toIObject = __webpack_require__(34) - , arrayIndexOf = __webpack_require__(38)(false) - , IE_PROTO = __webpack_require__(42)('IE_PROTO'); - - module.exports = function(object, names){ - var O = toIObject(object) - , i = 0 - , result = [] - , key; - for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key); - // Don't enum bug & hidden keys - while(names.length > i)if(has(O, key = names[i++])){ - ~arrayIndexOf(result, key) || result.push(key); - } - return result; + var has = __webpack_require__(7) + , toIObject = __webpack_require__(34) + , arrayIndexOf = __webpack_require__(38)(false) + , IE_PROTO = __webpack_require__(42)('IE_PROTO'); + + module.exports = function(object, names){ + var O = toIObject(object) + , i = 0 + , result = [] + , key; + for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key); + // Don't enum bug & hidden keys + while(names.length > i)if(has(O, key = names[i++])){ + ~arrayIndexOf(result, key) || result.push(key); + } + return result; }; /***/ }, @@ -1324,19 +1395,19 @@ return /******/ (function(modules) { // webpackBootstrap /* 42 */ /***/ function(module, exports, __webpack_require__) { - var shared = __webpack_require__(25)('keys') - , uid = __webpack_require__(21); - module.exports = function(key){ - return shared[key] || (shared[key] = uid(key)); + var shared = __webpack_require__(25)('keys') + , uid = __webpack_require__(21); + module.exports = function(key){ + return shared[key] || (shared[key] = uid(key)); }; /***/ }, /* 43 */ /***/ function(module, exports) { - // IE 8- don't enum bug keys - module.exports = ( - 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' + // IE 8- don't enum bug keys + module.exports = ( + 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' ).split(','); /***/ }, @@ -1385,63 +1456,65 @@ return /******/ (function(modules) { // webpackBootstrap /* 48 */ /***/ function(module, exports, __webpack_require__) { - // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) - var anObject = __webpack_require__(14) - , dPs = __webpack_require__(49) - , enumBugKeys = __webpack_require__(43) - , IE_PROTO = __webpack_require__(42)('IE_PROTO') - , Empty = function(){ /* empty */ } - , PROTOTYPE = 'prototype'; - - // Create object with fake `null` prototype: use iframe Object with cleared prototype - var createDict = function(){ - // Thrash, waste and sodomy: IE GC bug - var iframe = __webpack_require__(17)('iframe') - , i = enumBugKeys.length - , gt = '>' - , iframeDocument; - iframe.style.display = 'none'; - __webpack_require__(50).appendChild(iframe); - iframe.src = 'javascript:'; // eslint-disable-line no-script-url - // createDict = iframe.contentWindow.Object; - // html.removeChild(iframe); - iframeDocument = iframe.contentWindow.document; - iframeDocument.open(); - iframeDocument.write('