diff --git a/assets/js/WakaTime.js b/assets/js/WakaTime.js
index 80245dc..444283a 100644
--- a/assets/js/WakaTime.js
+++ b/assets/js/WakaTime.js
@@ -3,20 +3,11 @@ import $ from 'jquery';
import currentTimestamp from './helpers/currentTimestamp.js';
import changeExtensionIcon from './helpers/changeExtensionIcon.js';
var in_array = require('./helpers/in_array');
+var config = require('./config.js');
class WakaTime {
- tabsWithDevtoolsOpen = [];
-
constructor(props) {
- this.detectionIntervalInSeconds = 60; //default
-
- this.loggingType = 'domain'; //default
-
- this.heartbeatApiUrl = 'https://wakatime.com/api/v1/users/current/heartbeats';
-
- this.currentUserApiUrl = 'https://wakatime.com/api/v1/users/current';
-
this.tabsWithDevtoolsOpen = [];
}
@@ -33,7 +24,7 @@ class WakaTime {
var deferredObject = $.Deferred();
$.ajax({
- url: this.currentUserApiUrl,
+ url: config.currentUserApiUrl,
dataType: 'json',
success: (data) => {
@@ -42,7 +33,7 @@ class WakaTime {
},
error: (xhr, status, err) => {
- console.error(this.currentUserApiUrl, status, err.toString());
+ console.error(config.currentUserApiUrl, status, err.toString());
deferredObject.resolve(false);
}
@@ -61,12 +52,12 @@ class WakaTime {
if (data !== false) {
chrome.storage.sync.get({
- loggingEnabled: true
+ loggingEnabled: config.loggingEnabled
}, (items) => {
if (items.loggingEnabled === true) {
- changeExtensionIcon();
+ changeExtensionIcon(config.colors.allGood);
- chrome.idle.queryState(this.detectionIntervalInSeconds, (newState) => {
+ chrome.idle.queryState(config.detectionIntervalInSeconds, (newState) => {
if (newState === 'active') {
// Get current tab URL.
@@ -81,7 +72,7 @@ class WakaTime {
});
}
else {
- changeExtensionIcon('red');
+ changeExtensionIcon(config.colors.notLogging);
}
});
}
@@ -89,7 +80,7 @@ class WakaTime {
// User is not logged in.
// Change extension icon to red color.
- changeExtensionIcon('red');
+ changeExtensionIcon(config.colors.notSignedIn);
}
});
}
@@ -123,7 +114,7 @@ class WakaTime {
var deferredObject = $.Deferred();
chrome.storage.sync.get({
- loggingType: this.loggingType
+ loggingType: config.loggingType
}, function (items) {
deferredObject.resolve(items.loggingType);
});
@@ -181,7 +172,7 @@ class WakaTime {
var deferredObject = $.Deferred();
$.ajax({
- url: this.heartbeatApiUrl,
+ url: config.heartbeatApiUrl,
dataType: 'json',
contentType: 'application/json',
method: method,
@@ -193,7 +184,7 @@ class WakaTime {
},
error: (xhr, status, err) => {
- console.error(this.heartbeatApiUrl, status, err.toString());
+ console.error(config.heartbeatApiUrl, status, err.toString());
deferredObject.resolve(this);
diff --git a/assets/js/components/MainList.react.js b/assets/js/components/MainList.react.js
index 4a8a3fe..8f9322c 100644
--- a/assets/js/components/MainList.react.js
+++ b/assets/js/components/MainList.react.js
@@ -62,7 +62,7 @@ class MainList extends React.Component {
);
}
- else
+ else if(this.props.loggingEnabled === false && this.props.loggedIn === true)
{
return (
diff --git a/assets/js/components/WakaTime.react.js b/assets/js/components/WakaTime.react.js
index bf38689..5a1243f 100644
--- a/assets/js/components/WakaTime.react.js
+++ b/assets/js/components/WakaTime.react.js
@@ -6,22 +6,19 @@ import NavBar from './NavBar.react.js';
import MainList from './MainList.react.js';
import changeExtensionIcon from '../helpers/changeExtensionIcon.js';
import WakaTimeOriginal from '../WakaTime.js';
+var config = require('../config.js');
class WakaTime extends React.Component {
- constructor(props) {
- super(props);
- this.logoutUserUrl = 'https://wakatime.com/logout';
- this.state = {
- user: {
- full_name: null,
- email: null,
- photo: null
- },
- loggedIn: false,
- loggingEnabled: false
- };
- }
+ state = {
+ user: {
+ full_name: null,
+ email: null,
+ photo: null
+ },
+ loggedIn: false,
+ loggingEnabled: config.loggingEnabled
+ };
componentDidMount() {
@@ -32,14 +29,14 @@ class WakaTime extends React.Component {
if (data !== false) {
chrome.storage.sync.get({
- loggingEnabled: false
+ loggingEnabled: config.loggingEnabled
}, (items) => {
this.setState({loggingEnabled: items.loggingEnabled});
if (items.loggingEnabled === true) {
- changeExtensionIcon();
+ changeExtensionIcon(config.colors.allGood);
}
else {
- changeExtensionIcon('red');
+ changeExtensionIcon(config.colors.notLogging);
}
});
@@ -53,7 +50,7 @@ class WakaTime extends React.Component {
});
}
else {
- changeExtensionIcon('red');
+ changeExtensionIcon(config.colors.notSignedIn);
}
});
@@ -63,7 +60,7 @@ class WakaTime extends React.Component {
var deferredObject = $.Deferred();
$.ajax({
- url: this.logoutUserUrl,
+ url: config.logoutUserUrl,
method: 'GET',
success: () => {
@@ -72,7 +69,7 @@ class WakaTime extends React.Component {
},
error: (xhr, status, err) => {
- console.error(this.logoutUserUrl, status, err.toString());
+ console.error(config.logoutUserUrl, status, err.toString());
deferredObject.resolve(this);
}
@@ -94,7 +91,7 @@ class WakaTime extends React.Component {
loggingEnabled: false
});
- changeExtensionIcon('red');
+ changeExtensionIcon(config.colors.notSignedIn);
});
}
@@ -104,7 +101,7 @@ class WakaTime extends React.Component {
loggingEnabled: false
});
- changeExtensionIcon('red');
+ changeExtensionIcon(config.colors.notLogging);
chrome.storage.sync.set({
loggingEnabled: false
@@ -116,7 +113,7 @@ class WakaTime extends React.Component {
loggingEnabled: true
});
- changeExtensionIcon();
+ changeExtensionIcon(config.colors.allGood);
chrome.storage.sync.set({
loggingEnabled: true
diff --git a/assets/js/config.js b/assets/js/config.js
new file mode 100644
index 0000000..543e68f
--- /dev/null
+++ b/assets/js/config.js
@@ -0,0 +1,25 @@
+export default {
+ // Time for idle state of the browser
+ // The user is considered idle if there was
+ // no activity in the browser for x seconds
+ detectionIntervalInSeconds: 60,
+ //default logging type
+ loggingType: 'domain',
+ // By default logging is enabled
+ loggingEnabled: true,
+ // Url to which to send the heartbeat
+ heartbeatApiUrl: 'https://wakatime.com/api/v1/users/current/heartbeats',
+ // Url from which to detect if the user is logged in
+ currentUserApiUrl: 'https://wakatime.com/api/v1/users/current',
+ // The url to logout the user from wakatime
+ logoutUserUrl: 'https://wakatime.com/logout',
+ // Different colors for different states of the extension
+ colors: {
+ allGood: '',
+ notLogging: 'gray',
+ notSignedIn: 'red',
+ lightTheme: 'white'
+ },
+ // Default theme
+ theme: 'light'
+};
\ No newline at end of file
diff --git a/assets/js/helpers/changeExtensionIcon.js b/assets/js/helpers/changeExtensionIcon.js
index e94c965..3babfd4 100644
--- a/assets/js/helpers/changeExtensionIcon.js
+++ b/assets/js/helpers/changeExtensionIcon.js
@@ -1,6 +1,6 @@
/**
* It changes the extension icon color.
- * Supported values are: 'red', 'white' and ''.
+ * Supported values are: 'red', 'white', 'gray' and ''.
*/
export default function changeExtensionIcon(color = '') {
@@ -9,7 +9,7 @@ export default function changeExtensionIcon(color = '') {
if (color !== '') {
color = '-' + color;
- path = './graphics/wakatime-logo-48' + color + '.png';
+ path = './graphics/wakatime-logo-38' + color + '.png';
chrome.browserAction.setIcon({
path: path
@@ -21,14 +21,14 @@ export default function changeExtensionIcon(color = '') {
theme: 'light'
}, function (items) {
if (items.theme == 'light') {
- path = './graphics/wakatime-logo-48.png';
+ path = './graphics/wakatime-logo-38.png';
chrome.browserAction.setIcon({
path: path
});
}
else {
- path = './graphics/wakatime-logo-48-white.png';
+ path = './graphics/wakatime-logo-38-white.png';
chrome.browserAction.setIcon({
path: path
diff --git a/assets/js/options.js b/assets/js/options.js
index 43a68f0..2570890 100644
--- a/assets/js/options.js
+++ b/assets/js/options.js
@@ -2,6 +2,8 @@
global.jQuery = require('jquery');
require('bootstrap');
+var config = require('./config');
+
import $ from "jquery";
function detectCheckedRadio(name) {
@@ -47,9 +49,9 @@ function save_options(e) {
function restore_options() {
// Use default value color = 'red' and likesColor = true.
chrome.storage.sync.get({
- theme: 'light',
+ theme: config.theme,
blacklist: '',
- loggingType: 'domain'
+ loggingType: config.loggingType
}, function (items) {
document.getElementById('theme').value = items.theme;
document.getElementById('blacklist').value = items.blacklist;
diff --git a/graphics/wakatime-logo-38-gray.png b/graphics/wakatime-logo-38-gray.png
new file mode 100644
index 0000000..06678c9
Binary files /dev/null and b/graphics/wakatime-logo-38-gray.png differ
diff --git a/graphics/wakatime-logo-38-red.png b/graphics/wakatime-logo-38-red.png
new file mode 100644
index 0000000..3918b73
Binary files /dev/null and b/graphics/wakatime-logo-38-red.png differ
diff --git a/public/js/bundle.js b/public/js/bundle.js
index 194e2dc..695ee7c 100644
--- a/public/js/bundle.js
+++ b/public/js/bundle.js
@@ -19,7 +19,7 @@ require('bootstrap');
_react2['default'].render(_react2['default'].createElement(_componentsWakaTimeReactJs2['default'], null), document.getElementById('wakatime'));
}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
-},{"./components/WakaTime.react.js":6,"bootstrap":10,"jquery":23,"react":179}],2:[function(require,module,exports){
+},{"./components/WakaTime.react.js":6,"bootstrap":11,"jquery":24,"react":180}],2:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", {
@@ -80,22 +80,13 @@ var _helpersChangeExtensionIconJs = require('./helpers/changeExtensionIcon.js');
var _helpersChangeExtensionIconJs2 = _interopRequireDefault(_helpersChangeExtensionIconJs);
var in_array = require('./helpers/in_array');
+var config = require('./config.js');
var WakaTime = (function () {
function WakaTime(props) {
_classCallCheck(this, WakaTime);
this.tabsWithDevtoolsOpen = [];
-
- this.detectionIntervalInSeconds = 60; //default
-
- this.loggingType = 'domain'; //default
-
- this.heartbeatApiUrl = 'https://wakatime.com/api/v1/users/current/heartbeats';
-
- this.currentUserApiUrl = 'https://wakatime.com/api/v1/users/current';
-
- this.tabsWithDevtoolsOpen = [];
}
_createClass(WakaTime, [{
@@ -112,12 +103,10 @@ var WakaTime = (function () {
* @returns {*}
*/
value: function checkAuth() {
- var _this = this;
-
var deferredObject = _jquery2['default'].Deferred();
_jquery2['default'].ajax({
- url: this.currentUserApiUrl,
+ url: config.currentUserApiUrl,
dataType: 'json',
success: function success(data) {
@@ -125,7 +114,7 @@ var WakaTime = (function () {
},
error: function error(xhr, status, err) {
- console.error(_this.currentUserApiUrl, status, err.toString());
+ console.error(config.currentUserApiUrl, status, err.toString());
deferredObject.resolve(false);
}
@@ -141,40 +130,40 @@ var WakaTime = (function () {
* and sends it to WakaTime for logging.
*/
value: function recordHeartbeat() {
- var _this2 = this;
+ var _this = this;
this.checkAuth().done(function (data) {
if (data !== false) {
chrome.storage.sync.get({
- loggingEnabled: true
+ loggingEnabled: config.loggingEnabled
}, function (items) {
if (items.loggingEnabled === true) {
- (0, _helpersChangeExtensionIconJs2['default'])();
+ (0, _helpersChangeExtensionIconJs2['default'])(config.colors.allGood);
- chrome.idle.queryState(_this2.detectionIntervalInSeconds, function (newState) {
+ chrome.idle.queryState(config.detectionIntervalInSeconds, function (newState) {
if (newState === 'active') {
// Get current tab URL.
chrome.tabs.query({ active: true }, function (tabs) {
var debug = false;
// If the current active tab has devtools open
- if (in_array(tabs[0].id, _this2.tabsWithDevtoolsOpen)) debug = true;
+ if (in_array(tabs[0].id, _this.tabsWithDevtoolsOpen)) debug = true;
- _this2.sendHeartbeat(tabs[0].url, debug);
+ _this.sendHeartbeat(tabs[0].url, debug);
});
}
});
} else {
- (0, _helpersChangeExtensionIconJs2['default'])('red');
+ (0, _helpersChangeExtensionIconJs2['default'])(config.colors.notLogging);
}
});
} else {
// User is not logged in.
// Change extension icon to red color.
- (0, _helpersChangeExtensionIconJs2['default'])('red');
+ (0, _helpersChangeExtensionIconJs2['default'])(config.colors.notSignedIn);
}
});
}
@@ -213,7 +202,7 @@ var WakaTime = (function () {
var deferredObject = _jquery2['default'].Deferred();
chrome.storage.sync.get({
- loggingType: this.loggingType
+ loggingType: config.loggingType
}, function (items) {
deferredObject.resolve(items.loggingType);
});
@@ -231,7 +220,7 @@ var WakaTime = (function () {
* @param debug
*/
value: function sendHeartbeat(entity, debug) {
- var _this3 = this;
+ var _this2 = this;
var payload = null;
@@ -243,19 +232,19 @@ var WakaTime = (function () {
var domain = _UrlHelperJs2['default'].getDomainFromUrl(entity);
- payload = _this3._preparePayload(domain, 'domain', debug);
+ payload = _this2._preparePayload(domain, 'domain', debug);
console.log(payload);
- _this3.sendAjaxRequestToApi(payload);
+ _this2.sendAjaxRequestToApi(payload);
}
// Send entity in heartbeat
else if (loggingType == 'url') {
- payload = _this3._preparePayload(entity, 'url', debug);
+ payload = _this2._preparePayload(entity, 'url', debug);
console.log(payload);
- _this3.sendAjaxRequestToApi(payload);
+ _this2.sendAjaxRequestToApi(payload);
}
});
}
@@ -270,27 +259,27 @@ var WakaTime = (function () {
* @returns {*}
*/
value: function sendAjaxRequestToApi(payload) {
- var _this4 = this;
+ var _this3 = this;
var method = arguments[1] === undefined ? 'POST' : arguments[1];
var deferredObject = _jquery2['default'].Deferred();
_jquery2['default'].ajax({
- url: this.heartbeatApiUrl,
+ url: config.heartbeatApiUrl,
dataType: 'json',
contentType: 'application/json',
method: method,
data: payload,
success: function success(response) {
- deferredObject.resolve(_this4);
+ deferredObject.resolve(_this3);
},
error: function error(xhr, status, err) {
- console.error(_this4.heartbeatApiUrl, status, err.toString());
+ console.error(config.heartbeatApiUrl, status, err.toString());
- deferredObject.resolve(_this4);
+ deferredObject.resolve(_this3);
}
});
@@ -304,7 +293,7 @@ var WakaTime = (function () {
exports['default'] = WakaTime;
module.exports = exports['default'];
-},{"./UrlHelper.js":2,"./helpers/changeExtensionIcon.js":7,"./helpers/currentTimestamp.js":8,"./helpers/in_array":9,"jquery":23}],4:[function(require,module,exports){
+},{"./UrlHelper.js":2,"./config.js":7,"./helpers/changeExtensionIcon.js":8,"./helpers/currentTimestamp.js":9,"./helpers/in_array":10,"jquery":24}],4:[function(require,module,exports){
//jshint esnext:true
'use strict';
@@ -413,7 +402,7 @@ var MainList = (function (_React$Component) {
)
)
);
- } else {
+ } else if (_this.props.loggingEnabled === false && _this.props.loggedIn === true) {
return _react2['default'].createElement(
'div',
{ className: 'panel panel-default' },
@@ -498,7 +487,7 @@ var MainList = (function (_React$Component) {
exports['default'] = MainList;
module.exports = exports['default'];
-},{"react":179}],5:[function(require,module,exports){
+},{"react":180}],5:[function(require,module,exports){
//jshint esnext:true
"use strict";
@@ -613,7 +602,7 @@ var Navbar = (function (_React$Component) {
exports["default"] = Navbar;
module.exports = exports["default"];
-},{"react":179}],6:[function(require,module,exports){
+},{"react":180}],6:[function(require,module,exports){
//jshint esnext:true
'use strict';
@@ -624,8 +613,6 @@ Object.defineProperty(exports, '__esModule', {
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 _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
@@ -656,12 +643,16 @@ var _WakaTimeJs = require('../WakaTime.js');
var _WakaTimeJs2 = _interopRequireDefault(_WakaTimeJs);
+var config = require('../config.js');
+
var WakaTime = (function (_React$Component) {
- function WakaTime(props) {
+ function WakaTime() {
_classCallCheck(this, WakaTime);
- _get(Object.getPrototypeOf(WakaTime.prototype), 'constructor', this).call(this, props);
- this.logoutUserUrl = 'https://wakatime.com/logout';
+ if (_React$Component != null) {
+ _React$Component.apply(this, arguments);
+ }
+
this.state = {
user: {
full_name: null,
@@ -669,7 +660,7 @@ var WakaTime = (function (_React$Component) {
photo: null
},
loggedIn: false,
- loggingEnabled: false
+ loggingEnabled: config.loggingEnabled
};
}
@@ -687,13 +678,13 @@ var WakaTime = (function (_React$Component) {
if (data !== false) {
chrome.storage.sync.get({
- loggingEnabled: false
+ loggingEnabled: config.loggingEnabled
}, function (items) {
_this.setState({ loggingEnabled: items.loggingEnabled });
if (items.loggingEnabled === true) {
- (0, _helpersChangeExtensionIconJs2['default'])();
+ (0, _helpersChangeExtensionIconJs2['default'])(config.colors.allGood);
} else {
- (0, _helpersChangeExtensionIconJs2['default'])('red');
+ (0, _helpersChangeExtensionIconJs2['default'])(config.colors.notLogging);
}
});
@@ -706,7 +697,7 @@ var WakaTime = (function (_React$Component) {
loggedIn: true
});
} else {
- (0, _helpersChangeExtensionIconJs2['default'])('red');
+ (0, _helpersChangeExtensionIconJs2['default'])(config.colors.notSignedIn);
}
});
}
@@ -718,7 +709,7 @@ var WakaTime = (function (_React$Component) {
var deferredObject = _jquery2['default'].Deferred();
_jquery2['default'].ajax({
- url: this.logoutUserUrl,
+ url: config.logoutUserUrl,
method: 'GET',
success: function success() {
@@ -726,7 +717,7 @@ var WakaTime = (function (_React$Component) {
},
error: function error(xhr, status, err) {
- console.error(_this2.logoutUserUrl, status, err.toString());
+ console.error(config.logoutUserUrl, status, err.toString());
deferredObject.resolve(_this2);
}
@@ -751,7 +742,7 @@ var WakaTime = (function (_React$Component) {
loggingEnabled: false
});
- (0, _helpersChangeExtensionIconJs2['default'])('red');
+ (0, _helpersChangeExtensionIconJs2['default'])(config.colors.notSignedIn);
});
}
}, {
@@ -761,7 +752,7 @@ var WakaTime = (function (_React$Component) {
loggingEnabled: false
});
- (0, _helpersChangeExtensionIconJs2['default'])('red');
+ (0, _helpersChangeExtensionIconJs2['default'])(config.colors.notLogging);
chrome.storage.sync.set({
loggingEnabled: false
@@ -774,7 +765,7 @@ var WakaTime = (function (_React$Component) {
loggingEnabled: true
});
- (0, _helpersChangeExtensionIconJs2['default'])();
+ (0, _helpersChangeExtensionIconJs2['default'])(config.colors.allGood);
chrome.storage.sync.set({
loggingEnabled: true
@@ -816,10 +807,43 @@ var WakaTime = (function (_React$Component) {
exports['default'] = WakaTime;
module.exports = exports['default'];
-},{"../WakaTime.js":3,"../helpers/changeExtensionIcon.js":7,"./MainList.react.js":4,"./NavBar.react.js":5,"jquery":23,"react":179}],7:[function(require,module,exports){
+},{"../WakaTime.js":3,"../config.js":7,"../helpers/changeExtensionIcon.js":8,"./MainList.react.js":4,"./NavBar.react.js":5,"jquery":24,"react":180}],7:[function(require,module,exports){
+'use strict';
+
+Object.defineProperty(exports, '__esModule', {
+ value: true
+});
+exports['default'] = {
+ // Time for idle state of the browser
+ // The user is considered idle if there was
+ // no activity in the browser for x seconds
+ detectionIntervalInSeconds: 60,
+ //default logging type
+ loggingType: 'domain',
+ // By default logging is enabled
+ loggingEnabled: true,
+ // Url to which to send the heartbeat
+ heartbeatApiUrl: 'https://wakatime.com/api/v1/users/current/heartbeats',
+ // Url from which to detect if the user is logged in
+ currentUserApiUrl: 'https://wakatime.com/api/v1/users/current',
+ // The url to logout the user from wakatime
+ logoutUserUrl: 'https://wakatime.com/logout',
+ // Different colors for different states of the extension
+ colors: {
+ allGood: '',
+ notLogging: 'gray',
+ notSignedIn: 'red',
+ lightTheme: 'white'
+ },
+ // Default theme
+ theme: 'light'
+};
+module.exports = exports['default'];
+
+},{}],8:[function(require,module,exports){
/**
* It changes the extension icon color.
- * Supported values are: 'red', 'white' and ''.
+ * Supported values are: 'red', 'white', 'gray' and ''.
*/
'use strict';
@@ -836,7 +860,7 @@ function changeExtensionIcon() {
if (color !== '') {
color = '-' + color;
- path = './graphics/wakatime-logo-48' + color + '.png';
+ path = './graphics/wakatime-logo-38' + color + '.png';
chrome.browserAction.setIcon({
path: path
@@ -848,13 +872,13 @@ function changeExtensionIcon() {
theme: 'light'
}, function (items) {
if (items.theme == 'light') {
- path = './graphics/wakatime-logo-48.png';
+ path = './graphics/wakatime-logo-38.png';
chrome.browserAction.setIcon({
path: path
});
} else {
- path = './graphics/wakatime-logo-48-white.png';
+ path = './graphics/wakatime-logo-38-white.png';
chrome.browserAction.setIcon({
path: path
@@ -866,7 +890,7 @@ function changeExtensionIcon() {
module.exports = exports['default'];
-},{}],8:[function(require,module,exports){
+},{}],9:[function(require,module,exports){
/**
* Returns UNIX timestamp
*/
@@ -882,7 +906,7 @@ exports["default"] = function () {
module.exports = exports["default"];
-},{}],9:[function(require,module,exports){
+},{}],10:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", {
@@ -902,7 +926,7 @@ function in_array(needle, haystack) {
exports["default"] = in_array;
module.exports = exports["default"];
-},{}],10:[function(require,module,exports){
+},{}],11:[function(require,module,exports){
// This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment.
require('../../js/transition.js')
require('../../js/alert.js')
@@ -916,7 +940,7 @@ require('../../js/popover.js')
require('../../js/scrollspy.js')
require('../../js/tab.js')
require('../../js/affix.js')
-},{"../../js/affix.js":11,"../../js/alert.js":12,"../../js/button.js":13,"../../js/carousel.js":14,"../../js/collapse.js":15,"../../js/dropdown.js":16,"../../js/modal.js":17,"../../js/popover.js":18,"../../js/scrollspy.js":19,"../../js/tab.js":20,"../../js/tooltip.js":21,"../../js/transition.js":22}],11:[function(require,module,exports){
+},{"../../js/affix.js":12,"../../js/alert.js":13,"../../js/button.js":14,"../../js/carousel.js":15,"../../js/collapse.js":16,"../../js/dropdown.js":17,"../../js/modal.js":18,"../../js/popover.js":19,"../../js/scrollspy.js":20,"../../js/tab.js":21,"../../js/tooltip.js":22,"../../js/transition.js":23}],12:[function(require,module,exports){
/* ========================================================================
* Bootstrap: affix.js v3.3.4
* http://getbootstrap.com/javascript/#affix
@@ -1080,7 +1104,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],12:[function(require,module,exports){
+},{}],13:[function(require,module,exports){
/* ========================================================================
* Bootstrap: alert.js v3.3.4
* http://getbootstrap.com/javascript/#alerts
@@ -1176,7 +1200,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],13:[function(require,module,exports){
+},{}],14:[function(require,module,exports){
/* ========================================================================
* Bootstrap: button.js v3.3.4
* http://getbootstrap.com/javascript/#buttons
@@ -1294,7 +1318,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],14:[function(require,module,exports){
+},{}],15:[function(require,module,exports){
/* ========================================================================
* Bootstrap: carousel.js v3.3.4
* http://getbootstrap.com/javascript/#carousel
@@ -1533,7 +1557,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],15:[function(require,module,exports){
+},{}],16:[function(require,module,exports){
/* ========================================================================
* Bootstrap: collapse.js v3.3.4
* http://getbootstrap.com/javascript/#collapse
@@ -1746,7 +1770,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],16:[function(require,module,exports){
+},{}],17:[function(require,module,exports){
/* ========================================================================
* Bootstrap: dropdown.js v3.3.4
* http://getbootstrap.com/javascript/#dropdowns
@@ -1909,7 +1933,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],17:[function(require,module,exports){
+},{}],18:[function(require,module,exports){
/* ========================================================================
* Bootstrap: modal.js v3.3.4
* http://getbootstrap.com/javascript/#modals
@@ -2250,7 +2274,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],18:[function(require,module,exports){
+},{}],19:[function(require,module,exports){
/* ========================================================================
* Bootstrap: popover.js v3.3.4
* http://getbootstrap.com/javascript/#popovers
@@ -2360,7 +2384,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],19:[function(require,module,exports){
+},{}],20:[function(require,module,exports){
/* ========================================================================
* Bootstrap: scrollspy.js v3.3.4
* http://getbootstrap.com/javascript/#scrollspy
@@ -2534,7 +2558,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],20:[function(require,module,exports){
+},{}],21:[function(require,module,exports){
/* ========================================================================
* Bootstrap: tab.js v3.3.4
* http://getbootstrap.com/javascript/#tabs
@@ -2689,7 +2713,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],21:[function(require,module,exports){
+},{}],22:[function(require,module,exports){
/* ========================================================================
* Bootstrap: tooltip.js v3.3.4
* http://getbootstrap.com/javascript/#tooltip
@@ -3167,7 +3191,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],22:[function(require,module,exports){
+},{}],23:[function(require,module,exports){
/* ========================================================================
* Bootstrap: transition.js v3.3.4
* http://getbootstrap.com/javascript/#transitions
@@ -3228,7 +3252,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],23:[function(require,module,exports){
+},{}],24:[function(require,module,exports){
/*!
* jQuery JavaScript Library v2.1.4
* http://jquery.com/
@@ -12440,7 +12464,7 @@ return jQuery;
}));
-},{}],24:[function(require,module,exports){
+},{}],25:[function(require,module,exports){
// shim for using process in browser
var process = module.exports = {};
@@ -12500,7 +12524,7 @@ process.chdir = function (dir) {
};
process.umask = function() { return 0; };
-},{}],25:[function(require,module,exports){
+},{}],26:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -12527,7 +12551,7 @@ var AutoFocusMixin = {
module.exports = AutoFocusMixin;
-},{"./focusNode":143}],26:[function(require,module,exports){
+},{"./focusNode":144}],27:[function(require,module,exports){
/**
* Copyright 2013-2015 Facebook, Inc.
* All rights reserved.
@@ -13022,7 +13046,7 @@ var BeforeInputEventPlugin = {
module.exports = BeforeInputEventPlugin;
-},{"./EventConstants":38,"./EventPropagators":43,"./ExecutionEnvironment":44,"./FallbackCompositionState":45,"./SyntheticCompositionEvent":117,"./SyntheticInputEvent":121,"./keyOf":165}],27:[function(require,module,exports){
+},{"./EventConstants":39,"./EventPropagators":44,"./ExecutionEnvironment":45,"./FallbackCompositionState":46,"./SyntheticCompositionEvent":118,"./SyntheticInputEvent":122,"./keyOf":166}],28:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -13147,7 +13171,7 @@ var CSSProperty = {
module.exports = CSSProperty;
-},{}],28:[function(require,module,exports){
+},{}],29:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -13329,7 +13353,7 @@ var CSSPropertyOperations = {
module.exports = CSSPropertyOperations;
}).call(this,require('_process'))
-},{"./CSSProperty":27,"./ExecutionEnvironment":44,"./camelizeStyleName":132,"./dangerousStyleValue":137,"./hyphenateStyleName":157,"./memoizeStringOnly":167,"./warning":178,"_process":24}],29:[function(require,module,exports){
+},{"./CSSProperty":28,"./ExecutionEnvironment":45,"./camelizeStyleName":133,"./dangerousStyleValue":138,"./hyphenateStyleName":158,"./memoizeStringOnly":168,"./warning":179,"_process":25}],30:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -13429,7 +13453,7 @@ PooledClass.addPoolingTo(CallbackQueue);
module.exports = CallbackQueue;
}).call(this,require('_process'))
-},{"./Object.assign":50,"./PooledClass":51,"./invariant":159,"_process":24}],30:[function(require,module,exports){
+},{"./Object.assign":51,"./PooledClass":52,"./invariant":160,"_process":25}],31:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -13811,7 +13835,7 @@ var ChangeEventPlugin = {
module.exports = ChangeEventPlugin;
-},{"./EventConstants":38,"./EventPluginHub":40,"./EventPropagators":43,"./ExecutionEnvironment":44,"./ReactUpdates":111,"./SyntheticEvent":119,"./isEventSupported":160,"./isTextInputElement":162,"./keyOf":165}],31:[function(require,module,exports){
+},{"./EventConstants":39,"./EventPluginHub":41,"./EventPropagators":44,"./ExecutionEnvironment":45,"./ReactUpdates":112,"./SyntheticEvent":120,"./isEventSupported":161,"./isTextInputElement":163,"./keyOf":166}],32:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -13836,7 +13860,7 @@ var ClientReactRootIndex = {
module.exports = ClientReactRootIndex;
-},{}],32:[function(require,module,exports){
+},{}],33:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -13974,7 +13998,7 @@ var DOMChildrenOperations = {
module.exports = DOMChildrenOperations;
}).call(this,require('_process'))
-},{"./Danger":35,"./ReactMultiChildUpdateTypes":96,"./invariant":159,"./setTextContent":173,"_process":24}],33:[function(require,module,exports){
+},{"./Danger":36,"./ReactMultiChildUpdateTypes":97,"./invariant":160,"./setTextContent":174,"_process":25}],34:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -14273,7 +14297,7 @@ var DOMProperty = {
module.exports = DOMProperty;
}).call(this,require('_process'))
-},{"./invariant":159,"_process":24}],34:[function(require,module,exports){
+},{"./invariant":160,"_process":25}],35:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -14465,7 +14489,7 @@ var DOMPropertyOperations = {
module.exports = DOMPropertyOperations;
}).call(this,require('_process'))
-},{"./DOMProperty":33,"./quoteAttributeValueForBrowser":171,"./warning":178,"_process":24}],35:[function(require,module,exports){
+},{"./DOMProperty":34,"./quoteAttributeValueForBrowser":172,"./warning":179,"_process":25}],36:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -14652,7 +14676,7 @@ var Danger = {
module.exports = Danger;
}).call(this,require('_process'))
-},{"./ExecutionEnvironment":44,"./createNodesFromMarkup":136,"./emptyFunction":138,"./getMarkupWrap":151,"./invariant":159,"_process":24}],36:[function(require,module,exports){
+},{"./ExecutionEnvironment":45,"./createNodesFromMarkup":137,"./emptyFunction":139,"./getMarkupWrap":152,"./invariant":160,"_process":25}],37:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -14691,7 +14715,7 @@ var DefaultEventPluginOrder = [
module.exports = DefaultEventPluginOrder;
-},{"./keyOf":165}],37:[function(require,module,exports){
+},{"./keyOf":166}],38:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -14831,7 +14855,7 @@ var EnterLeaveEventPlugin = {
module.exports = EnterLeaveEventPlugin;
-},{"./EventConstants":38,"./EventPropagators":43,"./ReactMount":94,"./SyntheticMouseEvent":123,"./keyOf":165}],38:[function(require,module,exports){
+},{"./EventConstants":39,"./EventPropagators":44,"./ReactMount":95,"./SyntheticMouseEvent":124,"./keyOf":166}],39:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -14903,7 +14927,7 @@ var EventConstants = {
module.exports = EventConstants;
-},{"./keyMirror":164}],39:[function(require,module,exports){
+},{"./keyMirror":165}],40:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -14993,7 +15017,7 @@ var EventListener = {
module.exports = EventListener;
}).call(this,require('_process'))
-},{"./emptyFunction":138,"_process":24}],40:[function(require,module,exports){
+},{"./emptyFunction":139,"_process":25}],41:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -15271,7 +15295,7 @@ var EventPluginHub = {
module.exports = EventPluginHub;
}).call(this,require('_process'))
-},{"./EventPluginRegistry":41,"./EventPluginUtils":42,"./accumulateInto":129,"./forEachAccumulated":144,"./invariant":159,"_process":24}],41:[function(require,module,exports){
+},{"./EventPluginRegistry":42,"./EventPluginUtils":43,"./accumulateInto":130,"./forEachAccumulated":145,"./invariant":160,"_process":25}],42:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -15551,7 +15575,7 @@ var EventPluginRegistry = {
module.exports = EventPluginRegistry;
}).call(this,require('_process'))
-},{"./invariant":159,"_process":24}],42:[function(require,module,exports){
+},{"./invariant":160,"_process":25}],43:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -15772,7 +15796,7 @@ var EventPluginUtils = {
module.exports = EventPluginUtils;
}).call(this,require('_process'))
-},{"./EventConstants":38,"./invariant":159,"_process":24}],43:[function(require,module,exports){
+},{"./EventConstants":39,"./invariant":160,"_process":25}],44:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -15914,7 +15938,7 @@ var EventPropagators = {
module.exports = EventPropagators;
}).call(this,require('_process'))
-},{"./EventConstants":38,"./EventPluginHub":40,"./accumulateInto":129,"./forEachAccumulated":144,"_process":24}],44:[function(require,module,exports){
+},{"./EventConstants":39,"./EventPluginHub":41,"./accumulateInto":130,"./forEachAccumulated":145,"_process":25}],45:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -15958,7 +15982,7 @@ var ExecutionEnvironment = {
module.exports = ExecutionEnvironment;
-},{}],45:[function(require,module,exports){
+},{}],46:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -16049,7 +16073,7 @@ PooledClass.addPoolingTo(FallbackCompositionState);
module.exports = FallbackCompositionState;
-},{"./Object.assign":50,"./PooledClass":51,"./getTextContentAccessor":154}],46:[function(require,module,exports){
+},{"./Object.assign":51,"./PooledClass":52,"./getTextContentAccessor":155}],47:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -16260,7 +16284,7 @@ var HTMLDOMPropertyConfig = {
module.exports = HTMLDOMPropertyConfig;
-},{"./DOMProperty":33,"./ExecutionEnvironment":44}],47:[function(require,module,exports){
+},{"./DOMProperty":34,"./ExecutionEnvironment":45}],48:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -16416,7 +16440,7 @@ var LinkedValueUtils = {
module.exports = LinkedValueUtils;
}).call(this,require('_process'))
-},{"./ReactPropTypes":102,"./invariant":159,"_process":24}],48:[function(require,module,exports){
+},{"./ReactPropTypes":103,"./invariant":160,"_process":25}],49:[function(require,module,exports){
(function (process){
/**
* Copyright 2014-2015, Facebook, Inc.
@@ -16473,7 +16497,7 @@ var LocalEventTrapMixin = {
module.exports = LocalEventTrapMixin;
}).call(this,require('_process'))
-},{"./ReactBrowserEventEmitter":54,"./accumulateInto":129,"./forEachAccumulated":144,"./invariant":159,"_process":24}],49:[function(require,module,exports){
+},{"./ReactBrowserEventEmitter":55,"./accumulateInto":130,"./forEachAccumulated":145,"./invariant":160,"_process":25}],50:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -16531,7 +16555,7 @@ var MobileSafariClickEventPlugin = {
module.exports = MobileSafariClickEventPlugin;
-},{"./EventConstants":38,"./emptyFunction":138}],50:[function(require,module,exports){
+},{"./EventConstants":39,"./emptyFunction":139}],51:[function(require,module,exports){
/**
* Copyright 2014-2015, Facebook, Inc.
* All rights reserved.
@@ -16580,7 +16604,7 @@ function assign(target, sources) {
module.exports = assign;
-},{}],51:[function(require,module,exports){
+},{}],52:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -16696,7 +16720,7 @@ var PooledClass = {
module.exports = PooledClass;
}).call(this,require('_process'))
-},{"./invariant":159,"_process":24}],52:[function(require,module,exports){
+},{"./invariant":160,"_process":25}],53:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -16848,7 +16872,7 @@ React.version = '0.13.3';
module.exports = React;
}).call(this,require('_process'))
-},{"./EventPluginUtils":42,"./ExecutionEnvironment":44,"./Object.assign":50,"./ReactChildren":56,"./ReactClass":57,"./ReactComponent":58,"./ReactContext":62,"./ReactCurrentOwner":63,"./ReactDOM":64,"./ReactDOMTextComponent":75,"./ReactDefaultInjection":78,"./ReactElement":81,"./ReactElementValidator":82,"./ReactInstanceHandles":90,"./ReactMount":94,"./ReactPerf":99,"./ReactPropTypes":102,"./ReactReconciler":105,"./ReactServerRendering":108,"./findDOMNode":141,"./onlyChild":168,"_process":24}],53:[function(require,module,exports){
+},{"./EventPluginUtils":43,"./ExecutionEnvironment":45,"./Object.assign":51,"./ReactChildren":57,"./ReactClass":58,"./ReactComponent":59,"./ReactContext":63,"./ReactCurrentOwner":64,"./ReactDOM":65,"./ReactDOMTextComponent":76,"./ReactDefaultInjection":79,"./ReactElement":82,"./ReactElementValidator":83,"./ReactInstanceHandles":91,"./ReactMount":95,"./ReactPerf":100,"./ReactPropTypes":103,"./ReactReconciler":106,"./ReactServerRendering":109,"./findDOMNode":142,"./onlyChild":169,"_process":25}],54:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -16879,7 +16903,7 @@ var ReactBrowserComponentMixin = {
module.exports = ReactBrowserComponentMixin;
-},{"./findDOMNode":141}],54:[function(require,module,exports){
+},{"./findDOMNode":142}],55:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -17232,7 +17256,7 @@ var ReactBrowserEventEmitter = assign({}, ReactEventEmitterMixin, {
module.exports = ReactBrowserEventEmitter;
-},{"./EventConstants":38,"./EventPluginHub":40,"./EventPluginRegistry":41,"./Object.assign":50,"./ReactEventEmitterMixin":85,"./ViewportMetrics":128,"./isEventSupported":160}],55:[function(require,module,exports){
+},{"./EventConstants":39,"./EventPluginHub":41,"./EventPluginRegistry":42,"./Object.assign":51,"./ReactEventEmitterMixin":86,"./ViewportMetrics":129,"./isEventSupported":161}],56:[function(require,module,exports){
/**
* Copyright 2014-2015, Facebook, Inc.
* All rights reserved.
@@ -17359,7 +17383,7 @@ var ReactChildReconciler = {
module.exports = ReactChildReconciler;
-},{"./ReactReconciler":105,"./flattenChildren":142,"./instantiateReactComponent":158,"./shouldUpdateReactComponent":175}],56:[function(require,module,exports){
+},{"./ReactReconciler":106,"./flattenChildren":143,"./instantiateReactComponent":159,"./shouldUpdateReactComponent":176}],57:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -17512,7 +17536,7 @@ var ReactChildren = {
module.exports = ReactChildren;
}).call(this,require('_process'))
-},{"./PooledClass":51,"./ReactFragment":87,"./traverseAllChildren":177,"./warning":178,"_process":24}],57:[function(require,module,exports){
+},{"./PooledClass":52,"./ReactFragment":88,"./traverseAllChildren":178,"./warning":179,"_process":25}],58:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -18458,7 +18482,7 @@ var ReactClass = {
module.exports = ReactClass;
}).call(this,require('_process'))
-},{"./Object.assign":50,"./ReactComponent":58,"./ReactCurrentOwner":63,"./ReactElement":81,"./ReactErrorUtils":84,"./ReactInstanceMap":91,"./ReactLifeCycle":92,"./ReactPropTypeLocationNames":100,"./ReactPropTypeLocations":101,"./ReactUpdateQueue":110,"./invariant":159,"./keyMirror":164,"./keyOf":165,"./warning":178,"_process":24}],58:[function(require,module,exports){
+},{"./Object.assign":51,"./ReactComponent":59,"./ReactCurrentOwner":64,"./ReactElement":82,"./ReactErrorUtils":85,"./ReactInstanceMap":92,"./ReactLifeCycle":93,"./ReactPropTypeLocationNames":101,"./ReactPropTypeLocations":102,"./ReactUpdateQueue":111,"./invariant":160,"./keyMirror":165,"./keyOf":166,"./warning":179,"_process":25}],59:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -18612,7 +18636,7 @@ if ("production" !== process.env.NODE_ENV) {
module.exports = ReactComponent;
}).call(this,require('_process'))
-},{"./ReactUpdateQueue":110,"./invariant":159,"./warning":178,"_process":24}],59:[function(require,module,exports){
+},{"./ReactUpdateQueue":111,"./invariant":160,"./warning":179,"_process":25}],60:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -18659,7 +18683,7 @@ var ReactComponentBrowserEnvironment = {
module.exports = ReactComponentBrowserEnvironment;
-},{"./ReactDOMIDOperations":68,"./ReactMount":94}],60:[function(require,module,exports){
+},{"./ReactDOMIDOperations":69,"./ReactMount":95}],61:[function(require,module,exports){
(function (process){
/**
* Copyright 2014-2015, Facebook, Inc.
@@ -18720,7 +18744,7 @@ var ReactComponentEnvironment = {
module.exports = ReactComponentEnvironment;
}).call(this,require('_process'))
-},{"./invariant":159,"_process":24}],61:[function(require,module,exports){
+},{"./invariant":160,"_process":25}],62:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -19633,7 +19657,7 @@ var ReactCompositeComponent = {
module.exports = ReactCompositeComponent;
}).call(this,require('_process'))
-},{"./Object.assign":50,"./ReactComponentEnvironment":60,"./ReactContext":62,"./ReactCurrentOwner":63,"./ReactElement":81,"./ReactElementValidator":82,"./ReactInstanceMap":91,"./ReactLifeCycle":92,"./ReactNativeComponent":97,"./ReactPerf":99,"./ReactPropTypeLocationNames":100,"./ReactPropTypeLocations":101,"./ReactReconciler":105,"./ReactUpdates":111,"./emptyObject":139,"./invariant":159,"./shouldUpdateReactComponent":175,"./warning":178,"_process":24}],62:[function(require,module,exports){
+},{"./Object.assign":51,"./ReactComponentEnvironment":61,"./ReactContext":63,"./ReactCurrentOwner":64,"./ReactElement":82,"./ReactElementValidator":83,"./ReactInstanceMap":92,"./ReactLifeCycle":93,"./ReactNativeComponent":98,"./ReactPerf":100,"./ReactPropTypeLocationNames":101,"./ReactPropTypeLocations":102,"./ReactReconciler":106,"./ReactUpdates":112,"./emptyObject":140,"./invariant":160,"./shouldUpdateReactComponent":176,"./warning":179,"_process":25}],63:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -19711,7 +19735,7 @@ var ReactContext = {
module.exports = ReactContext;
}).call(this,require('_process'))
-},{"./Object.assign":50,"./emptyObject":139,"./warning":178,"_process":24}],63:[function(require,module,exports){
+},{"./Object.assign":51,"./emptyObject":140,"./warning":179,"_process":25}],64:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -19745,7 +19769,7 @@ var ReactCurrentOwner = {
module.exports = ReactCurrentOwner;
-},{}],64:[function(require,module,exports){
+},{}],65:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -19924,7 +19948,7 @@ var ReactDOM = mapObject({
module.exports = ReactDOM;
}).call(this,require('_process'))
-},{"./ReactElement":81,"./ReactElementValidator":82,"./mapObject":166,"_process":24}],65:[function(require,module,exports){
+},{"./ReactElement":82,"./ReactElementValidator":83,"./mapObject":167,"_process":25}],66:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -19988,7 +20012,7 @@ var ReactDOMButton = ReactClass.createClass({
module.exports = ReactDOMButton;
-},{"./AutoFocusMixin":25,"./ReactBrowserComponentMixin":53,"./ReactClass":57,"./ReactElement":81,"./keyMirror":164}],66:[function(require,module,exports){
+},{"./AutoFocusMixin":26,"./ReactBrowserComponentMixin":54,"./ReactClass":58,"./ReactElement":82,"./keyMirror":165}],67:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -20498,7 +20522,7 @@ ReactDOMComponent.injection = {
module.exports = ReactDOMComponent;
}).call(this,require('_process'))
-},{"./CSSPropertyOperations":28,"./DOMProperty":33,"./DOMPropertyOperations":34,"./Object.assign":50,"./ReactBrowserEventEmitter":54,"./ReactComponentBrowserEnvironment":59,"./ReactMount":94,"./ReactMultiChild":95,"./ReactPerf":99,"./escapeTextContentForBrowser":140,"./invariant":159,"./isEventSupported":160,"./keyOf":165,"./warning":178,"_process":24}],67:[function(require,module,exports){
+},{"./CSSPropertyOperations":29,"./DOMProperty":34,"./DOMPropertyOperations":35,"./Object.assign":51,"./ReactBrowserEventEmitter":55,"./ReactComponentBrowserEnvironment":60,"./ReactMount":95,"./ReactMultiChild":96,"./ReactPerf":100,"./escapeTextContentForBrowser":141,"./invariant":160,"./isEventSupported":161,"./keyOf":166,"./warning":179,"_process":25}],68:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -20547,7 +20571,7 @@ var ReactDOMForm = ReactClass.createClass({
module.exports = ReactDOMForm;
-},{"./EventConstants":38,"./LocalEventTrapMixin":48,"./ReactBrowserComponentMixin":53,"./ReactClass":57,"./ReactElement":81}],68:[function(require,module,exports){
+},{"./EventConstants":39,"./LocalEventTrapMixin":49,"./ReactBrowserComponentMixin":54,"./ReactClass":58,"./ReactElement":82}],69:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -20715,7 +20739,7 @@ ReactPerf.measureMethods(ReactDOMIDOperations, 'ReactDOMIDOperations', {
module.exports = ReactDOMIDOperations;
}).call(this,require('_process'))
-},{"./CSSPropertyOperations":28,"./DOMChildrenOperations":32,"./DOMPropertyOperations":34,"./ReactMount":94,"./ReactPerf":99,"./invariant":159,"./setInnerHTML":172,"_process":24}],69:[function(require,module,exports){
+},{"./CSSPropertyOperations":29,"./DOMChildrenOperations":33,"./DOMPropertyOperations":35,"./ReactMount":95,"./ReactPerf":100,"./invariant":160,"./setInnerHTML":173,"_process":25}],70:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -20760,7 +20784,7 @@ var ReactDOMIframe = ReactClass.createClass({
module.exports = ReactDOMIframe;
-},{"./EventConstants":38,"./LocalEventTrapMixin":48,"./ReactBrowserComponentMixin":53,"./ReactClass":57,"./ReactElement":81}],70:[function(require,module,exports){
+},{"./EventConstants":39,"./LocalEventTrapMixin":49,"./ReactBrowserComponentMixin":54,"./ReactClass":58,"./ReactElement":82}],71:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -20806,7 +20830,7 @@ var ReactDOMImg = ReactClass.createClass({
module.exports = ReactDOMImg;
-},{"./EventConstants":38,"./LocalEventTrapMixin":48,"./ReactBrowserComponentMixin":53,"./ReactClass":57,"./ReactElement":81}],71:[function(require,module,exports){
+},{"./EventConstants":39,"./LocalEventTrapMixin":49,"./ReactBrowserComponentMixin":54,"./ReactClass":58,"./ReactElement":82}],72:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -20983,7 +21007,7 @@ var ReactDOMInput = ReactClass.createClass({
module.exports = ReactDOMInput;
}).call(this,require('_process'))
-},{"./AutoFocusMixin":25,"./DOMPropertyOperations":34,"./LinkedValueUtils":47,"./Object.assign":50,"./ReactBrowserComponentMixin":53,"./ReactClass":57,"./ReactElement":81,"./ReactMount":94,"./ReactUpdates":111,"./invariant":159,"_process":24}],72:[function(require,module,exports){
+},{"./AutoFocusMixin":26,"./DOMPropertyOperations":35,"./LinkedValueUtils":48,"./Object.assign":51,"./ReactBrowserComponentMixin":54,"./ReactClass":58,"./ReactElement":82,"./ReactMount":95,"./ReactUpdates":112,"./invariant":160,"_process":25}],73:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -21035,7 +21059,7 @@ var ReactDOMOption = ReactClass.createClass({
module.exports = ReactDOMOption;
}).call(this,require('_process'))
-},{"./ReactBrowserComponentMixin":53,"./ReactClass":57,"./ReactElement":81,"./warning":178,"_process":24}],73:[function(require,module,exports){
+},{"./ReactBrowserComponentMixin":54,"./ReactClass":58,"./ReactElement":82,"./warning":179,"_process":25}],74:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -21213,7 +21237,7 @@ var ReactDOMSelect = ReactClass.createClass({
module.exports = ReactDOMSelect;
-},{"./AutoFocusMixin":25,"./LinkedValueUtils":47,"./Object.assign":50,"./ReactBrowserComponentMixin":53,"./ReactClass":57,"./ReactElement":81,"./ReactUpdates":111}],74:[function(require,module,exports){
+},{"./AutoFocusMixin":26,"./LinkedValueUtils":48,"./Object.assign":51,"./ReactBrowserComponentMixin":54,"./ReactClass":58,"./ReactElement":82,"./ReactUpdates":112}],75:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -21426,7 +21450,7 @@ var ReactDOMSelection = {
module.exports = ReactDOMSelection;
-},{"./ExecutionEnvironment":44,"./getNodeForCharacterOffset":152,"./getTextContentAccessor":154}],75:[function(require,module,exports){
+},{"./ExecutionEnvironment":45,"./getNodeForCharacterOffset":153,"./getTextContentAccessor":155}],76:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -21543,7 +21567,7 @@ assign(ReactDOMTextComponent.prototype, {
module.exports = ReactDOMTextComponent;
-},{"./DOMPropertyOperations":34,"./Object.assign":50,"./ReactComponentBrowserEnvironment":59,"./ReactDOMComponent":66,"./escapeTextContentForBrowser":140}],76:[function(require,module,exports){
+},{"./DOMPropertyOperations":35,"./Object.assign":51,"./ReactComponentBrowserEnvironment":60,"./ReactDOMComponent":67,"./escapeTextContentForBrowser":141}],77:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -21683,7 +21707,7 @@ var ReactDOMTextarea = ReactClass.createClass({
module.exports = ReactDOMTextarea;
}).call(this,require('_process'))
-},{"./AutoFocusMixin":25,"./DOMPropertyOperations":34,"./LinkedValueUtils":47,"./Object.assign":50,"./ReactBrowserComponentMixin":53,"./ReactClass":57,"./ReactElement":81,"./ReactUpdates":111,"./invariant":159,"./warning":178,"_process":24}],77:[function(require,module,exports){
+},{"./AutoFocusMixin":26,"./DOMPropertyOperations":35,"./LinkedValueUtils":48,"./Object.assign":51,"./ReactBrowserComponentMixin":54,"./ReactClass":58,"./ReactElement":82,"./ReactUpdates":112,"./invariant":160,"./warning":179,"_process":25}],78:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -21756,7 +21780,7 @@ var ReactDefaultBatchingStrategy = {
module.exports = ReactDefaultBatchingStrategy;
-},{"./Object.assign":50,"./ReactUpdates":111,"./Transaction":127,"./emptyFunction":138}],78:[function(require,module,exports){
+},{"./Object.assign":51,"./ReactUpdates":112,"./Transaction":128,"./emptyFunction":139}],79:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -21915,7 +21939,7 @@ module.exports = {
};
}).call(this,require('_process'))
-},{"./BeforeInputEventPlugin":26,"./ChangeEventPlugin":30,"./ClientReactRootIndex":31,"./DefaultEventPluginOrder":36,"./EnterLeaveEventPlugin":37,"./ExecutionEnvironment":44,"./HTMLDOMPropertyConfig":46,"./MobileSafariClickEventPlugin":49,"./ReactBrowserComponentMixin":53,"./ReactClass":57,"./ReactComponentBrowserEnvironment":59,"./ReactDOMButton":65,"./ReactDOMComponent":66,"./ReactDOMForm":67,"./ReactDOMIDOperations":68,"./ReactDOMIframe":69,"./ReactDOMImg":70,"./ReactDOMInput":71,"./ReactDOMOption":72,"./ReactDOMSelect":73,"./ReactDOMTextComponent":75,"./ReactDOMTextarea":76,"./ReactDefaultBatchingStrategy":77,"./ReactDefaultPerf":79,"./ReactElement":81,"./ReactEventListener":86,"./ReactInjection":88,"./ReactInstanceHandles":90,"./ReactMount":94,"./ReactReconcileTransaction":104,"./SVGDOMPropertyConfig":112,"./SelectEventPlugin":113,"./ServerReactRootIndex":114,"./SimpleEventPlugin":115,"./createFullPageComponent":135,"_process":24}],79:[function(require,module,exports){
+},{"./BeforeInputEventPlugin":27,"./ChangeEventPlugin":31,"./ClientReactRootIndex":32,"./DefaultEventPluginOrder":37,"./EnterLeaveEventPlugin":38,"./ExecutionEnvironment":45,"./HTMLDOMPropertyConfig":47,"./MobileSafariClickEventPlugin":50,"./ReactBrowserComponentMixin":54,"./ReactClass":58,"./ReactComponentBrowserEnvironment":60,"./ReactDOMButton":66,"./ReactDOMComponent":67,"./ReactDOMForm":68,"./ReactDOMIDOperations":69,"./ReactDOMIframe":70,"./ReactDOMImg":71,"./ReactDOMInput":72,"./ReactDOMOption":73,"./ReactDOMSelect":74,"./ReactDOMTextComponent":76,"./ReactDOMTextarea":77,"./ReactDefaultBatchingStrategy":78,"./ReactDefaultPerf":80,"./ReactElement":82,"./ReactEventListener":87,"./ReactInjection":89,"./ReactInstanceHandles":91,"./ReactMount":95,"./ReactReconcileTransaction":105,"./SVGDOMPropertyConfig":113,"./SelectEventPlugin":114,"./ServerReactRootIndex":115,"./SimpleEventPlugin":116,"./createFullPageComponent":136,"_process":25}],80:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -22181,7 +22205,7 @@ var ReactDefaultPerf = {
module.exports = ReactDefaultPerf;
-},{"./DOMProperty":33,"./ReactDefaultPerfAnalysis":80,"./ReactMount":94,"./ReactPerf":99,"./performanceNow":170}],80:[function(require,module,exports){
+},{"./DOMProperty":34,"./ReactDefaultPerfAnalysis":81,"./ReactMount":95,"./ReactPerf":100,"./performanceNow":171}],81:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -22387,7 +22411,7 @@ var ReactDefaultPerfAnalysis = {
module.exports = ReactDefaultPerfAnalysis;
-},{"./Object.assign":50}],81:[function(require,module,exports){
+},{"./Object.assign":51}],82:[function(require,module,exports){
(function (process){
/**
* Copyright 2014-2015, Facebook, Inc.
@@ -22695,7 +22719,7 @@ ReactElement.isValidElement = function(object) {
module.exports = ReactElement;
}).call(this,require('_process'))
-},{"./Object.assign":50,"./ReactContext":62,"./ReactCurrentOwner":63,"./warning":178,"_process":24}],82:[function(require,module,exports){
+},{"./Object.assign":51,"./ReactContext":63,"./ReactCurrentOwner":64,"./warning":179,"_process":25}],83:[function(require,module,exports){
(function (process){
/**
* Copyright 2014-2015, Facebook, Inc.
@@ -23160,7 +23184,7 @@ var ReactElementValidator = {
module.exports = ReactElementValidator;
}).call(this,require('_process'))
-},{"./ReactCurrentOwner":63,"./ReactElement":81,"./ReactFragment":87,"./ReactNativeComponent":97,"./ReactPropTypeLocationNames":100,"./ReactPropTypeLocations":101,"./getIteratorFn":150,"./invariant":159,"./warning":178,"_process":24}],83:[function(require,module,exports){
+},{"./ReactCurrentOwner":64,"./ReactElement":82,"./ReactFragment":88,"./ReactNativeComponent":98,"./ReactPropTypeLocationNames":101,"./ReactPropTypeLocations":102,"./getIteratorFn":151,"./invariant":160,"./warning":179,"_process":25}],84:[function(require,module,exports){
(function (process){
/**
* Copyright 2014-2015, Facebook, Inc.
@@ -23255,7 +23279,7 @@ var ReactEmptyComponent = {
module.exports = ReactEmptyComponent;
}).call(this,require('_process'))
-},{"./ReactElement":81,"./ReactInstanceMap":91,"./invariant":159,"_process":24}],84:[function(require,module,exports){
+},{"./ReactElement":82,"./ReactInstanceMap":92,"./invariant":160,"_process":25}],85:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -23287,7 +23311,7 @@ var ReactErrorUtils = {
module.exports = ReactErrorUtils;
-},{}],85:[function(require,module,exports){
+},{}],86:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -23337,7 +23361,7 @@ var ReactEventEmitterMixin = {
module.exports = ReactEventEmitterMixin;
-},{"./EventPluginHub":40}],86:[function(require,module,exports){
+},{"./EventPluginHub":41}],87:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -23520,7 +23544,7 @@ var ReactEventListener = {
module.exports = ReactEventListener;
-},{"./EventListener":39,"./ExecutionEnvironment":44,"./Object.assign":50,"./PooledClass":51,"./ReactInstanceHandles":90,"./ReactMount":94,"./ReactUpdates":111,"./getEventTarget":149,"./getUnboundedScrollPosition":155}],87:[function(require,module,exports){
+},{"./EventListener":40,"./ExecutionEnvironment":45,"./Object.assign":51,"./PooledClass":52,"./ReactInstanceHandles":91,"./ReactMount":95,"./ReactUpdates":112,"./getEventTarget":150,"./getUnboundedScrollPosition":156}],88:[function(require,module,exports){
(function (process){
/**
* Copyright 2015, Facebook, Inc.
@@ -23705,7 +23729,7 @@ var ReactFragment = {
module.exports = ReactFragment;
}).call(this,require('_process'))
-},{"./ReactElement":81,"./warning":178,"_process":24}],88:[function(require,module,exports){
+},{"./ReactElement":82,"./warning":179,"_process":25}],89:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -23747,7 +23771,7 @@ var ReactInjection = {
module.exports = ReactInjection;
-},{"./DOMProperty":33,"./EventPluginHub":40,"./ReactBrowserEventEmitter":54,"./ReactClass":57,"./ReactComponentEnvironment":60,"./ReactDOMComponent":66,"./ReactEmptyComponent":83,"./ReactNativeComponent":97,"./ReactPerf":99,"./ReactRootIndex":107,"./ReactUpdates":111}],89:[function(require,module,exports){
+},{"./DOMProperty":34,"./EventPluginHub":41,"./ReactBrowserEventEmitter":55,"./ReactClass":58,"./ReactComponentEnvironment":61,"./ReactDOMComponent":67,"./ReactEmptyComponent":84,"./ReactNativeComponent":98,"./ReactPerf":100,"./ReactRootIndex":108,"./ReactUpdates":112}],90:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -23882,7 +23906,7 @@ var ReactInputSelection = {
module.exports = ReactInputSelection;
-},{"./ReactDOMSelection":74,"./containsNode":133,"./focusNode":143,"./getActiveElement":145}],90:[function(require,module,exports){
+},{"./ReactDOMSelection":75,"./containsNode":134,"./focusNode":144,"./getActiveElement":146}],91:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -24218,7 +24242,7 @@ var ReactInstanceHandles = {
module.exports = ReactInstanceHandles;
}).call(this,require('_process'))
-},{"./ReactRootIndex":107,"./invariant":159,"_process":24}],91:[function(require,module,exports){
+},{"./ReactRootIndex":108,"./invariant":160,"_process":25}],92:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -24267,7 +24291,7 @@ var ReactInstanceMap = {
module.exports = ReactInstanceMap;
-},{}],92:[function(require,module,exports){
+},{}],93:[function(require,module,exports){
/**
* Copyright 2015, Facebook, Inc.
* All rights reserved.
@@ -24304,7 +24328,7 @@ var ReactLifeCycle = {
module.exports = ReactLifeCycle;
-},{}],93:[function(require,module,exports){
+},{}],94:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -24352,7 +24376,7 @@ var ReactMarkupChecksum = {
module.exports = ReactMarkupChecksum;
-},{"./adler32":130}],94:[function(require,module,exports){
+},{"./adler32":131}],95:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -25243,7 +25267,7 @@ ReactPerf.measureMethods(ReactMount, 'ReactMount', {
module.exports = ReactMount;
}).call(this,require('_process'))
-},{"./DOMProperty":33,"./ReactBrowserEventEmitter":54,"./ReactCurrentOwner":63,"./ReactElement":81,"./ReactElementValidator":82,"./ReactEmptyComponent":83,"./ReactInstanceHandles":90,"./ReactInstanceMap":91,"./ReactMarkupChecksum":93,"./ReactPerf":99,"./ReactReconciler":105,"./ReactUpdateQueue":110,"./ReactUpdates":111,"./containsNode":133,"./emptyObject":139,"./getReactRootElementInContainer":153,"./instantiateReactComponent":158,"./invariant":159,"./setInnerHTML":172,"./shouldUpdateReactComponent":175,"./warning":178,"_process":24}],95:[function(require,module,exports){
+},{"./DOMProperty":34,"./ReactBrowserEventEmitter":55,"./ReactCurrentOwner":64,"./ReactElement":82,"./ReactElementValidator":83,"./ReactEmptyComponent":84,"./ReactInstanceHandles":91,"./ReactInstanceMap":92,"./ReactMarkupChecksum":94,"./ReactPerf":100,"./ReactReconciler":106,"./ReactUpdateQueue":111,"./ReactUpdates":112,"./containsNode":134,"./emptyObject":140,"./getReactRootElementInContainer":154,"./instantiateReactComponent":159,"./invariant":160,"./setInnerHTML":173,"./shouldUpdateReactComponent":176,"./warning":179,"_process":25}],96:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -25673,7 +25697,7 @@ var ReactMultiChild = {
module.exports = ReactMultiChild;
-},{"./ReactChildReconciler":55,"./ReactComponentEnvironment":60,"./ReactMultiChildUpdateTypes":96,"./ReactReconciler":105}],96:[function(require,module,exports){
+},{"./ReactChildReconciler":56,"./ReactComponentEnvironment":61,"./ReactMultiChildUpdateTypes":97,"./ReactReconciler":106}],97:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -25706,7 +25730,7 @@ var ReactMultiChildUpdateTypes = keyMirror({
module.exports = ReactMultiChildUpdateTypes;
-},{"./keyMirror":164}],97:[function(require,module,exports){
+},{"./keyMirror":165}],98:[function(require,module,exports){
(function (process){
/**
* Copyright 2014-2015, Facebook, Inc.
@@ -25813,7 +25837,7 @@ var ReactNativeComponent = {
module.exports = ReactNativeComponent;
}).call(this,require('_process'))
-},{"./Object.assign":50,"./invariant":159,"_process":24}],98:[function(require,module,exports){
+},{"./Object.assign":51,"./invariant":160,"_process":25}],99:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -25925,7 +25949,7 @@ var ReactOwner = {
module.exports = ReactOwner;
}).call(this,require('_process'))
-},{"./invariant":159,"_process":24}],99:[function(require,module,exports){
+},{"./invariant":160,"_process":25}],100:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -26029,7 +26053,7 @@ function _noMeasure(objName, fnName, func) {
module.exports = ReactPerf;
}).call(this,require('_process'))
-},{"_process":24}],100:[function(require,module,exports){
+},{"_process":25}],101:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -26057,7 +26081,7 @@ if ("production" !== process.env.NODE_ENV) {
module.exports = ReactPropTypeLocationNames;
}).call(this,require('_process'))
-},{"_process":24}],101:[function(require,module,exports){
+},{"_process":25}],102:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -26081,7 +26105,7 @@ var ReactPropTypeLocations = keyMirror({
module.exports = ReactPropTypeLocations;
-},{"./keyMirror":164}],102:[function(require,module,exports){
+},{"./keyMirror":165}],103:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -26430,7 +26454,7 @@ function getPreciseType(propValue) {
module.exports = ReactPropTypes;
-},{"./ReactElement":81,"./ReactFragment":87,"./ReactPropTypeLocationNames":100,"./emptyFunction":138}],103:[function(require,module,exports){
+},{"./ReactElement":82,"./ReactFragment":88,"./ReactPropTypeLocationNames":101,"./emptyFunction":139}],104:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -26486,7 +26510,7 @@ PooledClass.addPoolingTo(ReactPutListenerQueue);
module.exports = ReactPutListenerQueue;
-},{"./Object.assign":50,"./PooledClass":51,"./ReactBrowserEventEmitter":54}],104:[function(require,module,exports){
+},{"./Object.assign":51,"./PooledClass":52,"./ReactBrowserEventEmitter":55}],105:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -26662,7 +26686,7 @@ PooledClass.addPoolingTo(ReactReconcileTransaction);
module.exports = ReactReconcileTransaction;
-},{"./CallbackQueue":29,"./Object.assign":50,"./PooledClass":51,"./ReactBrowserEventEmitter":54,"./ReactInputSelection":89,"./ReactPutListenerQueue":103,"./Transaction":127}],105:[function(require,module,exports){
+},{"./CallbackQueue":30,"./Object.assign":51,"./PooledClass":52,"./ReactBrowserEventEmitter":55,"./ReactInputSelection":90,"./ReactPutListenerQueue":104,"./Transaction":128}],106:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -26786,7 +26810,7 @@ var ReactReconciler = {
module.exports = ReactReconciler;
}).call(this,require('_process'))
-},{"./ReactElementValidator":82,"./ReactRef":106,"_process":24}],106:[function(require,module,exports){
+},{"./ReactElementValidator":83,"./ReactRef":107,"_process":25}],107:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -26857,7 +26881,7 @@ ReactRef.detachRefs = function(instance, element) {
module.exports = ReactRef;
-},{"./ReactOwner":98}],107:[function(require,module,exports){
+},{"./ReactOwner":99}],108:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -26888,7 +26912,7 @@ var ReactRootIndex = {
module.exports = ReactRootIndex;
-},{}],108:[function(require,module,exports){
+},{}],109:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -26970,7 +26994,7 @@ module.exports = {
};
}).call(this,require('_process'))
-},{"./ReactElement":81,"./ReactInstanceHandles":90,"./ReactMarkupChecksum":93,"./ReactServerRenderingTransaction":109,"./emptyObject":139,"./instantiateReactComponent":158,"./invariant":159,"_process":24}],109:[function(require,module,exports){
+},{"./ReactElement":82,"./ReactInstanceHandles":91,"./ReactMarkupChecksum":94,"./ReactServerRenderingTransaction":110,"./emptyObject":140,"./instantiateReactComponent":159,"./invariant":160,"_process":25}],110:[function(require,module,exports){
/**
* Copyright 2014-2015, Facebook, Inc.
* All rights reserved.
@@ -27083,7 +27107,7 @@ PooledClass.addPoolingTo(ReactServerRenderingTransaction);
module.exports = ReactServerRenderingTransaction;
-},{"./CallbackQueue":29,"./Object.assign":50,"./PooledClass":51,"./ReactPutListenerQueue":103,"./Transaction":127,"./emptyFunction":138}],110:[function(require,module,exports){
+},{"./CallbackQueue":30,"./Object.assign":51,"./PooledClass":52,"./ReactPutListenerQueue":104,"./Transaction":128,"./emptyFunction":139}],111:[function(require,module,exports){
(function (process){
/**
* Copyright 2015, Facebook, Inc.
@@ -27382,7 +27406,7 @@ var ReactUpdateQueue = {
module.exports = ReactUpdateQueue;
}).call(this,require('_process'))
-},{"./Object.assign":50,"./ReactCurrentOwner":63,"./ReactElement":81,"./ReactInstanceMap":91,"./ReactLifeCycle":92,"./ReactUpdates":111,"./invariant":159,"./warning":178,"_process":24}],111:[function(require,module,exports){
+},{"./Object.assign":51,"./ReactCurrentOwner":64,"./ReactElement":82,"./ReactInstanceMap":92,"./ReactLifeCycle":93,"./ReactUpdates":112,"./invariant":160,"./warning":179,"_process":25}],112:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -27664,7 +27688,7 @@ var ReactUpdates = {
module.exports = ReactUpdates;
}).call(this,require('_process'))
-},{"./CallbackQueue":29,"./Object.assign":50,"./PooledClass":51,"./ReactCurrentOwner":63,"./ReactPerf":99,"./ReactReconciler":105,"./Transaction":127,"./invariant":159,"./warning":178,"_process":24}],112:[function(require,module,exports){
+},{"./CallbackQueue":30,"./Object.assign":51,"./PooledClass":52,"./ReactCurrentOwner":64,"./ReactPerf":100,"./ReactReconciler":106,"./Transaction":128,"./invariant":160,"./warning":179,"_process":25}],113:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -27758,7 +27782,7 @@ var SVGDOMPropertyConfig = {
module.exports = SVGDOMPropertyConfig;
-},{"./DOMProperty":33}],113:[function(require,module,exports){
+},{"./DOMProperty":34}],114:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -27953,7 +27977,7 @@ var SelectEventPlugin = {
module.exports = SelectEventPlugin;
-},{"./EventConstants":38,"./EventPropagators":43,"./ReactInputSelection":89,"./SyntheticEvent":119,"./getActiveElement":145,"./isTextInputElement":162,"./keyOf":165,"./shallowEqual":174}],114:[function(require,module,exports){
+},{"./EventConstants":39,"./EventPropagators":44,"./ReactInputSelection":90,"./SyntheticEvent":120,"./getActiveElement":146,"./isTextInputElement":163,"./keyOf":166,"./shallowEqual":175}],115:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -27984,7 +28008,7 @@ var ServerReactRootIndex = {
module.exports = ServerReactRootIndex;
-},{}],115:[function(require,module,exports){
+},{}],116:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -28412,7 +28436,7 @@ var SimpleEventPlugin = {
module.exports = SimpleEventPlugin;
}).call(this,require('_process'))
-},{"./EventConstants":38,"./EventPluginUtils":42,"./EventPropagators":43,"./SyntheticClipboardEvent":116,"./SyntheticDragEvent":118,"./SyntheticEvent":119,"./SyntheticFocusEvent":120,"./SyntheticKeyboardEvent":122,"./SyntheticMouseEvent":123,"./SyntheticTouchEvent":124,"./SyntheticUIEvent":125,"./SyntheticWheelEvent":126,"./getEventCharCode":146,"./invariant":159,"./keyOf":165,"./warning":178,"_process":24}],116:[function(require,module,exports){
+},{"./EventConstants":39,"./EventPluginUtils":43,"./EventPropagators":44,"./SyntheticClipboardEvent":117,"./SyntheticDragEvent":119,"./SyntheticEvent":120,"./SyntheticFocusEvent":121,"./SyntheticKeyboardEvent":123,"./SyntheticMouseEvent":124,"./SyntheticTouchEvent":125,"./SyntheticUIEvent":126,"./SyntheticWheelEvent":127,"./getEventCharCode":147,"./invariant":160,"./keyOf":166,"./warning":179,"_process":25}],117:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -28457,7 +28481,7 @@ SyntheticEvent.augmentClass(SyntheticClipboardEvent, ClipboardEventInterface);
module.exports = SyntheticClipboardEvent;
-},{"./SyntheticEvent":119}],117:[function(require,module,exports){
+},{"./SyntheticEvent":120}],118:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -28502,7 +28526,7 @@ SyntheticEvent.augmentClass(
module.exports = SyntheticCompositionEvent;
-},{"./SyntheticEvent":119}],118:[function(require,module,exports){
+},{"./SyntheticEvent":120}],119:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -28541,7 +28565,7 @@ SyntheticMouseEvent.augmentClass(SyntheticDragEvent, DragEventInterface);
module.exports = SyntheticDragEvent;
-},{"./SyntheticMouseEvent":123}],119:[function(require,module,exports){
+},{"./SyntheticMouseEvent":124}],120:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -28707,7 +28731,7 @@ PooledClass.addPoolingTo(SyntheticEvent, PooledClass.threeArgumentPooler);
module.exports = SyntheticEvent;
-},{"./Object.assign":50,"./PooledClass":51,"./emptyFunction":138,"./getEventTarget":149}],120:[function(require,module,exports){
+},{"./Object.assign":51,"./PooledClass":52,"./emptyFunction":139,"./getEventTarget":150}],121:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -28746,7 +28770,7 @@ SyntheticUIEvent.augmentClass(SyntheticFocusEvent, FocusEventInterface);
module.exports = SyntheticFocusEvent;
-},{"./SyntheticUIEvent":125}],121:[function(require,module,exports){
+},{"./SyntheticUIEvent":126}],122:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -28792,7 +28816,7 @@ SyntheticEvent.augmentClass(
module.exports = SyntheticInputEvent;
-},{"./SyntheticEvent":119}],122:[function(require,module,exports){
+},{"./SyntheticEvent":120}],123:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -28879,7 +28903,7 @@ SyntheticUIEvent.augmentClass(SyntheticKeyboardEvent, KeyboardEventInterface);
module.exports = SyntheticKeyboardEvent;
-},{"./SyntheticUIEvent":125,"./getEventCharCode":146,"./getEventKey":147,"./getEventModifierState":148}],123:[function(require,module,exports){
+},{"./SyntheticUIEvent":126,"./getEventCharCode":147,"./getEventKey":148,"./getEventModifierState":149}],124:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -28960,7 +28984,7 @@ SyntheticUIEvent.augmentClass(SyntheticMouseEvent, MouseEventInterface);
module.exports = SyntheticMouseEvent;
-},{"./SyntheticUIEvent":125,"./ViewportMetrics":128,"./getEventModifierState":148}],124:[function(require,module,exports){
+},{"./SyntheticUIEvent":126,"./ViewportMetrics":129,"./getEventModifierState":149}],125:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -29008,7 +29032,7 @@ SyntheticUIEvent.augmentClass(SyntheticTouchEvent, TouchEventInterface);
module.exports = SyntheticTouchEvent;
-},{"./SyntheticUIEvent":125,"./getEventModifierState":148}],125:[function(require,module,exports){
+},{"./SyntheticUIEvent":126,"./getEventModifierState":149}],126:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -29070,7 +29094,7 @@ SyntheticEvent.augmentClass(SyntheticUIEvent, UIEventInterface);
module.exports = SyntheticUIEvent;
-},{"./SyntheticEvent":119,"./getEventTarget":149}],126:[function(require,module,exports){
+},{"./SyntheticEvent":120,"./getEventTarget":150}],127:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -29131,7 +29155,7 @@ SyntheticMouseEvent.augmentClass(SyntheticWheelEvent, WheelEventInterface);
module.exports = SyntheticWheelEvent;
-},{"./SyntheticMouseEvent":123}],127:[function(require,module,exports){
+},{"./SyntheticMouseEvent":124}],128:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -29372,7 +29396,7 @@ var Transaction = {
module.exports = Transaction;
}).call(this,require('_process'))
-},{"./invariant":159,"_process":24}],128:[function(require,module,exports){
+},{"./invariant":160,"_process":25}],129:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -29401,7 +29425,7 @@ var ViewportMetrics = {
module.exports = ViewportMetrics;
-},{}],129:[function(require,module,exports){
+},{}],130:[function(require,module,exports){
(function (process){
/**
* Copyright 2014-2015, Facebook, Inc.
@@ -29467,7 +29491,7 @@ function accumulateInto(current, next) {
module.exports = accumulateInto;
}).call(this,require('_process'))
-},{"./invariant":159,"_process":24}],130:[function(require,module,exports){
+},{"./invariant":160,"_process":25}],131:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -29501,7 +29525,7 @@ function adler32(data) {
module.exports = adler32;
-},{}],131:[function(require,module,exports){
+},{}],132:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -29533,7 +29557,7 @@ function camelize(string) {
module.exports = camelize;
-},{}],132:[function(require,module,exports){
+},{}],133:[function(require,module,exports){
/**
* Copyright 2014-2015, Facebook, Inc.
* All rights reserved.
@@ -29575,7 +29599,7 @@ function camelizeStyleName(string) {
module.exports = camelizeStyleName;
-},{"./camelize":131}],133:[function(require,module,exports){
+},{"./camelize":132}],134:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -29619,7 +29643,7 @@ function containsNode(outerNode, innerNode) {
module.exports = containsNode;
-},{"./isTextNode":163}],134:[function(require,module,exports){
+},{"./isTextNode":164}],135:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -29705,7 +29729,7 @@ function createArrayFromMixed(obj) {
module.exports = createArrayFromMixed;
-},{"./toArray":176}],135:[function(require,module,exports){
+},{"./toArray":177}],136:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -29767,7 +29791,7 @@ function createFullPageComponent(tag) {
module.exports = createFullPageComponent;
}).call(this,require('_process'))
-},{"./ReactClass":57,"./ReactElement":81,"./invariant":159,"_process":24}],136:[function(require,module,exports){
+},{"./ReactClass":58,"./ReactElement":82,"./invariant":160,"_process":25}],137:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -29857,7 +29881,7 @@ function createNodesFromMarkup(markup, handleScript) {
module.exports = createNodesFromMarkup;
}).call(this,require('_process'))
-},{"./ExecutionEnvironment":44,"./createArrayFromMixed":134,"./getMarkupWrap":151,"./invariant":159,"_process":24}],137:[function(require,module,exports){
+},{"./ExecutionEnvironment":45,"./createArrayFromMixed":135,"./getMarkupWrap":152,"./invariant":160,"_process":25}],138:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -29915,7 +29939,7 @@ function dangerousStyleValue(name, value) {
module.exports = dangerousStyleValue;
-},{"./CSSProperty":27}],138:[function(require,module,exports){
+},{"./CSSProperty":28}],139:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -29949,7 +29973,7 @@ emptyFunction.thatReturnsArgument = function(arg) { return arg; };
module.exports = emptyFunction;
-},{}],139:[function(require,module,exports){
+},{}],140:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -29973,7 +29997,7 @@ if ("production" !== process.env.NODE_ENV) {
module.exports = emptyObject;
}).call(this,require('_process'))
-},{"_process":24}],140:[function(require,module,exports){
+},{"_process":25}],141:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30013,7 +30037,7 @@ function escapeTextContentForBrowser(text) {
module.exports = escapeTextContentForBrowser;
-},{}],141:[function(require,module,exports){
+},{}],142:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -30086,7 +30110,7 @@ function findDOMNode(componentOrElement) {
module.exports = findDOMNode;
}).call(this,require('_process'))
-},{"./ReactCurrentOwner":63,"./ReactInstanceMap":91,"./ReactMount":94,"./invariant":159,"./isNode":161,"./warning":178,"_process":24}],142:[function(require,module,exports){
+},{"./ReactCurrentOwner":64,"./ReactInstanceMap":92,"./ReactMount":95,"./invariant":160,"./isNode":162,"./warning":179,"_process":25}],143:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -30144,7 +30168,7 @@ function flattenChildren(children) {
module.exports = flattenChildren;
}).call(this,require('_process'))
-},{"./traverseAllChildren":177,"./warning":178,"_process":24}],143:[function(require,module,exports){
+},{"./traverseAllChildren":178,"./warning":179,"_process":25}],144:[function(require,module,exports){
/**
* Copyright 2014-2015, Facebook, Inc.
* All rights reserved.
@@ -30173,7 +30197,7 @@ function focusNode(node) {
module.exports = focusNode;
-},{}],144:[function(require,module,exports){
+},{}],145:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30204,7 +30228,7 @@ var forEachAccumulated = function(arr, cb, scope) {
module.exports = forEachAccumulated;
-},{}],145:[function(require,module,exports){
+},{}],146:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30233,7 +30257,7 @@ function getActiveElement() /*?DOMElement*/ {
module.exports = getActiveElement;
-},{}],146:[function(require,module,exports){
+},{}],147:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30285,7 +30309,7 @@ function getEventCharCode(nativeEvent) {
module.exports = getEventCharCode;
-},{}],147:[function(require,module,exports){
+},{}],148:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30390,7 +30414,7 @@ function getEventKey(nativeEvent) {
module.exports = getEventKey;
-},{"./getEventCharCode":146}],148:[function(require,module,exports){
+},{"./getEventCharCode":147}],149:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30437,7 +30461,7 @@ function getEventModifierState(nativeEvent) {
module.exports = getEventModifierState;
-},{}],149:[function(require,module,exports){
+},{}],150:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30468,7 +30492,7 @@ function getEventTarget(nativeEvent) {
module.exports = getEventTarget;
-},{}],150:[function(require,module,exports){
+},{}],151:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30512,7 +30536,7 @@ function getIteratorFn(maybeIterable) {
module.exports = getIteratorFn;
-},{}],151:[function(require,module,exports){
+},{}],152:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -30631,7 +30655,7 @@ function getMarkupWrap(nodeName) {
module.exports = getMarkupWrap;
}).call(this,require('_process'))
-},{"./ExecutionEnvironment":44,"./invariant":159,"_process":24}],152:[function(require,module,exports){
+},{"./ExecutionEnvironment":45,"./invariant":160,"_process":25}],153:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30706,7 +30730,7 @@ function getNodeForCharacterOffset(root, offset) {
module.exports = getNodeForCharacterOffset;
-},{}],153:[function(require,module,exports){
+},{}],154:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30741,7 +30765,7 @@ function getReactRootElementInContainer(container) {
module.exports = getReactRootElementInContainer;
-},{}],154:[function(require,module,exports){
+},{}],155:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30778,7 +30802,7 @@ function getTextContentAccessor() {
module.exports = getTextContentAccessor;
-},{"./ExecutionEnvironment":44}],155:[function(require,module,exports){
+},{"./ExecutionEnvironment":45}],156:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30818,7 +30842,7 @@ function getUnboundedScrollPosition(scrollable) {
module.exports = getUnboundedScrollPosition;
-},{}],156:[function(require,module,exports){
+},{}],157:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30851,7 +30875,7 @@ function hyphenate(string) {
module.exports = hyphenate;
-},{}],157:[function(require,module,exports){
+},{}],158:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -30892,7 +30916,7 @@ function hyphenateStyleName(string) {
module.exports = hyphenateStyleName;
-},{"./hyphenate":156}],158:[function(require,module,exports){
+},{"./hyphenate":157}],159:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -31030,7 +31054,7 @@ function instantiateReactComponent(node, parentCompositeType) {
module.exports = instantiateReactComponent;
}).call(this,require('_process'))
-},{"./Object.assign":50,"./ReactCompositeComponent":61,"./ReactEmptyComponent":83,"./ReactNativeComponent":97,"./invariant":159,"./warning":178,"_process":24}],159:[function(require,module,exports){
+},{"./Object.assign":51,"./ReactCompositeComponent":62,"./ReactEmptyComponent":84,"./ReactNativeComponent":98,"./invariant":160,"./warning":179,"_process":25}],160:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -31087,7 +31111,7 @@ var invariant = function(condition, format, a, b, c, d, e, f) {
module.exports = invariant;
}).call(this,require('_process'))
-},{"_process":24}],160:[function(require,module,exports){
+},{"_process":25}],161:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31152,7 +31176,7 @@ function isEventSupported(eventNameSuffix, capture) {
module.exports = isEventSupported;
-},{"./ExecutionEnvironment":44}],161:[function(require,module,exports){
+},{"./ExecutionEnvironment":45}],162:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31179,7 +31203,7 @@ function isNode(object) {
module.exports = isNode;
-},{}],162:[function(require,module,exports){
+},{}],163:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31222,7 +31246,7 @@ function isTextInputElement(elem) {
module.exports = isTextInputElement;
-},{}],163:[function(require,module,exports){
+},{}],164:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31247,7 +31271,7 @@ function isTextNode(object) {
module.exports = isTextNode;
-},{"./isNode":161}],164:[function(require,module,exports){
+},{"./isNode":162}],165:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -31302,7 +31326,7 @@ var keyMirror = function(obj) {
module.exports = keyMirror;
}).call(this,require('_process'))
-},{"./invariant":159,"_process":24}],165:[function(require,module,exports){
+},{"./invariant":160,"_process":25}],166:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31338,7 +31362,7 @@ var keyOf = function(oneKeyObj) {
module.exports = keyOf;
-},{}],166:[function(require,module,exports){
+},{}],167:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31391,7 +31415,7 @@ function mapObject(object, callback, context) {
module.exports = mapObject;
-},{}],167:[function(require,module,exports){
+},{}],168:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31424,7 +31448,7 @@ function memoizeStringOnly(callback) {
module.exports = memoizeStringOnly;
-},{}],168:[function(require,module,exports){
+},{}],169:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -31464,7 +31488,7 @@ function onlyChild(children) {
module.exports = onlyChild;
}).call(this,require('_process'))
-},{"./ReactElement":81,"./invariant":159,"_process":24}],169:[function(require,module,exports){
+},{"./ReactElement":82,"./invariant":160,"_process":25}],170:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31492,7 +31516,7 @@ if (ExecutionEnvironment.canUseDOM) {
module.exports = performance || {};
-},{"./ExecutionEnvironment":44}],170:[function(require,module,exports){
+},{"./ExecutionEnvironment":45}],171:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31520,7 +31544,7 @@ var performanceNow = performance.now.bind(performance);
module.exports = performanceNow;
-},{"./performance":169}],171:[function(require,module,exports){
+},{"./performance":170}],172:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31548,7 +31572,7 @@ function quoteAttributeValueForBrowser(value) {
module.exports = quoteAttributeValueForBrowser;
-},{"./escapeTextContentForBrowser":140}],172:[function(require,module,exports){
+},{"./escapeTextContentForBrowser":141}],173:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31637,7 +31661,7 @@ if (ExecutionEnvironment.canUseDOM) {
module.exports = setInnerHTML;
-},{"./ExecutionEnvironment":44}],173:[function(require,module,exports){
+},{"./ExecutionEnvironment":45}],174:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31679,7 +31703,7 @@ if (ExecutionEnvironment.canUseDOM) {
module.exports = setTextContent;
-},{"./ExecutionEnvironment":44,"./escapeTextContentForBrowser":140,"./setInnerHTML":172}],174:[function(require,module,exports){
+},{"./ExecutionEnvironment":45,"./escapeTextContentForBrowser":141,"./setInnerHTML":173}],175:[function(require,module,exports){
/**
* Copyright 2013-2015, Facebook, Inc.
* All rights reserved.
@@ -31723,7 +31747,7 @@ function shallowEqual(objA, objB) {
module.exports = shallowEqual;
-},{}],175:[function(require,module,exports){
+},{}],176:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -31827,7 +31851,7 @@ function shouldUpdateReactComponent(prevElement, nextElement) {
module.exports = shouldUpdateReactComponent;
}).call(this,require('_process'))
-},{"./warning":178,"_process":24}],176:[function(require,module,exports){
+},{"./warning":179,"_process":25}],177:[function(require,module,exports){
(function (process){
/**
* Copyright 2014-2015, Facebook, Inc.
@@ -31899,7 +31923,7 @@ function toArray(obj) {
module.exports = toArray;
}).call(this,require('_process'))
-},{"./invariant":159,"_process":24}],177:[function(require,module,exports){
+},{"./invariant":160,"_process":25}],178:[function(require,module,exports){
(function (process){
/**
* Copyright 2013-2015, Facebook, Inc.
@@ -32152,7 +32176,7 @@ function traverseAllChildren(children, callback, traverseContext) {
module.exports = traverseAllChildren;
}).call(this,require('_process'))
-},{"./ReactElement":81,"./ReactFragment":87,"./ReactInstanceHandles":90,"./getIteratorFn":150,"./invariant":159,"./warning":178,"_process":24}],178:[function(require,module,exports){
+},{"./ReactElement":82,"./ReactFragment":88,"./ReactInstanceHandles":91,"./getIteratorFn":151,"./invariant":160,"./warning":179,"_process":25}],179:[function(require,module,exports){
(function (process){
/**
* Copyright 2014-2015, Facebook, Inc.
@@ -32215,7 +32239,7 @@ if ("production" !== process.env.NODE_ENV) {
module.exports = warning;
}).call(this,require('_process'))
-},{"./emptyFunction":138,"_process":24}],179:[function(require,module,exports){
+},{"./emptyFunction":139,"_process":25}],180:[function(require,module,exports){
module.exports = require('./lib/React');
-},{"./lib/React":52}]},{},[1]);
+},{"./lib/React":53}]},{},[1]);
diff --git a/public/js/events.js b/public/js/events.js
index 7345c28..3a50d96 100644
--- a/public/js/events.js
+++ b/public/js/events.js
@@ -164,22 +164,13 @@ var _helpersChangeExtensionIconJs = require('./helpers/changeExtensionIcon.js');
var _helpersChangeExtensionIconJs2 = _interopRequireDefault(_helpersChangeExtensionIconJs);
var in_array = require('./helpers/in_array');
+var config = require('./config.js');
var WakaTime = (function () {
function WakaTime(props) {
_classCallCheck(this, WakaTime);
this.tabsWithDevtoolsOpen = [];
-
- this.detectionIntervalInSeconds = 60; //default
-
- this.loggingType = 'domain'; //default
-
- this.heartbeatApiUrl = 'https://wakatime.com/api/v1/users/current/heartbeats';
-
- this.currentUserApiUrl = 'https://wakatime.com/api/v1/users/current';
-
- this.tabsWithDevtoolsOpen = [];
}
_createClass(WakaTime, [{
@@ -196,12 +187,10 @@ var WakaTime = (function () {
* @returns {*}
*/
value: function checkAuth() {
- var _this = this;
-
var deferredObject = _jquery2['default'].Deferred();
_jquery2['default'].ajax({
- url: this.currentUserApiUrl,
+ url: config.currentUserApiUrl,
dataType: 'json',
success: function success(data) {
@@ -209,7 +198,7 @@ var WakaTime = (function () {
},
error: function error(xhr, status, err) {
- console.error(_this.currentUserApiUrl, status, err.toString());
+ console.error(config.currentUserApiUrl, status, err.toString());
deferredObject.resolve(false);
}
@@ -225,40 +214,40 @@ var WakaTime = (function () {
* and sends it to WakaTime for logging.
*/
value: function recordHeartbeat() {
- var _this2 = this;
+ var _this = this;
this.checkAuth().done(function (data) {
if (data !== false) {
chrome.storage.sync.get({
- loggingEnabled: true
+ loggingEnabled: config.loggingEnabled
}, function (items) {
if (items.loggingEnabled === true) {
- (0, _helpersChangeExtensionIconJs2['default'])();
+ (0, _helpersChangeExtensionIconJs2['default'])(config.colors.allGood);
- chrome.idle.queryState(_this2.detectionIntervalInSeconds, function (newState) {
+ chrome.idle.queryState(config.detectionIntervalInSeconds, function (newState) {
if (newState === 'active') {
// Get current tab URL.
chrome.tabs.query({ active: true }, function (tabs) {
var debug = false;
// If the current active tab has devtools open
- if (in_array(tabs[0].id, _this2.tabsWithDevtoolsOpen)) debug = true;
+ if (in_array(tabs[0].id, _this.tabsWithDevtoolsOpen)) debug = true;
- _this2.sendHeartbeat(tabs[0].url, debug);
+ _this.sendHeartbeat(tabs[0].url, debug);
});
}
});
} else {
- (0, _helpersChangeExtensionIconJs2['default'])('red');
+ (0, _helpersChangeExtensionIconJs2['default'])(config.colors.notLogging);
}
});
} else {
// User is not logged in.
// Change extension icon to red color.
- (0, _helpersChangeExtensionIconJs2['default'])('red');
+ (0, _helpersChangeExtensionIconJs2['default'])(config.colors.notSignedIn);
}
});
}
@@ -297,7 +286,7 @@ var WakaTime = (function () {
var deferredObject = _jquery2['default'].Deferred();
chrome.storage.sync.get({
- loggingType: this.loggingType
+ loggingType: config.loggingType
}, function (items) {
deferredObject.resolve(items.loggingType);
});
@@ -315,7 +304,7 @@ var WakaTime = (function () {
* @param debug
*/
value: function sendHeartbeat(entity, debug) {
- var _this3 = this;
+ var _this2 = this;
var payload = null;
@@ -327,19 +316,19 @@ var WakaTime = (function () {
var domain = _UrlHelperJs2['default'].getDomainFromUrl(entity);
- payload = _this3._preparePayload(domain, 'domain', debug);
+ payload = _this2._preparePayload(domain, 'domain', debug);
console.log(payload);
- _this3.sendAjaxRequestToApi(payload);
+ _this2.sendAjaxRequestToApi(payload);
}
// Send entity in heartbeat
else if (loggingType == 'url') {
- payload = _this3._preparePayload(entity, 'url', debug);
+ payload = _this2._preparePayload(entity, 'url', debug);
console.log(payload);
- _this3.sendAjaxRequestToApi(payload);
+ _this2.sendAjaxRequestToApi(payload);
}
});
}
@@ -354,27 +343,27 @@ var WakaTime = (function () {
* @returns {*}
*/
value: function sendAjaxRequestToApi(payload) {
- var _this4 = this;
+ var _this3 = this;
var method = arguments[1] === undefined ? 'POST' : arguments[1];
var deferredObject = _jquery2['default'].Deferred();
_jquery2['default'].ajax({
- url: this.heartbeatApiUrl,
+ url: config.heartbeatApiUrl,
dataType: 'json',
contentType: 'application/json',
method: method,
data: payload,
success: function success(response) {
- deferredObject.resolve(_this4);
+ deferredObject.resolve(_this3);
},
error: function error(xhr, status, err) {
- console.error(_this4.heartbeatApiUrl, status, err.toString());
+ console.error(config.heartbeatApiUrl, status, err.toString());
- deferredObject.resolve(_this4);
+ deferredObject.resolve(_this3);
}
});
@@ -388,10 +377,43 @@ var WakaTime = (function () {
exports['default'] = WakaTime;
module.exports = exports['default'];
-},{"./UrlHelper.js":2,"./helpers/changeExtensionIcon.js":4,"./helpers/currentTimestamp.js":5,"./helpers/in_array":6,"jquery":7}],4:[function(require,module,exports){
+},{"./UrlHelper.js":2,"./config.js":4,"./helpers/changeExtensionIcon.js":5,"./helpers/currentTimestamp.js":6,"./helpers/in_array":7,"jquery":8}],4:[function(require,module,exports){
+'use strict';
+
+Object.defineProperty(exports, '__esModule', {
+ value: true
+});
+exports['default'] = {
+ // Time for idle state of the browser
+ // The user is considered idle if there was
+ // no activity in the browser for x seconds
+ detectionIntervalInSeconds: 60,
+ //default logging type
+ loggingType: 'domain',
+ // By default logging is enabled
+ loggingEnabled: true,
+ // Url to which to send the heartbeat
+ heartbeatApiUrl: 'https://wakatime.com/api/v1/users/current/heartbeats',
+ // Url from which to detect if the user is logged in
+ currentUserApiUrl: 'https://wakatime.com/api/v1/users/current',
+ // The url to logout the user from wakatime
+ logoutUserUrl: 'https://wakatime.com/logout',
+ // Different colors for different states of the extension
+ colors: {
+ allGood: '',
+ notLogging: 'gray',
+ notSignedIn: 'red',
+ lightTheme: 'white'
+ },
+ // Default theme
+ theme: 'light'
+};
+module.exports = exports['default'];
+
+},{}],5:[function(require,module,exports){
/**
* It changes the extension icon color.
- * Supported values are: 'red', 'white' and ''.
+ * Supported values are: 'red', 'white', 'gray' and ''.
*/
'use strict';
@@ -408,7 +430,7 @@ function changeExtensionIcon() {
if (color !== '') {
color = '-' + color;
- path = './graphics/wakatime-logo-48' + color + '.png';
+ path = './graphics/wakatime-logo-38' + color + '.png';
chrome.browserAction.setIcon({
path: path
@@ -420,13 +442,13 @@ function changeExtensionIcon() {
theme: 'light'
}, function (items) {
if (items.theme == 'light') {
- path = './graphics/wakatime-logo-48.png';
+ path = './graphics/wakatime-logo-38.png';
chrome.browserAction.setIcon({
path: path
});
} else {
- path = './graphics/wakatime-logo-48-white.png';
+ path = './graphics/wakatime-logo-38-white.png';
chrome.browserAction.setIcon({
path: path
@@ -438,7 +460,7 @@ function changeExtensionIcon() {
module.exports = exports['default'];
-},{}],5:[function(require,module,exports){
+},{}],6:[function(require,module,exports){
/**
* Returns UNIX timestamp
*/
@@ -454,7 +476,7 @@ exports["default"] = function () {
module.exports = exports["default"];
-},{}],6:[function(require,module,exports){
+},{}],7:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", {
@@ -474,7 +496,7 @@ function in_array(needle, haystack) {
exports["default"] = in_array;
module.exports = exports["default"];
-},{}],7:[function(require,module,exports){
+},{}],8:[function(require,module,exports){
/*!
* jQuery JavaScript Library v2.1.4
* http://jquery.com/
diff --git a/public/js/options.js b/public/js/options.js
index 897fceb..56ca032 100644
--- a/public/js/options.js
+++ b/public/js/options.js
@@ -12,6 +12,8 @@ var _jquery2 = _interopRequireDefault(_jquery);
global.jQuery = require('jquery');
require('bootstrap');
+var config = require('./config');
+
function detectCheckedRadio(name) {
for (var i = 0; i < document.getElementsByName(name).length; i++) {
var button = document.getElementsByName(name)[i];
@@ -54,9 +56,9 @@ function save_options(e) {
function restore_options() {
// Use default value color = 'red' and likesColor = true.
chrome.storage.sync.get({
- theme: 'light',
+ theme: config.theme,
blacklist: '',
- loggingType: 'domain'
+ loggingType: config.loggingType
}, function (items) {
document.getElementById('theme').value = items.theme;
document.getElementById('blacklist').value = items.blacklist;
@@ -68,7 +70,40 @@ document.addEventListener('DOMContentLoaded', restore_options);
document.getElementById('save').addEventListener('click', save_options);
}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
-},{"bootstrap":2,"jquery":15}],2:[function(require,module,exports){
+},{"./config":2,"bootstrap":3,"jquery":16}],2:[function(require,module,exports){
+'use strict';
+
+Object.defineProperty(exports, '__esModule', {
+ value: true
+});
+exports['default'] = {
+ // Time for idle state of the browser
+ // The user is considered idle if there was
+ // no activity in the browser for x seconds
+ detectionIntervalInSeconds: 60,
+ //default logging type
+ loggingType: 'domain',
+ // By default logging is enabled
+ loggingEnabled: true,
+ // Url to which to send the heartbeat
+ heartbeatApiUrl: 'https://wakatime.com/api/v1/users/current/heartbeats',
+ // Url from which to detect if the user is logged in
+ currentUserApiUrl: 'https://wakatime.com/api/v1/users/current',
+ // The url to logout the user from wakatime
+ logoutUserUrl: 'https://wakatime.com/logout',
+ // Different colors for different states of the extension
+ colors: {
+ allGood: '',
+ notLogging: 'gray',
+ notSignedIn: 'red',
+ lightTheme: 'white'
+ },
+ // Default theme
+ theme: 'light'
+};
+module.exports = exports['default'];
+
+},{}],3:[function(require,module,exports){
// This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment.
require('../../js/transition.js')
require('../../js/alert.js')
@@ -82,7 +117,7 @@ require('../../js/popover.js')
require('../../js/scrollspy.js')
require('../../js/tab.js')
require('../../js/affix.js')
-},{"../../js/affix.js":3,"../../js/alert.js":4,"../../js/button.js":5,"../../js/carousel.js":6,"../../js/collapse.js":7,"../../js/dropdown.js":8,"../../js/modal.js":9,"../../js/popover.js":10,"../../js/scrollspy.js":11,"../../js/tab.js":12,"../../js/tooltip.js":13,"../../js/transition.js":14}],3:[function(require,module,exports){
+},{"../../js/affix.js":4,"../../js/alert.js":5,"../../js/button.js":6,"../../js/carousel.js":7,"../../js/collapse.js":8,"../../js/dropdown.js":9,"../../js/modal.js":10,"../../js/popover.js":11,"../../js/scrollspy.js":12,"../../js/tab.js":13,"../../js/tooltip.js":14,"../../js/transition.js":15}],4:[function(require,module,exports){
/* ========================================================================
* Bootstrap: affix.js v3.3.4
* http://getbootstrap.com/javascript/#affix
@@ -246,7 +281,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],4:[function(require,module,exports){
+},{}],5:[function(require,module,exports){
/* ========================================================================
* Bootstrap: alert.js v3.3.4
* http://getbootstrap.com/javascript/#alerts
@@ -342,7 +377,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],5:[function(require,module,exports){
+},{}],6:[function(require,module,exports){
/* ========================================================================
* Bootstrap: button.js v3.3.4
* http://getbootstrap.com/javascript/#buttons
@@ -460,7 +495,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],6:[function(require,module,exports){
+},{}],7:[function(require,module,exports){
/* ========================================================================
* Bootstrap: carousel.js v3.3.4
* http://getbootstrap.com/javascript/#carousel
@@ -699,7 +734,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],7:[function(require,module,exports){
+},{}],8:[function(require,module,exports){
/* ========================================================================
* Bootstrap: collapse.js v3.3.4
* http://getbootstrap.com/javascript/#collapse
@@ -912,7 +947,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],8:[function(require,module,exports){
+},{}],9:[function(require,module,exports){
/* ========================================================================
* Bootstrap: dropdown.js v3.3.4
* http://getbootstrap.com/javascript/#dropdowns
@@ -1075,7 +1110,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],9:[function(require,module,exports){
+},{}],10:[function(require,module,exports){
/* ========================================================================
* Bootstrap: modal.js v3.3.4
* http://getbootstrap.com/javascript/#modals
@@ -1416,7 +1451,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],10:[function(require,module,exports){
+},{}],11:[function(require,module,exports){
/* ========================================================================
* Bootstrap: popover.js v3.3.4
* http://getbootstrap.com/javascript/#popovers
@@ -1526,7 +1561,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],11:[function(require,module,exports){
+},{}],12:[function(require,module,exports){
/* ========================================================================
* Bootstrap: scrollspy.js v3.3.4
* http://getbootstrap.com/javascript/#scrollspy
@@ -1700,7 +1735,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],12:[function(require,module,exports){
+},{}],13:[function(require,module,exports){
/* ========================================================================
* Bootstrap: tab.js v3.3.4
* http://getbootstrap.com/javascript/#tabs
@@ -1855,7 +1890,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],13:[function(require,module,exports){
+},{}],14:[function(require,module,exports){
/* ========================================================================
* Bootstrap: tooltip.js v3.3.4
* http://getbootstrap.com/javascript/#tooltip
@@ -2333,7 +2368,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],14:[function(require,module,exports){
+},{}],15:[function(require,module,exports){
/* ========================================================================
* Bootstrap: transition.js v3.3.4
* http://getbootstrap.com/javascript/#transitions
@@ -2394,7 +2429,7 @@ require('../../js/affix.js')
}(jQuery);
-},{}],15:[function(require,module,exports){
+},{}],16:[function(require,module,exports){
/*!
* jQuery JavaScript Library v2.1.4
* http://jquery.com/