diff --git a/assets/js/components/Alert.jsx b/assets/js/components/Alert.jsx index 5afd0d5..650bcf3 100644 --- a/assets/js/components/Alert.jsx +++ b/assets/js/components/Alert.jsx @@ -1,7 +1,8 @@ var React = require('react'); +var reactCreateClass = require('create-react-class'); var classNames = require('classnames'); -var Alert = React.createClass({ +var Alert = reactCreateClass({ propTypes: { type: React.PropTypes.string.isRequired, diff --git a/assets/js/components/MainList.jsx b/assets/js/components/MainList.jsx index c01b3c5..e1bb27c 100644 --- a/assets/js/components/MainList.jsx +++ b/assets/js/components/MainList.jsx @@ -1,8 +1,9 @@ /* global browser */ var React = require('react'); +var reactCreateClass = require('create-react-class'); -var MainList = React.createClass({ +var MainList = reactCreateClass({ _openOptionsPage: function() { if (browser.runtime.openOptionsPage) { diff --git a/assets/js/components/NavBar.jsx b/assets/js/components/NavBar.jsx index 5b2e09a..e10562e 100644 --- a/assets/js/components/NavBar.jsx +++ b/assets/js/components/NavBar.jsx @@ -1,6 +1,7 @@ var React = require('react'); +var reactCreateClass = require('create-react-class'); -var NavBar = React.createClass({ +var NavBar = reactCreateClass({ render: function() { diff --git a/assets/js/components/Options.jsx b/assets/js/components/Options.jsx index dec8dab..550afe7 100644 --- a/assets/js/components/Options.jsx +++ b/assets/js/components/Options.jsx @@ -1,6 +1,7 @@ /* global browser */ var React = require('react'); +var reactCreateClass = require('create-react-class'); var ReactCSSTransitionGroup = require('react-addons-css-transition-group'); var config = require('../config'); @@ -15,7 +16,7 @@ var SitesList = require('./SitesList.jsx'); * * @type {*|Function} */ -var Options = React.createClass({ +var Options = reactCreateClass({ getInitialState: function () { return { diff --git a/assets/js/components/SitesList.jsx b/assets/js/components/SitesList.jsx index 276f6e0..af0eb67 100644 --- a/assets/js/components/SitesList.jsx +++ b/assets/js/components/SitesList.jsx @@ -1,6 +1,7 @@ var React = require('react'); +var reactCreateClass = require('create-react-class'); -var SitesList = React.createClass({ +var SitesList = reactCreateClass({ getDefaultProps: function () { return { diff --git a/assets/js/components/WakaTime.jsx b/assets/js/components/WakaTime.jsx index 1cbaf32..5d40db7 100644 --- a/assets/js/components/WakaTime.jsx +++ b/assets/js/components/WakaTime.jsx @@ -1,6 +1,7 @@ /* global browser */ var React = require("react"); +var reactCreateClass = require('create-react-class'); var $ = require('jquery'); var config = require('../config'); @@ -15,7 +16,7 @@ var WakaTimeCore = require('../core/WakaTimeCore').default; // Helpers var changeExtensionState = require('../helpers/changeExtensionState'); -var Wakatime = React.createClass({ +var Wakatime = reactCreateClass({ getInitialState: function() { return { diff --git a/assets/js/core/WakaTimeCore.js b/assets/js/core/WakaTimeCore.js index 8445e7a..8391426 100644 --- a/assets/js/core/WakaTimeCore.js +++ b/assets/js/core/WakaTimeCore.js @@ -284,4 +284,4 @@ class WakaTimeCore { } -//export default WakaTimeCore; +export default WakaTimeCore; diff --git a/package-lock.json b/package-lock.json index 9a03979..71a464c 100755 --- a/package-lock.json +++ b/package-lock.json @@ -792,8 +792,7 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "dev": true, - "optional": true + "dev": true }, "asn1": { "version": "0.2.4", @@ -2780,6 +2779,17 @@ "sha.js": "2.4.11" } }, + "create-react-class": { + "version": "15.6.3", + "resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.3.tgz", + "integrity": "sha512-M+/3Q6E6DLO6Yx3OwrWjwHBnvfXXYA7W+dFjt/ZDBemHO1DDZhsalX/NUtnTYclN6GfnBDRh4qRHjcDHmlJBJg==", + "dev": true, + "requires": { + "fbjs": "0.8.17", + "loose-envify": "1.4.0", + "object-assign": "4.1.1" + } + }, "cross-spawn": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", @@ -3337,6 +3347,15 @@ "minimalistic-crypto-utils": "1.0.1" } }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "dev": true, + "requires": { + "iconv-lite": "0.4.24" + } + }, "end-of-stream": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-0.1.5.tgz", @@ -3638,6 +3657,29 @@ "bser": "2.0.0" } }, + "fbjs": { + "version": "0.8.17", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.17.tgz", + "integrity": "sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90=", + "dev": true, + "requires": { + "core-js": "1.2.7", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.4.0", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.19" + }, + "dependencies": { + "core-js": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=", + "dev": true + } + } + }, "filename-regex": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", @@ -6271,6 +6313,16 @@ "isarray": "1.0.0" } }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "dev": true, + "requires": { + "node-fetch": "1.7.3", + "whatwg-fetch": "3.0.0" + } + }, "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", @@ -8554,6 +8606,16 @@ "lodash.toarray": "4.4.0" } }, + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "dev": true, + "requires": { + "encoding": "0.1.12", + "is-stream": "1.1.0" + } + }, "node-gyp": { "version": "3.8.0", "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", @@ -9486,7 +9548,6 @@ "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", "dev": true, - "optional": true, "requires": { "asap": "2.0.6" } @@ -10904,6 +10965,12 @@ } } }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, "sha.js": { "version": "2.4.11", "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", @@ -12087,6 +12154,12 @@ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", "dev": true }, + "ua-parser-js": { + "version": "0.7.19", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.19.tgz", + "integrity": "sha512-T3PVJ6uz8i0HzPxOF9SWzWAlfN/DavlpQqepn22xgve/5QecC+XMCAtmUNnY7C9StehaV6exjUCI801lOI7QlQ==", + "dev": true + }, "uglify-js": { "version": "3.4.9", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz", @@ -17464,6 +17537,12 @@ "iconv-lite": "0.4.24" } }, + "whatwg-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz", + "integrity": "sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q==", + "dev": true + }, "whatwg-mimetype": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", diff --git a/package.json b/package.json index 056470b..17a3c01 100755 --- a/package.json +++ b/package.json @@ -28,6 +28,7 @@ "babel-jest": "^22.1.0", "bower": "^1.7.9", "chai": "^4.1.2", + "create-react-class": "^15.6.3", "del": "^3.0.0", "gulp": "^3.9.1", "jest-cli": "^22.1.4",